@ui5/webcomponents-base 0.0.0-974b11d82 → 0.0.0-97db186fd

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 (390) hide show
  1. package/.eslintignore +4 -4
  2. package/.eslintrc.cjs +3 -0
  3. package/.npsrc.json +3 -0
  4. package/CHANGELOG.md +195 -0
  5. package/README.md +4 -0
  6. package/bundle.esm.js +5 -0
  7. package/config/wdio.conf.cjs +400 -0
  8. package/dist/AssetRegistry.js.map +1 -1
  9. package/dist/Boot.d.ts +4 -3
  10. package/dist/Boot.js +27 -4
  11. package/dist/Boot.js.map +1 -1
  12. package/dist/CSP.js.map +1 -1
  13. package/dist/CustomElementsRegistry.js.map +1 -1
  14. package/dist/CustomElementsScope.js.map +1 -1
  15. package/dist/CustomElementsScopeUtils.js.map +1 -1
  16. package/dist/DOMObserver.js.map +1 -1
  17. package/dist/Device.js.map +1 -1
  18. package/dist/EventProvider.js +1 -1
  19. package/dist/EventProvider.js.map +1 -1
  20. package/dist/FeaturesRegistry.js.map +1 -1
  21. package/dist/FontFace.js.map +1 -1
  22. package/dist/IgnoreCustomElements.d.ts +27 -0
  23. package/dist/IgnoreCustomElements.js +39 -0
  24. package/dist/IgnoreCustomElements.js.map +1 -0
  25. package/dist/InitialConfiguration.d.ts +6 -1
  26. package/dist/InitialConfiguration.js +10 -1
  27. package/dist/InitialConfiguration.js.map +1 -1
  28. package/dist/Keys.js.map +1 -1
  29. package/dist/ManagedStyles.js +9 -2
  30. package/dist/ManagedStyles.js.map +1 -1
  31. package/dist/MarkedEvents.js.map +1 -1
  32. package/dist/MediaRange.js.map +1 -1
  33. package/dist/PropertiesFileFormat.js.map +1 -1
  34. package/dist/Render.js.map +1 -1
  35. package/dist/RenderQueue.js.map +1 -1
  36. package/dist/Runtimes.js.map +1 -1
  37. package/dist/StaticArea.d.ts +3 -0
  38. package/dist/StaticArea.js +4 -3
  39. package/dist/StaticArea.js.map +1 -1
  40. package/dist/StaticAreaItem.js +3 -0
  41. package/dist/StaticAreaItem.js.map +1 -1
  42. package/dist/SystemCSSVars.js.map +1 -1
  43. package/dist/Theming.js.map +1 -1
  44. package/dist/UI5Element.d.ts +3 -7
  45. package/dist/UI5Element.js +24 -24
  46. package/dist/UI5Element.js.map +1 -1
  47. package/dist/UI5ElementMetadata.js.map +1 -1
  48. package/dist/animations/AnimationQueue.js.map +1 -1
  49. package/dist/animations/animate.js.map +1 -1
  50. package/dist/animations/scroll.js.map +1 -1
  51. package/dist/animations/slideDown.js.map +1 -1
  52. package/dist/animations/slideUp.js.map +1 -1
  53. package/dist/api.json +1 -1
  54. package/dist/asset-registries/Icons.d.ts +17 -9
  55. package/dist/asset-registries/Icons.js +23 -2
  56. package/dist/asset-registries/Icons.js.map +1 -1
  57. package/dist/asset-registries/Illustrations.js.map +1 -1
  58. package/dist/asset-registries/LocaleData.js.map +1 -1
  59. package/dist/asset-registries/Themes.js +2 -0
  60. package/dist/asset-registries/Themes.js.map +1 -1
  61. package/dist/asset-registries/i18n.js +9 -3
  62. package/dist/asset-registries/i18n.js.map +1 -1
  63. package/dist/assets/Boot.34b7cea0.css +1 -0
  64. package/dist/assets/Boot.7594c895.js +9 -0
  65. package/dist/assets/bundle.esm.37a629e7.js +50 -0
  66. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -1
  67. package/dist/config/AnimationMode.d.ts +2 -2
  68. package/dist/config/AnimationMode.js +1 -1
  69. package/dist/config/AnimationMode.js.map +1 -1
  70. package/dist/config/CalendarType.js.map +1 -1
  71. package/dist/config/FormatSettings.js.map +1 -1
  72. package/dist/config/Icons.js +5 -5
  73. package/dist/config/Icons.js.map +1 -1
  74. package/dist/config/Language.d.ts +10 -1
  75. package/dist/config/Language.js +13 -1
  76. package/dist/config/Language.js.map +1 -1
  77. package/dist/config/NoConflict.js +1 -0
  78. package/dist/config/NoConflict.js.map +1 -1
  79. package/dist/config/RTL.js.map +1 -1
  80. package/dist/config/Theme.d.ts +15 -5
  81. package/dist/config/Theme.js +25 -6
  82. package/dist/config/Theme.js.map +1 -1
  83. package/dist/config/ThemeRoot.d.ts +29 -0
  84. package/dist/config/ThemeRoot.js +59 -0
  85. package/dist/config/ThemeRoot.js.map +1 -0
  86. package/dist/config/Timezone.d.ts +17 -0
  87. package/dist/config/Timezone.js +30 -0
  88. package/dist/config/Timezone.js.map +1 -0
  89. package/dist/decorators/customElement.js +14 -8
  90. package/dist/decorators/customElement.js.map +1 -1
  91. package/dist/decorators/event.js +6 -6
  92. package/dist/decorators/event.js.map +1 -1
  93. package/dist/decorators/property.js +6 -6
  94. package/dist/decorators/property.js.map +1 -1
  95. package/dist/decorators/slot.js +9 -9
  96. package/dist/decorators/slot.js.map +1 -1
  97. package/dist/delegate/ItemNavigation.js.map +1 -1
  98. package/dist/delegate/ResizeHandler.js +7 -5
  99. package/dist/delegate/ResizeHandler.js.map +1 -1
  100. package/dist/delegate/ScrollEnablement.js.map +1 -1
  101. package/dist/features/F6Navigation.js.map +1 -1
  102. package/dist/features/LegacyDateFormats.js.map +1 -1
  103. package/dist/features/OpenUI5Element.js.map +1 -1
  104. package/dist/features/OpenUI5Enablement.js.map +1 -1
  105. package/dist/features/OpenUI5Support.d.ts +1 -0
  106. package/dist/features/OpenUI5Support.js +1 -0
  107. package/dist/features/OpenUI5Support.js.map +1 -1
  108. package/dist/generated/AssetParameters.js +2 -0
  109. package/dist/generated/VersionInfo.js +3 -3
  110. package/dist/generated/css/BusyIndicator.css.js.map +1 -1
  111. package/dist/generated/css/FontFace.css.js.map +1 -1
  112. package/dist/generated/css/OverrideFontFace.css.js.map +1 -1
  113. package/dist/generated/css/SystemCSSVars.css.js.map +1 -1
  114. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  115. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +8 -10
  116. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  117. package/dist/getSharedResource.d.ts +1 -1
  118. package/dist/getSharedResource.js +8 -2
  119. package/dist/getSharedResource.js.map +1 -1
  120. package/dist/global.d.ts +2 -0
  121. package/dist/i18nBundle.js +2 -1
  122. package/dist/i18nBundle.js.map +1 -1
  123. package/dist/locale/Locale.js.map +1 -1
  124. package/dist/locale/RTLAwareRegistry.d.ts +1 -1
  125. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  126. package/dist/locale/applyDirection.js.map +1 -1
  127. package/dist/locale/directionChange.js.map +1 -1
  128. package/dist/locale/getEffectiveDir.js.map +1 -1
  129. package/dist/locale/getLocale.js.map +1 -1
  130. package/dist/locale/languageChange.js.map +1 -1
  131. package/dist/locale/nextFallbackLocale.js.map +1 -1
  132. package/dist/locale/normalizeLocale.js.map +1 -1
  133. package/dist/renderer/LitRenderer.js.map +1 -1
  134. package/dist/renderer/executeTemplate.js +1 -1
  135. package/dist/renderer/executeTemplate.js.map +1 -1
  136. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  137. package/dist/theming/CustomStyle.js.map +1 -1
  138. package/dist/theming/ThemeLoaded.js.map +1 -1
  139. package/dist/theming/ThemeRegistered.d.ts +4 -0
  140. package/dist/theming/ThemeRegistered.js +11 -0
  141. package/dist/theming/ThemeRegistered.js.map +1 -0
  142. package/dist/theming/applyTheme.js +3 -2
  143. package/dist/theming/applyTheme.js.map +1 -1
  144. package/dist/theming/getConstructableStyle.js.map +1 -1
  145. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -1
  146. package/dist/theming/getEffectiveStyle.js.map +1 -1
  147. package/dist/theming/getStylesString.js.map +1 -1
  148. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  149. package/dist/theming/preloadLinks.js.map +1 -1
  150. package/dist/thirdparty/_merge.js.map +1 -1
  151. package/dist/thirdparty/isPlainObject.js.map +1 -1
  152. package/dist/thirdparty/merge.js.map +1 -1
  153. package/dist/types/AnimationMode.d.ts +1 -1
  154. package/dist/types/AnimationMode.js +1 -1
  155. package/dist/types/AnimationMode.js.map +1 -1
  156. package/dist/types/CSSColor.d.ts +0 -1
  157. package/dist/types/CSSColor.js +0 -1
  158. package/dist/types/CSSColor.js.map +1 -1
  159. package/dist/types/CalendarType.d.ts +1 -1
  160. package/dist/types/CalendarType.js +1 -1
  161. package/dist/types/CalendarType.js.map +1 -1
  162. package/dist/types/DOMReference.js.map +1 -1
  163. package/dist/types/DataType.js.map +1 -1
  164. package/dist/types/Float.d.ts +0 -1
  165. package/dist/types/Float.js +0 -1
  166. package/dist/types/Float.js.map +1 -1
  167. package/dist/types/Integer.d.ts +0 -1
  168. package/dist/types/Integer.js +0 -1
  169. package/dist/types/Integer.js.map +1 -1
  170. package/dist/types/InvisibleMessageMode.d.ts +1 -1
  171. package/dist/types/InvisibleMessageMode.js +1 -1
  172. package/dist/types/InvisibleMessageMode.js.map +1 -1
  173. package/dist/types/ItemNavigationBehavior.d.ts +1 -1
  174. package/dist/types/ItemNavigationBehavior.js +1 -1
  175. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  176. package/dist/types/NavigationMode.d.ts +1 -1
  177. package/dist/types/NavigationMode.js +1 -1
  178. package/dist/types/NavigationMode.js.map +1 -1
  179. package/dist/types/ValueState.d.ts +1 -1
  180. package/dist/types/ValueState.js +1 -1
  181. package/dist/types/ValueState.js.map +1 -1
  182. package/dist/types.d.ts +1 -1
  183. package/dist/types.js.map +1 -1
  184. package/dist/updateShadowRoot.js +7 -4
  185. package/dist/updateShadowRoot.js.map +1 -1
  186. package/dist/util/AriaLabelHelper.js.map +1 -1
  187. package/dist/util/Caret.js.map +1 -1
  188. package/dist/util/ColorConversion.js.map +1 -1
  189. package/dist/util/FetchHelper.js.map +1 -1
  190. package/dist/util/FocusableElements.js +4 -3
  191. package/dist/util/FocusableElements.js.map +1 -1
  192. package/dist/util/HTMLSanitizer.js.map +1 -1
  193. package/dist/util/InvisibleMessage.d.ts +1 -1
  194. package/dist/util/InvisibleMessage.js.map +1 -1
  195. package/dist/util/PopupUtils.js.map +1 -1
  196. package/dist/util/SlotsHelper.js.map +1 -1
  197. package/dist/util/StringHelper.js.map +1 -1
  198. package/dist/util/TabbableElements.js.map +1 -1
  199. package/dist/util/arraysAreEqual.js.map +1 -1
  200. package/dist/util/clamp.js.map +1 -1
  201. package/dist/util/createLinkInHead.js.map +1 -1
  202. package/dist/util/createStyleInHead.js.map +1 -1
  203. package/dist/util/debounce.js.map +1 -1
  204. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  205. package/dist/util/escapeRegex.js.map +1 -1
  206. package/dist/util/formatMessage.js.map +1 -1
  207. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  208. package/dist/util/getActiveElement.js.map +1 -1
  209. package/dist/util/getClassCopy.d.ts +2 -1
  210. package/dist/util/getClassCopy.js.map +1 -1
  211. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  212. package/dist/util/getEffectiveContentDensity.js.map +1 -1
  213. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -1
  214. package/dist/util/getFastNavigationGroups.js.map +1 -1
  215. package/dist/util/getFileExtension.js.map +1 -1
  216. package/dist/util/getNormalizedTarget.js.map +1 -1
  217. package/dist/util/getSingletonElementInstance.d.ts +10 -1
  218. package/dist/util/getSingletonElementInstance.js +11 -2
  219. package/dist/util/getSingletonElementInstance.js.map +1 -1
  220. package/dist/util/isElementClickable.js.map +1 -1
  221. package/dist/util/isElementHidden.js.map +1 -1
  222. package/dist/util/isElementInView.js.map +1 -1
  223. package/dist/util/isElementTabbable.js.map +1 -1
  224. package/dist/util/isValidPropertyName.js.map +1 -1
  225. package/dist/util/whenDOMReady.js.map +1 -1
  226. package/dist/util/willShowContent.js.map +1 -1
  227. package/dist/validateThemeRoot.js +14 -13
  228. package/dist/validateThemeRoot.js.map +1 -1
  229. package/index.js +227 -1
  230. package/lib/generate-asset-parameters/index.js +4 -2
  231. package/lib/generate-styles/index.js +3 -3
  232. package/lib/generate-version-info/index.js +1 -1
  233. package/{package-scripts.js → package-scripts.cjs} +4 -4
  234. package/package.json +5 -4
  235. package/tsconfig.json +1 -0
  236. package/config/wdio.conf.js +0 -1
  237. package/dist/assets/bundle.esm.ea2cc5c5.js +0 -60
  238. package/dist/config/ThemeRoots.d.ts +0 -4
  239. package/dist/config/ThemeRoots.js +0 -28
  240. package/dist/config/ThemeRoots.js.map +0 -1
  241. package/dist/decorators/fastNavigation.d.ts +0 -7
  242. package/dist/decorators/fastNavigation.js +0 -13
  243. package/dist/decorators/fastNavigation.js.map +0 -1
  244. package/dist/decorators/languageAware.d.ts +0 -7
  245. package/dist/decorators/languageAware.js +0 -13
  246. package/dist/decorators/languageAware.js.map +0 -1
  247. package/dist/decorators/themeAware.d.ts +0 -7
  248. package/dist/decorators/themeAware.js +0 -13
  249. package/dist/decorators/themeAware.js.map +0 -1
  250. package/src/AssetRegistry.ts +0 -11
  251. package/src/Boot.ts +0 -65
  252. package/src/CSP.ts +0 -66
  253. package/src/CustomElementsRegistry.ts +0 -98
  254. package/src/CustomElementsScope.ts +0 -33
  255. package/src/CustomElementsScopeUtils.ts +0 -115
  256. package/src/DOMObserver.ts +0 -28
  257. package/src/Device.ts +0 -203
  258. package/src/EventProvider.ts +0 -87
  259. package/src/FeaturesRegistry.ts +0 -14
  260. package/src/FontFace.ts +0 -31
  261. package/src/InitialConfiguration.ts +0 -207
  262. package/src/Keys.ts +0 -295
  263. package/src/ManagedStyles.ts +0 -92
  264. package/src/MarkedEvents.ts +0 -20
  265. package/src/MediaRange.ts +0 -110
  266. package/src/PropertiesFileFormat.ts +0 -95
  267. package/src/Render.ts +0 -180
  268. package/src/RenderQueue.ts +0 -71
  269. package/src/Runtimes.ts +0 -114
  270. package/src/StaticArea.ts +0 -3
  271. package/src/StaticAreaItem.ts +0 -113
  272. package/src/SystemCSSVars.ts +0 -10
  273. package/src/Theming.ts +0 -4
  274. package/src/UI5Element.ts +0 -1175
  275. package/src/UI5ElementMetadata.ts +0 -389
  276. package/src/animations/AnimationQueue.ts +0 -43
  277. package/src/animations/animate.ts +0 -64
  278. package/src/animations/scroll.ts +0 -21
  279. package/src/animations/slideDown.ts +0 -72
  280. package/src/animations/slideUp.ts +0 -67
  281. package/src/asset-registries/Icons.ts +0 -161
  282. package/src/asset-registries/Illustrations.ts +0 -75
  283. package/src/asset-registries/LocaleData.ts +0 -172
  284. package/src/asset-registries/Themes.ts +0 -72
  285. package/src/asset-registries/i18n.ts +0 -118
  286. package/src/assets-meta/IconCollectionsAlias.ts +0 -41
  287. package/src/config/AnimationMode.ts +0 -33
  288. package/src/config/CalendarType.ts +0 -23
  289. package/src/config/FormatSettings.ts +0 -35
  290. package/src/config/Icons.ts +0 -126
  291. package/src/config/Language.ts +0 -72
  292. package/src/config/NoConflict.ts +0 -67
  293. package/src/config/RTL.ts +0 -45
  294. package/src/config/Theme.ts +0 -64
  295. package/src/config/ThemeRoots.ts +0 -41
  296. package/src/decorators/customElement.ts +0 -57
  297. package/src/decorators/event.ts +0 -28
  298. package/src/decorators/fastNavigation.ts +0 -14
  299. package/src/decorators/languageAware.ts +0 -14
  300. package/src/decorators/property.ts +0 -30
  301. package/src/decorators/slot.ts +0 -49
  302. package/src/decorators/themeAware.ts +0 -14
  303. package/src/delegate/ItemNavigation.ts +0 -393
  304. package/src/delegate/ResizeHandler.ts +0 -100
  305. package/src/delegate/ScrollEnablement.ts +0 -224
  306. package/src/features/F6Navigation.ts +0 -195
  307. package/src/features/LegacyDateFormats.ts +0 -40
  308. package/src/features/OpenUI5Element.ts +0 -11
  309. package/src/features/OpenUI5Enablement.ts +0 -117
  310. package/src/features/OpenUI5Support.ts +0 -153
  311. package/src/generated/css/BusyIndicator.css.ts +0 -9
  312. package/src/generated/css/FontFace.css.ts +0 -9
  313. package/src/generated/css/OverrideFontFace.css.ts +0 -9
  314. package/src/generated/css/SystemCSSVars.css.ts +0 -9
  315. package/src/getSharedResource.ts +0 -39
  316. package/src/global.d.ts +0 -38
  317. package/src/i18nBundle.ts +0 -108
  318. package/src/locale/Locale.ts +0 -101
  319. package/src/locale/RTLAwareRegistry.ts +0 -16
  320. package/src/locale/applyDirection.ts +0 -18
  321. package/src/locale/directionChange.ts +0 -34
  322. package/src/locale/getEffectiveDir.ts +0 -28
  323. package/src/locale/getLocale.ts +0 -46
  324. package/src/locale/languageChange.ts +0 -24
  325. package/src/locale/nextFallbackLocale.ts +0 -28
  326. package/src/locale/normalizeLocale.ts +0 -56
  327. package/src/renderer/LitRenderer.ts +0 -60
  328. package/src/renderer/executeTemplate.ts +0 -40
  329. package/src/theming/CustomStyle.ts +0 -64
  330. package/src/theming/ThemeLoaded.ts +0 -24
  331. package/src/theming/applyTheme.ts +0 -90
  332. package/src/theming/getConstructableStyle.ts +0 -31
  333. package/src/theming/getEffectiveLinksHrefs.ts +0 -26
  334. package/src/theming/getEffectiveStyle.ts +0 -41
  335. package/src/theming/getStylesString.ts +0 -15
  336. package/src/theming/getThemeDesignerTheme.ts +0 -101
  337. package/src/theming/preloadLinks.ts +0 -24
  338. package/src/thirdparty/_merge.ts +0 -32
  339. package/src/thirdparty/isPlainObject.ts +0 -18
  340. package/src/thirdparty/merge.ts +0 -5
  341. package/src/types/AnimationMode.ts +0 -33
  342. package/src/types/CSSColor.ts +0 -20
  343. package/src/types/CalendarType.ts +0 -38
  344. package/src/types/DOMReference.ts +0 -28
  345. package/src/types/DataType.ts +0 -51
  346. package/src/types/Float.ts +0 -25
  347. package/src/types/Integer.ts +0 -25
  348. package/src/types/InvisibleMessageMode.ts +0 -27
  349. package/src/types/ItemNavigationBehavior.ts +0 -26
  350. package/src/types/NavigationMode.ts +0 -33
  351. package/src/types/ValueState.ts +0 -47
  352. package/src/types.ts +0 -30
  353. package/src/updateShadowRoot.ts +0 -42
  354. package/src/util/AriaLabelHelper.ts +0 -218
  355. package/src/util/Caret.ts +0 -28
  356. package/src/util/ColorConversion.ts +0 -399
  357. package/src/util/FetchHelper.ts +0 -31
  358. package/src/util/FocusableElements.ts +0 -92
  359. package/src/util/HTMLSanitizer.ts +0 -9
  360. package/src/util/InvisibleMessage.ts +0 -69
  361. package/src/util/PopupUtils.ts +0 -112
  362. package/src/util/SlotsHelper.ts +0 -39
  363. package/src/util/StringHelper.ts +0 -26
  364. package/src/util/TabbableElements.ts +0 -70
  365. package/src/util/arraysAreEqual.ts +0 -15
  366. package/src/util/clamp.ts +0 -12
  367. package/src/util/createLinkInHead.ts +0 -25
  368. package/src/util/createStyleInHead.ts +0 -20
  369. package/src/util/debounce.ts +0 -18
  370. package/src/util/detectNavigatorLanguage.ts +0 -13
  371. package/src/util/escapeRegex.ts +0 -11
  372. package/src/util/formatMessage.ts +0 -24
  373. package/src/util/generateHighlightedMarkup.ts +0 -43
  374. package/src/util/getActiveElement.ts +0 -11
  375. package/src/util/getClassCopy.ts +0 -12
  376. package/src/util/getDesigntimePropertyAsArray.ts +0 -4
  377. package/src/util/getEffectiveContentDensity.ts +0 -5
  378. package/src/util/getEffectiveScrollbarStyle.ts +0 -5
  379. package/src/util/getFastNavigationGroups.ts +0 -63
  380. package/src/util/getFileExtension.ts +0 -21
  381. package/src/util/getNormalizedTarget.ts +0 -16
  382. package/src/util/getSingletonElementInstance.ts +0 -13
  383. package/src/util/isElementClickable.ts +0 -19
  384. package/src/util/isElementHidden.ts +0 -9
  385. package/src/util/isElementInView.ts +0 -15
  386. package/src/util/isElementTabbable.ts +0 -37
  387. package/src/util/isValidPropertyName.ts +0 -29
  388. package/src/util/whenDOMReady.ts +0 -13
  389. package/src/util/willShowContent.ts +0 -7
  390. package/src/validateThemeRoot.ts +0 -58
@@ -0,0 +1,9 @@
1
+ (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&s(a)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerpolicy&&(o.referrerPolicy=r.referrerpolicy),r.crossorigin==="use-credentials"?o.credentials="include":r.crossorigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();const v={themes:{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","sap_horizon_dark","sap_horizon_hcb","sap_horizon_hcw","sap_horizon_exp"]},languages:{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"]},locales:{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","sr_Latn","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]}},I=v.themes.default,ot=v.themes.all,F=v.languages.default,u=v.locales.default,le=v.locales.all,at=()=>{const e=navigator.languages,t=()=>navigator.language;return e&&e[0]||t()||F};var $e={},Ce=$e.hasOwnProperty,it=$e.toString,Re=Ce.toString,ct=Re.call(Object),fe=function(e){var t,n;return!e||it.call(e)!=="[object Object]"?!1:(t=Object.getPrototypeOf(e),t?(n=Ce.call(t,"constructor")&&t.constructor,typeof n=="function"&&Re.call(n)===ct):!0)},ut=Object.create(null),Oe=function(e,t,n,s){var r,o,a,c,$,p,f=arguments[2]||{},W=3,st=arguments.length,ue=arguments[0]||!1,rt=arguments[1]?void 0:ut;for(typeof f!="object"&&typeof f!="function"&&(f={});W<st;W++)if(($=arguments[W])!=null)for(c in $)r=f[c],a=$[c],!(c==="__proto__"||f===a)&&(ue&&a&&(fe(a)||(o=Array.isArray(a)))?(o?(o=!1,p=r&&Array.isArray(r)?r:[]):p=r&&fe(r)?r:{},f[c]=Oe(ue,arguments[1],p,a)):a!==rt&&(f[c]=a));return f};const Ue=function(e,t){return Oe(!0,!1,...arguments)},Ie=new Map,Zn=(e,t)=>{Ie.set(e,t)},w=e=>Ie.get(e),lt=e=>{const t=document.querySelector(`META[name="${e}"]`);return t&&t.getAttribute("content")},ft=e=>{const t=lt("sap-allowedThemeOrigins");return t&&t.split(",").some(n=>n==="*"||e===n.trim())},dt=(e,t)=>{const n=new URL(e).pathname;return new URL(n,t).toString()},Me=e=>{let t;try{if(e.startsWith(".")||e.startsWith("/"))t=new URL(e,window.location.href).toString();else{const n=new URL(e),s=n.origin;s&&ft(s)?t=n.toString():t=dt(n.toString(),window.location.href)}return t.endsWith("/")||(t=`${t}/`),`${t}UI5/`}catch{}};var Q;(function(e){e.Full="full",e.Basic="basic",e.Minimal="minimal",e.None="none"})(Q||(Q={}));const ht=Q;let de=!1,i={animationMode:ht.Full,theme:I,themeRoot:void 0,rtl:void 0,language:void 0,timezone:void 0,calendarType:void 0,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const Hn=()=>(l(),i.animationMode),pt=()=>(l(),i.theme),gt=()=>(l(),i.themeRoot),qn=()=>(l(),i.rtl),mt=()=>(l(),i.language),yt=()=>(l(),i.fetchDefaultLanguage),Gn=()=>(l(),i.noConflict),Kn=()=>(l(),i.calendarType),Jn=()=>(l(),i.formatSettings),M=new Map;M.set("true",!0);M.set("false",!1);const wt=()=>{const e=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let t;if(e){try{t=JSON.parse(e.innerHTML)}catch{console.warn("Incorrect data-sap-ui-config format. Please use JSON")}t&&(i=Ue(i,t))}},St=()=>{const e=new URLSearchParams(window.location.search);e.forEach((t,n)=>{const s=n.split("sap-").length;s===0||s===n.split("sap-ui-").length||he(n,t,"sap")}),e.forEach((t,n)=>{!n.startsWith("sap-ui")||he(n,t,"sap-ui")})},_t=e=>{const t=e.split("@")[1];return Me(t)},bt=(e,t)=>e==="theme"&&t.includes("@")?t.split("@")[0]:t,he=(e,t,n)=>{const s=t.toLowerCase(),r=e.split(`${n}-`)[1];M.has(t)&&(t=M.get(s)),r==="theme"?(i.theme=bt(r,t),t&&t.includes("@")&&(i.themeRoot=_t(t))):i[r]=t},Tt=()=>{const e=w("OpenUI5Support");if(!e||!e.isLoaded())return;const t=e.getConfigurationSettingsObject();i=Ue(i,t)},l=()=>{typeof document>"u"||de||(wt(),St(),Tt(),de=!0)};class L{constructor(){this._eventRegistry=new Map}attachEvent(t,n){const s=this._eventRegistry,r=s.get(t);if(!Array.isArray(r)){s.set(t,[n]);return}r.includes(n)||r.push(n)}detachEvent(t,n){const s=this._eventRegistry,r=s.get(t);if(!r)return;const o=r.indexOf(n);o!==-1&&r.splice(o,1),r.length===0&&s.delete(t)}fireEvent(t,n){const r=this._eventRegistry.get(t);return r?r.map(o=>o.call(this,n)):[]}fireEventAsync(t,n){return Promise.all(this.fireEvent(t,n))}isHandlerAttached(t,n){const r=this._eventRegistry.get(t);return r?r.includes(n):!1}hasListeners(t){return!!this._eventRegistry.get(t)}}const ke=new L,De="languageChange",Be=e=>{ke.attachEvent(De,e)},At=e=>ke.fireEventAsync(De,e),pe=10;class vt{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(n=>n!==t),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return this.list.length===0}isAdded(t){return this.lookup.has(t)}process(t){let n;const s=new Map;for(n=this.shift();n;){const r=s.get(n)||0;if(r>pe)throw new Error(`Web component processed too many times this task, max allowed is: ${pe}`);t(n),s.set(n,r+1),n=this.shift()}}}const Lt=(e,t=document.body,n)=>{let s=document.querySelector(e);return s||(s=n?n():document.createElement(e),t.insertBefore(s,t.firstChild))},Et=()=>{const e=document.createElement("meta");return e.setAttribute("name","ui5-shared-resources"),e.setAttribute("content",""),e},Pt=()=>typeof document>"u"?null:Lt('meta[name="ui5-shared-resources"]',document.head,Et),j=(e,t)=>{const n=e.split(".");let s=Pt();if(!s)return t;for(let r=0;r<n.length;r++){const o=n[r],a=r===n.length-1;Object.prototype.hasOwnProperty.call(s,o)||(s[o]=a?t:{}),s=s[o]}return s},$t={version:"0.0.0-97db186fd",major:0,minor:0,patch:0,suffix:"-97db186fd",isNext:!0,buildTime:1685706135};let O,Ct="";const Z=new Map,T=j("Runtimes",[]),Rt=()=>{if(O===void 0){O=T.length;const e=$t;T.push({...e,alias:Ct,description:`Runtime ${O} - ver ${e.version}`})}},E=()=>O,Ot=(e,t)=>{const n=`${e},${t}`;if(Z.has(n))return Z.get(n);const s=T[e],r=T[t];if(!s||!r)throw new Error("Invalid runtime index supplied");if(s.isNext||r.isNext)return s.buildTime-r.buildTime;const o=s.major-r.major;if(o)return o;const a=s.minor-r.minor;if(a)return a;const c=s.patch-r.patch;if(c)return c;const p=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare(s.suffix,r.suffix);return Z.set(n,p),p},Ut=()=>T,xe=j("Tags",new Map),se=new Set;let h=new Map,H;const Fe=-1,Xn=e=>{se.add(e),xe.set(e,E())},Yn=e=>se.has(e),It=()=>[...se.values()],Qn=e=>{let t=xe.get(e);t===void 0&&(t=Fe),h.has(t)||h.set(t,new Set),h.get(t).add(e),H||(H=setTimeout(()=>{Mt(),h=new Map,H=void 0},1e3))},Mt=()=>{const e=Ut(),t=E(),n=e[t];let s="Multiple UI5 Web Components instances detected.";e.length>1&&(s=`${s}
2
+ Loading order (versions before 1.1.0 not listed): ${e.map(r=>`
3
+ ${r.description}`).join("")}`),[...h.keys()].forEach(r=>{let o,a;r===Fe?(o=1,a={description:"Older unknown runtime"}):(o=Ot(t,r),a=e[r]);let c;o>0?c="an older":o<0?c="a newer":c="the same",s=`${s}
4
+
5
+ "${n.description}" failed to define ${h.get(r).size} tag(s) as they were defined by a runtime of ${c} version "${a.description}": ${[...h.get(r)].sort().join(", ")}.`,o>0?s=`${s}
6
+ WARNING! If your code uses features of the above web components, unavailable in ${a.description}, it might not work as expected!`:s=`${s}
7
+ Since the above web components were defined by the same or newer version runtime, they should be compatible with your code.`}),s=`${s}
8
+
9
+ To prevent other runtimes from defining tags that you use, consider using scoping or have third-party libraries use scoping: https://github.com/SAP/ui5-webcomponents/blob/main/docs/2-advanced/03-scoping.md.`,console.warn(s)},je=new Set,es=e=>{je.add(e)},kt=e=>je.has(e),re=new Set,Dt=new L,S=new vt;let g,U,q,C;const Bt=async e=>{S.add(e),await Ft()},xt=e=>{Dt.fireEvent("beforeComponentRender",e),re.add(e),e._render()},ts=e=>{S.remove(e),re.delete(e)},Ft=async()=>{C||(C=new Promise(e=>{window.requestAnimationFrame(()=>{S.process(xt),C=null,e(),q||(q=setTimeout(()=>{q=void 0,S.isEmpty()&&Nt()},200))})})),await C},jt=()=>g||(g=new Promise(e=>{U=e,window.requestAnimationFrame(()=>{S.isEmpty()&&(g=void 0,e())})}),g),zt=()=>{const e=It().map(t=>customElements.whenDefined(t));return Promise.all(e)},Vt=async()=>{await zt(),await jt()},Nt=()=>{!S.isEmpty()||U&&(U(),U=void 0,g=void 0)},ze=async e=>{re.forEach(t=>{const n=t.constructor,s=n.getMetadata().getTag(),r=kt(n),o=n.getMetadata().isLanguageAware(),a=n.getMetadata().isThemeAware();(!e||e.tag===s||e.rtlAware&&r||e.languageAware&&o||e.themeAware&&a)&&Bt(t)}),await Vt()};let _,ee;const Wt=()=>(_===void 0&&(_=mt()),_),ns=async e=>{_!==e&&(_=e,await At(e),await ze({languageAware:!0}))},Zt=e=>{ee=e},Ht=()=>(ee===void 0&&Zt(yt()),ee),qt=/^((?:[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 Ve{constructor(t){const n=qt.exec(t.replace(/_/g,"-"));if(n===null)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=n[1]||F,this.sScript=n[2]||"",this.sRegion=n[3]||"",this.sVariant=n[4]&&n[4].slice(1)||null,this.sExtension=n[5]&&n[5].slice(1)||null,this.sPrivateUse=n[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,s=>s.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 G=new Map,Ne=e=>(G.has(e)||G.set(e,new Ve(e)),G.get(e)),ge=e=>{try{if(e&&typeof e=="string")return Ne(e)}catch{}return new Ve(u)},te=e=>{if(e)return ge(e);const t=Wt();return t?Ne(t):ge(at())},Gt=/^((?:[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,me=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,Kt={he:"iw",yi:"ji",nb:"no",sr:"sh"},Jt=e=>{let t;if(!e)return u;if(typeof e=="string"&&(t=Gt.exec(e.replace(/_/g,"-")))){let n=t[1].toLowerCase(),s=t[3]?t[3].toUpperCase():void 0;const r=t[2]?t[2].toLowerCase():void 0,o=t[4]?t[4].slice(1):void 0,a=t[6];return n=Kt[n]||n,a&&(t=me.exec(a))||o&&(t=me.exec(o))?`en_US_${t[1].toLowerCase()}`:(n==="zh"&&!s&&(r==="hans"?s="CN":r==="hant"&&(s="TW")),n+(s?"_"+s+(o?"_"+o.replace("-","_"):""):""))}return u},Xt=e=>{if(!e)return u;if(e==="zh_HK")return"zh_TW";const t=e.lastIndexOf("_");return t>=0?e.slice(0,t):e!==u?u:""},ye=new Set,we=new Set,oe=new Map,K=new Map,ae=new Map,ss=(e,t,n)=>{const s=`${e}/${t}`;ae.set(s,n)},Se=(e,t)=>{oe.set(e,t)},rs=e=>oe.get(e),We=(e,t)=>{const n=`${e}/${t}`;return ae.has(n)},Yt=(e,t)=>{const n=`${e}/${t}`,s=ae.get(n);return s&&!K.get(n)&&K.set(n,s(t)),K.get(n)},Qt=e=>{ye.has(e)||(console.warn(`[${e}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${e}/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.`),ye.add(e))},_e=(e,t)=>t!==F&&!We(e,t),en=async e=>{const t=te().getLanguage(),n=te().getRegion();let s=t+(n?`-${n}`:"");if(_e(e,s))for(s=Jt(s);_e(e,s);)s=Xt(s);const r=Ht();if(s===F&&!r){Se(e,null);return}if(!We(e,s)){Qt(e);return}try{const o=await Yt(e,s);Se(e,o)}catch(o){const a=o;we.has(a.message)||(we.add(a.message),console.error(a.message))}};Be(e=>{const t=[...oe.keys()];return Promise.all(t.map(en))});const tn=new Map,k=new Map,J=new Map,be=new Set;let Te=!1;const nn={iw:"he",ji:"yi",in:"id"},Ae=e=>{Te||(console.warn(`[LocaleData] Supported locale "${e}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),Te=!0)},sn=(e,t,n)=>{e=e&&nn[e]||e,e==="no"&&(e="nb"),e==="zh"&&!t&&(n==="Hans"?t="CN":n==="Hant"&&(t="TW")),(e==="sh"||e==="sr"&&n==="Latn")&&(e="sr",t="Latn");let s=`${e}_${t}`;return le.includes(s)||(s=e,le.includes(s))?k.has(s)?s:(Ae(s),u):u},ve=(e,t)=>{tn.set(e,t)},rn=e=>{if(!J.get(e)){const t=k.get(e);if(!t)throw new Error(`CLDR data for locale ${e} is not loaded!`);J.set(e,t(e))}return J.get(e)},on=async(e,t,n)=>{const s=sn(e,t,n),r=w("OpenUI5Support");if(r){const o=r.getLocaleDataObject();if(o){ve(s,o);return}}try{const o=await rn(s);ve(s,o)}catch(o){const a=o;be.has(a.message)||(be.add(a.message),console.error(a.message))}},an=(e,t)=>{k.set(e,t)};an("en",async()=>(await fetch("https://sdk.openui5.org/1.103.0/resources/sap/ui/core/cldr/en.json")).json());Be(()=>{const e=te();return on(e.getLanguage(),e.getRegion(),e.getScript())});const Ze=new L,He="themeRegistered",cn=e=>{Ze.attachEvent(He,e)},un=e=>Ze.fireEvent(He,e),qe=new Map,Ge=new Map,Ke=new Set,D=new Set,os=(e,t,n)=>{Ge.set(`${e}/${t}`,n),Ke.add(e),D.add(t),un(t)},Je=async(e,t)=>{const n=qe.get(`${e}_${t}`);if(n!==void 0)return n;if(!D.has(t)){const s=[...D.values()].join(", ");return console.warn(`You have requested a non-registered theme ${t} - falling back to ${I}. Registered themes are: ${s}`),Le(e,I)}return Le(e,t)},Le=async(e,t)=>{const n=Ge.get(`${e}/${t}`);if(!n){console.error(`Theme [${t}] not registered for package [${e}]`);return}let s;try{s=await n(t)}catch(o){console.error(e,o.message);return}const r=s._||s;return qe.set(`${e}_${t}`,r),r},Xe=()=>Ke,ln=e=>D.has(e);var B;(function(e){e["SAP-icons"]="SAP-icons-v4",e.horizon="SAP-icons-v5",e["SAP-icons-TNT"]="tnt",e.BusinessSuiteInAppSymbols="business-suite"})(B||(B={}));const Ye=e=>B[e]?B[e]:e,fn=(e,t)=>{const n=document.createElement("style");return n.type="text/css",t&&Object.entries(t).forEach(s=>n.setAttribute(...s)),n.textContent=e,document.head.appendChild(n),n},dn=(e,t)=>{const n=document.createElement("link");return n.type="text/css",n.rel="stylesheet",t&&Object.entries(t).forEach(s=>n.setAttribute(...s)),n.href=e,document.head.appendChild(n),new Promise(s=>{n.addEventListener("load",s),n.addEventListener("error",s)})},z=(e,t)=>t?`${e}|${t}`:e,V=(e,t,n="")=>{let s=typeof e=="string"?e:e.content;if(s.includes("[_ui5host]")&&(s=s.replaceAll("[_ui5host]",`[_ui5rt${E()}]`)),document.adoptedStyleSheets){const r=new CSSStyleSheet;r.replaceSync(s),r._ui5StyleId=z(t,n),document.adoptedStyleSheets=[...document.adoptedStyleSheets,r]}else{const r={};r[t]=n,fn(s,r)}},hn=(e,t,n="")=>{let s=typeof e=="string"?e:e.content;if(s.includes("[_ui5host]")&&(s=s.replaceAll("[_ui5host]",`[_ui5rt${E()}]`)),document.adoptedStyleSheets){const r=document.adoptedStyleSheets.find(o=>o._ui5StyleId===z(t,n));r&&r.replaceSync(s||"")}else{const r=document.querySelector(`head>style[${t}="${n}"]`);r&&(r.textContent=s||"")}},N=(e,t="")=>document.adoptedStyleSheets?!!document.adoptedStyleSheets.find(n=>n._ui5StyleId===z(e,t)):!!document.querySelector(`head>style[${e}="${t}"]`),pn=(e,t="")=>{var n;if(document.adoptedStyleSheets)document.adoptedStyleSheets=document.adoptedStyleSheets.filter(s=>s._ui5StyleId!==z(e,t));else{const s=document.querySelector(`head > style[${e}="${t}"]`);(n=s==null?void 0:s.parentElement)==null||n.removeChild(s)}},Qe=(e,t,n="")=>{N(t,n)?hn(e,t,n):V(e,t,n)},m=new Set,gn=()=>{let e=document.querySelector(".sapThemeMetaData-Base-baseLib")||document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");if(e)return getComputedStyle(e).backgroundImage;e=document.createElement("span"),e.style.display="none",e.classList.add("sapThemeMetaData-Base-baseLib"),document.body.appendChild(e);let t=getComputedStyle(e).backgroundImage;return t==="none"&&(e.classList.add("sapThemeMetaData-UI5-sap-ui-core"),t=getComputedStyle(e).backgroundImage),document.body.removeChild(e),t},mn=e=>{const t=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(e);if(t&&t.length>=2){let n=t[1];if(n=n.replace(/\\"/g,'"'),n.charAt(0)!=="{"&&n.charAt(n.length-1)!=="}")try{n=decodeURIComponent(n)}catch{m.has("decode")||(console.warn("Malformed theme metadata string, unable to decodeURIComponent"),m.add("decode"));return}try{return JSON.parse(n)}catch{m.has("parse")||(console.warn("Malformed theme metadata string, unable to parse JSON"),m.add("parse"))}}},yn=e=>{let t,n;try{t=e.Path.match(/\.([^.]+)\.css_variables$/)[1],n=e.Extends[0]}catch{m.has("object")||(console.warn("Malformed theme metadata Object",e),m.add("object"));return}return{themeName:t,baseThemeName:n}},ne=()=>{const e=gn();if(!e||e==="none")return;const t=mn(e);if(t)return yn(t)},wn=new L,Sn="themeLoaded",_n=e=>wn.fireEvent(Sn,e);let b;const et=()=>(b===void 0&&(b=gt()),b),as=e=>{if(b!==e){if(b=e,!Me(e)){console.warn(`The ${e} is not valid. Check the allowed origins as suggested in the "setThemeRoot" description.`);return}return tt(P())}},bn=e=>`${et()}Base/baseLib/${e}/css_variables.css`,tt=async e=>{const t=document.querySelector(`[sap-ui-webcomponents-theme="${e}"]`);t&&document.head.removeChild(t),await dn(bn(e),{"sap-ui-webcomponents-theme":e})},A="@ui5/webcomponents-theming",Tn=()=>Xe().has(A),An=async e=>{if(!Tn())return;const t=await Je(A,e);t&&Qe(t,"data-ui5-theme-properties",A)},vn=()=>{pn("data-ui5-theme-properties",A)},Ln=async e=>{const n=[...Xe()].map(async s=>{if(s===A)return;const r=await Je(s,e);r&&Qe(r,`data-ui5-component-properties-${E()}`,s)});return Promise.all(n)},En=async e=>{var s;const t=ne();if(t)return t;const n=w("OpenUI5Support");if(n){if(n.cssVariablesLoaded())return{themeName:(s=n.getConfigurationSettingsObject())==null?void 0:s.theme,baseThemeName:""}}else if(et())return await tt(e),ne()},ie=async e=>{const t=await En(e);!t||e!==t.themeName?await An(e):vn();const n=ln(e)?e:t&&t.baseThemeName;await Ln(n||I),_n(e)};let y;const P=()=>(y===void 0&&(y=pt()),y),is=async e=>{y!==e&&(y=e,await ie(y),await ze({themeAware:!0}))},Pn=()=>{var t,n;const e=P();return $n(e)?!e.startsWith("sap_horizon"):!((n=(t=ne())==null?void 0:t.baseThemeName)!=null&&n.startsWith("sap_horizon"))},$n=e=>ot.includes(e),Cn=new Map;var d;(function(e){e.SAPIconsV4="SAP-icons-v4",e.SAPIconsV5="SAP-icons-v5",e.SAPIconsTNTV2="tnt-v2",e.SAPIconsTNTV3="tnt-v3",e.SAPBSIconsV1="business-suite-v1",e.SAPBSIconsV2="business-suite-v2"})(d||(d={}));const Rn=e=>{const t=P(),n=Cn.get(t);return!e&&n?Ye(n):On(e)},On=e=>{const t=Pn();return e?e==="tnt"?t?d.SAPIconsTNTV2:d.SAPIconsTNTV3:e==="business-suite"?t?d.SAPBSIconsV1:d.SAPBSIconsV2:e:t?d.SAPIconsV4:d.SAPIconsV5},Ee=new Map,x=j("SVGIcons.registry",new Map),X=j("SVGIcons.promises",new Map),Pe="ICON_NOT_FOUND",Un=async e=>{if(!X.has(e)){if(!Ee.has(e))throw new Error(`No loader registered for the ${e} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const t=Ee.get(e);X.set(e,t(e))}return X.get(e)},In=e=>{Object.keys(e.data).forEach(t=>{const n=e.data[t];Mn(t,{pathData:n.path||n.paths,ltr:n.ltr,accData:n.acc,collection:e.collection,packageName:e.packageName})})},Mn=(e,t)=>{const n=`${t.collection}/${e}`;x.set(n,{pathData:t.pathData,ltr:t.ltr,accData:t.accData,packageName:t.packageName,customTemplate:t.customTemplate,viewBox:t.viewBox,collection:t.collection})},kn=e=>{e.startsWith("sap-icon://")&&(e=e.replace("sap-icon://",""));let t;[e,t]=e.split("/").reverse(),e=e.replace("icon-",""),t&&(t=Ye(t)),t=Rn(t);const n=`${t}/${e}`;return{name:e,collection:t,registryKey:n}},Y=async e=>{const{collection:t,registryKey:n}=kn(e);let s=Pe;try{s=await Un(t)}catch(r){console.error(r.message)}return s===Pe?s:(x.has(n)||In(s),x.get(n))},cs=async()=>(await Y("edit"),await Y("tnt/arrow"),await Y("business-suite/3d"),Array.from(x.keys())),Dn=()=>new Promise(e=>{document.body?e():document.addEventListener("DOMContentLoaded",()=>{e()})}),Bn={packageName:"@ui5/webcomponents-base",fileName:"FontFace.css",content:`@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local('72-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local('72-Bold-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Bold';font-style:normal;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Boldfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Light';font-style:normal;src:local('72-Light'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Lightfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local('72Black'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2")}`},xn={packageName:"@ui5/webcomponents-base",fileName:"OverrideFontFace.css",content:"@font-face{font-family:'72override';unicode-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;src:local('Arial'),local('Helvetica'),local('sans-serif')}"},Fn=()=>{const e=w("OpenUI5Support");(!e||!e.isLoaded())&&jn(),zn()},jn=()=>{N("data-ui5-font-face")||V(Bn,"data-ui5-font-face")},zn=()=>{N("data-ui5-font-face-override")||V(xn,"data-ui5-font-face-override")},Vn={packageName:"@ui5/webcomponents-base",fileName:"SystemCSSVars.css",content:":root{--_ui5_content_density:cozy}.sapUiSizeCompact,.ui5-content-density-compact,[data-ui5-compact-size]{--_ui5_content_density:compact}[dir=rtl]{--_ui5_dir:rtl}[dir=ltr]{--_ui5_dir:ltr}"},Nn=()=>{N("data-ui5-system-css-vars")||V(Vn,"data-ui5-system-css-vars")};let ce=!1,R;const nt=new L,us=e=>{if(!ce){nt.attachEvent("boot",e);return}e()},ls=async()=>{if(R!==void 0)return R;const e=async t=>{if(typeof document>"u"){t();return}cn(Wn),Rt();const n=w("OpenUI5Support"),s=n?n.isLoaded():!1,r=w("F6Navigation");n&&await n.init(),r&&!s&&r.init(),await Dn(),await ie(P()),n&&n.attachListeners(),Fn(),Nn(),t(),ce=!0,await nt.fireEventAsync("boot")};return R=new Promise(e),R},Wn=e=>{const t=P();ce&&e===t&&ie(t)};export{Jn as A,ns as B,P as C,et as D,L as E,as as F,ss as G,us as H,cs as _,j as a,ze as b,w as c,qn as d,Wt as e,en as f,rs as g,at as h,E as i,Vt as j,Gn as k,xt as l,ts as m,es as n,Lt as o,ls as p,Yn as q,Zn as r,is as s,Qn as t,Xn as u,Ue as v,Bt as w,os as x,Hn as y,Kn as z};
@@ -0,0 +1,50 @@
1
+ import{f as me,g as _e,a as gt,r as Ft,s as Ut,b as jt,E as J,c as X,d as ye,e as zt,h as ve,i as mt,j as Wt,k as Ae,l as $e,m as we,n as Ce,o as Se,p as be,q as Ee,t as Me,u as Te,v as xe,w as De,x as C,y as Ie,z as Le,A as qt,B as Pe,C as Ne,D as Oe,F as Re,_ as He,G as ke}from"./Boot.7594c895.js";const Be=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,Ve=(s,t)=>(t=t||[],s.replace(Be,(e,n,i,r,o)=>{if(n)return"'";if(i)return i.replace(/''/g,"'");if(r){const c=typeof r=="string"?parseInt(r):r;return String(t[c])}throw new Error(`[i18n]: pattern syntax error at pos ${o}`)})),Q=new Map;class Fe{constructor(t){this.packageName=t}getText(t,...e){if(typeof t=="string"&&(t={key:t,defaultText:t}),!t||!t.key)return"";const n=_e(this.packageName);n&&!n[t.key]&&console.warn(`Key ${t.key} not found in the i18n bundle, the default text will be used`);const i=n&&n[t.key]?n[t.key]:t.defaultText||t.key;return Ve(i,e)}}const Ue=s=>{if(Q.has(s))return Q.get(s);const t=new Fe(s);return Q.set(s,t),t},je=async s=>(await me(s),Ue(s)),ze=gt("PopupUtilsData",{currentZIndex:100}),$t=()=>ze.currentZIndex,A=()=>{var s,t,e;return(e=(t=(s=window.sap)==null?void 0:s.ui)==null?void 0:t.getCore)==null?void 0:e.call(t)};class _t{static isLoaded(){return!!A()}static init(){const t=A();return t?new Promise(e=>{t.attachInit(()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],(n,i)=>{i.setInitialZIndex($t()),e()})})}):Promise.resolve()}static getConfigurationSettingsObject(){const t=A();if(!t)return;const e=t.getConfiguration(),n=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:e.getAnimationMode(),language:e.getLanguage(),theme:e.getTheme(),themeRoot:e.getThemeRoot(),rtl:e.getRTL(),timezone:e.getTimezone(),calendarType:e.getCalendarType(),formatSettings:{firstDayOfWeek:n?n.getInstance(e.getLocale()).getFirstDayOfWeek():void 0,legacyDateCalendarCustomizing:e.getFormatSettings().getLegacyDateCalendarCustomizing()}}}static getLocaleDataObject(){const t=A();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()}static _listenForThemeChange(){const t=A(),e=t.getConfiguration();t.attachThemeChanged(async()=>{await Ut(e.getTheme())})}static attachListeners(){!A()||_t._listenForThemeChange()}static cssVariablesLoaded(){if(!A())return;const e=[...document.head.children].find(n=>n.id==="sap-ui-theme-sap.ui.core");if(!!e)return!!e.href.match(/\/css(-|_)variables\.css/)}static getNextZIndex(){return A()?window.sap.ui.require("sap/ui/core/Popup").getNextZIndex():void 0}static setInitialZIndex(){if(!A())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex($t())}}Ft("OpenUI5Support",_t);const tt=new Map,et=new Map,wt=s=>{if(!tt.has(s)){const t=We(s.split("-"));tt.set(s,t)}return tt.get(s)},Zt=s=>{if(!et.has(s)){const t=s.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();et.set(s,t)}return et.get(s)},We=s=>s.map((t,e)=>e===0?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join(""),qe=s=>{if(!(s instanceof HTMLElement))return"default";const t=s.getAttribute("slot");if(t){const e=t.match(/^(.+?)-\d+$/);return e?e[1]:t}return"default"},Gt=s=>s instanceof HTMLSlotElement?s.assignedNodes({flatten:!0}).filter(t=>t instanceof HTMLElement):[s],Ze=s=>s.reduce((t,e)=>t.concat(Gt(e)),[]);let Ge,Ct={include:[/^ui5-/],exclude:[]};const st=new Map,Kt=()=>Ge,ut=s=>{if(!st.has(s)){const t=Ct.include.some(e=>s.match(e))&&!Ct.exclude.some(e=>s.match(e));st.set(s,t)}return st.get(s)},Jt=s=>{if(ut(s))return Kt()};class Ke{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},e=this.slotsAreManaged(),n=this.getProperties();for(const i in n){const r=n[i].type,o=n[i].defaultValue;r===Boolean?(t[i]=!1,o!==void 0&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):n[i].multiple?t[i]=[]:r===Object?t[i]="defaultValue"in n[i]?n[i].defaultValue:{}:r===String?t[i]="defaultValue"in n[i]?n[i].defaultValue:"":t[i]=o}if(e){const i=this.getSlots();for(const[r,o]of Object.entries(i)){const c=o.propertyName||r;t[c]=[]}}return this._initialState=t,t}static validatePropertyValue(t,e){return e.multiple&&t?t.map(i=>St(i,e)):St(t,e)}static validateSlotValue(t,e){return Je(t,e)}getPureTag(){return this.metadata.tag||""}getTag(){const t=this.metadata.tag;if(!t)return"";const e=Jt(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.bind(this)).map(Zt)}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.values(this.getSlots()).some(t=>t.individualSlots)}slotsAreManaged(){return!!this.metadata.managedSlots}supportsF6FastNavigation(){return!!this.metadata.fastNavigation}getProperties(){return this.metadata.properties||(this.metadata.properties={}),this.metadata.properties}getEvents(){return this.metadata.events||(this.metadata.events={}),this.metadata.events}getSlots(){return this.metadata.slots||(this.metadata.slots={}),this.metadata.slots}isLanguageAware(){return!!this.metadata.languageAware}isThemeAware(){return!!this.metadata.themeAware}shouldInvalidateOnChildChange(t,e,n){const i=this.getSlots()[t].invalidateOnChildChange;if(i===void 0)return!1;if(typeof i=="boolean")return i;if(typeof i=="object"){if(e==="property"){if(i.properties===void 0)return!1;if(typeof i.properties=="boolean")return i.properties;if(Array.isArray(i.properties))return i.properties.includes(n);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if(e==="slot"){if(i.slots===void 0)return!1;if(typeof i.slots=="boolean")return i.slots;if(Array.isArray(i.slots))return i.slots.includes(n);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 St=(s,t)=>{const e=t.type;let n=t.validator;return e&&e.isDataTypeClass&&(n=e),n?n.isValid(s)?s:t.defaultValue:!e||e===String?typeof s=="string"||typeof s>"u"||s===null?s:s.toString():e===Boolean?typeof s=="boolean"?s:!1:e===Object?typeof s=="object"?s:t.defaultValue:s in e?s:t.defaultValue},Je=(s,t)=>(s&&Gt(s).forEach(e=>{if(!(e instanceof t.type))throw new Error(`The element is not of type ${t.type.toString()}`)}),s);class Xe extends HTMLElement{}customElements.get("ui5-static-area")||customElements.define("ui5-static-area",Xe);const Ye=()=>gt("CustomStyle.eventProvider",new J),Qe="CustomCSSChange",yt=s=>{Ye().attachEvent(Qe,s)},ts=()=>gt("CustomStyle.customCSSFor",{});yt(s=>{jt({tag:s})});const es=s=>{const t=ts();return t[s]?t[s].join(""):""},ss=10,nt=s=>Array.isArray(s)?s.filter(t=>!!t).flat(ss).map(t=>typeof t=="string"?t:t.content).join(" "):typeof s=="string"?s:s.content,W=new Map;yt(s=>{W.delete(`${s}_normal`)});const Xt=(s,t=!1)=>{const e=s.getMetadata().getTag(),n=`${e}_${t?"static":"normal"}`,i=X("OpenUI5Enablement");if(!W.has(n)){let r,o="";if(i&&(o=nt(i.getBusyIndicatorStyles())),t)r=nt(s.staticAreaStyles);else{const c=es(e)||"";r=`${nt(s.styles)} ${c}`}r=`${r} ${o}`,W.set(n,r)}return W.get(n)},q=new Map;yt(s=>{q.delete(`${s}_normal`)});const ns=(s,t=!1)=>{const n=`${s.getMetadata().getTag()}_${t?"static":"normal"}`;if(!q.has(n)){const i=Xt(s,t),r=new CSSStyleSheet;r.replaceSync(i),q.set(n,[r])}return q.get(n)},ht=(s,t=!1)=>{let e;const n=s.constructor,i=t?s.staticAreaItem.shadowRoot:s.shadowRoot;let r;if(t?r=s.renderStatic():r=s.render(),!i){console.warn("There is no shadow root to update");return}if(document.adoptedStyleSheets?i.adoptedStyleSheets=ns(n,t):e=Xt(n,t),n.renderer){n.renderer(r,i,e,t,{host:s});return}n.render(r,i,e,t,{host:s})},is="--_ui5_content_density",rs=s=>getComputedStyle(s).getPropertyValue(is),os=s=>{const t=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(s);return t&&t[2]?t[2].split(/,/):null},as={iw:"he",ji:"yi",in:"id",sh:"sr"},ls=os("$cldr-rtl-locales:ar,fa,he$")||[],cs=s=>(s=s&&as[s]||s,ls.indexOf(s)>=0),Yt=()=>{if(typeof document>"u")return!1;const s=ye();return s!==void 0?!!s:cs(zt()||ve())},ds="--_ui5_dir",Qt=s=>{const t=window.document,e=["ltr","rtl"],n=getComputedStyle(s).getPropertyValue(ds);return e.includes(n)?n:e.includes(s.dir)?s.dir:e.includes(t.documentElement.dir)?t.documentElement.dir:e.includes(t.body.dir)?t.body.dir:Yt()?"rtl":void 0},z="ui5-static-area-item",us="data-sap-ui-integration-popup-content";class R extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id),this.ownerElement.hasAttribute("data-ui5-static-stable")&&this.setAttribute("data-ui5-stable",this.ownerElement.getAttribute("data-ui5-static-stable"))}update(){this._rendered&&(this._updateAdditionalAttrs(),this._updateContentDensity(),this._updateDirection(),ht(this.ownerElement,!0))}_updateContentDensity(){rs(this.ownerElement)==="compact"?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){if(this.ownerElement){const t=Qt(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}}_updateAdditionalAttrs(){this.setAttribute(`_ui5rt${mt()}`,""),this.setAttribute("_ui5host",""),this.setAttribute(z,""),this.setAttribute(us,"")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,ht(this.ownerElement,!0)),await Wt(),this.shadowRoot}static getTag(){const t=Jt(z);return t?`${z}-${t}`:z}static createInstance(){return customElements.get(R.getTag())||customElements.define(R.getTag(),R),document.createElement(this.getTag())}}const hs=[],ps=s=>hs.some(t=>s.startsWith(t)),pt=new WeakMap,fs=(s,t,e)=>{const n=new MutationObserver(t);pt.set(s,n),n.observe(s,e)},gs=s=>{const t=pt.get(s);t&&(t.disconnect(),pt.delete(s))},ms=["value-changed","click"];let Z;const _s=s=>ms.includes(s),ys=s=>{const t=vt();return!(typeof t!="boolean"&&t.events&&t.events.includes&&t.events.includes(s))},vt=()=>(Z===void 0&&(Z=Ae()),Z),vs=s=>{Z=s},As=s=>{const t=vt();return _s(s)?!1:t===!0?!0:!ys(s)},$s=["disabled","title","hidden","role","draggable"],bt=s=>$s.includes(s)||s.startsWith("aria")?!0:![HTMLElement,Element,Node].some(e=>e.prototype.hasOwnProperty(s)),Et=(s,t)=>{if(s.length!==t.length)return!1;for(let e=0;e<s.length;e++)if(s[e]!==t[e])return!1;return!0},Mt=(s,t)=>{const e=ws(t),n=Kt();return s.call(t,t,e,n)},ws=s=>{const t=s.constructor,e=t.getMetadata().getPureTag(),n=t.getUniqueDependencies().map(i=>i.getMetadata().getPureTag()).filter(ut);return ut(e)&&n.push(e),n};let Cs=0;const Tt=new Map,it=new Map;function L(s){this._suppressInvalidation||(this.onInvalidation(s),this._changedState.push(s),De(this),this._eventProvider.fireEvent("invalidate",{...s,target:this}))}class w extends HTMLElement{constructor(){super();const t=this.constructor;this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new J;let e;this._domRefReadyPromise=new Promise(n=>{e=n}),this._domRefReadyPromise._deferredResolve=e,this._doNotSyncAttributes=new Set,this._state={...t.getMetadata().getInitialState()},this._upgradeAllProperties(),t._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id=`ui5wc_${++Cs}`),this.__id}render(){const t=this.constructor.template;return Mt(t,this)}renderStatic(){const t=this.constructor.staticAreaTemplate;return Mt(t,this)}async connectedCallback(){const t=this.constructor;this.setAttribute(`_ui5rt${mt()}`,""),this.setAttribute("_ui5host",""),this.setAttribute(t.getMetadata().getPureTag(),""),t.getMetadata().supportsF6FastNavigation()&&this.setAttribute("data-sap-ui-fastnavgroup","true");const e=t.getMetadata().slotsAreManaged();this._inDOM=!0,e&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&($e(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,this.onEnterDOM())}disconnectedCallback(){const e=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!1,e&&this._stopObservingDOMChildren(),this._fullyConnected&&(this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),we(this)}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}_startObservingDOMChildren(){const t=this.constructor;if(!t.getMetadata().hasSlots())return;const n=t.getMetadata().canSlotText(),i={childList:!0,subtree:n,characterData:n};fs(this,this._processChildren.bind(this),i)}_stopObservingDOMChildren(){gs(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor,e=t.getMetadata().getSlots(),n=t.getMetadata().canSlotText(),i=Array.from(n?this.childNodes:this.children),r=new Map,o=new Map;for(const[d,u]of Object.entries(e)){const h=u.propertyName||d;o.set(h,d),r.set(h,[...this._state[h]]),this._clearSlot(d,u)}const c=new Map,a=new Map,l=i.map(async(d,u)=>{const h=qe(d),f=e[h];if(f===void 0){if(h!=="default"){const g=Object.keys(e).join(", ");console.warn(`Unknown slotName: ${h}, ignoring`,d,`Valid values are: ${g}`)}return}if(f.individualSlots){const g=(c.get(h)||0)+1;c.set(h,g),d._individualSlot=`${h}-${g}`}if(d instanceof HTMLElement){const g=d.localName;if(g.includes("-")&&!ps(g)){if(!window.customElements.get(g)){const fe=window.customElements.whenDefined(g);let j=Tt.get(g);j||(j=new Promise(ge=>setTimeout(ge,1e3)),Tt.set(g,j)),await Promise.race([fe,j])}window.customElements.upgrade(d)}}if(d=t.getMetadata().constructor.validateSlotValue(d,f),xt(d)&&f.invalidateOnChildChange){const g=this._getChildChangeListener(h);g&&d.attachInvalidate.call(d,g)}d instanceof HTMLSlotElement&&this._attachSlotChange(d,h);const m=f.propertyName||h;a.has(m)?a.get(m).push({child:d,idx:u}):a.set(m,[{child:d,idx:u}])});await Promise.all(l),a.forEach((d,u)=>{this._state[u]=d.sort((h,f)=>h.idx-f.idx).map(h=>h.child)});let p=!1;for(const[d,u]of Object.entries(e)){const h=u.propertyName||d;Et(r.get(h),this._state[h])||(L.call(this,{type:"slot",name:o.get(h),reason:"children"}),p=!0)}p||L.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,e){const n=e.propertyName||t;this._state[n].forEach(r=>{if(xt(r)){const o=this._getChildChangeListener(t);o&&r.detachInvalidate.call(r,o)}r instanceof HTMLSlotElement&&this._detachSlotChange(r,t)}),this._state[n]=[]}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)||L.call(this,{type:"slot",name:t,reason:"childchange",child:e.target})}attributeChangedCallback(t,e,n){let i;if(this._doNotSyncAttributes.has(t))return;const r=this.constructor.getMetadata().getProperties(),o=t.replace(/^ui5-/,""),c=wt(o);if(r.hasOwnProperty(c)){const a=r[c],l=a.type;let p=a.validator;l&&l.isDataTypeClass&&(p=l),p?i=p.attributeToProperty(n):l===Boolean?i=n!==null:i=n,this[c]=i}}_updateAttribute(t,e){const n=this.constructor;if(!n.getMetadata().hasAttribute(t))return;const r=n.getMetadata().getProperties()[t],o=r.type;let c=r.validator;const a=Zt(t),l=this.getAttribute(a);if(o&&o.isDataTypeClass&&(c=o),c){const p=c.propertyToAttribute(e);p===null?(this._doNotSyncAttributes.add(a),this.removeAttribute(a),this._doNotSyncAttributes.delete(a)):this.setAttribute(a,p)}else o===Boolean?e===!0&&l===null?this.setAttribute(a,""):e===!1&&l!==null&&this.removeAttribute(a):typeof e!="object"&&l!==e&&this.setAttribute(a,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.bind(this))}_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){const n=this._getSlotChangeListener(e);n&&t.addEventListener("slotchange",n)}_detachSlotChange(t,e){t.removeEventListener("slotchange",this._getSlotChangeListener(e))}_onSlotChange(t){L.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor,e=t.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],t._needsShadowDOM()&&ht(this),this.staticAreaItem&&this.staticAreaItem.update(),e&&this._assignIndividualSlotsToChildren(),this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach(e=>{e._individualSlot&&e.setAttribute("slot",e._individualSlot)})}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if(typeof this._getRealDomRef=="function")return this._getRealDomRef();if(!this.shadowRoot||this.shadowRoot.children.length===0)return;const t=[...this.shadowRoot.children].filter(e=>!["link","style"].includes(e.localName));return t.length!==1&&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`),t[0]}getFocusDomRef(){const t=this.getDomRef();if(t)return t.querySelector("[data-sap-focus-ref]")||t}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}async focus(t){await this._waitForDomRef();const e=this.getFocusDomRef();e&&typeof e.focus=="function"&&e.focus(t)}fireEvent(t,e,n=!1,i=!0){const r=this._fireEvent(t,e,n,i),o=wt(t);return o!==t?r&&this._fireEvent(o,e,n):r}_fireEvent(t,e,n=!1,i=!0){const r=new CustomEvent(`ui5-${t}`,{detail:e,composed:!1,bubbles:i,cancelable:n}),o=this.dispatchEvent(r);if(As(t))return o;const c=new CustomEvent(t,{detail:e,composed:!1,bubbles:i,cancelable:n});return this.dispatchEvent(c)&&o}getSlottedNodes(t){return Ze(this[t])}get effectiveDir(){return Ce(this.constructor),Qt(this)}get isUI5Element(){return!0}get classes(){return{}}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _needsShadowDOM(){return!!this.template||Object.prototype.hasOwnProperty.call(this.prototype,"render")}static _needsStaticArea(){return!!this.staticAreaTemplate||Object.prototype.hasOwnProperty.call(this.prototype,"renderStatic")}getStaticAreaItemDomRef(){if(!this.constructor._needsStaticArea())throw new Error("This component does not use the static area");return this.staticAreaItem||(this.staticAreaItem=R.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||Se("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,e=this.getMetadata().slotsAreManaged(),n=this.getMetadata().getProperties();for(const[i,r]of Object.entries(n)){if(bt(i)||console.warn(`"${i}" is not a valid property name. Use a name that does not collide with DOM APIs`),r.type===Boolean&&r.defaultValue)throw new Error(`Cannot set a default value for property "${i}". All booleans are false by default.`);if(r.type===Array)throw new Error(`Wrong type for property "${i}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(r.type===Object&&r.defaultValue)throw new Error(`Cannot set a default value for property "${i}". All properties of type "Object" are empty objects by default.`);if(r.multiple&&r.defaultValue)throw new Error(`Cannot set a default value for property "${i}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,i,{get(){if(this._state[i]!==void 0)return this._state[i];const o=r.defaultValue;return r.type===Boolean?!1:r.type===String?o:r.multiple?[]:o},set(o){let c;o=this.constructor.getMetadata().constructor.validatePropertyValue(o,r);const p=r.type;let d=r.validator;const u=this._state[i];p&&p.isDataTypeClass&&(d=p),d?c=!d.valuesAreEqual(u,o):Array.isArray(u)&&Array.isArray(o)&&r.multiple&&r.compareValues?c=!Et(u,o):c=u!==o,c&&(this._state[i]=o,L.call(this,{type:"property",name:i,newValue:o,oldValue:u}),this._updateAttribute(i,o))}})}if(e){const i=this.getMetadata().getSlots();for(const[r,o]of Object.entries(i)){bt(r)||console.warn(`"${r}" is not a valid property name. Use a name that does not collide with DOM APIs`);const c=o.propertyName||r;Object.defineProperty(t,c,{get(){return this._state[c]!==void 0?this._state[c]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!it.has(this)){const t=this.dependencies.filter((e,n,i)=>i.indexOf(e)===n);it.set(this,t)}return it.get(this)||[]}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map(t=>t.define()))}static async onDefine(){return Promise.resolve()}static async define(){await be(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=Ee(t),n=customElements.get(t);return n&&!e?Me(t):n||(this._generateAccessors(),Te(t),window.customElements.define(t,this)),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==w;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const n=xe({},...t);return this._metadata=new Ke(n),this._metadata}}w.metadata={};const xt=s=>"isUI5Element"in s;/**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ * SPDX-License-Identifier: BSD-3-Clause
5
+ */var rt;const G=window,x=G.trustedTypes,Dt=x?x.createPolicy("lit-html",{createHTML:s=>s}):void 0,K="$lit$",$=`lit$${(Math.random()+"").slice(9)}$`,At="?"+$,Ss=`<${At}>`,D=document,H=()=>D.createComment(""),k=s=>s===null||typeof s!="object"&&typeof s!="function",te=Array.isArray,ee=s=>te(s)||typeof(s==null?void 0:s[Symbol.iterator])=="function",ot=`[
6
+ \f\r]`,P=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,It=/-->/g,Lt=/>/g,S=RegExp(`>|${ot}(?:([^\\s"'>=/]+)(${ot}*=${ot}*(?:[^
7
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),Pt=/'/g,Nt=/"/g,se=/^(?:script|style|textarea|title)$/i,bs=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),Es=bs(1),E=Symbol.for("lit-noChange"),_=Symbol.for("lit-nothing"),Ot=new WeakMap,T=D.createTreeWalker(D,129,null,!1),ne=(s,t)=>{const e=s.length-1,n=[];let i,r=t===2?"<svg>":"",o=P;for(let a=0;a<e;a++){const l=s[a];let p,d,u=-1,h=0;for(;h<l.length&&(o.lastIndex=h,d=o.exec(l),d!==null);)h=o.lastIndex,o===P?d[1]==="!--"?o=It:d[1]!==void 0?o=Lt:d[2]!==void 0?(se.test(d[2])&&(i=RegExp("</"+d[2],"g")),o=S):d[3]!==void 0&&(o=S):o===S?d[0]===">"?(o=i!=null?i:P,u=-1):d[1]===void 0?u=-2:(u=o.lastIndex-d[2].length,p=d[1],o=d[3]===void 0?S:d[3]==='"'?Nt:Pt):o===Nt||o===Pt?o=S:o===It||o===Lt?o=P:(o=S,i=void 0);const f=o===S&&s[a+1].startsWith("/>")?" ":"";r+=o===P?l+Ss:u>=0?(n.push(p),l.slice(0,u)+K+l.slice(u)+$+f):l+$+(u===-2?(n.push(void 0),a):f)}const c=r+(s[e]||"<?>")+(t===2?"</svg>":"");if(!Array.isArray(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return[Dt!==void 0?Dt.createHTML(c):c,n]};class B{constructor({strings:t,_$litType$:e},n){let i;this.parts=[];let r=0,o=0;const c=t.length-1,a=this.parts,[l,p]=ne(t,e);if(this.el=B.createElement(l,n),T.currentNode=this.el.content,e===2){const d=this.el.content,u=d.firstChild;u.remove(),d.append(...u.childNodes)}for(;(i=T.nextNode())!==null&&a.length<c;){if(i.nodeType===1){if(i.hasAttributes()){const d=[];for(const u of i.getAttributeNames())if(u.endsWith(K)||u.startsWith($)){const h=p[o++];if(d.push(u),h!==void 0){const f=i.getAttribute(h.toLowerCase()+K).split($),m=/([.?@])?(.*)/.exec(h);a.push({type:1,index:r,name:m[2],strings:f,ctor:m[1]==="."?re:m[1]==="?"?oe:m[1]==="@"?ae:V})}else a.push({type:6,index:r})}for(const u of d)i.removeAttribute(u)}if(se.test(i.tagName)){const d=i.textContent.split($),u=d.length-1;if(u>0){i.textContent=x?x.emptyScript:"";for(let h=0;h<u;h++)i.append(d[h],H()),T.nextNode(),a.push({type:2,index:++r});i.append(d[u],H())}}}else if(i.nodeType===8)if(i.data===At)a.push({type:2,index:r});else{let d=-1;for(;(d=i.data.indexOf($,d+1))!==-1;)a.push({type:7,index:r}),d+=$.length-1}r++}}static createElement(t,e){const n=D.createElement("template");return n.innerHTML=t,n}}function M(s,t,e=s,n){var i,r,o,c;if(t===E)return t;let a=n!==void 0?(i=e._$Co)===null||i===void 0?void 0:i[n]:e._$Cl;const l=k(t)?void 0:t._$litDirective$;return(a==null?void 0:a.constructor)!==l&&((r=a==null?void 0:a._$AO)===null||r===void 0||r.call(a,!1),l===void 0?a=void 0:(a=new l(s),a._$AT(s,e,n)),n!==void 0?((o=(c=e)._$Co)!==null&&o!==void 0?o:c._$Co=[])[n]=a:e._$Cl=a),a!==void 0&&(t=M(s,a._$AS(s,t.values),a,n)),t}class ie{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){var e;const{el:{content:n},parts:i}=this._$AD,r=((e=t==null?void 0:t.creationScope)!==null&&e!==void 0?e:D).importNode(n,!0);T.currentNode=r;let o=T.nextNode(),c=0,a=0,l=i[0];for(;l!==void 0;){if(c===l.index){let p;l.type===2?p=new I(o,o.nextSibling,this,t):l.type===1?p=new l.ctor(o,l.name,l.strings,this,t):l.type===6&&(p=new le(o,this,t)),this._$AV.push(p),l=i[++a]}c!==(l==null?void 0:l.index)&&(o=T.nextNode(),c++)}return r}v(t){let e=0;for(const n of this._$AV)n!==void 0&&(n.strings!==void 0?(n._$AI(t,n,e),e+=n.strings.length-2):n._$AI(t[e])),e++}}class I{constructor(t,e,n,i){var r;this.type=2,this._$AH=_,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=n,this.options=i,this._$Cp=(r=i==null?void 0:i.isConnected)===null||r===void 0||r}get _$AU(){var t,e;return(e=(t=this._$AM)===null||t===void 0?void 0:t._$AU)!==null&&e!==void 0?e:this._$Cp}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return e!==void 0&&(t==null?void 0:t.nodeType)===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=M(this,t,e),k(t)?t===_||t==null||t===""?(this._$AH!==_&&this._$AR(),this._$AH=_):t!==this._$AH&&t!==E&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):ee(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==_&&k(this._$AH)?this._$AA.nextSibling.data=t:this.$(D.createTextNode(t)),this._$AH=t}g(t){var e;const{values:n,_$litType$:i}=t,r=typeof i=="number"?this._$AC(t):(i.el===void 0&&(i.el=B.createElement(i.h,this.options)),i);if(((e=this._$AH)===null||e===void 0?void 0:e._$AD)===r)this._$AH.v(n);else{const o=new ie(r,this),c=o.u(this.options);o.v(n),this.$(c),this._$AH=o}}_$AC(t){let e=Ot.get(t.strings);return e===void 0&&Ot.set(t.strings,e=new B(t)),e}T(t){te(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let n,i=0;for(const r of t)i===e.length?e.push(n=new I(this.k(H()),this.k(H()),this,this.options)):n=e[i],n._$AI(r),i++;i<e.length&&(this._$AR(n&&n._$AB.nextSibling,i),e.length=i)}_$AR(t=this._$AA.nextSibling,e){var n;for((n=this._$AP)===null||n===void 0||n.call(this,!1,!0,e);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var e;this._$AM===void 0&&(this._$Cp=t,(e=this._$AP)===null||e===void 0||e.call(this,t))}}class V{constructor(t,e,n,i,r){this.type=1,this._$AH=_,this._$AN=void 0,this.element=t,this.name=e,this._$AM=i,this.options=r,n.length>2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=_}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,n,i){const r=this.strings;let o=!1;if(r===void 0)t=M(this,t,e,0),o=!k(t)||t!==this._$AH&&t!==E,o&&(this._$AH=t);else{const c=t;let a,l;for(t=r[0],a=0;a<r.length-1;a++)l=M(this,c[n+a],e,a),l===E&&(l=this._$AH[a]),o||(o=!k(l)||l!==this._$AH[a]),l===_?t=_:t!==_&&(t+=(l!=null?l:"")+r[a+1]),this._$AH[a]=l}o&&!i&&this.j(t)}j(t){t===_?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t!=null?t:"")}}class re extends V{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===_?void 0:t}}const Ms=x?x.emptyScript:"";class oe extends V{constructor(){super(...arguments),this.type=4}j(t){t&&t!==_?this.element.setAttribute(this.name,Ms):this.element.removeAttribute(this.name)}}class ae extends V{constructor(t,e,n,i,r){super(t,e,n,i,r),this.type=5}_$AI(t,e=this){var n;if((t=(n=M(this,t,e,0))!==null&&n!==void 0?n:_)===E)return;const i=this._$AH,r=t===_&&i!==_||t.capture!==i.capture||t.once!==i.once||t.passive!==i.passive,o=t!==_&&(i===_||r);r&&this.element.removeEventListener(this.name,this,i),o&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,n;typeof this._$AH=="function"?this._$AH.call((n=(e=this.options)===null||e===void 0?void 0:e.host)!==null&&n!==void 0?n:this.element,t):this._$AH.handleEvent(t)}}class le{constructor(t,e,n){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(t){M(this,t)}}const Ts={O:K,P:$,A:At,C:1,M:ne,L:ie,D:ee,R:M,I,V,H:oe,N:ae,U:re,F:le},Rt=G.litHtmlPolyfillSupport;Rt==null||Rt(B,I),((rt=G.litHtmlVersions)!==null&&rt!==void 0?rt:G.litHtmlVersions=[]).push("2.7.2");const xs=(s,t,e)=>{var n,i;const r=(n=e==null?void 0:e.renderBefore)!==null&&n!==void 0?n:t;let o=r._$litPart$;if(o===void 0){const c=(i=e==null?void 0:e.renderBefore)!==null&&i!==void 0?i:null;r._$litPart$=o=new I(t.insertBefore(H(),c),c,void 0,e!=null?e:{})}return o._$AI(s),o};/**
8
+ * @license
9
+ * Copyright 2017 Google LLC
10
+ * SPDX-License-Identifier: BSD-3-Clause
11
+ */const ce={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Ds=s=>(...t)=>({_$litDirective$:s,values:t});class de{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,n){this._$Ct=t,this._$AM=e,this._$Ci=n}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}/**
12
+ * @license
13
+ * Copyright 2020 Google LLC
14
+ * SPDX-License-Identifier: BSD-3-Clause
15
+ */const{I:Is}=Ts,Ht=()=>document.createComment(""),N=(s,t,e)=>{var n;const i=s._$AA.parentNode,r=t===void 0?s._$AB:t._$AA;if(e===void 0){const o=i.insertBefore(Ht(),r),c=i.insertBefore(Ht(),r);e=new Is(o,c,s,s.options)}else{const o=e._$AB.nextSibling,c=e._$AM,a=c!==s;if(a){let l;(n=e._$AQ)===null||n===void 0||n.call(e,s),e._$AM=s,e._$AP!==void 0&&(l=s._$AU)!==c._$AU&&e._$AP(l)}if(o!==r||a){let l=e._$AA;for(;l!==o;){const p=l.nextSibling;i.insertBefore(l,r),l=p}}}return e},b=(s,t,e=s)=>(s._$AI(t,e),s),Ls={},Ps=(s,t=Ls)=>s._$AH=t,Ns=s=>s._$AH,at=s=>{var t;(t=s._$AP)===null||t===void 0||t.call(s,!1,!0);let e=s._$AA;const n=s._$AB.nextSibling;for(;e!==n;){const i=e.nextSibling;e.remove(),e=i}};/**
16
+ * @license
17
+ * Copyright 2017 Google LLC
18
+ * SPDX-License-Identifier: BSD-3-Clause
19
+ */const kt=(s,t,e)=>{const n=new Map;for(let i=t;i<=e;i++)n.set(s[i],i);return n},ue=Ds(class extends de{constructor(s){if(super(s),s.type!==ce.CHILD)throw Error("repeat() can only be used in text expressions")}dt(s,t,e){let n;e===void 0?e=t:t!==void 0&&(n=t);const i=[],r=[];let o=0;for(const c of s)i[o]=n?n(c,o):o,r[o]=e(c,o),o++;return{values:r,keys:i}}render(s,t,e){return this.dt(s,t,e).values}update(s,[t,e,n]){var i;const r=Ns(s),{values:o,keys:c}=this.dt(t,e,n);if(!Array.isArray(r))return this.ht=c,o;const a=(i=this.ht)!==null&&i!==void 0?i:this.ht=[],l=[];let p,d,u=0,h=r.length-1,f=0,m=o.length-1;for(;u<=h&&f<=m;)if(r[u]===null)u++;else if(r[h]===null)h--;else if(a[u]===c[f])l[f]=b(r[u],o[f]),u++,f++;else if(a[h]===c[m])l[m]=b(r[h],o[m]),h--,m--;else if(a[u]===c[m])l[m]=b(r[u],o[m]),N(s,l[m+1],r[u]),u++,m--;else if(a[h]===c[f])l[f]=b(r[h],o[f]),N(s,r[u],r[h]),h--,f++;else if(p===void 0&&(p=kt(c,f,m),d=kt(a,u,h)),p.has(a[u]))if(p.has(a[h])){const g=d.get(c[f]),U=g!==void 0?r[g]:null;if(U===null){const Y=N(s,r[u]);b(Y,o[f]),l[f]=Y}else l[f]=b(U,o[f]),N(s,r[u],U),r[g]=null;f++}else at(r[h]),h--;else at(r[u]),u++;for(;f<=m;){const g=N(s,l[m+1]);b(g,o[f]),l[f++]=g}for(;u<=h;){const g=r[u++];g!==null&&at(g)}return this.ht=c,Ps(s,l),E}});/**
20
+ * @license
21
+ * Copyright 2018 Google LLC
22
+ * SPDX-License-Identifier: BSD-3-Clause
23
+ */const v=s=>s!=null?s:_;/**
24
+ * @license
25
+ * Copyright 2017 Google LLC
26
+ * SPDX-License-Identifier: BSD-3-Clause
27
+ */class Bt extends de{constructor(t){if(super(t),this.et=_,t.type!==ce.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===_||t==null)return this.ft=void 0,this.et=t;if(t===E)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.et)return this.ft;this.et=t;const e=[t];return e.raw=e,this.ft={_$litType$:this.constructor.resultType,strings:e,values:[]}}}Bt.directiveName="unsafeHTML",Bt.resultType=1;const y=(s,...t)=>{const e=X("LitStatic");return(e?e.html:Es)(s,...t)},F=(s,t,e,n,i)=>{const r=X("OpenUI5Enablement");r&&!n&&(s=r.wrapTemplateResultInBusyMarkup(y,i.host,s)),typeof e=="string"?s=y`<style>${e}</style>${s}`:Array.isArray(e)&&e.length&&(s=y`${e.map(o=>y`<link type="text/css" rel="stylesheet" href="${o}">`)}${s}`),xs(s,t,i)},Os={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 he extends w{static get metadata(){return Os}static get render(){return F}static get template(){return t=>y`<div><p>
28
+ <slot></slot>
29
+ <slot name="other"></slot>
30
+ <slot name="individual-1"></slot>
31
+ <slot name="individual-2"></slot>
32
+ </p></div>`}static get styles(){return`:host {
33
+ display: inline-block;
34
+ border: 1px solid black;
35
+ color: var(--var1);
36
+ }`}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}he.define();const Rs={tag:"ui5-test-no-shadow"};class Hs extends w{static get metadata(){return Rs}}Hs.define();const ks={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};class Bs extends w{static get metadata(){return ks}static get render(){return F}static get template(){return t=>y`<div>
37
+ <slot></slot>
38
+ </div>`}}Bs.define();const Vs={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};class Fs extends w{static get metadata(){return Vs}static get render(){return F}static get template(){return t=>y`<div></div>`}}Fs.define();const Us={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};class js extends w{static get metadata(){return Us}static get render(){return F}static get template(){return t=>y`
39
+ <div dir=${t.effectiveDir}>
40
+ WithStaticArea works!
41
+ </div>`}static get staticAreaTemplate(){return t=>y`
42
+ <div class="ui5-with-static-area-content">
43
+ Static area content.
44
+ </div>`}static get styles(){return`
45
+ :host {
46
+ display: inline-block;
47
+ border: 1px solid black;
48
+ color: red;
49
+ }`}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(){}}js.define();function zs(s,t,e){return y`<div>Root text: ${v(this.text)}${ue(this.items,(n,i)=>n._id||i,(n,i)=>Ws.call(this,s,t,e,n,i))} Root text: ${v(this.text)}</div>`}function Ws(s,t,e,n,i){return y`<h3>Item-${i}</h3>${n.text?qs.call(this,s,t,e,n,i):void 0}<ul>${ue(n.words,(r,o)=>r._id||o,(r,o)=>Zs.call(this,s,t,e,r,o))}</ul>${n.text?Gs.call(this,s,t,e,n,i):void 0}`}function qs(s,t,e,n,i){return y`<div class="before-each-content--start--${i}">Root text: ${v(this.text)}, Item text: ${v(n.text)}</div>`}function Zs(s,t,e,n,i){return y`<li><h3>Word-${i}</h3><div class="nested-each-content--${i}--0">Root Text: ${v(this.text)}, Word text: ${v(n.text)}</div><div class="nested-each-content--${i}--1">Root Text: ${v(this.text)}, Word text: ${v(n.text)}</div></li>`}function Gs(s,t,e,n,i){return y`<div class="after-each-content--end--${i}">Root text: ${v(this.text)}, Item text: ${v(n.text)}</div>`}class Ks extends w{static get metadata(){return{tag:"ui5-test-complex-template"}}static get render(){return F}static get template(){return zs}get text(){return"root"}get items(){return[{text:"positives",words:[{text:"word1_good"},{text:"word2_nice"},{text:"word3_kind"}]},{text:"negatives",words:[{text:"word4_bad"},{text:"word5_rude"},{text:"word6_unpolite"}]}]}}Ks.define();const Js={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};class Xs extends he{static get metadata(){return Js}}Xs.define();const Ys={content:":root{ --var1: red; }",packageName:"",fileName:""},Qs={content:":root{ --var1: green; }",packageName:"",fileName:""},tn={content:":root{ --var1: blue; }",packageName:"",fileName:""},en={content:":root{ --var1: orange; }",packageName:"",fileName:""},sn={content:":root{ --var1: orange; }",packageName:"",fileName:""},nn={content:":root{ --var1: yellow; }",packageName:"",fileName:""},rn={content:":root{ --var1: yellow; }",packageName:"",fileName:""};C("@ui5/webcomponents-base-test","sap_fiori_3",()=>Ys);C("@ui5/webcomponents-base-test","sap_fiori_3_dark",()=>Qs);C("@ui5/webcomponents-base-test","sap_belize",()=>tn);C("@ui5/webcomponents-base-test","sap_belize_hcb",()=>en);C("@ui5/webcomponents-base-test","sap_belize_hcw",()=>sn);C("@ui5/webcomponents-base-test","sap_fiori_3_hcb",()=>nn);C("@ui5/webcomponents-base-test","sap_fiori_3_hcw",()=>rn);const on=typeof window.chrome=="object"||typeof window.v8=="object"?(s,t)=>(t>2&&40*t>s.length,s):s=>s,an=/(?:\r\n|\r|\n|^)[ \t\f]*/,ln=/(\\u[0-9a-fA-F]{0,4})|(\\.)|(\\$)|([ \t\f]*[ \t\f:=][ \t\f]*)/g,cn=/(\\u[0-9a-fA-F]{0,4})|(\\.)|(\\$)/g,dn={"\\f":"\f","\\n":`
50
+ `,"\\r":"\r","\\t":" "},un=s=>{const t={},e=s.split(an);let n,i,r,o,c,a,l,p;const d=u=>{o?(o=`${o}${u}`,p++):(o=u,p=0)};for(c=0;c<e.length;c++)if(n=e[c],!(n===""||n.charAt(0)==="#"||n.charAt(0)==="!")){for(i=ln,l=0,i.lastIndex=l,r=null,o="",a=i.exec(n);a!==null;){if(l<a.index&&d(n.slice(l,a.index)),l=i.lastIndex,a[1]){if(a[1].length!==6)throw new Error(`Incomplete Unicode Escape '${a[1]}'`);d(String.fromCharCode(parseInt(a[1].slice(2),16)))}else a[2]?d(dn[a[2]]||a[2].slice(1)):a[3]?(n=e[++c],l=0,i.lastIndex=l):a[4]&&(r=o,o="",i=cn,i.lastIndex=l);a=i.exec(n)}l<n.length&&d(n.slice(l)),r==null&&(r=o,o=""),t[r]=on(o,o?p:0)}return t};let lt;const hn=()=>(lt===void 0&&(lt=Ie()),lt);var ft;(function(s){s.Gregorian="Gregorian",s.Islamic="Islamic",s.Japanese="Japanese",s.Buddhist="Buddhist",s.Persian="Persian"})(ft||(ft={}));const Vt=ft;let O;const pn=()=>(O===void 0&&(O=Le()),O&&O in Vt?O:Vt.Gregorian);let ct;class pe{static getLegacyDateCalendarCustomizing(){return ct===void 0&&(ct=qt()),ct.legacyDateCalendarCustomizing||[]}}Ft("LegacyDateFormats",pe);let dt;const fn=()=>(dt===void 0&&(dt=qt()),dt.firstDayOfWeek),gn=X("LegacyDateFormats"),mn=gn?pe.getLegacyDateCalendarCustomizing:()=>[],_n=new J,yn="directionChange",vn=()=>_n.fireEvent(yn,void 0),An=async()=>{const s=vn();await Promise.all(s),await jt({rtlAware:!0})};window.registerThemePropertiesLoader=C;window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:hn,getLanguage:zt,setLanguage:Pe,getTheme:Ne,getThemeRoot:Oe,setThemeRoot:Re,setTheme:Ut,getNoConflict:vt,setNoConflict:vs,getCalendarType:pn,getRTL:Yt,getFirstDayOfWeek:fn,getLegacyDateCalendarCustomizing:mn},getCurrentRuntimeIndex:mt,getIconNames:He,parseProperties:un,registerI18nLoader:ke,getI18nBundle:je,renderFinished:Wt,applyDirection:An,EventProvider:J};
@@ -1 +1 @@
1
- {"version":3,"file":"IconCollectionsAlias.js","sourceRoot":"","sources":["../../src/assets-meta/IconCollectionsAlias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,IAAK,oBAKJ;AALD,WAAK,oBAAoB;IACxB,kDAA4B,CAAA;IAC5B,gDAA0B,CAAA;IAC1B,6CAAuB,CAAA;IACvB,oEAA8C,CAAA;AAC/C,CAAC,EALI,oBAAoB,KAApB,oBAAoB,QAKxB;AAED;;;;;;;;;;GAUG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC3D,IAAI,oBAAoB,CAAC,cAAmD,CAAC,EAAE;QAC9E,OAAO,oBAAoB,CAAC,cAAmD,CAAC,CAAC;KACjF;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC;AACpC,OAAO,EACN,wBAAwB,GACxB,CAAC"}
1
+ {"version":3,"file":"IconCollectionsAlias.js","sourceRoot":"","sources":["../../src/assets-meta/IconCollectionsAlias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,IAAK,oBAKJ;AALD,WAAK,oBAAoB;IACxB,kDAA4B,CAAA;IAC5B,gDAA0B,CAAA;IAC1B,6CAAuB,CAAA;IACvB,oEAA8C,CAAA;AAC/C,CAAC,EALI,oBAAoB,KAApB,oBAAoB,QAKxB;AAED;;;;;;;;;;GAUG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC3D,IAAI,oBAAoB,CAAC,cAAmD,CAAC,EAAE;QAC9E,OAAO,oBAAoB,CAAC,cAAmD,CAAC,CAAC;KACjF;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC;AACpC,OAAO,EACN,wBAAwB,GACxB,CAAC","sourcesContent":["/**\n * Supported icon collection aliases.\n *\n * Users might specify a collection, using both the key and the value in the following key-value pairs,\n * e.g the following pairs are completely exchangeable:\n *\n * - \"SAP-icons/accept\" and \"SAP-icons-v4/accept\"\n * - \"horizon/accept\" and \"SAP-icons-v5/accept\"\n * - \"SAP-icons-TNT/actor\" and \"tnt/actor\"\n * - \"BusinessSuiteInAppSymbols/3d\" and \"business-suite/3d\"\n */\nenum IconCollectionsAlias {\n\t\"SAP-icons\" = \"SAP-icons-v4\",\n\t\"horizon\" = \"SAP-icons-v5\",\n\t\"SAP-icons-TNT\" = \"tnt\",\n\t\"BusinessSuiteInAppSymbols\" = \"business-suite\",\n}\n\n/**\n * Returns the mapped collection name for a given alias.\n *\n * <b>For example</b>:\n * - \"SAP-icons-TNT\"resolves to \"tnt\"\n * - \"BusinessSuiteInAppSymbols\" resolves to \"business-suite\"\n * - \"horizon\" resolves to \"SAP-icons-v5\"\n *\n * @param { string } collectionName\n * @return { string } the normalized collection name\n */\nconst getIconCollectionByAlias = (collectionName: string) => {\n\tif (IconCollectionsAlias[collectionName as keyof typeof IconCollectionsAlias]) {\n\t\treturn IconCollectionsAlias[collectionName as keyof typeof IconCollectionsAlias];\n\t}\n\n\treturn collectionName;\n};\n\nexport default IconCollectionsAlias;\nexport {\n\tgetIconCollectionByAlias,\n};\n"]}
@@ -4,11 +4,11 @@ import AnimationMode from "../types/AnimationMode.js";
4
4
  * @public
5
5
  * @returns { AnimationMode }
6
6
  */
7
- declare const getAnimationMode: () => AnimationMode;
7
+ declare const getAnimationMode: () => `${AnimationMode}`;
8
8
  /**
9
9
  * Sets the animation mode - "full", "basic", "minimal" or "none".
10
10
  * @public
11
11
  * @param { AnimationMode } animationMode
12
12
  */
13
- declare const setAnimationMode: (animationMode: AnimationMode) => void;
13
+ declare const setAnimationMode: (animationMode: `${AnimationMode}`) => void;
14
14
  export { getAnimationMode, setAnimationMode, };
@@ -18,7 +18,7 @@ const getAnimationMode = () => {
18
18
  * @param { AnimationMode } animationMode
19
19
  */
20
20
  const setAnimationMode = (animationMode) => {
21
- if (Object.values(AnimationMode).includes(animationMode)) {
21
+ if (animationMode in AnimationMode) {
22
22
  curAnimationMode = animationMode;
23
23
  }
24
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AnimationMode.js","sourceRoot":"","sources":["../../src/config/AnimationMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,aAAa,MAAM,2BAA2B,CAAC;AAEtD,IAAI,gBAA+B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,GAAkB,EAAE;IAC5C,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACnC,gBAAgB,GAAG,0BAA0B,EAAE,CAAC;KAChD;IAED,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,aAA4B,EAAE,EAAE;IACzD,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;QACzD,gBAAgB,GAAG,aAAa,CAAC;KACjC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,CAAC"}
1
+ {"version":3,"file":"AnimationMode.js","sourceRoot":"","sources":["../../src/config/AnimationMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,aAAa,MAAM,2BAA2B,CAAC;AAEtD,IAAI,gBAAoC,CAAC;AAEzC;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,GAAuB,EAAE;IACjD,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACnC,gBAAgB,GAAG,0BAA0B,EAAE,CAAC;KAChD;IAED,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,aAAiC,EAAE,EAAE;IAC9D,IAAI,aAAa,IAAI,aAAa,EAAE;QACnC,gBAAgB,GAAG,aAAa,CAAC;KACjC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,CAAC","sourcesContent":["import { getAnimationMode as getConfiguredAnimationMode } from \"../InitialConfiguration.js\";\nimport AnimationMode from \"../types/AnimationMode.js\";\n\nlet curAnimationMode: `${AnimationMode}`;\n\n/**\n * Returns the animation mode - \"full\", \"basic\", \"minimal\" or \"none\".\n * @public\n * @returns { AnimationMode }\n */\nconst getAnimationMode = (): `${AnimationMode}` => {\n\tif (curAnimationMode === undefined) {\n\t\tcurAnimationMode = getConfiguredAnimationMode();\n\t}\n\n\treturn curAnimationMode;\n};\n\n/**\n * Sets the animation mode - \"full\", \"basic\", \"minimal\" or \"none\".\n * @public\n * @param { AnimationMode } animationMode\n */\nconst setAnimationMode = (animationMode: `${AnimationMode}`) => {\n\tif (animationMode in AnimationMode) {\n\t\tcurAnimationMode = animationMode;\n\t}\n};\n\nexport {\n\tgetAnimationMode,\n\tsetAnimationMode,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarType.js","sourceRoot":"","sources":["../../src/config/CalendarType.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,eAAe,IAAI,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE1F,IAAI,YAAsC,CAAC;AAE3C;;;;GAIG;AACH,MAAM,eAAe,GAAG,GAAiB,EAAE;IAC1C,IAAI,YAAY,KAAK,SAAS,EAAE;QAC/B,YAAY,GAAG,yBAAyB,EAAE,CAAC;KAC3C;IAED,IAAI,YAAY,IAAI,YAAY,IAAI,YAAY,EAAE;QACjD,OAAO,YAAY,CAAC;KACpB;IAED,OAAO,YAAY,CAAC,SAAS,CAAC;AAC/B,CAAC,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC,sBAAsB"}
1
+ {"version":3,"file":"CalendarType.js","sourceRoot":"","sources":["../../src/config/CalendarType.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,eAAe,IAAI,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE1F,IAAI,YAAsC,CAAC;AAE3C;;;;GAIG;AACH,MAAM,eAAe,GAAG,GAAiB,EAAE;IAC1C,IAAI,YAAY,KAAK,SAAS,EAAE;QAC/B,YAAY,GAAG,yBAAyB,EAAE,CAAC;KAC3C;IAED,IAAI,YAAY,IAAI,YAAY,IAAI,YAAY,EAAE;QACjD,OAAO,YAAY,CAAC;KACpB;IAED,OAAO,YAAY,CAAC,SAAS,CAAC;AAC/B,CAAC,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC,sBAAsB","sourcesContent":["import CalendarType from \"../types/CalendarType.js\";\nimport { getCalendarType as getConfiguredCalendarType } from \"../InitialConfiguration.js\";\n\nlet calendarType: CalendarType | undefined;\n\n/**\n * Returns the configured or default calendar type.\n * @public\n * @returns { CalendarType } the effective calendar type\n */\nconst getCalendarType = (): CalendarType => {\n\tif (calendarType === undefined) {\n\t\tcalendarType = getConfiguredCalendarType();\n\t}\n\n\tif (calendarType && calendarType in CalendarType) {\n\t\treturn calendarType;\n\t}\n\n\treturn CalendarType.Gregorian;\n};\n\nexport { getCalendarType }; // eslint-disable-line\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FormatSettings.js","sourceRoot":"","sources":["../../src/config/FormatSettings.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAOpD,IAAI,cAA8B,CAAC;AAEnC;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,GAAuB,EAAE;IAClD,IAAI,cAAc,KAAK,SAAS,EAAE;QACjC,cAAc,GAAG,iBAAiB,EAAE,CAAC;KACrC;IAED,OAAO,cAAc,CAAC,cAAc,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,UAAU,CAA2B,mBAAmB,CAAC,CAAC;AAEpF,MAAM,gCAAgC,GAAG,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,gCAAgC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AAEvI,OAAO,EACN,iBAAiB,EACjB,gCAAgC,GAChC,CAAC"}
1
+ {"version":3,"file":"FormatSettings.js","sourceRoot":"","sources":["../../src/config/FormatSettings.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAOpD,IAAI,cAA8B,CAAC;AAEnC;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,GAAuB,EAAE;IAClD,IAAI,cAAc,KAAK,SAAS,EAAE;QACjC,cAAc,GAAG,iBAAiB,EAAE,CAAC;KACrC;IAED,OAAO,cAAc,CAAC,cAAc,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,UAAU,CAA2B,mBAAmB,CAAC,CAAC;AAEpF,MAAM,gCAAgC,GAAG,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,gCAAgC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AAEvI,OAAO,EACN,iBAAiB,EACjB,gCAAgC,GAChC,CAAC","sourcesContent":["import LegacyDateFormats from \"../features/LegacyDateFormats.js\";\nimport type { LegacyDateCalendarCustomizing } from \"../features/LegacyDateFormats.js\";\nimport { getFormatSettings } from \"../InitialConfiguration.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\n\ntype FormatSettings = {\n\tfirstDayOfWeek?: number,\n\tlegacyDateCalendarCustomizing?: LegacyDateCalendarCustomizing,\n};\n\nlet formatSettings: FormatSettings;\n\n/**\n * Returns the first day of the week from the configured format settings or based on the current locale.\n * @public\n * @returns {Number} 0 (Sunday) through 6 (Saturday)\n */\nconst getFirstDayOfWeek = (): number | undefined => {\n\tif (formatSettings === undefined) {\n\t\tformatSettings = getFormatSettings();\n\t}\n\n\treturn formatSettings.firstDayOfWeek;\n};\n\nconst legacyDateFormats = getFeature<typeof LegacyDateFormats>(\"LegacyDateFormats\");\n\nconst getLegacyDateCalendarCustomizing = legacyDateFormats ? LegacyDateFormats.getLegacyDateCalendarCustomizing : () => { return []; };\n\nexport {\n\tgetFirstDayOfWeek,\n\tgetLegacyDateCalendarCustomizing,\n};\n\nexport type { FormatSettings };\n"]}
@@ -1,4 +1,4 @@
1
- import { getTheme, isThemeFamily } from "./Theme.js";
1
+ import { getTheme, isLegacyThemeFamily } from "./Theme.js";
2
2
  import { getIconCollectionByAlias } from "../assets-meta/IconCollectionsAlias.js";
3
3
  const IconCollectionConfiguration = new Map();
4
4
  // All registered icon collections - all icon collections resolves to these options at the end
@@ -87,15 +87,15 @@ const getEffectiveIconCollection = (collectionName) => {
87
87
  * @returns { RegisteredIconCollection } the registered collection name
88
88
  */
89
89
  const getIconCollectionByTheme = (collectionName) => {
90
- const horizonThemeFamily = isThemeFamily("sap_horizon");
90
+ const legacyThemeFamily = isLegacyThemeFamily();
91
91
  if (!collectionName) {
92
- return horizonThemeFamily ? RegisteredIconCollection.SAPIconsV5 : RegisteredIconCollection.SAPIconsV4;
92
+ return legacyThemeFamily ? RegisteredIconCollection.SAPIconsV4 : RegisteredIconCollection.SAPIconsV5;
93
93
  }
94
94
  if (collectionName === "tnt") {
95
- return horizonThemeFamily ? RegisteredIconCollection.SAPIconsTNTV3 : RegisteredIconCollection.SAPIconsTNTV2;
95
+ return legacyThemeFamily ? RegisteredIconCollection.SAPIconsTNTV2 : RegisteredIconCollection.SAPIconsTNTV3;
96
96
  }
97
97
  if (collectionName === "business-suite") {
98
- return horizonThemeFamily ? RegisteredIconCollection.SAPBSIconsV2 : RegisteredIconCollection.SAPBSIconsV1;
98
+ return legacyThemeFamily ? RegisteredIconCollection.SAPBSIconsV1 : RegisteredIconCollection.SAPBSIconsV2;
99
99
  }
100
100
  return collectionName;
101
101
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../../src/config/Icons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAElF,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAkB,CAAC;AAK9D,8FAA8F;AAC9F,IAAK,wBAOJ;AAPD,WAAK,wBAAwB;IAC5B,uDAA2B,CAAA;IAC3B,uDAA2B,CAAA;IAC3B,oDAAwB,CAAA;IACxB,oDAAwB,CAAA;IACxB,8DAAkC,CAAA;IAClC,8DAAkC,CAAA;AACnC,CAAC,EAPI,wBAAwB,KAAxB,wBAAwB,QAO5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAE,cAA8B,EAAE,EAAE;IAClF,2BAA2B,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAsB,EAAE;IACtE,OAAO,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,0BAA0B,GAAG,CAAC,cAA+B,EAAkB,EAAE;IACtF,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC;IAChC,MAAM,yBAAyB,GAAG,2BAA2B,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEhF,yGAAyG;IACzG,IAAI,CAAC,cAAc,IAAI,yBAAyB,EAAE;QACjD,OAAO,wBAAwB,CAAC,yBAAyB,CAAC,CAAC;KAC3D;IAED,sEAAsE;IACtE,yHAAyH;IACzH,OAAO,wBAAwB,CAAC,cAAc,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAA+B,EAA4B,EAAE;IAC9F,MAAM,kBAAkB,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC,cAAc,EAAE;QACpB,OAAO,kBAAkB,CAAC,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC;KACtG;IAED,IAAI,cAAc,KAAK,KAAK,EAAE;QAC7B,OAAO,kBAAkB,CAAC,CAAC,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC,aAAa,CAAC;KAC5G;IAED,IAAI,cAAc,KAAK,gBAAgB,EAAE;QACxC,OAAO,kBAAkB,CAAC,CAAC,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC,CAAC,wBAAwB,CAAC,YAAY,CAAC;KAC1G;IAED,OAAO,cAA0C,CAAC;AACnD,CAAC,CAAC;AAEF,OAAO,EACN,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,GACxB,CAAC"}
1
+ {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../../src/config/Icons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAElF,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAkB,CAAC;AAK9D,8FAA8F;AAC9F,IAAK,wBAOJ;AAPD,WAAK,wBAAwB;IAC5B,uDAA2B,CAAA;IAC3B,uDAA2B,CAAA;IAC3B,oDAAwB,CAAA;IACxB,oDAAwB,CAAA;IACxB,8DAAkC,CAAA;IAClC,8DAAkC,CAAA;AACnC,CAAC,EAPI,wBAAwB,KAAxB,wBAAwB,QAO5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAE,cAA8B,EAAE,EAAE;IAClF,2BAA2B,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAsB,EAAE;IACtE,OAAO,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,0BAA0B,GAAG,CAAC,cAA+B,EAAkB,EAAE;IACtF,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC;IAChC,MAAM,yBAAyB,GAAG,2BAA2B,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEhF,yGAAyG;IACzG,IAAI,CAAC,cAAc,IAAI,yBAAyB,EAAE;QACjD,OAAO,wBAAwB,CAAC,yBAAyB,CAAC,CAAC;KAC3D;IAED,sEAAsE;IACtE,yHAAyH;IACzH,OAAO,wBAAwB,CAAC,cAAc,CAAC,CAAC;AACjD,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAA+B,EAA4B,EAAE;IAC9F,MAAM,iBAAiB,GAAG,mBAAmB,EAAE,CAAC;IAEhD,IAAI,CAAC,cAAc,EAAE;QACpB,OAAO,iBAAiB,CAAC,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC;KACrG;IAED,IAAI,cAAc,KAAK,KAAK,EAAE;QAC7B,OAAO,iBAAiB,CAAC,CAAC,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC,aAAa,CAAC;KAC3G;IAED,IAAI,cAAc,KAAK,gBAAgB,EAAE;QACxC,OAAO,iBAAiB,CAAC,CAAC,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC,CAAC,wBAAwB,CAAC,YAAY,CAAC;KACzG;IAED,OAAO,cAA0C,CAAC;AACnD,CAAC,CAAC;AAEF,OAAO,EACN,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,GACxB,CAAC","sourcesContent":["import { getTheme, isLegacyThemeFamily } from \"./Theme.js\";\nimport { getIconCollectionByAlias } from \"../assets-meta/IconCollectionsAlias.js\";\n\nconst IconCollectionConfiguration = new Map<string, string>();\n\n// All supported icon collections + unknown custom ones\ntype IconCollection = \"SAP-icons\" | \"SAP-icons-v4\" | \"SAP-icons-v5\" | \"horizon\" | \"tnt\" | \"tnt-v2\" | \"tnt-v3\" | \"business-suite\" | \"business-suite-v1\" | \"business-suite-v2\" | string;\n\n// All registered icon collections - all icon collections resolves to these options at the end\nenum RegisteredIconCollection {\n\tSAPIconsV4 = \"SAP-icons-v4\",\n\tSAPIconsV5 = \"SAP-icons-v5\",\n\tSAPIconsTNTV2 = \"tnt-v2\",\n\tSAPIconsTNTV3 = \"tnt-v3\",\n\tSAPBSIconsV1 = \"business-suite-v1\",\n\tSAPBSIconsV2 = \"business-suite-v2\",\n}\n\n/**\n * Sets the default icon collection for a given theme.\n *\n * SAP Icons is the default icon collection (that resolves to SAP-icons version 5.x in Horizon theme family and SAP-icons version 4.x in all other themes)\n * and to display icons from other collections, you have to specify the icon collection in addition to the icon name, for example: \"tnt/actor\", \"business-suite/1x2-grid-layout\", etc.\n * This method allows setting another (built-in or custom) icon collection as default per theme.\n *\n * <b>Usage</b>\n * <b>For example</b>, to make \"SAP-icons version 5.x\" the default icon collection in \"sap_fiori_3\":\n *\n * <pre>\n * setDefaultIconCollection(\"sap_fiori_3\", \"SAP-icons-v5\");\n *\n * <ui5-icon name=\"home\"></ui5-icon>\n * </pre>\n *\n * <b>For example</b>, to make a custom icon collection (with name \"my-custom-collection\") the default icon collection in \"sap_fiori_3\":\n *\n * <pre>\n * setDefaultIconCollection(\"sap_fiori_3\", \"my-custom-collection\");\n *\n * <ui5-icon name=\"custom-icon-name\"></ui5-icon>\n * </pre>\n *\n * @public\n * @param { string } theme\n * @param { string } collectionName\n */\nconst setDefaultIconCollection = (theme: string, collectionName: IconCollection) => {\n\tIconCollectionConfiguration.set(theme, collectionName);\n};\n\n/**\n * Returns the configured default icon collection for a given theme.\n *\n * @param { string } theme\n * @public\n * @returns { string | undefined }\n */\nconst getDefaultIconCollection = (theme: string): string | undefined => {\n\treturn IconCollectionConfiguration.get(theme);\n};\n\n/**\n * Returns the effective icon collection,\n * based on the default icon collection configuration and the current theme:\n * @param { IconCollection } collectionName\n * @returns { IconCollection } the effective collection name\n */\nconst getEffectiveIconCollection = (collectionName?: IconCollection): IconCollection => {\n\tconst currentTheme = getTheme();\n\tconst currentThemeConfiguration = IconCollectionConfiguration.get(currentTheme);\n\n\t// when no collection is set and default collection is configured - return the configured icon collection\n\tif (!collectionName && currentThemeConfiguration) {\n\t\treturn getIconCollectionByAlias(currentThemeConfiguration);\n\t}\n\n\t// when collection is set - return the theme dependant icon collection\n\t// when collection is not set and there is no default icon collection configured - return theme dependant icon collection\n\treturn getIconCollectionByTheme(collectionName);\n};\n\n/**\n * Returns the icon theme dependant collection, based on the collection name and current theme as follows:\n *\n * - \"no collection\" resolves to \"SAP-icons-v4\" in \"Quartz\" and \"Belize\", and to \"SAP-icons-v5\" in \"Horizon\" (or as confugred via setDefaultIconCollection)\n * - \"SAP-icons-v4\" (and its alias \"SAP-icons\") forces \"SAP-icons v4\" in any theme and resolves to itself \"SAP-icons-v4\"\n * - \"SAP-icons-v5\" (and its alias \"horizon\") forces \"SAP-icons v5\" in any theme and resolves to itself \"SAP-icons-v5\"\n * - \"tnt\" (and its alias \"SAP-icons-TNT\") resolves to \"tnt-v2\" in \"Quartz\", \"Belize\", and resolves to \"tnt-v3\" in \"Horizon\"\n * - \"tnt-v2\" forces \"TNT icons v2\" in any theme and resolves to itself \"tnt-v2\"\n * - \"tnt-v3\" forces \"TNT icons v3\" in any theme and resolves to itself \"tnt-v3\"\n * - \"business-suite\" (and its alias \"BusinessSuiteInAppSymbols\") resolves to \"business-suite-v1\" in \"Quartz\", \"Belize\", and resolves to \"business-suite-v2\" in \"Horizon\"\n * - \"business-suite-v1\" forces \"Business Suite icons v1\" in any theme and resolves to itself \"business-suite-v1\"\n * - \"business-suite-v2\" forces \"Business Suite icons v2\" in any theme and resolves to itself \"business-suite-v2\"\n *\n * <b>Note:</b> \"SAP-icons-v4\", \"SAP-icons-v5\", \"tnt-v2\", \"tnt-v3\", \"business-suite-v1\" and \"business-suite-v2\" are just returned\n * @param { IconCollection } collectionName\n * @returns { RegisteredIconCollection } the registered collection name\n */\nconst getIconCollectionByTheme = (collectionName?: IconCollection): RegisteredIconCollection => {\n\tconst legacyThemeFamily = isLegacyThemeFamily();\n\n\tif (!collectionName) {\n\t\treturn legacyThemeFamily ? RegisteredIconCollection.SAPIconsV4 : RegisteredIconCollection.SAPIconsV5;\n\t}\n\n\tif (collectionName === \"tnt\") {\n\t\treturn legacyThemeFamily ? RegisteredIconCollection.SAPIconsTNTV2 : RegisteredIconCollection.SAPIconsTNTV3;\n\t}\n\n\tif (collectionName === \"business-suite\") {\n\t\treturn legacyThemeFamily ? RegisteredIconCollection.SAPBSIconsV1 : RegisteredIconCollection.SAPBSIconsV2;\n\t}\n\n\treturn collectionName as RegisteredIconCollection;\n};\n\nexport {\n\tsetDefaultIconCollection,\n\tgetDefaultIconCollection,\n\tgetEffectiveIconCollection,\n\tRegisteredIconCollection,\n};\n\nexport type {\n\tIconCollection,\n};\n"]}
@@ -13,6 +13,15 @@ declare const getLanguage: () => string | undefined;
13
13
  * @returns {Promise<void>}
14
14
  */
15
15
  declare const setLanguage: (language: string) => Promise<void>;
16
+ /**
17
+ * Returns the default languague.
18
+ *
19
+ * Note: Default language might be different than the configurated one.
20
+ *
21
+ * @public
22
+ * @returns {string}
23
+ */
24
+ declare const getDefaultLanguage: () => string;
16
25
  /**
17
26
  * Defines if the default language, that is inlined, should be
18
27
  * fetched over the network instead of using the inlined one.
@@ -28,4 +37,4 @@ declare const setFetchDefaultLanguage: (fetchDefaultLang: boolean) => void;
28
37
  * @returns {boolean}
29
38
  */
30
39
  declare const getFetchDefaultLanguage: () => boolean;
31
- export { getLanguage, setLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
40
+ export { getLanguage, setLanguage, getDefaultLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
@@ -1,6 +1,7 @@
1
1
  import { getLanguage as getConfiguredLanguage, getFetchDefaultLanguage as getConfiguredFetchDefaultLanguage, } from "../InitialConfiguration.js";
2
2
  import { fireLanguageChange } from "../locale/languageChange.js";
3
3
  import { reRenderAllUI5Elements } from "../Render.js";
4
+ import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
4
5
  let curLanguage;
5
6
  let fetchDefaultLanguage;
6
7
  /**
@@ -30,6 +31,17 @@ const setLanguage = async (language) => {
30
31
  await fireLanguageChange(language);
31
32
  await reRenderAllUI5Elements({ languageAware: true });
32
33
  };
34
+ /**
35
+ * Returns the default languague.
36
+ *
37
+ * Note: Default language might be different than the configurated one.
38
+ *
39
+ * @public
40
+ * @returns {string}
41
+ */
42
+ const getDefaultLanguage = () => {
43
+ return DEFAULT_LANGUAGE;
44
+ };
33
45
  /**
34
46
  * Defines if the default language, that is inlined, should be
35
47
  * fetched over the network instead of using the inlined one.
@@ -52,5 +64,5 @@ const getFetchDefaultLanguage = () => {
52
64
  }
53
65
  return fetchDefaultLanguage;
54
66
  };
55
- export { getLanguage, setLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
67
+ export { getLanguage, setLanguage, getDefaultLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
56
68
  //# sourceMappingURL=Language.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Language.js","sourceRoot":"","sources":["../../src/config/Language.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,IAAI,qBAAqB,EACpC,uBAAuB,IAAI,iCAAiC,GAC5D,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD,IAAI,WAA+B,CAAC;AACpC,IAAI,oBAA6B,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,WAAW,KAAK,SAAS,EAAE;QAC9B,WAAW,GAAG,qBAAqB,EAAE,CAAC;KACtC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,KAAK,EAAE,QAAgB,EAAiB,EAAE;IAC7D,IAAI,WAAW,KAAK,QAAQ,EAAE;QAC7B,OAAO;KACP;IAED,WAAW,GAAG,QAAQ,CAAC;IAEvB,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,sBAAsB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,uBAAuB,GAAG,CAAC,gBAAyB,EAAE,EAAE;IAC7D,oBAAoB,GAAG,gBAAgB,CAAC;AACzC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,GAAY,EAAE;IAC7C,IAAI,oBAAoB,KAAK,SAAS,EAAE;QACvC,uBAAuB,CAAC,iCAAiC,EAAE,CAAC,CAAC;KAC7D;IAED,OAAO,oBAAoB,CAAC;AAC7B,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,WAAW,EACX,uBAAuB,EACvB,uBAAuB,GACvB,CAAC"}
1
+ {"version":3,"file":"Language.js","sourceRoot":"","sources":["../../src/config/Language.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,IAAI,qBAAqB,EACpC,uBAAuB,IAAI,iCAAiC,GAC5D,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,IAAI,WAA+B,CAAC;AACpC,IAAI,oBAA6B,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,WAAW,KAAK,SAAS,EAAE;QAC9B,WAAW,GAAG,qBAAqB,EAAE,CAAC;KACtC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,KAAK,EAAE,QAAgB,EAAiB,EAAE;IAC7D,IAAI,WAAW,KAAK,QAAQ,EAAE;QAC7B,OAAO;KACP;IAED,WAAW,GAAG,QAAQ,CAAC;IAEvB,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,sBAAsB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,kBAAkB,GAAG,GAAW,EAAE;IACvC,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,uBAAuB,GAAG,CAAC,gBAAyB,EAAE,EAAE;IAC7D,oBAAoB,GAAG,gBAAgB,CAAC;AACzC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,GAAY,EAAE;IAC7C,IAAI,oBAAoB,KAAK,SAAS,EAAE;QACvC,uBAAuB,CAAC,iCAAiC,EAAE,CAAC,CAAC;KAC7D;IAED,OAAO,oBAAoB,CAAC;AAC7B,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,GACvB,CAAC","sourcesContent":["import {\n\tgetLanguage as getConfiguredLanguage,\n\tgetFetchDefaultLanguage as getConfiguredFetchDefaultLanguage,\n} from \"../InitialConfiguration.js\";\nimport { fireLanguageChange } from \"../locale/languageChange.js\";\nimport { reRenderAllUI5Elements } from \"../Render.js\";\nimport { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\n\nlet curLanguage: string | undefined;\nlet fetchDefaultLanguage: boolean;\n\n/**\n * Returns the currently configured language, or the browser language as a fallback.\n * @public\n * @returns {string}\n */\nconst getLanguage = (): string | undefined => {\n\tif (curLanguage === undefined) {\n\t\tcurLanguage = getConfiguredLanguage();\n\t}\n\treturn curLanguage;\n};\n\n/**\n * Changes the current language, re-fetches all message bundles, updates all language-aware components\n * and returns a promise that resolves when all rendering is done.\n *\n * @param {string} language\n * @public\n * @returns {Promise<void>}\n */\nconst setLanguage = async (language: string): Promise<void> => {\n\tif (curLanguage === language) {\n\t\treturn;\n\t}\n\n\tcurLanguage = language;\n\n\tawait fireLanguageChange(language);\n\tawait reRenderAllUI5Elements({ languageAware: true });\n};\n\n/**\n * Returns the default languague.\n *\n * Note: Default language might be different than the configurated one.\n *\n * @public\n * @returns {string}\n */\nconst getDefaultLanguage = (): string => {\n\treturn DEFAULT_LANGUAGE;\n};\n\n/**\n * Defines if the default language, that is inlined, should be\n * fetched over the network instead of using the inlined one.\n * <b>Note:</b> By default the language will not be fetched.\n *\n * @public\n * @param {boolean} fetchDefaultLang\n */\nconst setFetchDefaultLanguage = (fetchDefaultLang: boolean) => {\n\tfetchDefaultLanguage = fetchDefaultLang;\n};\n\n/**\n * Returns if the default language, that is inlined, should be fetched over the network.\n * @public\n * @returns {boolean}\n */\nconst getFetchDefaultLanguage = (): boolean => {\n\tif (fetchDefaultLanguage === undefined) {\n\t\tsetFetchDefaultLanguage(getConfiguredFetchDefaultLanguage());\n\t}\n\n\treturn fetchDefaultLanguage;\n};\n\nexport {\n\tgetLanguage,\n\tsetLanguage,\n\tgetDefaultLanguage,\n\tsetFetchDefaultLanguage,\n\tgetFetchDefaultLanguage,\n};\n"]}
@@ -2,6 +2,7 @@ import { getNoConflict as getConfiguredNoConflict } from "../InitialConfiguratio
2
2
  // Fire these events even with noConflict: true
3
3
  const excludeList = [
4
4
  "value-changed",
5
+ "click",
5
6
  ];
6
7
  let noConflict;
7
8
  const shouldFireOriginalEvent = (eventName) => {
@@ -1 +1 @@
1
- {"version":3,"file":"NoConflict.js","sourceRoot":"","sources":["../../src/config/NoConflict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAEtF,+CAA+C;AAC/C,MAAM,WAAW,GAAG;IACnB,eAAe;CACf,CAAC;AAIF,IAAI,UAA0B,CAAC;AAE/B,MAAM,uBAAuB,GAAG,CAAC,SAAiB,EAAE,EAAE;IACrD,OAAO,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAAC,SAAiB,EAAE,EAAE;IACxD,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAC3B,8EAA8E;IAC9E,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,SAAS,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACvG,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAAG,GAAmB,EAAE;IAC1C,IAAI,UAAU,KAAK,SAAS,EAAE;QAC7B,UAAU,GAAG,uBAAuB,EAAE,CAAC;KACvC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,CAAC,cAA8B,EAAE,EAAE;IACxD,UAAU,GAAG,cAAc,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,EAAE;IAC/C,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAE3B,2BAA2B;IAC3B,IAAI,uBAAuB,CAAC,SAAS,CAAC,EAAE;QACvC,OAAO,KAAK,CAAC;KACb;IAED,8BAA8B;IAC9B,IAAI,EAAE,KAAK,IAAI,EAAE;QAChB,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,OAAO,EACN,aAAa,EACb,aAAa,EACb,iBAAiB,GACjB,CAAC"}
1
+ {"version":3,"file":"NoConflict.js","sourceRoot":"","sources":["../../src/config/NoConflict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAEtF,+CAA+C;AAC/C,MAAM,WAAW,GAAG;IACnB,eAAe;IACf,OAAO;CACP,CAAC;AAIF,IAAI,UAA0B,CAAC;AAE/B,MAAM,uBAAuB,GAAG,CAAC,SAAiB,EAAE,EAAE;IACrD,OAAO,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAAC,SAAiB,EAAE,EAAE;IACxD,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAC3B,8EAA8E;IAC9E,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,SAAS,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACvG,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAAG,GAAmB,EAAE;IAC1C,IAAI,UAAU,KAAK,SAAS,EAAE;QAC7B,UAAU,GAAG,uBAAuB,EAAE,CAAC;KACvC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,CAAC,cAA8B,EAAE,EAAE;IACxD,UAAU,GAAG,cAAc,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,EAAE;IAC/C,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAE3B,2BAA2B;IAC3B,IAAI,uBAAuB,CAAC,SAAS,CAAC,EAAE;QACvC,OAAO,KAAK,CAAC;KACb;IAED,8BAA8B;IAC9B,IAAI,EAAE,KAAK,IAAI,EAAE;QAChB,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,OAAO,EACN,aAAa,EACb,aAAa,EACb,iBAAiB,GACjB,CAAC","sourcesContent":["import { getNoConflict as getConfiguredNoConflict } from \"../InitialConfiguration.js\";\n\n// Fire these events even with noConflict: true\nconst excludeList = [\n\t\"value-changed\",\n\t\"click\",\n];\n\ntype NoConflictData = boolean | { events: Array<string>};\n\nlet noConflict: NoConflictData;\n\nconst shouldFireOriginalEvent = (eventName: string) => {\n\treturn excludeList.includes(eventName);\n};\n\nconst shouldNotFireOriginalEvent = (eventName: string) => {\n\tconst nc = getNoConflict();\n\t// return !(nc.events && nc.events.includes && nc.events.includes(eventName));\n\treturn !(typeof nc !== \"boolean\" && nc.events && nc.events.includes && nc.events.includes(eventName));\n};\n\n/**\n * Returns if the \"noConflict\" configuration is set.\n * @public\n * @returns { NoConflictData }\n */\nconst getNoConflict = (): NoConflictData => {\n\tif (noConflict === undefined) {\n\t\tnoConflict = getConfiguredNoConflict();\n\t}\n\n\treturn noConflict;\n};\n\n/**\n * Sets the \"noConflict\" mode.\n * - When \"false\" (default value), all custom events are fired with and without the \"ui5-\" prefix.\n * - When \"true\", all custom events are fired with the \"ui5-\" prefix only.\n * - When an object is supplied, just the specified events will be fired with the \"ui5-\" prefix.\n * @public\n * @param { NoConflictData } noConflictData\n */\nconst setNoConflict = (noConflictData: NoConflictData) => {\n\tnoConflict = noConflictData;\n};\n\nconst skipOriginalEvent = (eventName: string) => {\n\tconst nc = getNoConflict();\n\n\t// Always fire these events\n\tif (shouldFireOriginalEvent(eventName)) {\n\t\treturn false;\n\t}\n\n\t// Read from the configuration\n\tif (nc === true) {\n\t\treturn true;\n\t}\n\n\treturn !shouldNotFireOriginalEvent(eventName);\n};\n\nexport {\n\tgetNoConflict,\n\tsetNoConflict,\n\tskipOriginalEvent,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"RTL.js","sourceRoot":"","sources":["../../src/config/RTL.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,4BAA4B,MAAM,yCAAyC,CAAC;AACnF,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AAEzE,MAAM,mBAAmB,GAAG;IAC3B,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;CACV,CAAC;AAEF,MAAM,aAAa,GAAG,4BAA4B,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAC;AAExF;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE;IACvC,QAAQ,GAAG,CAAC,QAAQ,IAAI,mBAAmB,CAAC,QAA4C,CAAC,CAAC,IAAI,QAAQ,CAAC;IAEvG,OAAO,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,GAAG,GAAY,EAAE;IAC5B,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;QACpC,OAAO,KAAK,CAAC;KACb;IAED,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAE5C,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACnC,OAAO,CAAC,CAAC,gBAAgB,CAAC;KAC1B;IAED,OAAO,UAAU,CAAC,WAAW,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,sBAAsB"}
1
+ {"version":3,"file":"RTL.js","sourceRoot":"","sources":["../../src/config/RTL.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,4BAA4B,MAAM,yCAAyC,CAAC;AACnF,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AAEzE,MAAM,mBAAmB,GAAG;IAC3B,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;CACV,CAAC;AAEF,MAAM,aAAa,GAAG,4BAA4B,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAC;AAExF;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE;IACvC,QAAQ,GAAG,CAAC,QAAQ,IAAI,mBAAmB,CAAC,QAA4C,CAAC,CAAC,IAAI,QAAQ,CAAC;IAEvG,OAAO,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,GAAG,GAAY,EAAE;IAC5B,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;QACpC,OAAO,KAAK,CAAC;KACb;IAED,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAE5C,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACnC,OAAO,CAAC,CAAC,gBAAgB,CAAC;KAC1B;IAED,OAAO,UAAU,CAAC,WAAW,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,sBAAsB","sourcesContent":["import { getRTL as getConfiguredRTL } from \"../InitialConfiguration.js\";\nimport { getLanguage } from \"./Language.js\";\nimport getDesigntimePropertyAsArray from \"../util/getDesigntimePropertyAsArray.js\";\nimport detectNavigatorLanguage from \"../util/detectNavigatorLanguage.js\";\n\nconst M_ISO639_OLD_TO_NEW = {\n\t\"iw\": \"he\",\n\t\"ji\": \"yi\",\n\t\"in\": \"id\",\n\t\"sh\": \"sr\",\n};\n\nconst A_RTL_LOCALES = getDesigntimePropertyAsArray(\"$cldr-rtl-locales:ar,fa,he$\") || [];\n\n/**\n * Checks whether the language is using RTL\n * @param {string} language\n * @returns {boolean} whether the language is using RTL\n */\nconst impliesRTL = (language: string) => {\n\tlanguage = (language && M_ISO639_OLD_TO_NEW[language as keyof typeof M_ISO639_OLD_TO_NEW]) || language;\n\n\treturn A_RTL_LOCALES.indexOf(language) >= 0;\n};\n\n/**\n * Gets the effective RTL setting by first checking the configuration\n * and if not set using the currently set language or the navigator language if the language is not explicitly set.\n * @returns {boolean} whether RTL should be used\n */\nconst getRTL = (): boolean => {\n\tif (typeof document === \"undefined\") {\n\t\treturn false;\n\t}\n\n\tconst configurationRTL = getConfiguredRTL();\n\n\tif (configurationRTL !== undefined) {\n\t\treturn !!configurationRTL;\n\t}\n\n\treturn impliesRTL(getLanguage() || detectNavigatorLanguage());\n};\n\nexport { getRTL }; // eslint-disable-line\n"]}
@@ -11,6 +11,15 @@ declare const getTheme: () => string;
11
11
  * @returns {Promise<void>} a promise that is resolved when the new theme assets have been fetched and applied to the DOM
12
12
  */
13
13
  declare const setTheme: (theme: string) => Promise<void>;
14
+ /**
15
+ * Returns the default theme.
16
+ *
17
+ * Note: Default theme might be different than the configurated one.
18
+ *
19
+ * @public
20
+ * @returns {string}
21
+ */
22
+ declare const getDefaultTheme: () => string;
14
23
  /**
15
24
  * Returns if the given theme name is the one currently applied.
16
25
  * @private
@@ -19,10 +28,11 @@ declare const setTheme: (theme: string) => Promise<void>;
19
28
  */
20
29
  declare const isTheme: (theme: string) => boolean;
21
30
  /**
22
- * Returns if the current theme is part of given theme family.
31
+ * Returns if the currently set theme is part of legacy theme families ("sap_belize" or "sap_fiori_3").
32
+ * <b>Note</b>: in addition, the method checks the base theme of a custom theme, built via the ThemeDesigner.
33
+ *
23
34
  * @private
24
- * @param {string} theme the theme family
25
- * @returns {boolean}
35
+ * @returns { boolean }
26
36
  */
27
- declare const isThemeFamily: (theme: string) => boolean;
28
- export { getTheme, setTheme, isTheme, isThemeFamily, };
37
+ declare const isLegacyThemeFamily: () => boolean;
38
+ export { getTheme, setTheme, isTheme, isLegacyThemeFamily, getDefaultTheme, };
@@ -1,6 +1,8 @@
1
1
  import { getTheme as getConfiguredTheme } from "../InitialConfiguration.js";
2
2
  import { reRenderAllUI5Elements } from "../Render.js";
3
3
  import applyTheme from "../theming/applyTheme.js";
4
+ import getThemeDesignerTheme from "../theming/getThemeDesignerTheme.js";
5
+ import { DEFAULT_THEME, SUPPORTED_THEMES } from "../generated/AssetParameters.js";
4
6
  let curTheme;
5
7
  /**
6
8
  * Returns the current theme.
@@ -28,6 +30,17 @@ const setTheme = async (theme) => {
28
30
  await applyTheme(curTheme);
29
31
  await reRenderAllUI5Elements({ themeAware: true });
30
32
  };
33
+ /**
34
+ * Returns the default theme.
35
+ *
36
+ * Note: Default theme might be different than the configurated one.
37
+ *
38
+ * @public
39
+ * @returns {string}
40
+ */
41
+ const getDefaultTheme = () => {
42
+ return DEFAULT_THEME;
43
+ };
31
44
  /**
32
45
  * Returns if the given theme name is the one currently applied.
33
46
  * @private
@@ -39,13 +52,19 @@ const isTheme = (theme) => {
39
52
  return currentTheme === theme || currentTheme === `${theme}_exp`;
40
53
  };
41
54
  /**
42
- * Returns if the current theme is part of given theme family.
55
+ * Returns if the currently set theme is part of legacy theme families ("sap_belize" or "sap_fiori_3").
56
+ * <b>Note</b>: in addition, the method checks the base theme of a custom theme, built via the ThemeDesigner.
57
+ *
43
58
  * @private
44
- * @param {string} theme the theme family
45
- * @returns {boolean}
59
+ * @returns { boolean }
46
60
  */
47
- const isThemeFamily = (theme) => {
48
- return getTheme().startsWith(theme);
61
+ const isLegacyThemeFamily = () => {
62
+ const currentTheme = getTheme();
63
+ if (!isKnownTheme(currentTheme)) {
64
+ return !getThemeDesignerTheme()?.baseThemeName?.startsWith("sap_horizon");
65
+ }
66
+ return !currentTheme.startsWith("sap_horizon");
49
67
  };
50
- export { getTheme, setTheme, isTheme, isThemeFamily, };
68
+ const isKnownTheme = (theme) => SUPPORTED_THEMES.includes(theme);
69
+ export { getTheme, setTheme, isTheme, isLegacyThemeFamily, getDefaultTheme, };
51
70
  //# sourceMappingURL=Theme.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Theme.js","sourceRoot":"","sources":["../../src/config/Theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,IAAI,QAAgB,CAAC;AAErB;;;;GAIG;AACH,MAAM,QAAQ,GAAG,GAAW,EAAE;IAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC3B,QAAQ,GAAG,kBAAkB,EAAE,CAAC;KAChC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAa,EAAiB,EAAE;IACvD,IAAI,QAAQ,KAAK,KAAK,EAAE;QACvB,OAAO;KACP;IAED,QAAQ,GAAG,KAAK,CAAC;IAEjB,+BAA+B;IAC/B,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,sBAAsB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE;IACjC,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC;IAChC,OAAO,YAAY,KAAK,KAAK,IAAI,YAAY,KAAK,GAAG,KAAK,MAAM,CAAC;AAClE,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;IACvC,OAAO,QAAQ,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,OAAO,EACN,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,aAAa,GACb,CAAC"}
1
+ {"version":3,"file":"Theme.js","sourceRoot":"","sources":["../../src/config/Theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,qBAAqB,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAElF,IAAI,QAAgB,CAAC;AAErB;;;;GAIG;AACH,MAAM,QAAQ,GAAG,GAAW,EAAE;IAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC3B,QAAQ,GAAG,kBAAkB,EAAE,CAAC;KAChC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAa,EAAiB,EAAE;IACvD,IAAI,QAAQ,KAAK,KAAK,EAAE;QACvB,OAAO;KACP;IAED,QAAQ,GAAG,KAAK,CAAC;IAEjB,+BAA+B;IAC/B,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,sBAAsB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,eAAe,GAAG,GAAW,EAAE;IACpC,OAAO,aAAa,CAAC;AACtB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE;IACjC,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC;IAChC,OAAO,YAAY,KAAK,KAAK,IAAI,YAAY,KAAK,GAAG,KAAK,MAAM,CAAC;AAClE,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAChC,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC;IAEhC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE;QAChC,OAAO,CAAC,qBAAqB,EAAE,EAAE,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;KAC1E;IAED,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAEzE,OAAO,EACN,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,mBAAmB,EACnB,eAAe,GACf,CAAC","sourcesContent":["import { getTheme as getConfiguredTheme } from \"../InitialConfiguration.js\";\nimport { reRenderAllUI5Elements } from \"../Render.js\";\nimport applyTheme from \"../theming/applyTheme.js\";\nimport getThemeDesignerTheme from \"../theming/getThemeDesignerTheme.js\";\nimport { DEFAULT_THEME, SUPPORTED_THEMES } from \"../generated/AssetParameters.js\";\n\nlet curTheme: string;\n\n/**\n * Returns the current theme.\n * @public\n * @returns {string} the current theme name\n */\nconst getTheme = (): string => {\n\tif (curTheme === undefined) {\n\t\tcurTheme = getConfiguredTheme();\n\t}\n\n\treturn curTheme;\n};\n\n/**\n * Applies a new theme after fetching its assets from the network.\n * @public\n * @param {string} theme the name of the new theme\n * @returns {Promise<void>} a promise that is resolved when the new theme assets have been fetched and applied to the DOM\n */\nconst setTheme = async (theme: string): Promise<void> => {\n\tif (curTheme === theme) {\n\t\treturn;\n\t}\n\n\tcurTheme = theme;\n\n\t// Update CSS Custom Properties\n\tawait applyTheme(curTheme);\n\tawait reRenderAllUI5Elements({ themeAware: true });\n};\n\n/**\n * Returns the default theme.\n *\n * Note: Default theme might be different than the configurated one.\n *\n * @public\n * @returns {string}\n */\nconst getDefaultTheme = (): string => {\n\treturn DEFAULT_THEME;\n};\n\n/**\n * Returns if the given theme name is the one currently applied.\n * @private\n * @param {string} theme\n * @returns {boolean}\n */\nconst isTheme = (theme: string) => {\n\tconst currentTheme = getTheme();\n\treturn currentTheme === theme || currentTheme === `${theme}_exp`;\n};\n\n/**\n * Returns if the currently set theme is part of legacy theme families (\"sap_belize\" or \"sap_fiori_3\").\n * <b>Note</b>: in addition, the method checks the base theme of a custom theme, built via the ThemeDesigner.\n *\n * @private\n * @returns { boolean }\n */\nconst isLegacyThemeFamily = () => {\n\tconst currentTheme = getTheme();\n\n\tif (!isKnownTheme(currentTheme)) {\n\t\treturn !getThemeDesignerTheme()?.baseThemeName?.startsWith(\"sap_horizon\");\n\t}\n\n\treturn !currentTheme.startsWith(\"sap_horizon\");\n};\n\nconst isKnownTheme = (theme: string) => SUPPORTED_THEMES.includes(theme);\n\nexport {\n\tgetTheme,\n\tsetTheme,\n\tisTheme,\n\tisLegacyThemeFamily,\n\tgetDefaultTheme,\n};\n"]}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Returns the current theme root.
3
+ *
4
+ * @public
5
+ * @since 1.14.0
6
+ * @returns { string } the current theme root
7
+ */
8
+ declare const getThemeRoot: () => string | undefined;
9
+ /**
10
+ * Sets theme root for the current theme.
11
+ * When set, the framework will validate the theme root and fetch the theme styles (CSS variables) from this location.
12
+ *
13
+ * <b>Note:</b> The feature is specific to custom themes, created with the `UI Theme Designer`.
14
+ * The provided theme root is used only as a base to construct the actual location of the theme styles: `{themeRoot}/.../css_variables.css`.
15
+ *
16
+ * <br/>
17
+ *
18
+ * <b>Note:</b> Certain security restrictions will apply before fetching the theme assets.
19
+ * Absolute URLs to a different origin than the current page will result in using the current page as an origin.
20
+ * To allow specific origins, use &lt;meta name="sap-allowedThemeOrigins" content="https://my-example-host.com/"&gt; tag inside the &lt;head&gt; of the page.
21
+ *
22
+ * @public
23
+ * @since 1.14.0
24
+ * @param { string } themeRoot the new theme root
25
+ * @returns { Promise<void> }
26
+ */
27
+ declare const setThemeRoot: (themeRoot: string) => Promise<void> | undefined;
28
+ declare const attachCustomThemeStylesToHead: (theme: string) => Promise<void>;
29
+ export { getThemeRoot, setThemeRoot, attachCustomThemeStylesToHead, };