@ui5/webcomponents-base 0.0.0-6cb3eb0db → 0.0.0-6ebf1b8af

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 (650) hide show
  1. package/.eslintignore +8 -5
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +1103 -0
  4. package/README.md +34 -8
  5. package/bundle.esm.js +21 -15
  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 +3 -8
  10. package/dist/AssetRegistry.js.map +1 -0
  11. package/dist/Boot.d.ts +10 -0
  12. package/dist/Boot.js +59 -28
  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 +69 -30
  19. package/dist/CustomElementsRegistry.js.map +1 -0
  20. package/dist/CustomElementsScope.d.ts +7 -0
  21. package/dist/CustomElementsScope.js +11 -108
  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 +12 -54
  28. package/dist/DOMObserver.js.map +1 -0
  29. package/dist/Device.d.ts +13 -0
  30. package/dist/Device.js +159 -86
  31. package/dist/Device.js.map +1 -0
  32. package/dist/EventProvider.d.ts +25 -0
  33. package/dist/EventProvider.js +67 -82
  34. package/dist/EventProvider.js.map +1 -0
  35. package/dist/FeaturesRegistry.d.ts +3 -0
  36. package/dist/FeaturesRegistry.js +5 -7
  37. package/dist/FeaturesRegistry.js.map +1 -0
  38. package/dist/FontFace.d.ts +2 -0
  39. package/dist/FontFace.js +17 -110
  40. package/dist/FontFace.js.map +1 -0
  41. package/dist/IgnoreCustomElements.d.ts +27 -0
  42. package/dist/IgnoreCustomElements.js +39 -0
  43. package/dist/IgnoreCustomElements.js.map +1 -0
  44. package/dist/InitialConfiguration.d.ts +27 -0
  45. package/dist/InitialConfiguration.js +122 -120
  46. package/dist/InitialConfiguration.js.map +1 -0
  47. package/dist/Keys.d.ts +61 -0
  48. package/dist/Keys.js +175 -242
  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 +54 -75
  58. package/dist/MediaRange.js.map +1 -0
  59. package/dist/PropertiesFileFormat.d.ts +8 -0
  60. package/dist/PropertiesFileFormat.js +72 -82
  61. package/dist/PropertiesFileFormat.js.map +1 -0
  62. package/dist/Render.d.ts +47 -0
  63. package/dist/Render.js +82 -112
  64. package/dist/Render.js.map +1 -0
  65. package/dist/RenderQueue.d.ts +19 -0
  66. package/dist/RenderQueue.js +52 -62
  67. package/dist/RenderQueue.js.map +1 -0
  68. package/dist/Runtimes.d.ts +27 -0
  69. package/dist/Runtimes.js +86 -0
  70. package/dist/Runtimes.js.map +1 -0
  71. package/dist/StaticArea.d.ts +3 -0
  72. package/dist/StaticArea.js +5 -1
  73. package/dist/StaticArea.js.map +1 -0
  74. package/dist/StaticAreaItem.d.ts +35 -0
  75. package/dist/StaticAreaItem.js +88 -95
  76. package/dist/StaticAreaItem.js.map +1 -0
  77. package/dist/SystemCSSVars.d.ts +2 -0
  78. package/dist/SystemCSSVars.js +6 -28
  79. package/dist/SystemCSSVars.js.map +1 -0
  80. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  81. package/dist/Theming.js +1 -1
  82. package/dist/Theming.js.map +1 -0
  83. package/dist/UI5Element.d.ts +384 -0
  84. package/dist/UI5Element.js +941 -992
  85. package/dist/UI5Element.js.map +1 -0
  86. package/dist/UI5ElementMetadata.d.ts +143 -0
  87. package/dist/UI5ElementMetadata.js +281 -299
  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 +120 -112
  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 +71 -25
  109. package/dist/asset-registries/Illustrations.js.map +1 -0
  110. package/dist/asset-registries/LocaleData.d.ts +7 -0
  111. package/dist/asset-registries/LocaleData.js +104 -118
  112. package/dist/asset-registries/LocaleData.js.map +1 -0
  113. package/dist/asset-registries/Themes.d.ts +12 -0
  114. package/dist/asset-registries/Themes.js +57 -67
  115. package/dist/asset-registries/Themes.js.map +1 -0
  116. package/dist/asset-registries/i18n.d.ts +23 -0
  117. package/dist/asset-registries/i18n.js +62 -81
  118. package/dist/asset-registries/i18n.js.map +1 -0
  119. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  120. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  121. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  122. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  123. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  124. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  125. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  126. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  127. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  128. package/dist/config/AnimationMode.d.ts +14 -0
  129. package/dist/config/AnimationMode.js +21 -18
  130. package/dist/config/AnimationMode.js.map +1 -0
  131. package/dist/config/CalendarType.d.ts +15 -0
  132. package/dist/config/CalendarType.js +31 -14
  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 +46 -43
  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/Theme.d.ts +38 -0
  147. package/dist/config/Theme.js +67 -22
  148. package/dist/config/Theme.js.map +1 -0
  149. package/dist/config/ThemeRoot.d.ts +29 -0
  150. package/dist/config/ThemeRoot.js +59 -0
  151. package/dist/config/ThemeRoot.js.map +1 -0
  152. package/dist/config/Timezone.d.ts +17 -0
  153. package/dist/config/Timezone.js +30 -0
  154. package/dist/config/Timezone.js.map +1 -0
  155. package/dist/connectToComponent.d.ts +9 -0
  156. package/dist/connectToComponent.js +59 -0
  157. package/dist/connectToComponent.js.map +1 -0
  158. package/dist/css/BusyIndicator.css +80 -0
  159. package/dist/css/FontFace.css +96 -0
  160. package/dist/css/OverrideFontFace.css +32 -0
  161. package/dist/css/SystemCSSVars.css +9 -0
  162. package/dist/custom-elements-internal.json +2759 -0
  163. package/dist/custom-elements.json +2522 -0
  164. package/dist/decorators/customElement.d.ts +23 -0
  165. package/dist/decorators/customElement.js +37 -0
  166. package/dist/decorators/customElement.js.map +1 -0
  167. package/dist/decorators/event.d.ts +13 -0
  168. package/dist/decorators/event.js +24 -0
  169. package/dist/decorators/event.js.map +1 -0
  170. package/dist/decorators/property.d.ts +9 -0
  171. package/dist/decorators/property.js +24 -0
  172. package/dist/decorators/property.js.map +1 -0
  173. package/dist/decorators/slot.d.ts +9 -0
  174. package/dist/decorators/slot.js +37 -0
  175. package/dist/decorators/slot.js.map +1 -0
  176. package/dist/delegate/ItemNavigation.d.ts +114 -0
  177. package/dist/delegate/ItemNavigation.js +283 -319
  178. package/dist/delegate/ItemNavigation.js.map +1 -0
  179. package/dist/delegate/ResizeHandler.d.ts +23 -0
  180. package/dist/delegate/ResizeHandler.js +70 -91
  181. package/dist/delegate/ResizeHandler.js.map +1 -0
  182. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  183. package/dist/delegate/ScrollEnablement.js +157 -180
  184. package/dist/delegate/ScrollEnablement.js.map +1 -0
  185. package/dist/features/F6Navigation.d.ts +19 -0
  186. package/dist/features/F6Navigation.js +151 -0
  187. package/dist/features/F6Navigation.js.map +1 -0
  188. package/dist/features/LegacyDateFormats.d.ts +18 -0
  189. package/dist/features/LegacyDateFormats.js +20 -0
  190. package/dist/features/LegacyDateFormats.js.map +1 -0
  191. package/dist/features/OpenUI5Element.d.ts +9 -0
  192. package/dist/features/OpenUI5Element.js +5 -0
  193. package/dist/features/OpenUI5Element.js.map +1 -0
  194. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  195. package/dist/features/OpenUI5Enablement.js +96 -0
  196. package/dist/features/OpenUI5Enablement.js.map +1 -0
  197. package/dist/features/OpenUI5Support.d.ts +36 -0
  198. package/dist/features/OpenUI5Support.js +151 -121
  199. package/dist/features/OpenUI5Support.js.map +1 -0
  200. package/dist/generated/AssetParameters.d.ts +6 -0
  201. package/dist/generated/AssetParameters.js +4 -9
  202. package/dist/generated/AssetParameters.js.map +1 -0
  203. package/dist/generated/VersionInfo.d.ts +10 -0
  204. package/dist/generated/VersionInfo.js +11 -0
  205. package/dist/generated/VersionInfo.js.map +1 -0
  206. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  207. package/dist/generated/css/BusyIndicator.css.js +7 -0
  208. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  209. package/dist/generated/css/FontFace.css.d.ts +3 -0
  210. package/dist/generated/css/FontFace.css.js +7 -0
  211. package/dist/generated/css/FontFace.css.js.map +1 -0
  212. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  213. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  214. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  215. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  216. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  217. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  218. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  219. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  220. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  221. package/dist/getSharedResource.d.ts +11 -0
  222. package/dist/getSharedResource.js +28 -18
  223. package/dist/getSharedResource.js.map +1 -0
  224. package/dist/global.d.ts +40 -0
  225. package/dist/i18nBundle.d.ts +41 -0
  226. package/dist/i18nBundle.js +65 -45
  227. package/dist/i18nBundle.js.map +1 -0
  228. package/dist/locale/Locale.d.ts +22 -0
  229. package/dist/locale/Locale.js +75 -87
  230. package/dist/locale/Locale.js.map +1 -0
  231. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  232. package/dist/locale/RTLAwareRegistry.js +6 -11
  233. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  234. package/dist/locale/applyDirection.d.ts +10 -0
  235. package/dist/locale/applyDirection.js +7 -7
  236. package/dist/locale/applyDirection.js.map +1 -0
  237. package/dist/locale/directionChange.d.ts +15 -0
  238. package/dist/locale/directionChange.js +7 -15
  239. package/dist/locale/directionChange.js.map +1 -0
  240. package/dist/locale/getEffectiveDir.d.ts +2 -0
  241. package/dist/locale/getEffectiveDir.js +6 -26
  242. package/dist/locale/getEffectiveDir.js.map +1 -0
  243. package/dist/locale/getLocale.d.ts +7 -0
  244. package/dist/locale/getLocale.js +26 -29
  245. package/dist/locale/getLocale.js.map +1 -0
  246. package/dist/locale/languageChange.d.ts +5 -0
  247. package/dist/locale/languageChange.js +8 -16
  248. package/dist/locale/languageChange.js.map +1 -0
  249. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  250. package/dist/locale/nextFallbackLocale.js +15 -19
  251. package/dist/locale/nextFallbackLocale.js.map +1 -0
  252. package/dist/locale/normalizeLocale.d.ts +7 -0
  253. package/dist/locale/normalizeLocale.js +34 -41
  254. package/dist/locale/normalizeLocale.js.map +1 -0
  255. package/dist/renderer/LitRenderer.d.ts +14 -0
  256. package/dist/renderer/LitRenderer.js +32 -23
  257. package/dist/renderer/LitRenderer.js.map +1 -0
  258. package/dist/renderer/directives/style-map.js +72 -0
  259. package/dist/renderer/executeTemplate.d.ts +13 -0
  260. package/dist/renderer/executeTemplate.js +20 -7
  261. package/dist/renderer/executeTemplate.js.map +1 -0
  262. package/dist/sap/base/Log.js +705 -196
  263. package/dist/sap/base/assert.js +31 -5
  264. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  265. package/dist/sap/base/security/URLListValidator.js +265 -7
  266. package/dist/sap/base/security/encodeCSS.js +40 -0
  267. package/dist/sap/base/security/encodeXML.js +53 -0
  268. package/dist/sap/base/security/sanitizeHTML.js +35 -13
  269. package/dist/sap/base/strings/toHex.js +33 -0
  270. package/dist/sap/base/util/now.js +24 -3
  271. package/dist/sap/base/util/uid.js +27 -0
  272. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +112 -97
  273. package/dist/ssr-dom-shim.d.ts +1 -0
  274. package/dist/ssr-dom-shim.js +12 -0
  275. package/dist/ssr-dom-shim.js.map +1 -0
  276. package/dist/ssr-dom.d.ts +0 -0
  277. package/dist/ssr-dom.js +3 -0
  278. package/dist/ssr-dom.js.map +1 -0
  279. package/dist/theming/CustomStyle.d.ts +6 -0
  280. package/dist/theming/CustomStyle.js +39 -31
  281. package/dist/theming/CustomStyle.js.map +1 -0
  282. package/dist/theming/ThemeLoaded.d.ts +5 -0
  283. package/dist/theming/ThemeLoaded.js +8 -16
  284. package/dist/theming/ThemeLoaded.js.map +1 -0
  285. package/dist/theming/ThemeRegistered.d.ts +4 -0
  286. package/dist/theming/ThemeRegistered.js +11 -0
  287. package/dist/theming/ThemeRegistered.js.map +1 -0
  288. package/dist/theming/applyTheme.d.ts +2 -0
  289. package/dist/theming/applyTheme.js +63 -65
  290. package/dist/theming/applyTheme.js.map +1 -0
  291. package/dist/theming/getConstructableStyle.d.ts +9 -0
  292. package/dist/theming/getConstructableStyle.js +12 -17
  293. package/dist/theming/getConstructableStyle.js.map +1 -0
  294. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  295. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  296. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  297. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  298. package/dist/theming/getEffectiveStyle.js +25 -23
  299. package/dist/theming/getEffectiveStyle.js.map +1 -0
  300. package/dist/theming/getStylesString.d.ts +3 -0
  301. package/dist/theming/getStylesString.js +9 -11
  302. package/dist/theming/getStylesString.js.map +1 -0
  303. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  304. package/dist/theming/getThemeDesignerTheme.js +73 -60
  305. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  306. package/dist/theming/preloadLinks.d.ts +3 -0
  307. package/dist/theming/preloadLinks.js +19 -0
  308. package/dist/theming/preloadLinks.js.map +1 -0
  309. package/dist/thirdparty/_merge.d.ts +2 -0
  310. package/dist/thirdparty/_merge.js +7 -4
  311. package/dist/thirdparty/_merge.js.map +1 -0
  312. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  313. package/dist/thirdparty/isPlainObject.js +11 -10
  314. package/dist/thirdparty/isPlainObject.js.map +1 -0
  315. package/dist/thirdparty/merge.d.ts +2 -0
  316. package/dist/thirdparty/merge.js +4 -8
  317. package/dist/thirdparty/merge.js.map +1 -0
  318. package/dist/types/AnimationMode.d.ts +24 -0
  319. package/dist/types/AnimationMode.js +25 -6
  320. package/dist/types/AnimationMode.js.map +1 -0
  321. package/dist/types/CSSColor.d.ts +11 -0
  322. package/dist/types/CSSColor.js +10 -5
  323. package/dist/types/CSSColor.js.map +1 -0
  324. package/dist/types/CSSSize.d.ts +11 -0
  325. package/dist/types/CSSSize.js +10 -5
  326. package/dist/types/CSSSize.js.map +1 -0
  327. package/dist/types/CalendarType.d.ts +28 -0
  328. package/dist/types/CalendarType.js +26 -18
  329. package/dist/types/CalendarType.js.map +1 -0
  330. package/dist/types/DOMReference.d.ts +13 -0
  331. package/dist/types/DOMReference.js +21 -0
  332. package/dist/types/DOMReference.js.map +1 -0
  333. package/dist/types/DataType.d.ts +20 -0
  334. package/dist/types/DataType.js +31 -29
  335. package/dist/types/DataType.js.map +1 -0
  336. package/dist/types/Float.d.ts +14 -0
  337. package/dist/types/Float.js +14 -10
  338. package/dist/types/Float.js.map +1 -0
  339. package/dist/types/Integer.d.ts +14 -0
  340. package/dist/types/Integer.js +14 -9
  341. package/dist/types/Integer.js.map +1 -0
  342. package/dist/types/InvisibleMessageMode.d.ts +20 -0
  343. package/dist/types/InvisibleMessageMode.js +12 -22
  344. package/dist/types/InvisibleMessageMode.js.map +1 -0
  345. package/dist/types/ItemNavigationBehavior.d.ts +18 -0
  346. package/dist/types/ItemNavigationBehavior.js +16 -12
  347. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  348. package/dist/types/NavigationMode.d.ts +24 -0
  349. package/dist/types/NavigationMode.js +25 -6
  350. package/dist/types/NavigationMode.js.map +1 -0
  351. package/dist/types/ValueState.d.ts +28 -0
  352. package/dist/types/ValueState.js +27 -19
  353. package/dist/types/ValueState.js.map +1 -0
  354. package/dist/types.d.ts +18 -0
  355. package/dist/types.js +2 -0
  356. package/dist/types.js.map +1 -0
  357. package/dist/updateShadowRoot.d.ts +8 -0
  358. package/dist/updateShadowRoot.js +32 -16
  359. package/dist/updateShadowRoot.js.map +1 -0
  360. package/dist/util/AriaLabelHelper.d.ts +15 -0
  361. package/dist/util/AriaLabelHelper.js +166 -36
  362. package/dist/util/AriaLabelHelper.js.map +1 -0
  363. package/dist/util/Caret.d.ts +7 -0
  364. package/dist/util/Caret.js +16 -38
  365. package/dist/util/Caret.js.map +1 -0
  366. package/dist/util/ColorConversion.d.ts +30 -0
  367. package/dist/util/ColorConversion.js +320 -348
  368. package/dist/util/ColorConversion.js.map +1 -0
  369. package/dist/util/FetchHelper.d.ts +3 -0
  370. package/dist/util/FetchHelper.js +19 -25
  371. package/dist/util/FetchHelper.js.map +1 -0
  372. package/dist/util/FocusableElements.d.ts +4 -0
  373. package/dist/util/FocusableElements.js +67 -72
  374. package/dist/util/FocusableElements.js.map +1 -0
  375. package/{src/util/HTMLSanitizer.js → dist/util/HTMLSanitizer.d.ts} +1 -5
  376. package/dist/util/HTMLSanitizer.js +4 -5
  377. package/dist/util/HTMLSanitizer.js.map +1 -0
  378. package/dist/util/InvisibleMessage.d.ts +10 -0
  379. package/dist/util/InvisibleMessage.js +42 -44
  380. package/dist/util/InvisibleMessage.js.map +1 -0
  381. package/dist/util/PopupUtils.d.ts +7 -0
  382. package/dist/util/PopupUtils.js +58 -77
  383. package/dist/util/PopupUtils.js.map +1 -0
  384. package/dist/util/SlotsHelper.d.ts +9 -0
  385. package/dist/util/SlotsHelper.js +22 -35
  386. package/dist/util/SlotsHelper.js.map +1 -0
  387. package/dist/util/StringHelper.d.ts +3 -0
  388. package/dist/util/StringHelper.js +17 -20
  389. package/dist/util/StringHelper.js.map +1 -0
  390. package/dist/util/TabbableElements.d.ts +17 -0
  391. package/dist/util/TabbableElements.js +53 -43
  392. package/dist/util/TabbableElements.js.map +1 -0
  393. package/dist/util/arraysAreEqual.d.ts +2 -0
  394. package/dist/util/arraysAreEqual.js +10 -12
  395. package/dist/util/arraysAreEqual.js.map +1 -0
  396. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  397. package/dist/util/clamp.js +2 -2
  398. package/dist/util/clamp.js.map +1 -0
  399. package/dist/util/createLinkInHead.d.ts +7 -0
  400. package/dist/util/createLinkInHead.js +21 -0
  401. package/dist/util/createLinkInHead.js.map +1 -0
  402. package/dist/util/createStyleInHead.d.ts +8 -0
  403. package/dist/util/createStyleInHead.js +10 -10
  404. package/dist/util/createStyleInHead.js.map +1 -0
  405. package/dist/util/debounce.d.ts +2 -0
  406. package/dist/util/debounce.js +6 -8
  407. package/dist/util/debounce.js.map +1 -0
  408. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  409. package/dist/util/detectNavigatorLanguage.js +13 -11
  410. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  411. package/dist/util/escapeRegex.d.ts +8 -0
  412. package/dist/util/escapeRegex.js +11 -0
  413. package/dist/util/escapeRegex.js.map +1 -0
  414. package/dist/util/formatMessage.d.ts +2 -0
  415. package/dist/util/formatMessage.js +15 -19
  416. package/dist/util/formatMessage.js.map +1 -0
  417. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  418. package/dist/util/generateHighlightedMarkup.js +41 -0
  419. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  420. package/dist/util/getActiveElement.d.ts +2 -0
  421. package/dist/util/getActiveElement.js +6 -8
  422. package/dist/util/getActiveElement.js.map +1 -0
  423. package/dist/util/getClassCopy.d.ts +419 -0
  424. package/dist/util/getClassCopy.js +7 -7
  425. package/dist/util/getClassCopy.js.map +1 -0
  426. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  427. package/dist/util/getDesigntimePropertyAsArray.js +5 -3
  428. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  429. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  430. package/dist/util/getEffectiveContentDensity.js +2 -3
  431. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  432. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  433. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  434. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  435. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  436. package/dist/util/getFastNavigationGroups.js +51 -0
  437. package/dist/util/getFastNavigationGroups.js.map +1 -0
  438. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  439. package/dist/util/getFileExtension.js +9 -11
  440. package/dist/util/getFileExtension.js.map +1 -0
  441. package/dist/util/getNormalizedTarget.d.ts +7 -0
  442. package/dist/util/getNormalizedTarget.js +14 -0
  443. package/dist/util/getNormalizedTarget.js.map +1 -0
  444. package/dist/util/getParentElement.d.ts +2 -0
  445. package/dist/util/getParentElement.js +5 -0
  446. package/dist/util/getParentElement.js.map +1 -0
  447. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  448. package/dist/util/getSingletonElementInstance.js +17 -11
  449. package/dist/util/getSingletonElementInstance.js.map +1 -0
  450. package/dist/util/isElementClickable.d.ts +2 -0
  451. package/dist/util/isElementClickable.js +16 -0
  452. package/dist/util/isElementClickable.js.map +1 -0
  453. package/dist/util/isElementContainingBlock.d.ts +2 -0
  454. package/dist/util/isElementContainingBlock.js +11 -0
  455. package/dist/util/isElementContainingBlock.js.map +1 -0
  456. package/dist/util/isElementHidden.d.ts +2 -0
  457. package/dist/util/isElementHidden.js +8 -0
  458. package/dist/util/isElementHidden.js.map +1 -0
  459. package/dist/util/isElementInView.d.ts +6 -0
  460. package/dist/util/isElementInView.js +6 -9
  461. package/dist/util/isElementInView.js.map +1 -0
  462. package/dist/util/isElementTabbable.d.ts +9 -0
  463. package/dist/util/isElementTabbable.js +30 -0
  464. package/dist/util/isElementTabbable.js.map +1 -0
  465. package/dist/util/isValidPropertyName.d.ts +8 -0
  466. package/dist/util/isValidPropertyName.js +16 -17
  467. package/dist/util/isValidPropertyName.js.map +1 -0
  468. package/dist/util/whenDOMReady.d.ts +2 -0
  469. package/dist/util/whenDOMReady.js +11 -10
  470. package/dist/util/whenDOMReady.js.map +1 -0
  471. package/dist/util/willShowContent.d.ts +2 -0
  472. package/dist/util/willShowContent.js +7 -0
  473. package/dist/util/willShowContent.js.map +1 -0
  474. package/dist/validateThemeRoot.d.ts +2 -0
  475. package/dist/validateThemeRoot.js +48 -0
  476. package/dist/validateThemeRoot.js.map +1 -0
  477. package/index.js +225 -1
  478. package/lib/generate-asset-parameters/index.js +11 -6
  479. package/lib/generate-styles/index.js +31 -0
  480. package/lib/generate-version-info/index.js +32 -0
  481. package/package-scripts.cjs +65 -0
  482. package/package.json +21 -13
  483. package/src/css/BusyIndicator.css +80 -0
  484. package/src/css/FontFace.css +96 -0
  485. package/src/css/OverrideFontFace.css +32 -0
  486. package/src/css/SystemCSSVars.css +9 -0
  487. package/src/renderer/directives/style-map.js +72 -0
  488. package/tsconfig.json +18 -0
  489. package/used-modules.txt +8 -1
  490. package/config/rollup.config.js +0 -1
  491. package/config/wdio.conf.js +0 -1
  492. package/dist/RenderScheduler.js +0 -44
  493. package/dist/animations/config.js +0 -5
  494. package/dist/config/RTL.js +0 -31
  495. package/dist/isLegacyBrowser.js +0 -3
  496. package/dist/resources/bundle.esm.js +0 -37
  497. package/dist/resources/bundle.esm.js.map +0 -1
  498. package/dist/test-resources/assets/Themes.js +0 -17
  499. package/dist/test-resources/elements/Child.js +0 -35
  500. package/dist/test-resources/elements/Generic.js +0 -84
  501. package/dist/test-resources/elements/GenericExt.js +0 -26
  502. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  503. package/dist/test-resources/elements/Parent.js +0 -41
  504. package/dist/test-resources/elements/WithStaticArea.js +0 -77
  505. package/dist/test-resources/pages/AllTestElements.html +0 -42
  506. package/dist/test-resources/pages/Configuration.html +0 -18
  507. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  508. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  509. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  510. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  511. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  512. package/dist/test-resources/pages/i18n.html +0 -35
  513. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
  514. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
  515. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -93
  516. package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
  517. package/dist/test-resources/specs/EventProvider.spec.js +0 -63
  518. package/dist/test-resources/specs/StaticArea.spec.js +0 -78
  519. package/dist/test-resources/specs/Theming.spec.js +0 -33
  520. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
  521. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
  522. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
  523. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
  524. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
  525. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
  526. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
  527. package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
  528. package/dist/theming/createThemePropertiesStyleTag.js +0 -20
  529. package/dist/types/PopupState.js +0 -37
  530. package/dist/util/encodeCSS.js +0 -24
  531. package/dist/util/findNodeOwner.js +0 -35
  532. package/dist/util/isDescendantOf.js +0 -15
  533. package/dist/util/isNodeClickable.js +0 -19
  534. package/dist/util/isNodeHidden.js +0 -9
  535. package/dist/util/isNodeTabbable.js +0 -28
  536. package/dist/util/setToArray.js +0 -10
  537. package/hash.txt +0 -1
  538. package/package-scripts.js +0 -62
  539. package/src/AssetRegistry.js +0 -11
  540. package/src/Boot.js +0 -43
  541. package/src/CustomElementsRegistry.js +0 -39
  542. package/src/CustomElementsScope.js +0 -108
  543. package/src/DOMObserver.js +0 -65
  544. package/src/Device.js +0 -102
  545. package/src/EventProvider.js +0 -85
  546. package/src/FeaturesRegistry.js +0 -11
  547. package/src/FontFace.js +0 -118
  548. package/src/InitialConfiguration.js +0 -155
  549. package/src/Keys.js +0 -248
  550. package/src/MediaRange.js +0 -109
  551. package/src/PropertiesFileFormat.js +0 -95
  552. package/src/Render.js +0 -173
  553. package/src/RenderQueue.js +0 -66
  554. package/src/RenderScheduler.js +0 -44
  555. package/src/StaticArea.js +0 -3
  556. package/src/StaticAreaItem.js +0 -107
  557. package/src/SystemCSSVars.js +0 -31
  558. package/src/UI5Element.js +0 -1026
  559. package/src/UI5ElementMetadata.js +0 -311
  560. package/src/animations/AnimationQueue.js +0 -42
  561. package/src/animations/animate.js +0 -53
  562. package/src/animations/config.js +0 -5
  563. package/src/animations/scroll.js +0 -28
  564. package/src/animations/slideDown.js +0 -79
  565. package/src/animations/slideUp.js +0 -71
  566. package/src/asset-registries/Icons.js +0 -128
  567. package/src/asset-registries/Illustrations.js +0 -30
  568. package/src/asset-registries/LocaleData.js +0 -150
  569. package/src/asset-registries/Themes.js +0 -78
  570. package/src/asset-registries/i18n.js +0 -121
  571. package/src/config/AnimationMode.js +0 -23
  572. package/src/config/CalendarType.js +0 -18
  573. package/src/config/FormatSettings.js +0 -13
  574. package/src/config/Language.js +0 -68
  575. package/src/config/NoConflict.js +0 -51
  576. package/src/config/RTL.js +0 -31
  577. package/src/config/Theme.js +0 -28
  578. package/src/delegate/ItemNavigation.js +0 -351
  579. package/src/delegate/ResizeHandler.js +0 -106
  580. package/src/delegate/ScrollEnablement.js +0 -188
  581. package/src/features/OpenUI5Support.js +0 -125
  582. package/src/getSharedResource.js +0 -30
  583. package/src/i18nBundle.js +0 -56
  584. package/src/isLegacyBrowser.js +0 -3
  585. package/src/locale/Locale.js +0 -91
  586. package/src/locale/RTLAwareRegistry.js +0 -14
  587. package/src/locale/applyDirection.js +0 -17
  588. package/src/locale/directionChange.js +0 -32
  589. package/src/locale/getEffectiveDir.js +0 -28
  590. package/src/locale/getLocale.js +0 -41
  591. package/src/locale/languageChange.js +0 -22
  592. package/src/locale/nextFallbackLocale.js +0 -28
  593. package/src/locale/normalizeLocale.js +0 -54
  594. package/src/renderer/LitRenderer.js +0 -32
  595. package/src/renderer/executeTemplate.js +0 -17
  596. package/src/theming/CustomStyle.js +0 -40
  597. package/src/theming/ThemeLoaded.js +0 -22
  598. package/src/theming/applyTheme.js +0 -78
  599. package/src/theming/createThemePropertiesStyleTag.js +0 -20
  600. package/src/theming/getConstructableStyle.js +0 -30
  601. package/src/theming/getEffectiveStyle.js +0 -30
  602. package/src/theming/getStylesString.js +0 -13
  603. package/src/theming/getThemeDesignerTheme.js +0 -67
  604. package/src/thirdparty/_merge.js +0 -32
  605. package/src/thirdparty/isPlainObject.js +0 -18
  606. package/src/thirdparty/merge.js +0 -10
  607. package/src/types/AnimationMode.js +0 -7
  608. package/src/types/CSSColor.js +0 -9
  609. package/src/types/CSSSize.js +0 -9
  610. package/src/types/CalendarType.js +0 -22
  611. package/src/types/DataType.js +0 -37
  612. package/src/types/Float.js +0 -14
  613. package/src/types/Integer.js +0 -13
  614. package/src/types/InvisibleMessageMode.js +0 -30
  615. package/src/types/ItemNavigationBehavior.js +0 -16
  616. package/src/types/NavigationMode.js +0 -7
  617. package/src/types/PopupState.js +0 -37
  618. package/src/types/ValueState.js +0 -22
  619. package/src/updateShadowRoot.js +0 -26
  620. package/src/util/AriaLabelHelper.js +0 -41
  621. package/src/util/Caret.js +0 -45
  622. package/src/util/ColorConversion.js +0 -370
  623. package/src/util/FetchHelper.js +0 -31
  624. package/src/util/FocusableElements.js +0 -77
  625. package/src/util/InvisibleMessage.js +0 -58
  626. package/src/util/PopupUtils.js +0 -93
  627. package/src/util/SlotsHelper.js +0 -43
  628. package/src/util/StringHelper.js +0 -26
  629. package/src/util/TabbableElements.js +0 -47
  630. package/src/util/arraysAreEqual.js +0 -15
  631. package/src/util/createStyleInHead.js +0 -18
  632. package/src/util/debounce.js +0 -17
  633. package/src/util/detectNavigatorLanguage.js +0 -13
  634. package/src/util/encodeCSS.js +0 -24
  635. package/src/util/findNodeOwner.js +0 -35
  636. package/src/util/formatMessage.js +0 -23
  637. package/src/util/getActiveElement.js +0 -11
  638. package/src/util/getClassCopy.js +0 -10
  639. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  640. package/src/util/getEffectiveContentDensity.js +0 -5
  641. package/src/util/getSingletonElementInstance.js +0 -13
  642. package/src/util/isDescendantOf.js +0 -15
  643. package/src/util/isElementInView.js +0 -15
  644. package/src/util/isNodeClickable.js +0 -19
  645. package/src/util/isNodeHidden.js +0 -9
  646. package/src/util/isNodeTabbable.js +0 -28
  647. package/src/util/isValidPropertyName.js +0 -29
  648. package/src/util/setToArray.js +0 -10
  649. package/src/util/whenDOMReady.js +0 -13
  650. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1,72 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2018 Google LLC
4
+ * SPDX-License-Identifier: BSD-3-Clause
5
+ */
6
+
7
+ /**
8
+ * This is the original style-map.js directive from lit-html 2 with the only difference that "render" is not called even for the first rendering (update is used instead)
9
+ */
10
+
11
+ import { noChange } from 'lit-html';
12
+ import { directive, Directive, PartType, } from 'lit-html/directive.js';
13
+ class StyleMapDirective extends Directive {
14
+ constructor(partInfo) {
15
+ var _a;
16
+ super(partInfo);
17
+ if (partInfo.type !== PartType.ATTRIBUTE ||
18
+ partInfo.name !== 'style' ||
19
+ ((_a = partInfo.strings) === null || _a === void 0 ? void 0 : _a.length) > 2) {
20
+ throw new Error('The `styleMap` directive must be used in the `style` attribute ' +
21
+ 'and must be the only part in the attribute.');
22
+ }
23
+ }
24
+ render(styleInfo) {
25
+ return "";
26
+ }
27
+ update(part, [styleInfo]) {
28
+ const { style } = part.element;
29
+ if (this._previousStyleProperties === undefined) {
30
+ this._previousStyleProperties = new Set();
31
+ for (const name in styleInfo) {
32
+ this._previousStyleProperties.add(name);
33
+ }
34
+ // return this.render(styleInfo);
35
+ }
36
+ // Remove old properties that no longer exist in styleInfo
37
+ // We use forEach() instead of for-of so that re don't require down-level
38
+ // iteration.
39
+ this._previousStyleProperties.forEach((name) => {
40
+ // If the name isn't in styleInfo or it's null/undefined
41
+ if (styleInfo[name] == null) {
42
+ this._previousStyleProperties.delete(name);
43
+ if (name.includes('-')) {
44
+ style.removeProperty(name);
45
+ }
46
+ else {
47
+ // Note reset using empty string (vs null) as IE11 does not always
48
+ // reset via null (https://developer.mozilla.org/en-US/docs/Web/API/ElementCSSInlineStyle/style#setting_styles)
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
50
+ style[name] = '';
51
+ }
52
+ }
53
+ });
54
+ // Add or update properties
55
+ for (const name in styleInfo) {
56
+ const value = styleInfo[name];
57
+ if (value != null) {
58
+ this._previousStyleProperties.add(name);
59
+ if (name.includes('-')) {
60
+ style.setProperty(name, value);
61
+ }
62
+ else {
63
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
64
+ style[name] = value;
65
+ }
66
+ }
67
+ }
68
+ return noChange;
69
+ }
70
+ }
71
+
72
+ export const styleMap = directive(StyleMapDirective);
package/tsconfig.json ADDED
@@ -0,0 +1,18 @@
1
+ {
2
+ "include": ["src/**/*", "src/global.d.ts"],
3
+ "compilerOptions": {
4
+ "target": "ES2021",
5
+ "lib": ["DOM", "DOM.Iterable", "ES2023"],
6
+ // Generate d.ts files
7
+ "declaration": true,
8
+ "outDir": "dist",
9
+ "skipLibCheck": true,
10
+ "sourceMap": true,
11
+ "inlineSources": true,
12
+ "strict": true,
13
+ "moduleResolution": "node",
14
+ "composite": true,
15
+ "rootDir": "src",
16
+ "tsBuildInfoFile": "dist/.tsbuildinfo",
17
+ },
18
+ }
package/used-modules.txt CHANGED
@@ -1,7 +1,14 @@
1
1
  # Needed files from OpenUI5
2
2
 
3
+ # ./ui5loader-autoconfig.js
3
4
  sap/base/util/now.js
5
+ sap/base/util/uid.js
4
6
  sap/base/Log.js
7
+ # sap/base/config.js
8
+ sap/base/config/MemoryConfigurationProvider.js
5
9
  sap/base/assert.js
6
10
  sap/base/security/URLListValidator.js
7
- sap/base/security/sanitizeHTML.js
11
+ sap/base/security/sanitizeHTML.js
12
+ sap/base/strings/toHex.js
13
+ sap/base/security/encodeXML.js
14
+ sap/base/security/encodeCSS.js
@@ -1 +0,0 @@
1
- module.exports = require("@ui5/webcomponents-tools/components-package/rollup.js");
@@ -1 +0,0 @@
1
- module.exports = require("@ui5/webcomponents-tools/components-package/wdio.js");
@@ -1,44 +0,0 @@
1
- import {
2
- renderDeferred,
3
- renderImmediately,
4
- renderFinished,
5
- } from "./Render.js";
6
-
7
- /**
8
- * @deprecated Use the Render.js module instead
9
- */
10
- class RenderScheduler {
11
- /**
12
- * Schedules a render task (if not already scheduled) to render the component
13
- *
14
- * @param webComponent
15
- * @returns {Promise}
16
- * @deprecated Use renderDeferred from the Render.js module instead
17
- */
18
- static async renderDeferred(webComponent) {
19
- console.log("RenderScheduler.renderDeferred is deprecated, please use renderDeferred, exported by Render.js instead"); // eslint-disable-line
20
- await renderDeferred(webComponent);
21
- }
22
-
23
- /**
24
- * Renders a component synchronously
25
- *
26
- * @param webComponent
27
- * @deprecated Use renderImmediately from the Render.js module instead
28
- */
29
- static renderImmediately(webComponent) {
30
- console.log("RenderScheduler.renderImmediately is deprecated, please use renderImmediately, exported by Render.js instead"); // eslint-disable-line
31
- return renderImmediately(webComponent);
32
- }
33
-
34
- /**
35
- * @deprecated Use renderFinished from the Render.js module instead
36
- * @returns {Promise<void>}
37
- */
38
- static async whenFinished() {
39
- console.log("RenderScheduler.whenFinished is deprecated, please use renderFinished, exported by Render.js instead"); // eslint-disable-line
40
- await renderFinished();
41
- }
42
- }
43
-
44
- export default RenderScheduler;
@@ -1,5 +0,0 @@
1
- export default {
2
- defaultDuration: 400,
3
- element: document.createElement("DIV"),
4
- identity: () => {},
5
- };
@@ -1,31 +0,0 @@
1
- import { getRTL as getConfiguredRTL } from "../InitialConfiguration.js";
2
- import { getLanguage } from "./Language.js";
3
- import getDesigntimePropertyAsArray from "../util/getDesigntimePropertyAsArray.js";
4
- import detectNavigatorLanguage from "../util/detectNavigatorLanguage.js";
5
-
6
- const M_ISO639_OLD_TO_NEW = {
7
- "iw": "he",
8
- "ji": "yi",
9
- "in": "id",
10
- "sh": "sr",
11
- };
12
-
13
- const A_RTL_LOCALES = getDesigntimePropertyAsArray("$cldr-rtl-locales:ar,fa,he$") || [];
14
-
15
- const impliesRTL = language => {
16
- language = (language && M_ISO639_OLD_TO_NEW[language]) || language;
17
-
18
- return A_RTL_LOCALES.indexOf(language) >= 0;
19
- };
20
-
21
- const getRTL = () => {
22
- const configurationRTL = getConfiguredRTL();
23
-
24
- if (configurationRTL !== null) {
25
- return !!configurationRTL;
26
- }
27
-
28
- return impliesRTL(getLanguage() || detectNavigatorLanguage());
29
- };
30
-
31
- export { getRTL }; // eslint-disable-line
@@ -1,3 +0,0 @@
1
- const isLegacyBrowser = () => !!window.ShadyDOM;
2
-
3
- export default isLegacyBrowser;
@@ -1,37 +0,0 @@
1
- const t={default:"en",all:["ar","ar_EG","ar_SA","bg","ca","cs","da","de","de_AT","de_CH","el","el_CY","en","en_AU","en_GB","en_HK","en_IE","en_IN","en_NZ","en_PG","en_SG","en_ZA","es","es_AR","es_BO","es_CL","es_CO","es_MX","es_PE","es_UY","es_VE","et","fa","fi","fr","fr_BE","fr_CA","fr_CH","fr_LU","he","hi","hr","hu","id","it","it_CH","ja","kk","ko","lt","lv","ms","nb","nl","nl_BE","pl","pt","pt_PT","ro","ru","ru_UA","sk","sl","sr","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]},e={default:"sap_fiori_3",all:["sap_fiori_3","sap_fiori_3_dark","sap_belize","sap_belize_hcb","sap_belize_hcw","sap_fiori_3_hcb","sap_fiori_3_hcw","sap_horizon"]}.default,s={default:"en",all:["ar","bg","ca","cs","cy","da","de","el","en","en_GB","en_US_sappsd","en_US_saprigi","en_US_saptrc","es","es_MX","et","fi","fr","fr_CA","hi","hr","hu","in","it","iw","ja","kk","ko","lt","lv","ms","nl","no","pl","pt_PT","pt","ro","ru","sh","sk","sl","sv","th","tr","uk","vi","zh_CN","zh_TW"]}.default,n=t.default,i=t.all;var r=()=>{const t=navigator.languages;return t&&t[0]||navigator.language||navigator.userLanguage||navigator.browserLanguage||s},a={},o=a.hasOwnProperty,l=a.toString,c=o.toString,h=c.call(Object),d=function(t){var e,s;return!(!t||"[object Object]"!==l.call(t))&&(!(e=Object.getPrototypeOf(t))||"function"==typeof(s=o.call(e,"constructor")&&e.constructor)&&c.call(s)===h)},u=Object.create(null),p=function(){var t,e,s,n,i,r,a=arguments[2]||{},o=3,l=arguments.length,c=arguments[0]||!1,h=arguments[1]?void 0:u;for("object"!=typeof a&&"function"!=typeof a&&(a={});o<l;o++)if(null!=(i=arguments[o]))for(n in i)t=a[n],s=i[n],"__proto__"!==n&&a!==s&&(c&&s&&(d(s)||(e=Array.isArray(s)))?(e?(e=!1,r=t&&Array.isArray(t)?t:[]):r=t&&d(t)?t:{},a[n]=p(c,arguments[1],r,s)):s!==h&&(a[n]=s));return a},g=function(){var t=[!0,!1];return t.push.apply(t,arguments),p.apply(null,t)};const f=new Map,m=t=>f.get(t);let _=!1,y={animationMode:"full",theme:e,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const v=new Map;v.set("true",!0),v.set("false",!1);const w=(t,e,s)=>{const n=e.toLowerCase(),i=t.split(`${s}-`)[1];v.has(e)&&(e=v.get(n)),y[i]=e},A=()=>{_||((()=>{const t=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let e;if(t){try{e=JSON.parse(t.innerHTML)}catch(t){console.warn("Incorrect data-sap-ui-config format. Please use JSON")}e&&(y=g(y,e))}})(),(()=>{const t=new URLSearchParams(window.location.search);t.forEach(((t,e)=>{const s=e.split("sap-").length;0!==s&&s!==e.split("sap-ui-").length&&w(e,t,"sap")})),t.forEach(((t,e)=>{e.startsWith("sap-ui")&&w(e,t,"sap-ui")}))})(),(()=>{const t=m("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();y=g(y,e)})(),_=!0)};class b{constructor(){this._eventRegistry=new Map}attachEvent(t,e){const s=this._eventRegistry,n=s.get(t);Array.isArray(n)?n.includes(e)||n.push(e):s.set(t,[e])}detachEvent(t,e){const s=this._eventRegistry,n=s.get(t);if(!n)return;const i=n.indexOf(e);-1!==i&&n.splice(i,1),0===n.length&&s.delete(t)}fireEvent(t,e){const s=this._eventRegistry.get(t);return s?s.map((t=>t.call(this,e))):[]}fireEventAsync(t,e){return Promise.all(this.fireEvent(t,e))}isHandlerAttached(t,e){const s=this._eventRegistry.get(t);return!!s&&s.includes(e)}hasListeners(t){return!!this._eventRegistry.get(t)}}const $=new b,S=t=>{$.attachEvent("languageChange",t)};const C=t=>{const e=[];return t.forEach((t=>{e.push(t)})),e},E=new Set,M=new Set;let O;const T=t=>{E.add(t)},P=()=>{console.warn(`The following tags have already been defined by a different UI5 Web Components version: ${C(M).join(", ")}`),M.clear()},x=new Set,L=new Set,I=new b,D=new class{constructor(){this.list=[],this.lookup=new Set}add(t){this.lookup.has(t)||(this.list.push(t),this.lookup.add(t))}remove(t){this.lookup.has(t)&&(this.list=this.list.filter((e=>e!==t)),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return 0===this.list.length}isAdded(t){return this.lookup.has(t)}process(t){let e;const s=new Map;for(e=this.shift();e;){const n=s.get(e)||0;if(n>10)throw new Error("Web component processed too many times this task, max allowed is: 10");t(e),s.set(e,n+1),e=this.shift()}}};let R,N,k,U;const j=async t=>{D.add(t),await B()},H=t=>{I.fireEvent("beforeComponentRender",t),L.add(t),t._render()},B=async()=>{U||(U=new Promise((t=>{window.requestAnimationFrame((()=>{D.process(H),U=null,t(),k||(k=setTimeout((()=>{k=void 0,D.isEmpty()&&z()}),200))}))}))),await U},V=()=>{const t=C(E).map((t=>customElements.whenDefined(t)));return Promise.all(t)},Z=async()=>{await V(),await(R||(R=new Promise((t=>{N=t,window.requestAnimationFrame((()=>{D.isEmpty()&&(R=void 0,t())}))})),R))},z=()=>{D.isEmpty()&&N&&(N(),N=void 0,R=void 0)},W=async t=>{L.forEach((e=>{const s=e.constructor.getMetadata().getTag(),n=(i=e.constructor,x.has(i));var i;const r=e.constructor.getMetadata().isLanguageAware();(!t||t.tag===s||t.rtlAware&&n||t.languageAware&&r)&&j(e)})),await Z()};let q,F;const G=()=>(void 0===q&&(A(),q=y.language),q),J=()=>{var t;return void 0===F&&(A(),t=y.fetchDefaultLanguage,F=t),F},K=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;class Y{constructor(t){const e=K.exec(t.replace(/_/g,"-"));if(null===e)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=e[1]||null,this.sScript=e[2]||null,this.sRegion=e[3]||null,this.sVariant=e[4]&&e[4].slice(1)||null,this.sExtension=e[5]&&e[5].slice(1)||null,this.sPrivateUse=e[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,(t=>t.toUpperCase()))),this.sRegion&&(this.sRegion=this.sRegion.toUpperCase())}getLanguage(){return this.sLanguage}getScript(){return this.sScript}getRegion(){return this.sRegion}getVariant(){return this.sVariant}getVariantSubtags(){return this.sVariant?this.sVariant.split("-"):[]}getExtension(){return this.sExtension}getExtensionSubtags(){return this.sExtension?this.sExtension.slice(2).split("-"):[]}getPrivateUse(){return this.sPrivateUse}getPrivateUseSubtags(){return this.sPrivateUse?this.sPrivateUse.slice(2).split("-"):[]}hasPrivateUseSubtag(t){return this.getPrivateUseSubtags().indexOf(t)>=0}toString(){const t=[this.sLanguage];return this.sScript&&t.push(this.sScript),this.sRegion&&t.push(this.sRegion),this.sVariant&&t.push(this.sVariant),this.sExtension&&t.push(this.sExtension),this.sPrivateUse&&t.push(this.sPrivateUse),t.join("-")}}const X=new Map,Q=t=>(X.has(t)||X.set(t,new Y(t)),X.get(t)),tt=t=>{try{if(t&&"string"==typeof t)return Q(t)}catch(t){}},et=t=>t?tt(t):G()?Q(G()):tt(r()),st=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i,nt=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,it={he:"iw",yi:"ji",id:"in",sr:"sh"},rt=t=>{if(!t)return n;if("zh_HK"===t)return"zh_TW";const e=t.lastIndexOf("_");return e>=0?t.slice(0,e):t!==n?n:""},at=new Set,ot=new Set,lt=new Map,ct=new Map,ht=new Map,dt=(t,e)=>{lt.set(t,e)},ut=(t,e)=>{const s=`${t}/${e}`;return ht.has(s)},pt=async t=>{const e=et().getLanguage(),i=et().getRegion();let r=(t=>{let e;if(!t)return n;if("string"==typeof t&&(e=st.exec(t.replace(/_/g,"-")))){let t=e[1].toLowerCase(),s=e[3]?e[3].toUpperCase():void 0;const n=e[2]?e[2].toLowerCase():void 0,i=e[4]?e[4].slice(1):void 0,r=e[6];return t=it[t]||t,r&&(e=nt.exec(r))||i&&(e=nt.exec(i))?`en_US_${e[1].toLowerCase()}`:("zh"!==t||s||("hans"===n?s="CN":"hant"===n&&(s="TW")),t+(s?"_"+s+(i?"_"+i.replace("-","_"):""):""))}})(e+(i?`-${i}`:""));for(;r!==s&&!ut(t,r);)r=rt(r);const a=J();if(r!==s||a)if(ut(t,r))try{const e=await((t,e)=>{const s=`${t}/${e}`,n=ht.get(s);return ct.get(s)||ct.set(s,n(e)),ct.get(s)})(t,r);dt(t,e)}catch(t){ot.has(t.message)||(ot.add(t.message),console.error(t.message))}else(t=>{at.has(t)||(console.warn(`[${t}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${t}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`),at.add(t))})(t);else dt(t,null)};S((()=>{const t=[...lt.keys()];return Promise.all(t.map(pt))}));const gt=new Map,ft=new Map,mt=new Map,_t=new Set;let yt=!1;const vt={iw:"he",ji:"yi",in:"id",sh:"sr"},wt=t=>{yt||(console.warn(`[LocaleData] Supported locale "${t}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),yt=!0)},At=(t,e)=>{gt.set(t,e)},bt=async(t,e,s)=>{const r=((t,e,s)=>{"no"===(t=t&&vt[t]||t)&&(t="nb"),"zh"!==t||e||("Hans"===s?e="CN":"Hant"===s&&(e="TW"));let r=`${t}_${e}`;return i.includes(r)?ft.has(r)?r:(wt(r),n):(r=t,i.includes(r)?ft.has(r)?r:(wt(r),n):n)})(t,e,s),a=m("OpenUI5Support");if(a){const t=a.getLocaleDataObject();if(t)return void At(r,t)}try{const t=await(t=>{const e=ft.get(t);return mt.get(t)||mt.set(t,e(t)),mt.get(t)})(r);At(r,t)}catch(t){_t.has(t.message)||(_t.add(t.message),console.error(t.message))}};var $t,St;$t="en",St=async t=>(await fetch("https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json")).json(),ft.set($t,St),S((()=>{const t=et();return bt(t.getLanguage(),t.getRegion(),t.getScript())}));const Ct=new Map,Et=new Map,Mt=new Set,Ot=new Set,Tt=(t,e,s)=>{Et.set(`${t}/${e}`,s),Mt.add(t),Ot.add(e)},Pt=async(t,s)=>{const n=Ct.get(`${t}_${s}`);if(void 0!==n)return n;if(!Ot.has(s)){const s=[...Ot.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${e}. Registered themes are: ${s}`),Ct.get(`${t}_${e}`)}const i=Et.get(`${t}/${s}`);if(!i)return void console.error(`Theme [${s}] not registered for package [${t}]`);let r;try{r=await i(s)}catch(e){return void console.error(t,e.message)}const a=r._||r;return Ct.set(`${t}_${s}`,a),a},xt=()=>Mt,Lt=(t,e=document.body)=>{let s=document.querySelector(t);return s||(s=document.createElement(t),e.insertBefore(s,e.firstChild))},It=(t,e)=>{const s=t.split(".");let n=Lt("ui5-shared-resources",document.head);for(let t=0;t<s.length;t++){const i=s[t],r=t===s.length-1;Object.prototype.hasOwnProperty.call(n,i)||(n[i]=r?e:{}),n=n[i]}return n},Dt=new Map,Rt=It("SVGIcons.registry",new Map),Nt=It("SVGIcons.promises",new Map),kt=(t,{pathData:e,ltr:s,accData:n,collection:i,packageName:r}={})=>{i||(i="SAP-icons");const a=`${i}/${t}`;Rt.set(a,{pathData:e,ltr:s,accData:n,packageName:r})},Ut=async t=>{const{collection:e,registryKey:s}=(t=>{let e;return t.startsWith("sap-icon://")&&(t=t.replace("sap-icon://","")),[t,e]=t.split("/").reverse(),e=e||"SAP-icons","SAP-icons-TNT"===e&&(e="tnt"),"BusinessSuiteInAppSymbols"===e&&(e="business-suite",t=t.replace("icon-","")),{name:t,collection:e,registryKey:`${e}/${t}`}})(t);let n="ICON_NOT_FOUND";try{n=await(async t=>{if(!Nt.has(t)){if(!Dt.has(t))throw new Error(`No loader registered for the ${t} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const e=Dt.get(t);Nt.set(t,e(t))}return Nt.get(t)})(e)}catch(t){console.error(t.message)}return"ICON_NOT_FOUND"===n?n:(Rt.has(s)||(t=>{Object.keys(t.data).forEach((e=>{const s=t.data[e];kt(e,{pathData:s.path,ltr:s.ltr,accData:s.acc,collection:t.collection,packageName:t.packageName})}))})(n),Rt.get(s))},jt=(t,e={})=>{const s=document.createElement("style");return s.type="text/css",Object.entries(e).forEach((t=>s.setAttribute(...t))),s.textContent=t,document.head.appendChild(s),s},Ht=(t,e)=>{const s=document.head.querySelector(`style[data-ui5-theme-properties="${e}"]`);if(s)s.textContent=t||"";else{jt(t,{"data-ui5-theme-properties":e})}},Bt=()=>{const t=(()=>{let t=document.querySelector(".sapThemeMetaData-Base-baseLib");if(t)return getComputedStyle(t).backgroundImage;t=document.createElement("span"),t.style.display="none",t.classList.add("sapThemeMetaData-Base-baseLib"),document.body.appendChild(t);const e=getComputedStyle(t).backgroundImage;return document.body.removeChild(t),e})();if(!t||"none"===t)return;const e=(t=>{const e=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(t);if(e&&e.length>=2){let t=e[1];if(t=t.replace(/\\"/g,'"'),"{"!==t.charAt(0)&&"}"!==t.charAt(t.length-1))try{t=decodeURIComponent(t)}catch(t){return void console.warn("Malformed theme metadata string, unable to decodeURIComponent")}try{return JSON.parse(t)}catch(t){console.warn("Malformed theme metadata string, unable to parse JSON")}}})(t);return(t=>{let e,s;try{e=t.Path.match(/\.([^.]+)\.css_variables$/)[1],s=t.Extends[0]}catch(e){return void console.warn("Malformed theme metadata Object",t)}return{themeName:e,baseThemeName:s}})(e)},Vt=new b,Zt="@ui5/webcomponents-theme-base",zt=async t=>{if(!xt().has(Zt))return;const e=await Pt(Zt,t);Ht(e,Zt)},Wt=async t=>{const e=(()=>{const t=Bt();if(t)return t;const e=m("OpenUI5Support");if(e&&e.cssVariablesLoaded())return{themeName:e.getConfigurationSettingsObject().theme}})();e&&t===e.themeName?(()=>{const t=document.head.querySelector(`style[data-ui5-theme-properties="${Zt}"]`);t&&t.parentElement.removeChild(t)})():await zt(t);const s=(t=>Ot.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{xt().forEach((async e=>{if(e===Zt)return;const s=await Pt(e,t);Ht(s,e)}))})(s),(t=>{Vt.fireEvent("themeLoaded",t)})(t)};let qt;const Ft=()=>(void 0===qt&&(A(),qt=y.theme),qt),Gt=async t=>{qt!==t&&(qt=t,await Wt(qt))},Jt=It("PopupUtilsData",{});Jt.currentZIndex=Jt.currentZIndex||100;const Kt=()=>Jt.currentZIndex,Yt=()=>{const t=window.sap;return t&&t.ui&&"function"==typeof t.ui.getCore&&t.ui.getCore()};var Xt,Qt;Xt="OpenUI5Support",Qt={isLoaded:()=>!!Yt(),init:()=>{const t=Yt();return t?new Promise((e=>{t.attachInit((()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],((t,s)=>{s.setInitialZIndex(Kt()),e()}))}))})):Promise.resolve()},getConfigurationSettingsObject:()=>{const t=Yt();if(!t)return;const e=t.getConfiguration(),s=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:e.getAnimationMode(),language:e.getLanguage(),theme:e.getTheme(),rtl:e.getRTL(),calendarType:e.getCalendarType(),formatSettings:{firstDayOfWeek:s?s.getInstance(e.getLocale()).getFirstDayOfWeek():void 0}}},getLocaleDataObject:()=>{const t=Yt();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()},attachListeners:()=>{Yt()&&(()=>{const t=Yt(),e=t.getConfiguration();t.attachThemeChanged((async()=>{await Gt(e.getTheme())}))})()},cssVariablesLoaded:()=>{if(!Yt())return;const t=[...document.head.children].find((t=>"sap-ui-theme-sap.ui.core"===t.id));return t?!!t.href.match(/\/css(-|_)variables\.css/):void 0},getNextZIndex:()=>{if(!Yt())return;return window.sap.ui.require("sap/ui/core/Popup").getNextZIndex()},setInitialZIndex:()=>{if(!Yt())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(Kt())}},f.set(Xt,Qt);const te=()=>{document.querySelector("head>style[data-ui5-font-face]")||jt('\n\t@font-face {\n\t\tfont-family: "72";\n\t\tfont-style: normal;\n\t\tfont-weight: 400;\n\t\tsrc: local("72"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff?ui5-webcomponents) format("woff");\n\t}\n\t\n\t@font-face {\n\t\tfont-family: "72full";\n\t\tfont-style: normal;\n\t\tfont-weight: 400;\n\t\tsrc: local(\'72-full\'),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff?ui5-webcomponents) format("woff");\n\t\t\n\t}\n\t\n\t@font-face {\n\t\tfont-family: "72";\n\t\tfont-style: normal;\n\t\tfont-weight: 700;\n\t\tsrc: local(\'72-Bold\'),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff?ui5-webcomponents) format("woff");\n\t}\n\t\n\t@font-face {\n\t\tfont-family: "72full";\n\t\tfont-style: normal;\n\t\tfont-weight: 700;\n\t\tsrc: local(\'72-Bold-full\'),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff?ui5-webcomponents) format("woff");\n\t}\n',{"data-ui5-font-face":""})},ee=()=>{document.querySelector("head>style[data-ui5-font-face-override]")||jt("\n\t@font-face {\n\t\tfont-family: '72override';\n\t\tunicode-range: U+0102-0103, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EB7, U+1EB8-1EC7, U+1EC8-1ECB, U+1ECC-1EE3, U+1EE4-1EF1, U+1EF4-1EF7;\n\t\tsrc: local('Arial'), local('Helvetica'), local('sans-serif');\n\t}\n",{"data-ui5-font-face-override":""})};let se=!1;const ne=new b,ie=async()=>{if(se)return;const t=m("OpenUI5Support");t&&await t.init(),await new Promise((t=>{document.body?t():document.addEventListener("DOMContentLoaded",(()=>{t()}))})),await Wt(Ft()),t&&t.attachListeners(),(()=>{const t=m("OpenUI5Support");t&&t.isLoaded()||te(),ee()})(),document.querySelector("head>style[data-ui5-system-css-vars]")||jt('\n\t:root {\n\t\t--_ui5_content_density:cozy;\n\t}\n\t\n\t[data-ui5-compact-size],\n\t.ui5-content-density-compact,\n\t.sapUiSizeCompact {\n\t\t--_ui5_content_density:compact;\n\t}\n\t\n\t[dir="rtl"] {\n\t\t--_ui5_dir:rtl;\n\t}\n\t\n\t[dir="ltr"] {\n\t\t--_ui5_dir:ltr;\n\t}\n',{"data-ui5-system-css-vars":""}),await ne.fireEventAsync("boot"),se=!0};class re{static isValid(t){}static attributeToProperty(t){return t}static propertyToAttribute(t){return`${t}`}static valuesAreEqual(t,e){return t===e}static generateTypeAccessors(t){Object.keys(t).forEach((e=>{Object.defineProperty(this,e,{get:()=>t[e]})}))}}const ae=(t,e,s=!1)=>{if("function"!=typeof t||"function"!=typeof e)return!1;if(s&&t===e)return!0;let n=t;do{n=Object.getPrototypeOf(n)}while(null!==n&&n!==e);return n===e},oe=new Map,le=new Map,ce=t=>{if(!oe.has(t)){const e=de(t.split("-"));oe.set(t,e)}return oe.get(t)},he=t=>{if(!le.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();le.set(t,e)}return le.get(t)},de=t=>t.map(((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase())).join(""),ue=t=>t&&t instanceof HTMLElement&&"slot"===t.localName,pe=t=>ue(t)?t.assignedNodes({flatten:!0}).filter((t=>t instanceof HTMLElement)):[t];let ge={include:[/^ui5-/],exclude:[]};const fe=new Map,me=t=>{if(!fe.has(t)){const e=ge.include.some((e=>t.match(e)))&&!ge.exclude.some((e=>t.match(e)));fe.set(t,e)}return fe.get(t)},_e=t=>{me(t)};class ye{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},e=this.slotsAreManaged(),s=this.getProperties();for(const e in s){const n=s[e].type,i=s[e].defaultValue;n===Boolean?(t[e]=!1,void 0!==i&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):s[e].multiple?t[e]=[]:t[e]=n===Object?"defaultValue"in s[e]?s[e].defaultValue:{}:n===String?"defaultValue"in s[e]?s[e].defaultValue:"":i}if(e){const e=this.getSlots();for(const[s,n]of Object.entries(e)){t[n.propertyName||s]=[]}}return this._initialState=t,t}static validatePropertyValue(t,e){return e.multiple?t.map((t=>ve(t,e))):ve(t,e)}static validateSlotValue(t,e){return we(t,e)}getPureTag(){return this.metadata.tag}getTag(){const t=this.metadata.tag,e=_e(t);return e?`${t}-${e}`:t}getAltTag(){const t=this.metadata.altTag;if(!t)return;const e=_e(t);return e?`${t}-${e}`:t}hasAttribute(t){const e=this.getProperties()[t];return e.type!==Object&&!e.noAttribute&&!e.multiple}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute,this).map(he)}getSlots(){return this.metadata.slots||{}}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.entries(this.getSlots()).some((([t,e])=>e.individualSlots))}slotsAreManaged(){return!!this.metadata.managedSlots}getProperties(){return this.metadata.properties||{}}getEvents(){return this.metadata.events||{}}isLanguageAware(){return!!this.metadata.languageAware}shouldInvalidateOnChildChange(t,e,s){const n=this.getSlots()[t].invalidateOnChildChange;if(void 0===n)return!1;if("boolean"==typeof n)return n;if("object"==typeof n){if("property"===e){if(void 0===n.properties)return!1;if("boolean"==typeof n.properties)return n.properties;if(Array.isArray(n.properties))return n.properties.includes(s);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if("slot"===e){if(void 0===n.slots)return!1;if("boolean"==typeof n.slots)return n.slots;if(Array.isArray(n.slots))return n.slots.includes(s);throw new Error("Wrong format for invalidateOnChildChange.slots: boolean or array is expected")}}throw new Error("Wrong format for invalidateOnChildChange: boolean or object is expected")}}const ve=(t,e)=>{const s=e.type;return s===Boolean?"boolean"==typeof t&&t:s===String?"string"==typeof t||null==t?t:t.toString():s===Object?"object"==typeof t?t:e.defaultValue:ae(s,re)?s.isValid(t)?t:e.defaultValue:void 0},we=(t,e)=>(t&&pe(t).forEach((t=>{if(!(t instanceof e.type))throw new Error(`${t} is not of type ${e.type}`)})),t);customElements.get("ui5-static-area")||customElements.define("ui5-static-area",class extends HTMLElement{});const Ae=new b,be=t=>{Ae.attachEvent("CustomCSSChange",t)},$e={},Se=t=>Array.isArray(t)?Ce(t.filter((t=>!!t))).join(" "):t,Ce=t=>t.reduce(((t,e)=>t.concat(Array.isArray(e)?Ce(e):e)),[]),Ee=new Map;be((t=>{Ee.delete(`${t}_normal`)}));const Me=(t,e=!1)=>{const s=t.getMetadata().getTag(),n=`${s}_${e?"static":"normal"}`;if(!Ee.has(n)){let i;if(e)i=Se(t.staticAreaStyles);else{const e=(t=>$e[t]?$e[t].join(""):"")(s)||"";i=`${Se(t.styles)} ${e}`}Ee.set(n,i)}return Ee.get(n)},Oe=new Map;be((t=>{Oe.delete(`${t}_normal`)}));const Te=()=>!!window.ShadyDOM,Pe=(t,e=!1)=>{let s;const n=e?"staticAreaTemplate":"template",i=e?t.staticAreaItem.shadowRoot:t.shadowRoot,r=((t,e)=>{const s=e.constructor.getUniqueDependencies().map((t=>t.getMetadata().getPureTag())).filter(me);return t(e,s,void 0)})(t.constructor[n],t);document.adoptedStyleSheets?i.adoptedStyleSheets=((t,e=!1)=>{const s=`${t.getMetadata().getTag()}_${e?"static":"normal"}`;if(!Oe.has(s)){const n=Me(t,e),i=new CSSStyleSheet;i.replaceSync(n),Oe.set(s,[i])}return Oe.get(s)})(t.constructor,e):Te()||(s=Me(t.constructor,e)),t.constructor.render(r,i,s,{host:t})};const xe={iw:"he",ji:"yi",in:"id",sh:"sr"},Le=(t=>{const e=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(t);return e&&e[2]?e[2].split(/,/):null})("$cldr-rtl-locales:ar,fa,he$")||[],Ie=()=>{const t=(A(),y.rtl);return null!==t?!!t:(t=>(t=t&&xe[t]||t,Le.indexOf(t)>=0))(G()||r())},De=t=>{const e=window.document,s=["ltr","rtl"],n=getComputedStyle(t).getPropertyValue("--_ui5_dir");return s.includes(n)?n:s.includes(t.dir)?t.dir:s.includes(e.documentElement.dir)?e.documentElement.dir:s.includes(e.body.dir)?e.body.dir:Ie()?"rtl":void 0};class Re extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id)}update(){this._rendered&&(this._updateContentDensity(),this._updateDirection(),Pe(this.ownerElement,!0))}_updateContentDensity(){var t;"compact"===(t=this.ownerElement,getComputedStyle(t).getPropertyValue("--_ui5_content_density"))?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){const t=De(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,Pe(this.ownerElement,!0)),await Z(),this.shadowRoot}getStableDomRef(t){return this.shadowRoot.querySelector(`[data-ui5-stable=${t}]`)}static getTag(){const t="ui5-static-area-item",e=_e(t);return e?`${t}-${e}`:t}static createInstance(){return customElements.get(Re.getTag())||customElements.define(Re.getTag(),Re),document.createElement(this.getTag())}}const Ne=new WeakMap;const ke=(t,e,s)=>{const n=((t,e,s)=>{const n=new MutationObserver(e);return n.observe(t,s),n})(t,e,s);Ne.set(t,n)},Ue=["value-changed"];let je;const He=()=>(void 0===je&&(A(),je=y.noConflict),je),Be=t=>{const e=He();return!(t=>Ue.includes(t))(t)&&(!0===e||!(t=>{const e=He();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))},Ve=["disabled","title","hidden","role","draggable"],Ze=t=>{if(Ve.includes(t)||t.startsWith("aria"))return!0;return![HTMLElement,Element,Node].some((e=>e.prototype.hasOwnProperty(t)))},ze=(t,e)=>{if(t.length!==e.length)return!1;for(let s=0;s<t.length;s++)if(t[s]!==e[s])return!1;return!0},We=(t,e)=>class extends t{constructor(){super(),e&&e()}};let qe=0;const Fe=new Map,Ge=new Map;function Je(t){this._suppressInvalidation||(this.onInvalidation(t),this._changedState.push(t),j(this),this._eventProvider.fireEvent("invalidate",{...t,target:this}))}class Ke extends HTMLElement{constructor(){let t;super(),this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new b,this._domRefReadyPromise=new Promise((e=>{t=e})),this._domRefReadyPromise._deferredResolve=t,this._initializeState(),this._upgradeAllProperties(),this.constructor._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id="ui5wc_"+ ++qe),this.__id}async connectedCallback(){this.setAttribute(this.constructor.getMetadata().getPureTag(),"");const t=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!0,t&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&(H(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,"function"==typeof this.onEnterDOM&&this.onEnterDOM())}disconnectedCallback(){const t=this.constructor.getMetadata().slotsAreManaged();var e;this._inDOM=!1,t&&this._stopObservingDOMChildren(),this._fullyConnected&&("function"==typeof this.onExitDOM&&this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),e=this,D.remove(e),L.delete(e)}_startObservingDOMChildren(){if(!this.constructor.getMetadata().hasSlots())return;const t=this.constructor.getMetadata().canSlotText(),e={childList:!0,subtree:t,characterData:t};ke(this,this._processChildren.bind(this),e)}_stopObservingDOMChildren(){(t=>{const e=Ne.get(t);e&&((t=>{t.disconnect()})(e),Ne.delete(t))})(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor.getMetadata().getSlots(),e=this.constructor.getMetadata().canSlotText(),s=Array.from(e?this.childNodes:this.children),n=new Map,i=new Map;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;i.set(t,e),n.set(t,[...this._state[t]]),this._clearSlot(e,s)}const r=new Map,a=new Map,o=s.map((async(e,s)=>{const n=(t=>{if(!(t instanceof HTMLElement))return"default";const e=t.getAttribute("slot");if(e){const t=e.match(/^(.+?)-\d+$/);return t?t[1]:e}return"default"})(e),i=t[n];if(void 0===i){const s=Object.keys(t).join(", ");return void console.warn(`Unknown slotName: ${n}, ignoring`,e,`Valid values are: ${s}`)}if(i.individualSlots){const t=(r.get(n)||0)+1;r.set(n,t),e._individualSlot=`${n}-${t}`}if(e instanceof HTMLElement){const t=e.localName;if(t.includes("-")){if(!window.customElements.get(t)){const e=window.customElements.whenDefined(t);let s=Fe.get(t);s||(s=new Promise((t=>setTimeout(t,1e3))),Fe.set(t,s)),await Promise.race([e,s])}window.customElements.upgrade(e)}}(e=this.constructor.getMetadata().constructor.validateSlotValue(e,i)).isUI5Element&&i.invalidateOnChildChange&&e.attachInvalidate(this._getChildChangeListener(n)),ue(e)&&this._attachSlotChange(e,n);const o=i.propertyName||n;a.has(o)?a.get(o).push({child:e,idx:s}):a.set(o,[{child:e,idx:s}])}));await Promise.all(o),a.forEach(((t,e)=>{this._state[e]=t.sort(((t,e)=>t.idx-e.idx)).map((t=>t.child))}));let l=!1;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;ze(n.get(t),this._state[t])||(Je.call(this,{type:"slot",name:i.get(t),reason:"children"}),l=!0)}l||Je.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,e){const s=e.propertyName||t;this._state[s].forEach((e=>{e&&e.isUI5Element&&e.detachInvalidate(this._getChildChangeListener(t)),ue(e)&&this._detachSlotChange(e,t)})),this._state[s]=[]}attachInvalidate(t){this._eventProvider.attachEvent("invalidate",t)}detachInvalidate(t){this._eventProvider.detachEvent("invalidate",t)}_onChildChange(t,e){this.constructor.getMetadata().shouldInvalidateOnChildChange(t,e.type,e.name)&&Je.call(this,{type:"slot",name:t,reason:"childchange",child:e.target})}attributeChangedCallback(t,e,s){const n=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),r=ce(i);if(n.hasOwnProperty(r)){const t=n[r].type;t===Boolean?s=null!==s:ae(t,re)&&(s=t.attributeToProperty(s)),this[r]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;const s=this.constructor.getMetadata().getProperties()[t].type,n=he(t),i=this.getAttribute(n);s===Boolean?!0===e&&null===i?this.setAttribute(n,""):!1===e&&null!==i&&this.removeAttribute(n):ae(s,re)?this.setAttribute(n,s.propertyToAttribute(e)):"object"!=typeof e&&i!==e&&this.setAttribute(n,e)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const e=this[t];delete this[t],this[t]=e}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty,this)}_initializeState(){this._state={...this.constructor.getMetadata().getInitialState()}}_getChildChangeListener(t){return this._childChangeListeners.has(t)||this._childChangeListeners.set(t,this._onChildChange.bind(this,t)),this._childChangeListeners.get(t)}_getSlotChangeListener(t){return this._slotChangeListeners.has(t)||this._slotChangeListeners.set(t,this._onSlotChange.bind(this,t)),this._slotChangeListeners.get(t)}_attachSlotChange(t,e){t.addEventListener("slotchange",this._getSlotChangeListener(e))}_detachSlotChange(t,e){t.removeEventListener("slotchange",this._getSlotChangeListener(e))}_onSlotChange(t){Je.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,"function"==typeof this.onBeforeRendering&&this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],this.constructor._needsShadowDOM()&&Pe(this),this.staticAreaItem&&this.staticAreaItem.update(),t&&this._assignIndividualSlotsToChildren(),"function"==typeof this.onAfterRendering&&this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach((t=>{t._individualSlot&&t.setAttribute("slot",t._individualSlot)}))}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if(this.shadowRoot&&0!==this.shadowRoot.children.length)return this._assertShadowRootStructure(),1===this.shadowRoot.children.length?this.shadowRoot.children[0]:this.shadowRoot.children[1]}_assertShadowRootStructure(){const t=document.adoptedStyleSheets||Te()?1:2;this.shadowRoot.children.length!==t&&console.warn(`The shadow DOM for ${this.constructor.getMetadata().getTag()} does not have a top level element, the getDomRef() method might not work as expected`)}getFocusDomRef(){const t=this.getDomRef();if(t){return t.querySelector("[data-sap-focus-ref]")||t}}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}getStableDomRef(t){return this.staticAreaItem&&this.staticAreaItem.getStableDomRef(t)||this.getDomRef().querySelector(`[data-ui5-stable=${t}]`)}async focus(){await this._waitForDomRef();const t=this.getFocusDomRef();t&&"function"==typeof t.focus&&t.focus()}fireEvent(t,e,s=!1,n=!0){const i=this._fireEvent(t,e,s,n),r=ce(t);return r!==t?i&&this._fireEvent(r,e,s):i}_fireEvent(t,e,s=!1,n=!0){const i=new CustomEvent(`ui5-${t}`,{detail:e,composed:!1,bubbles:n,cancelable:s}),r=this.dispatchEvent(i);if(Be(t))return r;const a=new CustomEvent(t,{detail:e,composed:!1,bubbles:n,cancelable:s});return this.dispatchEvent(a)&&r}getSlottedNodes(t){return this[t].reduce(((t,e)=>t.concat(pe(e))),[])}get effectiveDir(){var t;return t=this.constructor,x.add(t),De(this)}get isUI5Element(){return!0}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _needsShadowDOM(){return!!this.template}static _needsStaticArea(){return!!this.staticAreaTemplate}getStaticAreaItemDomRef(){if(!this.constructor._needsStaticArea())throw new Error("This component does not use the static area");return this.staticAreaItem||(this.staticAreaItem=Re.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||Lt("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,e=this.getMetadata().slotsAreManaged(),s=this.getMetadata().getProperties();for(const[e,n]of Object.entries(s)){if(Ze(e)||console.warn(`"${e}" is not a valid property name. Use a name that does not collide with DOM APIs`),n.type===Boolean&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All booleans are false by default.`);if(n.type===Array)throw new Error(`Wrong type for property "${e}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(n.type===Object&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All properties of type "Object" are empty objects by default.`);if(n.multiple&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,e,{get(){if(void 0!==this._state[e])return this._state[e];const t=n.defaultValue;return n.type!==Boolean&&(n.type===String?t:n.multiple?[]:t)},set(t){let s;t=this.constructor.getMetadata().constructor.validatePropertyValue(t,n);const i=this._state[e];s=n.multiple&&n.compareValues?!ze(i,t):ae(n.type,re)?!n.type.valuesAreEqual(i,t):i!==t,s&&(this._state[e]=t,Je.call(this,{type:"property",name:e,newValue:t,oldValue:i}),this._updateAttribute(e,t))}})}if(e){const e=this.getMetadata().getSlots();for(const[s,n]of Object.entries(e)){Ze(s)||console.warn(`"${s}" is not a valid property name. Use a name that does not collide with DOM APIs`);const e=n.propertyName||s;Object.defineProperty(t,e,{get(){return void 0!==this._state[e]?this._state[e]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get metadata(){return{}}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!Ge.has(this)){const t=this.dependencies.filter(((t,e,s)=>s.indexOf(t)===e));Ge.set(this,t)}return Ge.get(this)}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map((t=>t.define())))}static async onDefine(){return Promise.resolve()}static async define(){await ie(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=this.getMetadata().getAltTag(),s=(t=>E.has(t))(t),n=customElements.get(t);return n&&!s?(t=>{M.add(t),O||(O=setTimeout((()=>{P(),O=void 0}),1e3))})(t):n||(this._generateAccessors(),T(t),window.customElements.define(t,this),e&&!customElements.get(e)&&(T(e),window.customElements.define(e,We(this,(()=>{console.log(`The ${e} tag is deprecated and will be removed in the next release, please use ${t} instead.`)}))))),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==Ke;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=g({},...t);return this._metadata=new ye(s),this._metadata}}
2
- /**
3
- * @license
4
- * Copyright 2017 Google LLC
5
- * SPDX-License-Identifier: BSD-3-Clause
6
- */var Ye,Xe;const Qe=globalThis.trustedTypes,ts=Qe?Qe.createPolicy("lit-html",{createHTML:t=>t}):void 0,es=`lit$${(Math.random()+"").slice(9)}$`,ss="?"+es,ns=`<${ss}>`,is=document,rs=(t="")=>is.createComment(t),as=t=>null===t||"object"!=typeof t&&"function"!=typeof t,os=Array.isArray,ls=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,cs=/-->/g,hs=/>/g,ds=/>|[ \n \r](?:([^\s"'>=/]+)([ \n \r]*=[ \n \r]*(?:[^ \n \r"'`<>=]|("|')|))|$)/g,us=/'/g,ps=/"/g,gs=/^(?:script|style|textarea)$/i,fs=(t=>(e,...s)=>({_$litType$:t,strings:e,values:s}))(1),ms=Symbol.for("lit-noChange"),_s=Symbol.for("lit-nothing"),ys=new WeakMap,vs=is.createTreeWalker(is,129,null,!1),ws=(t,e)=>{const s=t.length-1,n=[];let i,r=2===e?"<svg>":"",a=ls;for(let e=0;e<s;e++){const s=t[e];let o,l,c=-1,h=0;for(;h<s.length&&(a.lastIndex=h,l=a.exec(s),null!==l);)h=a.lastIndex,a===ls?"!--"===l[1]?a=cs:void 0!==l[1]?a=hs:void 0!==l[2]?(gs.test(l[2])&&(i=RegExp("</"+l[2],"g")),a=ds):void 0!==l[3]&&(a=ds):a===ds?">"===l[0]?(a=null!=i?i:ls,c=-1):void 0===l[1]?c=-2:(c=a.lastIndex-l[2].length,o=l[1],a=void 0===l[3]?ds:'"'===l[3]?ps:us):a===ps||a===us?a=ds:a===cs||a===hs?a=ls:(a=ds,i=void 0);const d=a===ds&&t[e+1].startsWith("/>")?" ":"";r+=a===ls?s+ns:c>=0?(n.push(o),s.slice(0,c)+"$lit$"+s.slice(c)+es+d):s+es+(-2===c?(n.push(void 0),e):d)}const o=r+(t[s]||"<?>")+(2===e?"</svg>":"");return[void 0!==ts?ts.createHTML(o):o,n]};class As{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let i=0,r=0;const a=t.length-1,o=this.parts,[l,c]=ws(t,e);if(this.el=As.createElement(l,s),vs.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=vs.nextNode())&&o.length<a;){if(1===n.nodeType){if(n.hasAttributes()){const t=[];for(const e of n.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(es)){const s=c[r++];if(t.push(e),void 0!==s){const t=n.getAttribute(s.toLowerCase()+"$lit$").split(es),e=/([.?@])?(.*)/.exec(s);o.push({type:1,index:i,name:e[2],strings:t,ctor:"."===e[1]?Es:"?"===e[1]?Ms:"@"===e[1]?Os:Cs})}else o.push({type:6,index:i})}for(const e of t)n.removeAttribute(e)}if(gs.test(n.tagName)){const t=n.textContent.split(es),e=t.length-1;if(e>0){n.textContent=Qe?Qe.emptyScript:"";for(let s=0;s<e;s++)n.append(t[s],rs()),vs.nextNode(),o.push({type:2,index:++i});n.append(t[e],rs())}}}else if(8===n.nodeType)if(n.data===ss)o.push({type:2,index:i});else{let t=-1;for(;-1!==(t=n.data.indexOf(es,t+1));)o.push({type:7,index:i}),t+=es.length-1}i++}}static createElement(t,e){const s=is.createElement("template");return s.innerHTML=t,s}}function bs(t,e,s=t,n){var i,r,a,o;if(e===ms)return e;let l=void 0!==n?null===(i=s._$Cl)||void 0===i?void 0:i[n]:s._$Cu;const c=as(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(r=null==l?void 0:l._$AO)||void 0===r||r.call(l,!1),void 0===c?l=void 0:(l=new c(t),l._$AT(t,s,n)),void 0!==n?(null!==(a=(o=s)._$Cl)&&void 0!==a?a:o._$Cl=[])[n]=l:s._$Cu=l),void 0!==l&&(e=bs(t,l._$AS(t,e.values),l,n)),e}class $s{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:s},parts:n}=this._$AD,i=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:is).importNode(s,!0);vs.currentNode=i;let r=vs.nextNode(),a=0,o=0,l=n[0];for(;void 0!==l;){if(a===l.index){let e;2===l.type?e=new Ss(r,r.nextSibling,this,t):1===l.type?e=new l.ctor(r,l.name,l.strings,this,t):6===l.type&&(e=new Ts(r,this,t)),this.v.push(e),l=n[++o]}a!==(null==l?void 0:l.index)&&(r=vs.nextNode(),a++)}return i}m(t){let e=0;for(const s of this.v)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}}class Ss{constructor(t,e,s,n){var i;this.type=2,this._$AH=_s,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=n,this._$Cg=null===(i=null==n?void 0:n.isConnected)||void 0===i||i}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=bs(this,t,e),as(t)?t===_s||null==t||""===t?(this._$AH!==_s&&this._$AR(),this._$AH=_s):t!==this._$AH&&t!==ms&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.S(t):(t=>{var e;return os(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.M(t):this.$(t)}A(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}S(t){this._$AH!==t&&(this._$AR(),this._$AH=this.A(t))}$(t){this._$AH!==_s&&as(this._$AH)?this._$AA.nextSibling.data=t:this.S(is.createTextNode(t)),this._$AH=t}T(t){var e;const{values:s,_$litType$:n}=t,i="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=As.createElement(n.h,this.options)),n);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===i)this._$AH.m(s);else{const t=new $s(i,this),e=t.p(this.options);t.m(s),this.S(e),this._$AH=t}}_$AC(t){let e=ys.get(t.strings);return void 0===e&&ys.set(t.strings,e=new As(t)),e}M(t){os(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let s,n=0;for(const i of t)n===e.length?e.push(s=new Ss(this.A(rs()),this.A(rs()),this,this.options)):s=e[n],s._$AI(i),n++;n<e.length&&(this._$AR(s&&s._$AB.nextSibling,n),e.length=n)}_$AR(t=this._$AA.nextSibling,e){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class Cs{constructor(t,e,s,n,i){this.type=1,this._$AH=_s,this._$AN=void 0,this.element=t,this.name=e,this._$AM=n,this.options=i,s.length>2||""!==s[0]||""!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=_s}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,s,n){const i=this.strings;let r=!1;if(void 0===i)t=bs(this,t,e,0),r=!as(t)||t!==this._$AH&&t!==ms,r&&(this._$AH=t);else{const n=t;let a,o;for(t=i[0],a=0;a<i.length-1;a++)o=bs(this,n[s+a],e,a),o===ms&&(o=this._$AH[a]),r||(r=!as(o)||o!==this._$AH[a]),o===_s?t=_s:t!==_s&&(t+=(null!=o?o:"")+i[a+1]),this._$AH[a]=o}r&&!n&&this.k(t)}k(t){t===_s?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class Es extends Cs{constructor(){super(...arguments),this.type=3}k(t){this.element[this.name]=t===_s?void 0:t}}class Ms extends Cs{constructor(){super(...arguments),this.type=4}k(t){t&&t!==_s?this.element.setAttribute(this.name,""):this.element.removeAttribute(this.name)}}class Os extends Cs{constructor(t,e,s,n,i){super(t,e,s,n,i),this.type=5}_$AI(t,e=this){var s;if((t=null!==(s=bs(this,t,e,0))&&void 0!==s?s:_s)===ms)return;const n=this._$AH,i=t===_s&&n!==_s||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,r=t!==_s&&(n===_s||i);i&&this.element.removeEventListener(this.name,this,n),r&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,s;"function"==typeof this._$AH?this._$AH.call(null!==(s=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class Ts{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){bs(this,t)}}null===(Ye=globalThis.litHtmlPolyfillSupport)||void 0===Ye||Ye.call(globalThis,As,Ss),(null!==(Xe=globalThis.litHtmlVersions)&&void 0!==Xe?Xe:globalThis.litHtmlVersions=[]).push("2.0.0");
7
- /**
8
- * @license
9
- * Copyright 2020 Google LLC
10
- * SPDX-License-Identifier: BSD-3-Clause
11
- */
12
- const Ps=new Map,xs=(t=>(e,...s)=>{var n;const i=s.length;let r,a;const o=[],l=[];let c,h=0,d=!1;for(;h<i;){for(c=e[h];h<i&&void 0!==(a=s[h],r=null===(n=a)||void 0===n?void 0:n._$litStatic$);)c+=r+e[++h],d=!0;l.push(a),o.push(c),h++}if(h===i&&o.push(e[i]),d){const t=o.join("$$lit$$");void 0===(e=Ps.get(t))&&Ps.set(t,e=o),s=l}return t(e,...s)})(fs),Ls=2;
13
- /**
14
- * @license
15
- * Copyright 2017 Google LLC
16
- * SPDX-License-Identifier: BSD-3-Clause
17
- */
18
- /**
19
- * @license
20
- * Copyright 2017 Google LLC
21
- * SPDX-License-Identifier: BSD-3-Clause
22
- */
23
- class Is extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){if(super(t),this.it=_s,t.type!==Ls)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===_s||null==t)return this.vt=void 0,this.it=t;if(t===ms)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.vt;this.it=t;const e=[t];return e.raw=e,this.vt={_$litType$:this.constructor.resultType,strings:e,values:[]}}}Is.directiveName="unsafeHTML",Is.resultType=1;const Ds=(t,e,s,{host:n}={})=>{s&&(t=xs`<style>${s}</style>${t}`),((t,e,s)=>{var n,i;const r=null!==(n=null==s?void 0:s.renderBefore)&&void 0!==n?n:e;let a=r._$litPart$;if(void 0===a){const t=null!==(i=null==s?void 0:s.renderBefore)&&void 0!==i?i:null;r._$litPart$=a=new Ss(e.insertBefore(rs(),t),t,void 0,null!=s?s:{})}a._$AI(t)})(t,e,{host:n})},Rs={tag:"ui5-test-generic",properties:{strProp:{type:String},boolProp:{type:Boolean},objectProp:{type:Object},noAttributeProp:{type:String,noAttribute:!0},multiProp:{type:String,multiple:!0},defaultValueProp:{type:String,defaultValue:"Hello"}},managedSlots:!0,slots:{default:{type:Node},other:{type:HTMLElement},individual:{type:HTMLElement,individualSlots:!0},named:{type:HTMLElement,propertyName:"items"}}};class Ns extends Ke{static get metadata(){return Rs}static get render(){return Ds}static get template(){return t=>xs`<div><p>
24
- <slot></slot>
25
- <slot name="other"></slot>
26
- <slot name="individual-1"></slot>
27
- <slot name="individual-2"></slot>
28
- </p></div>`}static get styles(){return":host {\n display: inline-block;\n border: 1px solid black;\n color: var(--var1);\n }"}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}Ns.define();const ks={tag:"ui5-test-no-shadow"};(class extends Ke{static get metadata(){return ks}}).define();const Us={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};(class extends Ke{static get metadata(){return Us}static get render(){return Ds}static get template(){return t=>xs`<div>
29
- <slot></slot>
30
- </div>`}}).define();const js={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};(class extends Ke{static get metadata(){return js}static get render(){return Ds}static get template(){return t=>xs`<div></div>`}}).define();const Hs={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};(class extends Ke{static get metadata(){return Hs}static get render(){return Ds}static get template(){return t=>xs`
31
- <div dir=${t.effectiveDir}>
32
- WithStaticArea works!
33
- </div>`}static get staticAreaTemplate(){return t=>xs`
34
- <div class="ui5-with-static-area-content">
35
- Static area content.
36
- </div>`}static get styles(){return"\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tborder: 1px solid black;\n\t\t\t\tcolor: red;\n\t\t\t}"}async addStaticArea(){if(!this.staticContent)return;const t=await this.getStaticAreaItemDomRef();return this.responsivePopover=t.querySelector(".ui5-with-static-area-content"),this.responsivePopover}onBeforeRendering(){this.addStaticArea()}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}).define();const Bs={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};(class extends Ns{static get metadata(){return Bs}}).define();Tt("@ui5/webcomponents-base-test","sap_fiori_3",(()=>":root{ --var1: red; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_dark",(()=>":root{ --var1: green; }")),Tt("@ui5/webcomponents-base-test","sap_belize",(()=>":root{ --var1: blue; }")),Tt("@ui5/webcomponents-base-test","sap_belize_hcb",(()=>":root{ --var1: orange; }")),Tt("@ui5/webcomponents-base-test","sap_belize_hcw",(()=>":root{ --var1: orange; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_hcb",(()=>":root{ --var1: yellow; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_hcw",(()=>":root{ --var1: yellow; }"));const Vs=navigator.userAgent,Zs=/(msie|trident)/i.test(Vs),zs=!Zs&&/(Chrome|CriOS)/.test(Vs);!Zs&&!zs&&/(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(Vs),!Zs&&/webkit/.test(Vs);!(-1!==navigator.platform.indexOf("Win"))&&/Android/.test(Vs)&&/(?=android)(?=.*mobile)/i.test(Vs),/ipad/i.test(Vs);const Ws=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,qs=new Map;class Fs{constructor(t){this.packageName=t}getText(t,...e){if("string"==typeof t&&(t={key:t,defaultText:t}),!t||!t.key)return"";const s=(n=this.packageName,lt.get(n));var n;s&&!s[t.key]&&console.warn(`Key ${t.key} not found in the i18n bundle, the default text will be used`);const i=s&&s[t.key]?s[t.key]:t.defaultText||t.key;return r=(r=e)||[],i.replace(Ws,((t,e,s,n,i)=>{if(e)return"'";if(s)return s.replace(/''/g,"'");if(n)return String(r[parseInt(n)]);throw new Error(`[i18n]: pattern syntax error at pos ${i}`)}));var r}}let Gs;const Js={Gregorian:"Gregorian",Islamic:"Islamic",Japanese:"Japanese",Buddhist:"Buddhist",Persian:"Persian"};class Ks extends re{static isValid(t){return!!Js[t]}}let Ys;Ks.generateTypeAccessors(Js);let Xs;const Qs=new b;window.isIE=()=>Zs,window.registerThemePropertiesLoader=Tt,window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:()=>(void 0===Gs&&(A(),Gs=y.animationMode),Gs),getLanguage:G,getTheme:Ft,setTheme:Gt,getNoConflict:He,setNoConflict:t=>{je=t},getCalendarType:()=>(void 0===Ys&&(A(),Ys=y.calendarType),Ks.isValid(Ys)?Ys:Ks.Gregorian),getRTL:Ie,getFirstDayOfWeek:()=>(void 0===Xs&&(A(),Xs=y.formatSettings),Xs.firstDayOfWeek)},getIconNames:async()=>(await Ut("edit"),await Ut("tnt/arrow"),await Ut("business-suite/3d"),Array.from(Rt.keys())),registerI18nLoader:(t,e,s)=>{const n=`${t}/${e}`;ht.set(n,s)},fetchI18nBundle:pt,getI18nBundle:t=>{if(qs.has(t))return qs.get(t);const e=new Fs(t);return qs.set(t,e),e},renderFinished:Z,applyDirection:async()=>{const t=Qs.fireEvent("directionChange");await Promise.all(t),await W({rtlAware:!0})},EventProvider:b};
37
- //# sourceMappingURL=bundle.esm.js.map