@ui5/webcomponents-base 0.0.0-bf8366eb6 → 0.0.0-c143e338b

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 (798) hide show
  1. package/CHANGELOG.md +1064 -0
  2. package/LICENSE.txt +201 -0
  3. package/README.md +7 -10
  4. package/cypress.config.js +3 -0
  5. package/dist/.tsbuildinfobuild +1 -0
  6. package/dist/Assets-fetch.d.ts +1 -0
  7. package/dist/Assets-fetch.js +3 -0
  8. package/dist/Assets-fetch.js.map +1 -0
  9. package/dist/Assets-node.d.ts +12 -0
  10. package/dist/Assets-node.js +14 -0
  11. package/dist/Assets-node.js.map +1 -0
  12. package/dist/Assets.d.ts +1 -0
  13. package/dist/Assets.js +3 -0
  14. package/dist/Assets.js.map +1 -0
  15. package/dist/Boot.js +5 -1
  16. package/dist/Boot.js.map +1 -1
  17. package/dist/CustomElementsRegistry.d.ts +2 -1
  18. package/dist/CustomElementsRegistry.js +5 -2
  19. package/dist/CustomElementsRegistry.js.map +1 -1
  20. package/dist/CustomElementsScopeUtils.d.ts +4 -2
  21. package/dist/CustomElementsScopeUtils.js +8 -1
  22. package/dist/CustomElementsScopeUtils.js.map +1 -1
  23. package/dist/DOMObserver.js.map +1 -1
  24. package/dist/Device.d.ts +16 -1
  25. package/dist/Device.js +6 -3
  26. package/dist/Device.js.map +1 -1
  27. package/dist/DragAndDrop.d.ts +2 -0
  28. package/dist/DragAndDrop.js +5 -0
  29. package/dist/DragAndDrop.js.map +1 -0
  30. package/dist/EventProvider.js.map +1 -1
  31. package/dist/FontFace.js +6 -9
  32. package/dist/FontFace.js.map +1 -1
  33. package/dist/IgnoreCustomElements.js.map +1 -1
  34. package/dist/InitialConfiguration.d.ts +9 -2
  35. package/dist/InitialConfiguration.js +33 -4
  36. package/dist/InitialConfiguration.js.map +1 -1
  37. package/dist/Keys.d.ts +5 -1
  38. package/dist/Keys.js +5 -1
  39. package/dist/Keys.js.map +1 -1
  40. package/dist/Location.d.ts +11 -0
  41. package/dist/Location.js +49 -0
  42. package/dist/Location.js.map +1 -0
  43. package/dist/ManagedStyles.d.ts +4 -6
  44. package/dist/ManagedStyles.js +6 -16
  45. package/dist/ManagedStyles.js.map +1 -1
  46. package/dist/MediaRange.js.map +1 -1
  47. package/dist/PropertiesFileFormat.js.map +1 -1
  48. package/dist/Render.js.map +1 -1
  49. package/dist/RenderQueue.js.map +1 -1
  50. package/dist/Runtimes.js +11 -0
  51. package/dist/Runtimes.js.map +1 -1
  52. package/dist/ScrollbarStyles.d.ts +2 -0
  53. package/dist/ScrollbarStyles.js +9 -0
  54. package/dist/ScrollbarStyles.js.map +1 -0
  55. package/dist/SystemCSSVars.js.map +1 -1
  56. package/dist/UI5Element.d.ts +81 -32
  57. package/dist/UI5Element.js +259 -156
  58. package/dist/UI5Element.js.map +1 -1
  59. package/dist/UI5ElementMetadata.d.ts +25 -16
  60. package/dist/UI5ElementMetadata.js +15 -71
  61. package/dist/UI5ElementMetadata.js.map +1 -1
  62. package/dist/animations/AnimationQueue.js.map +1 -1
  63. package/dist/animations/animate.js.map +1 -1
  64. package/dist/animations/slideUp.js.map +1 -1
  65. package/dist/asset-registries/Icons.d.ts +43 -9
  66. package/dist/asset-registries/Icons.js +51 -8
  67. package/dist/asset-registries/Icons.js.map +1 -1
  68. package/dist/asset-registries/Illustrations.d.ts +133 -8
  69. package/dist/asset-registries/Illustrations.js +82 -1
  70. package/dist/asset-registries/Illustrations.js.map +1 -1
  71. package/dist/asset-registries/LocaleData.js +2 -1
  72. package/dist/asset-registries/LocaleData.js.map +1 -1
  73. package/dist/asset-registries/Themes.d.ts +3 -6
  74. package/dist/asset-registries/Themes.js +1 -2
  75. package/dist/asset-registries/Themes.js.map +1 -1
  76. package/dist/asset-registries/i18n.js.map +1 -1
  77. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -1
  78. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -1
  79. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -1
  80. package/dist/config/AnimationMode.js +4 -0
  81. package/dist/config/AnimationMode.js.map +1 -1
  82. package/dist/config/CalendarType.js +5 -0
  83. package/dist/config/CalendarType.js.map +1 -1
  84. package/dist/config/ConfigurationReset.d.ts +4 -0
  85. package/dist/config/ConfigurationReset.js +11 -0
  86. package/dist/config/ConfigurationReset.js.map +1 -0
  87. package/dist/config/Fonts.d.ts +16 -0
  88. package/dist/config/Fonts.js +30 -0
  89. package/dist/config/Fonts.js.map +1 -0
  90. package/dist/config/FormatSettings.js +4 -0
  91. package/dist/config/FormatSettings.js.map +1 -1
  92. package/dist/config/Language.d.ts +2 -1
  93. package/dist/config/Language.js +19 -3
  94. package/dist/config/Language.js.map +1 -1
  95. package/dist/config/NoConflict.js +4 -0
  96. package/dist/config/NoConflict.js.map +1 -1
  97. package/dist/config/Theme.js +5 -2
  98. package/dist/config/Theme.js.map +1 -1
  99. package/dist/config/ThemeRoot.d.ts +3 -1
  100. package/dist/config/ThemeRoot.js +7 -1
  101. package/dist/config/ThemeRoot.js.map +1 -1
  102. package/dist/config/Timezone.js +4 -0
  103. package/dist/config/Timezone.js.map +1 -1
  104. package/dist/config/Tooltips.d.ts +19 -0
  105. package/dist/config/Tooltips.js +29 -0
  106. package/dist/config/Tooltips.js.map +1 -0
  107. package/dist/connectToComponent.js.map +1 -1
  108. package/dist/converters/DOMReference.d.ts +5 -0
  109. package/dist/converters/DOMReference.js +13 -0
  110. package/dist/converters/DOMReference.js.map +1 -0
  111. package/dist/css/MultipleDragGhost.css +17 -0
  112. package/dist/css/OpenUI5PopupStyles.css +5 -0
  113. package/dist/css/ScrollbarStyles.css +3 -0
  114. package/dist/custom-elements-internal.json +2869 -0
  115. package/dist/custom-elements.json +2566 -0
  116. package/dist/decorators/bound.d.ts +1 -0
  117. package/dist/decorators/bound.js +34 -0
  118. package/dist/decorators/bound.js.map +1 -0
  119. package/dist/decorators/customElement.d.ts +40 -0
  120. package/dist/decorators/customElement.js +4 -1
  121. package/dist/decorators/customElement.js.map +1 -1
  122. package/dist/decorators/event-strict.d.ts +15 -0
  123. package/dist/decorators/event-strict.js +26 -0
  124. package/dist/decorators/event-strict.js.map +1 -0
  125. package/dist/decorators/event.d.ts +4 -1
  126. package/dist/decorators/event.js +3 -0
  127. package/dist/decorators/event.js.map +1 -1
  128. package/dist/decorators/i18n.d.ts +17 -0
  129. package/dist/decorators/i18n.js +32 -0
  130. package/dist/decorators/i18n.js.map +1 -0
  131. package/dist/decorators/property.d.ts +1 -1
  132. package/dist/decorators/property.js +1 -1
  133. package/dist/decorators/property.js.map +1 -1
  134. package/dist/decorators/query.d.ts +25 -0
  135. package/dist/decorators/query.js +32 -0
  136. package/dist/decorators/query.js.map +1 -0
  137. package/dist/decorators/queryAll.d.ts +27 -0
  138. package/dist/decorators/queryAll.js +34 -0
  139. package/dist/decorators/queryAll.js.map +1 -0
  140. package/dist/decorators/slot.d.ts +1 -1
  141. package/dist/decorators/slot.js.map +1 -1
  142. package/dist/decorators.d.ts +4 -1
  143. package/dist/decorators.js +4 -1
  144. package/dist/decorators.js.map +1 -1
  145. package/dist/delegate/ItemNavigation.d.ts +1 -1
  146. package/dist/delegate/ItemNavigation.js.map +1 -1
  147. package/dist/delegate/ResizeHandler.js.map +1 -1
  148. package/dist/delegate/ScrollEnablement.js.map +1 -1
  149. package/dist/features/F6Navigation.d.ts +4 -3
  150. package/dist/features/F6Navigation.js +62 -19
  151. package/dist/features/F6Navigation.js.map +1 -1
  152. package/dist/features/InputElementsFormSupport.d.ts +7 -10
  153. package/dist/features/InputElementsFormSupport.js +2 -3
  154. package/dist/features/InputElementsFormSupport.js.map +1 -1
  155. package/dist/features/LegacyDateFormats.js.map +1 -1
  156. package/dist/features/OpenUI5Enablement.d.ts +2 -2
  157. package/dist/features/OpenUI5Enablement.js.map +1 -1
  158. package/dist/features/OpenUI5Support.d.ts +6 -1
  159. package/dist/features/OpenUI5Support.js +45 -29
  160. package/dist/features/OpenUI5Support.js.map +1 -1
  161. package/dist/features/insertOpenUI5PopupStyles.d.ts +2 -0
  162. package/dist/features/insertOpenUI5PopupStyles.js +9 -0
  163. package/dist/features/insertOpenUI5PopupStyles.js.map +1 -0
  164. package/dist/features/patchPatcher.js.map +1 -1
  165. package/dist/features/patchPopup.d.ts +19 -5
  166. package/dist/features/patchPopup.js +75 -5
  167. package/dist/features/patchPopup.js.map +1 -1
  168. package/dist/generated/AssetParameters.js +1 -1
  169. package/dist/generated/AssetParameters.js.map +1 -1
  170. package/dist/generated/VersionInfo.js +5 -5
  171. package/dist/generated/VersionInfo.js.map +1 -1
  172. package/dist/generated/assets/i18n/messagebundle_en.json +1 -0
  173. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  174. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  175. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  176. package/dist/generated/css/BusyIndicator.css.d.ts +2 -3
  177. package/dist/generated/css/BusyIndicator.css.js +1 -6
  178. package/dist/generated/css/BusyIndicator.css.js.map +1 -1
  179. package/dist/generated/css/FontFace.css.d.ts +2 -3
  180. package/dist/generated/css/FontFace.css.js +36 -6
  181. package/dist/generated/css/FontFace.css.js.map +1 -1
  182. package/dist/generated/css/MultipleDragGhost.css.d.ts +2 -0
  183. package/dist/generated/css/MultipleDragGhost.css.js +2 -0
  184. package/dist/generated/css/MultipleDragGhost.css.js.map +1 -0
  185. package/dist/generated/css/OpenUI5PopupStyles.css.d.ts +2 -0
  186. package/dist/generated/css/OpenUI5PopupStyles.css.js +2 -0
  187. package/dist/generated/css/OpenUI5PopupStyles.css.js.map +1 -0
  188. package/dist/generated/css/ScrollbarStyles.css.d.ts +2 -0
  189. package/dist/generated/css/ScrollbarStyles.css.js +2 -0
  190. package/dist/generated/css/ScrollbarStyles.css.js.map +1 -0
  191. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -3
  192. package/dist/generated/css/SystemCSSVars.css.js +1 -6
  193. package/dist/generated/css/SystemCSSVars.css.js.map +1 -1
  194. package/dist/generated/i18n/i18n-defaults.d.ts +3 -0
  195. package/dist/generated/i18n/i18n-defaults.js +3 -0
  196. package/dist/generated/i18n/i18n-defaults.js.map +1 -0
  197. package/dist/generated/json-imports/i18n-fetch.d.ts +1 -0
  198. package/dist/generated/json-imports/i18n-fetch.js +2 -0
  199. package/dist/generated/json-imports/i18n-fetch.js.map +1 -0
  200. package/dist/generated/json-imports/i18n-node.d.ts +1 -0
  201. package/dist/generated/json-imports/i18n-node.js +2 -0
  202. package/dist/generated/json-imports/i18n-node.js.map +1 -0
  203. package/dist/generated/json-imports/i18n.d.ts +1 -0
  204. package/dist/generated/json-imports/i18n.js +2 -0
  205. package/dist/generated/json-imports/i18n.js.map +1 -0
  206. package/dist/getSharedResource.js.map +1 -1
  207. package/dist/i18nBundle.js.map +1 -1
  208. package/dist/index.d.ts +49 -0
  209. package/dist/index.js +91 -0
  210. package/dist/index.js.map +1 -0
  211. package/dist/jsx-dev-runtime.d.ts +4 -0
  212. package/dist/jsx-dev-runtime.js +43 -0
  213. package/dist/jsx-dev-runtime.js.map +1 -0
  214. package/dist/jsx-runtime.d.ts +51 -0
  215. package/dist/jsx-runtime.js +27 -0
  216. package/dist/jsx-runtime.js.map +1 -0
  217. package/dist/jsx-utils.d.ts +3 -0
  218. package/dist/jsx-utils.js +48 -0
  219. package/dist/jsx-utils.js.map +1 -0
  220. package/dist/locale/Locale.js.map +1 -1
  221. package/dist/locale/getEffectiveDir.js.map +1 -1
  222. package/dist/locale/getLocale.js.map +1 -1
  223. package/dist/locale/nextFallbackLocale.js +6 -2
  224. package/dist/locale/nextFallbackLocale.js.map +1 -1
  225. package/dist/locale/normalizeLocale.js.map +1 -1
  226. package/dist/prod/AssetRegistry.js +2 -0
  227. package/dist/prod/AssetRegistry.js.map +7 -0
  228. package/dist/prod/Assets-fetch.js +2 -0
  229. package/dist/prod/Assets-fetch.js.map +7 -0
  230. package/dist/prod/Assets-node.js +2 -0
  231. package/dist/prod/Assets-node.js.map +7 -0
  232. package/dist/prod/Assets.js +2 -0
  233. package/dist/prod/Assets.js.map +7 -0
  234. package/dist/prod/Boot.js +2 -0
  235. package/dist/prod/Boot.js.map +7 -0
  236. package/dist/prod/CustomElementsRegistry.js +10 -0
  237. package/dist/prod/CustomElementsRegistry.js.map +7 -0
  238. package/dist/prod/CustomElementsScope.js +2 -0
  239. package/dist/prod/CustomElementsScope.js.map +7 -0
  240. package/dist/prod/CustomElementsScopeUtils.js +2 -0
  241. package/dist/prod/CustomElementsScopeUtils.js.map +7 -0
  242. package/dist/prod/DOMObserver.js +2 -0
  243. package/dist/prod/DOMObserver.js.map +7 -0
  244. package/dist/prod/Device.js +2 -0
  245. package/dist/prod/Device.js.map +7 -0
  246. package/dist/prod/DragAndDrop.js +2 -0
  247. package/dist/prod/DragAndDrop.js.map +7 -0
  248. package/dist/prod/EventProvider.js +2 -0
  249. package/dist/prod/EventProvider.js.map +7 -0
  250. package/dist/prod/FeaturesRegistry.js +2 -0
  251. package/dist/prod/FeaturesRegistry.js.map +7 -0
  252. package/dist/prod/FontFace.js +2 -0
  253. package/dist/prod/FontFace.js.map +7 -0
  254. package/dist/prod/IgnoreCustomElements.js +2 -0
  255. package/dist/prod/IgnoreCustomElements.js.map +7 -0
  256. package/dist/prod/InitialConfiguration.js +2 -0
  257. package/dist/prod/InitialConfiguration.js.map +7 -0
  258. package/dist/prod/Keys.js +2 -0
  259. package/dist/prod/Keys.js.map +7 -0
  260. package/dist/prod/Location.js +2 -0
  261. package/dist/prod/Location.js.map +7 -0
  262. package/dist/prod/ManagedStyles.js +2 -0
  263. package/dist/prod/ManagedStyles.js.map +7 -0
  264. package/dist/prod/MediaRange.js +2 -0
  265. package/dist/prod/MediaRange.js.map +7 -0
  266. package/dist/prod/PropertiesFileFormat.js +3 -0
  267. package/dist/prod/PropertiesFileFormat.js.map +7 -0
  268. package/dist/prod/Render.js +2 -0
  269. package/dist/prod/Render.js.map +7 -0
  270. package/dist/prod/RenderQueue.js +2 -0
  271. package/dist/prod/RenderQueue.js.map +7 -0
  272. package/dist/prod/Runtimes.js +2 -0
  273. package/dist/prod/Runtimes.js.map +7 -0
  274. package/dist/prod/ScrollbarStyles.js +2 -0
  275. package/dist/prod/ScrollbarStyles.js.map +7 -0
  276. package/dist/prod/SystemCSSVars.js +2 -0
  277. package/dist/prod/SystemCSSVars.js.map +7 -0
  278. package/dist/prod/Theming.js +2 -0
  279. package/dist/prod/Theming.js.map +7 -0
  280. package/dist/prod/UI5Element.js +2 -0
  281. package/dist/prod/UI5Element.js.map +7 -0
  282. package/dist/prod/UI5ElementMetadata.js +2 -0
  283. package/dist/prod/UI5ElementMetadata.js.map +7 -0
  284. package/dist/prod/animations/AnimationQueue.js +2 -0
  285. package/dist/prod/animations/AnimationQueue.js.map +7 -0
  286. package/dist/prod/animations/animate.js +2 -0
  287. package/dist/prod/animations/animate.js.map +7 -0
  288. package/dist/prod/animations/scroll.js +2 -0
  289. package/dist/prod/animations/scroll.js.map +7 -0
  290. package/dist/prod/animations/slideDown.js +2 -0
  291. package/dist/prod/animations/slideDown.js.map +7 -0
  292. package/dist/prod/animations/slideUp.js +2 -0
  293. package/dist/prod/animations/slideUp.js.map +7 -0
  294. package/dist/prod/asset-registries/Icons.js +2 -0
  295. package/dist/prod/asset-registries/Icons.js.map +7 -0
  296. package/dist/prod/asset-registries/Illustrations.js +2 -0
  297. package/dist/prod/asset-registries/Illustrations.js.map +7 -0
  298. package/dist/prod/asset-registries/LocaleData.js +2 -0
  299. package/dist/prod/asset-registries/LocaleData.js.map +7 -0
  300. package/dist/prod/asset-registries/Themes.js +2 -0
  301. package/dist/prod/asset-registries/Themes.js.map +7 -0
  302. package/dist/prod/asset-registries/i18n.js +2 -0
  303. package/dist/prod/asset-registries/i18n.js.map +7 -0
  304. package/dist/prod/asset-registries/util/IconCollectionsAlias.js +2 -0
  305. package/dist/prod/asset-registries/util/IconCollectionsAlias.js.map +7 -0
  306. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js +2 -0
  307. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js.map +7 -0
  308. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js +2 -0
  309. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js.map +7 -0
  310. package/dist/prod/config/AnimationMode.js +2 -0
  311. package/dist/prod/config/AnimationMode.js.map +7 -0
  312. package/dist/prod/config/CalendarType.js +2 -0
  313. package/dist/prod/config/CalendarType.js.map +7 -0
  314. package/dist/prod/config/ConfigurationReset.js +2 -0
  315. package/dist/prod/config/ConfigurationReset.js.map +7 -0
  316. package/dist/prod/config/Fonts.js +2 -0
  317. package/dist/prod/config/Fonts.js.map +7 -0
  318. package/dist/prod/config/FormatSettings.js +2 -0
  319. package/dist/prod/config/FormatSettings.js.map +7 -0
  320. package/dist/prod/config/Icons.js +2 -0
  321. package/dist/prod/config/Icons.js.map +7 -0
  322. package/dist/prod/config/Language.js +2 -0
  323. package/dist/prod/config/Language.js.map +7 -0
  324. package/dist/prod/config/NoConflict.js +2 -0
  325. package/dist/prod/config/NoConflict.js.map +7 -0
  326. package/dist/prod/config/Theme.js +2 -0
  327. package/dist/prod/config/Theme.js.map +7 -0
  328. package/dist/prod/config/ThemeRoot.js +2 -0
  329. package/dist/prod/config/ThemeRoot.js.map +7 -0
  330. package/dist/prod/config/Timezone.js +2 -0
  331. package/dist/prod/config/Timezone.js.map +7 -0
  332. package/dist/prod/config/Tooltips.js +2 -0
  333. package/dist/prod/config/Tooltips.js.map +7 -0
  334. package/dist/prod/connectToComponent.js +2 -0
  335. package/dist/prod/connectToComponent.js.map +7 -0
  336. package/dist/prod/converters/DOMReference.js +2 -0
  337. package/dist/prod/converters/DOMReference.js.map +7 -0
  338. package/dist/prod/decorators/bound.js +2 -0
  339. package/dist/prod/decorators/bound.js.map +7 -0
  340. package/dist/prod/decorators/customElement.js +2 -0
  341. package/dist/prod/decorators/customElement.js.map +7 -0
  342. package/dist/prod/decorators/event-strict.js +2 -0
  343. package/dist/prod/decorators/event-strict.js.map +7 -0
  344. package/dist/prod/decorators/event.js +2 -0
  345. package/dist/prod/decorators/event.js.map +7 -0
  346. package/dist/prod/decorators/i18n.js +2 -0
  347. package/dist/prod/decorators/i18n.js.map +7 -0
  348. package/dist/prod/decorators/property.js +2 -0
  349. package/dist/prod/decorators/property.js.map +7 -0
  350. package/dist/prod/decorators/query.js +2 -0
  351. package/dist/prod/decorators/query.js.map +7 -0
  352. package/dist/prod/decorators/queryAll.js +2 -0
  353. package/dist/prod/decorators/queryAll.js.map +7 -0
  354. package/dist/prod/decorators/slot.js +2 -0
  355. package/dist/prod/decorators/slot.js.map +7 -0
  356. package/dist/prod/decorators.js +2 -0
  357. package/dist/prod/decorators.js.map +7 -0
  358. package/dist/prod/delegate/ItemNavigation.js +2 -0
  359. package/dist/prod/delegate/ItemNavigation.js.map +7 -0
  360. package/dist/prod/delegate/ResizeHandler.js +2 -0
  361. package/dist/prod/delegate/ResizeHandler.js.map +7 -0
  362. package/dist/prod/delegate/ScrollEnablement.js +2 -0
  363. package/dist/prod/delegate/ScrollEnablement.js.map +7 -0
  364. package/dist/prod/features/F6Navigation.js +2 -0
  365. package/dist/prod/features/F6Navigation.js.map +7 -0
  366. package/dist/prod/features/InputElementsFormSupport.js +2 -0
  367. package/dist/prod/features/InputElementsFormSupport.js.map +7 -0
  368. package/dist/prod/features/LegacyDateFormats.js +2 -0
  369. package/dist/prod/features/LegacyDateFormats.js.map +7 -0
  370. package/dist/prod/features/OpenUI5Element.js +2 -0
  371. package/dist/prod/features/OpenUI5Element.js.map +7 -0
  372. package/dist/prod/features/OpenUI5Enablement.js +21 -0
  373. package/dist/prod/features/OpenUI5Enablement.js.map +7 -0
  374. package/dist/prod/features/OpenUI5Support.js +2 -0
  375. package/dist/prod/features/OpenUI5Support.js.map +7 -0
  376. package/dist/prod/features/insertOpenUI5PopupStyles.js +2 -0
  377. package/dist/prod/features/insertOpenUI5PopupStyles.js.map +7 -0
  378. package/dist/prod/features/patchPatcher.js +2 -0
  379. package/dist/prod/features/patchPatcher.js.map +7 -0
  380. package/dist/prod/features/patchPopup.js +2 -0
  381. package/dist/prod/features/patchPopup.js.map +7 -0
  382. package/dist/prod/generated/AssetParameters.js +2 -0
  383. package/dist/prod/generated/AssetParameters.js.map +7 -0
  384. package/dist/prod/generated/VersionInfo.js +2 -0
  385. package/dist/prod/generated/VersionInfo.js.map +7 -0
  386. package/dist/prod/generated/assets/i18n/messagebundle_en.json +1 -0
  387. package/dist/prod/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  388. package/dist/prod/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  389. package/dist/prod/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  390. package/dist/prod/generated/css/BusyIndicator.css.js +2 -0
  391. package/dist/prod/generated/css/BusyIndicator.css.js.map +7 -0
  392. package/dist/prod/generated/css/FontFace.css.js +37 -0
  393. package/dist/prod/generated/css/FontFace.css.js.map +7 -0
  394. package/dist/prod/generated/css/MultipleDragGhost.css.js +2 -0
  395. package/dist/prod/generated/css/MultipleDragGhost.css.js.map +7 -0
  396. package/dist/prod/generated/css/OpenUI5PopupStyles.css.js +2 -0
  397. package/dist/prod/generated/css/OpenUI5PopupStyles.css.js.map +7 -0
  398. package/dist/prod/generated/css/ScrollbarStyles.css.js +2 -0
  399. package/dist/prod/generated/css/ScrollbarStyles.css.js.map +7 -0
  400. package/dist/prod/generated/css/SystemCSSVars.css.js +2 -0
  401. package/dist/prod/generated/css/SystemCSSVars.css.js.map +7 -0
  402. package/dist/prod/generated/i18n/i18n-defaults.js +2 -0
  403. package/dist/prod/generated/i18n/i18n-defaults.js.map +7 -0
  404. package/dist/prod/generated/json-imports/i18n-fetch.js +2 -0
  405. package/dist/prod/generated/json-imports/i18n-fetch.js.map +7 -0
  406. package/dist/prod/generated/json-imports/i18n-node.js +2 -0
  407. package/dist/prod/generated/json-imports/i18n-node.js.map +7 -0
  408. package/dist/prod/generated/json-imports/i18n.js +2 -0
  409. package/dist/prod/generated/json-imports/i18n.js.map +7 -0
  410. package/dist/prod/getSharedResource.js +2 -0
  411. package/dist/prod/getSharedResource.js.map +7 -0
  412. package/dist/prod/global.d.js +2 -0
  413. package/dist/prod/global.d.js.map +7 -0
  414. package/dist/prod/i18nBundle.js +2 -0
  415. package/dist/prod/i18nBundle.js.map +7 -0
  416. package/dist/prod/index.js +2 -0
  417. package/dist/prod/index.js.map +7 -0
  418. package/dist/prod/jsx-dev-runtime.js +2 -0
  419. package/dist/prod/jsx-dev-runtime.js.map +7 -0
  420. package/dist/prod/jsx-runtime.js +2 -0
  421. package/dist/prod/jsx-runtime.js.map +7 -0
  422. package/dist/prod/jsx-utils.js +2 -0
  423. package/dist/prod/jsx-utils.js.map +7 -0
  424. package/dist/prod/locale/Locale.js +2 -0
  425. package/dist/prod/locale/Locale.js.map +7 -0
  426. package/dist/prod/locale/RTLAwareRegistry.js +2 -0
  427. package/dist/prod/locale/RTLAwareRegistry.js.map +7 -0
  428. package/dist/prod/locale/applyDirection.js +2 -0
  429. package/dist/prod/locale/applyDirection.js.map +7 -0
  430. package/dist/prod/locale/directionChange.js +2 -0
  431. package/dist/prod/locale/directionChange.js.map +7 -0
  432. package/dist/prod/locale/getEffectiveDir.js +2 -0
  433. package/dist/prod/locale/getEffectiveDir.js.map +7 -0
  434. package/dist/prod/locale/getLocale.js +2 -0
  435. package/dist/prod/locale/getLocale.js.map +7 -0
  436. package/dist/prod/locale/languageChange.js +2 -0
  437. package/dist/prod/locale/languageChange.js.map +7 -0
  438. package/dist/prod/locale/nextFallbackLocale.js +2 -0
  439. package/dist/prod/locale/nextFallbackLocale.js.map +7 -0
  440. package/dist/prod/locale/normalizeLocale.js +2 -0
  441. package/dist/prod/locale/normalizeLocale.js.map +7 -0
  442. package/dist/prod/renderer/JsxRenderer.js +2 -0
  443. package/dist/prod/renderer/JsxRenderer.js.map +7 -0
  444. package/dist/prod/renderer/LitRenderer.js +2 -0
  445. package/dist/prod/renderer/LitRenderer.js.map +7 -0
  446. package/dist/prod/renderer/directives/style-map.js +6 -0
  447. package/dist/prod/renderer/directives/style-map.js.map +7 -0
  448. package/dist/prod/renderer/executeTemplate.js +2 -0
  449. package/dist/prod/renderer/executeTemplate.js.map +7 -0
  450. package/dist/prod/sap/base/Log.js +750 -0
  451. package/dist/prod/sap/base/assert.js +34 -0
  452. package/dist/prod/sap/base/config/MemoryConfigurationProvider.js +20 -0
  453. package/dist/prod/sap/base/security/URLListValidator.js +406 -0
  454. package/dist/prod/sap/base/security/encodeCSS.js +40 -0
  455. package/dist/prod/sap/base/security/encodeXML.js +53 -0
  456. package/dist/prod/sap/base/security/sanitizeHTML.js +38 -0
  457. package/dist/prod/sap/base/strings/toHex.js +33 -0
  458. package/dist/prod/sap/base/util/now.js +28 -0
  459. package/dist/prod/sap/base/util/uid.js +27 -0
  460. package/dist/prod/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  461. package/dist/prod/ssr-dom-shim.js +2 -0
  462. package/dist/prod/ssr-dom-shim.js.map +7 -0
  463. package/dist/prod/ssr-dom.js +2 -0
  464. package/dist/prod/ssr-dom.js.map +7 -0
  465. package/dist/prod/theming/CustomStyle.js +2 -0
  466. package/dist/prod/theming/CustomStyle.js.map +7 -0
  467. package/dist/prod/theming/ThemeLoaded.js +2 -0
  468. package/dist/prod/theming/ThemeLoaded.js.map +7 -0
  469. package/dist/prod/theming/ThemeRegistered.js +2 -0
  470. package/dist/prod/theming/ThemeRegistered.js.map +7 -0
  471. package/dist/prod/theming/applyTheme.js +2 -0
  472. package/dist/prod/theming/applyTheme.js.map +7 -0
  473. package/dist/prod/theming/getConstructableStyle.js +2 -0
  474. package/dist/prod/theming/getConstructableStyle.js.map +7 -0
  475. package/dist/prod/theming/getEffectiveStyle.js +2 -0
  476. package/dist/prod/theming/getEffectiveStyle.js.map +7 -0
  477. package/dist/prod/theming/getStylesString.js +2 -0
  478. package/dist/prod/theming/getStylesString.js.map +7 -0
  479. package/dist/prod/theming/getThemeDesignerTheme.js +2 -0
  480. package/dist/prod/theming/getThemeDesignerTheme.js.map +7 -0
  481. package/dist/prod/thirdparty/_merge.js +2 -0
  482. package/dist/prod/thirdparty/_merge.js.map +7 -0
  483. package/dist/prod/thirdparty/isPlainObject.js +2 -0
  484. package/dist/prod/thirdparty/isPlainObject.js.map +7 -0
  485. package/dist/prod/thirdparty/merge.js +2 -0
  486. package/dist/prod/thirdparty/merge.js.map +7 -0
  487. package/dist/prod/thirdparty/preact/jsx.d.js +2 -0
  488. package/dist/prod/thirdparty/preact/jsx.d.js.map +7 -0
  489. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js +2 -0
  490. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js.map +7 -0
  491. package/dist/prod/thirdparty/preact/jsxRuntime.module.js +1 -0
  492. package/dist/prod/thirdparty/preact/preact.module.d.js +2 -0
  493. package/dist/prod/thirdparty/preact/preact.module.d.js.map +7 -0
  494. package/dist/prod/thirdparty/preact/preact.module.js +1 -0
  495. package/dist/prod/types/AnimationMode.js +2 -0
  496. package/dist/prod/types/AnimationMode.js.map +7 -0
  497. package/dist/prod/types/CalendarType.js +2 -0
  498. package/dist/prod/types/CalendarType.js.map +7 -0
  499. package/dist/prod/types/InvisibleMessageMode.js +2 -0
  500. package/dist/prod/types/InvisibleMessageMode.js.map +7 -0
  501. package/dist/prod/types/ItemNavigationBehavior.js +2 -0
  502. package/dist/prod/types/ItemNavigationBehavior.js.map +7 -0
  503. package/dist/prod/types/MovePlacement.js +2 -0
  504. package/dist/prod/types/MovePlacement.js.map +7 -0
  505. package/dist/prod/types/NavigationMode.js +2 -0
  506. package/dist/prod/types/NavigationMode.js.map +7 -0
  507. package/dist/prod/types/Orientation.js +2 -0
  508. package/dist/prod/types/Orientation.js.map +7 -0
  509. package/dist/prod/types/SortOrder.js +2 -0
  510. package/dist/prod/types/SortOrder.js.map +7 -0
  511. package/dist/prod/types/ValueState.js +2 -0
  512. package/dist/prod/types/ValueState.js.map +7 -0
  513. package/dist/prod/types.js +2 -0
  514. package/dist/prod/types.js.map +7 -0
  515. package/dist/prod/updateShadowRoot.js +2 -0
  516. package/dist/prod/updateShadowRoot.js.map +7 -0
  517. package/dist/prod/util/AccessibilityTextsHelper.js +2 -0
  518. package/dist/prod/util/AccessibilityTextsHelper.js.map +7 -0
  519. package/dist/prod/util/Caret.js +2 -0
  520. package/dist/prod/util/Caret.js.map +7 -0
  521. package/dist/prod/util/ColorConversion.js +2 -0
  522. package/dist/prod/util/ColorConversion.js.map +7 -0
  523. package/dist/prod/util/FetchHelper.js +2 -0
  524. package/dist/prod/util/FetchHelper.js.map +7 -0
  525. package/dist/prod/util/FocusableElements.js +2 -0
  526. package/dist/prod/util/FocusableElements.js.map +7 -0
  527. package/dist/prod/util/HTMLSanitizer.js +2 -0
  528. package/dist/prod/util/HTMLSanitizer.js.map +7 -0
  529. package/dist/prod/util/InvisibleMessage.js +2 -0
  530. package/dist/prod/util/InvisibleMessage.js.map +7 -0
  531. package/dist/prod/util/PopupUtils.js +2 -0
  532. package/dist/prod/util/PopupUtils.js.map +7 -0
  533. package/dist/prod/util/SelectionAssistant.js +2 -0
  534. package/dist/prod/util/SelectionAssistant.js.map +7 -0
  535. package/dist/prod/util/SlotsHelper.js +2 -0
  536. package/dist/prod/util/SlotsHelper.js.map +7 -0
  537. package/dist/prod/util/StringHelper.js +2 -0
  538. package/dist/prod/util/StringHelper.js.map +7 -0
  539. package/dist/prod/util/TabbableElements.js +2 -0
  540. package/dist/prod/util/TabbableElements.js.map +7 -0
  541. package/dist/prod/util/arraysAreEqual.js +2 -0
  542. package/dist/prod/util/arraysAreEqual.js.map +7 -0
  543. package/dist/prod/util/clamp.js +2 -0
  544. package/dist/prod/util/clamp.js.map +7 -0
  545. package/dist/prod/util/createLinkInHead.js +2 -0
  546. package/dist/prod/util/createLinkInHead.js.map +7 -0
  547. package/dist/prod/util/debounce.js +2 -0
  548. package/dist/prod/util/debounce.js.map +7 -0
  549. package/dist/prod/util/detectNavigatorLanguage.js +2 -0
  550. package/dist/prod/util/detectNavigatorLanguage.js.map +7 -0
  551. package/dist/prod/util/dragAndDrop/DragRegistry.js +2 -0
  552. package/dist/prod/util/dragAndDrop/DragRegistry.js.map +7 -0
  553. package/dist/prod/util/dragAndDrop/findClosestPosition.js +2 -0
  554. package/dist/prod/util/dragAndDrop/findClosestPosition.js.map +7 -0
  555. package/dist/prod/util/dragAndDrop/handleDragOver.js +2 -0
  556. package/dist/prod/util/dragAndDrop/handleDragOver.js.map +7 -0
  557. package/dist/prod/util/dragAndDrop/handleDrop.js +2 -0
  558. package/dist/prod/util/dragAndDrop/handleDrop.js.map +7 -0
  559. package/dist/prod/util/dragAndDrop/longDragOverHandler.js +2 -0
  560. package/dist/prod/util/dragAndDrop/longDragOverHandler.js.map +7 -0
  561. package/dist/prod/util/escapeRegex.js +2 -0
  562. package/dist/prod/util/escapeRegex.js.map +7 -0
  563. package/dist/prod/util/fixSafariActiveState.js +2 -0
  564. package/dist/prod/util/fixSafariActiveState.js.map +7 -0
  565. package/dist/prod/util/formatMessage.js +2 -0
  566. package/dist/prod/util/formatMessage.js.map +7 -0
  567. package/dist/prod/util/generateHighlightedMarkup.js +2 -0
  568. package/dist/prod/util/generateHighlightedMarkup.js.map +7 -0
  569. package/dist/prod/util/getActiveElement.js +2 -0
  570. package/dist/prod/util/getActiveElement.js.map +7 -0
  571. package/dist/prod/util/getClassCopy.js +2 -0
  572. package/dist/prod/util/getClassCopy.js.map +7 -0
  573. package/dist/prod/util/getDesigntimePropertyAsArray.js +2 -0
  574. package/dist/prod/util/getDesigntimePropertyAsArray.js.map +7 -0
  575. package/dist/prod/util/getEffectiveContentDensity.js +2 -0
  576. package/dist/prod/util/getEffectiveContentDensity.js.map +7 -0
  577. package/dist/prod/util/getFastNavigationGroups.js +2 -0
  578. package/dist/prod/util/getFastNavigationGroups.js.map +7 -0
  579. package/dist/prod/util/getFileExtension.js +2 -0
  580. package/dist/prod/util/getFileExtension.js.map +7 -0
  581. package/dist/prod/util/getNormalizedTarget.js +2 -0
  582. package/dist/prod/util/getNormalizedTarget.js.map +7 -0
  583. package/dist/prod/util/getParentElement.js +2 -0
  584. package/dist/prod/util/getParentElement.js.map +7 -0
  585. package/dist/prod/util/getSingletonElementInstance.js +2 -0
  586. package/dist/prod/util/getSingletonElementInstance.js.map +7 -0
  587. package/dist/prod/util/hash2str.js +2 -0
  588. package/dist/prod/util/hash2str.js.map +7 -0
  589. package/dist/prod/util/isElementClickable.js +2 -0
  590. package/dist/prod/util/isElementClickable.js.map +7 -0
  591. package/dist/prod/util/isElementHidden.js +2 -0
  592. package/dist/prod/util/isElementHidden.js.map +7 -0
  593. package/dist/prod/util/isElementInView.js +2 -0
  594. package/dist/prod/util/isElementInView.js.map +7 -0
  595. package/dist/prod/util/isElementTabbable.js +2 -0
  596. package/dist/prod/util/isElementTabbable.js.map +7 -0
  597. package/dist/prod/util/isEventMarked.js +2 -0
  598. package/dist/prod/util/isEventMarked.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/valueStateNavigation.js +2 -0
  606. package/dist/prod/util/valueStateNavigation.js.map +7 -0
  607. package/dist/prod/util/whenDOMReady.js +2 -0
  608. package/dist/prod/util/whenDOMReady.js.map +7 -0
  609. package/dist/prod/util/willShowContent.js +2 -0
  610. package/dist/prod/util/willShowContent.js.map +7 -0
  611. package/dist/prod/validateThemeRoot.js +2 -0
  612. package/dist/prod/validateThemeRoot.js.map +7 -0
  613. package/dist/renderer/JsxRenderer.d.ts +3 -0
  614. package/dist/renderer/JsxRenderer.js +26 -0
  615. package/dist/renderer/JsxRenderer.js.map +1 -0
  616. package/dist/renderer/LitRenderer.d.ts +1 -1
  617. package/dist/renderer/LitRenderer.js +4 -3
  618. package/dist/renderer/LitRenderer.js.map +1 -1
  619. package/dist/renderer/directives/style-map.js.map +1 -1
  620. package/dist/renderer/executeTemplate.d.ts +3 -12
  621. package/dist/renderer/executeTemplate.js +1 -20
  622. package/dist/renderer/executeTemplate.js.map +1 -1
  623. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  624. package/dist/ssr-dom-shim.js +52 -1
  625. package/dist/ssr-dom-shim.js.map +1 -1
  626. package/dist/ssr-dom.d.ts +1 -0
  627. package/dist/ssr-dom.js +3 -0
  628. package/dist/ssr-dom.js.map +1 -0
  629. package/dist/theming/CustomStyle.js.map +1 -1
  630. package/dist/theming/applyTheme.d.ts +2 -0
  631. package/dist/theming/applyTheme.js +7 -2
  632. package/dist/theming/applyTheme.js.map +1 -1
  633. package/dist/theming/getConstructableStyle.d.ts +1 -1
  634. package/dist/theming/getConstructableStyle.js.map +1 -1
  635. package/dist/theming/getEffectiveStyle.js.map +1 -1
  636. package/dist/theming/getStylesString.js +2 -4
  637. package/dist/theming/getStylesString.js.map +1 -1
  638. package/dist/theming/getThemeDesignerTheme.js +2 -1
  639. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  640. package/dist/thirdparty/_merge.js.map +1 -1
  641. package/dist/thirdparty/isPlainObject.js.map +1 -1
  642. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  643. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  644. package/dist/thirdparty/preact/jsxRuntime.module.js +1 -0
  645. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  646. package/dist/thirdparty/preact/preact.module.js +1 -0
  647. package/dist/types/SortOrder.d.ts +24 -0
  648. package/dist/types/SortOrder.js +26 -0
  649. package/dist/types/SortOrder.js.map +1 -0
  650. package/dist/types.d.ts +31 -26
  651. package/dist/types.js.map +1 -1
  652. package/dist/updateShadowRoot.js +1 -2
  653. package/dist/updateShadowRoot.js.map +1 -1
  654. package/dist/util/{AriaLabelHelper.d.ts → AccessibilityTextsHelper.d.ts} +4 -2
  655. package/dist/util/{AriaLabelHelper.js → AccessibilityTextsHelper.js} +36 -8
  656. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  657. package/dist/util/Caret.js.map +1 -1
  658. package/dist/util/ColorConversion.d.ts +2 -1
  659. package/dist/util/ColorConversion.js +35 -23
  660. package/dist/util/ColorConversion.js.map +1 -1
  661. package/dist/util/FetchHelper.js.map +1 -1
  662. package/dist/util/FocusableElements.js +43 -15
  663. package/dist/util/FocusableElements.js.map +1 -1
  664. package/dist/util/HTMLSanitizer.d.ts +2 -0
  665. package/dist/util/HTMLSanitizer.js +2 -2
  666. package/dist/util/HTMLSanitizer.js.map +1 -1
  667. package/dist/util/InvisibleMessage.js.map +1 -1
  668. package/dist/util/PopupUtils.js.map +1 -1
  669. package/dist/util/SelectionAssistant.d.ts +12 -0
  670. package/dist/util/SelectionAssistant.js +71 -0
  671. package/dist/util/SelectionAssistant.js.map +1 -0
  672. package/dist/util/SlotsHelper.js.map +1 -1
  673. package/dist/util/StringHelper.d.ts +3 -1
  674. package/dist/util/StringHelper.js +15 -1
  675. package/dist/util/StringHelper.js.map +1 -1
  676. package/dist/util/TabbableElements.js +5 -12
  677. package/dist/util/TabbableElements.js.map +1 -1
  678. package/dist/util/arraysAreEqual.js.map +1 -1
  679. package/dist/util/createLinkInHead.js.map +1 -1
  680. package/dist/util/debounce.js.map +1 -1
  681. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  682. package/dist/util/dragAndDrop/DragRegistry.d.ts +35 -8
  683. package/dist/util/dragAndDrop/DragRegistry.js +42 -52
  684. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -1
  685. package/dist/util/dragAndDrop/findClosestPosition.d.ts +6 -1
  686. package/dist/util/dragAndDrop/findClosestPosition.js +48 -1
  687. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -1
  688. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  689. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  690. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  691. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  692. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  693. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  694. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -1
  695. package/dist/util/fixSafariActiveState.d.ts +2 -0
  696. package/dist/util/fixSafariActiveState.js +11 -0
  697. package/dist/util/fixSafariActiveState.js.map +1 -0
  698. package/dist/util/formatMessage.js.map +1 -1
  699. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  700. package/dist/util/getActiveElement.js.map +1 -1
  701. package/dist/util/getClassCopy.d.ts +107 -86
  702. package/dist/util/getFastNavigationGroups.js +6 -1
  703. package/dist/util/getFastNavigationGroups.js.map +1 -1
  704. package/dist/util/getFileExtension.js.map +1 -1
  705. package/dist/util/getNormalizedTarget.js.map +1 -1
  706. package/dist/util/getParentElement.d.ts +1 -1
  707. package/dist/util/getParentElement.js +2 -2
  708. package/dist/util/getParentElement.js.map +1 -1
  709. package/dist/util/getSingletonElementInstance.js.map +1 -1
  710. package/dist/util/hash2str.d.ts +1 -0
  711. package/dist/util/hash2str.js +14 -0
  712. package/dist/util/hash2str.js.map +1 -0
  713. package/dist/util/isElementClickable.js.map +1 -1
  714. package/dist/util/isElementHidden.js +2 -1
  715. package/dist/util/isElementHidden.js.map +1 -1
  716. package/dist/util/isElementTabbable.js +2 -2
  717. package/dist/util/isElementTabbable.js.map +1 -1
  718. package/dist/util/isEventMarked.d.ts +2 -0
  719. package/dist/util/isEventMarked.js +6 -0
  720. package/dist/util/isEventMarked.js.map +1 -0
  721. package/dist/util/isValidPropertyName.js.map +1 -1
  722. package/dist/util/throttle.d.ts +2 -0
  723. package/dist/util/throttle.js +20 -0
  724. package/dist/util/throttle.js.map +1 -0
  725. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  726. package/dist/util/toLowercaseEnumValue.js +4 -0
  727. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  728. package/dist/util/valueStateNavigation.d.ts +8 -0
  729. package/dist/util/valueStateNavigation.js +40 -0
  730. package/dist/util/valueStateNavigation.js.map +1 -0
  731. package/dist/util/whenDOMReady.js.map +1 -1
  732. package/dist/validateThemeRoot.js +9 -4
  733. package/dist/validateThemeRoot.js.map +1 -1
  734. package/dist/vscode.html-custom-data.json +22 -0
  735. package/package-scripts.cjs +63 -32
  736. package/package.json +40 -23
  737. package/src/css/MultipleDragGhost.css +17 -0
  738. package/src/css/OpenUI5PopupStyles.css +5 -0
  739. package/src/css/ScrollbarStyles.css +3 -0
  740. package/src/i18n/messagebundle.properties +5 -0
  741. package/src/i18n/messagebundle_en.properties +2 -0
  742. package/src/i18n/messagebundle_en_US_sappsd.properties +2 -0
  743. package/src/i18n/messagebundle_en_US_saprigi.properties +2 -0
  744. package/src/i18n/messagebundle_en_US_saptrc.properties +2 -0
  745. package/src/thirdparty/preact/jsxRuntime.module.js +1 -0
  746. package/src/thirdparty/preact/preact.module.js +1 -0
  747. package/src/thirdparty/preact/version.txt +1 -0
  748. package/tsconfig.json +18 -19
  749. package/config/wdio.conf.cjs +0 -392
  750. package/dist/.tsbuildinfo +0 -1
  751. package/dist/MarkedEvents.d.ts +0 -9
  752. package/dist/MarkedEvents.js +0 -15
  753. package/dist/MarkedEvents.js.map +0 -1
  754. package/dist/css/FontFace.css +0 -96
  755. package/dist/css/OverrideFontFace.css +0 -32
  756. package/dist/generated/css/OverrideFontFace.css.d.ts +0 -3
  757. package/dist/generated/css/OverrideFontFace.css.js +0 -7
  758. package/dist/generated/css/OverrideFontFace.css.js.map +0 -1
  759. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +0 -4
  760. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +0 -9
  761. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +0 -1
  762. package/dist/types/AriaHasPopup.d.ts +0 -32
  763. package/dist/types/AriaHasPopup.js +0 -34
  764. package/dist/types/AriaHasPopup.js.map +0 -1
  765. package/dist/types/AriaLandmarkRole.d.ts +0 -79
  766. package/dist/types/AriaLandmarkRole.js +0 -81
  767. package/dist/types/AriaLandmarkRole.js.map +0 -1
  768. package/dist/types/AriaRole.d.ts +0 -27
  769. package/dist/types/AriaRole.js +0 -29
  770. package/dist/types/AriaRole.js.map +0 -1
  771. package/dist/types/CSSColor.d.ts +0 -11
  772. package/dist/types/CSSColor.js +0 -14
  773. package/dist/types/CSSColor.js.map +0 -1
  774. package/dist/types/CSSSize.d.ts +0 -11
  775. package/dist/types/CSSSize.js +0 -14
  776. package/dist/types/CSSSize.js.map +0 -1
  777. package/dist/types/DOMReference.d.ts +0 -13
  778. package/dist/types/DOMReference.js +0 -21
  779. package/dist/types/DOMReference.js.map +0 -1
  780. package/dist/types/DataType.d.ts +0 -20
  781. package/dist/types/DataType.js +0 -39
  782. package/dist/types/DataType.js.map +0 -1
  783. package/dist/types/Float.d.ts +0 -14
  784. package/dist/types/Float.js +0 -18
  785. package/dist/types/Float.js.map +0 -1
  786. package/dist/types/Integer.d.ts +0 -14
  787. package/dist/types/Integer.js +0 -18
  788. package/dist/types/Integer.js.map +0 -1
  789. package/dist/util/AriaLabelHelper.js.map +0 -1
  790. package/dist/util/getEffectiveScrollbarStyle.d.ts +0 -2
  791. package/dist/util/getEffectiveScrollbarStyle.js +0 -4
  792. package/dist/util/getEffectiveScrollbarStyle.js.map +0 -1
  793. package/dist/util/isElementContainingBlock.d.ts +0 -2
  794. package/dist/util/isElementContainingBlock.js +0 -11
  795. package/dist/util/isElementContainingBlock.js.map +0 -1
  796. package/index.js +0 -214
  797. package/src/css/FontFace.css +0 -96
  798. package/src/css/OverrideFontFace.css +0 -32
@@ -1 +1 @@
1
- {"version":3,"file":"Illustrations.js","sourceRoot":"","sources":["../../src/asset-registries/Illustrations.ts"],"names":[],"mappings":"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","sourcesContent":["import getSharedResource from \"../getSharedResource.js\";\nimport type { I18nText } from \"../i18nBundle.js\";\nimport { getTheme } from \"../config/Theme.js\";\n\ntype IllustrationLoader = (illustrationName: string) => Promise<IllustrationData>;\n\ntype IllustrationProperties = {\n\tdialogSvg: string,\n\tsceneSvg: string,\n\tspotSvg: string,\n\tdotSvg: string,\n\ttitle: I18nText,\n\tsubtitle: I18nText,\n};\n\ntype IllustrationData = IllustrationProperties & {\n\tset: string,\n\tcollection: string,\n};\n\nconst IllustrationCollections = new Map([\n\t[\"sap_horizon\", \"V5\"],\n\t[\"sap_horizon_dark\", \"V5\"],\n\t[\"sap_horizon_hcb\", \"V5/HC\"],\n\t[\"sap_horizon_hcw\", \"V5/HC\"],\n]);\n\nconst FALLBACK_COLLECTION = \"V4\";\n\nconst loaders = new Map<string, IllustrationLoader>();\nconst registry = getSharedResource<Map<string, IllustrationProperties>>(\"SVGIllustration.registry\", new Map());\nconst illustrationPromises = getSharedResource<Map<string, Promise<IllustrationData>>>(\"SVGIllustration.promises\", new Map());\n\nconst getCollection = () => {\n\tconst theme = getTheme();\n\n\tif (IllustrationCollections.has(theme)) {\n\t\treturn IllustrationCollections.get(theme);\n\t}\n\n\treturn FALLBACK_COLLECTION;\n};\n\n/**\n * Processes the name of the illustration\n * The name is used to generate the registry key and the loader key\n * The registry key is used to store and get the illustration data from the registry\n * The loader key is used to store and get the illustration loader from the loaders map\n * The function generates the correct registry key and loader key based on whether an loader exists for the illustration\n * If there is no loader registered for the collection, it falls back to the default collection\n */\nconst processName = (name: string) => {\n\tlet collection = getCollection();\n\tconst [set, illustrationName] = name.split(\"/\");\n\tlet registryKey = `${set}/${collection}/${illustrationName}`;\n\n\tif (!loaders.has(registryKey) && collection !== FALLBACK_COLLECTION) {\n\t\tcollection = FALLBACK_COLLECTION;\n\t\tregistryKey = `${set}/${collection}/${illustrationName}`;\n\t}\n\n\treturn {\n\t\tregistryKey,\n\t\tcollection,\n\t};\n};\n\nconst registerIllustration = (name: string, data: IllustrationData) => {\n\tconst collection = data.collection || FALLBACK_COLLECTION;\n\tregistry.set(`${data.set}/${collection}/${name}`, {\n\t\tdialogSvg: data.dialogSvg,\n\t\tsceneSvg: data.sceneSvg,\n\t\tspotSvg: data.spotSvg,\n\t\tdotSvg: data.dotSvg,\n\t\ttitle: data.title,\n\t\tsubtitle: data.subtitle,\n\t});\n};\n\nconst registerIllustrationLoader = (illustrationName: string, loader: IllustrationLoader) => {\n\tloaders.set(illustrationName, loader);\n};\n\nconst _loadIllustrationOnce = (illustrationName: string) => {\n\tconst { registryKey } = processName(illustrationName);\n\tif (!illustrationPromises.has(registryKey)) {\n\t\tif (!loaders.has(registryKey)) {\n\t\t\tconst illustrationPath = illustrationName.startsWith(\"fiori/\") ? illustrationName.replace(\"fiori/\", \"\") : illustrationName;\n\t\t\tthrow new Error(`No loader registered for the ${illustrationName} illustration. Probably you forgot to import the \"@ui5/webcomponents-fiori/dist/illustrations/${illustrationPath}.js\" module. Or you can import the \"@ui5/webcomponents-fiori/dist/illustrations/AllIllustrations.js\" module that will make all illustrations available, but fetch only the ones used.`);\n\t\t}\n\n\t\tconst loadIllustrations = loaders.get(registryKey)!;\n\t\tillustrationPromises.set(registryKey, loadIllustrations(registryKey));\n\t}\n\treturn illustrationPromises.get(registryKey);\n};\n\nconst getIllustrationDataSync = (illustrationName: string) => {\n\tconst { registryKey } = processName(illustrationName);\n\treturn registry.get(registryKey);\n};\n\nconst getIllustrationData = async (illustrationName: string) => {\n\tconst { registryKey } = processName(illustrationName);\n\n\tawait _loadIllustrationOnce(illustrationName);\n\treturn registry.get(registryKey);\n};\n\nexport {\n\tgetIllustrationDataSync,\n\tregisterIllustration,\n\tregisterIllustrationLoader,\n\tgetIllustrationData,\n};\n"]}
1
+ {"version":3,"file":"Illustrations.js","sourceRoot":"","sources":["../../src/asset-registries/Illustrations.ts"],"names":[],"mappings":"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","sourcesContent":["import getSharedResource from \"../getSharedResource.js\";\nimport type { I18nText } from \"../i18nBundle.js\";\nimport { getTheme } from \"../config/Theme.js\";\nimport type { TemplateFunction } from \"../renderer/executeTemplate.js\";\n\n/**\n * Loader function for lazy-loading illustration data.\n */\ntype IllustrationLoader = (illustrationName: string) => Promise<UnsafeIllustrationData>;\n\n/**\n * Database properties shared by all illustration types.\n */\ntype IllustrationDatabase = {\n\t/** The illustration title text (supports i18n) */\n\ttitle: I18nText,\n\t/** The illustration subtitle text (supports i18n) */\n\tsubtitle: I18nText,\n};\n\n/**\n * Illustration properties using template functions (recommended).\n *\n * @public\n */\ntype IllustrationProperties = IllustrationDatabase & {\n\t/** Template function for the medium variant (M breakpoint, ≤ 681px) */\n\tdialogTemplate?: TemplateFunction,\n\t/** Template function for the large variant (L breakpoint, > 681px) */\n\tsceneTemplate?: TemplateFunction,\n\t/** Template function for the small variant (S breakpoint, ≤ 360px) */\n\tspotTemplate?: TemplateFunction,\n\t/** Template function for the extra small variant (XS breakpoint, ≤ 260px) */\n\tdotTemplate?: TemplateFunction,\n};\n\n/**\n * Illustration properties using raw SVG strings (unsafe).\n *\n * @public\n */\ntype UnsafeIllustrationProperties = IllustrationDatabase & {\n\t/** SVG content for the medium variant (M breakpoint, ≤ 681px) */\n\tdialogSvg: string,\n\t/** SVG content for the large variant (L breakpoint, > 681px) */\n\tsceneSvg: string,\n\t/** SVG content for the small variant (S breakpoint, ≤ 360px) */\n\tspotSvg: string,\n\t/** SVG content for the extra small variant (XS breakpoint, ≤ 260px) */\n\tdotSvg: string,\n};\n\n/**\n * Complete illustration data for registration (recommended).\n *\n * @public\n */\ntype IllustrationData = IllustrationProperties & {\n\t/** The illustration set identifier (e.g., \"custom\") */\n\tset: string,\n\t/** Collection identifier (defaults to \"V4\") */\n\tcollection?: string,\n};\n\n/**\n * Complete unsafe illustration data for registration.\n *\n * @public\n */\ntype UnsafeIllustrationData = UnsafeIllustrationProperties & {\n\t/** The illustration set identifier (e.g., \"custom\") */\n\tset: string,\n\t/** Collection identifier (defaults to \"V4\") */\n\tcollection?: string,\n};\n\nconst IllustrationCollections = new Map([\n\t[\"sap_horizon\", \"V5\"],\n\t[\"sap_horizon_dark\", \"V5\"],\n\t[\"sap_horizon_hcb\", \"V5/HC\"],\n\t[\"sap_horizon_hcw\", \"V5/HC\"],\n]);\n\nconst FALLBACK_COLLECTION = \"V4\";\n\nconst loaders = new Map<string, IllustrationLoader>();\nconst registry = getSharedResource<Map<string, IllustrationProperties | UnsafeIllustrationProperties>>(\"SVGIllustration.registry\", new Map());\nconst illustrationPromises = getSharedResource<Map<string, Promise<UnsafeIllustrationData>>>(\"SVGIllustration.promises\", new Map());\n\nconst getCollection = () => {\n\tconst theme = getTheme();\n\n\tif (IllustrationCollections.has(theme)) {\n\t\treturn IllustrationCollections.get(theme);\n\t}\n\n\treturn FALLBACK_COLLECTION;\n};\n\n/**\n * Processes the name of the illustration\n * The name is used to generate the registry key and the loader key\n * The registry key is used to store and get the illustration data from the registry\n * The loader key is used to store and get the illustration loader from the loaders map\n * The function generates the correct registry key and loader key based on whether an loader exists for the illustration\n * If there is no loader registered for the collection, it falls back to the default collection\n */\nconst processName = (name: string) => {\n\tlet collection = getCollection();\n\tconst [set, illustrationName] = name.split(\"/\");\n\tlet registryKey = `${set}/${collection}/${illustrationName}`;\n\n\tif (!loaders.has(registryKey) && collection !== FALLBACK_COLLECTION) {\n\t\tcollection = FALLBACK_COLLECTION;\n\t\tregistryKey = `${set}/${collection}/${illustrationName}`;\n\t}\n\n\treturn {\n\t\tregistryKey,\n\t\tcollection,\n\t};\n};\n\n/**\n * Registers a custom illustration in the global registry using template functions.\n *\n * This is the recommended way to register illustrations as it accepts template functions\n * instead of raw SVG strings, preventing XSS vulnerabilities.\n *\n * @param name - The name of the illustration (without set prefix)\n * @param data - The illustration data (see {@link IllustrationData})\n *\n * @public\n * @since 2.17.0\n * @example\n * ```js\n * import { registerIllustration } from \"@ui5/webcomponents-base/dist/asset-registries/Illustrations.js\";\n *\n * registerIllustration(\"EmptyCart\", {\n * sceneTemplate: (component) => <svg>...</svg>,\n * dialogTemplate: (component) => <svg>...</svg>,\n * spotTemplate: (component) => <svg>...</svg>,\n * dotTemplate: (component) => <svg>...</svg>,\n * title: \"Your cart is empty\",\n * subtitle: \"Add items to get started\",\n * set: \"custom\"\n * });\n * ```\n */\nconst registerIllustration = (name: string, data: IllustrationData) => {\n\tconst collection = data.collection || FALLBACK_COLLECTION;\n\tregistry.set(`${data.set}/${collection}/${name}`, {\n\t\tdialogTemplate: data.dialogTemplate,\n\t\tsceneTemplate: data.sceneTemplate,\n\t\tspotTemplate: data.spotTemplate,\n\t\tdotTemplate: data.dotTemplate,\n\t\ttitle: data.title,\n\t\tsubtitle: data.subtitle,\n\t});\n};\n\n/**\n * Registers a custom illustration in the global registry.\n *\n * <b>Note:</b> This method is unsafe as it allows the SVG content to be passed as raw strings\n * through the `dialogSvg`, `sceneSvg`, `spotSvg`, and `dotSvg` properties of the `data`.\n * Ensure that the SVG content is properly validated.\n * Improperly sanitized SVG strings can lead to security vulnerabilities such as XSS (Cross-Site Scripting).\n *\n * @param name - The name of the illustration (without set prefix)\n * @param data - The illustration data (see {@link UnsafeIllustrationData})\n *\n * @public\n * @since 2.17.0\n * @example\n * ```js\n * import { unsafeRegisterIllustration } from \"@ui5/webcomponents-base/dist/asset-registries/Illustrations.js\";\n *\n * unsafeRegisterIllustration(\"EmptyCart\", {\n * sceneSvg: \"<svg>...</svg>\",\n * dialogSvg: \"<svg>...</svg>\",\n * spotSvg: \"<svg>...</svg>\",\n * dotSvg: \"<svg>...</svg>\",\n * title: \"Your cart is empty\",\n * subtitle: \"Add items to get started\",\n * set: \"custom\"\n * });\n * ```\n */\nconst unsafeRegisterIllustration = (name: string, data: UnsafeIllustrationData) => {\n\tconst collection = data.collection || FALLBACK_COLLECTION;\n\tregistry.set(`${data.set}/${collection}/${name}`, {\n\t\tdialogSvg: data.dialogSvg,\n\t\tsceneSvg: data.sceneSvg,\n\t\tspotSvg: data.spotSvg,\n\t\tdotSvg: data.dotSvg,\n\t\ttitle: data.title,\n\t\tsubtitle: data.subtitle,\n\t});\n};\n\nconst registerIllustrationLoader = (illustrationName: string, loader: IllustrationLoader) => {\n\tloaders.set(illustrationName, loader);\n};\n\nconst _loadIllustrationOnce = (illustrationName: string) => {\n\tconst { registryKey } = processName(illustrationName);\n\tif (!illustrationPromises.has(registryKey)) {\n\t\tif (!loaders.has(registryKey)) {\n\t\t\tconst illustrationPath = illustrationName.startsWith(\"fiori/\") ? illustrationName.replace(\"fiori/\", \"\") : illustrationName;\n\t\t\tthrow new Error(`No loader registered for the ${illustrationName} illustration. Probably you forgot to import the \"@ui5/webcomponents-fiori/dist/illustrations/${illustrationPath}.js\" module. Or you can import the \"@ui5/webcomponents-fiori/dist/illustrations/AllIllustrations.js\" module that will make all illustrations available, but fetch only the ones used.`);\n\t\t}\n\n\t\tconst loadIllustrations = loaders.get(registryKey)!;\n\t\tillustrationPromises.set(registryKey, loadIllustrations(registryKey));\n\t}\n\treturn illustrationPromises.get(registryKey);\n};\n\n/**\n * Synchronously retrieves illustration data from the registry.\n *\n * @param illustrationName - The illustration identifier in format \"set/name\"\n * @returns The illustration properties or undefined if not available\n *\n * @public\n */\nconst getIllustrationDataSync = (illustrationName: string) => {\n\tconst { registryKey } = processName(illustrationName);\n\treturn registry.get(registryKey);\n};\n\n/**\n * Asynchronously retrieves illustration data, loading it if necessary.\n *\n * @param illustrationName - The illustration identifier in format \"set/name\"\n * @returns Promise resolving to illustration properties or undefined\n *\n * @public\n */\nconst getIllustrationData = async (illustrationName: string) => {\n\tconst { registryKey } = processName(illustrationName);\n\n\tawait _loadIllustrationOnce(illustrationName);\n\treturn registry.get(registryKey);\n};\n\nexport {\n\tgetIllustrationDataSync,\n\tregisterIllustration,\n\tunsafeRegisterIllustration,\n\tregisterIllustrationLoader,\n\tgetIllustrationData,\n};\n\nexport type {\n\tIllustrationData,\n\tUnsafeIllustrationData,\n\tIllustrationProperties,\n\tUnsafeIllustrationProperties,\n};\n"]}
@@ -123,7 +123,8 @@ const registerLocaleDataLoader = (localeId, loader) => {
123
123
  };
124
124
  // register default loader for "en" from ui5 CDN (dev workflow without assets)
125
125
  registerLocaleDataLoader("en", async () => {
126
- const cldrContent = await fetch(`https://sdk.openui5.org/1.120.5/resources/sap/ui/core/cldr/en.json`);
126
+ console.warn(`[LocaleData] Falling back to loading "en" locale data from CDN.`, /* eslint-disable-line */ `For production usage, please configure locale data loading via the "Assets.js" module of the webcomponents package you are using.`); /* eslint-disable-line */
127
+ const cldrContent = await fetch(`https://cdn.jsdelivr.net/npm/@openui5/sap.ui.core@1.120.17/src/sap/ui/core/cldr/en.json`);
127
128
  return cldrContent.json();
128
129
  });
129
130
  // When the language changes dynamically (the user calls setLanguage),
@@ -1 +1 @@
1
- {"version":3,"file":"LocaleData.js","sourceRoot":"","sources":["../../src/asset-registries/LocaleData.ts"],"names":[],"mappings":"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","sourcesContent":["import { attachLanguageChange } from \"../locale/languageChange.js\";\nimport getLocale from \"../locale/getLocale.js\";\nimport { DEFAULT_LOCALE, SUPPORTED_LOCALES } from \"../generated/AssetParameters.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport type OpenUI5Support from \"../features/OpenUI5Support.js\";\n\ntype LocaleDataLoader = (locale: string) => Promise<CLDRData>;\ntype CLDRData = Record<string, object | boolean | string>;\n\nconst localeDataMap = new Map<string, CLDRData>();\nconst loaders = new Map<string, LocaleDataLoader>();\nconst cldrPromises = new Map<string, Promise<CLDRData>>();\nconst reportedErrors = new Set<string>();\nlet warningShown = false;\n\nconst M_ISO639_OLD_TO_NEW = {\n\t\"iw\": \"he\",\n\t\"ji\": \"yi\",\n\t\"in\": \"id\",\n};\n\nconst _showAssetsWarningOnce = (localeId: string) => {\n\tif (warningShown) {\n\t\treturn;\n\t}\n\n\tconsole.warn(`[LocaleData] Supported locale \"${localeId}\" not configured, import the \"Assets.js\" module from the webcomponents package you are using.`); /* eslint-disable-line */\n\n\twarningShown = true;\n};\n\nconst calcLocale = (language: string, region: string, script: string) => {\n\t// normalize language and handle special cases\n\tlanguage = (language && M_ISO639_OLD_TO_NEW[language as keyof typeof M_ISO639_OLD_TO_NEW]) || language;\n\t// Special case 1: in an SAP context, the inclusive language code \"no\" always means Norwegian Bokmal (\"nb\")\n\tif (language === \"no\") {\n\t\tlanguage = \"nb\";\n\t}\n\t// Special case 2: for Chinese, derive a default region from the script (this behavior is inherited from Java)\n\tif (language === \"zh\" && !region) {\n\t\tif (script === \"Hans\") {\n\t\t\tregion = \"CN\";\n\t\t} else if (script === \"Hant\") {\n\t\t\tregion = \"TW\";\n\t\t}\n\t}\n\n\t// Special case 3: for Serbian, there are cyrillic and latin scripts, \"sh\" and \"sr-latn\" map to \"latin\", \"sr\" maps to cyrillic.\n\tif (language === \"sh\" || (language === \"sr\" && script === \"Latn\")) {\n\t\tlanguage = \"sr\";\n\t\tregion = \"Latn\";\n\t}\n\n\t// try language + region\n\tlet localeId = `${language}_${region}`;\n\tif (SUPPORTED_LOCALES.includes(localeId)) {\n\t\tif (loaders.has(localeId)) {\n\t\t\t// supported and has loader\n\t\t\treturn localeId;\n\t\t}\n\n\t\t// supported, no loader - fallback to default and warn\n\t\t_showAssetsWarningOnce(localeId);\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\t// not supported, try language only\n\tlocaleId = language;\n\tif (SUPPORTED_LOCALES.includes(localeId)) {\n\t\tif (loaders.has(localeId)) {\n\t\t\t// supported and has loader\n\t\t\treturn localeId;\n\t\t}\n\n\t\t// supported, no loader - fallback to default and warn\n\t\t_showAssetsWarningOnce(localeId);\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\t// not supported - fallback to default locale\n\treturn DEFAULT_LOCALE;\n};\n\n// internal set data\nconst setLocaleData = (localeId: string, content: CLDRData) => {\n\tlocaleDataMap.set(localeId, content);\n};\n\n// external getSync\nconst getLocaleData = (localeId: string) => {\n\t// if there is no loader, the default fallback was fetched and a warning was given - use default locale instead\n\tif (!loaders.has(localeId)) {\n\t\tlocaleId = DEFAULT_LOCALE;\n\t}\n\n\tconst content = localeDataMap.get(localeId);\n\tif (!content) {\n\t\tthrow new Error(`CLDR data for locale ${localeId} is not loaded!`);\n\t}\n\n\treturn content;\n};\n\n// load bundle over the network once\nconst _loadCldrOnce = (localeId: string) => {\n\tif (!cldrPromises.get(localeId)) {\n\t\tconst loadCldr = loaders.get(localeId);\n\n\t\tif (!loadCldr) {\n\t\t\tthrow new Error(`CLDR data for locale ${localeId} is not loaded!`);\n\t\t}\n\n\t\tcldrPromises.set(localeId, loadCldr(localeId));\n\t}\n\n\treturn cldrPromises.get(localeId);\n};\n\n// external getAsync\nconst fetchCldr = async (language: string, region: string, script: string) => {\n\tconst localeId = calcLocale(language, region, script);\n\n\t// reuse OpenUI5 CLDR if present\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support) {\n\t\tconst cldrContent = openUI5Support.getLocaleDataObject();\n\t\tif (cldrContent) {\n\t\t\t// only if openui5 actually returned valid content\n\t\t\tsetLocaleData(localeId, cldrContent);\n\t\t\treturn;\n\t\t}\n\t}\n\n\t// fetch it\n\ttry {\n\t\tconst cldrContent = await _loadCldrOnce(localeId);\n\t\tsetLocaleData(localeId, cldrContent as CLDRData);\n\t} catch (error: unknown) {\n\t\tconst e = error as Error;\n\t\tif (!reportedErrors.has(e.message)) {\n\t\t\treportedErrors.add(e.message);\n\t\t\tconsole.error(e.message); /* eslint-disable-line */\n\t\t}\n\t}\n};\n\nconst registerLocaleDataLoader = (localeId: string, loader: LocaleDataLoader) => {\n\tloaders.set(localeId, loader);\n};\n\n// register default loader for \"en\" from ui5 CDN (dev workflow without assets)\nregisterLocaleDataLoader(\"en\", async () => {\n\tconst cldrContent = await fetch(`https://sdk.openui5.org/1.120.5/resources/sap/ui/core/cldr/en.json`);\n\treturn cldrContent.json() as Promise<CLDRData>;\n});\n\n// When the language changes dynamically (the user calls setLanguage),\n// re-fetch the required CDRD data.\nattachLanguageChange(() => {\n\tconst locale = getLocale();\n\treturn fetchCldr(locale.getLanguage(), locale.getRegion(), locale.getScript());\n});\n\nexport {\n\tregisterLocaleDataLoader,\n\tfetchCldr,\n\tgetLocaleData,\n};\n\nexport type {\n\tCLDRData,\n};\n"]}
1
+ {"version":3,"file":"LocaleData.js","sourceRoot":"","sources":["../../src/asset-registries/LocaleData.ts"],"names":[],"mappings":"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","sourcesContent":["import { attachLanguageChange } from \"../locale/languageChange.js\";\nimport getLocale from \"../locale/getLocale.js\";\nimport { DEFAULT_LOCALE, SUPPORTED_LOCALES } from \"../generated/AssetParameters.js\";\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport type OpenUI5Support from \"../features/OpenUI5Support.js\";\n\ntype LocaleDataLoader = (locale: string) => Promise<CLDRData>;\ntype CLDRData = Record<string, object | boolean | string>;\n\nconst localeDataMap = new Map<string, CLDRData>();\nconst loaders = new Map<string, LocaleDataLoader>();\nconst cldrPromises = new Map<string, Promise<CLDRData>>();\nconst reportedErrors = new Set<string>();\nlet warningShown = false;\n\nconst M_ISO639_OLD_TO_NEW = {\n\t\"iw\": \"he\",\n\t\"ji\": \"yi\",\n\t\"in\": \"id\",\n};\n\nconst _showAssetsWarningOnce = (localeId: string) => {\n\tif (warningShown) {\n\t\treturn;\n\t}\n\n\tconsole.warn(`[LocaleData] Supported locale \"${localeId}\" not configured, import the \"Assets.js\" module from the webcomponents package you are using.`); /* eslint-disable-line */\n\n\twarningShown = true;\n};\n\nconst calcLocale = (language: string, region: string, script: string) => {\n\t// normalize language and handle special cases\n\tlanguage = (language && M_ISO639_OLD_TO_NEW[language as keyof typeof M_ISO639_OLD_TO_NEW]) || language;\n\t// Special case 1: in an SAP context, the inclusive language code \"no\" always means Norwegian Bokmal (\"nb\")\n\tif (language === \"no\") {\n\t\tlanguage = \"nb\";\n\t}\n\t// Special case 2: for Chinese, derive a default region from the script (this behavior is inherited from Java)\n\tif (language === \"zh\" && !region) {\n\t\tif (script === \"Hans\") {\n\t\t\tregion = \"CN\";\n\t\t} else if (script === \"Hant\") {\n\t\t\tregion = \"TW\";\n\t\t}\n\t}\n\n\t// Special case 3: for Serbian, there are cyrillic and latin scripts, \"sh\" and \"sr-latn\" map to \"latin\", \"sr\" maps to cyrillic.\n\tif (language === \"sh\" || (language === \"sr\" && script === \"Latn\")) {\n\t\tlanguage = \"sr\";\n\t\tregion = \"Latn\";\n\t}\n\n\t// try language + region\n\tlet localeId = `${language}_${region}`;\n\tif (SUPPORTED_LOCALES.includes(localeId)) {\n\t\tif (loaders.has(localeId)) {\n\t\t\t// supported and has loader\n\t\t\treturn localeId;\n\t\t}\n\n\t\t// supported, no loader - fallback to default and warn\n\t\t_showAssetsWarningOnce(localeId);\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\t// not supported, try language only\n\tlocaleId = language;\n\tif (SUPPORTED_LOCALES.includes(localeId)) {\n\t\tif (loaders.has(localeId)) {\n\t\t\t// supported and has loader\n\t\t\treturn localeId;\n\t\t}\n\n\t\t// supported, no loader - fallback to default and warn\n\t\t_showAssetsWarningOnce(localeId);\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\t// not supported - fallback to default locale\n\treturn DEFAULT_LOCALE;\n};\n\n// internal set data\nconst setLocaleData = (localeId: string, content: CLDRData) => {\n\tlocaleDataMap.set(localeId, content);\n};\n\n// external getSync\nconst getLocaleData = (localeId: string) => {\n\t// if there is no loader, the default fallback was fetched and a warning was given - use default locale instead\n\tif (!loaders.has(localeId)) {\n\t\tlocaleId = DEFAULT_LOCALE;\n\t}\n\n\tconst content = localeDataMap.get(localeId);\n\tif (!content) {\n\t\tthrow new Error(`CLDR data for locale ${localeId} is not loaded!`);\n\t}\n\n\treturn content;\n};\n\n// load bundle over the network once\nconst _loadCldrOnce = (localeId: string) => {\n\tif (!cldrPromises.get(localeId)) {\n\t\tconst loadCldr = loaders.get(localeId);\n\n\t\tif (!loadCldr) {\n\t\t\tthrow new Error(`CLDR data for locale ${localeId} is not loaded!`);\n\t\t}\n\n\t\tcldrPromises.set(localeId, loadCldr(localeId));\n\t}\n\n\treturn cldrPromises.get(localeId);\n};\n\n// external getAsync\nconst fetchCldr = async (language: string, region: string, script: string) => {\n\tconst localeId = calcLocale(language, region, script);\n\n\t// reuse OpenUI5 CLDR if present\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support) {\n\t\tconst cldrContent = openUI5Support.getLocaleDataObject();\n\t\tif (cldrContent) {\n\t\t\t// only if openui5 actually returned valid content\n\t\t\tsetLocaleData(localeId, cldrContent);\n\t\t\treturn;\n\t\t}\n\t}\n\n\t// fetch it\n\ttry {\n\t\tconst cldrContent = await _loadCldrOnce(localeId);\n\t\tsetLocaleData(localeId, cldrContent as CLDRData);\n\t} catch (error: unknown) {\n\t\tconst e = error as Error;\n\t\tif (!reportedErrors.has(e.message)) {\n\t\t\treportedErrors.add(e.message);\n\t\t\tconsole.error(e.message); /* eslint-disable-line */\n\t\t}\n\t}\n};\n\nconst registerLocaleDataLoader = (localeId: string, loader: LocaleDataLoader) => {\n\tloaders.set(localeId, loader);\n};\n\n// register default loader for \"en\" from ui5 CDN (dev workflow without assets)\nregisterLocaleDataLoader(\"en\", async () => {\n\tconsole.warn(`[LocaleData] Falling back to loading \"en\" locale data from CDN.`, /* eslint-disable-line */\n\t\t`For production usage, please configure locale data loading via the \"Assets.js\" module of the webcomponents package you are using.`); /* eslint-disable-line */\n\tconst cldrContent = await fetch(`https://cdn.jsdelivr.net/npm/@openui5/sap.ui.core@1.120.17/src/sap/ui/core/cldr/en.json`);\n\treturn cldrContent.json() as Promise<CLDRData>;\n});\n\n// When the language changes dynamically (the user calls setLanguage),\n// re-fetch the required CDRD data.\nattachLanguageChange(() => {\n\tconst locale = getLocale();\n\treturn fetchCldr(locale.getLanguage(), locale.getRegion(), locale.getScript());\n});\n\nexport {\n\tregisterLocaleDataLoader,\n\tfetchCldr,\n\tgetLocaleData,\n};\n\nexport type {\n\tCLDRData,\n};\n"]}
@@ -1,11 +1,8 @@
1
- import type { StyleData, StyleDataCSP } from "../ManagedStyles.js";
2
- type ThemeData = {
3
- _: StyleDataCSP;
4
- } | StyleDataCSP | string;
5
- type ThemeLoader = (themeName: string) => Promise<ThemeData>;
1
+ type ThemeData = string;
2
+ type ThemeLoader = (themeName: string) => Promise<string>;
6
3
  declare const registerThemePropertiesLoader: (packageName: string, themeName: string, loader: ThemeLoader) => void;
7
4
  declare const registerCustomThemePropertiesLoader: (packageName: string, themeName: string, loader: ThemeLoader) => void;
8
- declare const getThemeProperties: (packageName: string, themeName: string, externalThemeName?: string) => Promise<StyleData | undefined>;
5
+ declare const getThemeProperties: (packageName: string, themeName: string, externalThemeName?: string) => Promise<string | undefined>;
9
6
  declare const getRegisteredPackages: () => Set<string>;
10
7
  declare const isThemeRegistered: (theme: string) => boolean;
11
8
  export { registerThemePropertiesLoader, registerCustomThemePropertiesLoader, getThemeProperties, getRegisteredPackages, isThemeRegistered, };
@@ -55,8 +55,7 @@ const _getThemeProperties = async (packageName, themeName, forCustomTheme = fals
55
55
  console.error(packageName, e.message); /* eslint-disable-line */
56
56
  return;
57
57
  }
58
- const themeProps = data._ || data; // Refactor: remove _ everywhere
59
- return themeProps;
58
+ return data;
60
59
  };
61
60
  const getRegisteredPackages = () => {
62
61
  return registeredPackages;
@@ -1 +1 @@
1
- {"version":3,"file":"Themes.js","sourceRoot":"","sources":["../../src/asset-registries/Themes.ts"],"names":[],"mappings":"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","sourcesContent":["import { DEFAULT_THEME } from \"../generated/AssetParameters.js\";\nimport type { StyleData, StyleDataCSP } from \"../ManagedStyles.js\";\nimport { mergeStyles } from \"../ManagedStyles.js\";\nimport { fireThemeRegistered } from \"../theming/ThemeRegistered.js\";\n\ntype ThemeData = {_: StyleDataCSP } | StyleDataCSP | string;\ntype ThemeLoader = (themeName: string) => Promise<ThemeData>;\n\nconst themeStyles = new Map<string, StyleData>();\nconst loaders = new Map<string, ThemeLoader>();\nconst customLoaders = new Map<string, ThemeLoader>();\nconst registeredPackages = new Set<string>();\nconst registeredThemes = new Set<string>();\n\nconst registerThemePropertiesLoader = (packageName: string, themeName: string, loader: ThemeLoader) => {\n\tloaders.set(`${packageName}/${themeName}`, loader);\n\tregisteredPackages.add(packageName);\n\tregisteredThemes.add(themeName);\n\tfireThemeRegistered(themeName);\n};\n\nconst registerCustomThemePropertiesLoader = (packageName: string, themeName: string, loader: ThemeLoader) => {\n\tcustomLoaders.set(`${packageName}/${themeName}`, loader);\n};\n\nconst getThemeProperties = async (packageName: string, themeName: string, externalThemeName?: string) => {\n\tconst cacheKey = `${packageName}_${themeName}_${externalThemeName || \"\"}`;\n\tconst cachedStyleData = themeStyles.get(cacheKey);\n\tif (cachedStyleData !== undefined) { // it's valid for style to be an empty string\n\t\treturn cachedStyleData;\n\t}\n\n\tif (!registeredThemes.has(themeName)) {\n\t\tconst regThemesStr = [...registeredThemes.values()].join(\", \");\n\t\tconsole.warn(`You have requested a non-registered theme ${themeName} - falling back to ${DEFAULT_THEME}. Registered themes are: ${regThemesStr}`); /* eslint-disable-line */\n\t\treturn _getThemeProperties(packageName, DEFAULT_THEME);\n\t}\n\n\tconst [style, customStyle] = await Promise.all([\n\t\t_getThemeProperties(packageName, themeName),\n\t\texternalThemeName ? _getThemeProperties(packageName, externalThemeName, true) : undefined,\n\t]);\n\n\tconst styleData = mergeStyles(style, customStyle);\n\tif (styleData) {\n\t\tthemeStyles.set(cacheKey, styleData);\n\t}\n\n\treturn styleData;\n};\n\nconst _getThemeProperties = async (packageName: string, themeName: string, forCustomTheme = false) => {\n\tconst loadersMap = forCustomTheme ? customLoaders : loaders;\n\tconst loader = loadersMap.get(`${packageName}/${themeName}`);\n\tif (!loader) {\n\t\t// no themes for package\n\t\tif (!forCustomTheme) {\n\t\t\tconsole.error(`Theme [${themeName}] not registered for package [${packageName}]`); /* eslint-disable-line */\n\t\t}\n\t\treturn;\n\t}\n\tlet data;\n\ttry {\n\t\tdata = await loader(themeName);\n\t} catch (error: unknown) {\n\t\tconst e = error as Error;\n\t\tconsole.error(packageName, e.message); /* eslint-disable-line */\n\t\treturn;\n\t}\n\n\tconst themeProps = (data as {_: StyleDataCSP})._ || data; // Refactor: remove _ everywhere\n\treturn themeProps;\n};\n\nconst getRegisteredPackages = () => {\n\treturn registeredPackages;\n};\n\nconst isThemeRegistered = (theme: string) => {\n\treturn registeredThemes.has(theme);\n};\n\nexport {\n\tregisterThemePropertiesLoader,\n\tregisterCustomThemePropertiesLoader,\n\tgetThemeProperties,\n\tgetRegisteredPackages,\n\tisThemeRegistered,\n};\n\nexport type {\n\tThemeData,\n\tThemeLoader,\n};\n"]}
1
+ {"version":3,"file":"Themes.js","sourceRoot":"","sources":["../../src/asset-registries/Themes.ts"],"names":[],"mappings":"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","sourcesContent":["import { DEFAULT_THEME } from \"../generated/AssetParameters.js\";\nimport { mergeStyles } from \"../ManagedStyles.js\";\nimport { fireThemeRegistered } from \"../theming/ThemeRegistered.js\";\n\ntype ThemeData = string;\ntype ThemeLoader = (themeName: string) => Promise<string>;\n\nconst themeStyles = new Map<string, string>();\nconst loaders = new Map<string, ThemeLoader>();\nconst customLoaders = new Map<string, ThemeLoader>();\nconst registeredPackages = new Set<string>();\nconst registeredThemes = new Set<string>();\n\nconst registerThemePropertiesLoader = (packageName: string, themeName: string, loader: ThemeLoader) => {\n\tloaders.set(`${packageName}/${themeName}`, loader);\n\tregisteredPackages.add(packageName);\n\tregisteredThemes.add(themeName);\n\tfireThemeRegistered(themeName);\n};\n\nconst registerCustomThemePropertiesLoader = (packageName: string, themeName: string, loader: ThemeLoader) => {\n\tcustomLoaders.set(`${packageName}/${themeName}`, loader);\n};\n\nconst getThemeProperties = async (packageName: string, themeName: string, externalThemeName?: string) => {\n\tconst cacheKey = `${packageName}_${themeName}_${externalThemeName || \"\"}`;\n\tconst cachedStyleData = themeStyles.get(cacheKey);\n\tif (cachedStyleData !== undefined) { // it's valid for style to be an empty string\n\t\treturn cachedStyleData;\n\t}\n\n\tif (!registeredThemes.has(themeName)) {\n\t\tconst regThemesStr = [...registeredThemes.values()].join(\", \");\n\t\tconsole.warn(`You have requested a non-registered theme ${themeName} - falling back to ${DEFAULT_THEME}. Registered themes are: ${regThemesStr}`); /* eslint-disable-line */\n\t\treturn _getThemeProperties(packageName, DEFAULT_THEME);\n\t}\n\n\tconst [style, customStyle] = await Promise.all([\n\t\t_getThemeProperties(packageName, themeName),\n\t\texternalThemeName ? _getThemeProperties(packageName, externalThemeName, true) : undefined,\n\t]);\n\n\tconst styleData = mergeStyles(style, customStyle);\n\tif (styleData) {\n\t\tthemeStyles.set(cacheKey, styleData);\n\t}\n\n\treturn styleData;\n};\n\nconst _getThemeProperties = async (packageName: string, themeName: string, forCustomTheme = false) => {\n\tconst loadersMap = forCustomTheme ? customLoaders : loaders;\n\tconst loader = loadersMap.get(`${packageName}/${themeName}`);\n\tif (!loader) {\n\t\t// no themes for package\n\t\tif (!forCustomTheme) {\n\t\t\tconsole.error(`Theme [${themeName}] not registered for package [${packageName}]`); /* eslint-disable-line */\n\t\t}\n\t\treturn;\n\t}\n\tlet data;\n\ttry {\n\t\tdata = await loader(themeName);\n\t} catch (error: unknown) {\n\t\tconst e = error as Error;\n\t\tconsole.error(packageName, e.message); /* eslint-disable-line */\n\t\treturn;\n\t}\n\n\treturn data;\n};\n\nconst getRegisteredPackages = () => {\n\treturn registeredPackages;\n};\n\nconst isThemeRegistered = (theme: string) => {\n\treturn registeredThemes.has(theme);\n};\n\nexport {\n\tregisterThemePropertiesLoader,\n\tregisterCustomThemePropertiesLoader,\n\tgetThemeProperties,\n\tgetRegisteredPackages,\n\tisThemeRegistered,\n};\n\nexport type {\n\tThemeData,\n\tThemeLoader,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/asset-registries/i18n.ts"],"names":[],"mappings":"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","sourcesContent":["import getLocale from \"../locale/getLocale.js\";\nimport { attachLanguageChange } from \"../locale/languageChange.js\";\nimport normalizeLocale from \"../locale/normalizeLocale.js\";\nimport nextFallbackLocale from \"../locale/nextFallbackLocale.js\";\nimport { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\nimport { getFetchDefaultLanguage } from \"../config/Language.js\";\n\ntype I18nLoader = (localeId: string) => Promise<I18nData>;\ntype I18nData = Record<string, string>;\n\n// contains package names for which the warning has been shown\nconst warningShown = new Set();\nconst reportedErrors = new Set();\n\nconst bundleData = new Map<string, I18nData | null>();\nconst bundlePromises = new Map<string, Promise<I18nData>>();\nconst loaders = new Map<string, I18nLoader>();\n\n/**\n * Registers i18n loader function for given package and locale.\n *\n * @public\n * @param {string} packageName for which package this loader can fetch data\n * @param {string} localeId locale that this loader can handle\n * @param {function} loader async function that will be passed a localeId and should return a JSON object\n */\nconst registerI18nLoader = (packageName: string, localeId: string, loader: I18nLoader) => {\n\t// register loader by key\n\tconst bundleKey = `${packageName}/${localeId}`;\n\tloaders.set(bundleKey, loader);\n};\n\nconst _setI18nBundleData = (packageName: string, data: I18nData | null) => {\n\tbundleData.set(packageName, data);\n};\n\nconst getI18nBundleData = (packageName: string) => {\n\treturn bundleData.get(packageName);\n};\n\nconst _hasLoader = (packageName: string, localeId: string) => {\n\tconst bundleKey = `${packageName}/${localeId}`;\n\treturn loaders.has(bundleKey);\n};\n\n// load bundle over the network once\nconst _loadMessageBundleOnce = (packageName: string, localeId: string) => {\n\tconst bundleKey = `${packageName}/${localeId}`;\n\tconst loadMessageBundle = loaders.get(bundleKey);\n\n\tif (loadMessageBundle && !bundlePromises.get(bundleKey)) {\n\t\tbundlePromises.set(bundleKey, loadMessageBundle(localeId));\n\t}\n\n\treturn bundlePromises.get(bundleKey)!; // Investigate if i18n loader exists and this won't return undefined.\n};\n\nconst _showAssetsWarningOnce = (packageName: string) => {\n\tif (!warningShown.has(packageName)) {\n\t\tconsole.warn(`[${packageName}]: Message bundle assets are not configured. Falling back to English texts.`, /* eslint-disable-line */\n\t\t\t` Add \\`import \"${packageName}/dist/Assets.js\"\\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section \"Assets\" in the documentation for more information.`); /* eslint-disable-line */\n\t\twarningShown.add(packageName);\n\t}\n};\n\nconst useFallbackBundle = (packageName: string, localeId: string) => {\n\treturn localeId !== DEFAULT_LANGUAGE && !_hasLoader(packageName, localeId);\n};\n\n/**\n * This method preforms the asynchronous task of fetching the actual text resources. It will fetch\n * each text resource over the network once (even for multiple calls to the same method).\n * It should be fully finished before the i18nBundle class is created in the webcomponents.\n * This method uses the bundle URLs that are populated by the `registerI18nBundle` method.\n * To simplify the usage, the synchronization of both methods happens internally for the same `bundleId`\n * @param {packageName} packageName the NPM package name\n * @public\n */\nconst fetchI18nBundle = async (packageName: string) => {\n\tconst language = getLocale().getLanguage();\n\tconst region = getLocale().getRegion();\n\tconst variant = getLocale().getVariant();\n\tlet localeId = language + (region ? `-${region}` : ``) + (variant ? `-${variant}` : ``);\n\n\tif (useFallbackBundle(packageName, localeId)) {\n\t\tlocaleId = normalizeLocale(localeId);\n\n\t\twhile (useFallbackBundle(packageName, localeId)) {\n\t\t\tlocaleId = nextFallbackLocale(localeId);\n\t\t}\n\t}\n\n\t// use default language unless configured to always fetch it from the network\n\tconst fetchDefaultLanguage = getFetchDefaultLanguage();\n\tif (localeId === DEFAULT_LANGUAGE && !fetchDefaultLanguage) {\n\t\t_setI18nBundleData(packageName, null); // reset for the default language (if data was set for a previous language)\n\t\treturn;\n\t}\n\n\tif (!_hasLoader(packageName, localeId)) {\n\t\t_showAssetsWarningOnce(packageName);\n\t\treturn;\n\t}\n\n\ttry {\n\t\tconst data = await _loadMessageBundleOnce(packageName, localeId);\n\t\t_setI18nBundleData(packageName, data);\n\t} catch (error: unknown) {\n\t\tconst e = error as Error;\n\t\tif (!reportedErrors.has(e.message)) {\n\t\t\treportedErrors.add(e.message);\n\t\t\tconsole.error(e.message); /* eslint-disable-line */\n\t\t}\n\t}\n};\n\n// When the language changes dynamically (the user calls setLanguage), re-fetch all previously fetched bundles\nattachLanguageChange((lang: string /* eslint-disable-line */) => {\n\tconst allPackages = [...bundleData.keys()];\n\treturn Promise.all(allPackages.map(fetchI18nBundle));\n});\n\nexport {\n\tregisterI18nLoader,\n\tfetchI18nBundle,\n\tgetI18nBundleData,\n};\n"]}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/asset-registries/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE,8DAA8D;AAC9D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;AAC/B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;AAEjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2B,CAAC;AACtD,MAAM,cAAc,GAAG,IAAI,GAAG,EAA6B,CAAC;AAC5D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,kBAAkB,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAE,MAAkB,EAAE,EAAE;IACxF,yBAAyB;IACzB,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,WAAmB,EAAE,IAAqB,EAAE,EAAE;IACzE,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,WAAmB,EAAE,EAAE;IACjD,OAAO,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAE,EAAE;IAC5D,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAC;IAC/C,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,oCAAoC;AACpC,MAAM,sBAAsB,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAE,EAAE;IACxE,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAC;IAC/C,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEjD,IAAI,iBAAiB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACzD,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,cAAc,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,CAAC,qEAAqE;AAC7G,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,WAAmB,EAAE,EAAE;IACtD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,6EAA6E,EAAE,yBAAyB,CACnI,kBAAkB,WAAW,4KAA4K,CAAC,CAAC,CAAC,yBAAyB;QACtO,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAE,EAAE;IACnE,OAAO,QAAQ,KAAK,gBAAgB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAC5E,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,eAAe,GAAG,KAAK,EAAE,WAAmB,EAAE,EAAE;IACrD,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC,SAAS,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC,UAAU,EAAE,CAAC;IACzC,IAAI,QAAQ,GAAG,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAExF,IAAI,iBAAiB,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC9C,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,iBAAiB,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC;YACjD,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED,6EAA6E;IAC7E,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAC;IACvD,IAAI,QAAQ,KAAK,gBAAgB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5D,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,2EAA2E;QAClH,OAAO;IACR,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxC,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACpC,OAAO;IACR,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACjE,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,KAAc,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB;QACpD,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEF,8GAA8G;AAC9G,oBAAoB,CAAC,CAAC,IAAY,CAAC,yBAAyB,EAAE,EAAE;IAC/D,MAAM,WAAW,GAAG,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AAEH,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,iBAAiB,GACjB,CAAC","sourcesContent":["import getLocale from \"../locale/getLocale.js\";\nimport { attachLanguageChange } from \"../locale/languageChange.js\";\nimport normalizeLocale from \"../locale/normalizeLocale.js\";\nimport nextFallbackLocale from \"../locale/nextFallbackLocale.js\";\nimport { DEFAULT_LANGUAGE } from \"../generated/AssetParameters.js\";\nimport { getFetchDefaultLanguage } from \"../config/Language.js\";\n\ntype I18nLoader = (localeId: string) => Promise<I18nData>;\ntype I18nData = Record<string, string>;\n\n// contains package names for which the warning has been shown\nconst warningShown = new Set();\nconst reportedErrors = new Set();\n\nconst bundleData = new Map<string, I18nData | null>();\nconst bundlePromises = new Map<string, Promise<I18nData>>();\nconst loaders = new Map<string, I18nLoader>();\n\n/**\n * Registers i18n loader function for given package and locale.\n *\n * @public\n * @param {string} packageName for which package this loader can fetch data\n * @param {string} localeId locale that this loader can handle\n * @param {function} loader async function that will be passed a localeId and should return a JSON object\n */\nconst registerI18nLoader = (packageName: string, localeId: string, loader: I18nLoader) => {\n\t// register loader by key\n\tconst bundleKey = `${packageName}/${localeId}`;\n\tloaders.set(bundleKey, loader);\n};\n\nconst _setI18nBundleData = (packageName: string, data: I18nData | null) => {\n\tbundleData.set(packageName, data);\n};\n\nconst getI18nBundleData = (packageName: string) => {\n\treturn bundleData.get(packageName);\n};\n\nconst _hasLoader = (packageName: string, localeId: string) => {\n\tconst bundleKey = `${packageName}/${localeId}`;\n\treturn loaders.has(bundleKey);\n};\n\n// load bundle over the network once\nconst _loadMessageBundleOnce = (packageName: string, localeId: string) => {\n\tconst bundleKey = `${packageName}/${localeId}`;\n\tconst loadMessageBundle = loaders.get(bundleKey);\n\n\tif (loadMessageBundle && !bundlePromises.get(bundleKey)) {\n\t\tbundlePromises.set(bundleKey, loadMessageBundle(localeId));\n\t}\n\n\treturn bundlePromises.get(bundleKey)!; // Investigate if i18n loader exists and this won't return undefined.\n};\n\nconst _showAssetsWarningOnce = (packageName: string) => {\n\tif (!warningShown.has(packageName)) {\n\t\tconsole.warn(`[${packageName}]: Message bundle assets are not configured. Falling back to English texts.`, /* eslint-disable-line */\n\t\t\t` Add \\`import \"${packageName}/dist/Assets.js\"\\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section \"Assets\" in the documentation for more information.`); /* eslint-disable-line */\n\t\twarningShown.add(packageName);\n\t}\n};\n\nconst useFallbackBundle = (packageName: string, localeId: string) => {\n\treturn localeId !== DEFAULT_LANGUAGE && !_hasLoader(packageName, localeId);\n};\n\n/**\n * This method preforms the asynchronous task of fetching the actual text resources. It will fetch\n * each text resource over the network once (even for multiple calls to the same method).\n * It should be fully finished before the i18nBundle class is created in the webcomponents.\n * This method uses the bundle URLs that are populated by the `registerI18nBundle` method.\n * To simplify the usage, the synchronization of both methods happens internally for the same `bundleId`\n * @param {packageName} packageName the NPM package name\n * @public\n */\nconst fetchI18nBundle = async (packageName: string) => {\n\tconst language = getLocale().getLanguage();\n\tconst region = getLocale().getRegion();\n\tconst variant = getLocale().getVariant();\n\tlet localeId = language + (region ? `-${region}` : ``) + (variant ? `-${variant}` : ``);\n\n\tif (useFallbackBundle(packageName, localeId)) {\n\t\tlocaleId = normalizeLocale(localeId);\n\n\t\twhile (useFallbackBundle(packageName, localeId)) {\n\t\t\tlocaleId = nextFallbackLocale(localeId);\n\t\t}\n\t}\n\n\t// use default language unless configured to always fetch it from the network\n\tconst fetchDefaultLanguage = getFetchDefaultLanguage();\n\tif (localeId === DEFAULT_LANGUAGE && !fetchDefaultLanguage) {\n\t\t_setI18nBundleData(packageName, null); // reset for the default language (if data was set for a previous language)\n\t\treturn;\n\t}\n\n\tif (!_hasLoader(packageName, localeId)) {\n\t\t_showAssetsWarningOnce(packageName);\n\t\treturn;\n\t}\n\n\ttry {\n\t\tconst data = await _loadMessageBundleOnce(packageName, localeId);\n\t\t_setI18nBundleData(packageName, data);\n\t} catch (error: unknown) {\n\t\tconst e = error as Error;\n\t\tif (!reportedErrors.has(e.message)) {\n\t\t\treportedErrors.add(e.message);\n\t\t\tconsole.error(e.message); /* eslint-disable-line */\n\t\t}\n\t}\n};\n\n// When the language changes dynamically (the user calls setLanguage), re-fetch all previously fetched bundles\nattachLanguageChange((lang: string /* eslint-disable-line */) => {\n\tconst allPackages = [...bundleData.keys()];\n\treturn Promise.all(allPackages.map(fetchI18nBundle));\n});\n\nexport {\n\tregisterI18nLoader,\n\tfetchI18nBundle,\n\tgetI18nBundleData,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IconCollectionsAlias.js","sourceRoot":"","sources":["../../../src/asset-registries/util/IconCollectionsAlias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,IAAK,oBAKJ;AALD,WAAK,oBAAoB;IACxB,kDAA4B,CAAA;IAC5B,gDAA0B,CAAA;IAC1B,6CAAuB,CAAA;IACvB,oEAA8C,CAAA;AAC/C,CAAC,EALI,oBAAoB,KAApB,oBAAoB,QAKxB;AAED;;;;;;;;;GASG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC3D,IAAI,oBAAoB,CAAC,cAAmD,CAAC,EAAE;QAC9E,OAAO,oBAAoB,CAAC,cAAmD,CAAC,CAAC;KACjF;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC;AACpC,OAAO,EACN,wBAAwB,GACxB,CAAC","sourcesContent":["/**\n * Supported icon collection aliases.\n *\n * Users might specify a collection, using both the key and the value in the following key-value pairs,\n * e.g the following pairs are completely exchangeable:\n *\n * - \"SAP-icons/accept\" and \"SAP-icons-v4/accept\"\n * - \"horizon/accept\" and \"SAP-icons-v5/accept\"\n * - \"SAP-icons-TNT/actor\" and \"tnt/actor\"\n * - \"BusinessSuiteInAppSymbols/3d\" and \"business-suite/3d\"\n */\nenum IconCollectionsAlias {\n\t\"SAP-icons\" = \"SAP-icons-v4\",\n\t\"horizon\" = \"SAP-icons-v5\",\n\t\"SAP-icons-TNT\" = \"tnt\",\n\t\"BusinessSuiteInAppSymbols\" = \"business-suite\",\n}\n\n/**\n * Returns the collection name for a given alias:\n *\n * - \"SAP-icons-TNT\"resolves to \"tnt\"\n * - \"BusinessSuiteInAppSymbols\" resolves to \"business-suite\"\n * - \"horizon\" resolves to \"SAP-icons-v5\"\n *\n * @param { string } collectionName\n * @return { string } the normalized collection name\n */\nconst getIconCollectionByAlias = (collectionName: string) => {\n\tif (IconCollectionsAlias[collectionName as keyof typeof IconCollectionsAlias]) {\n\t\treturn IconCollectionsAlias[collectionName as keyof typeof IconCollectionsAlias];\n\t}\n\n\treturn collectionName;\n};\n\nexport default IconCollectionsAlias;\nexport {\n\tgetIconCollectionByAlias,\n};\n"]}
1
+ {"version":3,"file":"IconCollectionsAlias.js","sourceRoot":"","sources":["../../../src/asset-registries/util/IconCollectionsAlias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,IAAK,oBAKJ;AALD,WAAK,oBAAoB;IACxB,kDAA4B,CAAA;IAC5B,gDAA0B,CAAA;IAC1B,6CAAuB,CAAA;IACvB,oEAA8C,CAAA;AAC/C,CAAC,EALI,oBAAoB,KAApB,oBAAoB,QAKxB;AAED;;;;;;;;;GASG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC3D,IAAI,oBAAoB,CAAC,cAAmD,CAAC,EAAE,CAAC;QAC/E,OAAO,oBAAoB,CAAC,cAAmD,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC;AACpC,OAAO,EACN,wBAAwB,GACxB,CAAC","sourcesContent":["/**\n * Supported icon collection aliases.\n *\n * Users might specify a collection, using both the key and the value in the following key-value pairs,\n * e.g the following pairs are completely exchangeable:\n *\n * - \"SAP-icons/accept\" and \"SAP-icons-v4/accept\"\n * - \"horizon/accept\" and \"SAP-icons-v5/accept\"\n * - \"SAP-icons-TNT/actor\" and \"tnt/actor\"\n * - \"BusinessSuiteInAppSymbols/3d\" and \"business-suite/3d\"\n */\nenum IconCollectionsAlias {\n\t\"SAP-icons\" = \"SAP-icons-v4\",\n\t\"horizon\" = \"SAP-icons-v5\",\n\t\"SAP-icons-TNT\" = \"tnt\",\n\t\"BusinessSuiteInAppSymbols\" = \"business-suite\",\n}\n\n/**\n * Returns the collection name for a given alias:\n *\n * - \"SAP-icons-TNT\"resolves to \"tnt\"\n * - \"BusinessSuiteInAppSymbols\" resolves to \"business-suite\"\n * - \"horizon\" resolves to \"SAP-icons-v5\"\n *\n * @param { string } collectionName\n * @return { string } the normalized collection name\n */\nconst getIconCollectionByAlias = (collectionName: string) => {\n\tif (IconCollectionsAlias[collectionName as keyof typeof IconCollectionsAlias]) {\n\t\treturn IconCollectionsAlias[collectionName as keyof typeof IconCollectionsAlias];\n\t}\n\n\treturn collectionName;\n};\n\nexport default IconCollectionsAlias;\nexport {\n\tgetIconCollectionByAlias,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IconCollectionsByTheme.js","sourceRoot":"","sources":["../../../src/asset-registries/util/IconCollectionsByTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,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;AAID,MAAM,eAAe,GAAG,IAAI,GAAG,EAAgC,CAAC;AAChE,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE;IAChC,QAAQ,EAAE,wBAAwB,CAAC,UAAU;IAC7C,aAAa,EAAE,wBAAwB,CAAC,UAAU;CAClD,CAAC,CAAC;AACH,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE;IAC1B,QAAQ,EAAE,wBAAwB,CAAC,aAAa;IAChD,aAAa,EAAE,wBAAwB,CAAC,aAAa;CACrD,CAAC,CAAC;AACH,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE;IACrC,QAAQ,EAAE,wBAAwB,CAAC,YAAY;IAC/C,aAAa,EAAE,wBAAwB,CAAC,YAAY;CACpD,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,8BAA8B,GAAG,CAAC,cAAsB,EAAE,kBAAwC,EAAE,EAAE;IAC3G,IAAI,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;QACxC,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,GAAG,kBAAkB,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACvG,OAAO;KACP;IACD,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC5D,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC;IACrE,OAAO,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,CAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;AACjH,CAAC,CAAC;AAEF,OAAO,EACN,8BAA8B,EAC9B,yBAAyB,EACzB,wBAAwB,GACxB,CAAC","sourcesContent":["import { isLegacyThemeFamily } from \"../../config/Theme.js\";\n\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\ntype ThemeToCollectionMap = {[x: string]: string; };\n\nconst iconCollections = new Map<string, ThemeToCollectionMap>();\niconCollections.set(\"SAP-icons\", {\n\t\"legacy\": RegisteredIconCollection.SAPIconsV4,\n\t\"sap_horizon\": RegisteredIconCollection.SAPIconsV5,\n});\niconCollections.set(\"tnt\", {\n\t\"legacy\": RegisteredIconCollection.SAPIconsTNTV2,\n\t\"sap_horizon\": RegisteredIconCollection.SAPIconsTNTV3,\n});\niconCollections.set(\"business-suite\", {\n\t\"legacy\": RegisteredIconCollection.SAPBSIconsV1,\n\t\"sap_horizon\": RegisteredIconCollection.SAPBSIconsV2,\n});\n\n/**\n * Registers collection version per theme.\n * **For exmaple:** registerIconCollectionForTheme(\"my-custom-icons\", {\"sap_horizon\": \"my-custom-icons-v5\"})\n * @param { string } collectionName\n * @param { ThemeToCollectionMap } themeCollectionMap\n */\nconst registerIconCollectionForTheme = (collectionName: string, themeCollectionMap: ThemeToCollectionMap) => {\n\tif (iconCollections.has(collectionName)) {\n\t\ticonCollections.set(collectionName, { ...themeCollectionMap, ...iconCollections.get(collectionName) });\n\t\treturn;\n\t}\n\ticonCollections.set(collectionName, themeCollectionMap);\n};\n\nconst getIconCollectionForTheme = (collectionName: string) => {\n\tconst themeFamily = isLegacyThemeFamily() ? \"legacy\" : \"sap_horizon\";\n\treturn iconCollections.has(collectionName) ? iconCollections.get(collectionName)![themeFamily] : collectionName;\n};\n\nexport {\n\tregisterIconCollectionForTheme,\n\tgetIconCollectionForTheme,\n\tRegisteredIconCollection,\n};\n"]}
1
+ {"version":3,"file":"IconCollectionsByTheme.js","sourceRoot":"","sources":["../../../src/asset-registries/util/IconCollectionsByTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,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;AAID,MAAM,eAAe,GAAG,IAAI,GAAG,EAAgC,CAAC;AAChE,eAAe,CAAC,GAAG,CAAC,WAAW,EAAE;IAChC,QAAQ,EAAE,wBAAwB,CAAC,UAAU;IAC7C,aAAa,EAAE,wBAAwB,CAAC,UAAU;CAClD,CAAC,CAAC;AACH,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE;IAC1B,QAAQ,EAAE,wBAAwB,CAAC,aAAa;IAChD,aAAa,EAAE,wBAAwB,CAAC,aAAa;CACrD,CAAC,CAAC;AACH,eAAe,CAAC,GAAG,CAAC,gBAAgB,EAAE;IACrC,QAAQ,EAAE,wBAAwB,CAAC,YAAY;IAC/C,aAAa,EAAE,wBAAwB,CAAC,YAAY;CACpD,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,8BAA8B,GAAG,CAAC,cAAsB,EAAE,kBAAwC,EAAE,EAAE;IAC3G,IAAI,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QACzC,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,GAAG,kBAAkB,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACvG,OAAO;IACR,CAAC;IACD,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC5D,MAAM,WAAW,GAAG,mBAAmB,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC;IACrE,OAAO,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,CAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;AACjH,CAAC,CAAC;AAEF,OAAO,EACN,8BAA8B,EAC9B,yBAAyB,EACzB,wBAAwB,GACxB,CAAC","sourcesContent":["import { isLegacyThemeFamily } from \"../../config/Theme.js\";\n\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\ntype ThemeToCollectionMap = {[x: string]: string; };\n\nconst iconCollections = new Map<string, ThemeToCollectionMap>();\niconCollections.set(\"SAP-icons\", {\n\t\"legacy\": RegisteredIconCollection.SAPIconsV4,\n\t\"sap_horizon\": RegisteredIconCollection.SAPIconsV5,\n});\niconCollections.set(\"tnt\", {\n\t\"legacy\": RegisteredIconCollection.SAPIconsTNTV2,\n\t\"sap_horizon\": RegisteredIconCollection.SAPIconsTNTV3,\n});\niconCollections.set(\"business-suite\", {\n\t\"legacy\": RegisteredIconCollection.SAPBSIconsV1,\n\t\"sap_horizon\": RegisteredIconCollection.SAPBSIconsV2,\n});\n\n/**\n * Registers collection version per theme.\n * **For exmaple:** registerIconCollectionForTheme(\"my-custom-icons\", {\"sap_horizon\": \"my-custom-icons-v5\"})\n * @param { string } collectionName\n * @param { ThemeToCollectionMap } themeCollectionMap\n */\nconst registerIconCollectionForTheme = (collectionName: string, themeCollectionMap: ThemeToCollectionMap) => {\n\tif (iconCollections.has(collectionName)) {\n\t\ticonCollections.set(collectionName, { ...themeCollectionMap, ...iconCollections.get(collectionName) });\n\t\treturn;\n\t}\n\ticonCollections.set(collectionName, themeCollectionMap);\n};\n\nconst getIconCollectionForTheme = (collectionName: string) => {\n\tconst themeFamily = isLegacyThemeFamily() ? \"legacy\" : \"sap_horizon\";\n\treturn iconCollections.has(collectionName) ? iconCollections.get(collectionName)![themeFamily] : collectionName;\n};\n\nexport {\n\tregisterIconCollectionForTheme,\n\tgetIconCollectionForTheme,\n\tRegisteredIconCollection,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"getIconCollectionByTheme.js","sourceRoot":"","sources":["../../../src/asset-registries/util/getIconCollectionByTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE;;;;;;;;;GASG;AACH,MAAM,0BAA0B,GAAG,CAAC,cAA+B,EAAkB,EAAE;IACtF,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEnE,uHAAuH;IACvH,IAAI,CAAC,cAAc,IAAI,qBAAqB,EAAE;QAC7C,OAAO,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;KACvD;IAED,4DAA4D;IAC5D,IAAI,CAAC,cAAc,EAAE;QACpB,OAAO,yBAAyB,CAAC,WAAW,CAAC,CAAC;KAC9C;IAED,wIAAwI;IACxI,OAAO,yBAAyB,CAAC,cAAc,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,eAAe,0BAA0B,CAAC","sourcesContent":["import { getTheme } from \"../../config/Theme.js\";\nimport type { IconCollection } from \"../../config/Icons.js\";\nimport { getDefaultIconCollection } from \"../../config/Icons.js\";\nimport { getIconCollectionByAlias } from \"./IconCollectionsAlias.js\";\nimport { getIconCollectionForTheme } from \"./IconCollectionsByTheme.js\";\n\n/**\n * Returns the effective theme dependant icon collection:\n *\n * - \"no collection\" resolves to \"SAP-icons-v4\" in \"Quartz\" and to \"SAP-icons-v5\" in \"Horizon\"\n * - \"tnt\" (and its alias \"SAP-icons-TNT\") resolves to \"tnt-v2\" in \"Quartz\" and resolves to \"tnt-v3\" in \"Horizon\"\n * - \"business-suite\" (and its alias \"BusinessSuiteInAppSymbols\") resolves to \"business-suite-v1\" in \"Quartz\" and resolves to \"business-suite-v2\" in \"Horizon\"\n *\n * @param { IconCollection } collectionName\n * @returns { IconCollection } the effective collection name\n */\nconst getEffectiveIconCollection = (collectionName?: IconCollection): IconCollection => {\n\tconst defaultIconCollection = getDefaultIconCollection(getTheme());\n\n\t// no collection + default collection, configured via setDefaultIconCollection - return the configured icon collection.\n\tif (!collectionName && defaultIconCollection) {\n\t\treturn getIconCollectionByAlias(defaultIconCollection);\n\t}\n\n\t// no collection - return \"SAP-icons-v4\" or \"SAP-icons-v5\".\n\tif (!collectionName) {\n\t\treturn getIconCollectionForTheme(\"SAP-icons\");\n\t}\n\n\t// has collection - return \"SAP-icons-v4\", \"SAP-icons-v5\", \"tnt-v1\", \"tnt-v2\", \"business-suite-v1\", \"business-suite-v2\", or custom ones.\n\treturn getIconCollectionForTheme(collectionName);\n};\n\nexport default getEffectiveIconCollection;\n"]}
1
+ {"version":3,"file":"getIconCollectionByTheme.js","sourceRoot":"","sources":["../../../src/asset-registries/util/getIconCollectionByTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE;;;;;;;;;GASG;AACH,MAAM,0BAA0B,GAAG,CAAC,cAA+B,EAAkB,EAAE;IACtF,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEnE,uHAAuH;IACvH,IAAI,CAAC,cAAc,IAAI,qBAAqB,EAAE,CAAC;QAC9C,OAAO,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IACxD,CAAC;IAED,4DAA4D;IAC5D,IAAI,CAAC,cAAc,EAAE,CAAC;QACrB,OAAO,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,wIAAwI;IACxI,OAAO,yBAAyB,CAAC,cAAc,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,eAAe,0BAA0B,CAAC","sourcesContent":["import { getTheme } from \"../../config/Theme.js\";\nimport type { IconCollection } from \"../../config/Icons.js\";\nimport { getDefaultIconCollection } from \"../../config/Icons.js\";\nimport { getIconCollectionByAlias } from \"./IconCollectionsAlias.js\";\nimport { getIconCollectionForTheme } from \"./IconCollectionsByTheme.js\";\n\n/**\n * Returns the effective theme dependant icon collection:\n *\n * - \"no collection\" resolves to \"SAP-icons-v4\" in \"Quartz\" and to \"SAP-icons-v5\" in \"Horizon\"\n * - \"tnt\" (and its alias \"SAP-icons-TNT\") resolves to \"tnt-v2\" in \"Quartz\" and resolves to \"tnt-v3\" in \"Horizon\"\n * - \"business-suite\" (and its alias \"BusinessSuiteInAppSymbols\") resolves to \"business-suite-v1\" in \"Quartz\" and resolves to \"business-suite-v2\" in \"Horizon\"\n *\n * @param { IconCollection } collectionName\n * @returns { IconCollection } the effective collection name\n */\nconst getEffectiveIconCollection = (collectionName?: IconCollection): IconCollection => {\n\tconst defaultIconCollection = getDefaultIconCollection(getTheme());\n\n\t// no collection + default collection, configured via setDefaultIconCollection - return the configured icon collection.\n\tif (!collectionName && defaultIconCollection) {\n\t\treturn getIconCollectionByAlias(defaultIconCollection);\n\t}\n\n\t// no collection - return \"SAP-icons-v4\" or \"SAP-icons-v5\".\n\tif (!collectionName) {\n\t\treturn getIconCollectionForTheme(\"SAP-icons\");\n\t}\n\n\t// has collection - return \"SAP-icons-v4\", \"SAP-icons-v5\", \"tnt-v1\", \"tnt-v2\", \"business-suite-v1\", \"business-suite-v2\", or custom ones.\n\treturn getIconCollectionForTheme(collectionName);\n};\n\nexport default getEffectiveIconCollection;\n"]}
@@ -1,6 +1,10 @@
1
1
  import { getAnimationMode as getConfiguredAnimationMode } from "../InitialConfiguration.js";
2
2
  import AnimationMode from "../types/AnimationMode.js";
3
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
3
4
  let curAnimationMode;
5
+ attachConfigurationReset(() => {
6
+ curAnimationMode = undefined;
7
+ });
4
8
  /**
5
9
  * Returns the animation mode - "full", "basic", "minimal" or "none".
6
10
  * @public
@@ -1 +1 @@
1
- {"version":3,"file":"AnimationMode.js","sourceRoot":"","sources":["../../src/config/AnimationMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,aAAa,MAAM,2BAA2B,CAAC;AAEtD,IAAI,gBAAoC,CAAC;AAEzC;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,GAAuB,EAAE;IACjD,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACnC,gBAAgB,GAAG,0BAA0B,EAAE,CAAC;KAChD;IAED,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,aAAiC,EAAE,EAAE;IAC9D,MAAM,OAAO,GAAa,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACvD,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;QACpC,gBAAgB,GAAG,aAAa,CAAC;KACjC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,CAAC","sourcesContent":["import { getAnimationMode as getConfiguredAnimationMode } from \"../InitialConfiguration.js\";\nimport AnimationMode from \"../types/AnimationMode.js\";\n\nlet curAnimationMode: `${AnimationMode}`;\n\n/**\n * Returns the animation mode - \"full\", \"basic\", \"minimal\" or \"none\".\n * @public\n * @returns { AnimationMode }\n */\nconst getAnimationMode = (): `${AnimationMode}` => {\n\tif (curAnimationMode === undefined) {\n\t\tcurAnimationMode = getConfiguredAnimationMode();\n\t}\n\n\treturn curAnimationMode;\n};\n\n/**\n * Sets the animation mode - \"full\", \"basic\", \"minimal\" or \"none\".\n * @public\n * @param { AnimationMode } animationMode\n */\nconst setAnimationMode = (animationMode: `${AnimationMode}`) => {\n\tconst options: string[] = Object.values(AnimationMode);\n\tif (options.includes(animationMode)) {\n\t\tcurAnimationMode = animationMode;\n\t}\n};\n\nexport {\n\tgetAnimationMode,\n\tsetAnimationMode,\n};\n"]}
1
+ {"version":3,"file":"AnimationMode.js","sourceRoot":"","sources":["../../src/config/AnimationMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,aAAa,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,gBAAgD,CAAC;AAErD,wBAAwB,CAAC,GAAG,EAAE;IAC7B,gBAAgB,GAAG,SAAS,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,GAAuB,EAAE;IACjD,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACpC,gBAAgB,GAAG,0BAA0B,EAAE,CAAC;IACjD,CAAC;IAED,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,aAAiC,EAAE,EAAE;IAC9D,MAAM,OAAO,GAAa,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACvD,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACrC,gBAAgB,GAAG,aAAa,CAAC;IAClC,CAAC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,CAAC","sourcesContent":["import { getAnimationMode as getConfiguredAnimationMode } from \"../InitialConfiguration.js\";\nimport AnimationMode from \"../types/AnimationMode.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet curAnimationMode: `${AnimationMode}` | undefined;\n\nattachConfigurationReset(() => {\n\tcurAnimationMode = undefined;\n});\n\n/**\n * Returns the animation mode - \"full\", \"basic\", \"minimal\" or \"none\".\n * @public\n * @returns { AnimationMode }\n */\nconst getAnimationMode = (): `${AnimationMode}` => {\n\tif (curAnimationMode === undefined) {\n\t\tcurAnimationMode = getConfiguredAnimationMode();\n\t}\n\n\treturn curAnimationMode;\n};\n\n/**\n * Sets the animation mode - \"full\", \"basic\", \"minimal\" or \"none\".\n * @public\n * @param { AnimationMode } animationMode\n */\nconst setAnimationMode = (animationMode: `${AnimationMode}`) => {\n\tconst options: string[] = Object.values(AnimationMode);\n\tif (options.includes(animationMode)) {\n\t\tcurAnimationMode = animationMode;\n\t}\n};\n\nexport {\n\tgetAnimationMode,\n\tsetAnimationMode,\n};\n"]}
@@ -1,7 +1,12 @@
1
1
  import CalendarType from "../types/CalendarType.js";
2
2
  import { getCalendarType as getConfiguredCalendarType, getSecondaryCalendarType as getConfiguredSecondaryCalendarType, } from "../InitialConfiguration.js";
3
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
3
4
  let calendarType;
4
5
  let secondaryCalendarType;
6
+ attachConfigurationReset(() => {
7
+ calendarType = undefined;
8
+ secondaryCalendarType = undefined;
9
+ });
5
10
  /**
6
11
  * Returns the configured or default calendar type.
7
12
  * @public
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarType.js","sourceRoot":"","sources":["../../src/config/CalendarType.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EACN,eAAe,IAAI,yBAAyB,EAC5C,wBAAwB,IAAI,kCAAkC,GAC9D,MAAM,4BAA4B,CAAC;AAEpC,IAAI,YAAsC,CAAC;AAC3C,IAAI,qBAA+C,CAAC;AAEpD;;;;GAIG;AACH,MAAM,eAAe,GAAG,GAAiB,EAAE;IAC1C,IAAI,YAAY,KAAK,SAAS,EAAE;QAC/B,YAAY,GAAG,yBAAyB,EAAE,CAAC;KAC3C;IAED,IAAI,YAAY,IAAI,YAAY,IAAI,YAAY,EAAE;QACjD,OAAO,YAAY,CAAC;KACpB;IAED,OAAO,YAAY,CAAC,SAAS,CAAC;AAC/B,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,wBAAwB,GAAG,GAA6B,EAAE;IAC/D,IAAI,qBAAqB,KAAK,SAAS,EAAE;QACxC,qBAAqB,GAAG,kCAAkC,EAAE,CAAC;KAC7D;IAED,IAAI,qBAAqB,IAAI,qBAAqB,IAAI,YAAY,EAAE;QACnE,OAAO,qBAAqB,CAAC;KAC7B;IAED,OAAO,qBAAqB,CAAC;AAC9B,CAAC,CAAC;AAEF,OAAO,EACN,eAAe,EACf,wBAAwB,GACxB,CAAC","sourcesContent":["import CalendarType from \"../types/CalendarType.js\";\nimport {\n\tgetCalendarType as getConfiguredCalendarType,\n\tgetSecondaryCalendarType as getConfiguredSecondaryCalendarType,\n} from \"../InitialConfiguration.js\";\n\nlet calendarType: CalendarType | undefined;\nlet secondaryCalendarType: CalendarType | undefined;\n\n/**\n * Returns the configured or default calendar type.\n * @public\n * @returns { CalendarType } the effective calendar type\n */\nconst getCalendarType = (): CalendarType => {\n\tif (calendarType === undefined) {\n\t\tcalendarType = getConfiguredCalendarType();\n\t}\n\n\tif (calendarType && calendarType in CalendarType) {\n\t\treturn calendarType;\n\t}\n\n\treturn CalendarType.Gregorian;\n};\n\n/**\n * Returns the configured secondary calendar type.\n * @public\n * @returns { CalendarType | undefined } the effective calendar type\n * @since 1.18.0\n */\nconst getSecondaryCalendarType = (): CalendarType | undefined => {\n\tif (secondaryCalendarType === undefined) {\n\t\tsecondaryCalendarType = getConfiguredSecondaryCalendarType();\n\t}\n\n\tif (secondaryCalendarType && secondaryCalendarType in CalendarType) {\n\t\treturn secondaryCalendarType;\n\t}\n\n\treturn secondaryCalendarType;\n};\n\nexport {\n\tgetCalendarType,\n\tgetSecondaryCalendarType,\n};\n"]}
1
+ {"version":3,"file":"CalendarType.js","sourceRoot":"","sources":["../../src/config/CalendarType.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EACN,eAAe,IAAI,yBAAyB,EAC5C,wBAAwB,IAAI,kCAAkC,GAC9D,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,YAAsC,CAAC;AAC3C,IAAI,qBAA+C,CAAC;AAEpD,wBAAwB,CAAC,GAAG,EAAE;IAC7B,YAAY,GAAG,SAAS,CAAC;IACzB,qBAAqB,GAAG,SAAS,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,eAAe,GAAG,GAAiB,EAAE;IAC1C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAChC,YAAY,GAAG,yBAAyB,EAAE,CAAC;IAC5C,CAAC;IAED,IAAI,YAAY,IAAI,YAAY,IAAI,YAAY,EAAE,CAAC;QAClD,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,OAAO,YAAY,CAAC,SAAS,CAAC;AAC/B,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,wBAAwB,GAAG,GAA6B,EAAE;IAC/D,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACzC,qBAAqB,GAAG,kCAAkC,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,qBAAqB,IAAI,qBAAqB,IAAI,YAAY,EAAE,CAAC;QACpE,OAAO,qBAAqB,CAAC;IAC9B,CAAC;IAED,OAAO,qBAAqB,CAAC;AAC9B,CAAC,CAAC;AAEF,OAAO,EACN,eAAe,EACf,wBAAwB,GACxB,CAAC","sourcesContent":["import CalendarType from \"../types/CalendarType.js\";\nimport {\n\tgetCalendarType as getConfiguredCalendarType,\n\tgetSecondaryCalendarType as getConfiguredSecondaryCalendarType,\n} from \"../InitialConfiguration.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet calendarType: CalendarType | undefined;\nlet secondaryCalendarType: CalendarType | undefined;\n\nattachConfigurationReset(() => {\n\tcalendarType = undefined;\n\tsecondaryCalendarType = undefined;\n});\n\n/**\n * Returns the configured or default calendar type.\n * @public\n * @returns { CalendarType } the effective calendar type\n */\nconst getCalendarType = (): CalendarType => {\n\tif (calendarType === undefined) {\n\t\tcalendarType = getConfiguredCalendarType();\n\t}\n\n\tif (calendarType && calendarType in CalendarType) {\n\t\treturn calendarType;\n\t}\n\n\treturn CalendarType.Gregorian;\n};\n\n/**\n * Returns the configured secondary calendar type.\n * @public\n * @returns { CalendarType | undefined } the effective calendar type\n * @since 1.18.0\n */\nconst getSecondaryCalendarType = (): CalendarType | undefined => {\n\tif (secondaryCalendarType === undefined) {\n\t\tsecondaryCalendarType = getConfiguredSecondaryCalendarType();\n\t}\n\n\tif (secondaryCalendarType && secondaryCalendarType in CalendarType) {\n\t\treturn secondaryCalendarType;\n\t}\n\n\treturn secondaryCalendarType;\n};\n\nexport {\n\tgetCalendarType,\n\tgetSecondaryCalendarType,\n};\n"]}
@@ -0,0 +1,4 @@
1
+ type ConfigurationResetCallback = () => void;
2
+ declare const attachConfigurationReset: (listener: ConfigurationResetCallback) => void;
3
+ declare const resetConfiguration: () => void;
4
+ export { attachConfigurationReset, resetConfiguration, };
@@ -0,0 +1,11 @@
1
+ import EventProvider from "../EventProvider.js";
2
+ const eventProvider = new EventProvider();
3
+ const CONFIGURATION_RESET = "configurationReset";
4
+ const attachConfigurationReset = (listener) => {
5
+ eventProvider.attachEvent(CONFIGURATION_RESET, listener);
6
+ };
7
+ const resetConfiguration = () => {
8
+ eventProvider.fireEvent(CONFIGURATION_RESET, undefined);
9
+ };
10
+ export { attachConfigurationReset, resetConfiguration, };
11
+ //# sourceMappingURL=ConfigurationReset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigurationReset.js","sourceRoot":"","sources":["../../src/config/ConfigurationReset.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAEhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAmB,CAAC;AAC3D,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AAGjD,MAAM,wBAAwB,GAAG,CAAC,QAAoC,EAAE,EAAE;IACzE,aAAa,CAAC,WAAW,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAC/B,aAAa,CAAC,SAAS,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,OAAO,EACN,wBAAwB,EACxB,kBAAkB,GAClB,CAAC","sourcesContent":["import EventProvider from \"../EventProvider.js\";\n\nconst eventProvider = new EventProvider<undefined, void>();\nconst CONFIGURATION_RESET = \"configurationReset\";\ntype ConfigurationResetCallback = () => void;\n\nconst attachConfigurationReset = (listener: ConfigurationResetCallback) => {\n\teventProvider.attachEvent(CONFIGURATION_RESET, listener);\n};\n\nconst resetConfiguration = () => {\n\teventProvider.fireEvent(CONFIGURATION_RESET, undefined);\n};\n\nexport {\n\tattachConfigurationReset,\n\tresetConfiguration,\n};\n"]}
@@ -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,3 +1,4 @@
1
+ declare const getLanguageChangePending: () => boolean;
1
2
  /**
2
3
  * Returns the currently configured language, or the browser language as a fallback.
3
4
  * @public
@@ -37,4 +38,4 @@ declare const setFetchDefaultLanguage: (fetchDefaultLang: boolean) => void;
37
38
  * @returns {boolean}
38
39
  */
39
40
  declare const getFetchDefaultLanguage: () => boolean;
40
- export { getLanguage, setLanguage, getDefaultLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
41
+ export { getLanguage, setLanguage, getDefaultLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, getLanguageChangePending, };
@@ -3,8 +3,22 @@ import { fireLanguageChange } from "../locale/languageChange.js";
3
3
  import { reRenderAllUI5Elements } from "../Render.js";
4
4
  import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
5
5
  import { isBooted } from "../Boot.js";
6
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
6
7
  let curLanguage;
7
8
  let fetchDefaultLanguage;
9
+ attachConfigurationReset(() => {
10
+ curLanguage = undefined;
11
+ fetchDefaultLanguage = undefined;
12
+ });
13
+ // Flag indicating that a language change is in progress and not yet complete.
14
+ // While this flag is true, language-aware components will not re-render.
15
+ // These components may rely on language-specific data (e.g., CLDR, language bundles),
16
+ // which might be unavailable during the loading phase.
17
+ // During this phase, all re-rendering is postponed.
18
+ // Once all necessary language data has been loaded, the language change
19
+ // will trigger a re-render of all language-aware components.
20
+ let languageChangePending = false;
21
+ const getLanguageChangePending = () => languageChangePending;
8
22
  /**
9
23
  * Returns the currently configured language, or the browser language as a fallback.
10
24
  * @public
@@ -28,9 +42,11 @@ const setLanguage = async (language) => {
28
42
  if (curLanguage === language) {
29
43
  return;
30
44
  }
45
+ languageChangePending = true;
31
46
  curLanguage = language;
47
+ await fireLanguageChange(language);
48
+ languageChangePending = false;
32
49
  if (isBooted()) {
33
- await fireLanguageChange(language);
34
50
  await reRenderAllUI5Elements({ languageAware: true });
35
51
  }
36
52
  };
@@ -63,9 +79,9 @@ const setFetchDefaultLanguage = (fetchDefaultLang) => {
63
79
  */
64
80
  const getFetchDefaultLanguage = () => {
65
81
  if (fetchDefaultLanguage === undefined) {
66
- setFetchDefaultLanguage(getConfiguredFetchDefaultLanguage());
82
+ fetchDefaultLanguage = getConfiguredFetchDefaultLanguage();
67
83
  }
68
84
  return fetchDefaultLanguage;
69
85
  };
70
- export { getLanguage, setLanguage, getDefaultLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
86
+ export { getLanguage, setLanguage, getDefaultLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, getLanguageChangePending, };
71
87
  //# sourceMappingURL=Language.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Language.js","sourceRoot":"","sources":["../../src/config/Language.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,IAAI,qBAAqB,EACpC,uBAAuB,IAAI,iCAAiC,GAC5D,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,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,IAAI,QAAQ,EAAE,EAAE;QACf,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,sBAAsB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;KACtD;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;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\";\nimport { isBooted } from \"../Boot.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\tif (isBooted()) {\n\t\tawait fireLanguageChange(language);\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\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,8EAA8E;AAC9E,yEAAyE;AACzE,sFAAsF;AACtF,uDAAuD;AACvD,oDAAoD;AACpD,wEAAwE;AACxE,6DAA6D;AAC7D,IAAI,qBAAqB,GAAG,KAAK,CAAC;AAElC,MAAM,wBAAwB,GAAG,GAAG,EAAE,CAAC,qBAAqB,CAAC;AAE7D;;;;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,qBAAqB,GAAG,IAAI,CAAC;IAC7B,WAAW,GAAG,QAAQ,CAAC;IAEvB,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAEnC,qBAAqB,GAAG,KAAK,CAAC;IAE9B,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,EACvB,wBAAwB,GACxB,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// Flag indicating that a language change is in progress and not yet complete.\n// While this flag is true, language-aware components will not re-render.\n// These components may rely on language-specific data (e.g., CLDR, language bundles),\n// which might be unavailable during the loading phase.\n// During this phase, all re-rendering is postponed.\n// Once all necessary language data has been loaded, the language change\n// will trigger a re-render of all language-aware components.\nlet languageChangePending = false;\n\nconst getLanguageChangePending = () => languageChangePending;\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\tlanguageChangePending = true;\n\tcurLanguage = language;\n\n\tawait fireLanguageChange(language);\n\n\tlanguageChangePending = false;\n\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\tgetLanguageChangePending,\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"]}
@@ -4,7 +4,11 @@ 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
6
  import { boot, isBooted } from "../Boot.js";
7
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
7
8
  let curTheme;
9
+ attachConfigurationReset(() => {
10
+ curTheme = undefined;
11
+ });
8
12
  /**
9
13
  * Returns the current theme.
10
14
  * @public
@@ -51,8 +55,7 @@ const getDefaultTheme = () => {
51
55
  * @returns {boolean}
52
56
  */
53
57
  const isTheme = (theme) => {
54
- const currentTheme = getTheme();
55
- return currentTheme === theme || currentTheme === `${theme}_exp`;
58
+ return getTheme() === theme;
56
59
  };
57
60
  /**
58
61
  * Returns if the currently set theme is part of legacy theme families ("sap_fiori_3").