@ui5/webcomponents-base 0.0.0-c638668a1 → 0.0.0-c6c04c609

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 (629) hide show
  1. package/.eslintignore +6 -5
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +833 -0
  4. package/README.md +33 -6
  5. package/bundle.esm.js +20 -11
  6. package/config/wdio.conf.cjs +400 -0
  7. package/dist/AssetRegistry.d.ts +5 -0
  8. package/dist/AssetRegistry.js +3 -8
  9. package/dist/AssetRegistry.js.map +1 -0
  10. package/dist/Boot.d.ts +9 -0
  11. package/dist/Boot.js +55 -45
  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 +62 -0
  23. package/dist/CustomElementsScopeUtils.js +102 -0
  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 +13 -0
  29. package/dist/Device.js +155 -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 +28 -0
  44. package/dist/InitialConfiguration.js +126 -131
  45. package/dist/InitialConfiguration.js.map +1 -0
  46. package/dist/Keys.d.ts +61 -0
  47. package/dist/Keys.js +178 -267
  48. package/dist/Keys.js.map +1 -0
  49. package/dist/ManagedStyles.d.ts +9 -0
  50. package/dist/ManagedStyles.js +140 -70
  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 +37 -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 +394 -0
  83. package/dist/UI5Element.js +944 -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 +39 -0
  105. package/dist/asset-registries/Icons.js +120 -123
  106. package/dist/asset-registries/Icons.js.map +1 -0
  107. package/dist/asset-registries/Illustrations.d.ts +18 -0
  108. package/dist/asset-registries/Illustrations.js +80 -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 -127
  112. package/dist/asset-registries/LocaleData.js.map +1 -0
  113. package/dist/asset-registries/Themes.d.ts +12 -0
  114. package/dist/asset-registries/Themes.js +57 -67
  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/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  120. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  121. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  122. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  123. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  124. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  125. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  126. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  127. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  128. package/dist/assets/Boot-34b7cea0.css +1 -0
  129. package/dist/assets/Boot-442448c1.js +9 -0
  130. package/dist/assets/bundle.esm-21077c57.js +50 -0
  131. package/dist/config/AnimationMode.d.ts +14 -0
  132. package/dist/config/AnimationMode.js +21 -18
  133. package/dist/config/AnimationMode.js.map +1 -0
  134. package/dist/config/CalendarType.d.ts +15 -0
  135. package/dist/config/CalendarType.js +31 -14
  136. package/dist/config/CalendarType.js.map +1 -0
  137. package/dist/config/FormatSettings.d.ts +15 -0
  138. package/dist/config/FormatSettings.js +15 -9
  139. package/dist/config/FormatSettings.js.map +1 -0
  140. package/dist/config/Icons.d.ts +40 -0
  141. package/dist/config/Icons.js +44 -0
  142. package/dist/config/Icons.js.map +1 -0
  143. package/dist/config/Language.d.ts +40 -0
  144. package/dist/config/Language.js +43 -43
  145. package/dist/config/Language.js.map +1 -0
  146. package/dist/config/NoConflict.d.ts +20 -0
  147. package/dist/config/NoConflict.js +41 -41
  148. package/dist/config/NoConflict.js.map +1 -0
  149. package/dist/config/RTL.d.ts +7 -0
  150. package/dist/config/RTL.js +26 -20
  151. package/dist/config/RTL.js.map +1 -0
  152. package/dist/config/Theme.d.ts +38 -0
  153. package/dist/config/Theme.js +57 -29
  154. package/dist/config/Theme.js.map +1 -0
  155. package/dist/config/ThemeRoot.d.ts +29 -0
  156. package/dist/config/ThemeRoot.js +59 -0
  157. package/dist/config/ThemeRoot.js.map +1 -0
  158. package/dist/config/Timezone.d.ts +17 -0
  159. package/dist/config/Timezone.js +30 -0
  160. package/dist/config/Timezone.js.map +1 -0
  161. package/dist/connectToComponent.d.ts +9 -0
  162. package/dist/connectToComponent.js +59 -0
  163. package/dist/connectToComponent.js.map +1 -0
  164. package/dist/css/BusyIndicator.css +80 -0
  165. package/dist/css/FontFace.css +54 -15
  166. package/dist/decorators/customElement.d.ts +23 -0
  167. package/dist/decorators/customElement.js +37 -0
  168. package/dist/decorators/customElement.js.map +1 -0
  169. package/dist/decorators/event.d.ts +10 -0
  170. package/dist/decorators/event.js +24 -0
  171. package/dist/decorators/event.js.map +1 -0
  172. package/dist/decorators/property.d.ts +9 -0
  173. package/dist/decorators/property.js +24 -0
  174. package/dist/decorators/property.js.map +1 -0
  175. package/dist/decorators/slot.d.ts +9 -0
  176. package/dist/decorators/slot.js +37 -0
  177. package/dist/decorators/slot.js.map +1 -0
  178. package/dist/delegate/ItemNavigation.d.ts +114 -0
  179. package/dist/delegate/ItemNavigation.js +276 -312
  180. package/dist/delegate/ItemNavigation.js.map +1 -0
  181. package/dist/delegate/ResizeHandler.d.ts +25 -0
  182. package/dist/delegate/ResizeHandler.js +72 -91
  183. package/dist/delegate/ResizeHandler.js.map +1 -0
  184. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  185. package/dist/delegate/ScrollEnablement.js +157 -180
  186. package/dist/delegate/ScrollEnablement.js.map +1 -0
  187. package/dist/features/F6Navigation.d.ts +19 -0
  188. package/dist/features/F6Navigation.js +145 -100
  189. package/dist/features/F6Navigation.js.map +1 -0
  190. package/dist/features/LegacyDateFormats.d.ts +18 -0
  191. package/dist/features/LegacyDateFormats.js +20 -0
  192. package/dist/features/LegacyDateFormats.js.map +1 -0
  193. package/dist/features/OpenUI5Element.d.ts +9 -0
  194. package/dist/features/OpenUI5Element.js +5 -0
  195. package/dist/features/OpenUI5Element.js.map +1 -0
  196. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  197. package/dist/features/OpenUI5Enablement.js +96 -0
  198. package/dist/features/OpenUI5Enablement.js.map +1 -0
  199. package/dist/features/OpenUI5Support.d.ts +36 -0
  200. package/dist/features/OpenUI5Support.js +151 -121
  201. package/dist/features/OpenUI5Support.js.map +1 -0
  202. package/dist/generated/AssetParameters.js +3 -1
  203. package/dist/generated/VersionInfo.js +3 -3
  204. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  205. package/dist/generated/css/BusyIndicator.css.js +7 -0
  206. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  207. package/dist/generated/css/FontFace.css.d.ts +3 -0
  208. package/dist/generated/css/FontFace.css.js +7 -5
  209. package/dist/generated/css/FontFace.css.js.map +1 -0
  210. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  211. package/dist/generated/css/OverrideFontFace.css.js +7 -5
  212. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  213. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  214. package/dist/generated/css/SystemCSSVars.css.js +7 -5
  215. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  216. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  217. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  218. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  219. package/dist/getSharedResource.d.ts +11 -0
  220. package/dist/getSharedResource.js +28 -18
  221. package/dist/getSharedResource.js.map +1 -0
  222. package/dist/global.d.ts +40 -0
  223. package/dist/i18nBundle.d.ts +43 -0
  224. package/dist/i18nBundle.js +57 -64
  225. package/dist/i18nBundle.js.map +1 -0
  226. package/dist/locale/Locale.d.ts +22 -0
  227. package/dist/locale/Locale.js +75 -87
  228. package/dist/locale/Locale.js.map +1 -0
  229. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  230. package/dist/locale/RTLAwareRegistry.js +6 -11
  231. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  232. package/dist/locale/applyDirection.d.ts +10 -0
  233. package/dist/locale/applyDirection.js +7 -7
  234. package/dist/locale/applyDirection.js.map +1 -0
  235. package/dist/locale/directionChange.d.ts +15 -0
  236. package/dist/locale/directionChange.js +7 -15
  237. package/dist/locale/directionChange.js.map +1 -0
  238. package/dist/locale/getEffectiveDir.d.ts +2 -0
  239. package/dist/locale/getEffectiveDir.js +20 -24
  240. package/dist/locale/getEffectiveDir.js.map +1 -0
  241. package/dist/locale/getLocale.d.ts +7 -0
  242. package/dist/locale/getLocale.js +26 -29
  243. package/dist/locale/getLocale.js.map +1 -0
  244. package/dist/locale/languageChange.d.ts +5 -0
  245. package/dist/locale/languageChange.js +8 -16
  246. package/dist/locale/languageChange.js.map +1 -0
  247. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  248. package/dist/locale/nextFallbackLocale.js +15 -19
  249. package/dist/locale/nextFallbackLocale.js.map +1 -0
  250. package/dist/locale/normalizeLocale.d.ts +7 -0
  251. package/dist/locale/normalizeLocale.js +34 -41
  252. package/dist/locale/normalizeLocale.js.map +1 -0
  253. package/dist/renderer/LitRenderer.d.ts +14 -0
  254. package/dist/renderer/LitRenderer.js +31 -24
  255. package/dist/renderer/LitRenderer.js.map +1 -0
  256. package/dist/renderer/executeTemplate.d.ts +13 -0
  257. package/dist/renderer/executeTemplate.js +20 -7
  258. package/dist/renderer/executeTemplate.js.map +1 -0
  259. package/dist/sap/base/Log.js +28 -29
  260. package/dist/sap/base/assert.js +5 -6
  261. package/dist/sap/base/security/URLListValidator.js +13 -2
  262. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +112 -97
  263. package/dist/theming/CustomStyle.d.ts +6 -0
  264. package/dist/theming/CustomStyle.js +33 -45
  265. package/dist/theming/CustomStyle.js.map +1 -0
  266. package/dist/theming/ThemeLoaded.d.ts +5 -0
  267. package/dist/theming/ThemeLoaded.js +8 -16
  268. package/dist/theming/ThemeLoaded.js.map +1 -0
  269. package/dist/theming/ThemeRegistered.d.ts +4 -0
  270. package/dist/theming/ThemeRegistered.js +11 -0
  271. package/dist/theming/ThemeRegistered.js.map +1 -0
  272. package/dist/theming/applyTheme.d.ts +2 -0
  273. package/dist/theming/applyTheme.js +61 -64
  274. package/dist/theming/applyTheme.js.map +1 -0
  275. package/dist/theming/getConstructableStyle.d.ts +9 -0
  276. package/dist/theming/getConstructableStyle.js +12 -17
  277. package/dist/theming/getConstructableStyle.js.map +1 -0
  278. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  279. package/dist/theming/getEffectiveLinksHrefs.js +13 -16
  280. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  281. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  282. package/dist/theming/getEffectiveStyle.js +25 -23
  283. package/dist/theming/getEffectiveStyle.js.map +1 -0
  284. package/dist/theming/getStylesString.d.ts +3 -0
  285. package/dist/theming/getStylesString.js +9 -13
  286. package/dist/theming/getStylesString.js.map +1 -0
  287. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  288. package/dist/theming/getThemeDesignerTheme.js +72 -79
  289. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  290. package/dist/theming/preloadLinks.d.ts +3 -0
  291. package/dist/theming/preloadLinks.js +13 -17
  292. package/dist/theming/preloadLinks.js.map +1 -0
  293. package/dist/thirdparty/_merge.d.ts +2 -0
  294. package/dist/thirdparty/_merge.js +7 -4
  295. package/dist/thirdparty/_merge.js.map +1 -0
  296. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  297. package/dist/thirdparty/isPlainObject.js +11 -10
  298. package/dist/thirdparty/isPlainObject.js.map +1 -0
  299. package/dist/thirdparty/merge.d.ts +2 -0
  300. package/dist/thirdparty/merge.js +4 -8
  301. package/dist/thirdparty/merge.js.map +1 -0
  302. package/dist/types/AnimationMode.d.ts +32 -0
  303. package/dist/types/AnimationMode.js +33 -6
  304. package/dist/types/AnimationMode.js.map +1 -0
  305. package/dist/types/CSSColor.d.ts +15 -0
  306. package/dist/types/CSSColor.js +14 -5
  307. package/dist/types/CSSColor.js.map +1 -0
  308. package/dist/types/CSSSize.d.ts +15 -0
  309. package/dist/types/CSSSize.js +14 -5
  310. package/dist/types/CSSSize.js.map +1 -0
  311. package/dist/types/CalendarType.d.ts +37 -0
  312. package/dist/types/CalendarType.js +35 -18
  313. package/dist/types/CalendarType.js.map +1 -0
  314. package/dist/types/DOMReference.d.ts +17 -0
  315. package/dist/types/DOMReference.js +25 -0
  316. package/dist/types/DOMReference.js.map +1 -0
  317. package/dist/types/DataType.d.ts +25 -0
  318. package/dist/types/DataType.js +33 -26
  319. package/dist/types/DataType.js.map +1 -0
  320. package/dist/types/Float.d.ts +17 -0
  321. package/dist/types/Float.js +17 -10
  322. package/dist/types/Float.js.map +1 -0
  323. package/dist/types/Integer.d.ts +17 -0
  324. package/dist/types/Integer.js +17 -9
  325. package/dist/types/Integer.js.map +1 -0
  326. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  327. package/dist/types/InvisibleMessageMode.js +20 -23
  328. package/dist/types/InvisibleMessageMode.js.map +1 -0
  329. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  330. package/dist/types/ItemNavigationBehavior.js +22 -12
  331. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  332. package/dist/types/NavigationMode.d.ts +32 -0
  333. package/dist/types/NavigationMode.js +33 -6
  334. package/dist/types/NavigationMode.js.map +1 -0
  335. package/dist/types/ValueState.d.ts +42 -0
  336. package/dist/types/ValueState.js +41 -19
  337. package/dist/types/ValueState.js.map +1 -0
  338. package/dist/types.d.ts +18 -0
  339. package/dist/types.js +2 -0
  340. package/dist/types.js.map +1 -0
  341. package/dist/updateShadowRoot.d.ts +8 -0
  342. package/dist/updateShadowRoot.js +30 -18
  343. package/dist/updateShadowRoot.js.map +1 -0
  344. package/dist/util/AriaLabelHelper.d.ts +15 -0
  345. package/dist/util/AriaLabelHelper.js +166 -36
  346. package/dist/util/AriaLabelHelper.js.map +1 -0
  347. package/dist/util/Caret.d.ts +7 -0
  348. package/dist/util/Caret.js +16 -38
  349. package/dist/util/Caret.js.map +1 -0
  350. package/dist/util/ColorConversion.d.ts +30 -0
  351. package/dist/util/ColorConversion.js +321 -348
  352. package/dist/util/ColorConversion.js.map +1 -0
  353. package/dist/util/FetchHelper.d.ts +3 -0
  354. package/dist/util/FetchHelper.js +19 -25
  355. package/dist/util/FetchHelper.js.map +1 -0
  356. package/dist/util/FocusableElements.d.ts +4 -0
  357. package/dist/util/FocusableElements.js +64 -71
  358. package/dist/util/FocusableElements.js.map +1 -0
  359. package/{src/util/HTMLSanitizer.js → dist/util/HTMLSanitizer.d.ts} +1 -5
  360. package/dist/util/HTMLSanitizer.js +4 -5
  361. package/dist/util/HTMLSanitizer.js.map +1 -0
  362. package/dist/util/InvisibleMessage.d.ts +10 -0
  363. package/dist/util/InvisibleMessage.js +42 -44
  364. package/dist/util/InvisibleMessage.js.map +1 -0
  365. package/dist/util/PopupUtils.d.ts +7 -0
  366. package/dist/util/PopupUtils.js +58 -77
  367. package/dist/util/PopupUtils.js.map +1 -0
  368. package/dist/util/SlotsHelper.d.ts +9 -0
  369. package/dist/util/SlotsHelper.js +22 -35
  370. package/dist/util/SlotsHelper.js.map +1 -0
  371. package/dist/util/StringHelper.d.ts +3 -0
  372. package/dist/util/StringHelper.js +17 -20
  373. package/dist/util/StringHelper.js.map +1 -0
  374. package/dist/util/TabbableElements.d.ts +17 -0
  375. package/dist/util/TabbableElements.js +53 -43
  376. package/dist/util/TabbableElements.js.map +1 -0
  377. package/dist/util/arraysAreEqual.d.ts +2 -0
  378. package/dist/util/arraysAreEqual.js +10 -12
  379. package/dist/util/arraysAreEqual.js.map +1 -0
  380. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  381. package/dist/util/clamp.js +2 -2
  382. package/dist/util/clamp.js.map +1 -0
  383. package/dist/util/createLinkInHead.d.ts +7 -0
  384. package/dist/util/createLinkInHead.js +14 -12
  385. package/dist/util/createLinkInHead.js.map +1 -0
  386. package/dist/util/createStyleInHead.d.ts +8 -0
  387. package/dist/util/createStyleInHead.js +10 -10
  388. package/dist/util/createStyleInHead.js.map +1 -0
  389. package/dist/util/debounce.d.ts +2 -0
  390. package/dist/util/debounce.js +6 -8
  391. package/dist/util/debounce.js.map +1 -0
  392. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  393. package/dist/util/detectNavigatorLanguage.js +7 -10
  394. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  395. package/dist/util/escapeRegex.d.ts +8 -0
  396. package/dist/util/escapeRegex.js +8 -7
  397. package/dist/util/escapeRegex.js.map +1 -0
  398. package/dist/util/formatMessage.d.ts +2 -0
  399. package/dist/util/formatMessage.js +15 -19
  400. package/dist/util/formatMessage.js.map +1 -0
  401. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  402. package/dist/util/generateHighlightedMarkup.js +26 -27
  403. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  404. package/dist/util/getActiveElement.d.ts +2 -0
  405. package/dist/util/getActiveElement.js +6 -8
  406. package/dist/util/getActiveElement.js.map +1 -0
  407. package/dist/util/getClassCopy.d.ts +402 -0
  408. package/dist/util/getClassCopy.js +7 -7
  409. package/dist/util/getClassCopy.js.map +1 -0
  410. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  411. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  412. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  413. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  414. package/dist/util/getEffectiveContentDensity.js +2 -3
  415. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  416. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  417. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  418. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  419. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  420. package/dist/util/getFastNavigationGroups.js +51 -0
  421. package/dist/util/getFastNavigationGroups.js.map +1 -0
  422. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  423. package/dist/util/getFileExtension.js +9 -11
  424. package/dist/util/getFileExtension.js.map +1 -0
  425. package/dist/util/getNormalizedTarget.d.ts +7 -0
  426. package/dist/util/getNormalizedTarget.js +14 -0
  427. package/dist/util/getNormalizedTarget.js.map +1 -0
  428. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  429. package/dist/util/getSingletonElementInstance.js +17 -11
  430. package/dist/util/getSingletonElementInstance.js.map +1 -0
  431. package/dist/util/isElementClickable.d.ts +2 -0
  432. package/dist/util/isElementClickable.js +16 -0
  433. package/dist/util/isElementClickable.js.map +1 -0
  434. package/dist/util/isElementHidden.d.ts +2 -0
  435. package/dist/util/isElementHidden.js +8 -0
  436. package/dist/util/isElementHidden.js.map +1 -0
  437. package/dist/util/isElementInView.d.ts +6 -0
  438. package/dist/util/isElementInView.js +6 -9
  439. package/dist/util/isElementInView.js.map +1 -0
  440. package/dist/util/isElementTabbable.d.ts +9 -0
  441. package/dist/util/isElementTabbable.js +30 -0
  442. package/dist/util/isElementTabbable.js.map +1 -0
  443. package/dist/util/isValidPropertyName.d.ts +8 -0
  444. package/dist/util/isValidPropertyName.js +16 -17
  445. package/dist/util/isValidPropertyName.js.map +1 -0
  446. package/dist/util/whenDOMReady.d.ts +2 -0
  447. package/dist/util/whenDOMReady.js +11 -10
  448. package/dist/util/whenDOMReady.js.map +1 -0
  449. package/dist/util/willShowContent.d.ts +2 -0
  450. package/dist/util/willShowContent.js +7 -0
  451. package/dist/util/willShowContent.js.map +1 -0
  452. package/dist/validateThemeRoot.d.ts +2 -0
  453. package/dist/validateThemeRoot.js +48 -0
  454. package/dist/validateThemeRoot.js.map +1 -0
  455. package/index.js +227 -1
  456. package/lib/generate-asset-parameters/index.js +11 -5
  457. package/lib/generate-styles/index.js +26 -13
  458. package/lib/generate-version-info/index.js +18 -13
  459. package/package-scripts.cjs +71 -0
  460. package/package.json +8 -6
  461. package/src/css/BusyIndicator.css +80 -0
  462. package/src/css/FontFace.css +54 -15
  463. package/tsconfig.json +14 -0
  464. package/config/rollup.config.js +0 -1
  465. package/config/wdio.conf.js +0 -1
  466. package/dist/RenderScheduler.js +0 -44
  467. package/dist/animations/config.js +0 -5
  468. package/dist/assets-meta/IconCollectionsAlias.js +0 -18
  469. package/dist/isLegacyBrowser.js +0 -3
  470. package/dist/resources/bundle.esm.js +0 -37
  471. package/dist/resources/bundle.esm.js.map +0 -1
  472. package/dist/test-resources/assets/Themes.js +0 -17
  473. package/dist/test-resources/elements/Child.js +0 -35
  474. package/dist/test-resources/elements/Generic.js +0 -84
  475. package/dist/test-resources/elements/GenericExt.js +0 -26
  476. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  477. package/dist/test-resources/elements/Parent.js +0 -41
  478. package/dist/test-resources/elements/WithStaticArea.js +0 -77
  479. package/dist/test-resources/pages/AllTestElements.html +0 -42
  480. package/dist/test-resources/pages/Configuration.html +0 -18
  481. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  482. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  483. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  484. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  485. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  486. package/dist/test-resources/pages/i18n.html +0 -33
  487. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
  488. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
  489. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -93
  490. package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
  491. package/dist/test-resources/specs/EventProvider.spec.js +0 -63
  492. package/dist/test-resources/specs/StaticArea.spec.js +0 -78
  493. package/dist/test-resources/specs/Theming.spec.js +0 -33
  494. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
  495. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
  496. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
  497. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
  498. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
  499. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
  500. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
  501. package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
  502. package/dist/types/PopupState.js +0 -37
  503. package/dist/util/findNodeOwner.js +0 -35
  504. package/dist/util/isDescendantOf.js +0 -15
  505. package/dist/util/isNodeClickable.js +0 -19
  506. package/dist/util/isNodeHidden.js +0 -9
  507. package/dist/util/isNodeTabbable.js +0 -28
  508. package/dist/util/setToArray.js +0 -10
  509. package/hash.txt +0 -1
  510. package/package-scripts.js +0 -67
  511. package/src/AssetRegistry.js +0 -11
  512. package/src/Boot.js +0 -61
  513. package/src/CustomElementsRegistry.js +0 -95
  514. package/src/CustomElementsScope.js +0 -108
  515. package/src/DOMObserver.js +0 -65
  516. package/src/Device.js +0 -116
  517. package/src/EventProvider.js +0 -85
  518. package/src/FeaturesRegistry.js +0 -14
  519. package/src/FontFace.js +0 -30
  520. package/src/InitialConfiguration.js +0 -166
  521. package/src/Keys.js +0 -271
  522. package/src/ManagedStyles.js +0 -83
  523. package/src/MediaRange.js +0 -109
  524. package/src/PropertiesFileFormat.js +0 -95
  525. package/src/Render.js +0 -175
  526. package/src/RenderQueue.js +0 -66
  527. package/src/RenderScheduler.js +0 -44
  528. package/src/Runtimes.js +0 -107
  529. package/src/StaticArea.js +0 -3
  530. package/src/StaticAreaItem.js +0 -101
  531. package/src/SystemCSSVars.js +0 -10
  532. package/src/UI5Element.js +0 -1023
  533. package/src/UI5ElementMetadata.js +0 -327
  534. package/src/animations/AnimationQueue.js +0 -42
  535. package/src/animations/animate.js +0 -53
  536. package/src/animations/config.js +0 -5
  537. package/src/animations/scroll.js +0 -28
  538. package/src/animations/slideDown.js +0 -79
  539. package/src/animations/slideUp.js +0 -71
  540. package/src/asset-registries/Icons.js +0 -139
  541. package/src/asset-registries/Illustrations.js +0 -30
  542. package/src/asset-registries/LocaleData.js +0 -159
  543. package/src/asset-registries/Themes.js +0 -78
  544. package/src/asset-registries/i18n.js +0 -121
  545. package/src/assets-meta/IconCollectionsAlias.js +0 -18
  546. package/src/config/AnimationMode.js +0 -23
  547. package/src/config/CalendarType.js +0 -18
  548. package/src/config/FormatSettings.js +0 -13
  549. package/src/config/Language.js +0 -68
  550. package/src/config/NoConflict.js +0 -51
  551. package/src/config/RTL.js +0 -31
  552. package/src/config/Theme.js +0 -42
  553. package/src/delegate/ItemNavigation.js +0 -351
  554. package/src/delegate/ResizeHandler.js +0 -106
  555. package/src/delegate/ScrollEnablement.js +0 -188
  556. package/src/features/F6Navigation.js +0 -106
  557. package/src/features/OpenUI5Support.js +0 -125
  558. package/src/getSharedResource.js +0 -30
  559. package/src/i18nBundle.js +0 -86
  560. package/src/isLegacyBrowser.js +0 -3
  561. package/src/locale/Locale.js +0 -91
  562. package/src/locale/RTLAwareRegistry.js +0 -14
  563. package/src/locale/applyDirection.js +0 -17
  564. package/src/locale/directionChange.js +0 -32
  565. package/src/locale/getEffectiveDir.js +0 -28
  566. package/src/locale/getLocale.js +0 -41
  567. package/src/locale/languageChange.js +0 -22
  568. package/src/locale/nextFallbackLocale.js +0 -28
  569. package/src/locale/normalizeLocale.js +0 -54
  570. package/src/renderer/LitRenderer.js +0 -34
  571. package/src/renderer/executeTemplate.js +0 -17
  572. package/src/theming/CustomStyle.js +0 -60
  573. package/src/theming/ThemeLoaded.js +0 -22
  574. package/src/theming/applyTheme.js +0 -79
  575. package/src/theming/getConstructableStyle.js +0 -30
  576. package/src/theming/getEffectiveLinksHrefs.js +0 -20
  577. package/src/theming/getEffectiveStyle.js +0 -30
  578. package/src/theming/getStylesString.js +0 -15
  579. package/src/theming/getThemeDesignerTheme.js +0 -87
  580. package/src/theming/preloadLinks.js +0 -23
  581. package/src/thirdparty/_merge.js +0 -32
  582. package/src/thirdparty/isPlainObject.js +0 -18
  583. package/src/thirdparty/merge.js +0 -10
  584. package/src/types/AnimationMode.js +0 -7
  585. package/src/types/CSSColor.js +0 -9
  586. package/src/types/CSSSize.js +0 -9
  587. package/src/types/CalendarType.js +0 -22
  588. package/src/types/DataType.js +0 -37
  589. package/src/types/Float.js +0 -14
  590. package/src/types/Integer.js +0 -13
  591. package/src/types/InvisibleMessageMode.js +0 -30
  592. package/src/types/ItemNavigationBehavior.js +0 -16
  593. package/src/types/NavigationMode.js +0 -7
  594. package/src/types/PopupState.js +0 -37
  595. package/src/types/ValueState.js +0 -22
  596. package/src/updateShadowRoot.js +0 -30
  597. package/src/util/AriaLabelHelper.js +0 -41
  598. package/src/util/Caret.js +0 -45
  599. package/src/util/ColorConversion.js +0 -370
  600. package/src/util/FetchHelper.js +0 -31
  601. package/src/util/FocusableElements.js +0 -79
  602. package/src/util/InvisibleMessage.js +0 -58
  603. package/src/util/PopupUtils.js +0 -93
  604. package/src/util/SlotsHelper.js +0 -43
  605. package/src/util/StringHelper.js +0 -26
  606. package/src/util/TabbableElements.js +0 -47
  607. package/src/util/arraysAreEqual.js +0 -15
  608. package/src/util/createLinkInHead.js +0 -19
  609. package/src/util/createStyleInHead.js +0 -18
  610. package/src/util/debounce.js +0 -17
  611. package/src/util/detectNavigatorLanguage.js +0 -13
  612. package/src/util/escapeRegex.js +0 -10
  613. package/src/util/findNodeOwner.js +0 -35
  614. package/src/util/formatMessage.js +0 -23
  615. package/src/util/generateHighlightedMarkup.js +0 -42
  616. package/src/util/getActiveElement.js +0 -11
  617. package/src/util/getClassCopy.js +0 -10
  618. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  619. package/src/util/getEffectiveContentDensity.js +0 -5
  620. package/src/util/getSingletonElementInstance.js +0 -13
  621. package/src/util/isDescendantOf.js +0 -15
  622. package/src/util/isElementInView.js +0 -15
  623. package/src/util/isNodeClickable.js +0 -19
  624. package/src/util/isNodeHidden.js +0 -9
  625. package/src/util/isNodeTabbable.js +0 -28
  626. package/src/util/isValidPropertyName.js +0 -29
  627. package/src/util/setToArray.js +0 -10
  628. package/src/util/whenDOMReady.js +0 -13
  629. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -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,20 +1,17 @@
1
1
  import { getUrl } from "../CSP.js";
2
-
3
- const flatten = arr => {
4
- return arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatten(val) : val), []);
5
- };
6
-
2
+ import { getFeature } from "../FeaturesRegistry.js";
3
+ const MAX_DEPTH_INHERITED_CLASSES = 10; // TypeScript complains about Infinity and big numbers
7
4
  const getEffectiveLinksHrefs = (ElementClass, forStaticArea = false) => {
8
- let stylesData = ElementClass[forStaticArea ? "staticAreaStyles" : "styles"];
9
- if (!stylesData) {
10
- return;
11
- }
12
-
13
- if (!Array.isArray(stylesData)) {
14
- stylesData = [stylesData];
15
- }
16
-
17
- 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));
18
15
  };
19
-
20
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,30 +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
4
  const effectiveStyleMap = new Map();
5
-
6
- attachCustomCSSChange(tag => {
7
- 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
8
7
  });
9
-
10
8
  const getEffectiveStyle = (ElementClass, forStaticArea = false) => {
11
- const tag = ElementClass.getMetadata().getTag();
12
- const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
13
-
14
- if (!effectiveStyleMap.has(key)) {
15
- let effectiveStyle;
16
-
17
- if (forStaticArea) {
18
- effectiveStyle = getStylesString(ElementClass.staticAreaStyles);
19
- } else {
20
- const customStyle = getCustomCSS(tag) || "";
21
- const builtInStyles = getStylesString(ElementClass.styles);
22
- effectiveStyle = `${builtInStyles} ${customStyle}`;
23
- }
24
- effectiveStyleMap.set(key, effectiveStyle);
25
- }
26
-
27
- 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
28
30
  };
29
-
30
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 };
@@ -1,87 +1,80 @@
1
1
  const warnings = new Set();
2
-
3
2
  const getThemeMetadata = () => {
4
- // Check if the class was already applied, most commonly to the link/style tag with the CSS Variables
5
- let el = document.querySelector(".sapThemeMetaData-Base-baseLib") || document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");
6
- if (el) {
7
- return getComputedStyle(el).backgroundImage;
8
- }
9
-
10
- el = document.createElement("span");
11
- el.style.display = "none";
12
-
13
- // Try with sapThemeMetaData-Base-baseLib first
14
- el.classList.add("sapThemeMetaData-Base-baseLib");
15
- document.body.appendChild(el);
16
- let metadata = getComputedStyle(el).backgroundImage;
17
-
18
- // Try with sapThemeMetaData-UI5-sap-ui-core only if the previous selector was not found
19
- if (metadata === "none") {
20
- el.classList.add("sapThemeMetaData-UI5-sap-ui-core");
21
- metadata = getComputedStyle(el).backgroundImage;
22
- }
23
-
24
- document.body.removeChild(el);
25
-
26
- return metadata;
3
+ // Check if the class was already applied, most commonly to the link/style tag with the CSS Variables
4
+ let el = document.querySelector(".sapThemeMetaData-Base-baseLib") || document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");
5
+ if (el) {
6
+ return getComputedStyle(el).backgroundImage;
7
+ }
8
+ el = document.createElement("span");
9
+ el.style.display = "none";
10
+ // Try with sapThemeMetaData-Base-baseLib first
11
+ el.classList.add("sapThemeMetaData-Base-baseLib");
12
+ document.body.appendChild(el);
13
+ let metadata = getComputedStyle(el).backgroundImage;
14
+ // Try with sapThemeMetaData-UI5-sap-ui-core only if the previous selector was not found
15
+ if (metadata === "none") {
16
+ el.classList.add("sapThemeMetaData-UI5-sap-ui-core");
17
+ metadata = getComputedStyle(el).backgroundImage;
18
+ }
19
+ document.body.removeChild(el);
20
+ return metadata;
27
21
  };
28
-
29
- const parseThemeMetadata = metadataString => {
30
- const params = /\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(metadataString);
31
- if (params && params.length >= 2) {
32
- let paramsString = params[1];
33
- paramsString = paramsString.replace(/\\"/g, `"`);
34
- if (paramsString.charAt(0) !== "{" && paramsString.charAt(paramsString.length - 1) !== "}") {
35
- try {
36
- paramsString = decodeURIComponent(paramsString);
37
- } catch (ex) {
38
- if (!warnings.has("decode")) {
39
- console.warn("Malformed theme metadata string, unable to decodeURIComponent"); // eslint-disable-line
40
- warnings.add("decode");
41
- }
42
- return;
43
- }
44
- }
45
- try {
46
- return JSON.parse(paramsString);
47
- } catch (ex) {
48
- if (!warnings.has("parse")) {
49
- console.warn("Malformed theme metadata string, unable to parse JSON"); // eslint-disable-line
50
- warnings.add("parse");
51
- }
52
- }
53
- }
22
+ const parseThemeMetadata = (metadataString) => {
23
+ const params = /\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(metadataString);
24
+ if (params && params.length >= 2) {
25
+ let paramsString = params[1];
26
+ paramsString = paramsString.replace(/\\"/g, `"`);
27
+ if (paramsString.charAt(0) !== "{" && paramsString.charAt(paramsString.length - 1) !== "}") {
28
+ try {
29
+ paramsString = decodeURIComponent(paramsString);
30
+ }
31
+ catch (ex) {
32
+ if (!warnings.has("decode")) {
33
+ console.warn("Malformed theme metadata string, unable to decodeURIComponent"); // eslint-disable-line
34
+ warnings.add("decode");
35
+ }
36
+ return;
37
+ }
38
+ }
39
+ try {
40
+ return JSON.parse(paramsString);
41
+ }
42
+ catch (ex) {
43
+ if (!warnings.has("parse")) {
44
+ console.warn("Malformed theme metadata string, unable to parse JSON"); // eslint-disable-line
45
+ warnings.add("parse");
46
+ }
47
+ }
48
+ }
54
49
  };
55
-
56
- const processThemeMetadata = metadata => {
57
- let themeName;
58
- let baseThemeName;
59
-
60
- try {
61
- themeName = metadata.Path.match(/\.([^.]+)\.css_variables$/)[1];
62
- baseThemeName = metadata.Extends[0];
63
- } catch (ex) {
64
- if (!warnings.has("object")) {
65
- console.warn("Malformed theme metadata Object", metadata); // eslint-disable-line
66
- warnings.add("object");
67
- }
68
- return;
69
- }
70
-
71
- return {
72
- themeName,
73
- baseThemeName,
74
- };
50
+ const processThemeMetadata = (metadata) => {
51
+ let themeName;
52
+ let baseThemeName;
53
+ try {
54
+ themeName = metadata.Path.match(/\.([^.]+)\.css_variables$/)[1];
55
+ baseThemeName = metadata.Extends[0];
56
+ }
57
+ catch (ex) {
58
+ if (!warnings.has("object")) {
59
+ console.warn("Malformed theme metadata Object", metadata); // eslint-disable-line
60
+ warnings.add("object");
61
+ }
62
+ return;
63
+ }
64
+ return {
65
+ themeName,
66
+ baseThemeName,
67
+ };
75
68
  };
76
-
77
69
  const getThemeDesignerTheme = () => {
78
- const metadataString = getThemeMetadata();
79
- if (!metadataString || metadataString === "none") {
80
- return;
81
- }
82
-
83
- const metadata = parseThemeMetadata(metadataString);
84
- return processThemeMetadata(metadata);
70
+ const metadataString = getThemeMetadata();
71
+ if (!metadataString || metadataString === "none") {
72
+ return;
73
+ }
74
+ const metadata = parseThemeMetadata(metadataString);
75
+ if (metadata) {
76
+ return processThemeMetadata(metadata);
77
+ }
85
78
  };
86
-
87
79
  export default getThemeDesignerTheme;
80
+ //# sourceMappingURL=getThemeDesignerTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getThemeDesignerTheme.js","sourceRoot":"","sources":["../../src/theming/getThemeDesignerTheme.ts"],"names":[],"mappings":"AAUA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;AAEnC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IAC7B,qGAAqG;IACrG,IAAI,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,gCAAgC,CAAC,IAAI,QAAQ,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC;IACjI,IAAI,EAAE,EAAE;QACP,OAAO,gBAAgB,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC;KAC5C;IAED,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,EAAsB,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAE/C,+CAA+C;IAC/C,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAClD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9B,IAAI,QAAQ,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC;IAEpD,wFAAwF;IACxF,IAAI,QAAQ,KAAK,MAAM,EAAE;QACxB,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QACrD,QAAQ,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC;KAChD;IAED,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAE9B,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,cAAsB,EAAE,EAAE;IACrD,MAAM,MAAM,GAAG,8CAA8C,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACnF,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;QACjC,IAAI,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7B,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3F,IAAI;gBACH,YAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;aAChD;YAAC,OAAO,EAAE,EAAE;gBACZ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBAC5B,OAAO,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC,CAAC,sBAAsB;oBACrG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;iBACvB;gBACD,OAAO;aACP;SACD;QACD,IAAI;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAkB,CAAC;SACjD;QAAC,OAAO,EAAE,EAAE;YACZ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBAC3B,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC,CAAC,sBAAsB;gBAC7F,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;aACtB;SACD;KACD;AACF,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,QAAuB,EAA+B,EAAE;IACrF,IAAI,SAAS,CAAC;IACd,IAAI,aAAa,CAAC;IAElB,IAAI;QACH,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAE,CAAC,CAAC,CAAC,CAAC;QACjE,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KACpC;IAAC,OAAO,EAAE,EAAE;QACZ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YAC5B,OAAO,CAAC,IAAI,CAAC,iCAAiC,EAAE,QAAQ,CAAC,CAAC,CAAC,sBAAsB;YACjF,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SACvB;QACD,OAAO;KACP;IAED,OAAO;QACN,SAAS;QACT,aAAa;KACb,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,GAAgC,EAAE;IAC/D,MAAM,cAAc,GAAG,gBAAgB,EAAE,CAAC;IAC1C,IAAI,CAAC,cAAc,IAAI,cAAc,KAAK,MAAM,EAAE;QACjD,OAAO;KACP;IAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAEpD,IAAI,QAAQ,EAAE;QACb,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;KACtC;AACF,CAAC,CAAC;AAEF,eAAe,qBAAqB,CAAC","sourcesContent":["type ThemeDescriptor = {\n\tthemeName: string,\n\tbaseThemeName?: string,\n};\n\ntype ThemeMetadata = {\n\tPath: string,\n\tExtends: Array<string>,\n};\n\nconst warnings = new Set<string>();\n\nconst getThemeMetadata = () => {\n\t// Check if the class was already applied, most commonly to the link/style tag with the CSS Variables\n\tlet el = document.querySelector(\".sapThemeMetaData-Base-baseLib\") || document.querySelector(\".sapThemeMetaData-UI5-sap-ui-core\");\n\tif (el) {\n\t\treturn getComputedStyle(el).backgroundImage;\n\t}\n\n\tel = document.createElement(\"span\");\n\t(el as HTMLSpanElement).style.display = \"none\";\n\n\t// Try with sapThemeMetaData-Base-baseLib first\n\tel.classList.add(\"sapThemeMetaData-Base-baseLib\");\n\tdocument.body.appendChild(el);\n\tlet metadata = getComputedStyle(el).backgroundImage;\n\n\t// Try with sapThemeMetaData-UI5-sap-ui-core only if the previous selector was not found\n\tif (metadata === \"none\") {\n\t\tel.classList.add(\"sapThemeMetaData-UI5-sap-ui-core\");\n\t\tmetadata = getComputedStyle(el).backgroundImage;\n\t}\n\n\tdocument.body.removeChild(el);\n\n\treturn metadata;\n};\n\nconst parseThemeMetadata = (metadataString: string) => {\n\tconst params = /\\([\"']?data:text\\/plain;utf-8,(.*?)['\"]?\\)$/i.exec(metadataString);\n\tif (params && params.length >= 2) {\n\t\tlet paramsString = params[1];\n\t\tparamsString = paramsString.replace(/\\\\\"/g, `\"`);\n\t\tif (paramsString.charAt(0) !== \"{\" && paramsString.charAt(paramsString.length - 1) !== \"}\") {\n\t\t\ttry {\n\t\t\t\tparamsString = decodeURIComponent(paramsString);\n\t\t\t} catch (ex) {\n\t\t\t\tif (!warnings.has(\"decode\")) {\n\t\t\t\t\tconsole.warn(\"Malformed theme metadata string, unable to decodeURIComponent\"); // eslint-disable-line\n\t\t\t\t\twarnings.add(\"decode\");\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\ttry {\n\t\t\treturn JSON.parse(paramsString) as ThemeMetadata;\n\t\t} catch (ex) {\n\t\t\tif (!warnings.has(\"parse\")) {\n\t\t\t\tconsole.warn(\"Malformed theme metadata string, unable to parse JSON\"); // eslint-disable-line\n\t\t\t\twarnings.add(\"parse\");\n\t\t\t}\n\t\t}\n\t}\n};\n\nconst processThemeMetadata = (metadata: ThemeMetadata): ThemeDescriptor | undefined => {\n\tlet themeName;\n\tlet baseThemeName;\n\n\ttry {\n\t\tthemeName = metadata.Path.match(/\\.([^.]+)\\.css_variables$/)![1];\n\t\tbaseThemeName = metadata.Extends[0];\n\t} catch (ex) {\n\t\tif (!warnings.has(\"object\")) {\n\t\t\tconsole.warn(\"Malformed theme metadata Object\", metadata); // eslint-disable-line\n\t\t\twarnings.add(\"object\");\n\t\t}\n\t\treturn;\n\t}\n\n\treturn {\n\t\tthemeName,\n\t\tbaseThemeName,\n\t};\n};\n\nconst getThemeDesignerTheme = (): ThemeDescriptor | undefined => {\n\tconst metadataString = getThemeMetadata();\n\tif (!metadataString || metadataString === \"none\") {\n\t\treturn;\n\t}\n\n\tconst metadata = parseThemeMetadata(metadataString);\n\n\tif (metadata) {\n\t\treturn processThemeMetadata(metadata);\n\t}\n};\n\nexport default getThemeDesignerTheme;\nexport type { ThemeDescriptor };\n"]}
@@ -0,0 +1,3 @@
1
+ import type UI5Element from "../UI5Element.js";
2
+ declare const preloadLinks: (ElementClass: typeof UI5Element) => void;
3
+ export default preloadLinks;
@@ -1,23 +1,19 @@
1
1
  import getEffectiveLinksHrefs from "./getEffectiveLinksHrefs.js";
2
2
  import createLinkInHead from "../util/createLinkInHead.js";
3
3
  import { shouldUseLinks, shouldPreloadLinks } from "../CSP.js";
4
-
5
4
  const preloaded = new Set();
6
-
7
- const preloadLinks = ElementClass => {
8
- if (!shouldUseLinks() || !shouldPreloadLinks()) {
9
- return;
10
- }
11
-
12
- const linksHrefs = getEffectiveLinksHrefs(ElementClass, false) || [];
13
- const staticAreaLinksHrefs = getEffectiveLinksHrefs(ElementClass, true) || [];
14
-
15
- [...linksHrefs, ...staticAreaLinksHrefs].forEach(href => {
16
- if (!preloaded.has(href)) {
17
- createLinkInHead(href, { rel: "preload", as: "style" });
18
- preloaded.add(href);
19
- }
20
- });
5
+ const preloadLinks = (ElementClass) => {
6
+ if (!shouldUseLinks() || !shouldPreloadLinks()) {
7
+ return;
8
+ }
9
+ const linksHrefs = getEffectiveLinksHrefs(ElementClass, false) || [];
10
+ const staticAreaLinksHrefs = getEffectiveLinksHrefs(ElementClass, true) || [];
11
+ [...linksHrefs, ...staticAreaLinksHrefs].forEach(href => {
12
+ if (!preloaded.has(href)) {
13
+ createLinkInHead(href, { rel: "preload", as: "style" });
14
+ preloaded.add(href);
15
+ }
16
+ });
21
17
  };
22
-
23
18
  export default preloadLinks;
19
+ //# sourceMappingURL=preloadLinks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preloadLinks.js","sourceRoot":"","sources":["../../src/theming/preloadLinks.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,MAAM,6BAA6B,CAAC;AACjE,OAAO,gBAAgB,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAG/D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;AAEpC,MAAM,YAAY,GAAG,CAAC,YAA+B,EAAE,EAAE;IACxD,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,kBAAkB,EAAE,EAAE;QAC/C,OAAO;KACP;IAED,MAAM,UAAU,GAAG,sBAAsB,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;IACrE,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAE9E,CAAC,GAAG,UAAU,EAAE,GAAG,oBAAoB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACvD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACzB,gBAAgB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YACxD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACpB;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["import getEffectiveLinksHrefs from \"./getEffectiveLinksHrefs.js\";\nimport createLinkInHead from \"../util/createLinkInHead.js\";\nimport { shouldUseLinks, shouldPreloadLinks } from \"../CSP.js\";\nimport type UI5Element from \"../UI5Element.js\";\n\nconst preloaded = new Set<string>();\n\nconst preloadLinks = (ElementClass: typeof UI5Element) => {\n\tif (!shouldUseLinks() || !shouldPreloadLinks()) {\n\t\treturn;\n\t}\n\n\tconst linksHrefs = getEffectiveLinksHrefs(ElementClass, false) || [];\n\tconst staticAreaLinksHrefs = getEffectiveLinksHrefs(ElementClass, true) || [];\n\n\t[...linksHrefs, ...staticAreaLinksHrefs].forEach(href => {\n\t\tif (!preloaded.has(href)) {\n\t\t\tcreateLinkInHead(href, { rel: \"preload\", as: \"style\" });\n\t\t\tpreloaded.add(href);\n\t\t}\n\t});\n};\n\nexport default preloadLinks;\n"]}
@@ -0,0 +1,2 @@
1
+ declare var fnMerge: (arg1?: any, arg2?: any, arg3?: any, arg4?: any) => any;
2
+ export default fnMerge;
@@ -1,6 +1,6 @@
1
1
  import isPlainObject from './isPlainObject.js';
2
2
  var oToken = Object.create(null);
3
- var fnMerge = function () {
3
+ var fnMerge = function (arg1, arg2, arg3, arg4) {
4
4
  var src, copyIsArray, copy, name, options, clone, target = arguments[2] || {}, i = 3, length = arguments.length, deep = arguments[0] || false, skipToken = arguments[1] ? undefined : oToken;
5
5
  if (typeof target !== 'object' && typeof target !== 'function') {
6
6
  target = {};
@@ -17,11 +17,13 @@ var fnMerge = function () {
17
17
  if (copyIsArray) {
18
18
  copyIsArray = false;
19
19
  clone = src && Array.isArray(src) ? src : [];
20
- } else {
20
+ }
21
+ else {
21
22
  clone = src && isPlainObject(src) ? src : {};
22
23
  }
23
24
  target[name] = fnMerge(deep, arguments[1], clone, copy);
24
- } else if (copy !== skipToken) {
25
+ }
26
+ else if (copy !== skipToken) {
25
27
  target[name] = copy;
26
28
  }
27
29
  }
@@ -29,4 +31,5 @@ var fnMerge = function () {
29
31
  }
30
32
  return target;
31
33
  };
32
- export default fnMerge;
34
+ export default fnMerge;
35
+ //# sourceMappingURL=_merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_merge.js","sourceRoot":"","sources":["../../src/thirdparty/_merge.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACjC,IAAI,OAAO,GAAG,UAAU,IAAU,EAAE,IAAU,EAAE,IAAU,EAAE,IAAU;IAClE,IAAI,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IAC7L,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;QAC5D,MAAM,GAAG,EAAE,CAAC;KACf;IACD,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QACpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;YAClC,KAAK,IAAI,IAAI,OAAO,EAAE;gBAClB,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;gBACnB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;gBACrB,IAAI,IAAI,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,EAAE;oBACzC,SAAS;iBACZ;gBACD,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;oBAC9E,IAAI,WAAW,EAAE;wBACb,WAAW,GAAG,KAAK,CAAC;wBACpB,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;qBAChD;yBAAM;wBACH,KAAK,GAAG,GAAG,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;qBAChD;oBACD,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;iBAC3D;qBAAM,IAAI,IAAI,KAAK,SAAS,EAAE;oBAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;iBACvB;aACJ;SACJ;KACJ;IACD,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AACF,eAAe,OAAO,CAAC","sourcesContent":["import isPlainObject from './isPlainObject.js';\nvar oToken = Object.create(null);\nvar fnMerge = function (arg1?: any, arg2?: any, arg3?: any, arg4?: any) {\n var src, copyIsArray, copy, name, options, clone, target = arguments[2] || {}, i = 3, length = arguments.length, deep = arguments[0] || false, skipToken = arguments[1] ? undefined : oToken;\n if (typeof target !== 'object' && typeof target !== 'function') {\n target = {};\n }\n for (; i < length; i++) {\n if ((options = arguments[i]) != null) {\n for (name in options) {\n src = target[name];\n copy = options[name];\n if (name === '__proto__' || target === copy) {\n continue;\n }\n if (deep && copy && (isPlainObject(copy) || (copyIsArray = Array.isArray(copy)))) {\n if (copyIsArray) {\n copyIsArray = false;\n clone = src && Array.isArray(src) ? src : [];\n } else {\n clone = src && isPlainObject(src) ? src : {};\n }\n target[name] = fnMerge(deep, arguments[1], clone, copy);\n } else if (copy !== skipToken) {\n target[name] = copy;\n }\n }\n }\n }\n return target;\n};\nexport default fnMerge;\n"]}
@@ -0,0 +1,2 @@
1
+ declare var fnIsPlainObject: (obj: object) => boolean;
2
+ export default fnIsPlainObject;
@@ -4,15 +4,16 @@ var toString = class2type.toString;
4
4
  var fnToString = hasOwn.toString;
5
5
  var ObjectFunctionString = fnToString.call(Object);
6
6
  var fnIsPlainObject = function (obj) {
7
- var proto, Ctor;
8
- if (!obj || toString.call(obj) !== "[object Object]") {
9
- return false;
10
- }
11
- proto = Object.getPrototypeOf(obj);
12
- if (!proto) {
13
- return true;
14
- }
15
- Ctor = hasOwn.call(proto, "constructor") && proto.constructor;
16
- return typeof Ctor === "function" && fnToString.call(Ctor) === ObjectFunctionString;
7
+ var proto, Ctor;
8
+ if (!obj || toString.call(obj) !== "[object Object]") {
9
+ return false;
10
+ }
11
+ proto = Object.getPrototypeOf(obj);
12
+ if (!proto) {
13
+ return true;
14
+ }
15
+ Ctor = hasOwn.call(proto, "constructor") && proto.constructor;
16
+ return typeof Ctor === "function" && fnToString.call(Ctor) === ObjectFunctionString;
17
17
  };
18
18
  export default fnIsPlainObject;
19
+ //# sourceMappingURL=isPlainObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isPlainObject.js","sourceRoot":"","sources":["../../src/thirdparty/isPlainObject.ts"],"names":[],"mappings":"AAAA,IAAI,UAAU,GAAG,EAAE,CAAC;AACpB,IAAI,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC;AACvC,IAAI,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;AACnC,IAAI,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC;AACjC,IAAI,oBAAoB,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnD,IAAI,eAAe,GAAG,UAAU,GAAW;IACzC,IAAI,KAAK,EAAE,IAAI,CAAC;IAChB,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,iBAAiB,EAAE;QACpD,OAAO,KAAK,CAAC;KACd;IACD,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,IAAI,CAAC;KACb;IACD,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC;IAC9D,OAAO,OAAO,IAAI,KAAK,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,oBAAoB,CAAC;AACtF,CAAC,CAAC;AACF,eAAe,eAAe,CAAC","sourcesContent":["var class2type = {};\nvar hasOwn = class2type.hasOwnProperty;\nvar toString = class2type.toString;\nvar fnToString = hasOwn.toString;\nvar ObjectFunctionString = fnToString.call(Object);\nvar fnIsPlainObject = function (obj: object) {\n var proto, Ctor;\n if (!obj || toString.call(obj) !== \"[object Object]\") {\n return false;\n }\n proto = Object.getPrototypeOf(obj);\n if (!proto) {\n return true;\n }\n Ctor = hasOwn.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && fnToString.call(Ctor) === ObjectFunctionString;\n};\nexport default fnIsPlainObject;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const fnMerge: (arg1?: any, arg2?: any) => any;
2
+ export default fnMerge;
@@ -1,10 +1,6 @@
1
1
  import _merge from './_merge.js';
2
- var fnMerge = function () {
3
- var args = [
4
- true,
5
- false
6
- ];
7
- args.push.apply(args, arguments);
8
- return _merge.apply(null, args);
2
+ const fnMerge = function (arg1, arg2) {
3
+ return _merge(true, false, ...arguments);
9
4
  };
10
- export default fnMerge;
5
+ export default fnMerge;
6
+ //# sourceMappingURL=merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/thirdparty/merge.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,MAAM,OAAO,GAAG,UAAU,IAAU,EAAE,IAAU;IAC5C,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,CAAC;AAC7C,CAAC,CAAC;AACF,eAAe,OAAO,CAAC","sourcesContent":["import _merge from './_merge.js';\nconst fnMerge = function (arg1?: any, arg2?: any) {\n return _merge(true, false, ...arguments);\n};\nexport default fnMerge;\n"]}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Different types of AnimationMode.
3
+ *
4
+ * @readonly
5
+ * @enum {string}
6
+ * @public
7
+ * @author SAP SE
8
+ * @alias sap.ui.webc.base.types.AnimationMode
9
+ */
10
+ declare enum AnimationMode {
11
+ /**
12
+ * @public
13
+ * @type {Full}
14
+ */
15
+ Full = "full",
16
+ /**
17
+ * @public
18
+ * @type {Basic}
19
+ */
20
+ Basic = "basic",
21
+ /**
22
+ * @public
23
+ * @type {Minimal}
24
+ */
25
+ Minimal = "minimal",
26
+ /**
27
+ * @public
28
+ * @type {None}
29
+ */
30
+ None = "none"
31
+ }
32
+ export default AnimationMode;