@ui5/webcomponents-base 0.0.0-a289c53b5 → 0.0.0-a3b95fa49

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 (848) hide show
  1. package/CHANGELOG.md +1723 -0
  2. package/README.md +6 -12
  3. package/cypress/specs/Accessor.cy.tsx +79 -0
  4. package/cypress/specs/Boot.cy.tsx +19 -0
  5. package/cypress/specs/ConfigurationChange.cy.tsx +41 -0
  6. package/cypress/specs/ConfigurationScript.cy.tsx +133 -0
  7. package/cypress/specs/ConfigurationURL.cy.tsx +201 -0
  8. package/cypress/specs/CustomMount.cy.tsx +9 -0
  9. package/cypress/specs/CustomTheme.cy.tsx +36 -0
  10. package/cypress/specs/EventProvider.cy.tsx +59 -0
  11. package/cypress/specs/Events.cy.tsx +28 -0
  12. package/cypress/specs/SystemDOMElements.cy.tsx +8 -0
  13. package/cypress/specs/Theming.cy.tsx +74 -0
  14. package/cypress/specs/UI5ElementInvalidation.cy.tsx +252 -0
  15. package/cypress/specs/UI5ElementLifecycle.cy.tsx +82 -0
  16. package/cypress/specs/UI5ElementListenForChildPropChanges.cy.tsx +83 -0
  17. package/cypress/specs/UI5ElementMetadataExt.cy.tsx +42 -0
  18. package/cypress/specs/UI5ElementPropertyValidation.cy.tsx +16 -0
  19. package/cypress/specs/UI5ElementPropsAndAttrs.cy.tsx +113 -0
  20. package/cypress/specs/UI5ElementShadowDOM.cy.tsx +30 -0
  21. package/cypress/specs/UI5ElementSlots.cy.tsx +136 -0
  22. package/cypress/specs/WithComplexTemplate.cy.tsx +32 -0
  23. package/cypress/specs/i18n_texts.cy.tsx +129 -0
  24. package/cypress/specs/util/FocusableElements.cy.tsx +48 -0
  25. package/cypress/support/commands.ts +39 -0
  26. package/cypress/support/component-index.html +12 -0
  27. package/cypress/support/component.ts +36 -0
  28. package/cypress/tsconfig.json +21 -0
  29. package/cypress.config.js +3 -0
  30. package/dist/.tsbuildinfobuild +1 -0
  31. package/dist/AssetRegistry.d.ts +2 -2
  32. package/dist/AssetRegistry.js +2 -2
  33. package/dist/AssetRegistry.js.map +1 -1
  34. package/dist/Boot.d.ts +3 -2
  35. package/dist/Boot.js +12 -8
  36. package/dist/Boot.js.map +1 -1
  37. package/dist/CustomElementsRegistry.d.ts +2 -1
  38. package/dist/CustomElementsRegistry.js +5 -2
  39. package/dist/CustomElementsRegistry.js.map +1 -1
  40. package/dist/CustomElementsScope.d.ts +4 -4
  41. package/dist/CustomElementsScope.js +2 -2
  42. package/dist/CustomElementsScope.js.map +1 -1
  43. package/dist/CustomElementsScopeUtils.d.ts +11 -2
  44. package/dist/CustomElementsScopeUtils.js +21 -2
  45. package/dist/CustomElementsScopeUtils.js.map +1 -1
  46. package/dist/DOMObserver.js.map +1 -1
  47. package/dist/Device.d.ts +17 -2
  48. package/dist/Device.js +19 -14
  49. package/dist/Device.js.map +1 -1
  50. package/dist/EventProvider.js +1 -1
  51. package/dist/EventProvider.js.map +1 -1
  52. package/dist/FontFace.js +6 -1
  53. package/dist/FontFace.js.map +1 -1
  54. package/dist/IgnoreCustomElements.d.ts +25 -0
  55. package/dist/IgnoreCustomElements.js +37 -0
  56. package/dist/IgnoreCustomElements.js.map +1 -0
  57. package/dist/InitialConfiguration.d.ts +10 -3
  58. package/dist/InitialConfiguration.js +32 -9
  59. package/dist/InitialConfiguration.js.map +1 -1
  60. package/dist/Keys.d.ts +8 -1
  61. package/dist/Keys.js +114 -106
  62. package/dist/Keys.js.map +1 -1
  63. package/dist/Location.d.ts +11 -0
  64. package/dist/Location.js +49 -0
  65. package/dist/Location.js.map +1 -0
  66. package/dist/ManagedStyles.d.ts +5 -6
  67. package/dist/ManagedStyles.js +45 -53
  68. package/dist/ManagedStyles.js.map +1 -1
  69. package/dist/MediaRange.d.ts +6 -12
  70. package/dist/MediaRange.js +21 -31
  71. package/dist/MediaRange.js.map +1 -1
  72. package/dist/PropertiesFileFormat.js.map +1 -1
  73. package/dist/Render.js.map +1 -1
  74. package/dist/RenderQueue.js.map +1 -1
  75. package/dist/Runtimes.js +11 -0
  76. package/dist/Runtimes.js.map +1 -1
  77. package/dist/SystemCSSVars.js.map +1 -1
  78. package/dist/UI5Element.d.ts +121 -75
  79. package/dist/UI5Element.js +396 -229
  80. package/dist/UI5Element.js.map +1 -1
  81. package/dist/UI5ElementMetadata.d.ts +36 -27
  82. package/dist/UI5ElementMetadata.js +27 -72
  83. package/dist/UI5ElementMetadata.js.map +1 -1
  84. package/dist/animations/AnimationQueue.js.map +1 -1
  85. package/dist/animations/animate.js.map +1 -1
  86. package/dist/animations/slideUp.js.map +1 -1
  87. package/dist/asset-registries/Icons.d.ts +5 -4
  88. package/dist/asset-registries/Icons.js +28 -17
  89. package/dist/asset-registries/Icons.js.map +1 -1
  90. package/dist/asset-registries/Illustrations.d.ts +2 -0
  91. package/dist/asset-registries/Illustrations.js +51 -20
  92. package/dist/asset-registries/Illustrations.js.map +1 -1
  93. package/dist/asset-registries/LocaleData.js +1 -1
  94. package/dist/asset-registries/LocaleData.js.map +1 -1
  95. package/dist/asset-registries/Themes.d.ts +5 -7
  96. package/dist/asset-registries/Themes.js +27 -12
  97. package/dist/asset-registries/Themes.js.map +1 -1
  98. package/dist/asset-registries/i18n.d.ts +2 -2
  99. package/dist/asset-registries/i18n.js +4 -3
  100. package/dist/asset-registries/i18n.js.map +1 -1
  101. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.d.ts +1 -2
  102. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.js +1 -2
  103. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  104. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  105. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  106. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  107. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  108. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  109. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  110. package/dist/config/AnimationMode.d.ts +2 -2
  111. package/dist/config/AnimationMode.js +6 -1
  112. package/dist/config/AnimationMode.js.map +1 -1
  113. package/dist/config/CalendarType.d.ts +8 -1
  114. package/dist/config/CalendarType.js +23 -2
  115. package/dist/config/CalendarType.js.map +1 -1
  116. package/dist/config/ConfigurationReset.d.ts +4 -0
  117. package/dist/config/ConfigurationReset.js +11 -0
  118. package/dist/config/ConfigurationReset.js.map +1 -0
  119. package/dist/config/Fonts.d.ts +16 -0
  120. package/dist/config/Fonts.js +30 -0
  121. package/dist/config/Fonts.js.map +1 -0
  122. package/dist/config/FormatSettings.js +4 -0
  123. package/dist/config/FormatSettings.js.map +1 -1
  124. package/dist/config/Icons.d.ts +9 -24
  125. package/dist/config/Icons.js +8 -67
  126. package/dist/config/Icons.js.map +1 -1
  127. package/dist/config/Language.d.ts +1 -1
  128. package/dist/config/Language.js +11 -3
  129. package/dist/config/Language.js.map +1 -1
  130. package/dist/config/NoConflict.js +4 -0
  131. package/dist/config/NoConflict.js.map +1 -1
  132. package/dist/config/Theme.d.ts +4 -3
  133. package/dist/config/Theme.js +18 -8
  134. package/dist/config/Theme.js.map +1 -1
  135. package/dist/config/ThemeRoot.d.ts +27 -0
  136. package/dist/config/ThemeRoot.js +61 -0
  137. package/dist/config/ThemeRoot.js.map +1 -0
  138. package/dist/config/Timezone.d.ts +1 -1
  139. package/dist/config/Timezone.js +5 -1
  140. package/dist/config/Timezone.js.map +1 -1
  141. package/dist/config/Tooltips.d.ts +19 -0
  142. package/dist/config/Tooltips.js +29 -0
  143. package/dist/config/Tooltips.js.map +1 -0
  144. package/dist/connectToComponent.d.ts +9 -0
  145. package/dist/connectToComponent.js +59 -0
  146. package/dist/connectToComponent.js.map +1 -0
  147. package/dist/converters/DOMReference.d.ts +5 -0
  148. package/dist/converters/DOMReference.js +13 -0
  149. package/dist/converters/DOMReference.js.map +1 -0
  150. package/dist/css/FontFace.css +47 -17
  151. package/dist/css/SystemCSSVars.css +0 -8
  152. package/dist/custom-elements-internal.json +2803 -0
  153. package/dist/custom-elements.json +2500 -0
  154. package/dist/decorators/bound.d.ts +1 -0
  155. package/dist/decorators/bound.js +34 -0
  156. package/dist/decorators/bound.js.map +1 -0
  157. package/dist/decorators/customElement.d.ts +43 -3
  158. package/dist/decorators/customElement.js +14 -6
  159. package/dist/decorators/customElement.js.map +1 -1
  160. package/dist/decorators/event-strict.d.ts +15 -0
  161. package/dist/decorators/event-strict.js +26 -0
  162. package/dist/decorators/event-strict.js.map +1 -0
  163. package/dist/decorators/event.d.ts +8 -2
  164. package/dist/decorators/event.js +3 -0
  165. package/dist/decorators/event.js.map +1 -1
  166. package/dist/decorators/i18n.d.ts +17 -0
  167. package/dist/decorators/i18n.js +32 -0
  168. package/dist/decorators/i18n.js.map +1 -0
  169. package/dist/decorators/property.d.ts +1 -1
  170. package/dist/decorators/property.js +1 -1
  171. package/dist/decorators/property.js.map +1 -1
  172. package/dist/decorators/query.d.ts +25 -0
  173. package/dist/decorators/query.js +32 -0
  174. package/dist/decorators/query.js.map +1 -0
  175. package/dist/decorators/queryAll.d.ts +27 -0
  176. package/dist/decorators/queryAll.js +34 -0
  177. package/dist/decorators/queryAll.js.map +1 -0
  178. package/dist/decorators/slot.d.ts +1 -1
  179. package/dist/decorators/slot.js.map +1 -1
  180. package/dist/decorators.d.ts +8 -0
  181. package/dist/decorators.js +9 -0
  182. package/dist/decorators.js.map +1 -0
  183. package/dist/delegate/ItemNavigation.d.ts +9 -8
  184. package/dist/delegate/ItemNavigation.js +13 -14
  185. package/dist/delegate/ItemNavigation.js.map +1 -1
  186. package/dist/delegate/ResizeHandler.d.ts +4 -6
  187. package/dist/delegate/ResizeHandler.js +4 -6
  188. package/dist/delegate/ResizeHandler.js.map +1 -1
  189. package/dist/delegate/ScrollEnablement.js +2 -2
  190. package/dist/delegate/ScrollEnablement.js.map +1 -1
  191. package/dist/features/F6Navigation.d.ts +4 -3
  192. package/dist/features/F6Navigation.js +41 -9
  193. package/dist/features/F6Navigation.js.map +1 -1
  194. package/dist/features/InputElementsFormSupport.d.ts +15 -0
  195. package/dist/features/InputElementsFormSupport.js +39 -0
  196. package/dist/features/InputElementsFormSupport.js.map +1 -0
  197. package/dist/features/LegacyDateFormats.js.map +1 -1
  198. package/dist/features/OpenUI5Enablement.d.ts +3 -3
  199. package/dist/features/OpenUI5Enablement.js.map +1 -1
  200. package/dist/features/OpenUI5Support.d.ts +14 -6
  201. package/dist/features/OpenUI5Support.js +90 -46
  202. package/dist/features/OpenUI5Support.js.map +1 -1
  203. package/dist/features/patchPatcher.d.ts +11 -0
  204. package/dist/features/patchPatcher.js +11 -0
  205. package/dist/features/patchPatcher.js.map +1 -0
  206. package/dist/features/patchPopup.d.ts +15 -0
  207. package/dist/features/patchPopup.js +70 -0
  208. package/dist/features/patchPopup.js.map +1 -0
  209. package/dist/generated/AssetParameters.d.ts +6 -0
  210. package/dist/generated/AssetParameters.js +3 -10
  211. package/dist/generated/AssetParameters.js.map +1 -0
  212. package/dist/generated/VersionInfo.d.ts +10 -0
  213. package/dist/generated/VersionInfo.js +9 -8
  214. package/dist/generated/VersionInfo.js.map +1 -0
  215. package/dist/generated/css/BusyIndicator.css.d.ts +2 -3
  216. package/dist/generated/css/BusyIndicator.css.js +1 -6
  217. package/dist/generated/css/BusyIndicator.css.js.map +1 -1
  218. package/dist/generated/css/FontFace.css.d.ts +2 -3
  219. package/dist/generated/css/FontFace.css.js +1 -6
  220. package/dist/generated/css/FontFace.css.js.map +1 -1
  221. package/dist/generated/css/OverrideFontFace.css.d.ts +2 -3
  222. package/dist/generated/css/OverrideFontFace.css.js +1 -6
  223. package/dist/generated/css/OverrideFontFace.css.js.map +1 -1
  224. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -3
  225. package/dist/generated/css/SystemCSSVars.css.js +1 -6
  226. package/dist/generated/css/SystemCSSVars.css.js.map +1 -1
  227. package/dist/getSharedResource.js +7 -1
  228. package/dist/getSharedResource.js.map +1 -1
  229. package/dist/i18nBundle.d.ts +2 -4
  230. package/dist/i18nBundle.js +3 -5
  231. package/dist/i18nBundle.js.map +1 -1
  232. package/dist/index.d.ts +48 -0
  233. package/dist/index.js +88 -0
  234. package/dist/index.js.map +1 -0
  235. package/dist/jsx-dev-runtime.d.ts +4 -0
  236. package/dist/jsx-dev-runtime.js +43 -0
  237. package/dist/jsx-dev-runtime.js.map +1 -0
  238. package/dist/jsx-runtime.d.ts +50 -0
  239. package/dist/jsx-runtime.js +27 -0
  240. package/dist/jsx-runtime.js.map +1 -0
  241. package/dist/jsx-utils.d.ts +3 -0
  242. package/dist/jsx-utils.js +48 -0
  243. package/dist/jsx-utils.js.map +1 -0
  244. package/dist/locale/Locale.js.map +1 -1
  245. package/dist/locale/RTLAwareRegistry.d.ts +1 -1
  246. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  247. package/dist/locale/applyDirection.d.ts +3 -2
  248. package/dist/locale/applyDirection.js +3 -2
  249. package/dist/locale/applyDirection.js.map +1 -1
  250. package/dist/locale/getEffectiveDir.d.ts +1 -1
  251. package/dist/locale/getEffectiveDir.js +3 -19
  252. package/dist/locale/getEffectiveDir.js.map +1 -1
  253. package/dist/locale/getLocale.js.map +1 -1
  254. package/dist/locale/nextFallbackLocale.js.map +1 -1
  255. package/dist/locale/normalizeLocale.js.map +1 -1
  256. package/dist/prod/AssetRegistry.js +2 -0
  257. package/dist/prod/AssetRegistry.js.map +7 -0
  258. package/dist/prod/Boot.js +2 -0
  259. package/dist/prod/Boot.js.map +7 -0
  260. package/dist/prod/CustomElementsRegistry.js +10 -0
  261. package/dist/prod/CustomElementsRegistry.js.map +7 -0
  262. package/dist/prod/CustomElementsScope.js +2 -0
  263. package/dist/prod/CustomElementsScope.js.map +7 -0
  264. package/dist/prod/CustomElementsScopeUtils.js +2 -0
  265. package/dist/prod/CustomElementsScopeUtils.js.map +7 -0
  266. package/dist/prod/DOMObserver.js +2 -0
  267. package/dist/prod/DOMObserver.js.map +7 -0
  268. package/dist/prod/Device.js +2 -0
  269. package/dist/prod/Device.js.map +7 -0
  270. package/dist/prod/EventProvider.js +2 -0
  271. package/dist/prod/EventProvider.js.map +7 -0
  272. package/dist/prod/FeaturesRegistry.js +2 -0
  273. package/dist/prod/FeaturesRegistry.js.map +7 -0
  274. package/dist/prod/FontFace.js +2 -0
  275. package/dist/prod/FontFace.js.map +7 -0
  276. package/dist/prod/IgnoreCustomElements.js +2 -0
  277. package/dist/prod/IgnoreCustomElements.js.map +7 -0
  278. package/dist/prod/InitialConfiguration.js +2 -0
  279. package/dist/prod/InitialConfiguration.js.map +7 -0
  280. package/dist/prod/Keys.js +2 -0
  281. package/dist/prod/Keys.js.map +7 -0
  282. package/dist/prod/Location.js +2 -0
  283. package/dist/prod/Location.js.map +7 -0
  284. package/dist/prod/ManagedStyles.js +2 -0
  285. package/dist/prod/ManagedStyles.js.map +7 -0
  286. package/dist/prod/MediaRange.js +2 -0
  287. package/dist/prod/MediaRange.js.map +7 -0
  288. package/dist/prod/PropertiesFileFormat.js +3 -0
  289. package/dist/prod/PropertiesFileFormat.js.map +7 -0
  290. package/dist/prod/Render.js +2 -0
  291. package/dist/prod/Render.js.map +7 -0
  292. package/dist/prod/RenderQueue.js +2 -0
  293. package/dist/prod/RenderQueue.js.map +7 -0
  294. package/dist/prod/Runtimes.js +2 -0
  295. package/dist/prod/Runtimes.js.map +7 -0
  296. package/dist/prod/SystemCSSVars.js +2 -0
  297. package/dist/prod/SystemCSSVars.js.map +7 -0
  298. package/dist/prod/Theming.js +2 -0
  299. package/dist/prod/Theming.js.map +7 -0
  300. package/dist/prod/UI5Element.js +2 -0
  301. package/dist/prod/UI5Element.js.map +7 -0
  302. package/dist/prod/UI5ElementMetadata.js +2 -0
  303. package/dist/prod/UI5ElementMetadata.js.map +7 -0
  304. package/dist/prod/animations/AnimationQueue.js +2 -0
  305. package/dist/prod/animations/AnimationQueue.js.map +7 -0
  306. package/dist/prod/animations/animate.js +2 -0
  307. package/dist/prod/animations/animate.js.map +7 -0
  308. package/dist/prod/animations/scroll.js +2 -0
  309. package/dist/prod/animations/scroll.js.map +7 -0
  310. package/dist/prod/animations/slideDown.js +2 -0
  311. package/dist/prod/animations/slideDown.js.map +7 -0
  312. package/dist/prod/animations/slideUp.js +2 -0
  313. package/dist/prod/animations/slideUp.js.map +7 -0
  314. package/dist/prod/asset-registries/Icons.js +2 -0
  315. package/dist/prod/asset-registries/Icons.js.map +7 -0
  316. package/dist/prod/asset-registries/Illustrations.js +2 -0
  317. package/dist/prod/asset-registries/Illustrations.js.map +7 -0
  318. package/dist/prod/asset-registries/LocaleData.js +2 -0
  319. package/dist/prod/asset-registries/LocaleData.js.map +7 -0
  320. package/dist/prod/asset-registries/Themes.js +2 -0
  321. package/dist/prod/asset-registries/Themes.js.map +7 -0
  322. package/dist/prod/asset-registries/i18n.js +2 -0
  323. package/dist/prod/asset-registries/i18n.js.map +7 -0
  324. package/dist/prod/asset-registries/util/IconCollectionsAlias.js +2 -0
  325. package/dist/prod/asset-registries/util/IconCollectionsAlias.js.map +7 -0
  326. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js +2 -0
  327. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js.map +7 -0
  328. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js +2 -0
  329. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js.map +7 -0
  330. package/dist/prod/config/AnimationMode.js +2 -0
  331. package/dist/prod/config/AnimationMode.js.map +7 -0
  332. package/dist/prod/config/CalendarType.js +2 -0
  333. package/dist/prod/config/CalendarType.js.map +7 -0
  334. package/dist/prod/config/ConfigurationReset.js +2 -0
  335. package/dist/prod/config/ConfigurationReset.js.map +7 -0
  336. package/dist/prod/config/Fonts.js +2 -0
  337. package/dist/prod/config/Fonts.js.map +7 -0
  338. package/dist/prod/config/FormatSettings.js +2 -0
  339. package/dist/prod/config/FormatSettings.js.map +7 -0
  340. package/dist/prod/config/Icons.js +2 -0
  341. package/dist/prod/config/Icons.js.map +7 -0
  342. package/dist/prod/config/Language.js +2 -0
  343. package/dist/prod/config/Language.js.map +7 -0
  344. package/dist/prod/config/NoConflict.js +2 -0
  345. package/dist/prod/config/NoConflict.js.map +7 -0
  346. package/dist/prod/config/Theme.js +2 -0
  347. package/dist/prod/config/Theme.js.map +7 -0
  348. package/dist/prod/config/ThemeRoot.js +2 -0
  349. package/dist/prod/config/ThemeRoot.js.map +7 -0
  350. package/dist/prod/config/Timezone.js +2 -0
  351. package/dist/prod/config/Timezone.js.map +7 -0
  352. package/dist/prod/config/Tooltips.js +2 -0
  353. package/dist/prod/config/Tooltips.js.map +7 -0
  354. package/dist/prod/connectToComponent.js +2 -0
  355. package/dist/prod/connectToComponent.js.map +7 -0
  356. package/dist/prod/converters/DOMReference.js +2 -0
  357. package/dist/prod/converters/DOMReference.js.map +7 -0
  358. package/dist/prod/decorators/bound.js +2 -0
  359. package/dist/prod/decorators/bound.js.map +7 -0
  360. package/dist/prod/decorators/customElement.js +2 -0
  361. package/dist/prod/decorators/customElement.js.map +7 -0
  362. package/dist/prod/decorators/event-strict.js +2 -0
  363. package/dist/prod/decorators/event-strict.js.map +7 -0
  364. package/dist/prod/decorators/event.js +2 -0
  365. package/dist/prod/decorators/event.js.map +7 -0
  366. package/dist/prod/decorators/i18n.js +2 -0
  367. package/dist/prod/decorators/i18n.js.map +7 -0
  368. package/dist/prod/decorators/property.js +2 -0
  369. package/dist/prod/decorators/property.js.map +7 -0
  370. package/dist/prod/decorators/query.js +2 -0
  371. package/dist/prod/decorators/query.js.map +7 -0
  372. package/dist/prod/decorators/queryAll.js +2 -0
  373. package/dist/prod/decorators/queryAll.js.map +7 -0
  374. package/dist/prod/decorators/slot.js +2 -0
  375. package/dist/prod/decorators/slot.js.map +7 -0
  376. package/dist/prod/decorators.js +2 -0
  377. package/dist/prod/decorators.js.map +7 -0
  378. package/dist/prod/delegate/ItemNavigation.js +2 -0
  379. package/dist/prod/delegate/ItemNavigation.js.map +7 -0
  380. package/dist/prod/delegate/ResizeHandler.js +2 -0
  381. package/dist/prod/delegate/ResizeHandler.js.map +7 -0
  382. package/dist/prod/delegate/ScrollEnablement.js +2 -0
  383. package/dist/prod/delegate/ScrollEnablement.js.map +7 -0
  384. package/dist/prod/features/F6Navigation.js +2 -0
  385. package/dist/prod/features/F6Navigation.js.map +7 -0
  386. package/dist/prod/features/InputElementsFormSupport.js +2 -0
  387. package/dist/prod/features/InputElementsFormSupport.js.map +7 -0
  388. package/dist/prod/features/LegacyDateFormats.js +2 -0
  389. package/dist/prod/features/LegacyDateFormats.js.map +7 -0
  390. package/dist/prod/features/OpenUI5Element.js +2 -0
  391. package/dist/prod/features/OpenUI5Element.js.map +7 -0
  392. package/dist/prod/features/OpenUI5Enablement.js +21 -0
  393. package/dist/prod/features/OpenUI5Enablement.js.map +7 -0
  394. package/dist/prod/features/OpenUI5Support.js +2 -0
  395. package/dist/prod/features/OpenUI5Support.js.map +7 -0
  396. package/dist/prod/features/patchPatcher.js +2 -0
  397. package/dist/prod/features/patchPatcher.js.map +7 -0
  398. package/dist/prod/features/patchPopup.js +2 -0
  399. package/dist/prod/features/patchPopup.js.map +7 -0
  400. package/dist/prod/generated/AssetParameters.js +2 -0
  401. package/dist/prod/generated/AssetParameters.js.map +7 -0
  402. package/dist/prod/generated/VersionInfo.js +2 -0
  403. package/dist/prod/generated/VersionInfo.js.map +7 -0
  404. package/dist/prod/generated/css/BusyIndicator.css.js +2 -0
  405. package/dist/prod/generated/css/BusyIndicator.css.js.map +7 -0
  406. package/dist/prod/generated/css/FontFace.css.js +2 -0
  407. package/dist/prod/generated/css/FontFace.css.js.map +7 -0
  408. package/dist/prod/generated/css/OverrideFontFace.css.js +2 -0
  409. package/dist/prod/generated/css/OverrideFontFace.css.js.map +7 -0
  410. package/dist/prod/generated/css/SystemCSSVars.css.js +2 -0
  411. package/dist/prod/generated/css/SystemCSSVars.css.js.map +7 -0
  412. package/dist/prod/getSharedResource.js +2 -0
  413. package/dist/prod/getSharedResource.js.map +7 -0
  414. package/dist/prod/global.d.js +2 -0
  415. package/dist/prod/global.d.js.map +7 -0
  416. package/dist/prod/i18nBundle.js +2 -0
  417. package/dist/prod/i18nBundle.js.map +7 -0
  418. package/dist/prod/index.js +2 -0
  419. package/dist/prod/index.js.map +7 -0
  420. package/dist/prod/jsx-dev-runtime.js +2 -0
  421. package/dist/prod/jsx-dev-runtime.js.map +7 -0
  422. package/dist/prod/jsx-runtime.js +2 -0
  423. package/dist/prod/jsx-runtime.js.map +7 -0
  424. package/dist/prod/jsx-utils.js +2 -0
  425. package/dist/prod/jsx-utils.js.map +7 -0
  426. package/dist/prod/locale/Locale.js +2 -0
  427. package/dist/prod/locale/Locale.js.map +7 -0
  428. package/dist/prod/locale/RTLAwareRegistry.js +2 -0
  429. package/dist/prod/locale/RTLAwareRegistry.js.map +7 -0
  430. package/dist/prod/locale/applyDirection.js +2 -0
  431. package/dist/prod/locale/applyDirection.js.map +7 -0
  432. package/dist/prod/locale/directionChange.js +2 -0
  433. package/dist/prod/locale/directionChange.js.map +7 -0
  434. package/dist/prod/locale/getEffectiveDir.js +2 -0
  435. package/dist/prod/locale/getEffectiveDir.js.map +7 -0
  436. package/dist/prod/locale/getLocale.js +2 -0
  437. package/dist/prod/locale/getLocale.js.map +7 -0
  438. package/dist/prod/locale/languageChange.js +2 -0
  439. package/dist/prod/locale/languageChange.js.map +7 -0
  440. package/dist/prod/locale/nextFallbackLocale.js +2 -0
  441. package/dist/prod/locale/nextFallbackLocale.js.map +7 -0
  442. package/dist/prod/locale/normalizeLocale.js +2 -0
  443. package/dist/prod/locale/normalizeLocale.js.map +7 -0
  444. package/dist/prod/renderer/JsxRenderer.js +2 -0
  445. package/dist/prod/renderer/JsxRenderer.js.map +7 -0
  446. package/dist/prod/renderer/LitRenderer.js +2 -0
  447. package/dist/prod/renderer/LitRenderer.js.map +7 -0
  448. package/dist/prod/renderer/directives/style-map.js +6 -0
  449. package/dist/prod/renderer/directives/style-map.js.map +7 -0
  450. package/dist/prod/renderer/executeTemplate.js +2 -0
  451. package/dist/prod/renderer/executeTemplate.js.map +7 -0
  452. package/dist/prod/sap/base/Log.js +750 -0
  453. package/dist/prod/sap/base/assert.js +34 -0
  454. package/dist/prod/sap/base/config/MemoryConfigurationProvider.js +20 -0
  455. package/dist/prod/sap/base/security/URLListValidator.js +406 -0
  456. package/dist/prod/sap/base/security/encodeCSS.js +40 -0
  457. package/dist/prod/sap/base/security/encodeXML.js +53 -0
  458. package/dist/prod/sap/base/security/sanitizeHTML.js +38 -0
  459. package/dist/prod/sap/base/strings/toHex.js +33 -0
  460. package/dist/prod/sap/base/util/now.js +28 -0
  461. package/dist/prod/sap/base/util/uid.js +27 -0
  462. package/dist/prod/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  463. package/dist/prod/ssr-dom-shim.js +2 -0
  464. package/dist/prod/ssr-dom-shim.js.map +7 -0
  465. package/dist/prod/ssr-dom.js +2 -0
  466. package/dist/prod/ssr-dom.js.map +7 -0
  467. package/dist/prod/theming/CustomStyle.js +2 -0
  468. package/dist/prod/theming/CustomStyle.js.map +7 -0
  469. package/dist/prod/theming/ThemeLoaded.js +2 -0
  470. package/dist/prod/theming/ThemeLoaded.js.map +7 -0
  471. package/dist/prod/theming/ThemeRegistered.js +2 -0
  472. package/dist/prod/theming/ThemeRegistered.js.map +7 -0
  473. package/dist/prod/theming/applyTheme.js +2 -0
  474. package/dist/prod/theming/applyTheme.js.map +7 -0
  475. package/dist/prod/theming/getConstructableStyle.js +2 -0
  476. package/dist/prod/theming/getConstructableStyle.js.map +7 -0
  477. package/dist/prod/theming/getEffectiveStyle.js +2 -0
  478. package/dist/prod/theming/getEffectiveStyle.js.map +7 -0
  479. package/dist/prod/theming/getStylesString.js +2 -0
  480. package/dist/prod/theming/getStylesString.js.map +7 -0
  481. package/dist/prod/theming/getThemeDesignerTheme.js +2 -0
  482. package/dist/prod/theming/getThemeDesignerTheme.js.map +7 -0
  483. package/dist/prod/thirdparty/_merge.js +2 -0
  484. package/dist/prod/thirdparty/_merge.js.map +7 -0
  485. package/dist/prod/thirdparty/isPlainObject.js +2 -0
  486. package/dist/prod/thirdparty/isPlainObject.js.map +7 -0
  487. package/dist/prod/thirdparty/merge.js +2 -0
  488. package/dist/prod/thirdparty/merge.js.map +7 -0
  489. package/dist/prod/thirdparty/preact/jsx.d.js +2 -0
  490. package/dist/prod/thirdparty/preact/jsx.d.js.map +7 -0
  491. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js +2 -0
  492. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js.map +7 -0
  493. package/dist/prod/thirdparty/preact/jsxRuntime.module.js +1 -0
  494. package/dist/prod/thirdparty/preact/preact.module.d.js +2 -0
  495. package/dist/prod/thirdparty/preact/preact.module.d.js.map +7 -0
  496. package/dist/prod/thirdparty/preact/preact.module.js +1 -0
  497. package/dist/prod/types/AnimationMode.js +2 -0
  498. package/dist/prod/types/AnimationMode.js.map +7 -0
  499. package/dist/prod/types/CalendarType.js +2 -0
  500. package/dist/prod/types/CalendarType.js.map +7 -0
  501. package/dist/prod/types/InvisibleMessageMode.js +2 -0
  502. package/dist/prod/types/InvisibleMessageMode.js.map +7 -0
  503. package/dist/prod/types/ItemNavigationBehavior.js +2 -0
  504. package/dist/prod/types/ItemNavigationBehavior.js.map +7 -0
  505. package/dist/prod/types/MovePlacement.js +2 -0
  506. package/dist/prod/types/MovePlacement.js.map +7 -0
  507. package/dist/prod/types/NavigationMode.js +2 -0
  508. package/dist/prod/types/NavigationMode.js.map +7 -0
  509. package/dist/prod/types/Orientation.js +2 -0
  510. package/dist/prod/types/Orientation.js.map +7 -0
  511. package/dist/prod/types/SortOrder.js +2 -0
  512. package/dist/prod/types/SortOrder.js.map +7 -0
  513. package/dist/prod/types/ValueState.js +2 -0
  514. package/dist/prod/types/ValueState.js.map +7 -0
  515. package/dist/prod/types.js +2 -0
  516. package/dist/prod/types.js.map +7 -0
  517. package/dist/prod/updateShadowRoot.js +2 -0
  518. package/dist/prod/updateShadowRoot.js.map +7 -0
  519. package/dist/prod/util/AccessibilityTextsHelper.js +2 -0
  520. package/dist/prod/util/AccessibilityTextsHelper.js.map +7 -0
  521. package/dist/prod/util/Caret.js +2 -0
  522. package/dist/prod/util/Caret.js.map +7 -0
  523. package/dist/prod/util/ColorConversion.js +2 -0
  524. package/dist/prod/util/ColorConversion.js.map +7 -0
  525. package/dist/prod/util/FetchHelper.js +2 -0
  526. package/dist/prod/util/FetchHelper.js.map +7 -0
  527. package/dist/prod/util/FocusableElements.js +2 -0
  528. package/dist/prod/util/FocusableElements.js.map +7 -0
  529. package/dist/prod/util/HTMLSanitizer.js +2 -0
  530. package/dist/prod/util/HTMLSanitizer.js.map +7 -0
  531. package/dist/prod/util/InvisibleMessage.js +2 -0
  532. package/dist/prod/util/InvisibleMessage.js.map +7 -0
  533. package/dist/prod/util/PopupUtils.js +2 -0
  534. package/dist/prod/util/PopupUtils.js.map +7 -0
  535. package/dist/prod/util/SelectionAssistant.js +2 -0
  536. package/dist/prod/util/SelectionAssistant.js.map +7 -0
  537. package/dist/prod/util/SlotsHelper.js +2 -0
  538. package/dist/prod/util/SlotsHelper.js.map +7 -0
  539. package/dist/prod/util/StringHelper.js +2 -0
  540. package/dist/prod/util/StringHelper.js.map +7 -0
  541. package/dist/prod/util/TabbableElements.js +2 -0
  542. package/dist/prod/util/TabbableElements.js.map +7 -0
  543. package/dist/prod/util/arraysAreEqual.js +2 -0
  544. package/dist/prod/util/arraysAreEqual.js.map +7 -0
  545. package/dist/prod/util/clamp.js +2 -0
  546. package/dist/prod/util/clamp.js.map +7 -0
  547. package/dist/prod/util/createLinkInHead.js +2 -0
  548. package/dist/prod/util/createLinkInHead.js.map +7 -0
  549. package/dist/prod/util/debounce.js +2 -0
  550. package/dist/prod/util/debounce.js.map +7 -0
  551. package/dist/prod/util/detectNavigatorLanguage.js +2 -0
  552. package/dist/prod/util/detectNavigatorLanguage.js.map +7 -0
  553. package/dist/prod/util/dragAndDrop/DragRegistry.js +2 -0
  554. package/dist/prod/util/dragAndDrop/DragRegistry.js.map +7 -0
  555. package/dist/prod/util/dragAndDrop/findClosestPosition.js +2 -0
  556. package/dist/prod/util/dragAndDrop/findClosestPosition.js.map +7 -0
  557. package/dist/prod/util/dragAndDrop/handleDragOver.js +2 -0
  558. package/dist/prod/util/dragAndDrop/handleDragOver.js.map +7 -0
  559. package/dist/prod/util/dragAndDrop/handleDrop.js +2 -0
  560. package/dist/prod/util/dragAndDrop/handleDrop.js.map +7 -0
  561. package/dist/prod/util/dragAndDrop/longDragOverHandler.js +2 -0
  562. package/dist/prod/util/dragAndDrop/longDragOverHandler.js.map +7 -0
  563. package/dist/prod/util/escapeRegex.js +2 -0
  564. package/dist/prod/util/escapeRegex.js.map +7 -0
  565. package/dist/prod/util/fixSafariActiveState.js +2 -0
  566. package/dist/prod/util/fixSafariActiveState.js.map +7 -0
  567. package/dist/prod/util/formatMessage.js +2 -0
  568. package/dist/prod/util/formatMessage.js.map +7 -0
  569. package/dist/prod/util/generateHighlightedMarkup.js +2 -0
  570. package/dist/prod/util/generateHighlightedMarkup.js.map +7 -0
  571. package/dist/prod/util/getActiveElement.js +2 -0
  572. package/dist/prod/util/getActiveElement.js.map +7 -0
  573. package/dist/prod/util/getClassCopy.js +2 -0
  574. package/dist/prod/util/getClassCopy.js.map +7 -0
  575. package/dist/prod/util/getDesigntimePropertyAsArray.js +2 -0
  576. package/dist/prod/util/getDesigntimePropertyAsArray.js.map +7 -0
  577. package/dist/prod/util/getEffectiveContentDensity.js +2 -0
  578. package/dist/prod/util/getEffectiveContentDensity.js.map +7 -0
  579. package/dist/prod/util/getEffectiveScrollbarStyle.js +26 -0
  580. package/dist/prod/util/getEffectiveScrollbarStyle.js.map +7 -0
  581. package/dist/prod/util/getFastNavigationGroups.js +2 -0
  582. package/dist/prod/util/getFastNavigationGroups.js.map +7 -0
  583. package/dist/prod/util/getFileExtension.js +2 -0
  584. package/dist/prod/util/getFileExtension.js.map +7 -0
  585. package/dist/prod/util/getNormalizedTarget.js +2 -0
  586. package/dist/prod/util/getNormalizedTarget.js.map +7 -0
  587. package/dist/prod/util/getSingletonElementInstance.js +2 -0
  588. package/dist/prod/util/getSingletonElementInstance.js.map +7 -0
  589. package/dist/prod/util/hash2str.js +2 -0
  590. package/dist/prod/util/hash2str.js.map +7 -0
  591. package/dist/prod/util/isElementClickable.js +2 -0
  592. package/dist/prod/util/isElementClickable.js.map +7 -0
  593. package/dist/prod/util/isElementHidden.js +2 -0
  594. package/dist/prod/util/isElementHidden.js.map +7 -0
  595. package/dist/prod/util/isElementInView.js +2 -0
  596. package/dist/prod/util/isElementInView.js.map +7 -0
  597. package/dist/prod/util/isElementTabbable.js +2 -0
  598. package/dist/prod/util/isElementTabbable.js.map +7 -0
  599. package/dist/prod/util/isValidPropertyName.js +2 -0
  600. package/dist/prod/util/isValidPropertyName.js.map +7 -0
  601. package/dist/prod/util/throttle.js +2 -0
  602. package/dist/prod/util/throttle.js.map +7 -0
  603. package/dist/prod/util/toLowercaseEnumValue.js +2 -0
  604. package/dist/prod/util/toLowercaseEnumValue.js.map +7 -0
  605. package/dist/prod/util/whenDOMReady.js +2 -0
  606. package/dist/prod/util/whenDOMReady.js.map +7 -0
  607. package/dist/prod/util/willShowContent.js +2 -0
  608. package/dist/prod/util/willShowContent.js.map +7 -0
  609. package/dist/prod/validateThemeRoot.js +2 -0
  610. package/dist/prod/validateThemeRoot.js.map +7 -0
  611. package/dist/renderer/JsxRenderer.d.ts +3 -0
  612. package/dist/renderer/JsxRenderer.js +16 -0
  613. package/dist/renderer/JsxRenderer.js.map +1 -0
  614. package/dist/renderer/LitRenderer.d.ts +3 -3
  615. package/dist/renderer/LitRenderer.js +5 -10
  616. package/dist/renderer/LitRenderer.js.map +1 -1
  617. package/dist/renderer/directives/style-map.d.ts +13 -0
  618. package/dist/renderer/directives/style-map.js +59 -59
  619. package/dist/renderer/directives/style-map.js.map +1 -0
  620. package/dist/renderer/executeTemplate.d.ts +3 -4
  621. package/dist/renderer/executeTemplate.js +1 -19
  622. package/dist/renderer/executeTemplate.js.map +1 -1
  623. package/dist/sap/base/Log.js +698 -188
  624. package/dist/sap/base/assert.js +28 -1
  625. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  626. package/dist/sap/base/security/URLListValidator.js +253 -6
  627. package/dist/sap/base/security/encodeCSS.js +34 -8
  628. package/dist/sap/base/security/encodeXML.js +47 -17
  629. package/dist/sap/base/security/sanitizeHTML.js +35 -13
  630. package/dist/sap/base/strings/toHex.js +27 -2
  631. package/dist/sap/base/util/now.js +24 -3
  632. package/dist/sap/base/util/uid.js +27 -0
  633. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +113 -98
  634. package/dist/ssr-dom-shim.d.ts +1 -0
  635. package/dist/ssr-dom-shim.js +62 -0
  636. package/dist/ssr-dom-shim.js.map +1 -0
  637. package/dist/ssr-dom.d.ts +1 -0
  638. package/dist/ssr-dom.js +3 -0
  639. package/dist/ssr-dom.js.map +1 -0
  640. package/dist/theming/CustomStyle.js.map +1 -1
  641. package/dist/theming/applyTheme.js +9 -8
  642. package/dist/theming/applyTheme.js.map +1 -1
  643. package/dist/theming/getConstructableStyle.d.ts +2 -2
  644. package/dist/theming/getConstructableStyle.js +3 -3
  645. package/dist/theming/getConstructableStyle.js.map +1 -1
  646. package/dist/theming/getEffectiveStyle.d.ts +1 -1
  647. package/dist/theming/getEffectiveStyle.js +5 -12
  648. package/dist/theming/getEffectiveStyle.js.map +1 -1
  649. package/dist/theming/getStylesString.js +2 -4
  650. package/dist/theming/getStylesString.js.map +1 -1
  651. package/dist/theming/getThemeDesignerTheme.js +2 -1
  652. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  653. package/dist/thirdparty/_merge.js.map +1 -1
  654. package/dist/thirdparty/isPlainObject.js.map +1 -1
  655. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  656. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  657. package/dist/thirdparty/preact/jsxRuntime.module.js +1 -0
  658. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  659. package/dist/thirdparty/preact/preact.module.js +1 -0
  660. package/dist/types/AnimationMode.d.ts +0 -8
  661. package/dist/types/AnimationMode.js +0 -8
  662. package/dist/types/AnimationMode.js.map +1 -1
  663. package/dist/types/CalendarType.d.ts +0 -9
  664. package/dist/types/CalendarType.js +0 -9
  665. package/dist/types/CalendarType.js.map +1 -1
  666. package/dist/types/InvisibleMessageMode.d.ts +5 -10
  667. package/dist/types/InvisibleMessageMode.js +4 -11
  668. package/dist/types/InvisibleMessageMode.js.map +1 -1
  669. package/dist/types/ItemNavigationBehavior.d.ts +0 -6
  670. package/dist/types/ItemNavigationBehavior.js +0 -6
  671. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  672. package/dist/types/MovePlacement.d.ts +20 -0
  673. package/dist/types/MovePlacement.js +22 -0
  674. package/dist/types/MovePlacement.js.map +1 -0
  675. package/dist/types/NavigationMode.d.ts +0 -8
  676. package/dist/types/NavigationMode.js +0 -8
  677. package/dist/types/NavigationMode.js.map +1 -1
  678. package/dist/types/Orientation.d.ts +16 -0
  679. package/dist/types/Orientation.js +18 -0
  680. package/dist/types/Orientation.js.map +1 -0
  681. package/dist/types/SortOrder.d.ts +24 -0
  682. package/dist/types/SortOrder.js +26 -0
  683. package/dist/types/SortOrder.js.map +1 -0
  684. package/dist/types/ValueState.d.ts +3 -17
  685. package/dist/types/ValueState.js +3 -17
  686. package/dist/types/ValueState.js.map +1 -1
  687. package/dist/types.d.ts +37 -14
  688. package/dist/types.js.map +1 -1
  689. package/dist/updateShadowRoot.d.ts +1 -2
  690. package/dist/updateShadowRoot.js +4 -25
  691. package/dist/updateShadowRoot.js.map +1 -1
  692. package/dist/util/{AriaLabelHelper.d.ts → AccessibilityTextsHelper.d.ts} +4 -2
  693. package/dist/util/{AriaLabelHelper.js → AccessibilityTextsHelper.js} +36 -8
  694. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  695. package/dist/util/Caret.js.map +1 -1
  696. package/dist/util/ColorConversion.d.ts +2 -1
  697. package/dist/util/ColorConversion.js +233 -216
  698. package/dist/util/ColorConversion.js.map +1 -1
  699. package/dist/util/FetchHelper.js.map +1 -1
  700. package/dist/util/FocusableElements.js +40 -12
  701. package/dist/util/FocusableElements.js.map +1 -1
  702. package/dist/util/HTMLSanitizer.d.ts +2 -0
  703. package/dist/util/HTMLSanitizer.js +2 -2
  704. package/dist/util/HTMLSanitizer.js.map +1 -1
  705. package/dist/util/InvisibleMessage.js +2 -2
  706. package/dist/util/InvisibleMessage.js.map +1 -1
  707. package/dist/util/PopupUtils.d.ts +1 -3
  708. package/dist/util/PopupUtils.js +1 -15
  709. package/dist/util/PopupUtils.js.map +1 -1
  710. package/dist/util/SelectionAssistant.d.ts +12 -0
  711. package/dist/util/SelectionAssistant.js +79 -0
  712. package/dist/util/SelectionAssistant.js.map +1 -0
  713. package/dist/util/SlotsHelper.js.map +1 -1
  714. package/dist/util/StringHelper.d.ts +3 -1
  715. package/dist/util/StringHelper.js +15 -1
  716. package/dist/util/StringHelper.js.map +1 -1
  717. package/dist/util/TabbableElements.js +3 -10
  718. package/dist/util/TabbableElements.js.map +1 -1
  719. package/dist/util/arraysAreEqual.js.map +1 -1
  720. package/dist/util/clamp.js +2 -1
  721. package/dist/util/clamp.js.map +1 -1
  722. package/dist/util/createLinkInHead.d.ts +1 -1
  723. package/dist/util/createLinkInHead.js +1 -1
  724. package/dist/util/createLinkInHead.js.map +1 -1
  725. package/dist/util/debounce.js.map +1 -1
  726. package/dist/util/detectNavigatorLanguage.d.ts +2 -2
  727. package/dist/util/detectNavigatorLanguage.js +6 -1
  728. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  729. package/dist/util/dragAndDrop/DragRegistry.d.ts +33 -0
  730. package/dist/util/dragAndDrop/DragRegistry.js +66 -0
  731. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  732. package/dist/util/dragAndDrop/findClosestPosition.d.ts +12 -0
  733. package/dist/util/dragAndDrop/findClosestPosition.js +106 -0
  734. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  735. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  736. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  737. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  738. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  739. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  740. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  741. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  742. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  743. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  744. package/dist/util/fixSafariActiveState.d.ts +2 -0
  745. package/dist/util/fixSafariActiveState.js +11 -0
  746. package/dist/util/fixSafariActiveState.js.map +1 -0
  747. package/dist/util/formatMessage.js.map +1 -1
  748. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  749. package/dist/util/getActiveElement.js.map +1 -1
  750. package/dist/util/getClassCopy.d.ts +145 -102
  751. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -2
  752. package/dist/util/getDesigntimePropertyAsArray.js +2 -1
  753. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  754. package/dist/util/getEffectiveScrollbarStyle.d.ts +1 -1
  755. package/dist/util/getEffectiveScrollbarStyle.js +31 -1
  756. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -1
  757. package/dist/util/getFastNavigationGroups.js +6 -1
  758. package/dist/util/getFastNavigationGroups.js.map +1 -1
  759. package/dist/util/getFileExtension.js.map +1 -1
  760. package/dist/util/getNormalizedTarget.js.map +1 -1
  761. package/dist/util/getSingletonElementInstance.d.ts +10 -1
  762. package/dist/util/getSingletonElementInstance.js +11 -2
  763. package/dist/util/getSingletonElementInstance.js.map +1 -1
  764. package/dist/util/hash2str.d.ts +1 -0
  765. package/dist/util/hash2str.js +14 -0
  766. package/dist/util/hash2str.js.map +1 -0
  767. package/dist/util/isElementClickable.js.map +1 -1
  768. package/dist/util/isElementHidden.js.map +1 -1
  769. package/dist/util/isElementTabbable.js +2 -2
  770. package/dist/util/isElementTabbable.js.map +1 -1
  771. package/dist/util/isValidPropertyName.js.map +1 -1
  772. package/dist/util/throttle.d.ts +2 -0
  773. package/dist/util/throttle.js +20 -0
  774. package/dist/util/throttle.js.map +1 -0
  775. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  776. package/dist/util/toLowercaseEnumValue.js +4 -0
  777. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  778. package/dist/util/whenDOMReady.js.map +1 -1
  779. package/dist/validateThemeRoot.js +3 -2
  780. package/dist/validateThemeRoot.js.map +1 -1
  781. package/dist/vscode.html-custom-data.json +22 -0
  782. package/package-scripts.cjs +26 -23
  783. package/package.json +37 -11
  784. package/src/css/FontFace.css +47 -17
  785. package/src/css/SystemCSSVars.css +0 -8
  786. package/src/thirdparty/preact/jsxRuntime.module.js +1 -0
  787. package/src/thirdparty/preact/preact.module.js +1 -0
  788. package/src/thirdparty/preact/version.txt +1 -0
  789. package/tsconfig.json +18 -13
  790. package/.eslintignore +0 -16
  791. package/.eslintrc.cjs +0 -3
  792. package/bundle.esm.js +0 -64
  793. package/config/wdio.conf.cjs +0 -400
  794. package/dist/CSP.d.ts +0 -30
  795. package/dist/CSP.js +0 -51
  796. package/dist/CSP.js.map +0 -1
  797. package/dist/MarkedEvents.d.ts +0 -9
  798. package/dist/MarkedEvents.js +0 -15
  799. package/dist/MarkedEvents.js.map +0 -1
  800. package/dist/StaticArea.d.ts +0 -3
  801. package/dist/StaticArea.js +0 -7
  802. package/dist/StaticArea.js.map +0 -1
  803. package/dist/StaticAreaItem.d.ts +0 -36
  804. package/dist/StaticAreaItem.js +0 -99
  805. package/dist/StaticAreaItem.js.map +0 -1
  806. package/dist/api.json +0 -1
  807. package/dist/assets/Boot.34b7cea0.css +0 -1
  808. package/dist/assets/Boot.650535e2.js +0 -9
  809. package/dist/assets/bundle.esm.ceb1b6b8.js +0 -50
  810. package/dist/assets-meta/IconCollectionsAlias.js.map +0 -1
  811. package/dist/config/RTL.d.ts +0 -7
  812. package/dist/config/RTL.js +0 -37
  813. package/dist/config/RTL.js.map +0 -1
  814. package/dist/config/ThemeRoots.d.ts +0 -4
  815. package/dist/config/ThemeRoots.js +0 -28
  816. package/dist/config/ThemeRoots.js.map +0 -1
  817. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +0 -11
  818. package/dist/theming/getEffectiveLinksHrefs.d.ts +0 -3
  819. package/dist/theming/getEffectiveLinksHrefs.js +0 -17
  820. package/dist/theming/getEffectiveLinksHrefs.js.map +0 -1
  821. package/dist/theming/preloadLinks.d.ts +0 -3
  822. package/dist/theming/preloadLinks.js +0 -19
  823. package/dist/theming/preloadLinks.js.map +0 -1
  824. package/dist/types/CSSColor.d.ts +0 -15
  825. package/dist/types/CSSColor.js +0 -18
  826. package/dist/types/CSSColor.js.map +0 -1
  827. package/dist/types/DOMReference.d.ts +0 -17
  828. package/dist/types/DOMReference.js +0 -25
  829. package/dist/types/DOMReference.js.map +0 -1
  830. package/dist/types/DataType.d.ts +0 -25
  831. package/dist/types/DataType.js +0 -44
  832. package/dist/types/DataType.js.map +0 -1
  833. package/dist/types/Float.d.ts +0 -17
  834. package/dist/types/Float.js +0 -21
  835. package/dist/types/Float.js.map +0 -1
  836. package/dist/types/Integer.d.ts +0 -17
  837. package/dist/types/Integer.js +0 -21
  838. package/dist/types/Integer.js.map +0 -1
  839. package/dist/util/AriaLabelHelper.js.map +0 -1
  840. package/dist/util/createStyleInHead.d.ts +0 -8
  841. package/dist/util/createStyleInHead.js +0 -18
  842. package/dist/util/createStyleInHead.js.map +0 -1
  843. package/index.js +0 -230
  844. package/lib/generate-asset-parameters/index.js +0 -27
  845. package/lib/generate-styles/index.js +0 -31
  846. package/lib/generate-version-info/index.js +0 -32
  847. package/src/renderer/directives/style-map.js +0 -72
  848. package/used-modules.txt +0 -10
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Returns if the "defaultFontLoading" configuration is set.
3
+ * @public
4
+ * @returns { boolean }
5
+ */
6
+ declare const getDefaultFontLoading: () => boolean;
7
+ /**
8
+ * Defines the "defaultFontLoading" setting.
9
+ *
10
+ * - When set to "true" (default), all used font faces are fetched over the network.
11
+ * - When set to "false", default font faces are not fetched automatically and must be managed separately.
12
+ * @public
13
+ * @param { boolean } defaultFontLoadingData
14
+ */
15
+ declare const setDefaultFontLoading: (defaultFontLoadingData: boolean) => void;
16
+ export { getDefaultFontLoading, setDefaultFontLoading, };
@@ -0,0 +1,30 @@
1
+ import { getDefaultFontLoading as getConfiguredDefaultFontLoading } from "../InitialConfiguration.js";
2
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
3
+ let defaultFontLoading;
4
+ attachConfigurationReset(() => {
5
+ defaultFontLoading = undefined;
6
+ });
7
+ /**
8
+ * Returns if the "defaultFontLoading" configuration is set.
9
+ * @public
10
+ * @returns { boolean }
11
+ */
12
+ const getDefaultFontLoading = () => {
13
+ if (defaultFontLoading === undefined) {
14
+ defaultFontLoading = getConfiguredDefaultFontLoading();
15
+ }
16
+ return defaultFontLoading;
17
+ };
18
+ /**
19
+ * Defines the "defaultFontLoading" setting.
20
+ *
21
+ * - When set to "true" (default), all used font faces are fetched over the network.
22
+ * - When set to "false", default font faces are not fetched automatically and must be managed separately.
23
+ * @public
24
+ * @param { boolean } defaultFontLoadingData
25
+ */
26
+ const setDefaultFontLoading = (defaultFontLoadingData) => {
27
+ defaultFontLoading = defaultFontLoadingData;
28
+ };
29
+ export { getDefaultFontLoading, setDefaultFontLoading, };
30
+ //# sourceMappingURL=Fonts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Fonts.js","sourceRoot":"","sources":["../../src/config/Fonts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AACtG,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,kBAAuC,CAAC;AAE5C,wBAAwB,CAAC,GAAG,EAAE;IAC7B,kBAAkB,GAAG,SAAS,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,GAAY,EAAE;IAC3C,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACtC,kBAAkB,GAAG,+BAA+B,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,kBAAkB,CAAC;AAC3B,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,qBAAqB,GAAG,CAAC,sBAA+B,EAAE,EAAE;IACjE,kBAAkB,GAAG,sBAAsB,CAAC;AAC7C,CAAC,CAAC;AAEF,OAAO,EACN,qBAAqB,EACrB,qBAAqB,GACrB,CAAC","sourcesContent":["import { getDefaultFontLoading as getConfiguredDefaultFontLoading } from \"../InitialConfiguration.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet defaultFontLoading: boolean | undefined;\n\nattachConfigurationReset(() => {\n\tdefaultFontLoading = undefined;\n});\n\n/**\n * Returns if the \"defaultFontLoading\" configuration is set.\n * @public\n * @returns { boolean }\n */\nconst getDefaultFontLoading = (): boolean => {\n\tif (defaultFontLoading === undefined) {\n\t\tdefaultFontLoading = getConfiguredDefaultFontLoading();\n\t}\n\n\treturn defaultFontLoading;\n};\n\n/**\n * Defines the \"defaultFontLoading\" setting.\n *\n * - When set to \"true\" (default), all used font faces are fetched over the network.\n * - When set to \"false\", default font faces are not fetched automatically and must be managed separately.\n * @public\n * @param { boolean } defaultFontLoadingData\n */\nconst setDefaultFontLoading = (defaultFontLoadingData: boolean) => {\n\tdefaultFontLoading = defaultFontLoadingData;\n};\n\nexport {\n\tgetDefaultFontLoading,\n\tsetDefaultFontLoading,\n};\n"]}
@@ -1,7 +1,11 @@
1
1
  import LegacyDateFormats from "../features/LegacyDateFormats.js";
2
2
  import { getFormatSettings } from "../InitialConfiguration.js";
3
3
  import { getFeature } from "../FeaturesRegistry.js";
4
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
4
5
  let formatSettings;
6
+ attachConfigurationReset(() => {
7
+ formatSettings = undefined;
8
+ });
5
9
  /**
6
10
  * Returns the first day of the week from the configured format settings or based on the current locale.
7
11
  * @public
@@ -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","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
+ {"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;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAOnE,IAAI,cAA0C,CAAC;AAE/C,wBAAwB,CAAC,GAAG,EAAE;IAC7B,cAAc,GAAG,SAAS,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,GAAuB,EAAE;IAClD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QAClC,cAAc,GAAG,iBAAiB,EAAE,CAAC;IACtC,CAAC;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\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\ntype FormatSettings = {\n\tfirstDayOfWeek?: number,\n\tlegacyDateCalendarCustomizing?: LegacyDateCalendarCustomizing,\n};\n\nlet formatSettings: FormatSettings | undefined;\n\nattachConfigurationReset(() => {\n\tformatSettings = undefined;\n});\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,12 +1,4 @@
1
- type IconCollection = "SAP-icons" | "SAP-icons-v4" | "SAP-icons-v5" | "horizon" | "tnt" | "tnt-v2" | "tnt-v3" | "business-suite" | "business-suite-v1" | "business-suite-v2" | string;
2
- declare enum RegisteredIconCollection {
3
- SAPIconsV4 = "SAP-icons-v4",
4
- SAPIconsV5 = "SAP-icons-v5",
5
- SAPIconsTNTV2 = "tnt-v2",
6
- SAPIconsTNTV3 = "tnt-v3",
7
- SAPBSIconsV1 = "business-suite-v1",
8
- SAPBSIconsV2 = "business-suite-v2"
9
- }
1
+ type IconCollection = string;
10
2
  /**
11
3
  * Sets the default icon collection for a given theme.
12
4
  *
@@ -14,22 +6,22 @@ declare enum RegisteredIconCollection {
14
6
  * 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.
15
7
  * This method allows setting another (built-in or custom) icon collection as default per theme.
16
8
  *
17
- * <b>Usage</b>
18
- * <b>For example</b>, to make "SAP-icons version 5.x" the default icon collection in "sap_fiori_3":
9
+ * **Usage**
10
+ * **For example**, to make "SAP-icons version 5.x" the default icon collection in "sap_fiori_3":
19
11
  *
20
- * <pre>
12
+ * ```
21
13
  * setDefaultIconCollection("sap_fiori_3", "SAP-icons-v5");
22
14
  *
23
15
  * <ui5-icon name="home"></ui5-icon>
24
- * </pre>
16
+ * ```
25
17
  *
26
- * <b>For example</b>, to make a custom icon collection (with name "my-custom-collection") the default icon collection in "sap_fiori_3":
18
+ * **For example**, to make a custom icon collection (with name "my-custom-collection") the default icon collection in "sap_fiori_3":
27
19
  *
28
- * <pre>
20
+ * ```
29
21
  * setDefaultIconCollection("sap_fiori_3", "my-custom-collection");
30
22
  *
31
23
  * <ui5-icon name="custom-icon-name"></ui5-icon>
32
- * </pre>
24
+ * ```
33
25
  *
34
26
  * @public
35
27
  * @param { string } theme
@@ -44,12 +36,5 @@ declare const setDefaultIconCollection: (theme: string, collectionName: IconColl
44
36
  * @returns { string | undefined }
45
37
  */
46
38
  declare const getDefaultIconCollection: (theme: string) => string | undefined;
47
- /**
48
- * Returns the effective icon collection,
49
- * based on the default icon collection configuration and the current theme:
50
- * @param { IconCollection } collectionName
51
- * @returns { IconCollection } the effective collection name
52
- */
53
- declare const getEffectiveIconCollection: (collectionName?: IconCollection) => IconCollection;
54
- export { setDefaultIconCollection, getDefaultIconCollection, getEffectiveIconCollection, RegisteredIconCollection, };
39
+ export { setDefaultIconCollection, getDefaultIconCollection, };
55
40
  export type { IconCollection, };
@@ -1,16 +1,4 @@
1
- import { getTheme, isLegacyThemeFamily } from "./Theme.js";
2
- import { getIconCollectionByAlias } from "../assets-meta/IconCollectionsAlias.js";
3
1
  const IconCollectionConfiguration = new Map();
4
- // All registered icon collections - all icon collections resolves to these options at the end
5
- var RegisteredIconCollection;
6
- (function (RegisteredIconCollection) {
7
- RegisteredIconCollection["SAPIconsV4"] = "SAP-icons-v4";
8
- RegisteredIconCollection["SAPIconsV5"] = "SAP-icons-v5";
9
- RegisteredIconCollection["SAPIconsTNTV2"] = "tnt-v2";
10
- RegisteredIconCollection["SAPIconsTNTV3"] = "tnt-v3";
11
- RegisteredIconCollection["SAPBSIconsV1"] = "business-suite-v1";
12
- RegisteredIconCollection["SAPBSIconsV2"] = "business-suite-v2";
13
- })(RegisteredIconCollection || (RegisteredIconCollection = {}));
14
2
  /**
15
3
  * Sets the default icon collection for a given theme.
16
4
  *
@@ -18,22 +6,22 @@ var RegisteredIconCollection;
18
6
  * 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.
19
7
  * This method allows setting another (built-in or custom) icon collection as default per theme.
20
8
  *
21
- * <b>Usage</b>
22
- * <b>For example</b>, to make "SAP-icons version 5.x" the default icon collection in "sap_fiori_3":
9
+ * **Usage**
10
+ * **For example**, to make "SAP-icons version 5.x" the default icon collection in "sap_fiori_3":
23
11
  *
24
- * <pre>
12
+ * ```
25
13
  * setDefaultIconCollection("sap_fiori_3", "SAP-icons-v5");
26
14
  *
27
15
  * <ui5-icon name="home"></ui5-icon>
28
- * </pre>
16
+ * ```
29
17
  *
30
- * <b>For example</b>, to make a custom icon collection (with name "my-custom-collection") the default icon collection in "sap_fiori_3":
18
+ * **For example**, to make a custom icon collection (with name "my-custom-collection") the default icon collection in "sap_fiori_3":
31
19
  *
32
- * <pre>
20
+ * ```
33
21
  * setDefaultIconCollection("sap_fiori_3", "my-custom-collection");
34
22
  *
35
23
  * <ui5-icon name="custom-icon-name"></ui5-icon>
36
- * </pre>
24
+ * ```
37
25
  *
38
26
  * @public
39
27
  * @param { string } theme
@@ -52,52 +40,5 @@ const setDefaultIconCollection = (theme, collectionName) => {
52
40
  const getDefaultIconCollection = (theme) => {
53
41
  return IconCollectionConfiguration.get(theme);
54
42
  };
55
- /**
56
- * Returns the effective icon collection,
57
- * based on the default icon collection configuration and the current theme:
58
- * @param { IconCollection } collectionName
59
- * @returns { IconCollection } the effective collection name
60
- */
61
- const getEffectiveIconCollection = (collectionName) => {
62
- const currentTheme = getTheme();
63
- const currentThemeConfiguration = IconCollectionConfiguration.get(currentTheme);
64
- // when no collection is set and default collection is configured - return the configured icon collection
65
- if (!collectionName && currentThemeConfiguration) {
66
- return getIconCollectionByAlias(currentThemeConfiguration);
67
- }
68
- // when collection is set - return the theme dependant icon collection
69
- // when collection is not set and there is no default icon collection configured - return theme dependant icon collection
70
- return getIconCollectionByTheme(collectionName);
71
- };
72
- /**
73
- * Returns the icon theme dependant collection, based on the collection name and current theme as follows:
74
- *
75
- * - "no collection" resolves to "SAP-icons-v4" in "Quartz" and "Belize", and to "SAP-icons-v5" in "Horizon" (or as confugred via setDefaultIconCollection)
76
- * - "SAP-icons-v4" (and its alias "SAP-icons") forces "SAP-icons v4" in any theme and resolves to itself "SAP-icons-v4"
77
- * - "SAP-icons-v5" (and its alias "horizon") forces "SAP-icons v5" in any theme and resolves to itself "SAP-icons-v5"
78
- * - "tnt" (and its alias "SAP-icons-TNT") resolves to "tnt-v2" in "Quartz", "Belize", and resolves to "tnt-v3" in "Horizon"
79
- * - "tnt-v2" forces "TNT icons v2" in any theme and resolves to itself "tnt-v2"
80
- * - "tnt-v3" forces "TNT icons v3" in any theme and resolves to itself "tnt-v3"
81
- * - "business-suite" (and its alias "BusinessSuiteInAppSymbols") resolves to "business-suite-v1" in "Quartz", "Belize", and resolves to "business-suite-v2" in "Horizon"
82
- * - "business-suite-v1" forces "Business Suite icons v1" in any theme and resolves to itself "business-suite-v1"
83
- * - "business-suite-v2" forces "Business Suite icons v2" in any theme and resolves to itself "business-suite-v2"
84
- *
85
- * <b>Note:</b> "SAP-icons-v4", "SAP-icons-v5", "tnt-v2", "tnt-v3", "business-suite-v1" and "business-suite-v2" are just returned
86
- * @param { IconCollection } collectionName
87
- * @returns { RegisteredIconCollection } the registered collection name
88
- */
89
- const getIconCollectionByTheme = (collectionName) => {
90
- const legacyThemeFamily = isLegacyThemeFamily();
91
- if (!collectionName) {
92
- return legacyThemeFamily ? RegisteredIconCollection.SAPIconsV4 : RegisteredIconCollection.SAPIconsV5;
93
- }
94
- if (collectionName === "tnt") {
95
- return legacyThemeFamily ? RegisteredIconCollection.SAPIconsTNTV2 : RegisteredIconCollection.SAPIconsTNTV3;
96
- }
97
- if (collectionName === "business-suite") {
98
- return legacyThemeFamily ? RegisteredIconCollection.SAPBSIconsV1 : RegisteredIconCollection.SAPBSIconsV2;
99
- }
100
- return collectionName;
101
- };
102
- export { setDefaultIconCollection, getDefaultIconCollection, getEffectiveIconCollection, RegisteredIconCollection, };
43
+ export { setDefaultIconCollection, getDefaultIconCollection, };
103
44
  //# sourceMappingURL=Icons.js.map
@@ -1 +1 @@
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"]}
1
+ {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../../src/config/Icons.ts"],"names":[],"mappings":"AAAA,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAkB,CAAC;AAK9D;;;;;;;;;;;;;;;;;;;;;;;;;;;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,OAAO,EACN,wBAAwB,EACxB,wBAAwB,GACxB,CAAC","sourcesContent":["const IconCollectionConfiguration = new Map<string, string>();\n\n// All supported icon collections + unknown custom ones\ntype IconCollection = string;\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 * **Usage**\n * **For example**, to make \"SAP-icons version 5.x\" the default icon collection in \"sap_fiori_3\":\n *\n * ```\n * setDefaultIconCollection(\"sap_fiori_3\", \"SAP-icons-v5\");\n *\n * <ui5-icon name=\"home\"></ui5-icon>\n * ```\n *\n * **For example**, to make a custom icon collection (with name \"my-custom-collection\") the default icon collection in \"sap_fiori_3\":\n *\n * ```\n * setDefaultIconCollection(\"sap_fiori_3\", \"my-custom-collection\");\n *\n * <ui5-icon name=\"custom-icon-name\"></ui5-icon>\n * ```\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\nexport {\n\tsetDefaultIconCollection,\n\tgetDefaultIconCollection,\n};\n\nexport type {\n\tIconCollection,\n};\n"]}
@@ -25,7 +25,7 @@ declare const getDefaultLanguage: () => string;
25
25
  /**
26
26
  * Defines if the default language, that is inlined, should be
27
27
  * fetched over the network instead of using the inlined one.
28
- * <b>Note:</b> By default the language will not be fetched.
28
+ * **Note:** By default the language will not be fetched.
29
29
  *
30
30
  * @public
31
31
  * @param {boolean} fetchDefaultLang
@@ -2,8 +2,14 @@ import { getLanguage as getConfiguredLanguage, getFetchDefaultLanguage as getCon
2
2
  import { fireLanguageChange } from "../locale/languageChange.js";
3
3
  import { reRenderAllUI5Elements } from "../Render.js";
4
4
  import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
5
+ import { isBooted } from "../Boot.js";
6
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
5
7
  let curLanguage;
6
8
  let fetchDefaultLanguage;
9
+ attachConfigurationReset(() => {
10
+ curLanguage = undefined;
11
+ fetchDefaultLanguage = undefined;
12
+ });
7
13
  /**
8
14
  * Returns the currently configured language, or the browser language as a fallback.
9
15
  * @public
@@ -29,7 +35,9 @@ const setLanguage = async (language) => {
29
35
  }
30
36
  curLanguage = language;
31
37
  await fireLanguageChange(language);
32
- await reRenderAllUI5Elements({ languageAware: true });
38
+ if (isBooted()) {
39
+ await reRenderAllUI5Elements({ languageAware: true });
40
+ }
33
41
  };
34
42
  /**
35
43
  * Returns the default languague.
@@ -45,7 +53,7 @@ const getDefaultLanguage = () => {
45
53
  /**
46
54
  * Defines if the default language, that is inlined, should be
47
55
  * fetched over the network instead of using the inlined one.
48
- * <b>Note:</b> By default the language will not be fetched.
56
+ * **Note:** By default the language will not be fetched.
49
57
  *
50
58
  * @public
51
59
  * @param {boolean} fetchDefaultLang
@@ -60,7 +68,7 @@ const setFetchDefaultLanguage = (fetchDefaultLang) => {
60
68
  */
61
69
  const getFetchDefaultLanguage = () => {
62
70
  if (fetchDefaultLanguage === undefined) {
63
- setFetchDefaultLanguage(getConfiguredFetchDefaultLanguage());
71
+ fetchDefaultLanguage = getConfiguredFetchDefaultLanguage();
64
72
  }
65
73
  return fetchDefaultLanguage;
66
74
  };
@@ -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;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"]}
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;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,WAA+B,CAAC;AACpC,IAAI,oBAAyC,CAAC;AAE9C,wBAAwB,CAAC,GAAG,EAAE;IAC7B,WAAW,GAAG,SAAS,CAAC;IACxB,oBAAoB,GAAG,SAAS,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC/B,WAAW,GAAG,qBAAqB,EAAE,CAAC;IACvC,CAAC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,KAAK,EAAE,QAAgB,EAAiB,EAAE;IAC7D,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,WAAW,GAAG,QAAQ,CAAC;IAEvB,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,QAAQ,EAAE,EAAE,CAAC;QAChB,MAAM,sBAAsB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACF,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,CAAC;QACxC,oBAAoB,GAAG,iCAAiC,EAAE,CAAC;IAC5D,CAAC;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\";\nimport { isBooted } from \"../Boot.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet curLanguage: string | undefined;\nlet fetchDefaultLanguage: boolean | undefined;\n\nattachConfigurationReset(() => {\n\tcurLanguage = undefined;\n\tfetchDefaultLanguage = undefined;\n});\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\tif (isBooted()) {\n\t\tawait reRenderAllUI5Elements({ languageAware: true });\n\t}\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 * **Note:** 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\tfetchDefaultLanguage = getConfiguredFetchDefaultLanguage();\n\t}\n\n\treturn fetchDefaultLanguage;\n};\n\nexport {\n\tgetLanguage,\n\tsetLanguage,\n\tgetDefaultLanguage,\n\tsetFetchDefaultLanguage,\n\tgetFetchDefaultLanguage,\n};\n"]}
@@ -1,10 +1,14 @@
1
1
  import { getNoConflict as getConfiguredNoConflict } from "../InitialConfiguration.js";
2
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
2
3
  // Fire these events even with noConflict: true
3
4
  const excludeList = [
4
5
  "value-changed",
5
6
  "click",
6
7
  ];
7
8
  let noConflict;
9
+ attachConfigurationReset(() => {
10
+ noConflict = undefined;
11
+ });
8
12
  const shouldFireOriginalEvent = (eventName) => {
9
13
  return excludeList.includes(eventName);
10
14
  };
@@ -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;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
+ {"version":3,"file":"NoConflict.js","sourceRoot":"","sources":["../../src/config/NoConflict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,+CAA+C;AAC/C,MAAM,WAAW,GAAG;IACnB,eAAe;IACf,OAAO;CACP,CAAC;AAIF,IAAI,UAAsC,CAAC;AAE3C,wBAAwB,CAAC,GAAG,EAAE;IAC7B,UAAU,GAAG,SAAS,CAAC;AACxB,CAAC,CAAC,CAAC;AAEH,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,CAAC;QAC9B,UAAU,GAAG,uBAAuB,EAAE,CAAC;IACxC,CAAC;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,CAAC;QACxC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,8BAA8B;IAC9B,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACb,CAAC;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\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.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 | undefined;\n\nattachConfigurationReset(() => {\n\tnoConflict = undefined;\n});\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"]}
@@ -28,11 +28,12 @@ declare const getDefaultTheme: () => string;
28
28
  */
29
29
  declare const isTheme: (theme: string) => boolean;
30
30
  /**
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.
31
+ * Returns if the currently set theme is part of legacy theme families ("sap_fiori_3").
32
+ * **Note**: in addition, the method checks the base theme of a custom theme, built via the ThemeDesigner.
33
33
  *
34
34
  * @private
35
35
  * @returns { boolean }
36
36
  */
37
37
  declare const isLegacyThemeFamily: () => boolean;
38
- export { getTheme, setTheme, isTheme, isLegacyThemeFamily, getDefaultTheme, };
38
+ declare const isLegacyThemeFamilyAsync: () => Promise<boolean>;
39
+ export { getTheme, setTheme, isTheme, isLegacyThemeFamily, isLegacyThemeFamilyAsync, getDefaultTheme, };
@@ -3,7 +3,12 @@ import { reRenderAllUI5Elements } from "../Render.js";
3
3
  import applyTheme from "../theming/applyTheme.js";
4
4
  import getThemeDesignerTheme from "../theming/getThemeDesignerTheme.js";
5
5
  import { DEFAULT_THEME, SUPPORTED_THEMES } from "../generated/AssetParameters.js";
6
+ import { boot, isBooted } from "../Boot.js";
7
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
6
8
  let curTheme;
9
+ attachConfigurationReset(() => {
10
+ curTheme = undefined;
11
+ });
7
12
  /**
8
13
  * Returns the current theme.
9
14
  * @public
@@ -26,9 +31,11 @@ const setTheme = async (theme) => {
26
31
  return;
27
32
  }
28
33
  curTheme = theme;
29
- // Update CSS Custom Properties
30
- await applyTheme(curTheme);
31
- await reRenderAllUI5Elements({ themeAware: true });
34
+ if (isBooted()) {
35
+ // Update CSS Custom Properties
36
+ await applyTheme(curTheme);
37
+ await reRenderAllUI5Elements({ themeAware: true });
38
+ }
32
39
  };
33
40
  /**
34
41
  * Returns the default theme.
@@ -48,12 +55,11 @@ const getDefaultTheme = () => {
48
55
  * @returns {boolean}
49
56
  */
50
57
  const isTheme = (theme) => {
51
- const currentTheme = getTheme();
52
- return currentTheme === theme || currentTheme === `${theme}_exp`;
58
+ return getTheme() === theme;
53
59
  };
54
60
  /**
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.
61
+ * Returns if the currently set theme is part of legacy theme families ("sap_fiori_3").
62
+ * **Note**: in addition, the method checks the base theme of a custom theme, built via the ThemeDesigner.
57
63
  *
58
64
  * @private
59
65
  * @returns { boolean }
@@ -65,6 +71,10 @@ const isLegacyThemeFamily = () => {
65
71
  }
66
72
  return !currentTheme.startsWith("sap_horizon");
67
73
  };
74
+ const isLegacyThemeFamilyAsync = async () => {
75
+ await boot();
76
+ return isLegacyThemeFamily();
77
+ };
68
78
  const isKnownTheme = (theme) => SUPPORTED_THEMES.includes(theme);
69
- export { getTheme, setTheme, isTheme, isLegacyThemeFamily, getDefaultTheme, };
79
+ export { getTheme, setTheme, isTheme, isLegacyThemeFamily, isLegacyThemeFamilyAsync, getDefaultTheme, };
70
80
  //# 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;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"]}
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;AAClF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,QAA4B,CAAC;AAEjC,wBAAwB,CAAC,GAAG,EAAE;IAC7B,QAAQ,GAAG,SAAS,CAAC;AACtB,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,QAAQ,GAAG,GAAW,EAAE;IAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACjC,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAa,EAAiB,EAAE;IACvD,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QACxB,OAAO;IACR,CAAC;IAED,QAAQ,GAAG,KAAK,CAAC;IAEjB,IAAI,QAAQ,EAAE,EAAE,CAAC;QAChB,+BAA+B;QAC/B,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3B,MAAM,sBAAsB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,CAAC;AACF,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,OAAO,QAAQ,EAAE,KAAK,KAAK,CAAC;AAC7B,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,CAAC;QACjC,OAAO,CAAC,qBAAqB,EAAE,EAAE,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,KAAK,IAAI,EAAE;IAC3C,MAAM,IAAI,EAAE,CAAC;IACb,OAAO,mBAAmB,EAAE,CAAC;AAC9B,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,wBAAwB,EACxB,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\";\nimport { boot, isBooted } from \"../Boot.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet curTheme: string | undefined;\n\nattachConfigurationReset(() => {\n\tcurTheme = undefined;\n});\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\tif (isBooted()) {\n\t\t// Update CSS Custom Properties\n\t\tawait applyTheme(curTheme);\n\t\tawait reRenderAllUI5Elements({ themeAware: true });\n\t}\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\treturn getTheme() === theme;\n};\n\n/**\n * Returns if the currently set theme is part of legacy theme families (\"sap_fiori_3\").\n * **Note**: 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 isLegacyThemeFamilyAsync = async () => {\n\tawait boot();\n\treturn isLegacyThemeFamily();\n};\n\nconst isKnownTheme = (theme: string) => SUPPORTED_THEMES.includes(theme);\n\nexport {\n\tgetTheme,\n\tsetTheme,\n\tisTheme,\n\tisLegacyThemeFamily,\n\tisLegacyThemeFamilyAsync,\n\tgetDefaultTheme,\n};\n"]}
@@ -0,0 +1,27 @@
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
+ * **Note:** 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
+ * **Note:** Certain security restrictions will apply before fetching the theme assets.
17
+ * Absolute URLs to a different origin than the current page will result in using the current page as an origin.
18
+ * 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.
19
+ *
20
+ * @public
21
+ * @since 1.14.0
22
+ * @param { string } themeRoot the new theme root
23
+ * @returns { Promise<void> }
24
+ */
25
+ declare const setThemeRoot: (themeRoot: string) => Promise<void> | undefined;
26
+ declare const attachCustomThemeStylesToHead: (theme: string) => Promise<void>;
27
+ export { getThemeRoot, setThemeRoot, attachCustomThemeStylesToHead, };
@@ -0,0 +1,61 @@
1
+ import createLinkInHead from "../util/createLinkInHead.js";
2
+ import validateThemeRoot from "../validateThemeRoot.js";
3
+ import { getThemeRoot as getConfiguredThemeRoot } from "../InitialConfiguration.js";
4
+ import { getTheme } from "./Theme.js";
5
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
6
+ let currThemeRoot;
7
+ attachConfigurationReset(() => {
8
+ currThemeRoot = undefined;
9
+ });
10
+ /**
11
+ * Returns the current theme root.
12
+ *
13
+ * @public
14
+ * @since 1.14.0
15
+ * @returns { string } the current theme root
16
+ */
17
+ const getThemeRoot = () => {
18
+ if (currThemeRoot === undefined) {
19
+ currThemeRoot = getConfiguredThemeRoot();
20
+ }
21
+ return currThemeRoot;
22
+ };
23
+ /**
24
+ * Sets theme root for the current theme.
25
+ * When set, the framework will validate the theme root and fetch the theme styles (CSS variables) from this location.
26
+ *
27
+ * **Note:** The feature is specific to custom themes, created with the `UI Theme Designer`.
28
+ * The provided theme root is used only as a base to construct the actual location of the theme styles: `{themeRoot}/.../css_variables.css`.
29
+ *
30
+ * **Note:** Certain security restrictions will apply before fetching the theme assets.
31
+ * Absolute URLs to a different origin than the current page will result in using the current page as an origin.
32
+ * 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.
33
+ *
34
+ * @public
35
+ * @since 1.14.0
36
+ * @param { string } themeRoot the new theme root
37
+ * @returns { Promise<void> }
38
+ */
39
+ const setThemeRoot = (themeRoot) => {
40
+ if (currThemeRoot === themeRoot) {
41
+ return;
42
+ }
43
+ currThemeRoot = themeRoot;
44
+ if (!validateThemeRoot(themeRoot)) {
45
+ console.warn(`The ${themeRoot} is not valid. Check the allowed origins as suggested in the "setThemeRoot" description.`); // eslint-disable-line
46
+ return;
47
+ }
48
+ return attachCustomThemeStylesToHead(getTheme());
49
+ };
50
+ const formatThemeLink = (theme) => {
51
+ return `${getThemeRoot()}Base/baseLib/${theme}/css_variables.css`; // theme root is always set at this point.
52
+ };
53
+ const attachCustomThemeStylesToHead = async (theme) => {
54
+ const link = document.querySelector(`[sap-ui-webcomponents-theme="${theme}"]`);
55
+ if (link) {
56
+ document.head.removeChild(link);
57
+ }
58
+ await createLinkInHead(formatThemeLink(theme), { "sap-ui-webcomponents-theme": theme });
59
+ };
60
+ export { getThemeRoot, setThemeRoot, attachCustomThemeStylesToHead, };
61
+ //# sourceMappingURL=ThemeRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeRoot.js","sourceRoot":"","sources":["../../src/config/ThemeRoot.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,6BAA6B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,IAAI,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,aAAiC,CAAC;AAEtC,wBAAwB,CAAC,GAAG,EAAE;IAC7B,aAAa,GAAG,SAAS,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,GAAuB,EAAE;IAC7C,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACjC,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC1C,CAAC;IAED,OAAO,aAAa,CAAC;AACtB,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,YAAY,GAAG,CAAC,SAAiB,EAA6B,EAAE;IACrE,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO;IACR,CAAC;IAED,aAAa,GAAG,SAAS,CAAC;IAE1B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,OAAO,SAAS,0FAA0F,CAAC,CAAC,CAAC,sBAAsB;QAChJ,OAAO;IACR,CAAC;IAED,OAAO,6BAA6B,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE;IACzC,OAAO,GAAG,YAAY,EAAG,gBAAgB,KAAK,oBAAoB,CAAC,CAAC,0CAA0C;AAC/G,CAAC,CAAC;AAEF,MAAM,6BAA6B,GAAG,KAAK,EAAE,KAAa,EAAiB,EAAE;IAC5E,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,gCAAgC,KAAK,IAAI,CAAC,CAAC;IAE/E,IAAI,IAAI,EAAE,CAAC;QACV,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,gBAAgB,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,4BAA4B,EAAE,KAAK,EAAE,CAAC,CAAC;AACzF,CAAC,CAAC;AAEF,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,6BAA6B,GAC7B,CAAC","sourcesContent":["import createLinkInHead from \"../util/createLinkInHead.js\";\nimport validateThemeRoot from \"../validateThemeRoot.js\";\nimport { getThemeRoot as getConfiguredThemeRoot } from \"../InitialConfiguration.js\";\nimport { getTheme } from \"./Theme.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet currThemeRoot: string | undefined;\n\nattachConfigurationReset(() => {\n\tcurrThemeRoot = undefined;\n});\n\n/**\n * Returns the current theme root.\n *\n * @public\n * @since 1.14.0\n * @returns { string } the current theme root\n */\nconst getThemeRoot = (): string | undefined => {\n\tif (currThemeRoot === undefined) {\n\t\tcurrThemeRoot = getConfiguredThemeRoot();\n\t}\n\n\treturn currThemeRoot;\n};\n\n/**\n * Sets theme root for the current theme.\n * When set, the framework will validate the theme root and fetch the theme styles (CSS variables) from this location.\n *\n * **Note:** The feature is specific to custom themes, created with the `UI Theme Designer`.\n * The provided theme root is used only as a base to construct the actual location of the theme styles: `{themeRoot}/.../css_variables.css`.\n *\n * **Note:** Certain security restrictions will apply before fetching the theme assets.\n * Absolute URLs to a different origin than the current page will result in using the current page as an origin.\n * 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.\n *\n * @public\n * @since 1.14.0\n * @param { string } themeRoot the new theme root\n * @returns { Promise<void> }\n */\nconst setThemeRoot = (themeRoot: string): Promise<void> | undefined => {\n\tif (currThemeRoot === themeRoot) {\n\t\treturn;\n\t}\n\n\tcurrThemeRoot = themeRoot;\n\n\tif (!validateThemeRoot(themeRoot)) {\n\t\tconsole.warn(`The ${themeRoot} is not valid. Check the allowed origins as suggested in the \"setThemeRoot\" description.`); // eslint-disable-line\n\t\treturn;\n\t}\n\n\treturn attachCustomThemeStylesToHead(getTheme());\n};\n\nconst formatThemeLink = (theme: string) => {\n\treturn `${getThemeRoot()!}Base/baseLib/${theme}/css_variables.css`; // theme root is always set at this point.\n};\n\nconst attachCustomThemeStylesToHead = async (theme: string): Promise<void> => {\n\tconst link = document.querySelector(`[sap-ui-webcomponents-theme=\"${theme}\"]`);\n\n\tif (link) {\n\t\tdocument.head.removeChild(link);\n\t}\n\n\tawait createLinkInHead(formatThemeLink(theme), { \"sap-ui-webcomponents-theme\": theme });\n};\n\nexport {\n\tgetThemeRoot,\n\tsetThemeRoot,\n\tattachCustomThemeStylesToHead,\n};\n"]}
@@ -7,7 +7,7 @@
7
7
  declare const getTimezone: () => string | undefined;
8
8
  /**
9
9
  * Sets the IANA timezone ID.
10
- * <b>For example:</b> "America/New_York", "Europe/London", "Australia/Sydney", "Asia/Bishkek", etc.
10
+ * **For example:** "America/New_York", "Europe/London", "Australia/Sydney", "Asia/Bishkek", etc.
11
11
  *>
12
12
  * @param {string} timezone
13
13
  * @private
@@ -1,5 +1,9 @@
1
1
  import { getTimezone as getConfiguredTimezone } from "../InitialConfiguration.js";
2
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
2
3
  let currTimezone;
4
+ attachConfigurationReset(() => {
5
+ currTimezone = undefined;
6
+ });
3
7
  /**
4
8
  * Returns the configured IANA timezone ID.
5
9
  *
@@ -14,7 +18,7 @@ const getTimezone = () => {
14
18
  };
15
19
  /**
16
20
  * Sets the IANA timezone ID.
17
- * <b>For example:</b> "America/New_York", "Europe/London", "Australia/Sydney", "Asia/Bishkek", etc.
21
+ * **For example:** "America/New_York", "Europe/London", "Australia/Sydney", "Asia/Bishkek", etc.
18
22
  *>
19
23
  * @param {string} timezone
20
24
  * @private
@@ -1 +1 @@
1
- {"version":3,"file":"Timezone.js","sourceRoot":"","sources":["../../src/config/Timezone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAElF,IAAI,YAAgC,CAAC;AAErC;;;;;GAKG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,YAAY,KAAK,SAAS,EAAE;QAC/B,YAAY,GAAG,qBAAqB,EAAE,CAAC;KACvC;IACD,OAAO,YAAY,CAAC;AACrB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,EAAE;IACxC,IAAI,YAAY,KAAK,QAAQ,EAAE;QAC9B,OAAO;KACP;IAED,YAAY,GAAG,QAAQ,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,WAAW,GACX,CAAC","sourcesContent":["import { getTimezone as getConfiguredTimezone } from \"../InitialConfiguration.js\";\n\nlet currTimezone: string | undefined;\n\n/**\n * Returns the configured IANA timezone ID.\n *\n * @private\n * @returns {string}\n */\nconst getTimezone = (): string | undefined => {\n\tif (currTimezone === undefined) {\n\t\tcurrTimezone = getConfiguredTimezone();\n\t}\n\treturn currTimezone;\n};\n\n/**\n * Sets the IANA timezone ID.\n * <b>For example:</b> \"America/New_York\", \"Europe/London\", \"Australia/Sydney\", \"Asia/Bishkek\", etc.\n *>\n * @param {string} timezone\n * @private\n * @returns { Promise<void> }\n */\nconst setTimezone = (timezone: string) => {\n\tif (currTimezone === timezone) {\n\t\treturn;\n\t}\n\n\tcurrTimezone = timezone;\n};\n\nexport {\n\tgetTimezone,\n\tsetTimezone,\n};\n"]}
1
+ {"version":3,"file":"Timezone.js","sourceRoot":"","sources":["../../src/config/Timezone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,YAAgC,CAAC;AAErC,wBAAwB,CAAC,GAAG,EAAE;IAC7B,YAAY,GAAG,SAAS,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAChC,YAAY,GAAG,qBAAqB,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,YAAY,CAAC;AACrB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,EAAE;IACxC,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO;IACR,CAAC;IAED,YAAY,GAAG,QAAQ,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,WAAW,GACX,CAAC","sourcesContent":["import { getTimezone as getConfiguredTimezone } from \"../InitialConfiguration.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet currTimezone: string | undefined;\n\nattachConfigurationReset(() => {\n\tcurrTimezone = undefined;\n});\n\n/**\n * Returns the configured IANA timezone ID.\n *\n * @private\n * @returns {string}\n */\nconst getTimezone = (): string | undefined => {\n\tif (currTimezone === undefined) {\n\t\tcurrTimezone = getConfiguredTimezone();\n\t}\n\treturn currTimezone;\n};\n\n/**\n * Sets the IANA timezone ID.\n * **For example:** \"America/New_York\", \"Europe/London\", \"Australia/Sydney\", \"Asia/Bishkek\", etc.\n *>\n * @param {string} timezone\n * @private\n * @returns { Promise<void> }\n */\nconst setTimezone = (timezone: string) => {\n\tif (currTimezone === timezone) {\n\t\treturn;\n\t}\n\n\tcurrTimezone = timezone;\n};\n\nexport {\n\tgetTimezone,\n\tsetTimezone,\n};\n"]}