@ui5/webcomponents-base 0.0.0-7e7d9ea6f → 0.0.0-8085abb8d

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 (584) hide show
  1. package/.eslintignore +6 -4
  2. package/.eslintrc.cjs +3 -0
  3. package/.npsrc.json +3 -0
  4. package/CHANGELOG.md +396 -0
  5. package/README.md +4 -0
  6. package/bundle.esm.js +13 -2
  7. package/config/wdio.conf.cjs +400 -0
  8. package/{src/AssetRegistry.js → dist/AssetRegistry.d.ts} +1 -7
  9. package/dist/AssetRegistry.js +2 -7
  10. package/dist/AssetRegistry.js.map +1 -0
  11. package/dist/Boot.d.ts +9 -0
  12. package/dist/Boot.js +56 -44
  13. package/dist/Boot.js.map +1 -0
  14. package/{src/CSP.js → dist/CSP.d.ts} +8 -37
  15. package/dist/CSP.js +16 -24
  16. package/dist/CSP.js.map +1 -0
  17. package/dist/CustomElementsRegistry.d.ts +5 -0
  18. package/dist/CustomElementsRegistry.js +66 -83
  19. package/dist/CustomElementsRegistry.js.map +1 -0
  20. package/dist/CustomElementsScope.d.ts +7 -0
  21. package/dist/CustomElementsScope.js +10 -29
  22. package/dist/CustomElementsScope.js.map +1 -0
  23. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  24. package/dist/CustomElementsScopeUtils.js +34 -52
  25. package/dist/CustomElementsScopeUtils.js.map +1 -0
  26. package/dist/DOMObserver.d.ts +11 -0
  27. package/dist/DOMObserver.js +12 -54
  28. package/dist/DOMObserver.js.map +1 -0
  29. package/dist/Device.d.ts +12 -0
  30. package/dist/Device.js +145 -100
  31. package/dist/Device.js.map +1 -0
  32. package/dist/EventProvider.d.ts +25 -0
  33. package/dist/EventProvider.js +67 -82
  34. package/dist/EventProvider.js.map +1 -0
  35. package/dist/FeaturesRegistry.d.ts +3 -0
  36. package/dist/FeaturesRegistry.js +5 -10
  37. package/dist/FeaturesRegistry.js.map +1 -0
  38. package/dist/FontFace.d.ts +2 -0
  39. package/dist/FontFace.js +14 -19
  40. package/dist/FontFace.js.map +1 -0
  41. package/dist/IgnoreCustomElements.d.ts +27 -0
  42. package/dist/IgnoreCustomElements.js +39 -0
  43. package/dist/IgnoreCustomElements.js.map +1 -0
  44. package/dist/InitialConfiguration.d.ts +27 -0
  45. package/dist/InitialConfiguration.js +121 -131
  46. package/dist/InitialConfiguration.js.map +1 -0
  47. package/dist/Keys.d.ts +57 -0
  48. package/dist/Keys.js +174 -291
  49. package/dist/Keys.js.map +1 -0
  50. package/dist/ManagedStyles.d.ts +8 -0
  51. package/dist/ManagedStyles.js +69 -68
  52. package/dist/ManagedStyles.js.map +1 -0
  53. package/dist/MarkedEvents.d.ts +9 -0
  54. package/dist/MarkedEvents.js +15 -0
  55. package/dist/MarkedEvents.js.map +1 -0
  56. package/dist/MediaRange.d.ts +37 -0
  57. package/dist/MediaRange.js +54 -65
  58. package/dist/MediaRange.js.map +1 -0
  59. package/dist/PropertiesFileFormat.d.ts +8 -0
  60. package/dist/PropertiesFileFormat.js +72 -82
  61. package/dist/PropertiesFileFormat.js.map +1 -0
  62. package/dist/Render.d.ts +47 -0
  63. package/dist/Render.js +81 -113
  64. package/dist/Render.js.map +1 -0
  65. package/dist/RenderQueue.d.ts +19 -0
  66. package/dist/RenderQueue.js +52 -62
  67. package/dist/RenderQueue.js.map +1 -0
  68. package/dist/Runtimes.d.ts +27 -0
  69. package/dist/Runtimes.js +49 -70
  70. package/dist/Runtimes.js.map +1 -0
  71. package/dist/StaticArea.d.ts +3 -0
  72. package/dist/StaticArea.js +5 -1
  73. package/dist/StaticArea.js.map +1 -0
  74. package/dist/StaticAreaItem.d.ts +36 -0
  75. package/dist/StaticAreaItem.js +87 -86
  76. package/dist/StaticAreaItem.js.map +1 -0
  77. package/dist/SystemCSSVars.d.ts +2 -0
  78. package/dist/SystemCSSVars.js +4 -5
  79. package/dist/SystemCSSVars.js.map +1 -0
  80. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  81. package/dist/Theming.js +1 -1
  82. package/dist/Theming.js.map +1 -0
  83. package/dist/UI5Element.d.ts +380 -0
  84. package/dist/UI5Element.js +930 -995
  85. package/dist/UI5Element.js.map +1 -0
  86. package/dist/UI5ElementMetadata.d.ts +150 -0
  87. package/dist/UI5ElementMetadata.js +277 -338
  88. package/dist/UI5ElementMetadata.js.map +1 -0
  89. package/dist/animations/AnimationQueue.d.ts +8 -0
  90. package/dist/animations/AnimationQueue.js +31 -38
  91. package/dist/animations/AnimationQueue.js.map +1 -0
  92. package/dist/animations/animate.d.ts +14 -0
  93. package/dist/animations/animate.js +46 -51
  94. package/dist/animations/animate.js.map +1 -0
  95. package/dist/animations/scroll.d.ts +5 -0
  96. package/dist/animations/scroll.js +18 -27
  97. package/dist/animations/scroll.js.map +1 -0
  98. package/dist/animations/slideDown.d.ts +5 -0
  99. package/dist/animations/slideDown.js +53 -78
  100. package/dist/animations/slideDown.js.map +1 -0
  101. package/dist/animations/slideUp.d.ts +5 -0
  102. package/dist/animations/slideUp.js +49 -70
  103. package/dist/animations/slideUp.js.map +1 -0
  104. package/dist/api.json +1 -0
  105. package/dist/asset-registries/Icons.d.ts +38 -0
  106. package/dist/asset-registries/Icons.js +109 -119
  107. package/dist/asset-registries/Icons.js.map +1 -0
  108. package/dist/asset-registries/Illustrations.d.ts +17 -0
  109. package/dist/asset-registries/Illustrations.js +41 -25
  110. package/dist/asset-registries/Illustrations.js.map +1 -0
  111. package/dist/asset-registries/LocaleData.d.ts +7 -0
  112. package/dist/asset-registries/LocaleData.js +104 -132
  113. package/dist/asset-registries/LocaleData.js.map +1 -0
  114. package/dist/asset-registries/Themes.d.ts +11 -0
  115. package/dist/asset-registries/Themes.js +38 -68
  116. package/dist/asset-registries/Themes.js.map +1 -0
  117. package/dist/asset-registries/i18n.d.ts +23 -0
  118. package/dist/asset-registries/i18n.js +58 -80
  119. package/dist/asset-registries/i18n.js.map +1 -0
  120. package/dist/assets/Boot.1ee7a8e7.js +9 -0
  121. package/dist/assets/Boot.34b7cea0.css +1 -0
  122. package/dist/assets/bundle.esm.40f75059.js +50 -0
  123. package/dist/assets-meta/IconCollectionsAlias.d.ts +31 -0
  124. package/dist/assets-meta/IconCollectionsAlias.js +30 -10
  125. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  126. package/dist/config/AnimationMode.d.ts +14 -0
  127. package/dist/config/AnimationMode.js +21 -18
  128. package/dist/config/AnimationMode.js.map +1 -0
  129. package/dist/config/CalendarType.d.ts +8 -0
  130. package/dist/config/CalendarType.js +13 -12
  131. package/dist/config/CalendarType.js.map +1 -0
  132. package/dist/config/FormatSettings.d.ts +15 -0
  133. package/dist/config/FormatSettings.js +15 -9
  134. package/dist/config/FormatSettings.js.map +1 -0
  135. package/dist/config/Icons.d.ts +55 -0
  136. package/dist/config/Icons.js +89 -38
  137. package/dist/config/Icons.js.map +1 -0
  138. package/dist/config/Language.d.ts +40 -0
  139. package/dist/config/Language.js +43 -43
  140. package/dist/config/Language.js.map +1 -0
  141. package/dist/config/NoConflict.d.ts +20 -0
  142. package/dist/config/NoConflict.js +41 -41
  143. package/dist/config/NoConflict.js.map +1 -0
  144. package/dist/config/RTL.d.ts +7 -0
  145. package/dist/config/RTL.js +26 -20
  146. package/dist/config/RTL.js.map +1 -0
  147. package/dist/config/Theme.d.ts +38 -0
  148. package/dist/config/Theme.js +54 -37
  149. package/dist/config/Theme.js.map +1 -0
  150. package/dist/config/ThemeRoot.d.ts +29 -0
  151. package/dist/config/ThemeRoot.js +59 -0
  152. package/dist/config/ThemeRoot.js.map +1 -0
  153. package/dist/config/Timezone.d.ts +17 -0
  154. package/dist/config/Timezone.js +30 -0
  155. package/dist/config/Timezone.js.map +1 -0
  156. package/dist/css/FontFace.css +9 -18
  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 -317
  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 -104
  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 +89 -112
  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 -5
  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 +28 -39
  246. package/dist/renderer/LitRenderer.js.map +1 -0
  247. package/dist/renderer/executeTemplate.d.ts +13 -0
  248. package/dist/renderer/executeTemplate.js +12 -16
  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 +12 -22
  271. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  272. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  273. package/dist/theming/getEffectiveStyle.js +24 -31
  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 -17
  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 -25
  337. package/dist/util/Caret.js.map +1 -0
  338. package/dist/util/ColorConversion.d.ts +30 -0
  339. package/dist/util/ColorConversion.js +311 -372
  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 +40 -53
  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/{src/util/getNormalizedTarget.js → dist/util/getNormalizedTarget.d.ts} +1 -10
  414. package/dist/util/getNormalizedTarget.js +7 -9
  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 +4 -2
  445. package/lib/generate-styles/index.js +13 -8
  446. package/lib/generate-version-info/index.js +1 -1
  447. package/{package-scripts.js → package-scripts.cjs} +24 -9
  448. package/package.json +5 -4
  449. package/src/css/FontFace.css +9 -18
  450. package/tsconfig.json +14 -0
  451. package/config/wdio.conf.js +0 -1
  452. package/dist/RenderScheduler.js +0 -44
  453. package/dist/animations/config.js +0 -5
  454. package/dist/assets/bundle.esm.691f93f5.js +0 -43
  455. package/dist/types/CSSSize.js +0 -9
  456. package/dist/types/PopupState.js +0 -37
  457. package/dist/util/findNodeOwner.js +0 -35
  458. package/dist/util/isDefaultSlotProvided.js +0 -11
  459. package/dist/util/isDescendantOf.js +0 -15
  460. package/dist/util/isNodeClickable.js +0 -19
  461. package/dist/util/isNodeHidden.js +0 -9
  462. package/dist/util/isNodeTabbable.js +0 -28
  463. package/dist/util/setToArray.js +0 -10
  464. package/hash.txt +0 -1
  465. package/src/Boot.js +0 -59
  466. package/src/CustomElementsRegistry.js +0 -95
  467. package/src/CustomElementsScope.js +0 -30
  468. package/src/CustomElementsScopeUtils.js +0 -108
  469. package/src/DOMObserver.js +0 -65
  470. package/src/Device.js +0 -121
  471. package/src/EventProvider.js +0 -85
  472. package/src/FeaturesRegistry.js +0 -14
  473. package/src/FontFace.js +0 -30
  474. package/src/InitialConfiguration.js +0 -166
  475. package/src/Keys.js +0 -295
  476. package/src/ManagedStyles.js +0 -83
  477. package/src/MediaRange.js +0 -109
  478. package/src/PropertiesFileFormat.js +0 -95
  479. package/src/Render.js +0 -175
  480. package/src/RenderQueue.js +0 -66
  481. package/src/RenderScheduler.js +0 -44
  482. package/src/Runtimes.js +0 -107
  483. package/src/StaticArea.js +0 -3
  484. package/src/StaticAreaItem.js +0 -101
  485. package/src/SystemCSSVars.js +0 -10
  486. package/src/UI5Element.js +0 -1033
  487. package/src/UI5ElementMetadata.js +0 -352
  488. package/src/animations/AnimationQueue.js +0 -42
  489. package/src/animations/animate.js +0 -53
  490. package/src/animations/config.js +0 -5
  491. package/src/animations/scroll.js +0 -28
  492. package/src/animations/slideDown.js +0 -79
  493. package/src/animations/slideUp.js +0 -71
  494. package/src/asset-registries/Icons.js +0 -135
  495. package/src/asset-registries/Illustrations.js +0 -30
  496. package/src/asset-registries/LocaleData.js +0 -164
  497. package/src/asset-registries/Themes.js +0 -82
  498. package/src/asset-registries/i18n.js +0 -123
  499. package/src/assets-meta/IconCollectionsAlias.js +0 -18
  500. package/src/config/AnimationMode.js +0 -23
  501. package/src/config/CalendarType.js +0 -18
  502. package/src/config/FormatSettings.js +0 -13
  503. package/src/config/Icons.js +0 -52
  504. package/src/config/Language.js +0 -68
  505. package/src/config/NoConflict.js +0 -51
  506. package/src/config/RTL.js +0 -31
  507. package/src/config/Theme.js +0 -53
  508. package/src/delegate/ItemNavigation.js +0 -356
  509. package/src/delegate/ResizeHandler.js +0 -106
  510. package/src/delegate/ScrollEnablement.js +0 -188
  511. package/src/features/F6Navigation.js +0 -110
  512. package/src/features/OpenUI5Enablement.js +0 -119
  513. package/src/features/OpenUI5Support.js +0 -125
  514. package/src/getSharedResource.js +0 -30
  515. package/src/i18nBundle.js +0 -86
  516. package/src/locale/Locale.js +0 -91
  517. package/src/locale/RTLAwareRegistry.js +0 -14
  518. package/src/locale/applyDirection.js +0 -17
  519. package/src/locale/directionChange.js +0 -32
  520. package/src/locale/getEffectiveDir.js +0 -28
  521. package/src/locale/getLocale.js +0 -41
  522. package/src/locale/languageChange.js +0 -22
  523. package/src/locale/nextFallbackLocale.js +0 -28
  524. package/src/locale/normalizeLocale.js +0 -54
  525. package/src/renderer/LitRenderer.js +0 -52
  526. package/src/renderer/executeTemplate.js +0 -34
  527. package/src/theming/CustomStyle.js +0 -60
  528. package/src/theming/ThemeLoaded.js +0 -22
  529. package/src/theming/applyTheme.js +0 -79
  530. package/src/theming/getConstructableStyle.js +0 -30
  531. package/src/theming/getEffectiveLinksHrefs.js +0 -27
  532. package/src/theming/getEffectiveStyle.js +0 -39
  533. package/src/theming/getStylesString.js +0 -15
  534. package/src/theming/getThemeDesignerTheme.js +0 -87
  535. package/src/theming/preloadLinks.js +0 -23
  536. package/src/thirdparty/_merge.js +0 -32
  537. package/src/thirdparty/isPlainObject.js +0 -18
  538. package/src/thirdparty/merge.js +0 -10
  539. package/src/types/AnimationMode.js +0 -7
  540. package/src/types/CSSColor.js +0 -9
  541. package/src/types/CSSSize.js +0 -9
  542. package/src/types/CalendarType.js +0 -22
  543. package/src/types/DataType.js +0 -37
  544. package/src/types/Float.js +0 -14
  545. package/src/types/Integer.js +0 -13
  546. package/src/types/InvisibleMessageMode.js +0 -30
  547. package/src/types/ItemNavigationBehavior.js +0 -16
  548. package/src/types/NavigationMode.js +0 -7
  549. package/src/types/PopupState.js +0 -37
  550. package/src/types/ValueState.js +0 -22
  551. package/src/updateShadowRoot.js +0 -29
  552. package/src/util/AriaLabelHelper.js +0 -41
  553. package/src/util/Caret.js +0 -32
  554. package/src/util/ColorConversion.js +0 -398
  555. package/src/util/FetchHelper.js +0 -31
  556. package/src/util/FocusableElements.js +0 -79
  557. package/src/util/InvisibleMessage.js +0 -69
  558. package/src/util/PopupUtils.js +0 -93
  559. package/src/util/SlotsHelper.js +0 -43
  560. package/src/util/StringHelper.js +0 -26
  561. package/src/util/TabbableElements.js +0 -51
  562. package/src/util/arraysAreEqual.js +0 -15
  563. package/src/util/createLinkInHead.js +0 -19
  564. package/src/util/createStyleInHead.js +0 -18
  565. package/src/util/debounce.js +0 -17
  566. package/src/util/detectNavigatorLanguage.js +0 -13
  567. package/src/util/escapeRegex.js +0 -10
  568. package/src/util/findNodeOwner.js +0 -35
  569. package/src/util/formatMessage.js +0 -23
  570. package/src/util/generateHighlightedMarkup.js +0 -42
  571. package/src/util/getActiveElement.js +0 -11
  572. package/src/util/getClassCopy.js +0 -10
  573. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  574. package/src/util/getEffectiveContentDensity.js +0 -5
  575. package/src/util/getSingletonElementInstance.js +0 -13
  576. package/src/util/isDefaultSlotProvided.js +0 -11
  577. package/src/util/isDescendantOf.js +0 -15
  578. package/src/util/isElementInView.js +0 -15
  579. package/src/util/isNodeClickable.js +0 -19
  580. package/src/util/isNodeHidden.js +0 -9
  581. package/src/util/isNodeTabbable.js +0 -28
  582. package/src/util/isValidPropertyName.js +0 -29
  583. package/src/util/setToArray.js +0 -10
  584. package/src/util/whenDOMReady.js +0 -13
@@ -1,60 +1,48 @@
1
1
  import { reRenderAllUI5Elements } from "../Render.js";
2
2
  import getSharedResource from "../getSharedResource.js";
3
3
  import EventProvider from "../EventProvider.js";
4
-
5
- const eventProvider = getSharedResource("CustomStyle.eventProvider", new EventProvider());
4
+ const getEventProvider = () => getSharedResource("CustomStyle.eventProvider", new EventProvider());
6
5
  const CUSTOM_CSS_CHANGE = "CustomCSSChange";
7
-
8
- const attachCustomCSSChange = listener => {
9
- eventProvider.attachEvent(CUSTOM_CSS_CHANGE, listener);
6
+ const attachCustomCSSChange = (listener) => {
7
+ getEventProvider().attachEvent(CUSTOM_CSS_CHANGE, listener);
10
8
  };
11
-
12
- const detachCustomCSSChange = listener => {
13
- eventProvider.detachEvent(CUSTOM_CSS_CHANGE, listener);
9
+ const detachCustomCSSChange = (listener) => {
10
+ getEventProvider().detachEvent(CUSTOM_CSS_CHANGE, listener);
14
11
  };
15
-
16
- const fireCustomCSSChange = tag => {
17
- return eventProvider.fireEvent(CUSTOM_CSS_CHANGE, tag);
12
+ const fireCustomCSSChange = (tag) => {
13
+ return getEventProvider().fireEvent(CUSTOM_CSS_CHANGE, tag);
18
14
  };
19
-
20
- const customCSSFor = getSharedResource("CustomStyle.customCSSFor", {});
21
-
15
+ const getCustomCSSFor = () => getSharedResource("CustomStyle.customCSSFor", {});
22
16
  // Listen to the eventProvider, in case other copies of this CustomStyle module fire this
23
17
  // event, and this copy would therefore need to reRender the ui5 webcomponents; but
24
18
  // don't reRender if it was this copy that fired the event to begin with.
25
19
  let skipRerender;
26
- attachCustomCSSChange(tag => {
27
- if (!skipRerender) {
28
- reRenderAllUI5Elements({ tag });
29
- }
20
+ attachCustomCSSChange((tag) => {
21
+ if (!skipRerender) {
22
+ reRenderAllUI5Elements({ tag });
23
+ }
30
24
  });
31
-
32
25
  const addCustomCSS = (tag, css) => {
33
- if (!customCSSFor[tag]) {
34
- customCSSFor[tag] = [];
35
- }
36
- customCSSFor[tag].push(css);
37
-
38
- skipRerender = true;
39
- try {
40
- // The event is fired and the attached event listeners are all called synchronously
41
- // The skipRerender flag will be used to avoid calling reRenderAllUI5Elements twice when it is this copy
42
- // of CustomStyle.js which is firing the `CustomCSSChange` event.
43
- fireCustomCSSChange(tag);
44
- } finally {
45
- skipRerender = false;
46
- }
47
-
48
- return reRenderAllUI5Elements({ tag });
26
+ const customCSSFor = getCustomCSSFor();
27
+ if (!customCSSFor[tag]) {
28
+ customCSSFor[tag] = [];
29
+ }
30
+ customCSSFor[tag].push(css);
31
+ skipRerender = true;
32
+ try {
33
+ // The event is fired and the attached event listeners are all called synchronously
34
+ // The skipRerender flag will be used to avoid calling reRenderAllUI5Elements twice when it is this copy
35
+ // of CustomStyle.js which is firing the `CustomCSSChange` event.
36
+ fireCustomCSSChange(tag);
37
+ }
38
+ finally {
39
+ skipRerender = false;
40
+ }
41
+ return reRenderAllUI5Elements({ tag });
49
42
  };
50
-
51
- const getCustomCSS = tag => {
52
- return customCSSFor[tag] ? customCSSFor[tag].join("") : "";
53
- };
54
-
55
- export {
56
- addCustomCSS,
57
- getCustomCSS,
58
- attachCustomCSSChange,
59
- detachCustomCSSChange,
43
+ const getCustomCSS = (tag) => {
44
+ const customCSSFor = getCustomCSSFor();
45
+ return customCSSFor[tag] ? customCSSFor[tag].join("") : "";
60
46
  };
47
+ export { addCustomCSS, getCustomCSS, attachCustomCSSChange, detachCustomCSSChange, };
48
+ //# sourceMappingURL=CustomStyle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomStyle.js","sourceRoot":"","sources":["../../src/theming/CustomStyle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC,2BAA2B,EAAE,IAAI,aAAa,EAAgB,CAAC,CAAC;AACjH,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;AAE5C,MAAM,qBAAqB,GAAG,CAAC,QAAiC,EAAE,EAAE;IACnE,gBAAgB,EAAE,CAAC,WAAW,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,QAAiC,EAAE,EAAE;IACnE,gBAAgB,EAAE,CAAC,WAAW,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,GAAW,EAAE,EAAE;IAC3C,OAAO,gBAAgB,EAAE,CAAC,SAAS,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAgC,0BAA0B,EAAE,EAAE,CAAC,CAAC;AAE/G,yFAAyF;AACzF,mFAAmF;AACnF,yEAAyE;AACzE,IAAI,YAAqB,CAAC;AAC1B,qBAAqB,CAAC,CAAC,GAAW,EAAE,EAAE;IACrC,IAAI,CAAC,YAAY,EAAE;QAClB,sBAAsB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;KAChC;AACF,CAAC,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,EAAE;IACjD,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;QACvB,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;KACvB;IACD,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,YAAY,GAAG,IAAI,CAAC;IACpB,IAAI;QACH,mFAAmF;QACnF,wGAAwG;QACxG,iEAAiE;QACjE,mBAAmB,CAAC,GAAG,CAAC,CAAC;KACzB;YAAS;QACT,YAAY,GAAG,KAAK,CAAC;KACrB;IAED,OAAO,sBAAsB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAE;IACpC,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5D,CAAC,CAAC;AAEF,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,GACrB,CAAC","sourcesContent":["import { reRenderAllUI5Elements } from \"../Render.js\";\nimport getSharedResource from \"../getSharedResource.js\";\nimport EventProvider from \"../EventProvider.js\";\n\ntype CustomCSSChangeCallback = (tag: string) => void;\n\nconst getEventProvider = () => getSharedResource(\"CustomStyle.eventProvider\", new EventProvider<string, void>());\nconst CUSTOM_CSS_CHANGE = \"CustomCSSChange\";\n\nconst attachCustomCSSChange = (listener: CustomCSSChangeCallback) => {\n\tgetEventProvider().attachEvent(CUSTOM_CSS_CHANGE, listener);\n};\n\nconst detachCustomCSSChange = (listener: CustomCSSChangeCallback) => {\n\tgetEventProvider().detachEvent(CUSTOM_CSS_CHANGE, listener);\n};\n\nconst fireCustomCSSChange = (tag: string) => {\n\treturn getEventProvider().fireEvent(CUSTOM_CSS_CHANGE, tag);\n};\n\nconst getCustomCSSFor = () => getSharedResource<Record<string, Array<string>>>(\"CustomStyle.customCSSFor\", {});\n\n// Listen to the eventProvider, in case other copies of this CustomStyle module fire this\n// event, and this copy would therefore need to reRender the ui5 webcomponents; but\n// don't reRender if it was this copy that fired the event to begin with.\nlet skipRerender: boolean;\nattachCustomCSSChange((tag: string) => {\n\tif (!skipRerender) {\n\t\treRenderAllUI5Elements({ tag });\n\t}\n});\n\nconst addCustomCSS = (tag: string, css: string) => {\n\tconst customCSSFor = getCustomCSSFor();\n\tif (!customCSSFor[tag]) {\n\t\tcustomCSSFor[tag] = [];\n\t}\n\tcustomCSSFor[tag].push(css);\n\n\tskipRerender = true;\n\ttry {\n\t\t// The event is fired and the attached event listeners are all called synchronously\n\t\t// The skipRerender flag will be used to avoid calling reRenderAllUI5Elements twice when it is this copy\n\t\t// of CustomStyle.js which is firing the `CustomCSSChange` event.\n\t\tfireCustomCSSChange(tag);\n\t} finally {\n\t\tskipRerender = false;\n\t}\n\n\treturn reRenderAllUI5Elements({ tag });\n};\n\nconst getCustomCSS = (tag: string) => {\n\tconst customCSSFor = getCustomCSSFor();\n\treturn customCSSFor[tag] ? customCSSFor[tag].join(\"\") : \"\";\n};\n\nexport {\n\taddCustomCSS,\n\tgetCustomCSS,\n\tattachCustomCSSChange,\n\tdetachCustomCSSChange,\n};\n"]}
@@ -0,0 +1,5 @@
1
+ type ThemeLoadedCallback = (theme: string) => void;
2
+ declare const attachThemeLoaded: (listener: ThemeLoadedCallback) => void;
3
+ declare const detachThemeLoaded: (listener: ThemeLoadedCallback) => void;
4
+ declare const fireThemeLoaded: (theme: string) => void[];
5
+ export { attachThemeLoaded, detachThemeLoaded, fireThemeLoaded, };
@@ -1,22 +1,14 @@
1
1
  import EventProvider from "../EventProvider.js";
2
-
3
2
  const eventProvider = new EventProvider();
4
3
  const THEME_LOADED = "themeLoaded";
5
-
6
- const attachThemeLoaded = listener => {
7
- eventProvider.attachEvent(THEME_LOADED, listener);
4
+ const attachThemeLoaded = (listener) => {
5
+ eventProvider.attachEvent(THEME_LOADED, listener);
8
6
  };
9
-
10
- const detachThemeLoaded = listener => {
11
- eventProvider.detachEvent(THEME_LOADED, listener);
7
+ const detachThemeLoaded = (listener) => {
8
+ eventProvider.detachEvent(THEME_LOADED, listener);
12
9
  };
13
-
14
- const fireThemeLoaded = theme => {
15
- return eventProvider.fireEvent(THEME_LOADED, theme);
16
- };
17
-
18
- export {
19
- attachThemeLoaded,
20
- detachThemeLoaded,
21
- fireThemeLoaded,
10
+ const fireThemeLoaded = (theme) => {
11
+ return eventProvider.fireEvent(THEME_LOADED, theme);
22
12
  };
13
+ export { attachThemeLoaded, detachThemeLoaded, fireThemeLoaded, };
14
+ //# sourceMappingURL=ThemeLoaded.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeLoaded.js","sourceRoot":"","sources":["../../src/theming/ThemeLoaded.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAgB,CAAC;AACxD,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC,MAAM,iBAAiB,GAAG,CAAC,QAA6B,EAAE,EAAE;IAC3D,aAAa,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,QAA6B,EAAE,EAAE;IAC3D,aAAa,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE;IACzC,OAAO,aAAa,CAAC,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AACrD,CAAC,CAAC;AAEF,OAAO,EACN,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GACf,CAAC","sourcesContent":["import EventProvider from \"../EventProvider.js\";\n\ntype ThemeLoadedCallback = (theme: string) => void;\n\nconst eventProvider = new EventProvider<string, void>();\nconst THEME_LOADED = \"themeLoaded\";\n\nconst attachThemeLoaded = (listener: ThemeLoadedCallback) => {\n\teventProvider.attachEvent(THEME_LOADED, listener);\n};\n\nconst detachThemeLoaded = (listener: ThemeLoadedCallback) => {\n\teventProvider.detachEvent(THEME_LOADED, listener);\n};\n\nconst fireThemeLoaded = (theme: string) => {\n\treturn eventProvider.fireEvent(THEME_LOADED, theme);\n};\n\nexport {\n\tattachThemeLoaded,\n\tdetachThemeLoaded,\n\tfireThemeLoaded,\n};\n"]}
@@ -0,0 +1,4 @@
1
+ type ThemeRegisteredCallback = (theme: string) => void;
2
+ declare const attachThemeRegistered: (listener: ThemeRegisteredCallback) => void;
3
+ declare const fireThemeRegistered: (theme: string) => void[];
4
+ export { attachThemeRegistered, fireThemeRegistered, };
@@ -0,0 +1,11 @@
1
+ import EventProvider from "../EventProvider.js";
2
+ const eventProvider = new EventProvider();
3
+ const THEME_REGISTERED = "themeRegistered";
4
+ const attachThemeRegistered = (listener) => {
5
+ eventProvider.attachEvent(THEME_REGISTERED, listener);
6
+ };
7
+ const fireThemeRegistered = (theme) => {
8
+ return eventProvider.fireEvent(THEME_REGISTERED, theme);
9
+ };
10
+ export { attachThemeRegistered, fireThemeRegistered, };
11
+ //# sourceMappingURL=ThemeRegistered.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeRegistered.js","sourceRoot":"","sources":["../../src/theming/ThemeRegistered.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAgB,CAAC;AACxD,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAE3C,MAAM,qBAAqB,GAAG,CAAC,QAAiC,EAAE,EAAE;IACnE,aAAa,CAAC,WAAW,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAE,EAAE;IAC7C,OAAO,aAAa,CAAC,SAAS,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,OAAO,EACN,qBAAqB,EACrB,mBAAmB,GACnB,CAAC","sourcesContent":["import EventProvider from \"../EventProvider.js\";\n\ntype ThemeRegisteredCallback = (theme: string) => void;\n\nconst eventProvider = new EventProvider<string, void>();\nconst THEME_REGISTERED = \"themeRegistered\";\n\nconst attachThemeRegistered = (listener: ThemeRegisteredCallback) => {\n\teventProvider.attachEvent(THEME_REGISTERED, listener);\n};\n\nconst fireThemeRegistered = (theme: string) => {\n\treturn eventProvider.fireEvent(THEME_REGISTERED, theme);\n};\n\nexport {\n\tattachThemeRegistered,\n\tfireThemeRegistered,\n};\n"]}
@@ -0,0 +1,2 @@
1
+ declare const applyTheme: (theme: string) => Promise<void>;
2
+ export default applyTheme;
@@ -3,77 +3,74 @@ import { removeStyle, createOrUpdateStyle } from "../ManagedStyles.js";
3
3
  import getThemeDesignerTheme from "./getThemeDesignerTheme.js";
4
4
  import { fireThemeLoaded } from "./ThemeLoaded.js";
5
5
  import { getFeature } from "../FeaturesRegistry.js";
6
-
6
+ import { attachCustomThemeStylesToHead, getThemeRoot } from "../config/ThemeRoot.js";
7
+ import { DEFAULT_THEME } from "../generated/AssetParameters.js";
8
+ import { getCurrentRuntimeIndex } from "../Runtimes.js";
7
9
  const BASE_THEME_PACKAGE = "@ui5/webcomponents-theming";
8
-
9
10
  const isThemeBaseRegistered = () => {
10
- const registeredPackages = getRegisteredPackages();
11
- return registeredPackages.has(BASE_THEME_PACKAGE);
11
+ const registeredPackages = getRegisteredPackages();
12
+ return registeredPackages.has(BASE_THEME_PACKAGE);
12
13
  };
13
-
14
- const loadThemeBase = async theme => {
15
- if (!isThemeBaseRegistered()) {
16
- return;
17
- }
18
-
19
- const cssData = await getThemeProperties(BASE_THEME_PACKAGE, theme);
20
- if (cssData) {
21
- createOrUpdateStyle(cssData, "data-ui5-theme-properties", BASE_THEME_PACKAGE);
22
- }
14
+ const loadThemeBase = async (theme) => {
15
+ if (!isThemeBaseRegistered()) {
16
+ return;
17
+ }
18
+ const cssData = await getThemeProperties(BASE_THEME_PACKAGE, theme);
19
+ if (cssData) {
20
+ createOrUpdateStyle(cssData, "data-ui5-theme-properties", BASE_THEME_PACKAGE);
21
+ }
23
22
  };
24
-
25
23
  const deleteThemeBase = () => {
26
- removeStyle("data-ui5-theme-properties", BASE_THEME_PACKAGE);
24
+ removeStyle("data-ui5-theme-properties", BASE_THEME_PACKAGE);
27
25
  };
28
-
29
- const loadComponentPackages = async theme => {
30
- const registeredPackages = getRegisteredPackages();
31
- registeredPackages.forEach(async packageName => {
32
- if (packageName === BASE_THEME_PACKAGE) {
33
- return;
34
- }
35
-
36
- const cssData = await getThemeProperties(packageName, theme);
37
- if (cssData) {
38
- createOrUpdateStyle(cssData, "data-ui5-theme-properties", packageName);
39
- }
40
- });
26
+ const loadComponentPackages = async (theme) => {
27
+ const registeredPackages = getRegisteredPackages();
28
+ const packagesStylesPromises = [...registeredPackages].map(async (packageName) => {
29
+ if (packageName === BASE_THEME_PACKAGE) {
30
+ return;
31
+ }
32
+ const cssData = await getThemeProperties(packageName, theme);
33
+ if (cssData) {
34
+ createOrUpdateStyle(cssData, `data-ui5-component-properties-${getCurrentRuntimeIndex()}`, packageName);
35
+ }
36
+ });
37
+ return Promise.all(packagesStylesPromises);
41
38
  };
42
-
43
- const detectExternalTheme = () => {
44
- // If theme designer theme is detected, use this
45
- const extTheme = getThemeDesignerTheme();
46
- if (extTheme) {
47
- return extTheme;
48
- }
49
-
50
- // If OpenUI5Support is enabled, try to find out if it loaded variables
51
- const OpenUI5Support = getFeature("OpenUI5Support");
52
- if (OpenUI5Support) {
53
- const varsLoaded = OpenUI5Support.cssVariablesLoaded();
54
- if (varsLoaded) {
55
- return {
56
- themeName: OpenUI5Support.getConfigurationSettingsObject().theme, // just themeName, baseThemeName is only relevant for custom themes
57
- };
58
- }
59
- }
39
+ const detectExternalTheme = async (theme) => {
40
+ // If theme designer theme is detected, use this
41
+ const extTheme = getThemeDesignerTheme();
42
+ if (extTheme) {
43
+ return extTheme;
44
+ }
45
+ // If OpenUI5Support is enabled, try to find out if it loaded variables
46
+ const openUI5Support = getFeature("OpenUI5Support");
47
+ if (openUI5Support) {
48
+ const varsLoaded = openUI5Support.cssVariablesLoaded();
49
+ if (varsLoaded) {
50
+ return {
51
+ themeName: openUI5Support.getConfigurationSettingsObject()?.theme,
52
+ baseThemeName: "", // baseThemeName is only relevant for custom themes
53
+ };
54
+ }
55
+ }
56
+ else if (getThemeRoot()) {
57
+ await attachCustomThemeStylesToHead(theme);
58
+ return getThemeDesignerTheme();
59
+ }
60
60
  };
61
-
62
- const applyTheme = async theme => {
63
- const extTheme = detectExternalTheme();
64
-
65
- // Only load theme_base properties if there is no externally loaded theme, or there is, but it is not being loaded
66
- if (!extTheme || theme !== extTheme.themeName) {
67
- await loadThemeBase(theme);
68
- } else {
69
- deleteThemeBase();
70
- }
71
-
72
- // Always load component packages properties. For non-registered themes, try with the base theme, if any
73
- const packagesTheme = isThemeRegistered(theme) ? theme : extTheme && extTheme.baseThemeName;
74
- await loadComponentPackages(packagesTheme);
75
-
76
- fireThemeLoaded(theme);
61
+ const applyTheme = async (theme) => {
62
+ const extTheme = await detectExternalTheme(theme);
63
+ // Only load theme_base properties if there is no externally loaded theme, or there is, but it is not being loaded
64
+ if (!extTheme || theme !== extTheme.themeName) {
65
+ await loadThemeBase(theme);
66
+ }
67
+ else {
68
+ deleteThemeBase();
69
+ }
70
+ // Always load component packages properties. For non-registered themes, try with the base theme, if any
71
+ const packagesTheme = isThemeRegistered(theme) ? theme : extTheme && extTheme.baseThemeName;
72
+ await loadComponentPackages(packagesTheme || DEFAULT_THEME);
73
+ fireThemeLoaded(theme);
77
74
  };
78
-
79
75
  export default applyTheme;
76
+ //# sourceMappingURL=applyTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyTheme.js","sourceRoot":"","sources":["../../src/theming/applyTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAC7G,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,qBAAqB,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,6BAA6B,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErF,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,kBAAkB,GAAG,4BAA4B,CAAC;AAExD,MAAM,qBAAqB,GAAG,GAAG,EAAE;IAClC,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;IACnD,OAAO,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;IAC7C,IAAI,CAAC,qBAAqB,EAAE,EAAE;QAC7B,OAAO;KACP;IAED,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IACpE,IAAI,OAAO,EAAE;QACZ,mBAAmB,CAAC,OAAO,EAAE,2BAA2B,EAAE,kBAAkB,CAAC,CAAC;KAC9E;AACF,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,GAAG,EAAE;IAC5B,WAAW,CAAC,2BAA2B,EAAE,kBAAkB,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;IACrD,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;IAEnD,MAAM,sBAAsB,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC,GAAG,CAAC,KAAK,EAAC,WAAW,EAAC,EAAE;QAC9E,IAAI,WAAW,KAAK,kBAAkB,EAAE;YACvC,OAAO;SACP;QAED,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,OAAO,EAAE;YACZ,mBAAmB,CAAC,OAAO,EAAE,iCAAiC,sBAAsB,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;SACvG;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;IACnD,gDAAgD;IAChD,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IACzC,IAAI,QAAQ,EAAE;QACb,OAAO,QAAQ,CAAC;KAChB;IAED,uEAAuE;IACvE,MAAM,cAAc,GAAG,UAAU,CAAwB,gBAAgB,CAAC,CAAC;IAC3E,IAAI,cAAc,EAAE;QACnB,MAAM,UAAU,GAAG,cAAc,CAAC,kBAAkB,EAAE,CAAC;QACvD,IAAI,UAAU,EAAE;YACf,OAAO;gBACN,SAAS,EAAE,cAAc,CAAC,8BAA8B,EAAE,EAAE,KAAK;gBACjE,aAAa,EAAE,EAAE,EAAE,mDAAmD;aACtE,CAAC;SACF;KACD;SAAM,IAAI,YAAY,EAAE,EAAE;QAC1B,MAAM,6BAA6B,CAAC,KAAK,CAAC,CAAC;QAE3C,OAAO,qBAAqB,EAAE,CAAC;KAC/B;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;IAC1C,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAElD,kHAAkH;IAClH,IAAI,CAAC,QAAQ,IAAI,KAAK,KAAK,QAAQ,CAAC,SAAS,EAAE;QAC9C,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;KAC3B;SAAM;QACN,eAAe,EAAE,CAAC;KAClB;IAED,wGAAwG;IACxG,MAAM,aAAa,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,CAAC;IAC5F,MAAM,qBAAqB,CAAC,aAAa,IAAI,aAAa,CAAC,CAAC;IAE5D,eAAe,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC","sourcesContent":["import { getThemeProperties, getRegisteredPackages, isThemeRegistered } from \"../asset-registries/Themes.js\";\nimport { removeStyle, createOrUpdateStyle } from \"../ManagedStyles.js\";\nimport getThemeDesignerTheme from \"./getThemeDesignerTheme.js\";\nimport { fireThemeLoaded } from \"./ThemeLoaded.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport { attachCustomThemeStylesToHead, getThemeRoot } from \"../config/ThemeRoot.js\";\nimport type OpenUI5Support from \"../features/OpenUI5Support.js\";\nimport { DEFAULT_THEME } from \"../generated/AssetParameters.js\";\nimport { getCurrentRuntimeIndex } from \"../Runtimes.js\";\n\nconst BASE_THEME_PACKAGE = \"@ui5/webcomponents-theming\";\n\nconst isThemeBaseRegistered = () => {\n\tconst registeredPackages = getRegisteredPackages();\n\treturn registeredPackages.has(BASE_THEME_PACKAGE);\n};\n\nconst loadThemeBase = async (theme: string) => {\n\tif (!isThemeBaseRegistered()) {\n\t\treturn;\n\t}\n\n\tconst cssData = await getThemeProperties(BASE_THEME_PACKAGE, theme);\n\tif (cssData) {\n\t\tcreateOrUpdateStyle(cssData, \"data-ui5-theme-properties\", BASE_THEME_PACKAGE);\n\t}\n};\n\nconst deleteThemeBase = () => {\n\tremoveStyle(\"data-ui5-theme-properties\", BASE_THEME_PACKAGE);\n};\n\nconst loadComponentPackages = async (theme: string) => {\n\tconst registeredPackages = getRegisteredPackages();\n\n\tconst packagesStylesPromises = [...registeredPackages].map(async packageName => {\n\t\tif (packageName === BASE_THEME_PACKAGE) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst cssData = await getThemeProperties(packageName, theme);\n\t\tif (cssData) {\n\t\t\tcreateOrUpdateStyle(cssData, `data-ui5-component-properties-${getCurrentRuntimeIndex()}`, packageName);\n\t\t}\n\t});\n\n\treturn Promise.all(packagesStylesPromises);\n};\n\nconst detectExternalTheme = async (theme: string) => {\n\t// If theme designer theme is detected, use this\n\tconst extTheme = getThemeDesignerTheme();\n\tif (extTheme) {\n\t\treturn extTheme;\n\t}\n\n\t// If OpenUI5Support is enabled, try to find out if it loaded variables\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support) {\n\t\tconst varsLoaded = openUI5Support.cssVariablesLoaded();\n\t\tif (varsLoaded) {\n\t\t\treturn {\n\t\t\t\tthemeName: openUI5Support.getConfigurationSettingsObject()?.theme, // just themeName\n\t\t\t\tbaseThemeName: \"\", // baseThemeName is only relevant for custom themes\n\t\t\t};\n\t\t}\n\t} else if (getThemeRoot()) {\n\t\tawait attachCustomThemeStylesToHead(theme);\n\n\t\treturn getThemeDesignerTheme();\n\t}\n};\n\nconst applyTheme = async (theme: string) => {\n\tconst extTheme = await detectExternalTheme(theme);\n\n\t// Only load theme_base properties if there is no externally loaded theme, or there is, but it is not being loaded\n\tif (!extTheme || theme !== extTheme.themeName) {\n\t\tawait loadThemeBase(theme);\n\t} else {\n\t\tdeleteThemeBase();\n\t}\n\n\t// Always load component packages properties. For non-registered themes, try with the base theme, if any\n\tconst packagesTheme = isThemeRegistered(theme) ? theme : extTheme && extTheme.baseThemeName;\n\tawait loadComponentPackages(packagesTheme || DEFAULT_THEME);\n\n\tfireThemeLoaded(theme);\n};\n\nexport default applyTheme;\n"]}
@@ -0,0 +1,9 @@
1
+ import UI5Element from "../UI5Element.js";
2
+ /**
3
+ * Returns (and caches) a constructable style sheet for a web component class
4
+ * Note: Chrome
5
+ * @param ElementClass
6
+ * @returns {*}
7
+ */
8
+ declare const getConstructableStyle: (ElementClass: typeof UI5Element, forStaticArea?: boolean) => CSSStyleSheet[];
9
+ export default getConstructableStyle;
@@ -1,12 +1,9 @@
1
1
  import getEffectiveStyle from "./getEffectiveStyle.js";
2
2
  import { attachCustomCSSChange } from "./CustomStyle.js";
3
-
4
3
  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
4
+ attachCustomCSSChange((tag) => {
5
+ constructableStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part
8
6
  });
9
-
10
7
  /**
11
8
  * Returns (and caches) a constructable style sheet for a web component class
12
9
  * Note: Chrome
@@ -14,17 +11,15 @@ attachCustomCSSChange(tag => {
14
11
  * @returns {*}
15
12
  */
16
13
  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);
14
+ const tag = ElementClass.getMetadata().getTag();
15
+ const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
16
+ if (!constructableStyleMap.has(key)) {
17
+ const styleContent = getEffectiveStyle(ElementClass, forStaticArea);
18
+ const style = new CSSStyleSheet();
19
+ style.replaceSync(styleContent);
20
+ constructableStyleMap.set(key, [style]);
21
+ }
22
+ return constructableStyleMap.get(key);
28
23
  };
29
-
30
24
  export default getConstructableStyle;
25
+ //# sourceMappingURL=getConstructableStyle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConstructableStyle.js","sourceRoot":"","sources":["../../src/theming/getConstructableStyle.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAgC,CAAC;AAEtE,qBAAqB,CAAC,CAAC,GAAW,EAAE,EAAE;IACrC,qBAAqB,CAAC,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,kFAAkF;AAClI,CAAC,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,qBAAqB,GAAG,CAAC,YAA+B,EAAE,aAAa,GAAG,KAAK,EAAE,EAAE;IACxF,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;IAChD,MAAM,GAAG,GAAG,GAAG,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE5D,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACpC,MAAM,YAAY,GAAG,iBAAiB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QACpE,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;QAClC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAChC,qBAAqB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;KACxC;IAED,OAAO,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;AACxC,CAAC,CAAC;AAEF,eAAe,qBAAqB,CAAC","sourcesContent":["import getEffectiveStyle from \"./getEffectiveStyle.js\";\nimport { attachCustomCSSChange } from \"./CustomStyle.js\";\nimport UI5Element from \"../UI5Element.js\";\n\nconst constructableStyleMap = new Map<string, Array<CSSStyleSheet>>();\n\nattachCustomCSSChange((tag: string) => {\n\tconstructableStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part\n});\n\n/**\n * Returns (and caches) a constructable style sheet for a web component class\n * Note: Chrome\n * @param ElementClass\n * @returns {*}\n */\nconst getConstructableStyle = (ElementClass: typeof UI5Element, forStaticArea = false) => {\n\tconst tag = ElementClass.getMetadata().getTag();\n\tconst key = `${tag}_${forStaticArea ? \"static\" : \"normal\"}`;\n\n\tif (!constructableStyleMap.has(key)) {\n\t\tconst styleContent = getEffectiveStyle(ElementClass, forStaticArea);\n\t\tconst style = new CSSStyleSheet();\n\t\tstyle.replaceSync(styleContent);\n\t\tconstructableStyleMap.set(key, [style]);\n\t}\n\n\treturn constructableStyleMap.get(key)!;\n};\n\nexport default getConstructableStyle;\n"]}
@@ -0,0 +1,3 @@
1
+ import type UI5Element from "../UI5Element.js";
2
+ declare const getEffectiveLinksHrefs: (ElementClass: typeof UI5Element, forStaticArea?: boolean) => string[] | undefined;
3
+ export default getEffectiveLinksHrefs;
@@ -1,27 +1,17 @@
1
1
  import { getUrl } from "../CSP.js";
2
2
  import { getFeature } from "../FeaturesRegistry.js";
3
-
4
- const flatten = arr => {
5
- return arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatten(val) : val), []);
6
- };
7
-
3
+ const MAX_DEPTH_INHERITED_CLASSES = 10; // TypeScript complains about Infinity and big numbers
8
4
  const getEffectiveLinksHrefs = (ElementClass, forStaticArea = false) => {
9
- let stylesData = ElementClass[forStaticArea ? "staticAreaStyles" : "styles"];
10
- const OpenUI5Enablement = getFeature("OpenUI5Enablement");
11
-
12
- if (!stylesData) {
13
- return;
14
- }
15
-
16
- if (!Array.isArray(stylesData)) {
17
- stylesData = [stylesData];
18
- }
19
-
20
- if (OpenUI5Enablement) {
21
- stylesData.push(OpenUI5Enablement.getBusyIndicatorStyles());
22
- }
23
-
24
- return flatten(stylesData).filter(data => !!data).map(data => getUrl(data.packageName, data.fileName));
5
+ const stylesData = ElementClass[forStaticArea ? "staticAreaStyles" : "styles"];
6
+ if (!stylesData) {
7
+ return;
8
+ }
9
+ const stylesDataArray = Array.isArray(stylesData) ? stylesData : [stylesData];
10
+ const openUI5Enablement = getFeature("OpenUI5Enablement");
11
+ if (openUI5Enablement) {
12
+ stylesDataArray.push(openUI5Enablement.getBusyIndicatorStyles());
13
+ }
14
+ return stylesDataArray.flat(MAX_DEPTH_INHERITED_CLASSES).filter(data => !!data).map(data => getUrl(data.packageName, data.fileName));
25
15
  };
26
-
27
16
  export default getEffectiveLinksHrefs;
17
+ //# sourceMappingURL=getEffectiveLinksHrefs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEffectiveLinksHrefs.js","sourceRoot":"","sources":["../../src/theming/getEffectiveLinksHrefs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAKpD,MAAM,2BAA2B,GAAG,EAAE,CAAC,CAAC,sDAAsD;AAE9F,MAAM,sBAAsB,GAAG,CAAC,YAA+B,EAAE,aAAa,GAAG,KAAK,EAAE,EAAE;IACzF,MAAM,UAAU,GAAwB,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEpG,IAAI,CAAC,UAAU,EAAE;QAChB,OAAO;KACP;IAED,MAAM,eAAe,GAAwB,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAEnG,MAAM,iBAAiB,GAAG,UAAU,CAA2B,mBAAmB,CAAC,CAAC;IACpF,IAAI,iBAAiB,EAAE;QACtB,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,CAAC,CAAC;KACjE;IAED,OAAO,eAAe,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAE,IAAqB,CAAC,WAAW,EAAG,IAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC1K,CAAC,CAAC;AAEF,eAAe,sBAAsB,CAAC","sourcesContent":["import { getUrl } from \"../CSP.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport type UI5Element from \"../UI5Element.js\";\nimport type OpenUI5Enablement from \"../features/OpenUI5Enablement.js\";\nimport type { ComponentStylesData, StyleDataCSP } from \"../types.js\";\n\nconst MAX_DEPTH_INHERITED_CLASSES = 10; // TypeScript complains about Infinity and big numbers\n\nconst getEffectiveLinksHrefs = (ElementClass: typeof UI5Element, forStaticArea = false) => {\n\tconst stylesData: ComponentStylesData = ElementClass[forStaticArea ? \"staticAreaStyles\" : \"styles\"];\n\n\tif (!stylesData) {\n\t\treturn;\n\t}\n\n\tconst stylesDataArray: ComponentStylesData = Array.isArray(stylesData) ? stylesData : [stylesData];\n\n\tconst openUI5Enablement = getFeature<typeof OpenUI5Enablement>(\"OpenUI5Enablement\");\n\tif (openUI5Enablement) {\n\t\tstylesDataArray.push(openUI5Enablement.getBusyIndicatorStyles());\n\t}\n\n\treturn stylesDataArray.flat(MAX_DEPTH_INHERITED_CLASSES).filter(data => !!data).map(data => getUrl((data as StyleDataCSP).packageName, (data as StyleDataCSP).fileName));\n};\n\nexport default getEffectiveLinksHrefs;\n"]}
@@ -0,0 +1,3 @@
1
+ import type UI5Element from "../UI5Element.js";
2
+ declare const getEffectiveStyle: (ElementClass: typeof UI5Element, forStaticArea?: boolean) => string;
3
+ export default getEffectiveStyle;
@@ -1,39 +1,32 @@
1
1
  import { getCustomCSS, attachCustomCSSChange } from "./CustomStyle.js";
2
2
  import getStylesString from "./getStylesString.js";
3
3
  import { getFeature } from "../FeaturesRegistry.js";
4
-
5
4
  const effectiveStyleMap = new Map();
6
-
7
- attachCustomCSSChange(tag => {
8
- effectiveStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part
5
+ attachCustomCSSChange((tag) => {
6
+ effectiveStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part
9
7
  });
10
-
11
8
  const getEffectiveStyle = (ElementClass, forStaticArea = false) => {
12
- const tag = ElementClass.getMetadata().getTag();
13
- const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
14
- const OpenUI5Enablement = getFeature("OpenUI5Enablement");
15
-
16
- if (!effectiveStyleMap.has(key)) {
17
- let effectiveStyle;
18
- let busyIndicatorStyles = "";
19
-
20
- if (OpenUI5Enablement) {
21
- busyIndicatorStyles = getStylesString(OpenUI5Enablement.getBusyIndicatorStyles());
22
- }
23
-
24
- if (forStaticArea) {
25
- effectiveStyle = getStylesString(ElementClass.staticAreaStyles);
26
- } else {
27
- const customStyle = getCustomCSS(tag) || "";
28
- const builtInStyles = getStylesString(ElementClass.styles);
29
- effectiveStyle = `${builtInStyles} ${customStyle}`;
30
- }
31
-
32
- effectiveStyle = `${effectiveStyle} ${busyIndicatorStyles}`;
33
- effectiveStyleMap.set(key, effectiveStyle);
34
- }
35
-
36
- return effectiveStyleMap.get(key);
9
+ const tag = ElementClass.getMetadata().getTag();
10
+ const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
11
+ const openUI5Enablement = getFeature("OpenUI5Enablement");
12
+ if (!effectiveStyleMap.has(key)) {
13
+ let effectiveStyle;
14
+ let busyIndicatorStyles = "";
15
+ if (openUI5Enablement) {
16
+ busyIndicatorStyles = getStylesString(openUI5Enablement.getBusyIndicatorStyles());
17
+ }
18
+ if (forStaticArea) {
19
+ effectiveStyle = getStylesString(ElementClass.staticAreaStyles);
20
+ }
21
+ else {
22
+ const customStyle = getCustomCSS(tag) || "";
23
+ const builtInStyles = getStylesString(ElementClass.styles);
24
+ effectiveStyle = `${builtInStyles} ${customStyle}`;
25
+ }
26
+ effectiveStyle = `${effectiveStyle} ${busyIndicatorStyles}`;
27
+ effectiveStyleMap.set(key, effectiveStyle);
28
+ }
29
+ return effectiveStyleMap.get(key); // The key is guaranteed to exist
37
30
  };
38
-
39
31
  export default getEffectiveStyle;
32
+ //# sourceMappingURL=getEffectiveStyle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEffectiveStyle.js","sourceRoot":"","sources":["../../src/theming/getEffectiveStyle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAIpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEpD,qBAAqB,CAAC,CAAC,GAAW,EAAE,EAAE;IACrC,iBAAiB,CAAC,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,kFAAkF;AAC9H,CAAC,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,YAA+B,EAAE,aAAa,GAAG,KAAK,EAAE,EAAE;IACpF,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;IAChD,MAAM,GAAG,GAAG,GAAG,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC5D,MAAM,iBAAiB,GAAG,UAAU,CAA2B,mBAAmB,CAAC,CAAC;IAEpF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QAChC,IAAI,cAAc,CAAC;QACnB,IAAI,mBAAmB,GAAG,EAAE,CAAC;QAE7B,IAAI,iBAAiB,EAAE;YACtB,mBAAmB,GAAG,eAAe,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,CAAC,CAAC;SAClF;QAED,IAAI,aAAa,EAAE;YAClB,cAAc,GAAG,eAAe,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;SAChE;aAAM;YACN,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAG,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC3D,cAAc,GAAG,GAAG,aAAa,IAAI,WAAW,EAAE,CAAC;SACnD;QAED,cAAc,GAAG,GAAG,cAAc,IAAI,mBAAmB,EAAE,CAAC;QAC5D,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;KAC3C;IAED,OAAO,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,CAAC,iCAAiC;AACtE,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC","sourcesContent":["import { getCustomCSS, attachCustomCSSChange } from \"./CustomStyle.js\";\nimport getStylesString from \"./getStylesString.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport type UI5Element from \"../UI5Element.js\";\nimport OpenUI5Enablement from \"../features/OpenUI5Enablement.js\";\n\nconst effectiveStyleMap = new Map<string, string>();\n\nattachCustomCSSChange((tag: string) => {\n\teffectiveStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part\n});\n\nconst getEffectiveStyle = (ElementClass: typeof UI5Element, forStaticArea = false) => {\n\tconst tag = ElementClass.getMetadata().getTag();\n\tconst key = `${tag}_${forStaticArea ? \"static\" : \"normal\"}`;\n\tconst openUI5Enablement = getFeature<typeof OpenUI5Enablement>(\"OpenUI5Enablement\");\n\n\tif (!effectiveStyleMap.has(key)) {\n\t\tlet effectiveStyle;\n\t\tlet busyIndicatorStyles = \"\";\n\n\t\tif (openUI5Enablement) {\n\t\t\tbusyIndicatorStyles = getStylesString(openUI5Enablement.getBusyIndicatorStyles());\n\t\t}\n\n\t\tif (forStaticArea) {\n\t\t\teffectiveStyle = getStylesString(ElementClass.staticAreaStyles);\n\t\t} else {\n\t\t\tconst customStyle = getCustomCSS(tag) || \"\";\n\t\t\tconst builtInStyles = getStylesString(ElementClass.styles);\n\t\t\teffectiveStyle = `${builtInStyles} ${customStyle}`;\n\t\t}\n\n\t\teffectiveStyle = `${effectiveStyle} ${busyIndicatorStyles}`;\n\t\teffectiveStyleMap.set(key, effectiveStyle);\n\t}\n\n\treturn effectiveStyleMap.get(key)!; // The key is guaranteed to exist\n};\n\nexport default getEffectiveStyle;\n"]}
@@ -0,0 +1,3 @@
1
+ import type { ComponentStylesData } from "../types.js";
2
+ declare const getStylesString: (styles: ComponentStylesData) => string;
3
+ export default getStylesString;
@@ -1,15 +1,11 @@
1
- const getStylesString = styles => {
2
- if (Array.isArray(styles)) {
3
- return flatten(styles.filter(style => !!style)).map(style => {
4
- return typeof style === "string" ? style : style.content;
5
- }).join(" ");
6
- }
7
-
8
- return typeof styles === "string" ? styles : styles.content;
1
+ const MAX_DEPTH_INHERITED_CLASSES = 10; // TypeScript complains about Infinity and big numbers
2
+ const getStylesString = (styles) => {
3
+ if (Array.isArray(styles)) {
4
+ return styles.filter(style => !!style).flat(MAX_DEPTH_INHERITED_CLASSES).map((style) => {
5
+ return typeof style === "string" ? style : style.content;
6
+ }).join(" ");
7
+ }
8
+ return typeof styles === "string" ? styles : styles.content;
9
9
  };
10
-
11
- const flatten = arr => {
12
- return arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatten(val) : val), []);
13
- };
14
-
15
10
  export default getStylesString;
11
+ //# sourceMappingURL=getStylesString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getStylesString.js","sourceRoot":"","sources":["../../src/theming/getStylesString.ts"],"names":[],"mappings":"AAEA,MAAM,2BAA2B,GAAG,EAAE,CAAC,CAAC,sDAAsD;AAE9F,MAAM,eAAe,GAAG,CAAC,MAA2B,EAAE,EAAE;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC1B,OAAQ,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAsB,CAAC,GAAG,CAAC,CAAC,KAAgB,EAAE,EAAE;YACvH,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QAC1D,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACb;IAED,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;AAC7D,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import type { ComponentStylesData, StyleData } from \"../types.js\";\n\nconst MAX_DEPTH_INHERITED_CLASSES = 10; // TypeScript complains about Infinity and big numbers\n\nconst getStylesString = (styles: ComponentStylesData) => {\n\tif (Array.isArray(styles)) {\n\t\treturn (styles.filter(style => !!style).flat(MAX_DEPTH_INHERITED_CLASSES) as Array<StyleData>).map((style: StyleData) => {\n\t\t\treturn typeof style === \"string\" ? style : style.content;\n\t\t}).join(\" \");\n\t}\n\n\treturn typeof styles === \"string\" ? styles : styles.content;\n};\n\nexport default getStylesString;\n"]}
@@ -0,0 +1,7 @@
1
+ type ThemeDescriptor = {
2
+ themeName: string;
3
+ baseThemeName?: string;
4
+ };
5
+ declare const getThemeDesignerTheme: () => ThemeDescriptor | undefined;
6
+ export default getThemeDesignerTheme;
7
+ export type { ThemeDescriptor };