@ui5/webcomponents-base 0.0.0-6ef02a35f → 0.0.0-760fbb471

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (608) hide show
  1. package/.eslintignore +5 -2
  2. package/CHANGELOG.md +464 -0
  3. package/README.md +53 -7
  4. package/bundle.esm.js +21 -13
  5. package/{src/AssetRegistry.js → dist/AssetRegistry.d.ts} +1 -7
  6. package/dist/AssetRegistry.js +2 -7
  7. package/dist/AssetRegistry.js.map +1 -0
  8. package/dist/Boot.d.ts +9 -0
  9. package/dist/Boot.js +56 -28
  10. package/dist/Boot.js.map +1 -0
  11. package/dist/CSP.d.ts +30 -0
  12. package/dist/CSP.js +51 -0
  13. package/dist/CSP.js.map +1 -0
  14. package/dist/CustomElementsRegistry.d.ts +5 -0
  15. package/dist/CustomElementsRegistry.js +69 -30
  16. package/dist/CustomElementsRegistry.js.map +1 -0
  17. package/dist/CustomElementsScope.d.ts +7 -0
  18. package/dist/CustomElementsScope.js +11 -108
  19. package/dist/CustomElementsScope.js.map +1 -0
  20. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  21. package/{src/CustomElementsScope.js → dist/CustomElementsScopeUtils.js} +34 -52
  22. package/dist/CustomElementsScopeUtils.js.map +1 -0
  23. package/dist/DOMObserver.d.ts +11 -0
  24. package/dist/DOMObserver.js +12 -54
  25. package/dist/DOMObserver.js.map +1 -0
  26. package/dist/Device.d.ts +12 -0
  27. package/dist/Device.js +150 -86
  28. package/dist/Device.js.map +1 -0
  29. package/dist/EventProvider.d.ts +25 -0
  30. package/dist/EventProvider.js +67 -88
  31. package/dist/EventProvider.js.map +1 -0
  32. package/dist/FeaturesRegistry.d.ts +3 -0
  33. package/dist/FeaturesRegistry.js +5 -7
  34. package/dist/FeaturesRegistry.js.map +1 -0
  35. package/dist/FontFace.d.ts +2 -0
  36. package/dist/FontFace.js +17 -110
  37. package/dist/FontFace.js.map +1 -0
  38. package/dist/InitialConfiguration.d.ts +22 -0
  39. package/dist/InitialConfiguration.js +112 -127
  40. package/dist/InitialConfiguration.js.map +1 -0
  41. package/dist/Keys.d.ts +57 -0
  42. package/dist/Keys.js +174 -235
  43. package/dist/Keys.js.map +1 -0
  44. package/dist/ManagedStyles.d.ts +8 -0
  45. package/dist/ManagedStyles.js +77 -0
  46. package/dist/ManagedStyles.js.map +1 -0
  47. package/dist/MarkedEvents.d.ts +9 -0
  48. package/dist/MarkedEvents.js +15 -0
  49. package/dist/MarkedEvents.js.map +1 -0
  50. package/dist/MediaRange.d.ts +37 -0
  51. package/dist/MediaRange.js +54 -65
  52. package/dist/MediaRange.js.map +1 -0
  53. package/dist/PropertiesFileFormat.d.ts +8 -0
  54. package/dist/PropertiesFileFormat.js +72 -82
  55. package/dist/PropertiesFileFormat.js.map +1 -0
  56. package/dist/Render.d.ts +47 -0
  57. package/dist/Render.js +82 -112
  58. package/dist/Render.js.map +1 -0
  59. package/dist/RenderQueue.d.ts +19 -0
  60. package/dist/RenderQueue.js +52 -62
  61. package/dist/RenderQueue.js.map +1 -0
  62. package/dist/Runtimes.d.ts +27 -0
  63. package/dist/Runtimes.js +86 -0
  64. package/dist/Runtimes.js.map +1 -0
  65. package/dist/StaticArea.d.ts +0 -0
  66. package/dist/StaticArea.js +4 -1
  67. package/dist/StaticArea.js.map +1 -0
  68. package/dist/StaticAreaItem.d.ts +36 -0
  69. package/dist/StaticAreaItem.js +86 -83
  70. package/dist/StaticAreaItem.js.map +1 -0
  71. package/dist/SystemCSSVars.d.ts +2 -0
  72. package/dist/SystemCSSVars.js +6 -28
  73. package/dist/SystemCSSVars.js.map +1 -0
  74. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  75. package/dist/Theming.js +1 -1
  76. package/dist/Theming.js.map +1 -0
  77. package/dist/UI5Element.d.ts +378 -0
  78. package/dist/UI5Element.js +918 -997
  79. package/dist/UI5Element.js.map +1 -0
  80. package/dist/UI5ElementMetadata.d.ts +150 -0
  81. package/dist/UI5ElementMetadata.js +278 -298
  82. package/dist/UI5ElementMetadata.js.map +1 -0
  83. package/dist/animations/AnimationQueue.d.ts +8 -0
  84. package/dist/animations/AnimationQueue.js +31 -38
  85. package/dist/animations/AnimationQueue.js.map +1 -0
  86. package/dist/animations/animate.d.ts +14 -0
  87. package/dist/animations/animate.js +46 -51
  88. package/dist/animations/animate.js.map +1 -0
  89. package/dist/animations/scroll.d.ts +5 -0
  90. package/dist/animations/scroll.js +18 -27
  91. package/dist/animations/scroll.js.map +1 -0
  92. package/dist/animations/slideDown.d.ts +5 -0
  93. package/dist/animations/slideDown.js +53 -78
  94. package/dist/animations/slideDown.js.map +1 -0
  95. package/dist/animations/slideUp.d.ts +5 -0
  96. package/dist/animations/slideUp.js +49 -70
  97. package/dist/animations/slideUp.js.map +1 -0
  98. package/dist/api.json +1 -0
  99. package/dist/asset-registries/Icons.d.ts +30 -0
  100. package/dist/asset-registries/Icons.js +88 -105
  101. package/dist/asset-registries/Icons.js.map +1 -0
  102. package/dist/asset-registries/Illustrations.d.ts +17 -0
  103. package/dist/asset-registries/Illustrations.js +41 -18
  104. package/dist/asset-registries/Illustrations.js.map +1 -0
  105. package/dist/asset-registries/LocaleData.d.ts +7 -0
  106. package/dist/asset-registries/LocaleData.js +104 -118
  107. package/dist/asset-registries/LocaleData.js.map +1 -0
  108. package/dist/asset-registries/Themes.d.ts +11 -0
  109. package/dist/asset-registries/Themes.js +40 -66
  110. package/dist/asset-registries/Themes.js.map +1 -0
  111. package/dist/asset-registries/i18n.d.ts +23 -0
  112. package/dist/asset-registries/i18n.js +61 -81
  113. package/dist/asset-registries/i18n.js.map +1 -0
  114. package/dist/assets/Boot.34b7cea0.css +1 -0
  115. package/dist/assets/Boot.412e1d69.js +9 -0
  116. package/dist/assets/bundle.esm.189c8cd6.js +52 -0
  117. package/dist/assets-meta/IconCollectionsAlias.d.ts +31 -0
  118. package/dist/assets-meta/IconCollectionsAlias.js +38 -0
  119. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  120. package/dist/config/AnimationMode.d.ts +14 -0
  121. package/dist/config/AnimationMode.js +21 -18
  122. package/dist/config/AnimationMode.js.map +1 -0
  123. package/dist/config/CalendarType.d.ts +8 -0
  124. package/dist/config/CalendarType.js +13 -12
  125. package/dist/config/CalendarType.js.map +1 -0
  126. package/dist/config/FormatSettings.d.ts +15 -0
  127. package/dist/config/FormatSettings.js +15 -9
  128. package/dist/config/FormatSettings.js.map +1 -0
  129. package/dist/config/Icons.d.ts +55 -0
  130. package/dist/config/Icons.js +103 -0
  131. package/dist/config/Icons.js.map +1 -0
  132. package/dist/config/Language.d.ts +40 -0
  133. package/dist/config/Language.js +43 -43
  134. package/dist/config/Language.js.map +1 -0
  135. package/dist/config/NoConflict.d.ts +20 -0
  136. package/dist/config/NoConflict.js +40 -41
  137. package/dist/config/NoConflict.js.map +1 -0
  138. package/dist/config/RTL.d.ts +7 -0
  139. package/dist/config/RTL.js +26 -20
  140. package/dist/config/RTL.js.map +1 -0
  141. package/dist/config/Theme.d.ts +37 -0
  142. package/dist/config/Theme.js +57 -22
  143. package/dist/config/Theme.js.map +1 -0
  144. package/dist/config/ThemeRoots.d.ts +4 -0
  145. package/dist/config/ThemeRoots.js +28 -0
  146. package/dist/config/ThemeRoots.js.map +1 -0
  147. package/dist/css/BusyIndicator.css +80 -0
  148. package/dist/css/FontFace.css +66 -0
  149. package/dist/css/OverrideFontFace.css +32 -0
  150. package/dist/css/SystemCSSVars.css +17 -0
  151. package/dist/decorators/customElement.d.ts +23 -0
  152. package/dist/decorators/customElement.js +31 -0
  153. package/dist/decorators/customElement.js.map +1 -0
  154. package/dist/decorators/event.d.ts +10 -0
  155. package/dist/decorators/event.js +24 -0
  156. package/dist/decorators/event.js.map +1 -0
  157. package/dist/decorators/property.d.ts +9 -0
  158. package/dist/decorators/property.js +24 -0
  159. package/dist/decorators/property.js.map +1 -0
  160. package/dist/decorators/slot.d.ts +9 -0
  161. package/dist/decorators/slot.js +37 -0
  162. package/dist/decorators/slot.js.map +1 -0
  163. package/dist/delegate/ItemNavigation.d.ts +113 -0
  164. package/dist/delegate/ItemNavigation.js +277 -246
  165. package/dist/delegate/ItemNavigation.js.map +1 -0
  166. package/dist/delegate/ResizeHandler.d.ts +25 -0
  167. package/dist/delegate/ResizeHandler.js +70 -91
  168. package/dist/delegate/ResizeHandler.js.map +1 -0
  169. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  170. package/dist/delegate/ScrollEnablement.js +157 -180
  171. package/dist/delegate/ScrollEnablement.js.map +1 -0
  172. package/dist/features/F6Navigation.d.ts +19 -0
  173. package/dist/features/F6Navigation.js +151 -0
  174. package/dist/features/F6Navigation.js.map +1 -0
  175. package/dist/features/LegacyDateFormats.d.ts +18 -0
  176. package/dist/features/LegacyDateFormats.js +20 -0
  177. package/dist/features/LegacyDateFormats.js.map +1 -0
  178. package/dist/features/OpenUI5Element.d.ts +9 -0
  179. package/dist/features/OpenUI5Element.js +5 -0
  180. package/dist/features/OpenUI5Element.js.map +1 -0
  181. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  182. package/dist/features/OpenUI5Enablement.js +96 -0
  183. package/dist/features/OpenUI5Enablement.js.map +1 -0
  184. package/dist/features/OpenUI5Support.d.ts +25 -0
  185. package/dist/features/OpenUI5Support.js +92 -119
  186. package/dist/features/OpenUI5Support.js.map +1 -0
  187. package/dist/generated/AssetParameters.js +1 -1
  188. package/dist/generated/VersionInfo.js +10 -0
  189. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  190. package/dist/generated/css/BusyIndicator.css.js +7 -0
  191. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  192. package/dist/generated/css/FontFace.css.d.ts +3 -0
  193. package/dist/generated/css/FontFace.css.js +7 -0
  194. package/dist/generated/css/FontFace.css.js.map +1 -0
  195. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  196. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  197. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  198. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  199. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  200. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  201. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +11 -0
  202. package/dist/getSharedResource.d.ts +11 -0
  203. package/dist/getSharedResource.js +21 -17
  204. package/dist/getSharedResource.js.map +1 -0
  205. package/dist/global.d.ts +38 -0
  206. package/dist/i18nBundle.d.ts +43 -0
  207. package/dist/i18nBundle.js +67 -44
  208. package/dist/i18nBundle.js.map +1 -0
  209. package/dist/locale/Locale.d.ts +22 -0
  210. package/dist/locale/Locale.js +75 -87
  211. package/dist/locale/Locale.js.map +1 -0
  212. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  213. package/dist/locale/RTLAwareRegistry.js +6 -11
  214. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  215. package/dist/locale/applyDirection.d.ts +10 -0
  216. package/dist/locale/applyDirection.js +7 -7
  217. package/dist/locale/applyDirection.js.map +1 -0
  218. package/dist/locale/directionChange.d.ts +15 -0
  219. package/dist/locale/directionChange.js +7 -15
  220. package/dist/locale/directionChange.js.map +1 -0
  221. package/dist/locale/getEffectiveDir.d.ts +2 -0
  222. package/dist/locale/getEffectiveDir.js +20 -24
  223. package/dist/locale/getEffectiveDir.js.map +1 -0
  224. package/dist/locale/getLocale.d.ts +7 -0
  225. package/dist/locale/getLocale.js +26 -29
  226. package/dist/locale/getLocale.js.map +1 -0
  227. package/dist/locale/languageChange.d.ts +5 -0
  228. package/dist/locale/languageChange.js +8 -16
  229. package/dist/locale/languageChange.js.map +1 -0
  230. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  231. package/dist/locale/nextFallbackLocale.js +15 -19
  232. package/dist/locale/nextFallbackLocale.js.map +1 -0
  233. package/dist/locale/normalizeLocale.d.ts +7 -0
  234. package/dist/locale/normalizeLocale.js +34 -41
  235. package/dist/locale/normalizeLocale.js.map +1 -0
  236. package/dist/renderer/LitRenderer.d.ts +14 -0
  237. package/dist/renderer/LitRenderer.js +33 -23
  238. package/dist/renderer/LitRenderer.js.map +1 -0
  239. package/dist/renderer/directives/style-map.js +72 -0
  240. package/dist/renderer/executeTemplate.d.ts +13 -0
  241. package/dist/renderer/executeTemplate.js +20 -7
  242. package/dist/renderer/executeTemplate.js.map +1 -0
  243. package/dist/sap/base/Log.js +28 -37
  244. package/dist/sap/base/assert.js +5 -10
  245. package/dist/sap/base/security/URLListValidator.js +13 -2
  246. package/dist/sap/base/security/encodeCSS.js +14 -0
  247. package/dist/sap/base/security/encodeXML.js +23 -0
  248. package/dist/sap/base/strings/toHex.js +8 -0
  249. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  250. package/dist/theming/CustomStyle.d.ts +6 -0
  251. package/dist/theming/CustomStyle.js +39 -31
  252. package/dist/theming/CustomStyle.js.map +1 -0
  253. package/dist/theming/ThemeLoaded.d.ts +5 -0
  254. package/dist/theming/ThemeLoaded.js +8 -16
  255. package/dist/theming/ThemeLoaded.js.map +1 -0
  256. package/dist/theming/ThemeRegistered.d.ts +4 -0
  257. package/dist/theming/ThemeRegistered.js +11 -0
  258. package/dist/theming/ThemeRegistered.js.map +1 -0
  259. package/dist/theming/applyTheme.d.ts +2 -0
  260. package/dist/theming/applyTheme.js +62 -65
  261. package/dist/theming/applyTheme.js.map +1 -0
  262. package/dist/theming/getConstructableStyle.d.ts +9 -0
  263. package/dist/theming/getConstructableStyle.js +12 -17
  264. package/dist/theming/getConstructableStyle.js.map +1 -0
  265. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  266. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  267. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  268. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  269. package/dist/theming/getEffectiveStyle.js +25 -23
  270. package/dist/theming/getEffectiveStyle.js.map +1 -0
  271. package/dist/theming/getStylesString.d.ts +3 -0
  272. package/dist/theming/getStylesString.js +9 -11
  273. package/dist/theming/getStylesString.js.map +1 -0
  274. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  275. package/dist/theming/getThemeDesignerTheme.js +73 -60
  276. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  277. package/dist/theming/preloadLinks.d.ts +3 -0
  278. package/dist/theming/preloadLinks.js +19 -0
  279. package/dist/theming/preloadLinks.js.map +1 -0
  280. package/dist/thirdparty/_merge.d.ts +2 -0
  281. package/dist/thirdparty/_merge.js +7 -4
  282. package/dist/thirdparty/_merge.js.map +1 -0
  283. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  284. package/dist/thirdparty/isPlainObject.js +11 -10
  285. package/dist/thirdparty/isPlainObject.js.map +1 -0
  286. package/dist/thirdparty/merge.d.ts +2 -0
  287. package/dist/thirdparty/merge.js +4 -8
  288. package/dist/thirdparty/merge.js.map +1 -0
  289. package/dist/types/AnimationMode.d.ts +32 -0
  290. package/dist/types/AnimationMode.js +33 -6
  291. package/dist/types/AnimationMode.js.map +1 -0
  292. package/dist/types/CSSColor.d.ts +15 -0
  293. package/dist/types/CSSColor.js +14 -5
  294. package/dist/types/CSSColor.js.map +1 -0
  295. package/dist/types/CalendarType.d.ts +37 -0
  296. package/dist/types/CalendarType.js +35 -18
  297. package/dist/types/CalendarType.js.map +1 -0
  298. package/dist/types/DOMReference.d.ts +17 -0
  299. package/dist/types/DOMReference.js +25 -0
  300. package/dist/types/DOMReference.js.map +1 -0
  301. package/dist/types/DataType.d.ts +25 -0
  302. package/dist/types/DataType.js +33 -14
  303. package/dist/types/DataType.js.map +1 -0
  304. package/dist/types/Float.d.ts +17 -0
  305. package/dist/types/Float.js +17 -6
  306. package/dist/types/Float.js.map +1 -0
  307. package/dist/types/Integer.d.ts +17 -0
  308. package/dist/types/Integer.js +17 -5
  309. package/dist/types/Integer.js.map +1 -0
  310. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  311. package/dist/types/InvisibleMessageMode.js +20 -23
  312. package/dist/types/InvisibleMessageMode.js.map +1 -0
  313. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  314. package/dist/types/ItemNavigationBehavior.js +22 -12
  315. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  316. package/dist/types/NavigationMode.d.ts +32 -0
  317. package/dist/types/NavigationMode.js +33 -6
  318. package/dist/types/NavigationMode.js.map +1 -0
  319. package/dist/types/ValueState.d.ts +42 -0
  320. package/dist/types/ValueState.js +41 -19
  321. package/dist/types/ValueState.js.map +1 -0
  322. package/dist/types.d.ts +18 -0
  323. package/dist/types.js +2 -0
  324. package/dist/types.js.map +1 -0
  325. package/dist/updateShadowRoot.d.ts +8 -0
  326. package/dist/updateShadowRoot.js +27 -15
  327. package/dist/updateShadowRoot.js.map +1 -0
  328. package/dist/util/AriaLabelHelper.d.ts +15 -0
  329. package/dist/util/AriaLabelHelper.js +166 -36
  330. package/dist/util/AriaLabelHelper.js.map +1 -0
  331. package/dist/util/Caret.d.ts +7 -0
  332. package/dist/util/Caret.js +16 -38
  333. package/dist/util/Caret.js.map +1 -0
  334. package/dist/util/ColorConversion.d.ts +30 -0
  335. package/dist/util/ColorConversion.js +315 -348
  336. package/dist/util/ColorConversion.js.map +1 -0
  337. package/dist/util/FetchHelper.d.ts +3 -0
  338. package/dist/util/FetchHelper.js +19 -25
  339. package/dist/util/FetchHelper.js.map +1 -0
  340. package/dist/util/FocusableElements.d.ts +4 -0
  341. package/dist/util/FocusableElements.js +66 -72
  342. package/dist/util/FocusableElements.js.map +1 -0
  343. package/{src/util/HTMLSanitizer.js → dist/util/HTMLSanitizer.d.ts} +1 -5
  344. package/dist/util/HTMLSanitizer.js +4 -5
  345. package/dist/util/HTMLSanitizer.js.map +1 -0
  346. package/dist/util/InvisibleMessage.d.ts +10 -0
  347. package/dist/util/InvisibleMessage.js +42 -44
  348. package/dist/util/InvisibleMessage.js.map +1 -0
  349. package/dist/util/PopupUtils.d.ts +7 -0
  350. package/dist/util/PopupUtils.js +58 -77
  351. package/dist/util/PopupUtils.js.map +1 -0
  352. package/dist/util/SlotsHelper.d.ts +9 -0
  353. package/dist/util/SlotsHelper.js +22 -35
  354. package/dist/util/SlotsHelper.js.map +1 -0
  355. package/dist/util/StringHelper.d.ts +3 -0
  356. package/dist/util/StringHelper.js +17 -20
  357. package/dist/util/StringHelper.js.map +1 -0
  358. package/dist/util/TabbableElements.d.ts +17 -0
  359. package/dist/util/TabbableElements.js +53 -43
  360. package/dist/util/TabbableElements.js.map +1 -0
  361. package/dist/util/arraysAreEqual.d.ts +2 -0
  362. package/dist/util/arraysAreEqual.js +10 -12
  363. package/dist/util/arraysAreEqual.js.map +1 -0
  364. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  365. package/dist/util/clamp.js +2 -2
  366. package/dist/util/clamp.js.map +1 -0
  367. package/dist/util/createLinkInHead.d.ts +7 -0
  368. package/dist/util/createLinkInHead.js +21 -0
  369. package/dist/util/createLinkInHead.js.map +1 -0
  370. package/dist/util/createStyleInHead.d.ts +8 -0
  371. package/dist/util/createStyleInHead.js +10 -10
  372. package/dist/util/createStyleInHead.js.map +1 -0
  373. package/dist/util/debounce.d.ts +2 -0
  374. package/dist/util/debounce.js +6 -8
  375. package/dist/util/debounce.js.map +1 -0
  376. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  377. package/dist/util/detectNavigatorLanguage.js +7 -10
  378. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  379. package/dist/util/escapeRegex.d.ts +8 -0
  380. package/dist/util/escapeRegex.js +11 -0
  381. package/dist/util/escapeRegex.js.map +1 -0
  382. package/dist/util/formatMessage.d.ts +2 -0
  383. package/dist/util/formatMessage.js +15 -19
  384. package/dist/util/formatMessage.js.map +1 -0
  385. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  386. package/dist/util/generateHighlightedMarkup.js +41 -0
  387. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  388. package/dist/util/getActiveElement.d.ts +2 -0
  389. package/dist/util/getActiveElement.js +6 -8
  390. package/dist/util/getActiveElement.js.map +1 -0
  391. package/dist/util/getClassCopy.d.ts +398 -0
  392. package/dist/util/getClassCopy.js +7 -7
  393. package/dist/util/getClassCopy.js.map +1 -0
  394. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  395. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  396. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  397. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  398. package/dist/util/getEffectiveContentDensity.js +2 -3
  399. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  400. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  401. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  402. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  403. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  404. package/dist/util/getFastNavigationGroups.js +51 -0
  405. package/dist/util/getFastNavigationGroups.js.map +1 -0
  406. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  407. package/dist/util/getFileExtension.js +9 -11
  408. package/dist/util/getFileExtension.js.map +1 -0
  409. package/dist/util/getNormalizedTarget.d.ts +7 -0
  410. package/dist/util/getNormalizedTarget.js +14 -0
  411. package/dist/util/getNormalizedTarget.js.map +1 -0
  412. package/dist/util/getSingletonElementInstance.d.ts +2 -0
  413. package/dist/util/getSingletonElementInstance.js +7 -10
  414. package/dist/util/getSingletonElementInstance.js.map +1 -0
  415. package/dist/util/isElementClickable.d.ts +2 -0
  416. package/dist/util/isElementClickable.js +16 -0
  417. package/dist/util/isElementClickable.js.map +1 -0
  418. package/dist/util/isElementHidden.d.ts +2 -0
  419. package/dist/util/isElementHidden.js +8 -0
  420. package/dist/util/isElementHidden.js.map +1 -0
  421. package/dist/util/isElementInView.d.ts +6 -0
  422. package/dist/util/isElementInView.js +6 -9
  423. package/dist/util/isElementInView.js.map +1 -0
  424. package/dist/util/isElementTabbable.d.ts +9 -0
  425. package/dist/util/isElementTabbable.js +30 -0
  426. package/dist/util/isElementTabbable.js.map +1 -0
  427. package/dist/util/isValidPropertyName.d.ts +8 -0
  428. package/dist/util/isValidPropertyName.js +16 -17
  429. package/dist/util/isValidPropertyName.js.map +1 -0
  430. package/dist/util/whenDOMReady.d.ts +2 -0
  431. package/dist/util/whenDOMReady.js +11 -10
  432. package/dist/util/whenDOMReady.js.map +1 -0
  433. package/dist/util/willShowContent.d.ts +2 -0
  434. package/dist/util/willShowContent.js +7 -0
  435. package/dist/util/willShowContent.js.map +1 -0
  436. package/dist/validateThemeRoot.d.ts +2 -0
  437. package/dist/validateThemeRoot.js +47 -0
  438. package/dist/validateThemeRoot.js.map +1 -0
  439. package/lib/generate-asset-parameters/index.js +8 -5
  440. package/lib/generate-styles/index.js +31 -0
  441. package/lib/generate-version-info/index.js +32 -0
  442. package/package-scripts.js +38 -30
  443. package/package.json +11 -12
  444. package/src/css/BusyIndicator.css +80 -0
  445. package/src/css/FontFace.css +66 -0
  446. package/src/css/OverrideFontFace.css +32 -0
  447. package/src/css/SystemCSSVars.css +17 -0
  448. package/src/renderer/directives/style-map.js +72 -0
  449. package/tsconfig.json +14 -0
  450. package/used-modules.txt +4 -1
  451. package/config/rollup.config.js +0 -1
  452. package/dist/RenderScheduler.js +0 -44
  453. package/dist/animations/config.js +0 -5
  454. package/dist/config/AssetsPath.js +0 -17
  455. package/dist/isLegacyBrowser.js +0 -3
  456. package/dist/resources/bundle.esm.js +0 -26
  457. package/dist/resources/bundle.esm.js.map +0 -1
  458. package/dist/test-resources/assets/Themes.js +0 -17
  459. package/dist/test-resources/elements/Child.js +0 -35
  460. package/dist/test-resources/elements/Generic.js +0 -84
  461. package/dist/test-resources/elements/GenericExt.js +0 -26
  462. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  463. package/dist/test-resources/elements/Parent.js +0 -41
  464. package/dist/test-resources/elements/WithStaticArea.js +0 -76
  465. package/dist/test-resources/pages/AllTestElements.html +0 -39
  466. package/dist/test-resources/pages/Configuration.html +0 -18
  467. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  468. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  469. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  470. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  471. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  472. package/dist/test-resources/pages/i18n.html +0 -35
  473. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
  474. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
  475. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -93
  476. package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
  477. package/dist/test-resources/specs/StaticArea.spec.js +0 -36
  478. package/dist/test-resources/specs/Theming.spec.js +0 -33
  479. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
  480. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
  481. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
  482. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
  483. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
  484. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
  485. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
  486. package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
  487. package/dist/theming/createThemePropertiesStyleTag.js +0 -20
  488. package/dist/types/CSSSize.js +0 -9
  489. package/dist/types/PopupState.js +0 -37
  490. package/dist/util/encodeCSS.js +0 -24
  491. package/dist/util/findNodeOwner.js +0 -35
  492. package/dist/util/isDescendantOf.js +0 -15
  493. package/dist/util/isNodeClickable.js +0 -19
  494. package/dist/util/isNodeHidden.js +0 -9
  495. package/dist/util/isNodeTabbable.js +0 -28
  496. package/dist/util/setToArray.js +0 -10
  497. package/hash.txt +0 -1
  498. package/src/Boot.js +0 -43
  499. package/src/CustomElementsRegistry.js +0 -39
  500. package/src/DOMObserver.js +0 -65
  501. package/src/Device.js +0 -102
  502. package/src/EventProvider.js +0 -91
  503. package/src/FeaturesRegistry.js +0 -11
  504. package/src/FontFace.js +0 -118
  505. package/src/InitialConfiguration.js +0 -162
  506. package/src/Keys.js +0 -239
  507. package/src/MediaRange.js +0 -109
  508. package/src/PropertiesFileFormat.js +0 -95
  509. package/src/Render.js +0 -173
  510. package/src/RenderQueue.js +0 -66
  511. package/src/RenderScheduler.js +0 -44
  512. package/src/StaticArea.js +0 -3
  513. package/src/StaticAreaItem.js +0 -96
  514. package/src/SystemCSSVars.js +0 -31
  515. package/src/UI5Element.js +0 -1034
  516. package/src/UI5ElementMetadata.js +0 -311
  517. package/src/animations/AnimationQueue.js +0 -42
  518. package/src/animations/animate.js +0 -53
  519. package/src/animations/config.js +0 -5
  520. package/src/animations/scroll.js +0 -28
  521. package/src/animations/slideDown.js +0 -79
  522. package/src/animations/slideUp.js +0 -71
  523. package/src/asset-registries/Icons.js +0 -121
  524. package/src/asset-registries/Illustrations.js +0 -23
  525. package/src/asset-registries/LocaleData.js +0 -150
  526. package/src/asset-registries/Themes.js +0 -78
  527. package/src/asset-registries/i18n.js +0 -121
  528. package/src/config/AnimationMode.js +0 -23
  529. package/src/config/AssetsPath.js +0 -17
  530. package/src/config/CalendarType.js +0 -18
  531. package/src/config/FormatSettings.js +0 -13
  532. package/src/config/Language.js +0 -68
  533. package/src/config/NoConflict.js +0 -51
  534. package/src/config/RTL.js +0 -31
  535. package/src/config/Theme.js +0 -28
  536. package/src/delegate/ItemNavigation.js +0 -285
  537. package/src/delegate/ResizeHandler.js +0 -106
  538. package/src/delegate/ScrollEnablement.js +0 -188
  539. package/src/features/OpenUI5Support.js +0 -125
  540. package/src/getSharedResource.js +0 -30
  541. package/src/i18nBundle.js +0 -55
  542. package/src/isLegacyBrowser.js +0 -3
  543. package/src/locale/Locale.js +0 -91
  544. package/src/locale/RTLAwareRegistry.js +0 -14
  545. package/src/locale/applyDirection.js +0 -17
  546. package/src/locale/directionChange.js +0 -32
  547. package/src/locale/getEffectiveDir.js +0 -28
  548. package/src/locale/getLocale.js +0 -41
  549. package/src/locale/languageChange.js +0 -22
  550. package/src/locale/nextFallbackLocale.js +0 -28
  551. package/src/locale/normalizeLocale.js +0 -54
  552. package/src/renderer/LitRenderer.js +0 -31
  553. package/src/renderer/executeTemplate.js +0 -17
  554. package/src/theming/CustomStyle.js +0 -40
  555. package/src/theming/ThemeLoaded.js +0 -22
  556. package/src/theming/applyTheme.js +0 -78
  557. package/src/theming/createThemePropertiesStyleTag.js +0 -20
  558. package/src/theming/getConstructableStyle.js +0 -30
  559. package/src/theming/getEffectiveStyle.js +0 -30
  560. package/src/theming/getStylesString.js +0 -13
  561. package/src/theming/getThemeDesignerTheme.js +0 -67
  562. package/src/thirdparty/_merge.js +0 -32
  563. package/src/thirdparty/isPlainObject.js +0 -18
  564. package/src/thirdparty/merge.js +0 -10
  565. package/src/types/AnimationMode.js +0 -7
  566. package/src/types/CSSColor.js +0 -9
  567. package/src/types/CSSSize.js +0 -9
  568. package/src/types/CalendarType.js +0 -22
  569. package/src/types/DataType.js +0 -25
  570. package/src/types/Float.js +0 -10
  571. package/src/types/Integer.js +0 -9
  572. package/src/types/InvisibleMessageMode.js +0 -30
  573. package/src/types/ItemNavigationBehavior.js +0 -16
  574. package/src/types/NavigationMode.js +0 -7
  575. package/src/types/PopupState.js +0 -37
  576. package/src/types/ValueState.js +0 -22
  577. package/src/updateShadowRoot.js +0 -26
  578. package/src/util/AriaLabelHelper.js +0 -41
  579. package/src/util/Caret.js +0 -45
  580. package/src/util/ColorConversion.js +0 -370
  581. package/src/util/FetchHelper.js +0 -31
  582. package/src/util/FocusableElements.js +0 -77
  583. package/src/util/InvisibleMessage.js +0 -58
  584. package/src/util/PopupUtils.js +0 -93
  585. package/src/util/SlotsHelper.js +0 -43
  586. package/src/util/StringHelper.js +0 -26
  587. package/src/util/TabbableElements.js +0 -47
  588. package/src/util/arraysAreEqual.js +0 -15
  589. package/src/util/createStyleInHead.js +0 -18
  590. package/src/util/debounce.js +0 -17
  591. package/src/util/detectNavigatorLanguage.js +0 -13
  592. package/src/util/encodeCSS.js +0 -24
  593. package/src/util/findNodeOwner.js +0 -35
  594. package/src/util/formatMessage.js +0 -23
  595. package/src/util/getActiveElement.js +0 -11
  596. package/src/util/getClassCopy.js +0 -10
  597. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  598. package/src/util/getEffectiveContentDensity.js +0 -5
  599. package/src/util/getSingletonElementInstance.js +0 -13
  600. package/src/util/isDescendantOf.js +0 -15
  601. package/src/util/isElementInView.js +0 -15
  602. package/src/util/isNodeClickable.js +0 -19
  603. package/src/util/isNodeHidden.js +0 -9
  604. package/src/util/isNodeTabbable.js +0 -28
  605. package/src/util/isValidPropertyName.js +0 -29
  606. package/src/util/setToArray.js +0 -10
  607. package/src/util/whenDOMReady.js +0 -13
  608. /package/{config/.eslintrc.js → .eslintrc.js} +0 -0
@@ -1,30 +0,0 @@
1
- import getSingletonElementInstance from "./util/getSingletonElementInstance.js";
2
-
3
- const getSharedResourcesInstance = () => getSingletonElementInstance("ui5-shared-resources", document.head);
4
-
5
- /**
6
- * Use this method to initialize/get resources that you would like to be shared among UI5 Web Components runtime instances.
7
- * The data will be accessed via a singleton "ui5-shared-resources" HTML element in the "head" element of the page.
8
- *
9
- * @public
10
- * @param namespace Unique ID of the resource, may contain "." to denote hierarchy
11
- * @param initialValue Object or primitive that will be used as an initial value if the resource does not exist
12
- * @returns {*}
13
- */
14
- const getSharedResource = (namespace, initialValue) => {
15
- const parts = namespace.split(".");
16
- let current = getSharedResourcesInstance();
17
-
18
- for (let i = 0; i < parts.length; i++) {
19
- const part = parts[i];
20
- const lastPart = i === parts.length - 1;
21
- if (!Object.prototype.hasOwnProperty.call(current, part)) {
22
- current[part] = lastPart ? initialValue : {};
23
- }
24
- current = current[part];
25
- }
26
-
27
- return current;
28
- };
29
-
30
- export default getSharedResource;
package/src/i18nBundle.js DELETED
@@ -1,55 +0,0 @@
1
- import { registerI18nLoader, fetchI18nBundle, getI18nBundleData } from "./asset-registries/i18n.js";
2
- import formatMessage from "./util/formatMessage.js";
3
-
4
- const I18nBundleInstances = new Map();
5
-
6
- /**
7
- * @class
8
- * @public
9
- */
10
- class I18nBundle {
11
- constructor(packageName) {
12
- this.packageName = packageName;
13
- }
14
-
15
- /**
16
- * Returns a text in the currently loaded language
17
- *
18
- * @param {Object|String} textObj key/defaultText pair or just the key
19
- * @param params Values for the placeholders
20
- * @returns {*}
21
- */
22
- getText(textObj, ...params) {
23
- if (typeof textObj === "string") {
24
- textObj = { key: textObj, defaultText: textObj };
25
- }
26
-
27
- if (!textObj || !textObj.key) {
28
- return "";
29
- }
30
-
31
- const bundle = getI18nBundleData(this.packageName);
32
- if (bundle && !bundle[textObj.key]) {
33
- console.warn(`Key ${textObj.key} not found in the i18n bundle, the default text will be used`); // eslint-disable-line
34
- }
35
- const messageText = bundle && bundle[textObj.key] ? bundle[textObj.key] : (textObj.defaultText || textObj.key);
36
-
37
- return formatMessage(messageText, params);
38
- }
39
- }
40
-
41
- const getI18nBundle = packageName => {
42
- if (I18nBundleInstances.has(packageName)) {
43
- return I18nBundleInstances.get(packageName);
44
- }
45
-
46
- const i18nBundle = new I18nBundle(packageName);
47
- I18nBundleInstances.set(packageName, i18nBundle);
48
- return i18nBundle;
49
- };
50
-
51
- export {
52
- registerI18nLoader,
53
- fetchI18nBundle,
54
- getI18nBundle,
55
- };
@@ -1,3 +0,0 @@
1
- const isLegacyBrowser = () => !!window.ShadyDOM;
2
-
3
- export default isLegacyBrowser;
@@ -1,91 +0,0 @@
1
- const rLocale = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;
2
-
3
- class Locale {
4
- constructor(sLocaleId) {
5
- const aResult = rLocale.exec(sLocaleId.replace(/_/g, "-"));
6
- if (aResult === null) {
7
- throw new Error(`The given language ${sLocaleId} does not adhere to BCP-47.`);
8
- }
9
- this.sLocaleId = sLocaleId;
10
- this.sLanguage = aResult[1] || null;
11
- this.sScript = aResult[2] || null;
12
- this.sRegion = aResult[3] || null;
13
- this.sVariant = (aResult[4] && aResult[4].slice(1)) || null;
14
- this.sExtension = (aResult[5] && aResult[5].slice(1)) || null;
15
- this.sPrivateUse = aResult[6] || null;
16
- if (this.sLanguage) {
17
- this.sLanguage = this.sLanguage.toLowerCase();
18
- }
19
- if (this.sScript) {
20
- this.sScript = this.sScript.toLowerCase().replace(/^[a-z]/, s => {
21
- return s.toUpperCase();
22
- });
23
- }
24
- if (this.sRegion) {
25
- this.sRegion = this.sRegion.toUpperCase();
26
- }
27
- }
28
-
29
- getLanguage() {
30
- return this.sLanguage;
31
- }
32
-
33
- getScript() {
34
- return this.sScript;
35
- }
36
-
37
- getRegion() {
38
- return this.sRegion;
39
- }
40
-
41
- getVariant() {
42
- return this.sVariant;
43
- }
44
-
45
- getVariantSubtags() {
46
- return this.sVariant ? this.sVariant.split("-") : [];
47
- }
48
-
49
- getExtension() {
50
- return this.sExtension;
51
- }
52
-
53
- getExtensionSubtags() {
54
- return this.sExtension ? this.sExtension.slice(2).split("-") : [];
55
- }
56
-
57
- getPrivateUse() {
58
- return this.sPrivateUse;
59
- }
60
-
61
- getPrivateUseSubtags() {
62
- return this.sPrivateUse ? this.sPrivateUse.slice(2).split("-") : [];
63
- }
64
-
65
- hasPrivateUseSubtag(sSubtag) {
66
- return this.getPrivateUseSubtags().indexOf(sSubtag) >= 0;
67
- }
68
-
69
- toString() {
70
- const r = [this.sLanguage];
71
-
72
- if (this.sScript) {
73
- r.push(this.sScript);
74
- }
75
- if (this.sRegion) {
76
- r.push(this.sRegion);
77
- }
78
- if (this.sVariant) {
79
- r.push(this.sVariant);
80
- }
81
- if (this.sExtension) {
82
- r.push(this.sExtension);
83
- }
84
- if (this.sPrivateUse) {
85
- r.push(this.sPrivateUse);
86
- }
87
- return r.join("-");
88
- }
89
- }
90
-
91
- export default Locale;
@@ -1,14 +0,0 @@
1
- const rtlAwareSet = new Set();
2
-
3
- const markAsRtlAware = klass => {
4
- rtlAwareSet.add(klass);
5
- };
6
-
7
- const isRtlAware = klass => {
8
- return rtlAwareSet.has(klass);
9
- };
10
-
11
- export {
12
- markAsRtlAware,
13
- isRtlAware,
14
- };
@@ -1,17 +0,0 @@
1
- import { reRenderAllUI5Elements } from "../Render.js";
2
- import { fireDirectionChange } from "./directionChange.js";
3
-
4
- /**
5
- * Re-renders all RTL-aware UI5 Elements.
6
- * Call this method whenever you change the "dir" property anywhere in your HTML page
7
- * Example: document.body.dir = "rtl"; applyDirection();
8
- *
9
- * @returns {Promise<void>}
10
- */
11
- const applyDirection = async () => {
12
- const listenersResults = fireDirectionChange();
13
- await Promise.all(listenersResults);
14
- await reRenderAllUI5Elements({ rtlAware: true });
15
- };
16
-
17
- export default applyDirection;
@@ -1,32 +0,0 @@
1
- import EventProvider from "../EventProvider.js";
2
-
3
- const eventProvider = new EventProvider();
4
- const DIR_CHANGE = "directionChange";
5
-
6
- /**
7
- * Attach a callback that will be executed whenever the application calls the "applyDirection" function
8
- * @public
9
- * @param listener
10
- */
11
- const attachDirectionChange = listener => {
12
- eventProvider.attachEvent(DIR_CHANGE, listener);
13
- };
14
-
15
- /**
16
- * Detach a callback that was passed with "attachDirectionChange"
17
- * @public
18
- * @param listener
19
- */
20
- const detachDirectionChange = listener => {
21
- eventProvider.detachEvent(DIR_CHANGE, listener);
22
- };
23
-
24
- const fireDirectionChange = () => {
25
- return eventProvider.fireEvent(DIR_CHANGE);
26
- };
27
-
28
- export {
29
- attachDirectionChange,
30
- detachDirectionChange,
31
- fireDirectionChange,
32
- };
@@ -1,28 +0,0 @@
1
- import { getRTL } from "../config/RTL.js";
2
-
3
- const GLOBAL_DIR_CSS_VAR = "--_ui5_dir";
4
-
5
- const getEffectiveDir = element => {
6
- const doc = window.document;
7
- const dirValues = ["ltr", "rtl"]; // exclude "auto" and "" from all calculations
8
- const locallyAppliedDir = getComputedStyle(element).getPropertyValue(GLOBAL_DIR_CSS_VAR);
9
-
10
- // In that order, inspect the CSS Var (for modern browsers), the element itself, html and body (for IE fallback)
11
- if (dirValues.includes(locallyAppliedDir)) {
12
- return locallyAppliedDir;
13
- }
14
- if (dirValues.includes(element.dir)) {
15
- return element.dir;
16
- }
17
- if (dirValues.includes(doc.documentElement.dir)) {
18
- return doc.documentElement.dir;
19
- }
20
- if (dirValues.includes(doc.body.dir)) {
21
- return doc.body.dir;
22
- }
23
-
24
- // Finally, check the configuration for explicitly set RTL or language-implied RTL
25
- return getRTL() ? "rtl" : undefined;
26
- };
27
-
28
- export default getEffectiveDir;
@@ -1,41 +0,0 @@
1
- import detectNavigatorLanguage from "../util/detectNavigatorLanguage.js";
2
- import { getLanguage as getConfigLanguage } from "../config/Language.js";
3
- import Locale from "./Locale.js";
4
-
5
- const cache = new Map();
6
-
7
- const getLocaleInstance = lang => {
8
- if (!cache.has(lang)) {
9
- cache.set(lang, new Locale(lang));
10
- }
11
-
12
- return cache.get(lang);
13
- };
14
-
15
- const convertToLocaleOrNull = lang => {
16
- try {
17
- if (lang && typeof lang === "string") {
18
- return getLocaleInstance(lang);
19
- }
20
- } catch (e) {
21
- // ignore
22
- }
23
- };
24
-
25
- /**
26
- * Returns the locale based on the parameter or configured language Configuration#getLanguage
27
- * If no language has been configured - a new locale based on browser language is returned
28
- */
29
- const getLocale = lang => {
30
- if (lang) {
31
- return convertToLocaleOrNull(lang);
32
- }
33
-
34
- if (getConfigLanguage()) {
35
- return getLocaleInstance(getConfigLanguage());
36
- }
37
-
38
- return convertToLocaleOrNull(detectNavigatorLanguage());
39
- };
40
-
41
- export default getLocale;
@@ -1,22 +0,0 @@
1
- import EventProvider from "../EventProvider.js";
2
-
3
- const eventProvider = new EventProvider();
4
- const LANG_CHANGE = "languageChange";
5
-
6
- const attachLanguageChange = listener => {
7
- eventProvider.attachEvent(LANG_CHANGE, listener);
8
- };
9
-
10
- const detachLanguageChange = listener => {
11
- eventProvider.detachEvent(LANG_CHANGE, listener);
12
- };
13
-
14
- const fireLanguageChange = lang => {
15
- return eventProvider.fireEventAsync(LANG_CHANGE, lang);
16
- };
17
-
18
- export {
19
- attachLanguageChange,
20
- detachLanguageChange,
21
- fireLanguageChange,
22
- };
@@ -1,28 +0,0 @@
1
- import { DEFAULT_LOCALE } from "../generated/AssetParameters.js";
2
-
3
- /**
4
- * Calculates the next fallback locale for the given locale.
5
- *
6
- * @param {string} locale Locale string in Java format (underscores) or null
7
- * @returns {string} Next fallback Locale or "en" if no fallbacks found.
8
- */
9
- const nextFallbackLocale = locale => {
10
- if (!locale) {
11
- return DEFAULT_LOCALE;
12
- }
13
-
14
- if (locale === "zh_HK") {
15
- return "zh_TW";
16
- }
17
-
18
- // if there are multiple segments (separated by underscores), remove the last one
19
- const p = locale.lastIndexOf("_");
20
- if (p >= 0) {
21
- return locale.slice(0, p);
22
- }
23
-
24
- // for any language but the default, fallback to the default first before falling back to the 'raw' language (empty string)
25
- return locale !== DEFAULT_LOCALE ? DEFAULT_LOCALE : "";
26
- };
27
-
28
- export default nextFallbackLocale;
@@ -1,54 +0,0 @@
1
- import { DEFAULT_LOCALE } from "../generated/AssetParameters.js";
2
-
3
- const localeRegEX = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;
4
- const SAPSupportabilityLocales = /(?:^|-)(saptrc|sappsd)(?:-|$)/i;
5
-
6
- /* Map for old language names for a few ISO639 codes. */
7
- const M_ISO639_NEW_TO_OLD = {
8
- "he": "iw",
9
- "yi": "ji",
10
- "id": "in",
11
- "sr": "sh",
12
- };
13
-
14
- /**
15
- * Normalizes the given locale in BCP-47 syntax.
16
- * @param {string} locale locale to normalize
17
- * @returns {string} Normalized locale, "undefined" if the locale can't be normalized or the default locale, if no locale provided.
18
- */
19
- const normalizeLocale = locale => {
20
- let m;
21
-
22
- if (!locale) {
23
- return DEFAULT_LOCALE;
24
- }
25
-
26
- if (typeof locale === "string" && (m = localeRegEX.exec(locale.replace(/_/g, "-")))) {/* eslint-disable-line */
27
- let language = m[1].toLowerCase();
28
- let region = m[3] ? m[3].toUpperCase() : undefined;
29
- const script = m[2] ? m[2].toLowerCase() : undefined;
30
- const variants = m[4] ? m[4].slice(1) : undefined;
31
- const isPrivate = m[6];
32
-
33
- language = M_ISO639_NEW_TO_OLD[language] || language;
34
-
35
- // recognize and convert special SAP supportability locales (overwrites m[]!)
36
- if ((isPrivate && (m = SAPSupportabilityLocales.exec(isPrivate))) /* eslint-disable-line */ ||
37
- (variants && (m = SAPSupportabilityLocales.exec(variants)))) {/* eslint-disable-line */
38
- return `en_US_${m[1].toLowerCase()}`; // for now enforce en_US (agreed with SAP SLS)
39
- }
40
-
41
- // Chinese: when no region but a script is specified, use default region for each script
42
- if (language === "zh" && !region) {
43
- if (script === "hans") {
44
- region = "CN";
45
- } else if (script === "hant") {
46
- region = "TW";
47
- }
48
- }
49
-
50
- return language + (region ? "_" + region + (variants ? "_" + variants.replace("-", "_") : "") : ""); /* eslint-disable-line */
51
- }
52
- };
53
-
54
- export default normalizeLocale;
@@ -1,31 +0,0 @@
1
- import { render } from "lit-html";
2
- import {
3
- html,
4
- svg,
5
- unsafeStatic,
6
- } from "lit-html/static.js";
7
-
8
- const litRender = (templateResult, domNode, styles, { host } = {}) => {
9
- if (styles) {
10
- templateResult = html`<style>${styles}</style>${templateResult}`;
11
- }
12
- render(templateResult, domNode, { host });
13
- };
14
-
15
- const scopeTag = (tag, tags, suffix) => {
16
- const resultTag = suffix && (tags || []).includes(tag) ? `${tag}-${suffix}` : tag;
17
- return unsafeStatic(resultTag);
18
- };
19
-
20
- export {
21
- html,
22
- svg,
23
- unsafeStatic,
24
- };
25
- export { scopeTag };
26
- export { repeat } from "lit-html/directives/repeat.js";
27
- export { classMap } from "lit-html/directives/class-map.js";
28
- export { styleMap } from "lit-html/directives/style-map.js";
29
- export { unsafeHTML } from "lit-html/directives/unsafe-html.js";
30
-
31
- export default litRender;
@@ -1,17 +0,0 @@
1
- import { getCustomElementsScopingSuffix, shouldScopeCustomElement } from "../CustomElementsScope.js";
2
-
3
- /**
4
- * Runs a component's template with the component's current state, while also scoping HTML
5
- *
6
- * @param template - the template to execute
7
- * @param component - the component
8
- * @public
9
- * @returns {*}
10
- */
11
- const executeTemplate = (template, component) => {
12
- const tagsToScope = component.constructor.getUniqueDependencies().map(dep => dep.getMetadata().getPureTag()).filter(shouldScopeCustomElement);
13
- const scope = getCustomElementsScopingSuffix();
14
- return template(component, tagsToScope, scope);
15
- };
16
-
17
- export default executeTemplate;
@@ -1,40 +0,0 @@
1
- import { reRenderAllUI5Elements } from "../Render.js";
2
- import EventProvider from "../EventProvider.js";
3
-
4
- const eventProvider = new EventProvider();
5
- const CUSTOM_CSS_CHANGE = "CustomCSSChange";
6
-
7
- const attachCustomCSSChange = listener => {
8
- eventProvider.attachEvent(CUSTOM_CSS_CHANGE, listener);
9
- };
10
-
11
- const detachCustomCSSChange = listener => {
12
- eventProvider.detachEvent(CUSTOM_CSS_CHANGE, listener);
13
- };
14
-
15
- const fireCustomCSSChange = tag => {
16
- return eventProvider.fireEvent(CUSTOM_CSS_CHANGE, tag);
17
- };
18
-
19
- const customCSSFor = {};
20
-
21
- const addCustomCSS = (tag, css) => {
22
- if (!customCSSFor[tag]) {
23
- customCSSFor[tag] = [];
24
- }
25
- customCSSFor[tag].push(css);
26
- fireCustomCSSChange(tag);
27
-
28
- return reRenderAllUI5Elements({ tag });
29
- };
30
-
31
- const getCustomCSS = tag => {
32
- return customCSSFor[tag] ? customCSSFor[tag].join("") : "";
33
- };
34
-
35
- export {
36
- addCustomCSS,
37
- getCustomCSS,
38
- attachCustomCSSChange,
39
- detachCustomCSSChange,
40
- };
@@ -1,22 +0,0 @@
1
- import EventProvider from "../EventProvider.js";
2
-
3
- const eventProvider = new EventProvider();
4
- const THEME_LOADED = "themeLoaded";
5
-
6
- const attachThemeLoaded = listener => {
7
- eventProvider.attachEvent(THEME_LOADED, listener);
8
- };
9
-
10
- const detachThemeLoaded = listener => {
11
- eventProvider.detachEvent(THEME_LOADED, listener);
12
- };
13
-
14
- const fireThemeLoaded = theme => {
15
- return eventProvider.fireEvent(THEME_LOADED, theme);
16
- };
17
-
18
- export {
19
- attachThemeLoaded,
20
- detachThemeLoaded,
21
- fireThemeLoaded,
22
- };
@@ -1,78 +0,0 @@
1
- import { getThemeProperties, getRegisteredPackages, isThemeRegistered } from "../asset-registries/Themes.js";
2
- import createThemePropertiesStyleTag from "./createThemePropertiesStyleTag.js";
3
- import getThemeDesignerTheme from "./getThemeDesignerTheme.js";
4
- import { fireThemeLoaded } from "./ThemeLoaded.js";
5
- import { getFeature } from "../FeaturesRegistry.js";
6
-
7
- const BASE_THEME_PACKAGE = "@ui5/webcomponents-theme-base";
8
-
9
- const isThemeBaseRegistered = () => {
10
- const registeredPackages = getRegisteredPackages();
11
- return registeredPackages.has(BASE_THEME_PACKAGE);
12
- };
13
-
14
- const loadThemeBase = async theme => {
15
- if (!isThemeBaseRegistered()) {
16
- return;
17
- }
18
-
19
- const cssText = await getThemeProperties(BASE_THEME_PACKAGE, theme);
20
- createThemePropertiesStyleTag(cssText, BASE_THEME_PACKAGE);
21
- };
22
-
23
- const deleteThemeBase = () => {
24
- const styleElement = document.head.querySelector(`style[data-ui5-theme-properties="${BASE_THEME_PACKAGE}"]`);
25
- if (styleElement) {
26
- styleElement.parentElement.removeChild(styleElement);
27
- }
28
- };
29
-
30
- const loadComponentPackages = async theme => {
31
- const registeredPackages = getRegisteredPackages();
32
- registeredPackages.forEach(async packageName => {
33
- if (packageName === BASE_THEME_PACKAGE) {
34
- return;
35
- }
36
-
37
- const cssText = await getThemeProperties(packageName, theme);
38
- createThemePropertiesStyleTag(cssText, packageName);
39
- });
40
- };
41
-
42
- const detectExternalTheme = () => {
43
- // If theme designer theme is detected, use this
44
- const extTheme = getThemeDesignerTheme();
45
- if (extTheme) {
46
- return extTheme;
47
- }
48
-
49
- // If OpenUI5Support is enabled, try to find out if it loaded variables
50
- const OpenUI5Support = getFeature("OpenUI5Support");
51
- if (OpenUI5Support) {
52
- const varsLoaded = OpenUI5Support.cssVariablesLoaded();
53
- if (varsLoaded) {
54
- return {
55
- themeName: OpenUI5Support.getConfigurationSettingsObject().theme, // just themeName, baseThemeName is only relevant for custom themes
56
- };
57
- }
58
- }
59
- };
60
-
61
- const applyTheme = async theme => {
62
- const extTheme = detectExternalTheme();
63
-
64
- // Only load theme_base properties if there is no externally loaded theme, or there is, but it is not being loaded
65
- if (!extTheme || theme !== extTheme.themeName) {
66
- await loadThemeBase(theme);
67
- } else {
68
- deleteThemeBase();
69
- }
70
-
71
- // Always load component packages properties. For non-registered themes, try with the base theme, if any
72
- const packagesTheme = isThemeRegistered(theme) ? theme : extTheme && extTheme.baseThemeName;
73
- await loadComponentPackages(packagesTheme);
74
-
75
- fireThemeLoaded(theme);
76
- };
77
-
78
- export default applyTheme;
@@ -1,20 +0,0 @@
1
- import createStyleInHead from "../util/createStyleInHead.js";
2
-
3
- /**
4
- * Creates/updates a style element holding all CSS Custom Properties
5
- * @param cssText
6
- * @param packageName
7
- */
8
- const createThemePropertiesStyleTag = (cssText, packageName) => {
9
- const styleElement = document.head.querySelector(`style[data-ui5-theme-properties="${packageName}"]`);
10
- if (styleElement) {
11
- styleElement.textContent = cssText || ""; // in case of undefined
12
- } else {
13
- const attributes = {
14
- "data-ui5-theme-properties": packageName,
15
- };
16
- createStyleInHead(cssText, attributes);
17
- }
18
- };
19
-
20
- export default createThemePropertiesStyleTag;
@@ -1,30 +0,0 @@
1
- import getEffectiveStyle from "./getEffectiveStyle.js";
2
- import { attachCustomCSSChange } from "./CustomStyle.js";
3
-
4
- const constructableStyleMap = new Map();
5
-
6
- attachCustomCSSChange(tag => {
7
- constructableStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part
8
- });
9
-
10
- /**
11
- * Returns (and caches) a constructable style sheet for a web component class
12
- * Note: Chrome
13
- * @param ElementClass
14
- * @returns {*}
15
- */
16
- const getConstructableStyle = (ElementClass, forStaticArea = false) => {
17
- const tag = ElementClass.getMetadata().getTag();
18
- const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
19
-
20
- if (!constructableStyleMap.has(key)) {
21
- const styleContent = getEffectiveStyle(ElementClass, forStaticArea);
22
- const style = new CSSStyleSheet();
23
- style.replaceSync(styleContent);
24
- constructableStyleMap.set(key, [style]);
25
- }
26
-
27
- return constructableStyleMap.get(key);
28
- };
29
-
30
- export default getConstructableStyle;