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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/.eslintignore +4 -4
  2. package/.eslintrc.cjs +3 -0
  3. package/.npsrc.json +3 -0
  4. package/CHANGELOG.md +229 -0
  5. package/README.md +4 -0
  6. package/bundle.esm.js +8 -1
  7. package/config/wdio.conf.cjs +400 -0
  8. package/dist/AssetRegistry.js.map +1 -1
  9. package/dist/Boot.d.ts +4 -3
  10. package/dist/Boot.js +31 -4
  11. package/dist/Boot.js.map +1 -1
  12. package/dist/CSP.js.map +1 -1
  13. package/dist/CustomElementsRegistry.js.map +1 -1
  14. package/dist/CustomElementsScope.js.map +1 -1
  15. package/dist/CustomElementsScopeUtils.js.map +1 -1
  16. package/dist/DOMObserver.js.map +1 -1
  17. package/dist/Device.js +109 -34
  18. package/dist/Device.js.map +1 -1
  19. package/dist/EventProvider.js +1 -1
  20. package/dist/EventProvider.js.map +1 -1
  21. package/dist/FeaturesRegistry.js.map +1 -1
  22. package/dist/FontFace.js.map +1 -1
  23. package/dist/IgnoreCustomElements.d.ts +27 -0
  24. package/dist/IgnoreCustomElements.js +39 -0
  25. package/dist/IgnoreCustomElements.js.map +1 -0
  26. package/dist/InitialConfiguration.d.ts +6 -1
  27. package/dist/InitialConfiguration.js +11 -2
  28. package/dist/InitialConfiguration.js.map +1 -1
  29. package/dist/Keys.js.map +1 -1
  30. package/dist/ManagedStyles.js +9 -2
  31. package/dist/ManagedStyles.js.map +1 -1
  32. package/dist/MarkedEvents.js.map +1 -1
  33. package/dist/MediaRange.js.map +1 -1
  34. package/dist/PropertiesFileFormat.js.map +1 -1
  35. package/dist/Render.js.map +1 -1
  36. package/dist/RenderQueue.js.map +1 -1
  37. package/dist/Runtimes.js.map +1 -1
  38. package/dist/StaticArea.d.ts +3 -0
  39. package/dist/StaticArea.js +4 -3
  40. package/dist/StaticArea.js.map +1 -1
  41. package/dist/StaticAreaItem.js +3 -0
  42. package/dist/StaticAreaItem.js.map +1 -1
  43. package/dist/SystemCSSVars.js.map +1 -1
  44. package/dist/Theming.js.map +1 -1
  45. package/dist/UI5Element.d.ts +20 -14
  46. package/dist/UI5Element.js +24 -24
  47. package/dist/UI5Element.js.map +1 -1
  48. package/dist/UI5ElementMetadata.js.map +1 -1
  49. package/dist/animations/AnimationQueue.js.map +1 -1
  50. package/dist/animations/animate.js.map +1 -1
  51. package/dist/animations/scroll.js.map +1 -1
  52. package/dist/animations/slideDown.js.map +1 -1
  53. package/dist/animations/slideUp.js.map +1 -1
  54. package/dist/api.json +1 -1
  55. package/dist/asset-registries/Icons.d.ts +18 -10
  56. package/dist/asset-registries/Icons.js +44 -23
  57. package/dist/asset-registries/Icons.js.map +1 -1
  58. package/dist/asset-registries/Illustrations.d.ts +1 -1
  59. package/dist/asset-registries/Illustrations.js.map +1 -1
  60. package/dist/asset-registries/LocaleData.js.map +1 -1
  61. package/dist/asset-registries/Themes.d.ts +1 -0
  62. package/dist/asset-registries/Themes.js +2 -0
  63. package/dist/asset-registries/Themes.js.map +1 -1
  64. package/dist/asset-registries/i18n.js +9 -3
  65. package/dist/asset-registries/i18n.js.map +1 -1
  66. package/dist/assets/Boot.1ee7a8e7.js +9 -0
  67. package/dist/assets/Boot.34b7cea0.css +1 -0
  68. package/dist/assets/bundle.esm.40f75059.js +50 -0
  69. package/dist/assets-meta/IconCollectionsAlias.d.ts +24 -10
  70. package/dist/assets-meta/IconCollectionsAlias.js +29 -9
  71. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -1
  72. package/dist/config/AnimationMode.d.ts +2 -2
  73. package/dist/config/AnimationMode.js +1 -1
  74. package/dist/config/AnimationMode.js.map +1 -1
  75. package/dist/config/CalendarType.js.map +1 -1
  76. package/dist/config/FormatSettings.d.ts +5 -1
  77. package/dist/config/FormatSettings.js +5 -1
  78. package/dist/config/FormatSettings.js.map +1 -1
  79. package/dist/config/Icons.d.ts +43 -18
  80. package/dist/config/Icons.js +81 -26
  81. package/dist/config/Icons.js.map +1 -1
  82. package/dist/config/Language.d.ts +10 -1
  83. package/dist/config/Language.js +13 -1
  84. package/dist/config/Language.js.map +1 -1
  85. package/dist/config/NoConflict.js +1 -0
  86. package/dist/config/NoConflict.js.map +1 -1
  87. package/dist/config/RTL.js +3 -0
  88. package/dist/config/RTL.js.map +1 -1
  89. package/dist/config/Theme.d.ts +15 -5
  90. package/dist/config/Theme.js +25 -6
  91. package/dist/config/Theme.js.map +1 -1
  92. package/dist/config/ThemeRoot.d.ts +29 -0
  93. package/dist/config/ThemeRoot.js +59 -0
  94. package/dist/config/ThemeRoot.js.map +1 -0
  95. package/dist/config/Timezone.d.ts +17 -0
  96. package/dist/config/Timezone.js +30 -0
  97. package/dist/config/Timezone.js.map +1 -0
  98. package/dist/decorators/customElement.d.ts +17 -2
  99. package/dist/decorators/customElement.js +26 -5
  100. package/dist/decorators/customElement.js.map +1 -1
  101. package/dist/decorators/event.js +6 -6
  102. package/dist/decorators/event.js.map +1 -1
  103. package/dist/decorators/property.js +6 -6
  104. package/dist/decorators/property.js.map +1 -1
  105. package/dist/decorators/slot.js +9 -9
  106. package/dist/decorators/slot.js.map +1 -1
  107. package/dist/delegate/ItemNavigation.js.map +1 -1
  108. package/dist/delegate/ResizeHandler.d.ts +2 -1
  109. package/dist/delegate/ResizeHandler.js +7 -3
  110. package/dist/delegate/ResizeHandler.js.map +1 -1
  111. package/dist/delegate/ScrollEnablement.js.map +1 -1
  112. package/dist/features/F6Navigation.d.ts +3 -0
  113. package/dist/features/F6Navigation.js +77 -38
  114. package/dist/features/F6Navigation.js.map +1 -1
  115. package/dist/features/LegacyDateFormats.d.ts +18 -0
  116. package/dist/features/LegacyDateFormats.js +20 -0
  117. package/dist/features/LegacyDateFormats.js.map +1 -0
  118. package/dist/features/OpenUI5Element.js.map +1 -1
  119. package/dist/features/OpenUI5Enablement.js.map +1 -1
  120. package/dist/features/OpenUI5Support.d.ts +3 -0
  121. package/dist/features/OpenUI5Support.js +2 -0
  122. package/dist/features/OpenUI5Support.js.map +1 -1
  123. package/dist/generated/AssetParameters.js +2 -0
  124. package/dist/generated/VersionInfo.js +3 -3
  125. package/dist/generated/css/BusyIndicator.css.js.map +1 -1
  126. package/dist/generated/css/FontFace.css.js.map +1 -1
  127. package/dist/generated/css/OverrideFontFace.css.js.map +1 -1
  128. package/dist/generated/css/SystemCSSVars.css.js.map +1 -1
  129. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  130. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +8 -10
  131. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  132. package/dist/getSharedResource.d.ts +1 -1
  133. package/dist/getSharedResource.js +16 -2
  134. package/dist/getSharedResource.js.map +1 -1
  135. package/dist/global.d.ts +2 -0
  136. package/dist/i18nBundle.js +2 -1
  137. package/dist/i18nBundle.js.map +1 -1
  138. package/dist/locale/Locale.js.map +1 -1
  139. package/dist/locale/RTLAwareRegistry.d.ts +1 -1
  140. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  141. package/dist/locale/applyDirection.js.map +1 -1
  142. package/dist/locale/directionChange.js.map +1 -1
  143. package/dist/locale/getEffectiveDir.js.map +1 -1
  144. package/dist/locale/getLocale.js.map +1 -1
  145. package/dist/locale/languageChange.js.map +1 -1
  146. package/dist/locale/nextFallbackLocale.js.map +1 -1
  147. package/dist/locale/normalizeLocale.js.map +1 -1
  148. package/dist/renderer/LitRenderer.d.ts +3 -3
  149. package/dist/renderer/LitRenderer.js.map +1 -1
  150. package/dist/renderer/executeTemplate.js +1 -1
  151. package/dist/renderer/executeTemplate.js.map +1 -1
  152. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  153. package/dist/theming/CustomStyle.js +7 -5
  154. package/dist/theming/CustomStyle.js.map +1 -1
  155. package/dist/theming/ThemeLoaded.js.map +1 -1
  156. package/dist/theming/ThemeRegistered.d.ts +4 -0
  157. package/dist/theming/ThemeRegistered.js +11 -0
  158. package/dist/theming/ThemeRegistered.js.map +1 -0
  159. package/dist/theming/applyTheme.js +3 -2
  160. package/dist/theming/applyTheme.js.map +1 -1
  161. package/dist/theming/getConstructableStyle.js.map +1 -1
  162. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -1
  163. package/dist/theming/getEffectiveStyle.js.map +1 -1
  164. package/dist/theming/getStylesString.d.ts +1 -1
  165. package/dist/theming/getStylesString.js.map +1 -1
  166. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  167. package/dist/theming/preloadLinks.js.map +1 -1
  168. package/dist/thirdparty/_merge.js.map +1 -1
  169. package/dist/thirdparty/isPlainObject.js.map +1 -1
  170. package/dist/thirdparty/merge.js.map +1 -1
  171. package/dist/types/AnimationMode.d.ts +1 -1
  172. package/dist/types/AnimationMode.js +1 -1
  173. package/dist/types/AnimationMode.js.map +1 -1
  174. package/dist/types/CSSColor.d.ts +0 -1
  175. package/dist/types/CSSColor.js +0 -1
  176. package/dist/types/CSSColor.js.map +1 -1
  177. package/dist/types/CalendarType.d.ts +1 -1
  178. package/dist/types/CalendarType.js +1 -1
  179. package/dist/types/CalendarType.js.map +1 -1
  180. package/dist/types/DOMReference.js.map +1 -1
  181. package/dist/types/DataType.js.map +1 -1
  182. package/dist/types/Float.d.ts +0 -1
  183. package/dist/types/Float.js +0 -1
  184. package/dist/types/Float.js.map +1 -1
  185. package/dist/types/Integer.d.ts +0 -1
  186. package/dist/types/Integer.js +0 -1
  187. package/dist/types/Integer.js.map +1 -1
  188. package/dist/types/InvisibleMessageMode.d.ts +1 -1
  189. package/dist/types/InvisibleMessageMode.js +1 -1
  190. package/dist/types/InvisibleMessageMode.js.map +1 -1
  191. package/dist/types/ItemNavigationBehavior.d.ts +1 -1
  192. package/dist/types/ItemNavigationBehavior.js +1 -1
  193. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  194. package/dist/types/NavigationMode.d.ts +1 -1
  195. package/dist/types/NavigationMode.js +1 -1
  196. package/dist/types/NavigationMode.js.map +1 -1
  197. package/dist/types/ValueState.d.ts +1 -1
  198. package/dist/types/ValueState.js +1 -1
  199. package/dist/types/ValueState.js.map +1 -1
  200. package/dist/types.d.ts +1 -1
  201. package/dist/types.js.map +1 -1
  202. package/dist/updateShadowRoot.js +11 -4
  203. package/dist/updateShadowRoot.js.map +1 -1
  204. package/dist/util/AriaLabelHelper.d.ts +10 -1
  205. package/dist/util/AriaLabelHelper.js +135 -8
  206. package/dist/util/AriaLabelHelper.js.map +1 -1
  207. package/dist/util/Caret.js.map +1 -1
  208. package/dist/util/ColorConversion.js.map +1 -1
  209. package/dist/util/FetchHelper.js.map +1 -1
  210. package/dist/util/FocusableElements.js +4 -3
  211. package/dist/util/FocusableElements.js.map +1 -1
  212. package/dist/util/HTMLSanitizer.js.map +1 -1
  213. package/dist/util/InvisibleMessage.d.ts +1 -1
  214. package/dist/util/InvisibleMessage.js.map +1 -1
  215. package/dist/util/PopupUtils.js.map +1 -1
  216. package/dist/util/SlotsHelper.js.map +1 -1
  217. package/dist/util/StringHelper.js.map +1 -1
  218. package/dist/util/TabbableElements.js.map +1 -1
  219. package/dist/util/arraysAreEqual.js.map +1 -1
  220. package/dist/util/clamp.js.map +1 -1
  221. package/dist/util/createLinkInHead.js.map +1 -1
  222. package/dist/util/createStyleInHead.js.map +1 -1
  223. package/dist/util/debounce.js.map +1 -1
  224. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  225. package/dist/util/escapeRegex.js.map +1 -1
  226. package/dist/util/formatMessage.js.map +1 -1
  227. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  228. package/dist/util/getActiveElement.js.map +1 -1
  229. package/dist/util/getClassCopy.d.ts +9 -9
  230. package/dist/util/getClassCopy.js.map +1 -1
  231. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  232. package/dist/util/getEffectiveContentDensity.js.map +1 -1
  233. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -1
  234. package/dist/util/getFastNavigationGroups.js.map +1 -1
  235. package/dist/util/getFileExtension.js.map +1 -1
  236. package/dist/util/getNormalizedTarget.js.map +1 -1
  237. package/dist/util/getSingletonElementInstance.d.ts +10 -1
  238. package/dist/util/getSingletonElementInstance.js +11 -2
  239. package/dist/util/getSingletonElementInstance.js.map +1 -1
  240. package/dist/util/isElementClickable.js.map +1 -1
  241. package/dist/util/isElementHidden.js.map +1 -1
  242. package/dist/util/isElementInView.js.map +1 -1
  243. package/dist/util/isElementTabbable.js.map +1 -1
  244. package/dist/util/isValidPropertyName.js.map +1 -1
  245. package/dist/util/whenDOMReady.js.map +1 -1
  246. package/dist/util/willShowContent.js.map +1 -1
  247. package/dist/validateThemeRoot.js +14 -13
  248. package/dist/validateThemeRoot.js.map +1 -1
  249. package/index.js +227 -1
  250. package/lib/generate-asset-parameters/index.js +4 -2
  251. package/lib/generate-styles/index.js +3 -3
  252. package/lib/generate-version-info/index.js +1 -1
  253. package/{package-scripts.js → package-scripts.cjs} +9 -5
  254. package/package.json +5 -4
  255. package/tsconfig.json +1 -0
  256. package/config/wdio.conf.js +0 -1
  257. package/dist/assets/bundle.esm.5c683084.js +0 -56
  258. package/dist/config/ThemeRoots.d.ts +0 -4
  259. package/dist/config/ThemeRoots.js +0 -28
  260. package/dist/config/ThemeRoots.js.map +0 -1
  261. package/dist/decorators/fastNavigation.d.ts +0 -7
  262. package/dist/decorators/fastNavigation.js +0 -13
  263. package/dist/decorators/fastNavigation.js.map +0 -1
  264. package/dist/decorators/languageAware.d.ts +0 -7
  265. package/dist/decorators/languageAware.js +0 -13
  266. package/dist/decorators/languageAware.js.map +0 -1
  267. package/dist/decorators/themeAware.d.ts +0 -7
  268. package/dist/decorators/themeAware.js +0 -13
  269. package/dist/decorators/themeAware.js.map +0 -1
  270. package/src/AssetRegistry.ts +0 -11
  271. package/src/Boot.ts +0 -61
  272. package/src/CSP.ts +0 -66
  273. package/src/CustomElementsRegistry.ts +0 -98
  274. package/src/CustomElementsScope.ts +0 -33
  275. package/src/CustomElementsScopeUtils.ts +0 -115
  276. package/src/DOMObserver.ts +0 -28
  277. package/src/Device.ts +0 -124
  278. package/src/EventProvider.ts +0 -87
  279. package/src/FeaturesRegistry.ts +0 -14
  280. package/src/FontFace.ts +0 -31
  281. package/src/InitialConfiguration.ts +0 -207
  282. package/src/Keys.ts +0 -295
  283. package/src/ManagedStyles.ts +0 -92
  284. package/src/MarkedEvents.ts +0 -20
  285. package/src/MediaRange.ts +0 -110
  286. package/src/PropertiesFileFormat.ts +0 -95
  287. package/src/Render.ts +0 -180
  288. package/src/RenderQueue.ts +0 -71
  289. package/src/Runtimes.ts +0 -114
  290. package/src/StaticArea.ts +0 -3
  291. package/src/StaticAreaItem.ts +0 -113
  292. package/src/SystemCSSVars.ts +0 -10
  293. package/src/Theming.ts +0 -4
  294. package/src/UI5Element.ts +0 -1156
  295. package/src/UI5ElementMetadata.ts +0 -389
  296. package/src/animations/AnimationQueue.ts +0 -43
  297. package/src/animations/animate.ts +0 -64
  298. package/src/animations/scroll.ts +0 -21
  299. package/src/animations/slideDown.ts +0 -72
  300. package/src/animations/slideUp.ts +0 -67
  301. package/src/asset-registries/Icons.ts +0 -162
  302. package/src/asset-registries/Illustrations.ts +0 -75
  303. package/src/asset-registries/LocaleData.ts +0 -172
  304. package/src/asset-registries/Themes.ts +0 -67
  305. package/src/asset-registries/i18n.ts +0 -118
  306. package/src/assets-meta/IconCollectionsAlias.ts +0 -18
  307. package/src/config/AnimationMode.ts +0 -33
  308. package/src/config/CalendarType.ts +0 -23
  309. package/src/config/FormatSettings.ts +0 -21
  310. package/src/config/Icons.ts +0 -59
  311. package/src/config/Language.ts +0 -72
  312. package/src/config/NoConflict.ts +0 -67
  313. package/src/config/RTL.ts +0 -41
  314. package/src/config/Theme.ts +0 -64
  315. package/src/config/ThemeRoots.ts +0 -41
  316. package/src/decorators/customElement.ts +0 -17
  317. package/src/decorators/event.ts +0 -28
  318. package/src/decorators/fastNavigation.ts +0 -14
  319. package/src/decorators/languageAware.ts +0 -14
  320. package/src/decorators/property.ts +0 -30
  321. package/src/decorators/slot.ts +0 -49
  322. package/src/decorators/themeAware.ts +0 -14
  323. package/src/delegate/ItemNavigation.ts +0 -393
  324. package/src/delegate/ResizeHandler.ts +0 -95
  325. package/src/delegate/ScrollEnablement.ts +0 -224
  326. package/src/features/F6Navigation.ts +0 -141
  327. package/src/features/OpenUI5Element.ts +0 -11
  328. package/src/features/OpenUI5Enablement.ts +0 -117
  329. package/src/features/OpenUI5Support.ts +0 -148
  330. package/src/generated/css/BusyIndicator.css.ts +0 -9
  331. package/src/generated/css/FontFace.css.ts +0 -9
  332. package/src/generated/css/OverrideFontFace.css.ts +0 -9
  333. package/src/generated/css/SystemCSSVars.css.ts +0 -9
  334. package/src/getSharedResource.ts +0 -30
  335. package/src/global.d.ts +0 -38
  336. package/src/i18nBundle.ts +0 -108
  337. package/src/locale/Locale.ts +0 -101
  338. package/src/locale/RTLAwareRegistry.ts +0 -16
  339. package/src/locale/applyDirection.ts +0 -18
  340. package/src/locale/directionChange.ts +0 -34
  341. package/src/locale/getEffectiveDir.ts +0 -28
  342. package/src/locale/getLocale.ts +0 -46
  343. package/src/locale/languageChange.ts +0 -24
  344. package/src/locale/nextFallbackLocale.ts +0 -28
  345. package/src/locale/normalizeLocale.ts +0 -56
  346. package/src/renderer/LitRenderer.ts +0 -60
  347. package/src/renderer/executeTemplate.ts +0 -40
  348. package/src/theming/CustomStyle.ts +0 -62
  349. package/src/theming/ThemeLoaded.ts +0 -24
  350. package/src/theming/applyTheme.ts +0 -90
  351. package/src/theming/getConstructableStyle.ts +0 -31
  352. package/src/theming/getEffectiveLinksHrefs.ts +0 -26
  353. package/src/theming/getEffectiveStyle.ts +0 -41
  354. package/src/theming/getStylesString.ts +0 -15
  355. package/src/theming/getThemeDesignerTheme.ts +0 -101
  356. package/src/theming/preloadLinks.ts +0 -24
  357. package/src/thirdparty/_merge.ts +0 -32
  358. package/src/thirdparty/isPlainObject.ts +0 -18
  359. package/src/thirdparty/merge.ts +0 -5
  360. package/src/types/AnimationMode.ts +0 -33
  361. package/src/types/CSSColor.ts +0 -20
  362. package/src/types/CalendarType.ts +0 -38
  363. package/src/types/DOMReference.ts +0 -28
  364. package/src/types/DataType.ts +0 -51
  365. package/src/types/Float.ts +0 -25
  366. package/src/types/Integer.ts +0 -25
  367. package/src/types/InvisibleMessageMode.ts +0 -27
  368. package/src/types/ItemNavigationBehavior.ts +0 -26
  369. package/src/types/NavigationMode.ts +0 -33
  370. package/src/types/ValueState.ts +0 -47
  371. package/src/types.ts +0 -30
  372. package/src/updateShadowRoot.ts +0 -37
  373. package/src/util/AriaLabelHelper.ts +0 -63
  374. package/src/util/Caret.ts +0 -28
  375. package/src/util/ColorConversion.ts +0 -399
  376. package/src/util/FetchHelper.ts +0 -31
  377. package/src/util/FocusableElements.ts +0 -92
  378. package/src/util/HTMLSanitizer.ts +0 -9
  379. package/src/util/InvisibleMessage.ts +0 -69
  380. package/src/util/PopupUtils.ts +0 -112
  381. package/src/util/SlotsHelper.ts +0 -39
  382. package/src/util/StringHelper.ts +0 -26
  383. package/src/util/TabbableElements.ts +0 -70
  384. package/src/util/arraysAreEqual.ts +0 -15
  385. package/src/util/clamp.ts +0 -12
  386. package/src/util/createLinkInHead.ts +0 -25
  387. package/src/util/createStyleInHead.ts +0 -20
  388. package/src/util/debounce.ts +0 -18
  389. package/src/util/detectNavigatorLanguage.ts +0 -13
  390. package/src/util/escapeRegex.ts +0 -11
  391. package/src/util/formatMessage.ts +0 -24
  392. package/src/util/generateHighlightedMarkup.ts +0 -43
  393. package/src/util/getActiveElement.ts +0 -11
  394. package/src/util/getClassCopy.ts +0 -12
  395. package/src/util/getDesigntimePropertyAsArray.ts +0 -4
  396. package/src/util/getEffectiveContentDensity.ts +0 -5
  397. package/src/util/getEffectiveScrollbarStyle.ts +0 -5
  398. package/src/util/getFastNavigationGroups.ts +0 -63
  399. package/src/util/getFileExtension.ts +0 -21
  400. package/src/util/getNormalizedTarget.ts +0 -16
  401. package/src/util/getSingletonElementInstance.ts +0 -13
  402. package/src/util/isElementClickable.ts +0 -19
  403. package/src/util/isElementHidden.ts +0 -9
  404. package/src/util/isElementInView.ts +0 -15
  405. package/src/util/isElementTabbable.ts +0 -37
  406. package/src/util/isValidPropertyName.ts +0 -29
  407. package/src/util/whenDOMReady.ts +0 -13
  408. package/src/util/willShowContent.ts +0 -7
  409. package/src/validateThemeRoot.ts +0 -58
@@ -1 +1 @@
1
- {"version":3,"file":"MarkedEvents.js","sourceRoot":"","sources":["../src/MarkedEvents.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,IAAI,OAAO,EAAiB,CAAC;AAElD;;GAEG;AACH,MAAM,SAAS,GAAG,CAAC,KAAY,EAAE,KAAa,EAAE,EAAE;IACjD,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,YAAY,GAAG,CAAC,KAAY,EAAsB,EAAE;IACzD,OAAO,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,OAAO,EACN,SAAS,EACT,YAAY,GACZ,CAAC"}
1
+ {"version":3,"file":"MarkedEvents.js","sourceRoot":"","sources":["../src/MarkedEvents.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,IAAI,OAAO,EAAiB,CAAC;AAElD;;GAEG;AACH,MAAM,SAAS,GAAG,CAAC,KAAY,EAAE,KAAa,EAAE,EAAE;IACjD,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,YAAY,GAAG,CAAC,KAAY,EAAsB,EAAE;IACzD,OAAO,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,OAAO,EACN,SAAS,EACT,YAAY,GACZ,CAAC","sourcesContent":["const markedEvents = new WeakMap<Event, string>();\n\n/**\n * Marks the given event with random marker.\n */\nconst markEvent = (event: Event, value: string) => {\n\tmarkedEvents.set(event, value);\n};\n\n/**\n * Returns the marker for the given event.\n */\nconst getEventMark = (event: Event): string | undefined => {\n\treturn markedEvents.get(event);\n};\n\nexport {\n\tmarkEvent,\n\tgetEventMark,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaRange.js","sourceRoot":"","sources":["../src/MediaRange.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAC;AAE7C,MAAM,iBAAiB,GAAU,IAAI,GAAG,EAAyB,CAAC;AAClE,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AACrC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AACxC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AACzC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE9C;;;;;;GAMG;AACF,IAAK,SAgBL;AAhBA,WAAK,SAAS;IACd;;;;;;;;;;;;;OAaG;IACH,mCAAsB,CAAA;AACvB,CAAC,EAhBK,SAAS,KAAT,SAAS,QAgBd;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAY,EAAE,EAAE;IACnD,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,KAAK,GAAG,MAAM,CAAC,UAAU,EAAU,EAAE;IAC3E,IAAI,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,CAAC,QAAQ,EAAE;QACd,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAE,CAAC;KACpD;IAED,IAAI,gBAAgB,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEzC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC/B,IAAI,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;YAC7D,gBAAgB,GAAG,GAAG,CAAC;SACvB;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;GAKG;AAEH,MAAM,UAAU,GAAG;IAClB,SAAS;IACT,YAAY;IACZ,eAAe;CACf,CAAC;AAEF,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;AAE9E,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"MediaRange.js","sourceRoot":"","sources":["../src/MediaRange.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAC;AAE7C,MAAM,iBAAiB,GAAU,IAAI,GAAG,EAAyB,CAAC;AAClE,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AACrC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AACxC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AACzC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE9C;;;;;;GAMG;AACF,IAAK,SAgBL;AAhBA,WAAK,SAAS;IACd;;;;;;;;;;;;;OAaG;IACH,mCAAsB,CAAA;AACvB,CAAC,EAhBK,SAAS,KAAT,SAAS,QAgBd;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAY,EAAE,EAAE;IACnD,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,KAAK,GAAG,MAAM,CAAC,UAAU,EAAU,EAAE;IAC3E,IAAI,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,CAAC,QAAQ,EAAE;QACd,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAE,CAAC;KACpD;IAED,IAAI,gBAAgB,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEzC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC/B,IAAI,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;YAC7D,gBAAgB,GAAG,GAAG,CAAC;SACvB;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;GAKG;AAEH,MAAM,UAAU,GAAG;IAClB,SAAS;IACT,YAAY;IACZ,eAAe;CACf,CAAC;AAEF,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;AAE9E,eAAe,UAAU,CAAC","sourcesContent":["type Range = Map<string, Array<number>>;\n\nconst mediaRanges = new Map<string, Range>();\n\nconst DEAFULT_RANGE_SET: Range = new Map<string, Array<number>>();\nDEAFULT_RANGE_SET.set(\"S\", [0, 599]);\nDEAFULT_RANGE_SET.set(\"M\", [600, 1023]);\nDEAFULT_RANGE_SET.set(\"L\", [1024, 1439]);\nDEAFULT_RANGE_SET.set(\"XL\", [1440, Infinity]);\n\n/**\n * Enumeration containing the names and settings of predefined screen width media query range sets.\n *\n * @namespace\n * @name MediaRange.RANGESETS\n * @public\n */\n enum RANGESETS {\n\t/**\n\t * A 4-step range set (S-M-L-XL).\n\t *\n\t * The ranges of this set are:\n\t * <ul>\n\t * <li><code>\"S\"</code>: For screens smaller than 600 pixels.</li>\n\t * <li><code>\"M\"</code>: For screens greater than or equal to 600 pixels and smaller than 1024 pixels.</li>\n\t * <li><code>\"L\"</code>: For screens greater than or equal to 1024 pixels and smaller than 1440 pixels.</li>\n\t * <li><code>\"XL\"</code>: For screens greater than or equal to 1440 pixels.</li>\n\t * </ul>\n\t *\n\t * @name MediaRange.RANGESETS.RANGE_4STEPS\n\t * @public\n\t */\n\tRANGE_4STEPS = \"4Step\",\n}\n\n/**\n * Initializes a screen width media query range set.\n *\n * This initialization step makes the range set ready to be used for one of the other functions in namespace <code>MediaRange</code>.\n *\n * A range set can be defined as shown in the following example:\n * <pre>\n * MediaRange.initRangeSet(\"MyRangeSet\", [200, 400], [\"Small\", \"Medium\", \"Large\"]);\n * </pre>\n * This example defines the following named ranges:\n * <ul>\n * <li><code>\"Small\"</code>: For screens smaller than 200 pixels.</li>\n * <li><code>\"Medium\"</code>: For screens greater than or equal to 200 pixels and smaller than 400 pixels.</li>\n * <li><code>\"Large\"</code>: For screens greater than or equal to 400 pixels.</li>\n * </ul>\n *\n * @param {string} name The name of the range set to be initialized.\n * The name must be a valid id and consist only of letters and numeric digits.\n * @param {Range} [range] The given range set.\n * @name MediaRange.initRangeSet\n */\nconst initRangeSet = (name: string, range: Range) => {\n\tmediaRanges.set(name, range);\n};\n\n/**\n * Returns information about the current active range of the range set with the given name.\n *\n * If the optional parameter <code>width</code> is given, the active range will be determined for that width,\n * otherwise it is determined for the current window size.\n *\n * @param {string} name The name of the range set. The range set must be initialized beforehand ({@link MediaRange.initRangeSet})\n * @param {number} [width] An optional width, based on which the range should be determined;\n * If <code>width</code> is not provided, the window size will be used.\n * @returns {string} The name of the current active interval of the range set.\n *\n * @name MediaRange.getCurrentRange\n * @function\n * @public\n */\nconst getCurrentRange = (name: string, width = window.innerWidth): string => {\n\tlet rangeSet = mediaRanges.get(name);\n\n\tif (!rangeSet) {\n\t\trangeSet = mediaRanges.get(RANGESETS.RANGE_4STEPS)!;\n\t}\n\n\tlet currentRangeName;\n\tconst effectiveWidth = Math.floor(width);\n\n\trangeSet.forEach((value, key) => {\n\t\tif (effectiveWidth >= value[0] && effectiveWidth <= value[1]) {\n\t\t\tcurrentRangeName = key;\n\t\t}\n\t});\n\n\treturn currentRangeName || [...rangeSet.keys()][0];\n};\n\n/**\n * API for screen width changes.\n *\n * @namespace\n * @name MediaRange\n */\n\nconst MediaRange = {\n\tRANGESETS,\n\tinitRangeSet,\n\tgetCurrentRange,\n};\n\nMediaRange.initRangeSet(MediaRange.RANGESETS.RANGE_4STEPS, DEAFULT_RANGE_SET);\n\nexport default MediaRange;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"PropertiesFileFormat.js","sourceRoot":"","sources":["../src/PropertiesFileFormat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PropertiesFileFormat.js","sourceRoot":"","sources":["../src/PropertiesFileFormat.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAS,EAAE,UAAkB,EAAE,EAAE;IACtH,IAAI,UAAU,GAAG,CAAC,IAAI,EAAE,GAAG,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE;QACjD,MAAM,CAAC,CAAC,CAAC,CAAC;KACV;IACD,OAAO,CAAC,CAAC;AACV,CAAC,CAAC,CAAC,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC;AAErB,MAAM,MAAM,GAAG,0BAA0B,CAAC;AAC1C,MAAM,mBAAmB,GAAG,gEAAgE,CAAC;AAC7F,MAAM,QAAQ,GAAG,oCAAoC,CAAC;AACtD,MAAM,QAAQ,GAAG;IAChB,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;CACX,CAAC;AAEF;;;;;GAKG;AACH,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE;IACzC,MAAM,UAAU,GAAG,EAAE,EACpB,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE9B,IAAI,KAAK,EACR,QAAQ,EACR,IAAI,EACJ,MAAc,EACd,CAAC,EACD,CAAC,EACD,UAAU,EACV,UAAkB,CAAC;IAEpB,MAAM,MAAM,GAAG,CAAC,CAAS,EAAE,EAAE;QAC5B,IAAI,MAAM,EAAE;YACX,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,UAAU,EAAE,CAAC;SACb;aAAM;YACN,MAAM,GAAG,CAAC,CAAC;YACX,UAAU,GAAG,CAAC,CAAC;SACf;IACF,CAAC,CAAC;IAEF,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACnC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAClB,MAAM,QAAQ,GAAG,KAAK,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;QAEpF,IAAI,CAAC,QAAQ,EAAE;YACd,QAAQ,GAAG,mBAAmB,CAAC;YAC/B,UAAU,GAAG,CAAC,CAAC;YACf,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC;YAChC,IAAI,GAAG,IAAI,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC;YACZ,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO,CAAC,KAAK,IAAI,EAAE;gBAClB,IAAI,UAAU,GAAG,CAAC,CAAC,KAAK,EAAE;oBACzB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;iBACzC;gBACD,UAAU,GAAG,QAAQ,CAAC,SAAS,CAAC;gBAChC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;oBACT,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;wBACtB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;qBACvD;oBACD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;iBACzD;qBAAM,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;oBAChB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAA0B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBACjE;qBAAM,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;oBAChB,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;oBACpB,UAAU,GAAG,CAAC,CAAC;oBACf,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC;iBAChC;qBAAM,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;oBAChB,IAAI,GAAG,MAAM,CAAC;oBACd,MAAM,GAAG,EAAE,CAAC;oBACZ,QAAQ,GAAG,QAAQ,CAAC;oBACpB,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC;iBAChC;gBACD,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACzB;YACD,IAAI,UAAU,GAAG,KAAK,CAAC,MAAM,EAAE;gBAC9B,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;aAChC;YACD,IAAI,IAAI,IAAI,IAAI,EAAE;gBACjB,IAAI,GAAG,MAAM,CAAC;gBACd,MAAM,GAAG,EAAE,CAAC;aACZ;YACA,UAAkC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,UAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtF;KACD;IACD,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["const flatstr = typeof window.chrome === \"object\" || typeof window.v8 === \"object\" ? (s: string, iConcatOps: number) => {\n\tif (iConcatOps > 2 && 40 * iConcatOps > s.length) {\n\t\tNumber(s);\n\t}\n\treturn s;\n} : (s: string) => s;\n\nconst rLines = /(?:\\r\\n|\\r|\\n|^)[ \\t\\f]*/;\nconst rEscapesOrSeparator = /(\\\\u[0-9a-fA-F]{0,4})|(\\\\.)|(\\\\$)|([ \\t\\f]*[ \\t\\f:=][ \\t\\f]*)/g;\nconst rEscapes = /(\\\\u[0-9a-fA-F]{0,4})|(\\\\.)|(\\\\$)/g;\nconst mEscapes = {\n\t\"\\\\f\": \"\\f\",\n\t\"\\\\n\": \"\\n\",\n\t\"\\\\r\": \"\\r\",\n\t\"\\\\t\": \"\\t\",\n};\n\n/**\n * Parses a .properties format\n * @param {string} sText the contents a of a .properties file\n * @returns a object with key/value pairs parsed from the .properties file format\n * @public\n */\nconst parseProperties = (sText: string) => {\n\tconst properties = {},\n\t\taLines = sText.split(rLines);\n\n\tlet sLine,\n\t\trMatcher,\n\t\tsKey,\n\t\tsValue: string,\n\t\ti,\n\t\tm,\n\t\tiLastIndex,\n\t\tiConcatOps: number;\n\n\tconst append = (s: string) => {\n\t\tif (sValue) {\n\t\t\tsValue = `${sValue}${s}`;\n\t\t\tiConcatOps++;\n\t\t} else {\n\t\t\tsValue = s;\n\t\t\tiConcatOps = 0;\n\t\t}\n\t};\n\n\tfor (i = 0; i < aLines.length; i++) {\n\t\tsLine = aLines[i];\n\t\tconst skipLine = sLine === \"\" || sLine.charAt(0) === \"#\" || sLine.charAt(0) === \"!\";\n\n\t\tif (!skipLine) {\n\t\t\trMatcher = rEscapesOrSeparator;\n\t\t\tiLastIndex = 0;\n\t\t\trMatcher.lastIndex = iLastIndex;\n\t\t\tsKey = null;\n\t\t\tsValue = \"\";\n\t\t\tm = rMatcher.exec(sLine);\n\t\t\twhile (m !== null) {\n\t\t\t\tif (iLastIndex < m.index) {\n\t\t\t\t\tappend(sLine.slice(iLastIndex, m.index));\n\t\t\t\t}\n\t\t\t\tiLastIndex = rMatcher.lastIndex;\n\t\t\t\tif (m[1]) {\n\t\t\t\t\tif (m[1].length !== 6) {\n\t\t\t\t\t\tthrow new Error(`Incomplete Unicode Escape '${m[1]}'`);\n\t\t\t\t\t}\n\t\t\t\t\tappend(String.fromCharCode(parseInt(m[1].slice(2), 16)));\n\t\t\t\t} else if (m[2]) {\n\t\t\t\t\tappend(mEscapes[m[2] as keyof typeof mEscapes] || m[2].slice(1));\n\t\t\t\t} else if (m[3]) {\n\t\t\t\t\tsLine = aLines[++i];\n\t\t\t\t\tiLastIndex = 0;\n\t\t\t\t\trMatcher.lastIndex = iLastIndex;\n\t\t\t\t} else if (m[4]) {\n\t\t\t\t\tsKey = sValue;\n\t\t\t\t\tsValue = \"\";\n\t\t\t\t\trMatcher = rEscapes;\n\t\t\t\t\trMatcher.lastIndex = iLastIndex;\n\t\t\t\t}\n\t\t\t\tm = rMatcher.exec(sLine);\n\t\t\t}\n\t\t\tif (iLastIndex < sLine.length) {\n\t\t\t\tappend(sLine.slice(iLastIndex));\n\t\t\t}\n\t\t\tif (sKey == null) {\n\t\t\t\tsKey = sValue;\n\t\t\t\tsValue = \"\";\n\t\t\t}\n\t\t\t(properties as Record<string, any>)[sKey] = flatstr(sValue, sValue ? iConcatOps! : 0);\n\t\t}\n\t}\n\treturn properties;\n};\n\nexport default parseProperties;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Render.js","sourceRoot":"","sources":["../src/Render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Render.js","sourceRoot":"","sources":["../src/Render.ts"],"names":[],"mappings":"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","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"]}
@@ -1 +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"}
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"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Runtimes.js","sourceRoot":"","sources":["../src/Runtimes.ts"],"names":[],"mappings":"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"}
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,6 +1,7 @@
1
- "use strict";
1
+ class StaticArea extends HTMLElement {
2
+ }
2
3
  if (!customElements.get("ui5-static-area")) {
3
- customElements.define("ui5-static-area", class extends HTMLElement {
4
- });
4
+ customElements.define("ui5-static-area", StaticArea);
5
5
  }
6
+ export default StaticArea;
6
7
  //# sourceMappingURL=StaticArea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StaticArea.js","sourceRoot":"","sources":["../src/StaticArea.ts"],"names":[],"mappings":";AAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;IAC3C,cAAc,CAAC,MAAM,CAAC,iBAAiB,EAAE,KAAM,SAAQ,WAAW;KAAG,CAAC,CAAC;CACvE"}
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"]}
@@ -4,6 +4,7 @@ import { renderFinished } from "./Render.js";
4
4
  import getEffectiveContentDensity from "./util/getEffectiveContentDensity.js";
5
5
  import { getEffectiveScopingSuffixForTag } from "./CustomElementsScopeUtils.js";
6
6
  import getEffectiveDir from "./locale/getEffectiveDir.js";
7
+ import { getCurrentRuntimeIndex } from "./Runtimes.js";
7
8
  const pureTagName = "ui5-static-area-item";
8
9
  const popupIntegrationAttr = "data-sap-ui-integration-popup-content";
9
10
  /**
@@ -65,6 +66,8 @@ class StaticAreaItem extends HTMLElement {
65
66
  }
66
67
  }
67
68
  _updateAdditionalAttrs() {
69
+ this.setAttribute(`_ui5rt${getCurrentRuntimeIndex()}`, "");
70
+ this.setAttribute("_ui5host", "");
68
71
  this.setAttribute(pureTagName, "");
69
72
  this.setAttribute(popupIntegrationAttr, "");
70
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StaticAreaItem.js","sourceRoot":"","sources":["../src/StaticAreaItem.ts"],"names":[],"mappings":"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"}
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\";\nimport { getCurrentRuntimeIndex } from \"./Runtimes.js\";\n\nconst pureTagName = \"ui5-static-area-item\";\nconst popupIntegrationAttr = \"data-sap-ui-integration-popup-content\";\n\n/**\n *\n * @class\n * @author SAP SE\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 {UI5Element} 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._updateAdditionalAttrs();\n\t\t\tthis._updateContentDensity();\n\t\t\tthis._updateDirection();\n\t\t\tupdateShadowRoot(this.ownerElement!, true);\n\t\t}\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(`_ui5rt${getCurrentRuntimeIndex()}`, \"\");\n\t\tthis.setAttribute(\"_ui5host\", \"\");\n\t\tthis.setAttribute(pureTagName, \"\");\n\t\tthis.setAttribute(popupIntegrationAttr, \"\");\n\t}\n\n\t/**\n\t * @protected\n\t * Returns reference to the DOM element where the current fragment is added.\n\t */\n\tasync getDomRef() {\n\t\tthis._updateContentDensity();\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"]}
@@ -1 +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"}
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"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Theming.js","sourceRoot":"","sources":["../src/Theming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"Theming.js","sourceRoot":"","sources":["../src/Theming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,CAAC","sourcesContent":["import { addCustomCSS } from \"./theming/CustomStyle.js\";\nimport { attachThemeLoaded, detachThemeLoaded } from \"./theming/ThemeLoaded.js\";\n\nexport { addCustomCSS, attachThemeLoaded, detachThemeLoaded };\n"]}
@@ -1,8 +1,16 @@
1
1
  import UI5ElementMetadata, { Slot, SlotValue, State, PropertyValue, Metadata } from "./UI5ElementMetadata.js";
2
2
  import EventProvider from "./EventProvider.js";
3
3
  import StaticAreaItem from "./StaticAreaItem.js";
4
- import { TemplateFunction, TemplateFunctionResult } from "./renderer/executeTemplate.js";
5
- import { PromiseResolve, ComponentStylesData, ClassMap } from "./types.js";
4
+ import type { TemplateFunction, TemplateFunctionResult } from "./renderer/executeTemplate.js";
5
+ import type { PromiseResolve, ComponentStylesData, ClassMap } from "./types.js";
6
+ type Renderer = (templateResult: TemplateFunctionResult, container: HTMLElement | DocumentFragment, styleStrOrHrefsArr: string | Array<string> | undefined, forStaticArea: boolean, options: RendererOptions) => void;
7
+ type RendererOptions = {
8
+ /**
9
+ * An object to use as the `this` value for event listeners. It's often
10
+ * useful to set this to the host component rendering a template.
11
+ */
12
+ host?: object;
13
+ };
6
14
  type ChangeInfo = {
7
15
  type: "property" | "slot";
8
16
  name: string;
@@ -47,9 +55,11 @@ declare abstract class UI5Element extends HTMLElement {
47
55
  static template?: TemplateFunction;
48
56
  static staticAreaTemplate?: TemplateFunction;
49
57
  static _metadata: UI5ElementMetadata;
50
- static render: (templateFunctionResult: TemplateFunctionResult, container: HTMLElement | DocumentFragment, styleStrOrHrefsArr: string | Array<string> | undefined, forStaticArea: boolean, options: {
51
- host: HTMLElement;
52
- }) => void;
58
+ /**
59
+ * @deprecated
60
+ */
61
+ static render: Renderer;
62
+ static renderer?: Renderer;
53
63
  constructor();
54
64
  /**
55
65
  * Returns a unique ID for this UI5 Element
@@ -58,6 +68,8 @@ declare abstract class UI5Element extends HTMLElement {
58
68
  * @protected
59
69
  */
60
70
  get _id(): string;
71
+ render(): object;
72
+ renderStatic(): object;
61
73
  /**
62
74
  * Do not call this method from derivatives of UI5Element, use "onEnterDOM" only
63
75
  * @private
@@ -265,7 +277,7 @@ declare abstract class UI5Element extends HTMLElement {
265
277
  * Useful when there are transitive slots in nested component scenarios and you don't want to get a list of the slots, but rather of their content.
266
278
  * @public
267
279
  */
268
- getSlottedNodes(slotName: string): Node[];
280
+ getSlottedNodes<T = Node>(slotName: string): T[];
269
281
  /**
270
282
  * Determines whether the component should be rendered in RTL mode or not.
271
283
  * Returns: "rtl", "ltr" or undefined
@@ -306,12 +318,7 @@ declare abstract class UI5Element extends HTMLElement {
306
318
  * Returns the metadata object for this UI5 Web Component Class
307
319
  * @protected
308
320
  */
309
- static get metadata(): Metadata;
310
- /**
311
- * Sets a new metadata object for this UI5 Web Component Class
312
- * @protected
313
- */
314
- static set metadata(newMetadata: Metadata);
321
+ static metadata: Metadata;
315
322
  /**
316
323
  * Returns the CSS for this UI5 Web Component Class
317
324
  * @protected
@@ -362,7 +369,6 @@ declare abstract class UI5Element extends HTMLElement {
362
369
  * @returns {UI5ElementMetadata}
363
370
  */
364
371
  static getMetadata(): UI5ElementMetadata;
365
- static decoratorMetadata: Metadata;
366
372
  }
367
373
  /**
368
374
  * Always use duck-typing to cover all runtimes on the page.
@@ -371,4 +377,4 @@ declare abstract class UI5Element extends HTMLElement {
371
377
  declare const instanceOfUI5Element: (object: any) => object is UI5Element;
372
378
  export default UI5Element;
373
379
  export { instanceOfUI5Element };
374
- export type { ChangeInfo };
380
+ export type { ChangeInfo, Renderer, RendererOptions, };
@@ -5,6 +5,7 @@ import EventProvider from "./EventProvider.js";
5
5
  import getSingletonElementInstance from "./util/getSingletonElementInstance.js";
6
6
  import StaticAreaItem from "./StaticAreaItem.js";
7
7
  import updateShadowRoot from "./updateShadowRoot.js";
8
+ import { shouldIgnoreCustomElement } from "./IgnoreCustomElements.js";
8
9
  import { renderDeferred, renderImmediately, cancelRender } from "./Render.js";
9
10
  import { registerTag, isTagRegistered, recordTagRegistrationFailure } from "./CustomElementsRegistry.js";
10
11
  import { observeDOMNode, unobserveDOMNode } from "./DOMObserver.js";
@@ -16,6 +17,8 @@ import { getSlotName, getSlottedNodesList } from "./util/SlotsHelper.js";
16
17
  import arraysAreEqual from "./util/arraysAreEqual.js";
17
18
  import { markAsRtlAware } from "./locale/RTLAwareRegistry.js";
18
19
  import preloadLinks from "./theming/preloadLinks.js";
20
+ import executeTemplate from "./renderer/executeTemplate.js";
21
+ import { getCurrentRuntimeIndex } from "./Runtimes.js";
19
22
  let autoId = 0;
20
23
  const elementTimeouts = new Map();
21
24
  const uniqueDependenciesCache = new Map();
@@ -36,7 +39,6 @@ function _invalidate(changeInfo) {
36
39
  renderDeferred(this);
37
40
  this._eventProvider.fireEvent("invalidate", { ...changeInfo, target: this });
38
41
  }
39
- let metadata = {};
40
42
  /**
41
43
  * Base class for all UI5 Web Components
42
44
  *
@@ -82,12 +84,22 @@ class UI5Element extends HTMLElement {
82
84
  }
83
85
  return this.__id;
84
86
  }
87
+ render() {
88
+ const template = this.constructor.template;
89
+ return executeTemplate(template, this);
90
+ }
91
+ renderStatic() {
92
+ const template = this.constructor.staticAreaTemplate;
93
+ return executeTemplate(template, this);
94
+ }
85
95
  /**
86
96
  * Do not call this method from derivatives of UI5Element, use "onEnterDOM" only
87
97
  * @private
88
98
  */
89
99
  async connectedCallback() {
90
100
  const ctor = this.constructor;
101
+ this.setAttribute(`_ui5rt${getCurrentRuntimeIndex()}`, "");
102
+ this.setAttribute("_ui5host", "");
91
103
  this.setAttribute(ctor.getMetadata().getPureTag(), "");
92
104
  if (ctor.getMetadata().supportsF6FastNavigation()) {
93
105
  this.setAttribute("data-sap-ui-fastnavgroup", "true");
@@ -220,8 +232,8 @@ class UI5Element extends HTMLElement {
220
232
  // Await for not-yet-defined custom elements
221
233
  if (child instanceof HTMLElement) {
222
234
  const localName = child.localName;
223
- const isCustomElement = localName.includes("-");
224
- if (isCustomElement) {
235
+ const shouldWaitForCustomElement = localName.includes("-") && !shouldIgnoreCustomElement(localName);
236
+ if (shouldWaitForCustomElement) {
225
237
  const isDefined = window.customElements.get(localName);
226
238
  if (!isDefined) {
227
239
  const whenDefinedPromise = window.customElements.whenDefined(localName); // Class registered, but instances not upgraded yet
@@ -718,13 +730,13 @@ class UI5Element extends HTMLElement {
718
730
  * @private
719
731
  */
720
732
  static _needsShadowDOM() {
721
- return !!this.template;
733
+ return !!this.template || Object.prototype.hasOwnProperty.call(this.prototype, "render");
722
734
  }
723
735
  /**
724
736
  * @private
725
737
  */
726
738
  static _needsStaticArea() {
727
- return !!this.staticAreaTemplate;
739
+ return !!this.staticAreaTemplate || Object.prototype.hasOwnProperty.call(this.prototype, "renderStatic");
728
740
  }
729
741
  /**
730
742
  * @public
@@ -840,20 +852,6 @@ class UI5Element extends HTMLElement {
840
852
  }
841
853
  }
842
854
  }
843
- /**
844
- * Returns the metadata object for this UI5 Web Component Class
845
- * @protected
846
- */
847
- static get metadata() {
848
- return metadata;
849
- }
850
- /**
851
- * Sets a new metadata object for this UI5 Web Component Class
852
- * @protected
853
- */
854
- static set metadata(newMetadata) {
855
- metadata = newMetadata;
856
- }
857
855
  /**
858
856
  * Returns the CSS for this UI5 Web Component Class
859
857
  * @protected
@@ -942,20 +940,22 @@ class UI5Element extends HTMLElement {
942
940
  if (this.hasOwnProperty("_metadata")) { // eslint-disable-line
943
941
  return this._metadata;
944
942
  }
945
- const effectiveMetadata = Object.keys(this.metadata).length ? this.metadata : this.decoratorMetadata;
946
- const metadataObjects = [effectiveMetadata];
943
+ const metadataObjects = [this.metadata];
947
944
  let klass = this; // eslint-disable-line
948
945
  while (klass !== UI5Element) {
949
946
  klass = Object.getPrototypeOf(klass);
950
- const effectiveKlassMetadata = Object.keys(klass.metadata).length ? klass.metadata : klass.decoratorMetadata;
951
- metadataObjects.unshift(effectiveKlassMetadata);
947
+ metadataObjects.unshift(klass.metadata);
952
948
  }
953
949
  const mergedMetadata = merge({}, ...metadataObjects);
954
950
  this._metadata = new UI5ElementMetadata(mergedMetadata);
955
951
  return this._metadata;
956
952
  }
957
953
  }
958
- UI5Element.decoratorMetadata = {};
954
+ /**
955
+ * Returns the metadata object for this UI5 Web Component Class
956
+ * @protected
957
+ */
958
+ UI5Element.metadata = {};
959
959
  /**
960
960
  * Always use duck-typing to cover all runtimes on the page.
961
961
  * @returns {boolean}