@ui5/webcomponents-base 0.0.0-35e2c9666 → 0.0.0-3790e6927

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 (615) hide show
  1. package/.eslintignore +6 -4
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +488 -0
  4. package/README.md +32 -6
  5. package/bundle.esm.js +20 -11
  6. package/config/wdio.conf.cjs +400 -0
  7. package/{src/AssetRegistry.js → dist/AssetRegistry.d.ts} +1 -7
  8. package/dist/AssetRegistry.js +2 -7
  9. package/dist/AssetRegistry.js.map +1 -0
  10. package/dist/Boot.d.ts +9 -0
  11. package/dist/Boot.js +56 -44
  12. package/dist/Boot.js.map +1 -0
  13. package/{src/CSP.js → dist/CSP.d.ts} +8 -37
  14. package/dist/CSP.js +16 -24
  15. package/dist/CSP.js.map +1 -0
  16. package/dist/CustomElementsRegistry.d.ts +5 -0
  17. package/dist/CustomElementsRegistry.js +66 -83
  18. package/dist/CustomElementsRegistry.js.map +1 -0
  19. package/dist/CustomElementsScope.d.ts +7 -0
  20. package/dist/CustomElementsScope.js +11 -108
  21. package/dist/CustomElementsScope.js.map +1 -0
  22. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  23. package/{src/CustomElementsScope.js → dist/CustomElementsScopeUtils.js} +34 -52
  24. package/dist/CustomElementsScopeUtils.js.map +1 -0
  25. package/dist/DOMObserver.d.ts +11 -0
  26. package/dist/DOMObserver.js +12 -54
  27. package/dist/DOMObserver.js.map +1 -0
  28. package/dist/Device.d.ts +12 -0
  29. package/dist/Device.js +146 -96
  30. package/dist/Device.js.map +1 -0
  31. package/dist/EventProvider.d.ts +25 -0
  32. package/dist/EventProvider.js +67 -82
  33. package/dist/EventProvider.js.map +1 -0
  34. package/dist/FeaturesRegistry.d.ts +3 -0
  35. package/dist/FeaturesRegistry.js +5 -10
  36. package/dist/FeaturesRegistry.js.map +1 -0
  37. package/dist/FontFace.d.ts +2 -0
  38. package/dist/FontFace.js +14 -19
  39. package/dist/FontFace.js.map +1 -0
  40. package/dist/IgnoreCustomElements.d.ts +27 -0
  41. package/dist/IgnoreCustomElements.js +39 -0
  42. package/dist/IgnoreCustomElements.js.map +1 -0
  43. package/dist/InitialConfiguration.d.ts +27 -0
  44. package/dist/InitialConfiguration.js +121 -131
  45. package/dist/InitialConfiguration.js.map +1 -0
  46. package/dist/Keys.d.ts +57 -0
  47. package/dist/Keys.js +174 -291
  48. package/dist/Keys.js.map +1 -0
  49. package/dist/ManagedStyles.d.ts +8 -0
  50. package/dist/ManagedStyles.js +69 -68
  51. package/dist/ManagedStyles.js.map +1 -0
  52. package/dist/MarkedEvents.d.ts +9 -0
  53. package/dist/MarkedEvents.js +15 -0
  54. package/dist/MarkedEvents.js.map +1 -0
  55. package/dist/MediaRange.d.ts +37 -0
  56. package/dist/MediaRange.js +54 -65
  57. package/dist/MediaRange.js.map +1 -0
  58. package/dist/PropertiesFileFormat.d.ts +8 -0
  59. package/dist/PropertiesFileFormat.js +72 -82
  60. package/dist/PropertiesFileFormat.js.map +1 -0
  61. package/dist/Render.d.ts +47 -0
  62. package/dist/Render.js +81 -113
  63. package/dist/Render.js.map +1 -0
  64. package/dist/RenderQueue.d.ts +19 -0
  65. package/dist/RenderQueue.js +52 -62
  66. package/dist/RenderQueue.js.map +1 -0
  67. package/dist/Runtimes.d.ts +27 -0
  68. package/dist/Runtimes.js +49 -70
  69. package/dist/Runtimes.js.map +1 -0
  70. package/dist/StaticArea.d.ts +3 -0
  71. package/dist/StaticArea.js +5 -1
  72. package/dist/StaticArea.js.map +1 -0
  73. package/dist/StaticAreaItem.d.ts +36 -0
  74. package/dist/StaticAreaItem.js +88 -87
  75. package/dist/StaticAreaItem.js.map +1 -0
  76. package/dist/SystemCSSVars.d.ts +2 -0
  77. package/dist/SystemCSSVars.js +4 -5
  78. package/dist/SystemCSSVars.js.map +1 -0
  79. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  80. package/dist/Theming.js +1 -1
  81. package/dist/Theming.js.map +1 -0
  82. package/dist/UI5Element.d.ts +380 -0
  83. package/dist/UI5Element.js +930 -985
  84. package/dist/UI5Element.js.map +1 -0
  85. package/dist/UI5ElementMetadata.d.ts +150 -0
  86. package/dist/UI5ElementMetadata.js +278 -314
  87. package/dist/UI5ElementMetadata.js.map +1 -0
  88. package/dist/animations/AnimationQueue.d.ts +8 -0
  89. package/dist/animations/AnimationQueue.js +31 -38
  90. package/dist/animations/AnimationQueue.js.map +1 -0
  91. package/dist/animations/animate.d.ts +14 -0
  92. package/dist/animations/animate.js +46 -51
  93. package/dist/animations/animate.js.map +1 -0
  94. package/dist/animations/scroll.d.ts +5 -0
  95. package/dist/animations/scroll.js +18 -27
  96. package/dist/animations/scroll.js.map +1 -0
  97. package/dist/animations/slideDown.d.ts +5 -0
  98. package/dist/animations/slideDown.js +53 -78
  99. package/dist/animations/slideDown.js.map +1 -0
  100. package/dist/animations/slideUp.d.ts +5 -0
  101. package/dist/animations/slideUp.js +49 -70
  102. package/dist/animations/slideUp.js.map +1 -0
  103. package/dist/api.json +1 -0
  104. package/dist/asset-registries/Icons.d.ts +38 -0
  105. package/dist/asset-registries/Icons.js +109 -123
  106. package/dist/asset-registries/Icons.js.map +1 -0
  107. package/dist/asset-registries/Illustrations.d.ts +17 -0
  108. package/dist/asset-registries/Illustrations.js +41 -25
  109. package/dist/asset-registries/Illustrations.js.map +1 -0
  110. package/dist/asset-registries/LocaleData.d.ts +7 -0
  111. package/dist/asset-registries/LocaleData.js +104 -132
  112. package/dist/asset-registries/LocaleData.js.map +1 -0
  113. package/dist/asset-registries/Themes.d.ts +11 -0
  114. package/dist/asset-registries/Themes.js +40 -66
  115. package/dist/asset-registries/Themes.js.map +1 -0
  116. package/dist/asset-registries/i18n.d.ts +23 -0
  117. package/dist/asset-registries/i18n.js +61 -81
  118. package/dist/asset-registries/i18n.js.map +1 -0
  119. package/dist/assets/Boot.34b7cea0.css +1 -0
  120. package/dist/assets/Boot.c42af4c1.js +9 -0
  121. package/dist/assets/bundle.esm.5317b298.js +50 -0
  122. package/dist/assets-meta/IconCollectionsAlias.d.ts +31 -0
  123. package/dist/assets-meta/IconCollectionsAlias.js +30 -10
  124. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  125. package/dist/config/AnimationMode.d.ts +14 -0
  126. package/dist/config/AnimationMode.js +21 -18
  127. package/dist/config/AnimationMode.js.map +1 -0
  128. package/dist/config/CalendarType.d.ts +8 -0
  129. package/dist/config/CalendarType.js +13 -12
  130. package/dist/config/CalendarType.js.map +1 -0
  131. package/dist/config/FormatSettings.d.ts +15 -0
  132. package/dist/config/FormatSettings.js +15 -9
  133. package/dist/config/FormatSettings.js.map +1 -0
  134. package/dist/config/Icons.d.ts +55 -0
  135. package/dist/config/Icons.js +103 -0
  136. package/dist/config/Icons.js.map +1 -0
  137. package/dist/config/Language.d.ts +40 -0
  138. package/dist/config/Language.js +43 -43
  139. package/dist/config/Language.js.map +1 -0
  140. package/dist/config/NoConflict.d.ts +20 -0
  141. package/dist/config/NoConflict.js +41 -41
  142. package/dist/config/NoConflict.js.map +1 -0
  143. package/dist/config/RTL.d.ts +7 -0
  144. package/dist/config/RTL.js +26 -20
  145. package/dist/config/RTL.js.map +1 -0
  146. package/dist/config/Theme.d.ts +38 -0
  147. package/dist/config/Theme.js +54 -37
  148. package/dist/config/Theme.js.map +1 -0
  149. package/dist/config/ThemeRoot.d.ts +29 -0
  150. package/dist/config/ThemeRoot.js +59 -0
  151. package/dist/config/ThemeRoot.js.map +1 -0
  152. package/dist/config/Timezone.d.ts +17 -0
  153. package/dist/config/Timezone.js +30 -0
  154. package/dist/config/Timezone.js.map +1 -0
  155. package/dist/css/BusyIndicator.css +80 -0
  156. package/dist/css/FontFace.css +31 -10
  157. package/dist/decorators/customElement.d.ts +23 -0
  158. package/dist/decorators/customElement.js +37 -0
  159. package/dist/decorators/customElement.js.map +1 -0
  160. package/dist/decorators/event.d.ts +10 -0
  161. package/dist/decorators/event.js +24 -0
  162. package/dist/decorators/event.js.map +1 -0
  163. package/dist/decorators/property.d.ts +9 -0
  164. package/dist/decorators/property.js +24 -0
  165. package/dist/decorators/property.js.map +1 -0
  166. package/dist/decorators/slot.d.ts +9 -0
  167. package/dist/decorators/slot.js +37 -0
  168. package/dist/decorators/slot.js.map +1 -0
  169. package/dist/delegate/ItemNavigation.d.ts +113 -0
  170. package/dist/delegate/ItemNavigation.js +277 -312
  171. package/dist/delegate/ItemNavigation.js.map +1 -0
  172. package/dist/delegate/ResizeHandler.d.ts +25 -0
  173. package/dist/delegate/ResizeHandler.js +72 -91
  174. package/dist/delegate/ResizeHandler.js.map +1 -0
  175. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  176. package/dist/delegate/ScrollEnablement.js +157 -180
  177. package/dist/delegate/ScrollEnablement.js.map +1 -0
  178. package/dist/features/F6Navigation.d.ts +19 -0
  179. package/dist/features/F6Navigation.js +145 -102
  180. package/dist/features/F6Navigation.js.map +1 -0
  181. package/dist/features/LegacyDateFormats.d.ts +18 -0
  182. package/dist/features/LegacyDateFormats.js +20 -0
  183. package/dist/features/LegacyDateFormats.js.map +1 -0
  184. package/dist/features/OpenUI5Element.d.ts +9 -0
  185. package/dist/features/OpenUI5Element.js +5 -0
  186. package/dist/features/OpenUI5Element.js.map +1 -0
  187. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  188. package/dist/features/OpenUI5Enablement.js +96 -0
  189. package/dist/features/OpenUI5Enablement.js.map +1 -0
  190. package/dist/features/OpenUI5Support.d.ts +26 -0
  191. package/dist/features/OpenUI5Support.js +93 -119
  192. package/dist/features/OpenUI5Support.js.map +1 -0
  193. package/dist/generated/AssetParameters.js +2 -0
  194. package/dist/generated/VersionInfo.js +3 -3
  195. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  196. package/dist/generated/css/BusyIndicator.css.js +7 -0
  197. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  198. package/dist/generated/css/FontFace.css.d.ts +3 -0
  199. package/dist/generated/css/FontFace.css.js +7 -5
  200. package/dist/generated/css/FontFace.css.js.map +1 -0
  201. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  202. package/dist/generated/css/OverrideFontFace.css.js +7 -5
  203. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  204. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  205. package/dist/generated/css/SystemCSSVars.css.js +7 -5
  206. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  207. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  208. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  209. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  210. package/dist/getSharedResource.d.ts +11 -0
  211. package/dist/getSharedResource.js +28 -18
  212. package/dist/getSharedResource.js.map +1 -0
  213. package/dist/global.d.ts +40 -0
  214. package/dist/i18nBundle.d.ts +43 -0
  215. package/dist/i18nBundle.js +57 -64
  216. package/dist/i18nBundle.js.map +1 -0
  217. package/dist/locale/Locale.d.ts +22 -0
  218. package/dist/locale/Locale.js +75 -87
  219. package/dist/locale/Locale.js.map +1 -0
  220. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  221. package/dist/locale/RTLAwareRegistry.js +6 -11
  222. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  223. package/dist/locale/applyDirection.d.ts +10 -0
  224. package/dist/locale/applyDirection.js +7 -7
  225. package/dist/locale/applyDirection.js.map +1 -0
  226. package/dist/locale/directionChange.d.ts +15 -0
  227. package/dist/locale/directionChange.js +7 -15
  228. package/dist/locale/directionChange.js.map +1 -0
  229. package/dist/locale/getEffectiveDir.d.ts +2 -0
  230. package/dist/locale/getEffectiveDir.js +20 -24
  231. package/dist/locale/getEffectiveDir.js.map +1 -0
  232. package/dist/locale/getLocale.d.ts +7 -0
  233. package/dist/locale/getLocale.js +26 -29
  234. package/dist/locale/getLocale.js.map +1 -0
  235. package/dist/locale/languageChange.d.ts +5 -0
  236. package/dist/locale/languageChange.js +8 -16
  237. package/dist/locale/languageChange.js.map +1 -0
  238. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  239. package/dist/locale/nextFallbackLocale.js +15 -19
  240. package/dist/locale/nextFallbackLocale.js.map +1 -0
  241. package/dist/locale/normalizeLocale.d.ts +7 -0
  242. package/dist/locale/normalizeLocale.js +34 -41
  243. package/dist/locale/normalizeLocale.js.map +1 -0
  244. package/dist/renderer/LitRenderer.d.ts +14 -0
  245. package/dist/renderer/LitRenderer.js +31 -24
  246. package/dist/renderer/LitRenderer.js.map +1 -0
  247. package/dist/renderer/executeTemplate.d.ts +13 -0
  248. package/dist/renderer/executeTemplate.js +20 -7
  249. package/dist/renderer/executeTemplate.js.map +1 -0
  250. package/dist/sap/base/Log.js +28 -29
  251. package/dist/sap/base/assert.js +5 -6
  252. package/dist/sap/base/security/URLListValidator.js +13 -2
  253. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  254. package/dist/theming/CustomStyle.d.ts +6 -0
  255. package/dist/theming/CustomStyle.js +33 -45
  256. package/dist/theming/CustomStyle.js.map +1 -0
  257. package/dist/theming/ThemeLoaded.d.ts +5 -0
  258. package/dist/theming/ThemeLoaded.js +8 -16
  259. package/dist/theming/ThemeLoaded.js.map +1 -0
  260. package/dist/theming/ThemeRegistered.d.ts +4 -0
  261. package/dist/theming/ThemeRegistered.js +11 -0
  262. package/dist/theming/ThemeRegistered.js.map +1 -0
  263. package/dist/theming/applyTheme.d.ts +2 -0
  264. package/dist/theming/applyTheme.js +61 -64
  265. package/dist/theming/applyTheme.js.map +1 -0
  266. package/dist/theming/getConstructableStyle.d.ts +9 -0
  267. package/dist/theming/getConstructableStyle.js +12 -17
  268. package/dist/theming/getConstructableStyle.js.map +1 -0
  269. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  270. package/dist/theming/getEffectiveLinksHrefs.js +13 -16
  271. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  272. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  273. package/dist/theming/getEffectiveStyle.js +25 -23
  274. package/dist/theming/getEffectiveStyle.js.map +1 -0
  275. package/dist/theming/getStylesString.d.ts +3 -0
  276. package/dist/theming/getStylesString.js +9 -13
  277. package/dist/theming/getStylesString.js.map +1 -0
  278. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  279. package/dist/theming/getThemeDesignerTheme.js +72 -79
  280. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  281. package/dist/theming/preloadLinks.d.ts +3 -0
  282. package/dist/theming/preloadLinks.js +13 -17
  283. package/dist/theming/preloadLinks.js.map +1 -0
  284. package/dist/thirdparty/_merge.d.ts +2 -0
  285. package/dist/thirdparty/_merge.js +7 -4
  286. package/dist/thirdparty/_merge.js.map +1 -0
  287. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  288. package/dist/thirdparty/isPlainObject.js +11 -10
  289. package/dist/thirdparty/isPlainObject.js.map +1 -0
  290. package/dist/thirdparty/merge.d.ts +2 -0
  291. package/dist/thirdparty/merge.js +4 -8
  292. package/dist/thirdparty/merge.js.map +1 -0
  293. package/dist/types/AnimationMode.d.ts +32 -0
  294. package/dist/types/AnimationMode.js +33 -6
  295. package/dist/types/AnimationMode.js.map +1 -0
  296. package/dist/types/CSSColor.d.ts +15 -0
  297. package/dist/types/CSSColor.js +14 -5
  298. package/dist/types/CSSColor.js.map +1 -0
  299. package/dist/types/CalendarType.d.ts +37 -0
  300. package/dist/types/CalendarType.js +35 -18
  301. package/dist/types/CalendarType.js.map +1 -0
  302. package/dist/types/DOMReference.d.ts +17 -0
  303. package/dist/types/DOMReference.js +25 -0
  304. package/dist/types/DOMReference.js.map +1 -0
  305. package/dist/types/DataType.d.ts +25 -0
  306. package/dist/types/DataType.js +33 -26
  307. package/dist/types/DataType.js.map +1 -0
  308. package/dist/types/Float.d.ts +17 -0
  309. package/dist/types/Float.js +17 -10
  310. package/dist/types/Float.js.map +1 -0
  311. package/dist/types/Integer.d.ts +17 -0
  312. package/dist/types/Integer.js +17 -9
  313. package/dist/types/Integer.js.map +1 -0
  314. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  315. package/dist/types/InvisibleMessageMode.js +20 -23
  316. package/dist/types/InvisibleMessageMode.js.map +1 -0
  317. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  318. package/dist/types/ItemNavigationBehavior.js +22 -12
  319. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  320. package/dist/types/NavigationMode.d.ts +32 -0
  321. package/dist/types/NavigationMode.js +33 -6
  322. package/dist/types/NavigationMode.js.map +1 -0
  323. package/dist/types/ValueState.d.ts +42 -0
  324. package/dist/types/ValueState.js +41 -19
  325. package/dist/types/ValueState.js.map +1 -0
  326. package/dist/types.d.ts +18 -0
  327. package/dist/types.js +2 -0
  328. package/dist/types.js.map +1 -0
  329. package/dist/updateShadowRoot.d.ts +8 -0
  330. package/dist/updateShadowRoot.js +29 -18
  331. package/dist/updateShadowRoot.js.map +1 -0
  332. package/dist/util/AriaLabelHelper.d.ts +15 -0
  333. package/dist/util/AriaLabelHelper.js +166 -36
  334. package/dist/util/AriaLabelHelper.js.map +1 -0
  335. package/dist/util/Caret.d.ts +7 -0
  336. package/dist/util/Caret.js +16 -38
  337. package/dist/util/Caret.js.map +1 -0
  338. package/dist/util/ColorConversion.d.ts +30 -0
  339. package/dist/util/ColorConversion.js +315 -348
  340. package/dist/util/ColorConversion.js.map +1 -0
  341. package/dist/util/FetchHelper.d.ts +3 -0
  342. package/dist/util/FetchHelper.js +19 -25
  343. package/dist/util/FetchHelper.js.map +1 -0
  344. package/dist/util/FocusableElements.d.ts +4 -0
  345. package/dist/util/FocusableElements.js +64 -71
  346. package/dist/util/FocusableElements.js.map +1 -0
  347. package/{src/util/HTMLSanitizer.js → dist/util/HTMLSanitizer.d.ts} +1 -5
  348. package/dist/util/HTMLSanitizer.js +4 -5
  349. package/dist/util/HTMLSanitizer.js.map +1 -0
  350. package/dist/util/InvisibleMessage.d.ts +10 -0
  351. package/dist/util/InvisibleMessage.js +41 -45
  352. package/dist/util/InvisibleMessage.js.map +1 -0
  353. package/dist/util/PopupUtils.d.ts +7 -0
  354. package/dist/util/PopupUtils.js +58 -77
  355. package/dist/util/PopupUtils.js.map +1 -0
  356. package/dist/util/SlotsHelper.d.ts +9 -0
  357. package/dist/util/SlotsHelper.js +22 -35
  358. package/dist/util/SlotsHelper.js.map +1 -0
  359. package/dist/util/StringHelper.d.ts +3 -0
  360. package/dist/util/StringHelper.js +17 -20
  361. package/dist/util/StringHelper.js.map +1 -0
  362. package/dist/util/TabbableElements.d.ts +17 -0
  363. package/dist/util/TabbableElements.js +53 -47
  364. package/dist/util/TabbableElements.js.map +1 -0
  365. package/dist/util/arraysAreEqual.d.ts +2 -0
  366. package/dist/util/arraysAreEqual.js +10 -12
  367. package/dist/util/arraysAreEqual.js.map +1 -0
  368. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  369. package/dist/util/clamp.js +2 -2
  370. package/dist/util/clamp.js.map +1 -0
  371. package/dist/util/createLinkInHead.d.ts +7 -0
  372. package/dist/util/createLinkInHead.js +14 -12
  373. package/dist/util/createLinkInHead.js.map +1 -0
  374. package/dist/util/createStyleInHead.d.ts +8 -0
  375. package/dist/util/createStyleInHead.js +10 -10
  376. package/dist/util/createStyleInHead.js.map +1 -0
  377. package/dist/util/debounce.d.ts +2 -0
  378. package/dist/util/debounce.js +6 -8
  379. package/dist/util/debounce.js.map +1 -0
  380. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  381. package/dist/util/detectNavigatorLanguage.js +7 -10
  382. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  383. package/dist/util/escapeRegex.d.ts +8 -0
  384. package/dist/util/escapeRegex.js +8 -7
  385. package/dist/util/escapeRegex.js.map +1 -0
  386. package/dist/util/formatMessage.d.ts +2 -0
  387. package/dist/util/formatMessage.js +15 -19
  388. package/dist/util/formatMessage.js.map +1 -0
  389. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  390. package/dist/util/generateHighlightedMarkup.js +26 -27
  391. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  392. package/dist/util/getActiveElement.d.ts +2 -0
  393. package/dist/util/getActiveElement.js +6 -8
  394. package/dist/util/getActiveElement.js.map +1 -0
  395. package/dist/util/getClassCopy.d.ts +400 -0
  396. package/dist/util/getClassCopy.js +7 -7
  397. package/dist/util/getClassCopy.js.map +1 -0
  398. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  399. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  400. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  401. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  402. package/dist/util/getEffectiveContentDensity.js +2 -3
  403. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  404. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  405. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  406. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  407. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  408. package/dist/util/getFastNavigationGroups.js +51 -0
  409. package/dist/util/getFastNavigationGroups.js.map +1 -0
  410. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  411. package/dist/util/getFileExtension.js +9 -11
  412. package/dist/util/getFileExtension.js.map +1 -0
  413. package/dist/util/getNormalizedTarget.d.ts +7 -0
  414. package/dist/util/getNormalizedTarget.js +14 -0
  415. package/dist/util/getNormalizedTarget.js.map +1 -0
  416. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  417. package/dist/util/getSingletonElementInstance.js +17 -11
  418. package/dist/util/getSingletonElementInstance.js.map +1 -0
  419. package/dist/util/isElementClickable.d.ts +2 -0
  420. package/dist/util/isElementClickable.js +16 -0
  421. package/dist/util/isElementClickable.js.map +1 -0
  422. package/dist/util/isElementHidden.d.ts +2 -0
  423. package/dist/util/isElementHidden.js +8 -0
  424. package/dist/util/isElementHidden.js.map +1 -0
  425. package/dist/util/isElementInView.d.ts +6 -0
  426. package/dist/util/isElementInView.js +6 -9
  427. package/dist/util/isElementInView.js.map +1 -0
  428. package/dist/util/isElementTabbable.d.ts +9 -0
  429. package/dist/util/isElementTabbable.js +30 -0
  430. package/dist/util/isElementTabbable.js.map +1 -0
  431. package/dist/util/isValidPropertyName.d.ts +8 -0
  432. package/dist/util/isValidPropertyName.js +16 -17
  433. package/dist/util/isValidPropertyName.js.map +1 -0
  434. package/dist/util/whenDOMReady.d.ts +2 -0
  435. package/dist/util/whenDOMReady.js +11 -10
  436. package/dist/util/whenDOMReady.js.map +1 -0
  437. package/dist/util/willShowContent.d.ts +2 -0
  438. package/dist/util/willShowContent.js +7 -0
  439. package/dist/util/willShowContent.js.map +1 -0
  440. package/dist/validateThemeRoot.d.ts +2 -0
  441. package/dist/validateThemeRoot.js +48 -0
  442. package/dist/validateThemeRoot.js.map +1 -0
  443. package/index.js +227 -1
  444. package/lib/generate-asset-parameters/index.js +11 -5
  445. package/lib/generate-styles/index.js +26 -13
  446. package/lib/generate-version-info/index.js +18 -13
  447. package/package-scripts.cjs +71 -0
  448. package/package.json +8 -6
  449. package/src/css/BusyIndicator.css +80 -0
  450. package/src/css/FontFace.css +31 -10
  451. package/tsconfig.json +14 -0
  452. package/config/rollup.config.js +0 -1
  453. package/config/wdio.conf.js +0 -1
  454. package/dist/RenderScheduler.js +0 -44
  455. package/dist/animations/config.js +0 -5
  456. package/dist/isLegacyBrowser.js +0 -3
  457. package/dist/resources/bundle.esm.js +0 -37
  458. package/dist/resources/bundle.esm.js.map +0 -1
  459. package/dist/test-resources/assets/Themes.js +0 -17
  460. package/dist/test-resources/elements/Child.js +0 -35
  461. package/dist/test-resources/elements/Generic.js +0 -84
  462. package/dist/test-resources/elements/GenericExt.js +0 -26
  463. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  464. package/dist/test-resources/elements/Parent.js +0 -41
  465. package/dist/test-resources/elements/WithStaticArea.js +0 -77
  466. package/dist/test-resources/pages/AllTestElements.html +0 -42
  467. package/dist/test-resources/pages/Configuration.html +0 -18
  468. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  469. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  470. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  471. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  472. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  473. package/dist/test-resources/pages/i18n.html +0 -33
  474. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
  475. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
  476. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -93
  477. package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
  478. package/dist/test-resources/specs/EventProvider.spec.js +0 -63
  479. package/dist/test-resources/specs/StaticArea.spec.js +0 -78
  480. package/dist/test-resources/specs/Theming.spec.js +0 -33
  481. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
  482. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
  483. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
  484. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
  485. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
  486. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
  487. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
  488. package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
  489. package/dist/types/CSSSize.js +0 -9
  490. package/dist/types/PopupState.js +0 -37
  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/package-scripts.js +0 -62
  499. package/src/Boot.js +0 -59
  500. package/src/CustomElementsRegistry.js +0 -95
  501. package/src/DOMObserver.js +0 -65
  502. package/src/Device.js +0 -116
  503. package/src/EventProvider.js +0 -85
  504. package/src/FeaturesRegistry.js +0 -14
  505. package/src/FontFace.js +0 -30
  506. package/src/InitialConfiguration.js +0 -166
  507. package/src/Keys.js +0 -295
  508. package/src/ManagedStyles.js +0 -83
  509. package/src/MediaRange.js +0 -109
  510. package/src/PropertiesFileFormat.js +0 -95
  511. package/src/Render.js +0 -175
  512. package/src/RenderQueue.js +0 -66
  513. package/src/RenderScheduler.js +0 -44
  514. package/src/Runtimes.js +0 -107
  515. package/src/StaticArea.js +0 -3
  516. package/src/StaticAreaItem.js +0 -101
  517. package/src/SystemCSSVars.js +0 -10
  518. package/src/UI5Element.js +0 -1023
  519. package/src/UI5ElementMetadata.js +0 -327
  520. package/src/animations/AnimationQueue.js +0 -42
  521. package/src/animations/animate.js +0 -53
  522. package/src/animations/config.js +0 -5
  523. package/src/animations/scroll.js +0 -28
  524. package/src/animations/slideDown.js +0 -79
  525. package/src/animations/slideUp.js +0 -71
  526. package/src/asset-registries/Icons.js +0 -139
  527. package/src/asset-registries/Illustrations.js +0 -30
  528. package/src/asset-registries/LocaleData.js +0 -164
  529. package/src/asset-registries/Themes.js +0 -78
  530. package/src/asset-registries/i18n.js +0 -121
  531. package/src/assets-meta/IconCollectionsAlias.js +0 -18
  532. package/src/config/AnimationMode.js +0 -23
  533. package/src/config/CalendarType.js +0 -18
  534. package/src/config/FormatSettings.js +0 -13
  535. package/src/config/Language.js +0 -68
  536. package/src/config/NoConflict.js +0 -51
  537. package/src/config/RTL.js +0 -31
  538. package/src/config/Theme.js +0 -53
  539. package/src/delegate/ItemNavigation.js +0 -351
  540. package/src/delegate/ResizeHandler.js +0 -106
  541. package/src/delegate/ScrollEnablement.js +0 -188
  542. package/src/features/F6Navigation.js +0 -108
  543. package/src/features/OpenUI5Support.js +0 -125
  544. package/src/getSharedResource.js +0 -30
  545. package/src/i18nBundle.js +0 -86
  546. package/src/isLegacyBrowser.js +0 -3
  547. package/src/locale/Locale.js +0 -91
  548. package/src/locale/RTLAwareRegistry.js +0 -14
  549. package/src/locale/applyDirection.js +0 -17
  550. package/src/locale/directionChange.js +0 -32
  551. package/src/locale/getEffectiveDir.js +0 -28
  552. package/src/locale/getLocale.js +0 -41
  553. package/src/locale/languageChange.js +0 -22
  554. package/src/locale/nextFallbackLocale.js +0 -28
  555. package/src/locale/normalizeLocale.js +0 -54
  556. package/src/renderer/LitRenderer.js +0 -34
  557. package/src/renderer/executeTemplate.js +0 -17
  558. package/src/theming/CustomStyle.js +0 -60
  559. package/src/theming/ThemeLoaded.js +0 -22
  560. package/src/theming/applyTheme.js +0 -79
  561. package/src/theming/getConstructableStyle.js +0 -30
  562. package/src/theming/getEffectiveLinksHrefs.js +0 -20
  563. package/src/theming/getEffectiveStyle.js +0 -30
  564. package/src/theming/getStylesString.js +0 -15
  565. package/src/theming/getThemeDesignerTheme.js +0 -87
  566. package/src/theming/preloadLinks.js +0 -23
  567. package/src/thirdparty/_merge.js +0 -32
  568. package/src/thirdparty/isPlainObject.js +0 -18
  569. package/src/thirdparty/merge.js +0 -10
  570. package/src/types/AnimationMode.js +0 -7
  571. package/src/types/CSSColor.js +0 -9
  572. package/src/types/CSSSize.js +0 -9
  573. package/src/types/CalendarType.js +0 -22
  574. package/src/types/DataType.js +0 -37
  575. package/src/types/Float.js +0 -14
  576. package/src/types/Integer.js +0 -13
  577. package/src/types/InvisibleMessageMode.js +0 -30
  578. package/src/types/ItemNavigationBehavior.js +0 -16
  579. package/src/types/NavigationMode.js +0 -7
  580. package/src/types/PopupState.js +0 -37
  581. package/src/types/ValueState.js +0 -22
  582. package/src/updateShadowRoot.js +0 -30
  583. package/src/util/AriaLabelHelper.js +0 -41
  584. package/src/util/Caret.js +0 -45
  585. package/src/util/ColorConversion.js +0 -370
  586. package/src/util/FetchHelper.js +0 -31
  587. package/src/util/FocusableElements.js +0 -79
  588. package/src/util/InvisibleMessage.js +0 -60
  589. package/src/util/PopupUtils.js +0 -93
  590. package/src/util/SlotsHelper.js +0 -43
  591. package/src/util/StringHelper.js +0 -26
  592. package/src/util/TabbableElements.js +0 -51
  593. package/src/util/arraysAreEqual.js +0 -15
  594. package/src/util/createLinkInHead.js +0 -19
  595. package/src/util/createStyleInHead.js +0 -18
  596. package/src/util/debounce.js +0 -17
  597. package/src/util/detectNavigatorLanguage.js +0 -13
  598. package/src/util/escapeRegex.js +0 -10
  599. package/src/util/findNodeOwner.js +0 -35
  600. package/src/util/formatMessage.js +0 -23
  601. package/src/util/generateHighlightedMarkup.js +0 -42
  602. package/src/util/getActiveElement.js +0 -11
  603. package/src/util/getClassCopy.js +0 -10
  604. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  605. package/src/util/getEffectiveContentDensity.js +0 -5
  606. package/src/util/getSingletonElementInstance.js +0 -13
  607. package/src/util/isDescendantOf.js +0 -15
  608. package/src/util/isElementInView.js +0 -15
  609. package/src/util/isNodeClickable.js +0 -19
  610. package/src/util/isNodeHidden.js +0 -9
  611. package/src/util/isNodeTabbable.js +0 -28
  612. package/src/util/isValidPropertyName.js +0 -29
  613. package/src/util/setToArray.js +0 -10
  614. package/src/util/whenDOMReady.js +0 -13
  615. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -1,139 +0,0 @@
1
- import getSharedResource from "../getSharedResource.js";
2
- import IconCollectionsAlias from "../assets-meta/IconCollectionsAlias.js";
3
- import { isThemeFamily } from "../config/Theme.js";
4
-
5
- const loaders = new Map();
6
- const registry = getSharedResource("SVGIcons.registry", new Map());
7
- const iconCollectionPromises = getSharedResource("SVGIcons.promises", new Map());
8
-
9
- const ICON_NOT_FOUND = "ICON_NOT_FOUND";
10
-
11
- /**
12
- * @deprecated
13
- */
14
- const registerIconBundle = async (collectionName, bundleData) => {
15
- throw new Error("This method has been removed. Use `registerIconLoader` instead.");
16
- };
17
-
18
- const registerIconLoader = async (collectionName, loader) => {
19
- loaders.set(collectionName, loader);
20
- };
21
-
22
- const _loadIconCollectionOnce = async collectionName => {
23
- if (!iconCollectionPromises.has(collectionName)) {
24
- if (!loaders.has(collectionName)) {
25
- throw new Error(`No loader registered for the ${collectionName} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);
26
- }
27
- const loadIcons = loaders.get(collectionName);
28
- iconCollectionPromises.set(collectionName, loadIcons(collectionName));
29
- }
30
-
31
- return iconCollectionPromises.get(collectionName);
32
- };
33
-
34
- const _fillRegistry = bundleData => {
35
- Object.keys(bundleData.data).forEach(iconName => {
36
- const iconData = bundleData.data[iconName];
37
-
38
- registerIcon(iconName, {
39
- pathData: iconData.path,
40
- ltr: iconData.ltr,
41
- accData: iconData.acc,
42
- collection: bundleData.collection,
43
- packageName: bundleData.packageName,
44
- });
45
- });
46
- };
47
-
48
- // set
49
- const registerIcon = (name, { pathData, ltr, accData, collection, packageName } = {}) => { // eslint-disable-line
50
- if (!collection) {
51
- collection = _getDefaultCollection();
52
- }
53
-
54
- const key = `${collection}/${name}`;
55
- registry.set(key, {
56
- pathData,
57
- ltr,
58
- accData,
59
- packageName,
60
- });
61
- };
62
-
63
- const _parseName = name => {
64
- // silently support ui5-compatible URIs
65
- if (name.startsWith("sap-icon://")) {
66
- name = name.replace("sap-icon://", "");
67
- }
68
-
69
- let collection;
70
- [name, collection] = name.split("/").reverse();
71
- collection = collection || _getDefaultCollection();
72
-
73
- // Normalize collection name.
74
- // - resolve `SAP-icons-TNT` to `tnt`.
75
- // - resolve `BusinessSuiteInAppSymbols` to `business-suite`.
76
- // - resolve `horizon` to `SAP-icons-v5`,
77
- // Note: aliases can be made as a feature, if more collections need it or more aliases are needed.
78
- collection = _normalizeCollection(collection);
79
- name = name.replace("icon-", "");
80
-
81
- const registryKey = `${collection}/${name}`;
82
- return { name, collection, registryKey };
83
- };
84
-
85
- const getIconDataSync = nameProp => {
86
- const { registryKey } = _parseName(nameProp);
87
- return registry.get(registryKey);
88
- };
89
-
90
- const getIconData = async nameProp => {
91
- const { collection, registryKey } = _parseName(nameProp);
92
-
93
- let iconData = ICON_NOT_FOUND;
94
- try {
95
- iconData = await _loadIconCollectionOnce(collection);
96
- } catch (e) {
97
- console.error(e.message); /* eslint-disable-line */
98
- }
99
-
100
- if (iconData === ICON_NOT_FOUND) {
101
- return iconData;
102
- }
103
-
104
- if (!registry.has(registryKey)) {
105
- // not filled by another await. many getters will await on the same loader, but fill only once
106
- _fillRegistry(iconData);
107
- }
108
- return registry.get(registryKey);
109
- };
110
-
111
- // test page usage only
112
- const _getRegisteredNames = async () => {
113
- // fetch one icon of each collection to trigger the bundle load
114
- await getIconData("edit");
115
- await getIconData("tnt/arrow");
116
- await getIconData("business-suite/3d");
117
- return Array.from(registry.keys());
118
- };
119
-
120
- const _getDefaultCollection = () => {
121
- return isThemeFamily("sap_horizon") ? "SAP-icons-v5" : "SAP-icons";
122
- };
123
-
124
- const _normalizeCollection = collectionName => {
125
- if (IconCollectionsAlias[collectionName]) {
126
- return IconCollectionsAlias[collectionName];
127
- }
128
-
129
- return collectionName;
130
- };
131
-
132
- export {
133
- registerIconBundle,
134
- registerIconLoader,
135
- getIconData,
136
- getIconDataSync,
137
- registerIcon,
138
- _getRegisteredNames,
139
- };
@@ -1,30 +0,0 @@
1
- import getSharedResource from "../getSharedResource.js";
2
-
3
- const registry = getSharedResource("SVGIllustration.registry", new Map());
4
- const ILLUSTRATION_NOT_FOUND = "ILLUSTRATION_NOT_FOUND";
5
-
6
- const registerIllustration = (name, { dialogSvg, sceneSvg, spotSvg, set, title, subtitle } = {}) => { // eslint-disable-line
7
- registry.set(`${set}/${name}`, {
8
- dialogSvg,
9
- sceneSvg,
10
- spotSvg,
11
- title,
12
- subtitle,
13
- });
14
- };
15
-
16
- const getIllustrationDataSync = nameProp => {
17
- let set = "fiori";
18
-
19
- if (nameProp.startsWith("Tnt")) {
20
- set = "tnt";
21
- nameProp = nameProp.replace(/^Tnt/, "");
22
- }
23
-
24
- return registry.get(`${set}/${nameProp}`) || ILLUSTRATION_NOT_FOUND;
25
- };
26
-
27
- export {
28
- getIllustrationDataSync,
29
- registerIllustration,
30
- };
@@ -1,164 +0,0 @@
1
- import { attachLanguageChange } from "../locale/languageChange.js";
2
- import getLocale from "../locale/getLocale.js";
3
- import { DEFAULT_LOCALE, SUPPORTED_LOCALES } from "../generated/AssetParameters.js";
4
- import { getFeature } from "../FeaturesRegistry.js";
5
-
6
- const localeDataMap = new Map();
7
- const loaders = new Map();
8
- const cldrPromises = new Map();
9
- const reportedErrors = new Set();
10
- let warningShown = false;
11
-
12
- const M_ISO639_OLD_TO_NEW = {
13
- "iw": "he",
14
- "ji": "yi",
15
- "in": "id",
16
- };
17
-
18
- const DEV_MODE = false;
19
-
20
- const _showAssetsWarningOnce = localeId => {
21
- if (warningShown) {
22
- return;
23
- }
24
-
25
- if (!DEV_MODE) {
26
- console.warn(`[LocaleData] Supported locale "${localeId}" not configured, import the "Assets.js" module from the webcomponents package you are using.`); /* eslint-disable-line */
27
- } else {
28
- console.warn(`[LocaleData] Note: in dev mode, CLDR assets might be disabled for performance reasons. Try running "ENABLE_CLDR=1 yarn start" to test CLDR assets.`); /* eslint-disable-line */
29
- }
30
-
31
- warningShown = true;
32
- };
33
-
34
- const calcLocale = (language, region, script) => {
35
- // normalize language and handle special cases
36
- language = (language && M_ISO639_OLD_TO_NEW[language]) || language;
37
- // Special case 1: in an SAP context, the inclusive language code "no" always means Norwegian Bokmal ("nb")
38
- if (language === "no") {
39
- language = "nb";
40
- }
41
- // Special case 2: for Chinese, derive a default region from the script (this behavior is inherited from Java)
42
- if (language === "zh" && !region) {
43
- if (script === "Hans") {
44
- region = "CN";
45
- } else if (script === "Hant") {
46
- region = "TW";
47
- }
48
- }
49
-
50
- // Special case 3: for Serbian, there are cyrillic and latin scripts, "sh" and "sr-latn" map to "latin", "sr" maps to cyrillic.
51
- if (language === "sh" || (language === "sr" && script === "Latn")) {
52
- language = "sr";
53
- region = "Latn";
54
- }
55
-
56
- // try language + region
57
- let localeId = `${language}_${region}`;
58
- if (SUPPORTED_LOCALES.includes(localeId)) {
59
- if (loaders.has(localeId)) {
60
- // supported and has loader
61
- return localeId;
62
- }
63
-
64
- // supported, no loader - fallback to default and warn
65
- _showAssetsWarningOnce(localeId);
66
- return DEFAULT_LOCALE;
67
- }
68
-
69
- // not supported, try language only
70
- localeId = language;
71
- if (SUPPORTED_LOCALES.includes(localeId)) {
72
- if (loaders.has(localeId)) {
73
- // supported and has loader
74
- return localeId;
75
- }
76
-
77
- // supported, no loader - fallback to default and warn
78
- _showAssetsWarningOnce(localeId);
79
- return DEFAULT_LOCALE;
80
- }
81
-
82
- // not supported - fallback to default locale
83
- return DEFAULT_LOCALE;
84
- };
85
-
86
- // internal set data
87
- const setLocaleData = (localeId, content) => {
88
- localeDataMap.set(localeId, content);
89
- };
90
-
91
- // external getSync
92
- const getLocaleData = localeId => {
93
- // if there is no loader, the default fallback was fetched and a warning was given - use default locale instead
94
- if (!loaders.has(localeId)) {
95
- localeId = DEFAULT_LOCALE;
96
- }
97
-
98
- const content = localeDataMap.get(localeId);
99
- if (!content) {
100
- throw new Error(`CLDR data for locale ${localeId} is not loaded!`);
101
- }
102
-
103
- return content;
104
- };
105
-
106
- // load bundle over the network once
107
- const _loadCldrOnce = localeId => {
108
- const loadCldr = loaders.get(localeId);
109
-
110
- if (!cldrPromises.get(localeId)) {
111
- cldrPromises.set(localeId, loadCldr(localeId));
112
- }
113
-
114
- return cldrPromises.get(localeId);
115
- };
116
-
117
- // external getAsync
118
- const fetchCldr = async (language, region, script) => {
119
- const localeId = calcLocale(language, region, script);
120
-
121
- // reuse OpenUI5 CLDR if present
122
- const OpenUI5Support = getFeature("OpenUI5Support");
123
- if (OpenUI5Support) {
124
- const cldrContent = OpenUI5Support.getLocaleDataObject();
125
- if (cldrContent) {
126
- // only if openui5 actually returned valid content
127
- setLocaleData(localeId, cldrContent);
128
- return;
129
- }
130
- }
131
-
132
- // fetch it
133
- try {
134
- const cldrContent = await _loadCldrOnce(localeId);
135
- setLocaleData(localeId, cldrContent);
136
- } catch (e) {
137
- if (!reportedErrors.has(e.message)) {
138
- reportedErrors.add(e.message);
139
- console.error(e.message); /* eslint-disable-line */
140
- }
141
- }
142
- };
143
-
144
- const registerLocaleDataLoader = (localeId, loader) => {
145
- loaders.set(localeId, loader);
146
- };
147
-
148
- // register default loader for "en" from ui5 CDN (dev workflow without assets)
149
- registerLocaleDataLoader("en", async runtimeLocaleId => {
150
- return (await fetch(`https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json`)).json();
151
- });
152
-
153
- // When the language changes dynamically (the user calls setLanguage),
154
- // re-fetch the required CDRD data.
155
- attachLanguageChange(() => {
156
- const locale = getLocale();
157
- return fetchCldr(locale.getLanguage(), locale.getRegion(), locale.getScript());
158
- });
159
-
160
- export {
161
- registerLocaleDataLoader,
162
- fetchCldr,
163
- getLocaleData,
164
- };
@@ -1,78 +0,0 @@
1
- import { DEFAULT_THEME } from "../generated/AssetParameters.js";
2
-
3
- const themeStyles = new Map();
4
- const loaders = new Map();
5
- const registeredPackages = new Set();
6
- const registeredThemes = new Set();
7
-
8
- /**
9
- * Used to provide CSS Vars for a specific theme for a specific package.
10
- * The CSS Vars can be passed directly as a string (containing them), as an object with a "_" property(containing them in the "_" property), or as a URL.
11
- * This URL must point to a JSON file, containing a "_" property.
12
- *
13
- * Example usage:
14
- * 1) Pass the CSS Vars as a string directly.
15
- * registerThemeProperties("my-package", "my_theme", ":root{--var1: red;}");
16
- *
17
- * @public
18
- * @param packageName - the NPM package for which CSS Vars are registered
19
- * @param themeName - the theme which the CSS Vars implement
20
- * @param style - the style content directly
21
- * @deprecated
22
- */
23
- const registerThemeProperties = (_packageName, _themeName, _style) => {
24
- throw new Error("`registerThemeProperties` has been depracated. Use `registerThemePropertiesLoader` instead.");
25
- };
26
-
27
- const registerThemePropertiesLoader = (packageName, themeName, loader) => {
28
- loaders.set(`${packageName}/${themeName}`, loader);
29
- registeredPackages.add(packageName);
30
- registeredThemes.add(themeName);
31
- };
32
-
33
- const getThemeProperties = async (packageName, themeName) => {
34
- const style = themeStyles.get(`${packageName}_${themeName}`);
35
- if (style !== undefined) { // it's valid for style to be an empty string
36
- return style;
37
- }
38
-
39
- if (!registeredThemes.has(themeName)) {
40
- const regThemesStr = [...registeredThemes.values()].join(", ");
41
- console.warn(`You have requested a non-registered theme - falling back to ${DEFAULT_THEME}. Registered themes are: ${regThemesStr}`); /* eslint-disable-line */
42
- return themeStyles.get(`${packageName}_${DEFAULT_THEME}`);
43
- }
44
-
45
- const loader = loaders.get(`${packageName}/${themeName}`);
46
- if (!loader) {
47
- // no themes for package
48
- console.error(`Theme [${themeName}] not registered for package [${packageName}]`); /* eslint-disable-line */
49
- return;
50
- }
51
- let data;
52
- try {
53
- data = await loader(themeName);
54
- } catch (e) {
55
- console.error(packageName, e.message); /* eslint-disable-line */
56
- return;
57
- }
58
- const themeProps = data._ || data;
59
-
60
- themeStyles.set(`${packageName}_${themeName}`, themeProps);
61
- return themeProps;
62
- };
63
-
64
- const getRegisteredPackages = () => {
65
- return registeredPackages;
66
- };
67
-
68
- const isThemeRegistered = theme => {
69
- return registeredThemes.has(theme);
70
- };
71
-
72
- export {
73
- registerThemePropertiesLoader,
74
- registerThemeProperties,
75
- getThemeProperties,
76
- getRegisteredPackages,
77
- isThemeRegistered,
78
- };
@@ -1,121 +0,0 @@
1
- import getLocale from "../locale/getLocale.js";
2
- import { attachLanguageChange } from "../locale/languageChange.js";
3
- import normalizeLocale from "../locale/normalizeLocale.js";
4
- import nextFallbackLocale from "../locale/nextFallbackLocale.js";
5
- import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
6
- import { getFetchDefaultLanguage } from "../config/Language.js";
7
-
8
- // contains package names for which the warning has been shown
9
- const warningShown = new Set();
10
- const reportedErrors = new Set();
11
-
12
- const bundleData = new Map();
13
- const bundlePromises = new Map();
14
- const loaders = new Map();
15
-
16
- /**
17
- *
18
- * @param {string} packageName for which package this loader can fetch data
19
- * @param {function} loader async function that will be passed a localeId and should return a JSON object
20
- * @param {Array} localeIds Array of locale IDs that this loader can handle
21
- */
22
- const registerI18nLoader = (packageName, localeId, loader) => {
23
- // register loader by key
24
- const bundleKey = `${packageName}/${localeId}`;
25
- loaders.set(bundleKey, loader);
26
- };
27
-
28
- const _setI18nBundleData = (packageName, data) => {
29
- bundleData.set(packageName, data);
30
- };
31
-
32
- const getI18nBundleData = packageName => {
33
- return bundleData.get(packageName);
34
- };
35
-
36
- /**
37
- * @public
38
- * @deprecated
39
- */
40
- const registerI18nBundle = (_packageName, _bundle) => {
41
- throw new Error("This method has been removed. Use `registerI18nLoader` instead.");
42
- };
43
-
44
- const _hasLoader = (packageName, localeId) => {
45
- const bundleKey = `${packageName}/${localeId}`;
46
- return loaders.has(bundleKey);
47
- };
48
-
49
- // load bundle over the network once
50
- const _loadMessageBundleOnce = (packageName, localeId) => {
51
- const bundleKey = `${packageName}/${localeId}`;
52
- const loadMessageBundle = loaders.get(bundleKey);
53
-
54
- if (!bundlePromises.get(bundleKey)) {
55
- bundlePromises.set(bundleKey, loadMessageBundle(localeId));
56
- }
57
-
58
- return bundlePromises.get(bundleKey);
59
- };
60
-
61
- const _showAssetsWarningOnce = packageName => {
62
- if (!warningShown.has(packageName)) {
63
- console.warn(`[${packageName}]: Message bundle assets are not configured. Falling back to English texts.`, /* eslint-disable-line */
64
- ` Add \`import "${packageName}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`); /* eslint-disable-line */
65
- warningShown.add(packageName);
66
- }
67
- };
68
-
69
- /**
70
- * This method preforms the asynchronous task of fetching the actual text resources. It will fetch
71
- * each text resource over the network once (even for multiple calls to the same method).
72
- * It should be fully finished before the i18nBundle class is created in the webcomponents.
73
- * This method uses the bundle URLs that are populated by the <code>registerI18nBundle</code> method.
74
- * To simplify the usage, the synchronization of both methods happens internally for the same <code>bundleId</code>
75
- * @param {packageName} packageName the NPM package name
76
- * @public
77
- */
78
- const fetchI18nBundle = async packageName => {
79
- const language = getLocale().getLanguage();
80
- const region = getLocale().getRegion();
81
- let localeId = normalizeLocale(language + (region ? `-${region}` : ``));
82
-
83
- while (localeId !== DEFAULT_LANGUAGE && !_hasLoader(packageName, localeId)) {
84
- localeId = nextFallbackLocale(localeId);
85
- }
86
-
87
- // use default language unless configured to always fetch it from the network
88
- const fetchDefaultLanguage = getFetchDefaultLanguage();
89
- if (localeId === DEFAULT_LANGUAGE && !fetchDefaultLanguage) {
90
- _setI18nBundleData(packageName, null); // reset for the default language (if data was set for a previous language)
91
- return;
92
- }
93
-
94
- if (!_hasLoader(packageName, localeId)) {
95
- _showAssetsWarningOnce(packageName);
96
- return;
97
- }
98
-
99
- try {
100
- const data = await _loadMessageBundleOnce(packageName, localeId);
101
- _setI18nBundleData(packageName, data);
102
- } catch (e) {
103
- if (!reportedErrors.has(e.message)) {
104
- reportedErrors.add(e.message);
105
- console.error(e.message); /* eslint-disable-line */
106
- }
107
- }
108
- };
109
-
110
- // When the language changes dynamically (the user calls setLanguage), re-fetch all previously fetched bundles
111
- attachLanguageChange(() => {
112
- const allPackages = [...bundleData.keys()];
113
- return Promise.all(allPackages.map(fetchI18nBundle));
114
- });
115
-
116
- export {
117
- registerI18nLoader,
118
- fetchI18nBundle,
119
- registerI18nBundle,
120
- getI18nBundleData,
121
- };
@@ -1,18 +0,0 @@
1
- /**
2
- * Supported icon collection names and aliases.
3
- *
4
- * Users might specify a collection, using both the key and the value in the following key-value pairs,
5
- * e.g the following pairs are completely exchangeable:
6
- * "SAP-icons-TNT/actor" and "tnt/actor", "BusinessSuiteInAppSymbols/3d" and "business-suite/3d",
7
- * "SAP-icons-v5/accept" and "horizon/accept".
8
- *
9
- * Note: technically, in the code we maintain the collections under the "value" name - "tnt", "business-suite",
10
- * SAP-icons-v5" and "SAP-icons"(which does not have an alias).
11
- */
12
- const IconCollectionsAlias = {
13
- "SAP-icons-TNT": "tnt",
14
- "BusinessSuiteInAppSymbols": "business-suite",
15
- "horizon": "SAP-icons-v5",
16
- };
17
-
18
- export default IconCollectionsAlias;
@@ -1,23 +0,0 @@
1
- import { getAnimationMode as getConfiguredAnimationMode } from "../InitialConfiguration.js";
2
- import AnimationMode from "../types/AnimationMode.js";
3
-
4
- let animationMode;
5
-
6
- const getAnimationMode = () => {
7
- if (animationMode === undefined) {
8
- animationMode = getConfiguredAnimationMode();
9
- }
10
-
11
- return animationMode;
12
- };
13
-
14
- const setAnimationMode = newAnimationMode => {
15
- if (Object.values(AnimationMode).includes(newAnimationMode)) {
16
- animationMode = newAnimationMode;
17
- }
18
- };
19
-
20
- export {
21
- getAnimationMode,
22
- setAnimationMode,
23
- };
@@ -1,18 +0,0 @@
1
- import CalendarType from "../types/CalendarType.js";
2
- import { getCalendarType as getConfiguredCalendarType } from "../InitialConfiguration.js";
3
-
4
- let calendarType;
5
-
6
- const getCalendarType = () => {
7
- if (calendarType === undefined) {
8
- calendarType = getConfiguredCalendarType();
9
- }
10
-
11
- if (CalendarType.isValid(calendarType)) {
12
- return calendarType;
13
- }
14
-
15
- return CalendarType.Gregorian;
16
- };
17
-
18
- export { getCalendarType }; // eslint-disable-line
@@ -1,13 +0,0 @@
1
- import { getFormatSettings } from "../InitialConfiguration.js";
2
-
3
- let formatSettings;
4
-
5
- const getFirstDayOfWeek = () => {
6
- if (formatSettings === undefined) {
7
- formatSettings = getFormatSettings();
8
- }
9
-
10
- return formatSettings.firstDayOfWeek;
11
- };
12
-
13
- export { getFirstDayOfWeek }; // eslint-disable-line
@@ -1,68 +0,0 @@
1
- import {
2
- getLanguage as getConfiguredLanguage,
3
- getFetchDefaultLanguage as getConfiguredFetchDefaultLanguage,
4
- } from "../InitialConfiguration.js";
5
- import { fireLanguageChange } from "../locale/languageChange.js";
6
- import { reRenderAllUI5Elements } from "../Render.js";
7
-
8
- let language;
9
- let fetchDefaultLanguage;
10
-
11
- /**
12
- * Returns the currently configured language, or the browser language as a fallback
13
- * @returns {String}
14
- */
15
- const getLanguage = () => {
16
- if (language === undefined) {
17
- language = getConfiguredLanguage();
18
- }
19
- return language;
20
- };
21
-
22
- /**
23
- * Changes the current language, re-fetches all message bundles, updates all language-aware components
24
- * and returns a promise that resolves when all rendering is done
25
- *
26
- * @param newLanguage
27
- * @returns {Promise<void>}
28
- */
29
- const setLanguage = async newLanguage => {
30
- if (language === newLanguage) {
31
- return;
32
- }
33
-
34
- language = newLanguage;
35
-
36
- await fireLanguageChange(newLanguage);
37
- await reRenderAllUI5Elements({ languageAware: true });
38
- };
39
-
40
- /**
41
- * Defines if the default language, that is inlined, should be
42
- * fetched over the network instead of using the inlined one.
43
- * <b>Note:</b> By default the language will not be fetched.
44
- *
45
- * @param {Boolean} fetchDefaultLanguage
46
- */
47
- const setFetchDefaultLanguage = fetchDefaultLang => {
48
- fetchDefaultLanguage = fetchDefaultLang;
49
- };
50
-
51
- /**
52
- * Returns if the default language, that is inlined, should be fetched over the network.
53
- * @returns {Boolean}
54
- */
55
- const getFetchDefaultLanguage = () => {
56
- if (fetchDefaultLanguage === undefined) {
57
- setFetchDefaultLanguage(getConfiguredFetchDefaultLanguage());
58
- }
59
-
60
- return fetchDefaultLanguage;
61
- };
62
-
63
- export {
64
- getLanguage,
65
- setLanguage,
66
- setFetchDefaultLanguage,
67
- getFetchDefaultLanguage,
68
- };