@ui5/webcomponents-base 0.0.0-32b659ddc → 0.0.0-33e059bcd

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 (776) hide show
  1. package/.eslintignore +9 -3
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +1264 -0
  4. package/README.md +58 -7
  5. package/bundle.esm.js +36 -22
  6. package/config/wdio.conf.cjs +400 -0
  7. package/dist/.tsbuildinfo +1 -0
  8. package/dist/AssetRegistry.d.ts +5 -0
  9. package/dist/AssetRegistry.js +6 -9
  10. package/dist/AssetRegistry.js.map +1 -0
  11. package/dist/Boot.d.ts +9 -0
  12. package/dist/Boot.js +71 -0
  13. package/dist/Boot.js.map +1 -0
  14. package/dist/CSP.d.ts +30 -0
  15. package/dist/CSP.js +51 -0
  16. package/dist/CSP.js.map +1 -0
  17. package/dist/CustomElementsRegistry.d.ts +5 -0
  18. package/dist/CustomElementsRegistry.js +78 -0
  19. package/dist/CustomElementsRegistry.js.map +1 -0
  20. package/dist/CustomElementsScope.d.ts +7 -0
  21. package/dist/CustomElementsScope.js +11 -0
  22. package/dist/CustomElementsScope.js.map +1 -0
  23. package/dist/CustomElementsScopeUtils.d.ts +62 -0
  24. package/dist/CustomElementsScopeUtils.js +102 -0
  25. package/dist/CustomElementsScopeUtils.js.map +1 -0
  26. package/dist/DOMObserver.d.ts +11 -0
  27. package/dist/DOMObserver.js +23 -0
  28. package/dist/DOMObserver.js.map +1 -0
  29. package/dist/Device.d.ts +13 -0
  30. package/dist/Device.js +167 -815
  31. package/dist/Device.js.map +1 -0
  32. package/dist/EventProvider.d.ts +25 -0
  33. package/dist/EventProvider.js +67 -70
  34. package/dist/EventProvider.js.map +1 -0
  35. package/dist/FeaturesRegistry.d.ts +3 -0
  36. package/dist/FeaturesRegistry.js +5 -7
  37. package/dist/FeaturesRegistry.js.map +1 -0
  38. package/dist/FontFace.d.ts +2 -0
  39. package/dist/FontFace.js +21 -69
  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 +28 -0
  45. package/dist/InitialConfiguration.js +135 -104
  46. package/dist/InitialConfiguration.js.map +1 -0
  47. package/dist/Keys.d.ts +61 -0
  48. package/dist/Keys.js +181 -0
  49. package/dist/Keys.js.map +1 -0
  50. package/dist/ManagedStyles.d.ts +9 -0
  51. package/dist/ManagedStyles.js +157 -0
  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 +31 -0
  57. package/dist/MediaRange.js +88 -0
  58. package/dist/MediaRange.js.map +1 -0
  59. package/dist/PropertiesFileFormat.d.ts +8 -0
  60. package/dist/PropertiesFileFormat.js +85 -0
  61. package/dist/PropertiesFileFormat.js.map +1 -0
  62. package/dist/Render.d.ts +47 -0
  63. package/dist/Render.js +143 -0
  64. package/dist/Render.js.map +1 -0
  65. package/dist/RenderQueue.d.ts +19 -0
  66. package/dist/RenderQueue.js +53 -39
  67. package/dist/RenderQueue.js.map +1 -0
  68. package/dist/Runtimes.d.ts +27 -0
  69. package/dist/Runtimes.js +86 -0
  70. package/dist/Runtimes.js.map +1 -0
  71. package/dist/StaticArea.d.ts +3 -0
  72. package/dist/StaticArea.js +4 -38
  73. package/dist/StaticArea.js.map +1 -0
  74. package/dist/StaticAreaItem.d.ts +35 -0
  75. package/dist/StaticAreaItem.js +94 -84
  76. package/dist/StaticAreaItem.js.map +1 -0
  77. package/dist/SystemCSSVars.d.ts +2 -0
  78. package/dist/SystemCSSVars.js +9 -0
  79. package/dist/SystemCSSVars.js.map +1 -0
  80. package/dist/Theming.d.ts +3 -0
  81. package/dist/Theming.js +4 -55
  82. package/dist/Theming.js.map +1 -0
  83. package/dist/UI5Element.d.ts +384 -0
  84. package/dist/UI5Element.js +960 -854
  85. package/dist/UI5Element.js.map +1 -0
  86. package/dist/UI5ElementMetadata.d.ts +143 -0
  87. package/dist/UI5ElementMetadata.js +281 -152
  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/asset-registries/Icons.d.ts +39 -0
  105. package/dist/asset-registries/Icons.js +136 -24
  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 +76 -0
  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 +126 -98
  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 +59 -66
  115. package/dist/asset-registries/Themes.js.map +1 -0
  116. package/dist/asset-registries/i18n.d.ts +23 -0
  117. package/dist/asset-registries/i18n.js +85 -57
  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/config/AnimationMode.d.ts +14 -0
  129. package/dist/config/AnimationMode.js +23 -10
  130. package/dist/config/AnimationMode.js.map +1 -0
  131. package/dist/config/CalendarType.d.ts +15 -0
  132. package/dist/config/CalendarType.js +32 -19
  133. package/dist/config/CalendarType.js.map +1 -0
  134. package/dist/config/FormatSettings.d.ts +15 -0
  135. package/dist/config/FormatSettings.js +15 -9
  136. package/dist/config/FormatSettings.js.map +1 -0
  137. package/dist/config/Icons.d.ts +40 -0
  138. package/dist/config/Icons.js +44 -0
  139. package/dist/config/Icons.js.map +1 -0
  140. package/dist/config/Language.d.ts +40 -0
  141. package/dist/config/Language.js +66 -10
  142. package/dist/config/Language.js.map +1 -0
  143. package/dist/config/NoConflict.d.ts +20 -0
  144. package/dist/config/NoConflict.js +41 -41
  145. package/dist/config/NoConflict.js.map +1 -0
  146. package/dist/config/RTL.d.ts +7 -0
  147. package/dist/config/RTL.js +26 -20
  148. package/dist/config/RTL.js.map +1 -0
  149. package/dist/config/Theme.d.ts +38 -0
  150. package/dist/config/Theme.js +65 -23
  151. package/dist/config/Theme.js.map +1 -0
  152. package/dist/config/ThemeRoot.d.ts +29 -0
  153. package/dist/config/ThemeRoot.js +59 -0
  154. package/dist/config/ThemeRoot.js.map +1 -0
  155. package/dist/config/Timezone.d.ts +17 -0
  156. package/dist/config/Timezone.js +30 -0
  157. package/dist/config/Timezone.js.map +1 -0
  158. package/dist/connectToComponent.d.ts +9 -0
  159. package/dist/connectToComponent.js +59 -0
  160. package/dist/connectToComponent.js.map +1 -0
  161. package/dist/css/BusyIndicator.css +80 -0
  162. package/dist/css/FontFace.css +96 -0
  163. package/dist/css/OverrideFontFace.css +32 -0
  164. package/dist/css/SystemCSSVars.css +17 -0
  165. package/dist/custom-elements-internal.json +2765 -0
  166. package/dist/custom-elements.json +2528 -0
  167. package/dist/decorators/customElement.d.ts +23 -0
  168. package/dist/decorators/customElement.js +37 -0
  169. package/dist/decorators/customElement.js.map +1 -0
  170. package/dist/decorators/event.d.ts +13 -0
  171. package/dist/decorators/event.js +24 -0
  172. package/dist/decorators/event.js.map +1 -0
  173. package/dist/decorators/property.d.ts +9 -0
  174. package/dist/decorators/property.js +24 -0
  175. package/dist/decorators/property.js.map +1 -0
  176. package/dist/decorators/slot.d.ts +9 -0
  177. package/dist/decorators/slot.js +37 -0
  178. package/dist/decorators/slot.js.map +1 -0
  179. package/dist/delegate/ItemNavigation.d.ts +114 -0
  180. package/dist/delegate/ItemNavigation.js +311 -274
  181. package/dist/delegate/ItemNavigation.js.map +1 -0
  182. package/dist/delegate/ResizeHandler.d.ts +23 -0
  183. package/dist/delegate/ResizeHandler.js +82 -63
  184. package/dist/delegate/ResizeHandler.js.map +1 -0
  185. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  186. package/dist/delegate/ScrollEnablement.js +159 -100
  187. package/dist/delegate/ScrollEnablement.js.map +1 -0
  188. package/dist/features/F6Navigation.d.ts +19 -0
  189. package/dist/features/F6Navigation.js +151 -0
  190. package/dist/features/F6Navigation.js.map +1 -0
  191. package/dist/features/LegacyDateFormats.d.ts +18 -0
  192. package/dist/features/LegacyDateFormats.js +20 -0
  193. package/dist/features/LegacyDateFormats.js.map +1 -0
  194. package/dist/features/OpenUI5Element.d.ts +9 -0
  195. package/dist/features/OpenUI5Element.js +5 -0
  196. package/dist/features/OpenUI5Element.js.map +1 -0
  197. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  198. package/dist/features/OpenUI5Enablement.js +96 -0
  199. package/dist/features/OpenUI5Enablement.js.map +1 -0
  200. package/dist/features/OpenUI5Support.d.ts +36 -0
  201. package/dist/features/OpenUI5Support.js +152 -73
  202. package/dist/features/OpenUI5Support.js.map +1 -0
  203. package/dist/generated/AssetParameters.d.ts +6 -0
  204. package/dist/generated/AssetParameters.js +8 -0
  205. package/dist/generated/AssetParameters.js.map +1 -0
  206. package/dist/generated/VersionInfo.d.ts +10 -0
  207. package/dist/generated/VersionInfo.js +11 -0
  208. package/dist/generated/VersionInfo.js.map +1 -0
  209. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  210. package/dist/generated/css/BusyIndicator.css.js +7 -0
  211. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  212. package/dist/generated/css/FontFace.css.d.ts +3 -0
  213. package/dist/generated/css/FontFace.css.js +7 -0
  214. package/dist/generated/css/FontFace.css.js.map +1 -0
  215. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  216. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  217. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  218. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  219. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  220. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  221. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  222. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  223. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  224. package/dist/getSharedResource.d.ts +11 -0
  225. package/dist/getSharedResource.js +40 -0
  226. package/dist/getSharedResource.js.map +1 -0
  227. package/dist/global.d.ts +40 -0
  228. package/dist/i18nBundle.d.ts +41 -0
  229. package/dist/i18nBundle.js +71 -30
  230. package/dist/i18nBundle.js.map +1 -0
  231. package/dist/locale/Locale.d.ts +22 -0
  232. package/dist/locale/Locale.js +79 -0
  233. package/dist/locale/Locale.js.map +1 -0
  234. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  235. package/dist/locale/RTLAwareRegistry.js +9 -0
  236. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  237. package/dist/locale/applyDirection.d.ts +10 -0
  238. package/dist/locale/applyDirection.js +17 -0
  239. package/dist/locale/applyDirection.js.map +1 -0
  240. package/dist/locale/directionChange.d.ts +15 -0
  241. package/dist/locale/directionChange.js +24 -0
  242. package/dist/locale/directionChange.js.map +1 -0
  243. package/dist/locale/getEffectiveDir.d.ts +2 -0
  244. package/dist/locale/getEffectiveDir.js +24 -0
  245. package/dist/locale/getEffectiveDir.js.map +1 -0
  246. package/dist/locale/getLocale.d.ts +7 -0
  247. package/dist/locale/getLocale.js +38 -0
  248. package/dist/locale/getLocale.js.map +1 -0
  249. package/dist/locale/languageChange.d.ts +5 -0
  250. package/dist/locale/languageChange.js +14 -0
  251. package/dist/locale/languageChange.js.map +1 -0
  252. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  253. package/dist/locale/nextFallbackLocale.js +24 -0
  254. package/dist/locale/nextFallbackLocale.js.map +1 -0
  255. package/dist/locale/normalizeLocale.d.ts +7 -0
  256. package/dist/locale/normalizeLocale.js +47 -0
  257. package/dist/locale/normalizeLocale.js.map +1 -0
  258. package/dist/renderer/LitRenderer.d.ts +14 -0
  259. package/dist/renderer/LitRenderer.js +38 -12
  260. package/dist/renderer/LitRenderer.js.map +1 -0
  261. package/dist/renderer/directives/style-map.js +72 -0
  262. package/dist/renderer/executeTemplate.d.ts +13 -0
  263. package/dist/renderer/executeTemplate.js +30 -0
  264. package/dist/renderer/executeTemplate.js.map +1 -0
  265. package/dist/sap/base/Log.js +750 -0
  266. package/dist/sap/base/assert.js +34 -0
  267. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  268. package/dist/sap/base/security/URLListValidator.js +406 -0
  269. package/dist/sap/base/security/encodeCSS.js +40 -0
  270. package/dist/sap/base/security/encodeXML.js +53 -0
  271. package/dist/sap/base/security/sanitizeHTML.js +38 -0
  272. package/dist/sap/base/strings/toHex.js +33 -0
  273. package/dist/sap/base/util/now.js +28 -0
  274. package/dist/sap/base/util/uid.js +27 -0
  275. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  276. package/dist/ssr-dom-shim.d.ts +1 -0
  277. package/dist/ssr-dom-shim.js +12 -0
  278. package/dist/ssr-dom-shim.js.map +1 -0
  279. package/dist/ssr-dom.d.ts +0 -0
  280. package/dist/ssr-dom.js +3 -0
  281. package/dist/ssr-dom.js.map +1 -0
  282. package/dist/theming/CustomStyle.d.ts +6 -0
  283. package/dist/theming/CustomStyle.js +46 -17
  284. package/dist/theming/CustomStyle.js.map +1 -0
  285. package/dist/theming/ThemeLoaded.d.ts +5 -0
  286. package/dist/theming/ThemeLoaded.js +14 -0
  287. package/dist/theming/ThemeLoaded.js.map +1 -0
  288. package/dist/theming/ThemeRegistered.d.ts +4 -0
  289. package/dist/theming/ThemeRegistered.js +11 -0
  290. package/dist/theming/ThemeRegistered.js.map +1 -0
  291. package/dist/theming/applyTheme.d.ts +2 -0
  292. package/dist/theming/applyTheme.js +76 -0
  293. package/dist/theming/applyTheme.js.map +1 -0
  294. package/dist/theming/getConstructableStyle.d.ts +9 -0
  295. package/dist/theming/getConstructableStyle.js +25 -0
  296. package/dist/theming/getConstructableStyle.js.map +1 -0
  297. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  298. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  299. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  300. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  301. package/dist/theming/getEffectiveStyle.js +32 -0
  302. package/dist/theming/getEffectiveStyle.js.map +1 -0
  303. package/dist/theming/getStylesString.d.ts +3 -0
  304. package/dist/theming/getStylesString.js +11 -0
  305. package/dist/theming/getStylesString.js.map +1 -0
  306. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  307. package/dist/theming/getThemeDesignerTheme.js +80 -0
  308. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  309. package/dist/theming/preloadLinks.d.ts +3 -0
  310. package/dist/theming/preloadLinks.js +19 -0
  311. package/dist/theming/preloadLinks.js.map +1 -0
  312. package/dist/thirdparty/_merge.d.ts +2 -0
  313. package/dist/thirdparty/_merge.js +35 -0
  314. package/dist/thirdparty/_merge.js.map +1 -0
  315. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  316. package/dist/thirdparty/isPlainObject.js +19 -0
  317. package/dist/thirdparty/isPlainObject.js.map +1 -0
  318. package/dist/thirdparty/merge.d.ts +2 -0
  319. package/dist/thirdparty/merge.js +6 -0
  320. package/dist/thirdparty/merge.js.map +1 -0
  321. package/dist/types/AnimationMode.d.ts +24 -0
  322. package/dist/types/AnimationMode.js +25 -6
  323. package/dist/types/AnimationMode.js.map +1 -0
  324. package/dist/types/CSSColor.d.ts +11 -0
  325. package/dist/types/CSSColor.js +14 -0
  326. package/dist/types/CSSColor.js.map +1 -0
  327. package/dist/types/CSSSize.d.ts +11 -0
  328. package/dist/types/CSSSize.js +10 -5
  329. package/dist/types/CSSSize.js.map +1 -0
  330. package/dist/types/CalendarType.d.ts +28 -0
  331. package/dist/types/CalendarType.js +30 -0
  332. package/dist/types/CalendarType.js.map +1 -0
  333. package/dist/types/DOMReference.d.ts +13 -0
  334. package/dist/types/DOMReference.js +21 -0
  335. package/dist/types/DOMReference.js.map +1 -0
  336. package/dist/types/DataType.d.ts +20 -0
  337. package/dist/types/DataType.js +31 -17
  338. package/dist/types/DataType.js.map +1 -0
  339. package/dist/types/Float.d.ts +14 -0
  340. package/dist/types/Float.js +18 -0
  341. package/dist/types/Float.js.map +1 -0
  342. package/dist/types/Integer.d.ts +14 -0
  343. package/dist/types/Integer.js +14 -5
  344. package/dist/types/Integer.js.map +1 -0
  345. package/dist/types/InvisibleMessageMode.d.ts +20 -0
  346. package/dist/types/InvisibleMessageMode.js +20 -0
  347. package/dist/types/InvisibleMessageMode.js.map +1 -0
  348. package/dist/types/ItemNavigationBehavior.d.ts +18 -0
  349. package/dist/types/ItemNavigationBehavior.js +16 -17
  350. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  351. package/dist/types/NavigationMode.d.ts +24 -0
  352. package/dist/types/NavigationMode.js +25 -5
  353. package/dist/types/NavigationMode.js.map +1 -0
  354. package/dist/types/ValueState.d.ts +28 -0
  355. package/dist/types/ValueState.js +27 -19
  356. package/dist/types/ValueState.js.map +1 -0
  357. package/dist/types.d.ts +18 -0
  358. package/dist/types.js +2 -0
  359. package/dist/types.js.map +1 -0
  360. package/dist/updateShadowRoot.d.ts +8 -0
  361. package/dist/updateShadowRoot.js +42 -0
  362. package/dist/updateShadowRoot.js.map +1 -0
  363. package/dist/util/AriaLabelHelper.d.ts +15 -0
  364. package/dist/util/AriaLabelHelper.js +171 -0
  365. package/dist/util/AriaLabelHelper.js.map +1 -0
  366. package/dist/util/Caret.d.ts +7 -0
  367. package/dist/util/Caret.js +23 -0
  368. package/dist/util/Caret.js.map +1 -0
  369. package/dist/util/ColorConversion.d.ts +30 -0
  370. package/dist/util/ColorConversion.js +342 -0
  371. package/dist/util/ColorConversion.js.map +1 -0
  372. package/dist/util/FetchHelper.d.ts +3 -0
  373. package/dist/util/FetchHelper.js +19 -25
  374. package/dist/util/FetchHelper.js.map +1 -0
  375. package/dist/util/FocusableElements.d.ts +4 -0
  376. package/dist/util/FocusableElements.js +68 -56
  377. package/dist/util/FocusableElements.js.map +1 -0
  378. package/dist/util/HTMLSanitizer.d.ts +3 -0
  379. package/dist/util/HTMLSanitizer.js +6 -0
  380. package/dist/util/HTMLSanitizer.js.map +1 -0
  381. package/dist/util/InvisibleMessage.d.ts +10 -0
  382. package/dist/util/InvisibleMessage.js +56 -0
  383. package/dist/util/InvisibleMessage.js.map +1 -0
  384. package/dist/util/PopupUtils.d.ts +7 -0
  385. package/dist/util/PopupUtils.js +74 -0
  386. package/dist/util/PopupUtils.js.map +1 -0
  387. package/dist/util/SlotsHelper.d.ts +9 -0
  388. package/dist/util/SlotsHelper.js +30 -0
  389. package/dist/util/SlotsHelper.js.map +1 -0
  390. package/dist/util/StringHelper.d.ts +3 -0
  391. package/dist/util/StringHelper.js +17 -20
  392. package/dist/util/StringHelper.js.map +1 -0
  393. package/dist/util/TabbableElements.d.ts +17 -0
  394. package/dist/util/TabbableElements.js +53 -40
  395. package/dist/util/TabbableElements.js.map +1 -0
  396. package/dist/util/arraysAreEqual.d.ts +2 -0
  397. package/dist/util/arraysAreEqual.js +13 -0
  398. package/dist/util/arraysAreEqual.js.map +1 -0
  399. package/dist/util/clamp.d.ts +9 -0
  400. package/dist/util/clamp.js +12 -0
  401. package/dist/util/clamp.js.map +1 -0
  402. package/dist/util/createLinkInHead.d.ts +7 -0
  403. package/dist/util/createLinkInHead.js +21 -0
  404. package/dist/util/createLinkInHead.js.map +1 -0
  405. package/dist/util/createStyleInHead.d.ts +8 -0
  406. package/dist/util/createStyleInHead.js +10 -10
  407. package/dist/util/createStyleInHead.js.map +1 -0
  408. package/dist/util/debounce.d.ts +2 -0
  409. package/dist/util/debounce.js +15 -0
  410. package/dist/util/debounce.js.map +1 -0
  411. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  412. package/dist/util/detectNavigatorLanguage.js +14 -10
  413. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  414. package/dist/util/escapeRegex.d.ts +8 -0
  415. package/dist/util/escapeRegex.js +11 -0
  416. package/dist/util/escapeRegex.js.map +1 -0
  417. package/dist/util/formatMessage.d.ts +2 -0
  418. package/dist/util/formatMessage.js +15 -19
  419. package/dist/util/formatMessage.js.map +1 -0
  420. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  421. package/dist/util/generateHighlightedMarkup.js +41 -0
  422. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  423. package/dist/util/getActiveElement.d.ts +2 -0
  424. package/dist/util/getActiveElement.js +9 -0
  425. package/dist/util/getActiveElement.js.map +1 -0
  426. package/dist/util/getClassCopy.d.ts +419 -0
  427. package/dist/util/getClassCopy.js +10 -0
  428. package/dist/util/getClassCopy.js.map +1 -0
  429. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  430. package/dist/util/getDesigntimePropertyAsArray.js +5 -3
  431. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  432. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  433. package/dist/util/getEffectiveContentDensity.js +4 -0
  434. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  435. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  436. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  437. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  438. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  439. package/dist/util/getFastNavigationGroups.js +51 -0
  440. package/dist/util/getFastNavigationGroups.js.map +1 -0
  441. package/dist/util/getFileExtension.d.ts +12 -0
  442. package/dist/util/getFileExtension.js +19 -0
  443. package/dist/util/getFileExtension.js.map +1 -0
  444. package/dist/util/getNormalizedTarget.d.ts +7 -0
  445. package/dist/util/getNormalizedTarget.js +14 -0
  446. package/dist/util/getNormalizedTarget.js.map +1 -0
  447. package/dist/util/getParentElement.d.ts +2 -0
  448. package/dist/util/getParentElement.js +5 -0
  449. package/dist/util/getParentElement.js.map +1 -0
  450. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  451. package/dist/util/getSingletonElementInstance.js +19 -0
  452. package/dist/util/getSingletonElementInstance.js.map +1 -0
  453. package/dist/util/isElementClickable.d.ts +2 -0
  454. package/dist/util/isElementClickable.js +16 -0
  455. package/dist/util/isElementClickable.js.map +1 -0
  456. package/dist/util/isElementContainingBlock.d.ts +2 -0
  457. package/dist/util/isElementContainingBlock.js +11 -0
  458. package/dist/util/isElementContainingBlock.js.map +1 -0
  459. package/dist/util/isElementHidden.d.ts +2 -0
  460. package/dist/util/isElementHidden.js +8 -0
  461. package/dist/util/isElementHidden.js.map +1 -0
  462. package/dist/util/isElementInView.d.ts +6 -0
  463. package/dist/util/isElementInView.js +12 -0
  464. package/dist/util/isElementInView.js.map +1 -0
  465. package/dist/util/isElementTabbable.d.ts +9 -0
  466. package/dist/util/isElementTabbable.js +30 -0
  467. package/dist/util/isElementTabbable.js.map +1 -0
  468. package/dist/util/isValidPropertyName.d.ts +8 -0
  469. package/dist/util/isValidPropertyName.js +20 -12
  470. package/dist/util/isValidPropertyName.js.map +1 -0
  471. package/dist/util/whenDOMReady.d.ts +2 -0
  472. package/dist/util/whenDOMReady.js +11 -10
  473. package/dist/util/whenDOMReady.js.map +1 -0
  474. package/dist/util/willShowContent.d.ts +2 -0
  475. package/dist/util/willShowContent.js +7 -0
  476. package/dist/util/willShowContent.js.map +1 -0
  477. package/dist/validateThemeRoot.d.ts +2 -0
  478. package/dist/validateThemeRoot.js +48 -0
  479. package/dist/validateThemeRoot.js.map +1 -0
  480. package/index.js +228 -2
  481. package/lib/generate-asset-parameters/index.js +27 -0
  482. package/lib/generate-styles/index.js +31 -0
  483. package/lib/generate-version-info/index.js +32 -0
  484. package/package-scripts.cjs +65 -0
  485. package/package.json +30 -14
  486. package/src/css/BusyIndicator.css +80 -0
  487. package/src/css/FontFace.css +96 -0
  488. package/src/css/OverrideFontFace.css +32 -0
  489. package/src/css/SystemCSSVars.css +17 -0
  490. package/src/renderer/directives/style-map.js +72 -0
  491. package/tsconfig.json +18 -0
  492. package/used-modules.txt +14 -0
  493. package/bundle.es5.js +0 -28
  494. package/config/rollup.config.js +0 -1
  495. package/config/wdio.conf.js +0 -1
  496. package/dist/Assets.js +0 -2
  497. package/dist/CSS.js +0 -48
  498. package/dist/FormatSettings.js +0 -31
  499. package/dist/Locale.js +0 -101
  500. package/dist/LocaleProvider.js +0 -34
  501. package/dist/RenderScheduler.js +0 -165
  502. package/dist/ResourceLoaderOverrides.js +0 -38
  503. package/dist/SVGIconRegistry.js +0 -54
  504. package/dist/animations/config.js +0 -5
  505. package/dist/boot.js +0 -32
  506. package/dist/compatibility/DOMObserver.js +0 -62
  507. package/dist/compatibility/patchNodeValue.js +0 -24
  508. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  509. package/dist/dates/CalendarDate.js +0 -203
  510. package/dist/dates/CalendarType.js +0 -22
  511. package/dist/dates/CalendarUtils.js +0 -99
  512. package/dist/delegate/CustomResize.js +0 -78
  513. package/dist/delegate/NativeResize.js +0 -44
  514. package/dist/events/PseudoEvents.js +0 -58
  515. package/dist/features/browsersupport/Edge.js +0 -6
  516. package/dist/features/browsersupport/IE11.js +0 -41
  517. package/dist/features/calendar/Buddhist.js +0 -1
  518. package/dist/features/calendar/Islamic.js +0 -1
  519. package/dist/features/calendar/Japanese.js +0 -1
  520. package/dist/features/calendar/Persian.js +0 -1
  521. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5906
  522. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5906
  523. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5906
  524. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4979
  525. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4996
  526. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5498
  527. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4888
  528. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4916
  529. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4917
  530. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4915
  531. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4883
  532. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4883
  533. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4970
  534. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4962
  535. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4971
  536. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4977
  537. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4971
  538. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4972
  539. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4971
  540. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4972
  541. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4973
  542. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4972
  543. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4912
  544. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4914
  545. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4913
  546. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4914
  547. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4913
  548. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4915
  549. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4913
  550. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4915
  551. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4914
  552. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4967
  553. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4883
  554. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -5008
  555. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4979
  556. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4979
  557. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4973
  558. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4997
  559. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4979
  560. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5378
  561. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4829
  562. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4919
  563. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4856
  564. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4658
  565. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4950
  566. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4950
  567. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4830
  568. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4725
  569. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4738
  570. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5481
  571. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -5112
  572. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4515
  573. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4977
  574. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4884
  575. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4884
  576. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5176
  577. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4805
  578. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4940
  579. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -5090
  580. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5407
  581. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5407
  582. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5370
  583. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5340
  584. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -5126
  585. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -5011
  586. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4797
  587. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4979
  588. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5353
  589. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4673
  590. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4632
  591. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4640
  592. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4640
  593. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4728
  594. package/dist/json-imports/LocaleData.js +0 -171
  595. package/dist/renderer/ifDefined.js +0 -21
  596. package/dist/resources/bundle.es5.js +0 -212
  597. package/dist/resources/bundle.es5.js.map +0 -1
  598. package/dist/resources/bundle.esm.js +0 -123
  599. package/dist/resources/bundle.esm.js.map +0 -1
  600. package/dist/shims/Core-shim.js +0 -53
  601. package/dist/test-resources/assets/Themes.js +0 -13
  602. package/dist/test-resources/dev-helpers/ExternalThemePresent.js +0 -3
  603. package/dist/test-resources/elements/Child.js +0 -35
  604. package/dist/test-resources/elements/Generic.js +0 -84
  605. package/dist/test-resources/elements/GenericExt.js +0 -26
  606. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  607. package/dist/test-resources/elements/Parent.js +0 -37
  608. package/dist/test-resources/pages/AllTestElements.html +0 -40
  609. package/dist/test-resources/pages/Configuration.html +0 -20
  610. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  611. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  612. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  613. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  614. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  615. package/dist/test-resources/specs/Theming.spec.js +0 -31
  616. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  617. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  618. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  619. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  620. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  621. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  622. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  623. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  624. package/dist/theming/StyleInjection.js +0 -67
  625. package/dist/thirdparty/Array.from.js +0 -16
  626. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  627. package/dist/thirdparty/Array.prototype.find.js +0 -46
  628. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  629. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  630. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  631. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  632. package/dist/thirdparty/Number.isInteger.js +0 -5
  633. package/dist/thirdparty/Number.isNaN.js +0 -1
  634. package/dist/thirdparty/Number.parseInt.js +0 -1
  635. package/dist/thirdparty/Object.assign.js +0 -31
  636. package/dist/thirdparty/Object.entries.js +0 -11
  637. package/dist/thirdparty/Symbol.js +0 -2
  638. package/dist/thirdparty/WeakSet.js +0 -27
  639. package/dist/thirdparty/events-polyfills.js +0 -89
  640. package/dist/thirdparty/fetch.js +0 -1
  641. package/dist/thirdparty/template.js +0 -600
  642. package/dist/types/PopupState.js +0 -37
  643. package/dist/util/CSSTransformUtils.js +0 -90
  644. package/dist/util/isDescendantOf.js +0 -15
  645. package/dist/util/isNodeClickable.js +0 -19
  646. package/dist/util/isNodeHidden.js +0 -13
  647. package/dist/util/isNodeTabbable.js +0 -28
  648. package/dist/util/normalizeLocale.js +0 -77
  649. package/dist/webcomponentsjs/LICENSE.md +0 -19
  650. package/dist/webcomponentsjs/README.md +0 -229
  651. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  652. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  653. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  654. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  655. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  656. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  657. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  658. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  659. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  660. package/dist/webcomponentsjs/package.json +0 -46
  661. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  662. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  663. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  664. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  665. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  666. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  667. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  668. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  669. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  670. package/package-scripts.js +0 -42
  671. package/src/AssetRegistry.js +0 -9
  672. package/src/Assets.js +0 -2
  673. package/src/CSS.js +0 -48
  674. package/src/Device.js +0 -823
  675. package/src/EventProvider.js +0 -73
  676. package/src/FeaturesRegistry.js +0 -11
  677. package/src/FontFace.js +0 -73
  678. package/src/FormatSettings.js +0 -31
  679. package/src/InitialConfiguration.js +0 -130
  680. package/src/Locale.js +0 -101
  681. package/src/LocaleProvider.js +0 -34
  682. package/src/RenderQueue.js +0 -42
  683. package/src/RenderScheduler.js +0 -165
  684. package/src/ResourceLoaderOverrides.js +0 -38
  685. package/src/SVGIconRegistry.js +0 -54
  686. package/src/StaticArea.js +0 -41
  687. package/src/StaticAreaItem.js +0 -90
  688. package/src/Theming.js +0 -55
  689. package/src/UI5Element.js +0 -869
  690. package/src/UI5ElementMetadata.js +0 -164
  691. package/src/animations/AnimationQueue.js +0 -42
  692. package/src/animations/animate.js +0 -53
  693. package/src/animations/config.js +0 -5
  694. package/src/animations/scroll.js +0 -28
  695. package/src/animations/slideDown.js +0 -79
  696. package/src/animations/slideUp.js +0 -71
  697. package/src/asset-registries/Icons.js +0 -24
  698. package/src/asset-registries/LocaleData.js +0 -108
  699. package/src/asset-registries/Themes.js +0 -75
  700. package/src/asset-registries/i18n.js +0 -74
  701. package/src/boot.js +0 -32
  702. package/src/compatibility/DOMObserver.js +0 -62
  703. package/src/compatibility/patchNodeValue.js +0 -24
  704. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  705. package/src/config/AnimationMode.js +0 -13
  706. package/src/config/CalendarType.js +0 -22
  707. package/src/config/FormatSettings.js +0 -13
  708. package/src/config/Language.js +0 -12
  709. package/src/config/NoConflict.js +0 -51
  710. package/src/config/RTL.js +0 -31
  711. package/src/config/Theme.js +0 -28
  712. package/src/dates/CalendarDate.js +0 -203
  713. package/src/dates/CalendarType.js +0 -22
  714. package/src/dates/CalendarUtils.js +0 -99
  715. package/src/delegate/CustomResize.js +0 -78
  716. package/src/delegate/ItemNavigation.js +0 -278
  717. package/src/delegate/NativeResize.js +0 -44
  718. package/src/delegate/ResizeHandler.js +0 -66
  719. package/src/delegate/ScrollEnablement.js +0 -106
  720. package/src/events/PseudoEvents.js +0 -58
  721. package/src/features/OpenUI5Support.js +0 -76
  722. package/src/features/browsersupport/Edge.js +0 -6
  723. package/src/features/browsersupport/IE11.js +0 -41
  724. package/src/features/calendar/Buddhist.js +0 -1
  725. package/src/features/calendar/Islamic.js +0 -1
  726. package/src/features/calendar/Japanese.js +0 -1
  727. package/src/features/calendar/Persian.js +0 -1
  728. package/src/i18nBundle.js +0 -35
  729. package/src/json-imports/LocaleData.js +0 -171
  730. package/src/renderer/LitRenderer.js +0 -15
  731. package/src/renderer/ifDefined.js +0 -21
  732. package/src/shims/Core-shim.js +0 -53
  733. package/src/theming/CustomStyle.js +0 -19
  734. package/src/theming/StyleInjection.js +0 -67
  735. package/src/thirdparty/Array.from.js +0 -16
  736. package/src/thirdparty/Array.prototype.fill.js +0 -44
  737. package/src/thirdparty/Array.prototype.find.js +0 -46
  738. package/src/thirdparty/Array.prototype.includes.js +0 -51
  739. package/src/thirdparty/Element.prototype.closest.js +0 -11
  740. package/src/thirdparty/Element.prototype.matches.js +0 -6
  741. package/src/thirdparty/Map.prototype.keys.js +0 -9
  742. package/src/thirdparty/Number.isInteger.js +0 -5
  743. package/src/thirdparty/Number.isNaN.js +0 -1
  744. package/src/thirdparty/Number.parseInt.js +0 -1
  745. package/src/thirdparty/Object.assign.js +0 -31
  746. package/src/thirdparty/Object.entries.js +0 -11
  747. package/src/thirdparty/Symbol.js +0 -2
  748. package/src/thirdparty/WeakSet.js +0 -27
  749. package/src/thirdparty/events-polyfills.js +0 -89
  750. package/src/thirdparty/fetch.js +0 -1
  751. package/src/thirdparty/template.js +0 -600
  752. package/src/types/AnimationMode.js +0 -7
  753. package/src/types/CSSSize.js +0 -9
  754. package/src/types/DataType.js +0 -25
  755. package/src/types/Integer.js +0 -9
  756. package/src/types/ItemNavigationBehavior.js +0 -21
  757. package/src/types/NavigationMode.js +0 -6
  758. package/src/types/PopupState.js +0 -37
  759. package/src/types/ValueState.js +0 -22
  760. package/src/util/CSSTransformUtils.js +0 -90
  761. package/src/util/FetchHelper.js +0 -31
  762. package/src/util/FocusableElements.js +0 -60
  763. package/src/util/StringHelper.js +0 -26
  764. package/src/util/TabbableElements.js +0 -44
  765. package/src/util/createStyleInHead.js +0 -18
  766. package/src/util/detectNavigatorLanguage.js +0 -11
  767. package/src/util/formatMessage.js +0 -23
  768. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  769. package/src/util/isDescendantOf.js +0 -15
  770. package/src/util/isNodeClickable.js +0 -19
  771. package/src/util/isNodeHidden.js +0 -13
  772. package/src/util/isNodeTabbable.js +0 -28
  773. package/src/util/isValidPropertyName.js +0 -20
  774. package/src/util/normalizeLocale.js +0 -77
  775. package/src/util/whenDOMReady.js +0 -13
  776. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Render.js","sourceRoot":"","sources":["../src/Render.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAM1D,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAc,CAAC;AACjD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAoB,CAAC;AAE5D,MAAM,wBAAwB,GAAG,IAAI,WAAW,EAAE,CAAC,CAAC,uCAAuC;AAE3F,IAAI,iBAA4C,EAC/C,wBAAoD,CAAC;AAEtD,IAAI,qBAA0C,CAAC;AAE/C,IAAI,YAAkC,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,cAAc,GAAG,KAAK,EAAE,YAAwB,EAAE,EAAE;IACzD,4BAA4B;IAC5B,wBAAwB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE3C,4BAA4B;IAC5B,MAAM,kBAAkB,EAAE,CAAC;AAC5B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,CAAC,YAAwB,EAAE,EAAE;IACtD,aAAa,CAAC,SAAS,CAAC,uBAAuB,EAAE,YAAY,CAAC,CAAC;IAC/D,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACrC,YAAY,CAAC,OAAO,EAAE,CAAC;AACxB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,YAAY,GAAG,CAAC,YAAwB,EAAE,EAAE;IACjD,wBAAwB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9C,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAG,KAAK,IAAI,EAAE;IACrC,IAAI,CAAC,YAAY,EAAE;QAClB,YAAY,GAAG,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;YAC1C,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;gBACjC,qCAAqC;gBAErC,6GAA6G;gBAC7G,wBAAwB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBACpD,2GAA2G;gBAE3G,qEAAqE;gBACrE,YAAY,GAAG,IAAI,CAAC;gBACpB,OAAO,EAAE,CAAC;gBAEV,2EAA2E;gBAC3E,IAAI,CAAC,qBAAqB,EAAE;oBAC3B,qBAAqB,GAAG,UAAU,CAAC,GAAG,EAAE;wBACvC,qBAAqB,GAAG,SAAS,CAAC;wBAClC,IAAI,wBAAwB,CAAC,OAAO,EAAE,EAAE;4BACvC,mBAAmB,EAAE,CAAC;yBACtB;oBACF,CAAC,EAAE,GAAG,CAAC,CAAC;iBACR;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;KACH;IAED,MAAM,YAAY,CAAC;AACpB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,cAAc,GAAG,GAAG,EAAE;IAC3B,IAAI,iBAAiB,EAAE;QACtB,OAAO,iBAAiB,CAAC;KACzB;IAED,iBAAiB,GAAG,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;QAC/C,wBAAwB,GAAG,OAAO,CAAC;QACnC,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;YACjC,IAAI,wBAAwB,CAAC,OAAO,EAAE,EAAE;gBACvC,iBAAiB,GAAG,SAAS,CAAC;gBAC9B,OAAO,EAAE,CAAC;aACV;QACF,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,iBAAiB,CAAC;AAC1B,CAAC,CAAC;AAEF,MAAM,+BAA+B,GAAG,GAAG,EAAE;IAC5C,MAAM,eAAe,GAAG,oBAAoB,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3F,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;IACjC,MAAM,+BAA+B,EAAE,CAAC;IACxC,MAAM,cAAc,EAAE,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,EAAE;QACxC,yDAAyD;QACzD,OAAO;KACP;IAED,IAAI,wBAAwB,EAAE;QAC7B,wBAAwB,EAAE,CAAC;QAC3B,wBAAwB,GAAG,SAAS,CAAC;QACrC,iBAAiB,GAAG,SAAS,CAAC;KAC9B;AACF,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,sBAAsB,GAAG,KAAK,EAAE,OAA2F,EAAE,EAAE;IACpI,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAmB,EAAE,EAAE;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAgC,CAAC;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,EAAE,CAAC;QAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,YAAY,EAAE,CAAC;QACrD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC,EAAE;YAC1J,cAAc,CAAC,OAAO,CAAC,CAAC;SACxB;IACF,CAAC,CAAC,CAAC;IACH,MAAM,cAAc,EAAE,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,QAAuC,EAAE,EAAE;IAC/E,aAAa,CAAC,WAAW,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,QAAuC,EAAE,EAAE;IAC/E,aAAa,CAAC,WAAW,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,OAAO,EACN,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,GAC3B,CAAC","sourcesContent":["import EventProvider from \"./EventProvider.js\";\nimport RenderQueue from \"./RenderQueue.js\";\nimport { getAllRegisteredTags } from \"./CustomElementsRegistry.js\";\nimport { isRtlAware } from \"./locale/RTLAwareRegistry.js\";\nimport type UI5Element from \"./UI5Element.js\";\nimport { PromiseResolve, Timeout } from \"./types.js\";\n\ntype BeforeComponentRenderCallback = (webComponent: UI5Element) => void;\n\nconst registeredElements = new Set<UI5Element>();\nconst eventProvider = new EventProvider<UI5Element, void>();\n\nconst invalidatedWebComponents = new RenderQueue(); // Queue for invalidated web components\n\nlet renderTaskPromise: Promise<void> | undefined,\n\trenderTaskPromiseResolve: PromiseResolve | undefined;\n\nlet mutationObserverTimer: Timeout | undefined;\n\nlet queuePromise: Promise<void> | null;\n\n/**\n * Schedules a render task (if not already scheduled) to render the component\n *\n * @param webComponent\n * @returns {Promise}\n */\nconst renderDeferred = async (webComponent: UI5Element) => {\n\t// Enqueue the web component\n\tinvalidatedWebComponents.add(webComponent);\n\n\t// Schedule a rendering task\n\tawait scheduleRenderTask();\n};\n\n/**\n * Renders a component synchronously and adds it to the registry of rendered components\n *\n * @param webComponent\n */\nconst renderImmediately = (webComponent: UI5Element) => {\n\teventProvider.fireEvent(\"beforeComponentRender\", webComponent);\n\tregisteredElements.add(webComponent);\n\twebComponent._render();\n};\n\n/**\n * Cancels the rendering of a component, if awaiting to be rendered, and removes it from the registry of rendered components\n *\n * @param webComponent\n */\nconst cancelRender = (webComponent: UI5Element) => {\n\tinvalidatedWebComponents.remove(webComponent);\n\tregisteredElements.delete(webComponent);\n};\n\n/**\n * Schedules a rendering task, if not scheduled already\n */\nconst scheduleRenderTask = async () => {\n\tif (!queuePromise) {\n\t\tqueuePromise = new Promise<void>(resolve => {\n\t\t\twindow.requestAnimationFrame(() => {\n\t\t\t\t// Render all components in the queue\n\n\t\t\t\t// console.log(`--------------------RENDER TASK START------------------------------`); // eslint-disable-line\n\t\t\t\tinvalidatedWebComponents.process(renderImmediately);\n\t\t\t\t// console.log(`--------------------RENDER TASK END------------------------------`); // eslint-disable-line\n\n\t\t\t\t// Resolve the promise so that callers of renderDeferred can continue\n\t\t\t\tqueuePromise = null;\n\t\t\t\tresolve();\n\n\t\t\t\t// Wait for Mutation observer before the render task is considered finished\n\t\t\t\tif (!mutationObserverTimer) {\n\t\t\t\t\tmutationObserverTimer = setTimeout(() => {\n\t\t\t\t\t\tmutationObserverTimer = undefined;\n\t\t\t\t\t\tif (invalidatedWebComponents.isEmpty()) {\n\t\t\t\t\t\t\t_resolveTaskPromise();\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 200);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tawait queuePromise;\n};\n\n/**\n * return a promise that will be resolved once all invalidated web components are rendered\n */\nconst whenDOMUpdated = () => {\n\tif (renderTaskPromise) {\n\t\treturn renderTaskPromise;\n\t}\n\n\trenderTaskPromise = new Promise<void>(resolve => {\n\t\trenderTaskPromiseResolve = resolve;\n\t\twindow.requestAnimationFrame(() => {\n\t\t\tif (invalidatedWebComponents.isEmpty()) {\n\t\t\t\trenderTaskPromise = undefined;\n\t\t\t\tresolve();\n\t\t\t}\n\t\t});\n\t});\n\n\treturn renderTaskPromise;\n};\n\nconst whenAllCustomElementsAreDefined = () => {\n\tconst definedPromises = getAllRegisteredTags().map(tag => customElements.whenDefined(tag));\n\treturn Promise.all(definedPromises);\n};\n\nconst renderFinished = async () => {\n\tawait whenAllCustomElementsAreDefined();\n\tawait whenDOMUpdated();\n};\n\nconst _resolveTaskPromise = () => {\n\tif (!invalidatedWebComponents.isEmpty()) {\n\t\t// More updates are pending. Resolve will be called again\n\t\treturn;\n\t}\n\n\tif (renderTaskPromiseResolve) {\n\t\trenderTaskPromiseResolve();\n\t\trenderTaskPromiseResolve = undefined;\n\t\trenderTaskPromise = undefined;\n\t}\n};\n\n/**\n * Re-renders all UI5 Elements on the page, with the option to specify filters to rerender only some components.\n *\n * Usage:\n * reRenderAllUI5Elements() -> re-renders all components\n * reRenderAllUI5Elements({tag: \"ui5-button\"}) -> re-renders only instances of ui5-button\n * reRenderAllUI5Elements({rtlAware: true}) -> re-renders only rtlAware components\n * reRenderAllUI5Elements({languageAware: true}) -> re-renders only languageAware components\n * reRenderAllUI5Elements({themeAware: true}) -> re-renders only themeAware components\n * reRenderAllUI5Elements({rtlAware: true, languageAware: true}) -> re-renders components that are rtlAware or languageAware\n * etc...\n *\n * @public\n * @param {object|undefined} filters - Object with keys that can be \"rtlAware\" or \"languageAware\"\n * @returns {Promise<void>}\n */\nconst reRenderAllUI5Elements = async (filters?: {tag?: string, rtlAware?: boolean, languageAware?: boolean, themeAware?: boolean}) => {\n\tregisteredElements.forEach((element: UI5Element) => {\n\t\tconst ctor = element.constructor as typeof UI5Element;\n\t\tconst tag = ctor.getMetadata().getTag();\n\t\tconst rtlAware = isRtlAware(ctor);\n\t\tconst languageAware = ctor.getMetadata().isLanguageAware();\n\t\tconst themeAware = ctor.getMetadata().isThemeAware();\n\t\tif (!filters || (filters.tag === tag) || (filters.rtlAware && rtlAware) || (filters.languageAware && languageAware) || (filters.themeAware && themeAware)) {\n\t\t\trenderDeferred(element);\n\t\t}\n\t});\n\tawait renderFinished();\n};\n\nconst attachBeforeComponentRender = (listener: BeforeComponentRenderCallback) => {\n\teventProvider.attachEvent(\"beforeComponentRender\", listener);\n};\n\nconst detachBeforeComponentRender = (listener: BeforeComponentRenderCallback) => {\n\teventProvider.detachEvent(\"beforeComponentRender\", listener);\n};\n\nexport {\n\trenderDeferred,\n\trenderImmediately,\n\tcancelRender,\n\trenderFinished,\n\treRenderAllUI5Elements,\n\tattachBeforeComponentRender,\n\tdetachBeforeComponentRender,\n};\n"]}
@@ -0,0 +1,19 @@
1
+ import type UI5Element from "./UI5Element.js";
2
+ declare class RenderQueue {
3
+ list: Array<UI5Element>;
4
+ lookup: Set<UI5Element>;
5
+ constructor();
6
+ add(webComponent: UI5Element): void;
7
+ remove(webComponent: UI5Element): void;
8
+ shift(): UI5Element | undefined;
9
+ isEmpty(): boolean;
10
+ isAdded(webComponent: UI5Element): boolean;
11
+ /**
12
+ * Processes the whole queue by executing the callback on each component,
13
+ * while also imposing restrictions on how many times a component may be processed.
14
+ *
15
+ * @param callback - function with one argument (the web component to be processed)
16
+ */
17
+ process(callback: (el: UI5Element) => void): void;
18
+ }
19
+ export default RenderQueue;
@@ -1,42 +1,56 @@
1
+ const MAX_PROCESS_COUNT = 10;
1
2
  class RenderQueue {
2
- constructor() {
3
- this.list = []; // Used to store the web components in order
4
- this.promises = new Map(); // Used to store promises for web component rendering
5
- }
6
-
7
- add(webComponent) {
8
- if (this.promises.has(webComponent)) {
9
- return this.promises.get(webComponent);
10
- }
11
-
12
- let deferredResolve;
13
- const promise = new Promise(resolve => {
14
- deferredResolve = resolve;
15
- });
16
- promise._deferredResolve = deferredResolve;
17
-
18
- this.list.push(webComponent);
19
- this.promises.set(webComponent, promise);
20
-
21
- return promise;
22
- }
23
-
24
- shift() {
25
- const webComponent = this.list.shift();
26
- if (webComponent) {
27
- const promise = this.promises.get(webComponent);
28
- this.promises.delete(webComponent);
29
- return { webComponent, promise };
30
- }
31
- }
32
-
33
- getList() {
34
- return this.list;
35
- }
36
-
37
- isAdded(webComponent) {
38
- return this.promises.has(webComponent);
39
- }
3
+ constructor() {
4
+ this.list = []; // Used to store the web components in order
5
+ this.lookup = new Set(); // Used for faster search
6
+ }
7
+ add(webComponent) {
8
+ if (this.lookup.has(webComponent)) {
9
+ return;
10
+ }
11
+ this.list.push(webComponent);
12
+ this.lookup.add(webComponent);
13
+ }
14
+ remove(webComponent) {
15
+ if (!this.lookup.has(webComponent)) {
16
+ return;
17
+ }
18
+ this.list = this.list.filter(item => item !== webComponent);
19
+ this.lookup.delete(webComponent);
20
+ }
21
+ shift() {
22
+ const webComponent = this.list.shift();
23
+ if (webComponent) {
24
+ this.lookup.delete(webComponent);
25
+ return webComponent;
26
+ }
27
+ }
28
+ isEmpty() {
29
+ return this.list.length === 0;
30
+ }
31
+ isAdded(webComponent) {
32
+ return this.lookup.has(webComponent);
33
+ }
34
+ /**
35
+ * Processes the whole queue by executing the callback on each component,
36
+ * while also imposing restrictions on how many times a component may be processed.
37
+ *
38
+ * @param callback - function with one argument (the web component to be processed)
39
+ */
40
+ process(callback) {
41
+ let webComponent;
42
+ const stats = new Map();
43
+ webComponent = this.shift();
44
+ while (webComponent) {
45
+ const timesProcessed = stats.get(webComponent) || 0;
46
+ if (timesProcessed > MAX_PROCESS_COUNT) {
47
+ throw new Error(`Web component processed too many times this task, max allowed is: ${MAX_PROCESS_COUNT}`);
48
+ }
49
+ callback(webComponent);
50
+ stats.set(webComponent, timesProcessed + 1);
51
+ webComponent = this.shift();
52
+ }
53
+ }
40
54
  }
41
-
42
55
  export default RenderQueue;
56
+ //# sourceMappingURL=RenderQueue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderQueue.js","sourceRoot":"","sources":["../src/RenderQueue.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B,MAAM,WAAW;IAIhB;QACC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,4CAA4C;QAC5D,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,yBAAyB;IACnD,CAAC;IAED,GAAG,CAAC,YAAwB;QAC3B,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAClC,OAAO;SACP;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,YAAwB;QAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACnC,OAAO;SACP;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IAED,KAAK;QACJ,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACvC,IAAI,YAAY,EAAE;YACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACjC,OAAO,YAAY,CAAC;SACpB;IACF,CAAC;IAED,OAAO;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,CAAC,YAAwB;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,OAAO,CAAC,QAAkC;QACzC,IAAI,YAAY,CAAC;QACjB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;QAE5C,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAC5B,OAAO,YAAY,EAAE;YACpB,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,cAAc,GAAG,iBAAiB,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,qEAAqE,iBAAiB,EAAE,CAAC,CAAC;aAC1G;YACD,QAAQ,CAAC,YAAY,CAAC,CAAC;YACvB,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;YAC5C,YAAY,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;SAC5B;IACF,CAAC;CACD;AAED,eAAe,WAAW,CAAC","sourcesContent":["import type UI5Element from \"./UI5Element.js\";\n\nconst MAX_PROCESS_COUNT = 10;\n\nclass RenderQueue {\n\tlist: Array<UI5Element>;\n\tlookup: Set<UI5Element>;\n\n\tconstructor() {\n\t\tthis.list = []; // Used to store the web components in order\n\t\tthis.lookup = new Set(); // Used for faster search\n\t}\n\n\tadd(webComponent: UI5Element) {\n\t\tif (this.lookup.has(webComponent)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.list.push(webComponent);\n\t\tthis.lookup.add(webComponent);\n\t}\n\n\tremove(webComponent: UI5Element) {\n\t\tif (!this.lookup.has(webComponent)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.list = this.list.filter(item => item !== webComponent);\n\t\tthis.lookup.delete(webComponent);\n\t}\n\n\tshift() {\n\t\tconst webComponent = this.list.shift();\n\t\tif (webComponent) {\n\t\t\tthis.lookup.delete(webComponent);\n\t\t\treturn webComponent;\n\t\t}\n\t}\n\n\tisEmpty() {\n\t\treturn this.list.length === 0;\n\t}\n\n\tisAdded(webComponent: UI5Element) {\n\t\treturn this.lookup.has(webComponent);\n\t}\n\n\t/**\n\t * Processes the whole queue by executing the callback on each component,\n\t * while also imposing restrictions on how many times a component may be processed.\n\t *\n\t * @param callback - function with one argument (the web component to be processed)\n\t */\n\tprocess(callback: (el: UI5Element) => void) {\n\t\tlet webComponent;\n\t\tconst stats = new Map<UI5Element, number>();\n\n\t\twebComponent = this.shift();\n\t\twhile (webComponent) {\n\t\t\tconst timesProcessed = stats.get(webComponent) || 0;\n\t\t\tif (timesProcessed > MAX_PROCESS_COUNT) {\n\t\t\t\tthrow new Error(`Web component processed too many times this task, max allowed is: ${MAX_PROCESS_COUNT}`);\n\t\t\t}\n\t\t\tcallback(webComponent);\n\t\t\tstats.set(webComponent, timesProcessed + 1);\n\t\t\twebComponent = this.shift();\n\t\t}\n\t}\n}\n\nexport default RenderQueue;\n"]}
@@ -0,0 +1,27 @@
1
+ type RuntimeData = VersionInfo & {
2
+ alias: string;
3
+ description: string;
4
+ };
5
+ /**
6
+ * Registers the current runtime in the shared runtimes resource registry
7
+ */
8
+ declare const registerCurrentRuntime: () => void;
9
+ /**
10
+ * Returns the index of the current runtime's object in the shared runtimes resource registry
11
+ * @returns {*}
12
+ */
13
+ declare const getCurrentRuntimeIndex: () => number;
14
+ /**
15
+ * Compares two runtimes and returns 1 if the first is of a bigger version, -1 if the second is of a bigger version, and 0 if equal
16
+ * @param index1 The index of the first runtime to compare
17
+ * @param index2 The index of the second runtime to compare
18
+ * @returns {number}
19
+ */
20
+ declare const compareRuntimes: (index1: number, index2: number) => number;
21
+ /**
22
+ * Set an alias for the the current app/library/microfrontend which will appear in debug messages and console warnings
23
+ * @param alias
24
+ */
25
+ declare const setRuntimeAlias: (alias: string) => void;
26
+ declare const getAllRuntimes: () => RuntimeData[];
27
+ export { getCurrentRuntimeIndex, registerCurrentRuntime, compareRuntimes, setRuntimeAlias, getAllRuntimes, };
@@ -0,0 +1,86 @@
1
+ import VersionInfo from "./generated/VersionInfo.js";
2
+ import getSharedResource from "./getSharedResource.js";
3
+ let currentRuntimeIndex;
4
+ let currentRuntimeAlias = "";
5
+ const compareCache = new Map();
6
+ /**
7
+ * Central registry where all runtimes register themselves by pushing an object.
8
+ * The index in the registry servers as an ID for the runtime.
9
+ * @type {*}
10
+ */
11
+ const Runtimes = getSharedResource("Runtimes", []);
12
+ /**
13
+ * Registers the current runtime in the shared runtimes resource registry
14
+ */
15
+ const registerCurrentRuntime = () => {
16
+ if (currentRuntimeIndex === undefined) {
17
+ currentRuntimeIndex = Runtimes.length;
18
+ const versionInfo = VersionInfo;
19
+ Runtimes.push({
20
+ ...versionInfo,
21
+ alias: currentRuntimeAlias,
22
+ description: `Runtime ${currentRuntimeIndex} - ver ${versionInfo.version}${currentRuntimeAlias ? ` (${currentRuntimeAlias})` : ""}`,
23
+ });
24
+ }
25
+ };
26
+ /**
27
+ * Returns the index of the current runtime's object in the shared runtimes resource registry
28
+ * @returns {*}
29
+ */
30
+ const getCurrentRuntimeIndex = () => {
31
+ return currentRuntimeIndex;
32
+ };
33
+ /**
34
+ * Compares two runtimes and returns 1 if the first is of a bigger version, -1 if the second is of a bigger version, and 0 if equal
35
+ * @param index1 The index of the first runtime to compare
36
+ * @param index2 The index of the second runtime to compare
37
+ * @returns {number}
38
+ */
39
+ const compareRuntimes = (index1, index2) => {
40
+ const cacheIndex = `${index1},${index2}`;
41
+ if (compareCache.has(cacheIndex)) {
42
+ return compareCache.get(cacheIndex);
43
+ }
44
+ const runtime1 = Runtimes[index1];
45
+ const runtime2 = Runtimes[index2];
46
+ if (!runtime1 || !runtime2) {
47
+ throw new Error("Invalid runtime index supplied");
48
+ }
49
+ // If any of the two is a next version, bigger buildTime wins
50
+ if (runtime1.isNext || runtime2.isNext) {
51
+ return runtime1.buildTime - runtime2.buildTime;
52
+ }
53
+ // If major versions differ, bigger one wins
54
+ const majorDiff = runtime1.major - runtime2.major;
55
+ if (majorDiff) {
56
+ return majorDiff;
57
+ }
58
+ // If minor versions differ, bigger one wins
59
+ const minorDiff = runtime1.minor - runtime2.minor;
60
+ if (minorDiff) {
61
+ return minorDiff;
62
+ }
63
+ // If patch versions differ, bigger one wins
64
+ const patchDiff = runtime1.patch - runtime2.patch;
65
+ if (patchDiff) {
66
+ return patchDiff;
67
+ }
68
+ // Bigger suffix wins, f.e. rc10 > rc9
69
+ // Important: suffix is alphanumeric, must use natural compare
70
+ const collator = new Intl.Collator(undefined, { numeric: true, sensitivity: "base" });
71
+ const result = collator.compare(runtime1.suffix, runtime2.suffix);
72
+ compareCache.set(cacheIndex, result);
73
+ return result;
74
+ };
75
+ /**
76
+ * Set an alias for the the current app/library/microfrontend which will appear in debug messages and console warnings
77
+ * @param alias
78
+ */
79
+ const setRuntimeAlias = (alias) => {
80
+ currentRuntimeAlias = alias;
81
+ };
82
+ const getAllRuntimes = () => {
83
+ return Runtimes;
84
+ };
85
+ export { getCurrentRuntimeIndex, registerCurrentRuntime, compareRuntimes, setRuntimeAlias, getAllRuntimes, };
86
+ //# sourceMappingURL=Runtimes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Runtimes.js","sourceRoot":"","sources":["../src/Runtimes.ts"],"names":[],"mappings":"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","sourcesContent":["import VersionInfo from \"./generated/VersionInfo.js\";\nimport getSharedResource from \"./getSharedResource.js\";\n\ntype RuntimeData = VersionInfo & {\n\talias: string,\n\tdescription: string,\n};\n\nlet currentRuntimeIndex: number;\nlet currentRuntimeAlias = \"\";\n\nconst compareCache = new Map<string, number>();\n\n/**\n * Central registry where all runtimes register themselves by pushing an object.\n * The index in the registry servers as an ID for the runtime.\n * @type {*}\n */\nconst Runtimes = getSharedResource<Array<RuntimeData>>(\"Runtimes\", []);\n\n/**\n * Registers the current runtime in the shared runtimes resource registry\n */\nconst registerCurrentRuntime = () => {\n\tif (currentRuntimeIndex === undefined) {\n\t\tcurrentRuntimeIndex = Runtimes.length;\n\t\tconst versionInfo = VersionInfo;\n\n\t\tRuntimes.push({\n\t\t\t...versionInfo,\n\t\t\talias: currentRuntimeAlias,\n\t\t\tdescription: `Runtime ${currentRuntimeIndex} - ver ${versionInfo.version}${currentRuntimeAlias ? ` (${currentRuntimeAlias})` : \"\"}`,\n\t\t});\n\t}\n};\n\n/**\n * Returns the index of the current runtime's object in the shared runtimes resource registry\n * @returns {*}\n */\nconst getCurrentRuntimeIndex = () => {\n\treturn currentRuntimeIndex;\n};\n\n/**\n * Compares two runtimes and returns 1 if the first is of a bigger version, -1 if the second is of a bigger version, and 0 if equal\n * @param index1 The index of the first runtime to compare\n * @param index2 The index of the second runtime to compare\n * @returns {number}\n */\nconst compareRuntimes = (index1: number, index2: number) => {\n\tconst cacheIndex = `${index1},${index2}`;\n\tif (compareCache.has(cacheIndex)) {\n\t\treturn compareCache.get(cacheIndex)!;\n\t}\n\n\tconst runtime1 = Runtimes[index1];\n\tconst runtime2 = Runtimes[index2];\n\n\tif (!runtime1 || !runtime2) {\n\t\tthrow new Error(\"Invalid runtime index supplied\");\n\t}\n\n\t// If any of the two is a next version, bigger buildTime wins\n\tif (runtime1.isNext || runtime2.isNext) {\n\t\treturn runtime1.buildTime - runtime2.buildTime;\n\t}\n\n\t// If major versions differ, bigger one wins\n\tconst majorDiff = runtime1.major - runtime2.major;\n\tif (majorDiff) {\n\t\treturn majorDiff;\n\t}\n\n\t// If minor versions differ, bigger one wins\n\tconst minorDiff = runtime1.minor - runtime2.minor;\n\tif (minorDiff) {\n\t\treturn minorDiff;\n\t}\n\n\t// If patch versions differ, bigger one wins\n\tconst patchDiff = runtime1.patch - runtime2.patch;\n\tif (patchDiff) {\n\t\treturn patchDiff;\n\t}\n\n\t// Bigger suffix wins, f.e. rc10 > rc9\n\t// Important: suffix is alphanumeric, must use natural compare\n\tconst collator = new Intl.Collator(undefined, { numeric: true, sensitivity: \"base\" });\n\tconst result = collator.compare(runtime1.suffix, runtime2.suffix);\n\n\tcompareCache.set(cacheIndex, result);\n\treturn result;\n};\n\n/**\n * Set an alias for the the current app/library/microfrontend which will appear in debug messages and console warnings\n * @param alias\n */\nconst setRuntimeAlias = (alias: string) => {\n\tcurrentRuntimeAlias = alias;\n};\n\nconst getAllRuntimes = () => {\n\treturn Runtimes;\n};\n\nexport {\n\tgetCurrentRuntimeIndex,\n\tregisterCurrentRuntime,\n\tcompareRuntimes,\n\tsetRuntimeAlias,\n\tgetAllRuntimes,\n};\n"]}
@@ -0,0 +1,3 @@
1
+ declare class StaticArea extends HTMLElement {
2
+ }
3
+ export default StaticArea;
@@ -1,41 +1,7 @@
1
- const getStaticAreaInstance = () => {
2
- let staticArea = document.querySelector("ui5-static-area");
3
-
4
- if (staticArea) {
5
- return staticArea;
6
- }
7
-
8
- // Create static area if it is not present
9
- const bodyElement = document.body;
10
- staticArea = document.createElement("ui5-static-area");
11
-
12
- return bodyElement.insertBefore(staticArea, bodyElement.firstChild);
13
- };
14
-
15
- const removeStaticArea = () => {
16
- getStaticAreaInstance().destroy();
17
- };
18
-
19
- class StaticAreaElement extends HTMLElement {
20
- constructor() {
21
- super();
22
- }
23
-
24
- get isUI5Element() {
25
- return true;
26
- }
27
-
28
- destroy() {
29
- const staticAreaDomRef = document.querySelector(this.tagName.toLowerCase());
30
- staticAreaDomRef.parentElement.removeChild(staticAreaDomRef);
31
- }
1
+ class StaticArea extends HTMLElement {
32
2
  }
33
-
34
3
  if (!customElements.get("ui5-static-area")) {
35
- customElements.define("ui5-static-area", StaticAreaElement);
4
+ customElements.define("ui5-static-area", StaticArea);
36
5
  }
37
-
38
- export {
39
- getStaticAreaInstance,
40
- removeStaticArea,
41
- };
6
+ export default StaticArea;
7
+ //# sourceMappingURL=StaticArea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticArea.js","sourceRoot":"","sources":["../src/StaticArea.ts"],"names":[],"mappings":"AAAA,MAAM,UAAW,SAAQ,WAAW;CAAG;AAEvC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;IAC3C,cAAc,CAAC,MAAM,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;CACrD;AAED,eAAe,UAAU,CAAC","sourcesContent":["class StaticArea extends HTMLElement {}\n\nif (!customElements.get(\"ui5-static-area\")) {\n\tcustomElements.define(\"ui5-static-area\", StaticArea);\n}\n\nexport default StaticArea;\n"]}
@@ -0,0 +1,35 @@
1
+ import "./StaticArea.js";
2
+ import type UI5Element from "./UI5Element.js";
3
+ /**
4
+ * @class
5
+ * @private
6
+ */
7
+ declare class StaticAreaItem extends HTMLElement {
8
+ _rendered: boolean;
9
+ ownerElement?: UI5Element;
10
+ constructor();
11
+ /**
12
+ * @param ownerElement the UI5Element instance that owns this static area item
13
+ */
14
+ setOwnerElement(ownerElement: UI5Element): void;
15
+ /**
16
+ * Updates the shadow root of the static area item with the latest state, if rendered
17
+ */
18
+ update(): void;
19
+ updateAdditionalProperties(): void;
20
+ /**
21
+ * Sets the correct content density based on the owner element's state
22
+ * @private
23
+ */
24
+ _updateContentDensity(): void;
25
+ _updateDirection(): void;
26
+ _updateAdditionalAttrs(): void;
27
+ /**
28
+ * Returns reference to the DOM element where the current fragment is added.
29
+ * @protected
30
+ */
31
+ getDomRef(): Promise<ShadowRoot | null>;
32
+ static getTag(): string;
33
+ static createInstance(): StaticAreaItem;
34
+ }
35
+ export default StaticAreaItem;
@@ -1,90 +1,100 @@
1
- import { getStaticAreaInstance, removeStaticArea } from "./StaticArea.js";
2
-
1
+ import "./StaticArea.js";
2
+ import updateShadowRoot from "./updateShadowRoot.js";
3
+ import { renderFinished } from "./Render.js";
4
+ import getEffectiveContentDensity from "./util/getEffectiveContentDensity.js";
5
+ import { getEffectiveScopingSuffixForTag } from "./CustomElementsScopeUtils.js";
6
+ import getEffectiveDir from "./locale/getEffectiveDir.js";
7
+ const pureTagName = "ui5-static-area-item";
8
+ const popupIntegrationAttr = "data-sap-ui-integration-popup-content";
3
9
  /**
4
10
  * @class
5
- * @author SAP SE
6
11
  * @private
7
- * Defines and takes care of ui5-static-are-item items
8
12
  */
9
- class StaticAreaItem {
10
- constructor(_ui5ElementContext) {
11
- this.ui5ElementContext = _ui5ElementContext;
12
- }
13
-
14
- /**
15
- * @protected
16
- */
17
- _updateFragment() {
18
- const renderResult = this.ui5ElementContext.constructor.staticAreaTemplate(this.ui5ElementContext),
19
- stylesToAdd = this.ui5ElementContext.constructor.staticAreaStyles || false;
20
-
21
- if (!this.staticAreaItemDomRef) {
22
- // Initial rendering of fragment
23
-
24
- this.staticAreaItemDomRef = document.createElement("ui5-static-area-item");
25
- this.staticAreaItemDomRef.attachShadow({ mode: "open" });
26
- this.staticAreaItemDomRef.classList.add(this.ui5ElementContext._id); // used for getting the popover in the tests
27
-
28
- getStaticAreaInstance().appendChild(this.staticAreaItemDomRef);
29
- }
30
-
31
- this.ui5ElementContext.constructor.render(renderResult, this.staticAreaItemDomRef.shadowRoot, stylesToAdd, { eventContext: this.ui5ElementContext });
32
- }
33
-
34
- /**
35
- * @protected
36
- */
37
- _removeFragmentFromStaticArea() {
38
- const staticArea = getStaticAreaInstance();
39
-
40
- staticArea.removeChild(this.staticAreaItemDomRef);
41
-
42
- this.staticAreaItemDomRef = null;
43
-
44
- // remove static area
45
- if (staticArea.childElementCount < 1) {
46
- removeStaticArea();
47
- }
48
- }
49
-
50
- /**
51
- * @protected
52
- */
53
- _updateContentDensity(isCompact) {
54
- if (!this.staticAreaItemDomRef) {
55
- return;
56
- }
57
-
58
- if (isCompact) {
59
- this.staticAreaItemDomRef.classList.add("sapUiSizeCompact");
60
- this.staticAreaItemDomRef.classList.add("ui5-content-density-compact");
61
- } else {
62
- this.staticAreaItemDomRef.classList.remove("sapUiSizeCompact");
63
- this.staticAreaItemDomRef.classList.remove("ui5-content-density-compact");
64
- }
65
- }
66
-
67
- /**
68
- * @protected
69
- * Returns reference to the DOM element where the current fragment is added.
70
- */
71
- getDomRef() {
72
- return this.staticAreaItemDomRef.shadowRoot;
73
- }
13
+ class StaticAreaItem extends HTMLElement {
14
+ constructor() {
15
+ super();
16
+ this._rendered = false;
17
+ this.attachShadow({ mode: "open" });
18
+ }
19
+ /**
20
+ * @param ownerElement the UI5Element instance that owns this static area item
21
+ */
22
+ setOwnerElement(ownerElement) {
23
+ this.ownerElement = ownerElement;
24
+ this.classList.add(this.ownerElement._id); // used for getting the popover in the tests
25
+ if (this.ownerElement.hasAttribute("data-ui5-static-stable")) {
26
+ this.setAttribute("data-ui5-stable", this.ownerElement.getAttribute("data-ui5-static-stable")); // stable selector
27
+ }
28
+ }
29
+ /**
30
+ * Updates the shadow root of the static area item with the latest state, if rendered
31
+ */
32
+ update() {
33
+ if (this._rendered) {
34
+ this.updateAdditionalProperties();
35
+ updateShadowRoot(this.ownerElement, true);
36
+ }
37
+ }
38
+ updateAdditionalProperties() {
39
+ this._updateAdditionalAttrs();
40
+ this._updateContentDensity();
41
+ this._updateDirection();
42
+ }
43
+ /**
44
+ * Sets the correct content density based on the owner element's state
45
+ * @private
46
+ */
47
+ _updateContentDensity() {
48
+ if (getEffectiveContentDensity(this.ownerElement) === "compact") {
49
+ this.classList.add("sapUiSizeCompact");
50
+ this.classList.add("ui5-content-density-compact");
51
+ }
52
+ else {
53
+ this.classList.remove("sapUiSizeCompact");
54
+ this.classList.remove("ui5-content-density-compact");
55
+ }
56
+ }
57
+ _updateDirection() {
58
+ if (this.ownerElement) {
59
+ const dir = getEffectiveDir(this.ownerElement);
60
+ if (dir) {
61
+ this.setAttribute("dir", dir);
62
+ }
63
+ else {
64
+ this.removeAttribute("dir");
65
+ }
66
+ }
67
+ }
68
+ _updateAdditionalAttrs() {
69
+ this.setAttribute(pureTagName, "");
70
+ this.setAttribute(popupIntegrationAttr, "");
71
+ }
72
+ /**
73
+ * Returns reference to the DOM element where the current fragment is added.
74
+ * @protected
75
+ */
76
+ async getDomRef() {
77
+ this.updateAdditionalProperties();
78
+ if (!this._rendered) {
79
+ this._rendered = true;
80
+ updateShadowRoot(this.ownerElement, true);
81
+ }
82
+ await renderFinished(); // Wait for the content of the ui5-static-area-item to be rendered
83
+ return this.shadowRoot;
84
+ }
85
+ static getTag() {
86
+ const suffix = getEffectiveScopingSuffixForTag(pureTagName);
87
+ if (!suffix) {
88
+ return pureTagName;
89
+ }
90
+ return `${pureTagName}-${suffix}`;
91
+ }
92
+ static createInstance() {
93
+ if (!customElements.get(StaticAreaItem.getTag())) {
94
+ customElements.define(StaticAreaItem.getTag(), StaticAreaItem);
95
+ }
96
+ return document.createElement(this.getTag());
97
+ }
74
98
  }
75
-
76
- class StaticAreaItemElement extends HTMLElement {
77
- constructor() {
78
- super();
79
- }
80
-
81
- get isUI5Element() {
82
- return true;
83
- }
84
- }
85
-
86
- if (!customElements.get("ui5-static-area-item")) {
87
- customElements.define("ui5-static-area-item", StaticAreaItemElement);
88
- }
89
-
90
99
  export default StaticAreaItem;
100
+ //# sourceMappingURL=StaticAreaItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticAreaItem.js","sourceRoot":"","sources":["../src/StaticAreaItem.ts"],"names":[],"mappings":"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","sourcesContent":["import \"./StaticArea.js\";\nimport updateShadowRoot from \"./updateShadowRoot.js\";\nimport { renderFinished } from \"./Render.js\";\nimport getEffectiveContentDensity from \"./util/getEffectiveContentDensity.js\";\nimport { getEffectiveScopingSuffixForTag } from \"./CustomElementsScopeUtils.js\";\nimport getEffectiveDir from \"./locale/getEffectiveDir.js\";\nimport type UI5Element from \"./UI5Element.js\";\n\nconst pureTagName = \"ui5-static-area-item\";\nconst popupIntegrationAttr = \"data-sap-ui-integration-popup-content\";\n\n/**\n * @class\n * @private\n */\nclass StaticAreaItem extends HTMLElement {\n\t_rendered: boolean;\n\townerElement?: UI5Element;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis._rendered = false;\n\t\tthis.attachShadow({ mode: \"open\" });\n\t}\n\n\t/**\n\t * @param ownerElement the UI5Element instance that owns this static area item\n\t */\n\tsetOwnerElement(ownerElement: UI5Element) {\n\t\tthis.ownerElement = ownerElement;\n\t\tthis.classList.add(this.ownerElement._id); // used for getting the popover in the tests\n\t\tif (this.ownerElement.hasAttribute(\"data-ui5-static-stable\")) {\n\t\t\tthis.setAttribute(\"data-ui5-stable\", this.ownerElement.getAttribute(\"data-ui5-static-stable\")!); // stable selector\n\t\t}\n\t}\n\n\t/**\n\t * Updates the shadow root of the static area item with the latest state, if rendered\n\t */\n\tupdate() {\n\t\tif (this._rendered) {\n\t\t\tthis.updateAdditionalProperties();\n\t\t\tupdateShadowRoot(this.ownerElement!, true);\n\t\t}\n\t}\n\n\tupdateAdditionalProperties() {\n\t\tthis._updateAdditionalAttrs();\n\t\tthis._updateContentDensity();\n\t\tthis._updateDirection();\n\t}\n\n\t/**\n\t * Sets the correct content density based on the owner element's state\n\t * @private\n\t */\n\t_updateContentDensity() {\n\t\tif (getEffectiveContentDensity(this.ownerElement!) === \"compact\") {\n\t\t\tthis.classList.add(\"sapUiSizeCompact\");\n\t\t\tthis.classList.add(\"ui5-content-density-compact\");\n\t\t} else {\n\t\t\tthis.classList.remove(\"sapUiSizeCompact\");\n\t\t\tthis.classList.remove(\"ui5-content-density-compact\");\n\t\t}\n\t}\n\n\t_updateDirection() {\n\t\tif (this.ownerElement) {\n\t\t\tconst dir = getEffectiveDir(this.ownerElement);\n\t\t\tif (dir) {\n\t\t\t\tthis.setAttribute(\"dir\", dir);\n\t\t\t} else {\n\t\t\t\tthis.removeAttribute(\"dir\");\n\t\t\t}\n\t\t}\n\t}\n\n\t_updateAdditionalAttrs() {\n\t\tthis.setAttribute(pureTagName, \"\");\n\t\tthis.setAttribute(popupIntegrationAttr, \"\");\n\t}\n\n\t/**\n\t * Returns reference to the DOM element where the current fragment is added.\n\t * @protected\n\t */\n\tasync getDomRef() {\n\t\tthis.updateAdditionalProperties();\n\t\tif (!this._rendered) {\n\t\t\tthis._rendered = true;\n\t\t\tupdateShadowRoot(this.ownerElement!, true);\n\t\t}\n\t\tawait renderFinished(); // Wait for the content of the ui5-static-area-item to be rendered\n\t\treturn this.shadowRoot;\n\t}\n\n\tstatic getTag() {\n\t\tconst suffix = getEffectiveScopingSuffixForTag(pureTagName);\n\t\tif (!suffix) {\n\t\t\treturn pureTagName;\n\t\t}\n\n\t\treturn `${pureTagName}-${suffix}`;\n\t}\n\n\tstatic createInstance() {\n\t\tif (!customElements.get(StaticAreaItem.getTag())) {\n\t\t\tcustomElements.define(StaticAreaItem.getTag(), StaticAreaItem);\n\t\t}\n\n\t\treturn document.createElement(this.getTag()) as StaticAreaItem;\n\t}\n}\n\nexport default StaticAreaItem;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const insertSystemCSSVars: () => void;
2
+ export default insertSystemCSSVars;
@@ -0,0 +1,9 @@
1
+ import { hasStyle, createStyle } from "./ManagedStyles.js";
2
+ import systemCSSVars from "./generated/css/SystemCSSVars.css.js";
3
+ const insertSystemCSSVars = () => {
4
+ if (!hasStyle("data-ui5-system-css-vars")) {
5
+ createStyle(systemCSSVars, "data-ui5-system-css-vars");
6
+ }
7
+ };
8
+ export default insertSystemCSSVars;
9
+ //# sourceMappingURL=SystemCSSVars.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SystemCSSVars.js","sourceRoot":"","sources":["../src/SystemCSSVars.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,aAAa,MAAM,sCAAsC,CAAC;AAEjE,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE;QAC1C,WAAW,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAAC;KACvD;AACF,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC","sourcesContent":["import { hasStyle, createStyle } from \"./ManagedStyles.js\";\nimport systemCSSVars from \"./generated/css/SystemCSSVars.css.js\";\n\nconst insertSystemCSSVars = () => {\n\tif (!hasStyle(\"data-ui5-system-css-vars\")) {\n\t\tcreateStyle(systemCSSVars, \"data-ui5-system-css-vars\");\n\t}\n};\n\nexport default insertSystemCSSVars;\n"]}
@@ -0,0 +1,3 @@
1
+ import { addCustomCSS } from "./theming/CustomStyle.js";
2
+ import { attachThemeLoaded, detachThemeLoaded } from "./theming/ThemeLoaded.js";
3
+ export { addCustomCSS, attachThemeLoaded, detachThemeLoaded };