@ui5/webcomponents-base 0.0.0-a7032d86e → 0.0.0-a8a75c830

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 (1117) hide show
  1. package/.npsrc.json +3 -0
  2. package/AGENTS.md +195 -0
  3. package/CHANGELOG.md +2631 -0
  4. package/CLAUDE.md +1 -0
  5. package/LICENSE.txt +201 -0
  6. package/README.md +10 -16
  7. package/cypress.config.js +3 -0
  8. package/dist/.tsbuildinfobuild +1 -0
  9. package/dist/AssetRegistry.d.ts +2 -2
  10. package/dist/AssetRegistry.js +2 -2
  11. package/dist/AssetRegistry.js.map +1 -1
  12. package/dist/Assets-fetch.d.ts +1 -0
  13. package/dist/Assets-fetch.js +3 -0
  14. package/dist/Assets-fetch.js.map +1 -0
  15. package/dist/Assets-node.d.ts +12 -0
  16. package/dist/Assets-node.js +14 -0
  17. package/dist/Assets-node.js.map +1 -0
  18. package/dist/Assets.d.ts +1 -0
  19. package/dist/Assets.js +3 -0
  20. package/dist/Assets.js.map +1 -0
  21. package/dist/Boot.d.ts +7 -4
  22. package/dist/Boot.js +76 -15
  23. package/dist/Boot.js.map +1 -1
  24. package/dist/CustomElementsRegistry.d.ts +2 -1
  25. package/dist/CustomElementsRegistry.js +5 -2
  26. package/dist/CustomElementsRegistry.js.map +1 -1
  27. package/dist/CustomElementsScope.d.ts +4 -4
  28. package/dist/CustomElementsScope.js +2 -2
  29. package/dist/CustomElementsScope.js.map +1 -1
  30. package/dist/CustomElementsScopeUtils.d.ts +19 -3
  31. package/dist/CustomElementsScopeUtils.js +31 -2
  32. package/dist/CustomElementsScopeUtils.js.map +1 -1
  33. package/dist/DOMObserver.js.map +1 -1
  34. package/dist/Device.d.ts +17 -2
  35. package/dist/Device.js +116 -36
  36. package/dist/Device.js.map +1 -1
  37. package/dist/DragAndDrop.d.ts +2 -0
  38. package/dist/DragAndDrop.js +5 -0
  39. package/dist/DragAndDrop.js.map +1 -0
  40. package/dist/EventProvider.js +1 -1
  41. package/dist/EventProvider.js.map +1 -1
  42. package/dist/FeaturesRegistry.js.map +1 -1
  43. package/dist/FontFace.js +6 -9
  44. package/dist/FontFace.js.map +1 -1
  45. package/dist/IgnoreCustomElements.d.ts +25 -0
  46. package/dist/IgnoreCustomElements.js +37 -0
  47. package/dist/IgnoreCustomElements.js.map +1 -0
  48. package/dist/InitialConfiguration.d.ts +15 -3
  49. package/dist/InitialConfiguration.js +49 -10
  50. package/dist/InitialConfiguration.js.map +1 -1
  51. package/dist/Keys.d.ts +11 -1
  52. package/dist/Keys.js +117 -106
  53. package/dist/Keys.js.map +1 -1
  54. package/dist/Location.d.ts +11 -0
  55. package/dist/Location.js +49 -0
  56. package/dist/Location.js.map +1 -0
  57. package/dist/ManagedStyles.d.ts +5 -6
  58. package/dist/ManagedStyles.js +45 -53
  59. package/dist/ManagedStyles.js.map +1 -1
  60. package/dist/MediaRange.d.ts +6 -12
  61. package/dist/MediaRange.js +21 -31
  62. package/dist/MediaRange.js.map +1 -1
  63. package/dist/PropertiesFileFormat.js.map +1 -1
  64. package/dist/Render.js.map +1 -1
  65. package/dist/RenderQueue.js.map +1 -1
  66. package/dist/Runtimes.js +11 -0
  67. package/dist/Runtimes.js.map +1 -1
  68. package/dist/ScrollbarStyles.d.ts +2 -0
  69. package/dist/ScrollbarStyles.js +9 -0
  70. package/dist/ScrollbarStyles.js.map +1 -0
  71. package/dist/SystemCSSVars.js +2 -4
  72. package/dist/SystemCSSVars.js.map +1 -1
  73. package/dist/Theming.js.map +1 -1
  74. package/dist/UI5Element.d.ts +155 -77
  75. package/dist/UI5Element.js +466 -271
  76. package/dist/UI5Element.js.map +1 -1
  77. package/dist/UI5ElementMetadata.d.ts +36 -27
  78. package/dist/UI5ElementMetadata.js +27 -72
  79. package/dist/UI5ElementMetadata.js.map +1 -1
  80. package/dist/animations/AnimationQueue.js.map +1 -1
  81. package/dist/animations/animate.js.map +1 -1
  82. package/dist/animations/scroll.js.map +1 -1
  83. package/dist/animations/slideDown.js.map +1 -1
  84. package/dist/animations/slideUp.js.map +1 -1
  85. package/dist/asset-registries/Icons.d.ts +61 -18
  86. package/dist/asset-registries/Icons.js +110 -35
  87. package/dist/asset-registries/Icons.js.map +1 -1
  88. package/dist/asset-registries/Illustrations.d.ts +135 -8
  89. package/dist/asset-registries/Illustrations.js +133 -21
  90. package/dist/asset-registries/Illustrations.js.map +1 -1
  91. package/dist/asset-registries/LocaleData.js +2 -1
  92. package/dist/asset-registries/LocaleData.js.map +1 -1
  93. package/dist/asset-registries/Themes.d.ts +11 -9
  94. package/dist/asset-registries/Themes.js +32 -15
  95. package/dist/asset-registries/Themes.js.map +1 -1
  96. package/dist/asset-registries/i18n.d.ts +2 -2
  97. package/dist/asset-registries/i18n.js +12 -5
  98. package/dist/asset-registries/i18n.js.map +1 -1
  99. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  100. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  101. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  102. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  103. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  104. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  105. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  106. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  107. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  108. package/dist/config/AnimationMode.d.ts +2 -2
  109. package/dist/config/AnimationMode.js +6 -1
  110. package/dist/config/AnimationMode.js.map +1 -1
  111. package/dist/config/CalendarType.d.ts +8 -1
  112. package/dist/config/CalendarType.js +23 -2
  113. package/dist/config/CalendarType.js.map +1 -1
  114. package/dist/config/ConfigurationReset.d.ts +4 -0
  115. package/dist/config/ConfigurationReset.js +11 -0
  116. package/dist/config/ConfigurationReset.js.map +1 -0
  117. package/dist/config/Fonts.d.ts +16 -0
  118. package/dist/config/Fonts.js +30 -0
  119. package/dist/config/Fonts.js.map +1 -0
  120. package/dist/config/FormatSettings.d.ts +5 -1
  121. package/dist/config/FormatSettings.js +9 -1
  122. package/dist/config/FormatSettings.js.map +1 -1
  123. package/dist/config/Icons.d.ts +31 -21
  124. package/dist/config/Icons.js +28 -32
  125. package/dist/config/Icons.js.map +1 -1
  126. package/dist/config/Language.d.ts +12 -2
  127. package/dist/config/Language.js +35 -4
  128. package/dist/config/Language.js.map +1 -1
  129. package/dist/config/NoConflict.js +5 -0
  130. package/dist/config/NoConflict.js.map +1 -1
  131. package/dist/config/Theme.d.ts +28 -5
  132. package/dist/config/Theme.js +56 -10
  133. package/dist/config/Theme.js.map +1 -1
  134. package/dist/config/ThemeRoot.d.ts +29 -0
  135. package/dist/config/ThemeRoot.js +63 -0
  136. package/dist/config/ThemeRoot.js.map +1 -0
  137. package/dist/config/Timezone.d.ts +17 -0
  138. package/dist/config/Timezone.js +34 -0
  139. package/dist/config/Timezone.js.map +1 -0
  140. package/dist/config/Tooltips.d.ts +19 -0
  141. package/dist/config/Tooltips.js +29 -0
  142. package/dist/config/Tooltips.js.map +1 -0
  143. package/dist/connectToComponent.d.ts +9 -0
  144. package/dist/connectToComponent.js +59 -0
  145. package/dist/connectToComponent.js.map +1 -0
  146. package/dist/converters/DOMReference.d.ts +5 -0
  147. package/dist/converters/DOMReference.js +13 -0
  148. package/dist/converters/DOMReference.js.map +1 -0
  149. package/dist/css/MultipleDragGhost.css +17 -0
  150. package/dist/css/OpenUI5PopupStyles.css +10 -0
  151. package/dist/css/ScrollbarStyles.css +3 -0
  152. package/dist/css/SystemCSSVars.css +27 -10
  153. package/dist/custom-elements-internal.json +2920 -0
  154. package/dist/custom-elements.json +2617 -0
  155. package/dist/decorators/bound.d.ts +1 -0
  156. package/dist/decorators/bound.js +34 -0
  157. package/dist/decorators/bound.js.map +1 -0
  158. package/dist/decorators/customElement.d.ts +57 -2
  159. package/dist/decorators/customElement.js +34 -5
  160. package/dist/decorators/customElement.js.map +1 -1
  161. package/dist/decorators/event-strict.d.ts +15 -0
  162. package/dist/decorators/event-strict.js +26 -0
  163. package/dist/decorators/event-strict.js.map +1 -0
  164. package/dist/decorators/event.d.ts +8 -2
  165. package/dist/decorators/event.js +9 -6
  166. package/dist/decorators/event.js.map +1 -1
  167. package/dist/decorators/i18n.d.ts +17 -0
  168. package/dist/decorators/i18n.js +32 -0
  169. package/dist/decorators/i18n.js.map +1 -0
  170. package/dist/decorators/property.d.ts +1 -1
  171. package/dist/decorators/property.js +7 -7
  172. package/dist/decorators/property.js.map +1 -1
  173. package/dist/decorators/query.d.ts +25 -0
  174. package/dist/decorators/query.js +32 -0
  175. package/dist/decorators/query.js.map +1 -0
  176. package/dist/decorators/queryAll.d.ts +27 -0
  177. package/dist/decorators/queryAll.js +34 -0
  178. package/dist/decorators/queryAll.js.map +1 -0
  179. package/dist/decorators/slot-strict.d.ts +27 -0
  180. package/dist/decorators/slot-strict.js +54 -0
  181. package/dist/decorators/slot-strict.js.map +1 -0
  182. package/dist/decorators/slot.d.ts +19 -1
  183. package/dist/decorators/slot.js +27 -9
  184. package/dist/decorators/slot.js.map +1 -1
  185. package/dist/decorators.d.ts +9 -0
  186. package/dist/decorators.js +10 -0
  187. package/dist/decorators.js.map +1 -0
  188. package/dist/delegate/ItemNavigation.d.ts +9 -8
  189. package/dist/delegate/ItemNavigation.js +13 -14
  190. package/dist/delegate/ItemNavigation.js.map +1 -1
  191. package/dist/delegate/ResizeHandler.d.ts +6 -7
  192. package/dist/delegate/ResizeHandler.js +11 -9
  193. package/dist/delegate/ResizeHandler.js.map +1 -1
  194. package/dist/delegate/ScrollEnablement.d.ts +4 -3
  195. package/dist/delegate/ScrollEnablement.js +2 -2
  196. package/dist/delegate/ScrollEnablement.js.map +1 -1
  197. package/dist/features/F6Navigation.d.ts +8 -3
  198. package/dist/features/F6Navigation.js +134 -48
  199. package/dist/features/F6Navigation.js.map +1 -1
  200. package/dist/features/InputElementsFormSupport.d.ts +15 -0
  201. package/dist/features/InputElementsFormSupport.js +43 -0
  202. package/dist/features/InputElementsFormSupport.js.map +1 -0
  203. package/dist/features/LegacyDateFormats.d.ts +18 -0
  204. package/dist/features/LegacyDateFormats.js +20 -0
  205. package/dist/features/LegacyDateFormats.js.map +1 -0
  206. package/dist/features/OpenUI5Element.js.map +1 -1
  207. package/dist/features/OpenUI5Enablement.d.ts +3 -3
  208. package/dist/features/OpenUI5Enablement.js.map +1 -1
  209. package/dist/features/OpenUI5Support.d.ts +31 -9
  210. package/dist/features/OpenUI5Support.js +137 -50
  211. package/dist/features/OpenUI5Support.js.map +1 -1
  212. package/dist/features/insertOpenUI5PopupStyles.d.ts +2 -0
  213. package/dist/features/insertOpenUI5PopupStyles.js +9 -0
  214. package/dist/features/insertOpenUI5PopupStyles.js.map +1 -0
  215. package/dist/features/patchPatcher.d.ts +12 -0
  216. package/dist/features/patchPatcher.js +21 -0
  217. package/dist/features/patchPatcher.js.map +1 -0
  218. package/dist/features/patchPopup.d.ts +33 -0
  219. package/dist/features/patchPopup.js +163 -0
  220. package/dist/features/patchPopup.js.map +1 -0
  221. package/dist/generated/AssetParameters.d.ts +6 -0
  222. package/dist/generated/AssetParameters.js +4 -9
  223. package/dist/generated/AssetParameters.js.map +1 -0
  224. package/dist/generated/VersionInfo.d.ts +10 -0
  225. package/dist/generated/VersionInfo.js +9 -8
  226. package/dist/generated/VersionInfo.js.map +1 -0
  227. package/dist/generated/assets/i18n/messagebundle_en.json +1 -0
  228. package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  229. package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  230. package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  231. package/dist/generated/css/BusyIndicator.css.d.ts +2 -0
  232. package/dist/generated/css/BusyIndicator.css.js +2 -5
  233. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  234. package/dist/generated/css/FontFace.css.d.ts +2 -0
  235. package/dist/generated/css/FontFace.css.js +37 -5
  236. package/dist/generated/css/FontFace.css.js.map +1 -0
  237. package/dist/generated/css/MultipleDragGhost.css.d.ts +2 -0
  238. package/dist/generated/css/MultipleDragGhost.css.js +2 -0
  239. package/dist/generated/css/MultipleDragGhost.css.js.map +1 -0
  240. package/dist/generated/css/OpenUI5PopupStyles.css.d.ts +2 -0
  241. package/dist/generated/css/OpenUI5PopupStyles.css.js +2 -0
  242. package/dist/generated/css/OpenUI5PopupStyles.css.js.map +1 -0
  243. package/dist/generated/css/ScrollbarStyles.css.d.ts +2 -0
  244. package/dist/generated/css/ScrollbarStyles.css.js +2 -0
  245. package/dist/generated/css/ScrollbarStyles.css.js.map +1 -0
  246. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -0
  247. package/dist/generated/css/SystemCSSVars.css.js +2 -5
  248. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  249. package/dist/generated/i18n/i18n-defaults.d.ts +3 -0
  250. package/dist/generated/i18n/i18n-defaults.js +3 -0
  251. package/dist/generated/i18n/i18n-defaults.js.map +1 -0
  252. package/dist/generated/json-imports/i18n-fetch.d.ts +1 -0
  253. package/dist/generated/json-imports/i18n-fetch.js +2 -0
  254. package/dist/generated/json-imports/i18n-fetch.js.map +1 -0
  255. package/dist/generated/json-imports/i18n-node.d.ts +1 -0
  256. package/dist/generated/json-imports/i18n-node.js +2 -0
  257. package/dist/generated/json-imports/i18n-node.js.map +1 -0
  258. package/dist/generated/json-imports/i18n.d.ts +1 -0
  259. package/dist/generated/json-imports/i18n.js +2 -0
  260. package/dist/generated/json-imports/i18n.js.map +1 -0
  261. package/dist/getSharedResource.d.ts +1 -1
  262. package/dist/getSharedResource.js +16 -2
  263. package/dist/getSharedResource.js.map +1 -1
  264. package/{global.d.ts → dist/global.d.ts} +2 -6
  265. package/dist/i18nBundle.d.ts +2 -4
  266. package/dist/i18nBundle.js +3 -5
  267. package/dist/i18nBundle.js.map +1 -1
  268. package/dist/index.d.ts +50 -0
  269. package/dist/index.js +92 -0
  270. package/dist/index.js.map +1 -0
  271. package/dist/jsx-dev-runtime.d.ts +4 -0
  272. package/dist/jsx-dev-runtime.js +43 -0
  273. package/dist/jsx-dev-runtime.js.map +1 -0
  274. package/dist/jsx-runtime.d.ts +51 -0
  275. package/dist/jsx-runtime.js +27 -0
  276. package/dist/jsx-runtime.js.map +1 -0
  277. package/dist/jsx-utils.d.ts +3 -0
  278. package/dist/jsx-utils.js +48 -0
  279. package/dist/jsx-utils.js.map +1 -0
  280. package/dist/locale/Locale.js.map +1 -1
  281. package/dist/locale/RTLAwareRegistry.d.ts +1 -1
  282. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  283. package/dist/locale/applyDirection.d.ts +3 -2
  284. package/dist/locale/applyDirection.js +3 -2
  285. package/dist/locale/applyDirection.js.map +1 -1
  286. package/dist/locale/directionChange.js.map +1 -1
  287. package/dist/locale/getEffectiveDir.d.ts +1 -1
  288. package/dist/locale/getEffectiveDir.js +3 -19
  289. package/dist/locale/getEffectiveDir.js.map +1 -1
  290. package/dist/locale/getLocale.js.map +1 -1
  291. package/dist/locale/languageChange.js.map +1 -1
  292. package/dist/locale/nextFallbackLocale.js +6 -2
  293. package/dist/locale/nextFallbackLocale.js.map +1 -1
  294. package/dist/locale/normalizeLocale.js.map +1 -1
  295. package/dist/prod/AssetRegistry.js +2 -0
  296. package/dist/prod/AssetRegistry.js.map +7 -0
  297. package/dist/prod/Assets-fetch.js +2 -0
  298. package/dist/prod/Assets-fetch.js.map +7 -0
  299. package/dist/prod/Assets-node.js +2 -0
  300. package/dist/prod/Assets-node.js.map +7 -0
  301. package/dist/prod/Assets.js +2 -0
  302. package/dist/prod/Assets.js.map +7 -0
  303. package/dist/prod/Boot.js +2 -0
  304. package/dist/prod/Boot.js.map +7 -0
  305. package/dist/prod/CustomElementsRegistry.js +10 -0
  306. package/dist/prod/CustomElementsRegistry.js.map +7 -0
  307. package/dist/prod/CustomElementsScope.js +2 -0
  308. package/dist/prod/CustomElementsScope.js.map +7 -0
  309. package/dist/prod/CustomElementsScopeUtils.js +2 -0
  310. package/dist/prod/CustomElementsScopeUtils.js.map +7 -0
  311. package/dist/prod/DOMObserver.js +2 -0
  312. package/dist/prod/DOMObserver.js.map +7 -0
  313. package/dist/prod/Device.js +2 -0
  314. package/dist/prod/Device.js.map +7 -0
  315. package/dist/prod/DragAndDrop.js +2 -0
  316. package/dist/prod/DragAndDrop.js.map +7 -0
  317. package/dist/prod/EventProvider.js +2 -0
  318. package/dist/prod/EventProvider.js.map +7 -0
  319. package/dist/prod/FeaturesRegistry.js +2 -0
  320. package/dist/prod/FeaturesRegistry.js.map +7 -0
  321. package/dist/prod/FontFace.js +2 -0
  322. package/dist/prod/FontFace.js.map +7 -0
  323. package/dist/prod/IgnoreCustomElements.js +2 -0
  324. package/dist/prod/IgnoreCustomElements.js.map +7 -0
  325. package/dist/prod/InitialConfiguration.js +2 -0
  326. package/dist/prod/InitialConfiguration.js.map +7 -0
  327. package/dist/prod/Keys.js +2 -0
  328. package/dist/prod/Keys.js.map +7 -0
  329. package/dist/prod/Location.js +2 -0
  330. package/dist/prod/Location.js.map +7 -0
  331. package/dist/prod/ManagedStyles.js +2 -0
  332. package/dist/prod/ManagedStyles.js.map +7 -0
  333. package/dist/prod/MediaRange.js +2 -0
  334. package/dist/prod/MediaRange.js.map +7 -0
  335. package/dist/prod/PropertiesFileFormat.js +3 -0
  336. package/dist/prod/PropertiesFileFormat.js.map +7 -0
  337. package/dist/prod/Render.js +2 -0
  338. package/dist/prod/Render.js.map +7 -0
  339. package/dist/prod/RenderQueue.js +2 -0
  340. package/dist/prod/RenderQueue.js.map +7 -0
  341. package/dist/prod/Runtimes.js +2 -0
  342. package/dist/prod/Runtimes.js.map +7 -0
  343. package/dist/prod/ScrollbarStyles.js +2 -0
  344. package/dist/prod/ScrollbarStyles.js.map +7 -0
  345. package/dist/prod/SystemCSSVars.js +2 -0
  346. package/dist/prod/SystemCSSVars.js.map +7 -0
  347. package/dist/prod/Theming.js +2 -0
  348. package/dist/prod/Theming.js.map +7 -0
  349. package/dist/prod/UI5Element.js +2 -0
  350. package/dist/prod/UI5Element.js.map +7 -0
  351. package/dist/prod/UI5ElementMetadata.js +2 -0
  352. package/dist/prod/UI5ElementMetadata.js.map +7 -0
  353. package/dist/prod/animations/AnimationQueue.js +2 -0
  354. package/dist/prod/animations/AnimationQueue.js.map +7 -0
  355. package/dist/prod/animations/animate.js +2 -0
  356. package/dist/prod/animations/animate.js.map +7 -0
  357. package/dist/prod/animations/scroll.js +2 -0
  358. package/dist/prod/animations/scroll.js.map +7 -0
  359. package/dist/prod/animations/slideDown.js +2 -0
  360. package/dist/prod/animations/slideDown.js.map +7 -0
  361. package/dist/prod/animations/slideUp.js +2 -0
  362. package/dist/prod/animations/slideUp.js.map +7 -0
  363. package/dist/prod/asset-registries/Icons.js +2 -0
  364. package/dist/prod/asset-registries/Icons.js.map +7 -0
  365. package/dist/prod/asset-registries/Illustrations.js +2 -0
  366. package/dist/prod/asset-registries/Illustrations.js.map +7 -0
  367. package/dist/prod/asset-registries/LocaleData.js +2 -0
  368. package/dist/prod/asset-registries/LocaleData.js.map +7 -0
  369. package/dist/prod/asset-registries/Themes.js +2 -0
  370. package/dist/prod/asset-registries/Themes.js.map +7 -0
  371. package/dist/prod/asset-registries/i18n.js +2 -0
  372. package/dist/prod/asset-registries/i18n.js.map +7 -0
  373. package/dist/prod/asset-registries/util/IconCollectionsAlias.js +2 -0
  374. package/dist/prod/asset-registries/util/IconCollectionsAlias.js.map +7 -0
  375. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js +2 -0
  376. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js.map +7 -0
  377. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js +2 -0
  378. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js.map +7 -0
  379. package/dist/prod/config/AnimationMode.js +2 -0
  380. package/dist/prod/config/AnimationMode.js.map +7 -0
  381. package/dist/prod/config/CalendarType.js +2 -0
  382. package/dist/prod/config/CalendarType.js.map +7 -0
  383. package/dist/prod/config/ConfigurationReset.js +2 -0
  384. package/dist/prod/config/ConfigurationReset.js.map +7 -0
  385. package/dist/prod/config/Fonts.js +2 -0
  386. package/dist/prod/config/Fonts.js.map +7 -0
  387. package/dist/prod/config/FormatSettings.js +2 -0
  388. package/dist/prod/config/FormatSettings.js.map +7 -0
  389. package/dist/prod/config/Icons.js +2 -0
  390. package/dist/prod/config/Icons.js.map +7 -0
  391. package/dist/prod/config/Language.js +2 -0
  392. package/dist/prod/config/Language.js.map +7 -0
  393. package/dist/prod/config/NoConflict.js +2 -0
  394. package/dist/prod/config/NoConflict.js.map +7 -0
  395. package/dist/prod/config/Theme.js +2 -0
  396. package/dist/prod/config/Theme.js.map +7 -0
  397. package/dist/prod/config/ThemeRoot.js +2 -0
  398. package/dist/prod/config/ThemeRoot.js.map +7 -0
  399. package/dist/prod/config/Timezone.js +2 -0
  400. package/dist/prod/config/Timezone.js.map +7 -0
  401. package/dist/prod/config/Tooltips.js +2 -0
  402. package/dist/prod/config/Tooltips.js.map +7 -0
  403. package/dist/prod/connectToComponent.js +2 -0
  404. package/dist/prod/connectToComponent.js.map +7 -0
  405. package/dist/prod/converters/DOMReference.js +2 -0
  406. package/dist/prod/converters/DOMReference.js.map +7 -0
  407. package/dist/prod/decorators/bound.js +2 -0
  408. package/dist/prod/decorators/bound.js.map +7 -0
  409. package/dist/prod/decorators/customElement.js +2 -0
  410. package/dist/prod/decorators/customElement.js.map +7 -0
  411. package/dist/prod/decorators/event-strict.js +2 -0
  412. package/dist/prod/decorators/event-strict.js.map +7 -0
  413. package/dist/prod/decorators/event.js +2 -0
  414. package/dist/prod/decorators/event.js.map +7 -0
  415. package/dist/prod/decorators/i18n.js +2 -0
  416. package/dist/prod/decorators/i18n.js.map +7 -0
  417. package/dist/prod/decorators/property.js +2 -0
  418. package/dist/prod/decorators/property.js.map +7 -0
  419. package/dist/prod/decorators/query.js +2 -0
  420. package/dist/prod/decorators/query.js.map +7 -0
  421. package/dist/prod/decorators/queryAll.js +2 -0
  422. package/dist/prod/decorators/queryAll.js.map +7 -0
  423. package/dist/prod/decorators/slot-strict.js +2 -0
  424. package/dist/prod/decorators/slot-strict.js.map +7 -0
  425. package/dist/prod/decorators/slot.js +2 -0
  426. package/dist/prod/decorators/slot.js.map +7 -0
  427. package/dist/prod/decorators.js +2 -0
  428. package/dist/prod/decorators.js.map +7 -0
  429. package/dist/prod/delegate/ItemNavigation.js +2 -0
  430. package/dist/prod/delegate/ItemNavigation.js.map +7 -0
  431. package/dist/prod/delegate/ResizeHandler.js +2 -0
  432. package/dist/prod/delegate/ResizeHandler.js.map +7 -0
  433. package/dist/prod/delegate/ScrollEnablement.js +2 -0
  434. package/dist/prod/delegate/ScrollEnablement.js.map +7 -0
  435. package/dist/prod/features/F6Navigation.js +2 -0
  436. package/dist/prod/features/F6Navigation.js.map +7 -0
  437. package/dist/prod/features/InputElementsFormSupport.js +2 -0
  438. package/dist/prod/features/InputElementsFormSupport.js.map +7 -0
  439. package/dist/prod/features/LegacyDateFormats.js +2 -0
  440. package/dist/prod/features/LegacyDateFormats.js.map +7 -0
  441. package/dist/prod/features/OpenUI5Element.js +2 -0
  442. package/dist/prod/features/OpenUI5Element.js.map +7 -0
  443. package/dist/prod/features/OpenUI5Enablement.js +21 -0
  444. package/dist/prod/features/OpenUI5Enablement.js.map +7 -0
  445. package/dist/prod/features/OpenUI5Support.js +2 -0
  446. package/dist/prod/features/OpenUI5Support.js.map +7 -0
  447. package/dist/prod/features/insertOpenUI5PopupStyles.js +2 -0
  448. package/dist/prod/features/insertOpenUI5PopupStyles.js.map +7 -0
  449. package/dist/prod/features/patchPatcher.js +2 -0
  450. package/dist/prod/features/patchPatcher.js.map +7 -0
  451. package/dist/prod/features/patchPopup.js +2 -0
  452. package/dist/prod/features/patchPopup.js.map +7 -0
  453. package/dist/prod/generated/AssetParameters.js +2 -0
  454. package/dist/prod/generated/AssetParameters.js.map +7 -0
  455. package/dist/prod/generated/VersionInfo.js +2 -0
  456. package/dist/prod/generated/VersionInfo.js.map +7 -0
  457. package/dist/prod/generated/assets/i18n/messagebundle_en.json +1 -0
  458. package/dist/prod/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
  459. package/dist/prod/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
  460. package/dist/prod/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
  461. package/dist/prod/generated/css/BusyIndicator.css.js +2 -0
  462. package/dist/prod/generated/css/BusyIndicator.css.js.map +7 -0
  463. package/dist/prod/generated/css/FontFace.css.js +37 -0
  464. package/dist/prod/generated/css/FontFace.css.js.map +7 -0
  465. package/dist/prod/generated/css/MultipleDragGhost.css.js +2 -0
  466. package/dist/prod/generated/css/MultipleDragGhost.css.js.map +7 -0
  467. package/dist/prod/generated/css/OpenUI5PopupStyles.css.js +2 -0
  468. package/dist/prod/generated/css/OpenUI5PopupStyles.css.js.map +7 -0
  469. package/dist/prod/generated/css/ScrollbarStyles.css.js +2 -0
  470. package/dist/prod/generated/css/ScrollbarStyles.css.js.map +7 -0
  471. package/dist/prod/generated/css/SystemCSSVars.css.js +2 -0
  472. package/dist/prod/generated/css/SystemCSSVars.css.js.map +7 -0
  473. package/dist/prod/generated/i18n/i18n-defaults.js +2 -0
  474. package/dist/prod/generated/i18n/i18n-defaults.js.map +7 -0
  475. package/dist/prod/generated/json-imports/i18n-fetch.js +2 -0
  476. package/dist/prod/generated/json-imports/i18n-fetch.js.map +7 -0
  477. package/dist/prod/generated/json-imports/i18n-node.js +2 -0
  478. package/dist/prod/generated/json-imports/i18n-node.js.map +7 -0
  479. package/dist/prod/generated/json-imports/i18n.js +2 -0
  480. package/dist/prod/generated/json-imports/i18n.js.map +7 -0
  481. package/dist/prod/getSharedResource.js +2 -0
  482. package/dist/prod/getSharedResource.js.map +7 -0
  483. package/dist/prod/global.d.js +2 -0
  484. package/dist/prod/global.d.js.map +7 -0
  485. package/dist/prod/i18nBundle.js +2 -0
  486. package/dist/prod/i18nBundle.js.map +7 -0
  487. package/dist/prod/index.js +2 -0
  488. package/dist/prod/index.js.map +7 -0
  489. package/dist/prod/jsx-dev-runtime.js +2 -0
  490. package/dist/prod/jsx-dev-runtime.js.map +7 -0
  491. package/dist/prod/jsx-runtime.js +2 -0
  492. package/dist/prod/jsx-runtime.js.map +7 -0
  493. package/dist/prod/jsx-utils.js +2 -0
  494. package/dist/prod/jsx-utils.js.map +7 -0
  495. package/dist/prod/locale/Locale.js +2 -0
  496. package/dist/prod/locale/Locale.js.map +7 -0
  497. package/dist/prod/locale/RTLAwareRegistry.js +2 -0
  498. package/dist/prod/locale/RTLAwareRegistry.js.map +7 -0
  499. package/dist/prod/locale/applyDirection.js +2 -0
  500. package/dist/prod/locale/applyDirection.js.map +7 -0
  501. package/dist/prod/locale/directionChange.js +2 -0
  502. package/dist/prod/locale/directionChange.js.map +7 -0
  503. package/dist/prod/locale/getEffectiveDir.js +2 -0
  504. package/dist/prod/locale/getEffectiveDir.js.map +7 -0
  505. package/dist/prod/locale/getLocale.js +2 -0
  506. package/dist/prod/locale/getLocale.js.map +7 -0
  507. package/dist/prod/locale/languageChange.js +2 -0
  508. package/dist/prod/locale/languageChange.js.map +7 -0
  509. package/dist/prod/locale/nextFallbackLocale.js +2 -0
  510. package/dist/prod/locale/nextFallbackLocale.js.map +7 -0
  511. package/dist/prod/locale/normalizeLocale.js +2 -0
  512. package/dist/prod/locale/normalizeLocale.js.map +7 -0
  513. package/dist/prod/renderer/JsxRenderer.js +2 -0
  514. package/dist/prod/renderer/JsxRenderer.js.map +7 -0
  515. package/dist/prod/renderer/LitRenderer.js +2 -0
  516. package/dist/prod/renderer/LitRenderer.js.map +7 -0
  517. package/dist/prod/renderer/directives/style-map.js +6 -0
  518. package/dist/prod/renderer/directives/style-map.js.map +7 -0
  519. package/dist/prod/renderer/executeTemplate.js +2 -0
  520. package/dist/prod/renderer/executeTemplate.js.map +7 -0
  521. package/dist/prod/sap/base/Log.js +750 -0
  522. package/dist/prod/sap/base/assert.js +34 -0
  523. package/dist/prod/sap/base/config/MemoryConfigurationProvider.js +20 -0
  524. package/dist/prod/sap/base/security/URLListValidator.js +406 -0
  525. package/dist/prod/sap/base/security/encodeCSS.js +40 -0
  526. package/dist/prod/sap/base/security/encodeXML.js +53 -0
  527. package/dist/prod/sap/base/security/sanitizeHTML.js +38 -0
  528. package/dist/prod/sap/base/strings/toHex.js +33 -0
  529. package/dist/prod/sap/base/util/now.js +28 -0
  530. package/dist/prod/sap/base/util/uid.js +27 -0
  531. package/dist/prod/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  532. package/dist/prod/ssr-dom-shim.js +2 -0
  533. package/dist/prod/ssr-dom-shim.js.map +7 -0
  534. package/dist/prod/ssr-dom.js +2 -0
  535. package/dist/prod/ssr-dom.js.map +7 -0
  536. package/dist/prod/theming/CustomStyle.js +2 -0
  537. package/dist/prod/theming/CustomStyle.js.map +7 -0
  538. package/dist/prod/theming/ThemeLoaded.js +2 -0
  539. package/dist/prod/theming/ThemeLoaded.js.map +7 -0
  540. package/dist/prod/theming/ThemeRegistered.js +2 -0
  541. package/dist/prod/theming/ThemeRegistered.js.map +7 -0
  542. package/dist/prod/theming/applyTheme.js +2 -0
  543. package/dist/prod/theming/applyTheme.js.map +7 -0
  544. package/dist/prod/theming/componentStyles.js +3 -0
  545. package/dist/prod/theming/componentStyles.js.map +7 -0
  546. package/dist/prod/theming/getConstructableStyle.js +2 -0
  547. package/dist/prod/theming/getConstructableStyle.js.map +7 -0
  548. package/dist/prod/theming/getEffectiveStyle.js +2 -0
  549. package/dist/prod/theming/getEffectiveStyle.js.map +7 -0
  550. package/dist/prod/theming/getStylesString.js +2 -0
  551. package/dist/prod/theming/getStylesString.js.map +7 -0
  552. package/dist/prod/theming/getThemeDesignerTheme.js +2 -0
  553. package/dist/prod/theming/getThemeDesignerTheme.js.map +7 -0
  554. package/dist/prod/thirdparty/_merge.js +2 -0
  555. package/dist/prod/thirdparty/_merge.js.map +7 -0
  556. package/dist/prod/thirdparty/isPlainObject.js +2 -0
  557. package/dist/prod/thirdparty/isPlainObject.js.map +7 -0
  558. package/dist/prod/thirdparty/merge.js +2 -0
  559. package/dist/prod/thirdparty/merge.js.map +7 -0
  560. package/dist/prod/thirdparty/preact/jsx.d.js +2 -0
  561. package/dist/prod/thirdparty/preact/jsx.d.js.map +7 -0
  562. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js +2 -0
  563. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js.map +7 -0
  564. package/dist/prod/thirdparty/preact/jsxRuntime.module.js +1 -0
  565. package/dist/prod/thirdparty/preact/preact.module.d.js +2 -0
  566. package/dist/prod/thirdparty/preact/preact.module.d.js.map +7 -0
  567. package/dist/prod/thirdparty/preact/preact.module.js +1 -0
  568. package/dist/prod/types/AnimationMode.js +2 -0
  569. package/dist/prod/types/AnimationMode.js.map +7 -0
  570. package/dist/prod/types/CalendarType.js +2 -0
  571. package/dist/prod/types/CalendarType.js.map +7 -0
  572. package/dist/prod/types/InvisibleMessageMode.js +2 -0
  573. package/dist/prod/types/InvisibleMessageMode.js.map +7 -0
  574. package/dist/prod/types/ItemNavigationBehavior.js +2 -0
  575. package/dist/prod/types/ItemNavigationBehavior.js.map +7 -0
  576. package/dist/prod/types/MovePlacement.js +2 -0
  577. package/dist/prod/types/MovePlacement.js.map +7 -0
  578. package/dist/prod/types/NavigationMode.js +2 -0
  579. package/dist/prod/types/NavigationMode.js.map +7 -0
  580. package/dist/prod/types/Orientation.js +2 -0
  581. package/dist/prod/types/Orientation.js.map +7 -0
  582. package/dist/prod/types/SortOrder.js +2 -0
  583. package/dist/prod/types/SortOrder.js.map +7 -0
  584. package/dist/prod/types/ValueState.js +2 -0
  585. package/dist/prod/types/ValueState.js.map +7 -0
  586. package/dist/prod/types.js +2 -0
  587. package/dist/prod/types.js.map +7 -0
  588. package/dist/prod/updateShadowRoot.js +2 -0
  589. package/dist/prod/updateShadowRoot.js.map +7 -0
  590. package/dist/prod/util/AccessibilityTextsHelper.js +2 -0
  591. package/dist/prod/util/AccessibilityTextsHelper.js.map +7 -0
  592. package/dist/prod/util/Caret.js +2 -0
  593. package/dist/prod/util/Caret.js.map +7 -0
  594. package/dist/prod/util/ColorConversion.js +2 -0
  595. package/dist/prod/util/ColorConversion.js.map +7 -0
  596. package/dist/prod/util/FetchHelper.js +2 -0
  597. package/dist/prod/util/FetchHelper.js.map +7 -0
  598. package/dist/prod/util/FocusableElements.js +2 -0
  599. package/dist/prod/util/FocusableElements.js.map +7 -0
  600. package/dist/prod/util/HTMLSanitizer.js +2 -0
  601. package/dist/prod/util/HTMLSanitizer.js.map +7 -0
  602. package/dist/prod/util/InvisibleMessage.js +2 -0
  603. package/dist/prod/util/InvisibleMessage.js.map +7 -0
  604. package/dist/prod/util/PopupUtils.js +2 -0
  605. package/dist/prod/util/PopupUtils.js.map +7 -0
  606. package/dist/prod/util/SelectionAssistant.js +2 -0
  607. package/dist/prod/util/SelectionAssistant.js.map +7 -0
  608. package/dist/prod/util/SlotsHelper.js +2 -0
  609. package/dist/prod/util/SlotsHelper.js.map +7 -0
  610. package/dist/prod/util/StringHelper.js +2 -0
  611. package/dist/prod/util/StringHelper.js.map +7 -0
  612. package/dist/prod/util/TabbableElements.js +2 -0
  613. package/dist/prod/util/TabbableElements.js.map +7 -0
  614. package/dist/prod/util/arraysAreEqual.js +2 -0
  615. package/dist/prod/util/arraysAreEqual.js.map +7 -0
  616. package/dist/prod/util/clamp.js +2 -0
  617. package/dist/prod/util/clamp.js.map +7 -0
  618. package/dist/prod/util/createInstanceChecker.js +2 -0
  619. package/dist/prod/util/createInstanceChecker.js.map +7 -0
  620. package/dist/prod/util/createLinkInHead.js +2 -0
  621. package/dist/prod/util/createLinkInHead.js.map +7 -0
  622. package/dist/prod/util/createMultiInstanceChecker.js +2 -0
  623. package/dist/prod/util/createMultiInstanceChecker.js.map +7 -0
  624. package/dist/prod/util/debounce.js +2 -0
  625. package/dist/prod/util/debounce.js.map +7 -0
  626. package/dist/prod/util/detectNavigatorLanguage.js +2 -0
  627. package/dist/prod/util/detectNavigatorLanguage.js.map +7 -0
  628. package/dist/prod/util/dragAndDrop/DragRegistry.js +2 -0
  629. package/dist/prod/util/dragAndDrop/DragRegistry.js.map +7 -0
  630. package/dist/prod/util/dragAndDrop/findClosestPosition.js +2 -0
  631. package/dist/prod/util/dragAndDrop/findClosestPosition.js.map +7 -0
  632. package/dist/prod/util/dragAndDrop/handleDragOver.js +2 -0
  633. package/dist/prod/util/dragAndDrop/handleDragOver.js.map +7 -0
  634. package/dist/prod/util/dragAndDrop/handleDrop.js +2 -0
  635. package/dist/prod/util/dragAndDrop/handleDrop.js.map +7 -0
  636. package/dist/prod/util/dragAndDrop/longDragOverHandler.js +2 -0
  637. package/dist/prod/util/dragAndDrop/longDragOverHandler.js.map +7 -0
  638. package/dist/prod/util/escapeRegex.js +2 -0
  639. package/dist/prod/util/escapeRegex.js.map +7 -0
  640. package/dist/prod/util/fixSafariActiveState.js +2 -0
  641. package/dist/prod/util/fixSafariActiveState.js.map +7 -0
  642. package/dist/prod/util/formatMessage.js +2 -0
  643. package/dist/prod/util/formatMessage.js.map +7 -0
  644. package/dist/prod/util/generateHighlightedMarkup.js +2 -0
  645. package/dist/prod/util/generateHighlightedMarkup.js.map +7 -0
  646. package/dist/prod/util/getActiveElement.js +2 -0
  647. package/dist/prod/util/getActiveElement.js.map +7 -0
  648. package/dist/prod/util/getClassCopy.js +2 -0
  649. package/dist/prod/util/getClassCopy.js.map +7 -0
  650. package/dist/prod/util/getDesigntimePropertyAsArray.js +2 -0
  651. package/dist/prod/util/getDesigntimePropertyAsArray.js.map +7 -0
  652. package/dist/prod/util/getEffectiveContentDensity.js +2 -0
  653. package/dist/prod/util/getEffectiveContentDensity.js.map +7 -0
  654. package/dist/prod/util/getFastNavigationGroups.js +2 -0
  655. package/dist/prod/util/getFastNavigationGroups.js.map +7 -0
  656. package/dist/prod/util/getFileExtension.js +2 -0
  657. package/dist/prod/util/getFileExtension.js.map +7 -0
  658. package/dist/prod/util/getNormalizedTarget.js +2 -0
  659. package/dist/prod/util/getNormalizedTarget.js.map +7 -0
  660. package/dist/prod/util/getParentElement.js +2 -0
  661. package/dist/prod/util/getParentElement.js.map +7 -0
  662. package/dist/prod/util/getSingletonElementInstance.js +2 -0
  663. package/dist/prod/util/getSingletonElementInstance.js.map +7 -0
  664. package/dist/prod/util/hash2str.js +2 -0
  665. package/dist/prod/util/hash2str.js.map +7 -0
  666. package/dist/prod/util/isElementClickable.js +2 -0
  667. package/dist/prod/util/isElementClickable.js.map +7 -0
  668. package/dist/prod/util/isElementHidden.js +2 -0
  669. package/dist/prod/util/isElementHidden.js.map +7 -0
  670. package/dist/prod/util/isElementInView.js +2 -0
  671. package/dist/prod/util/isElementInView.js.map +7 -0
  672. package/dist/prod/util/isElementTabbable.js +2 -0
  673. package/dist/prod/util/isElementTabbable.js.map +7 -0
  674. package/dist/prod/util/isEventMarked.js +2 -0
  675. package/dist/prod/util/isEventMarked.js.map +7 -0
  676. package/dist/prod/util/isValidPropertyName.js +2 -0
  677. package/dist/prod/util/isValidPropertyName.js.map +7 -0
  678. package/dist/prod/util/throttle.js +2 -0
  679. package/dist/prod/util/throttle.js.map +7 -0
  680. package/dist/prod/util/toLowercaseEnumValue.js +2 -0
  681. package/dist/prod/util/toLowercaseEnumValue.js.map +7 -0
  682. package/dist/prod/util/valueStateNavigation.js +2 -0
  683. package/dist/prod/util/valueStateNavigation.js.map +7 -0
  684. package/dist/prod/util/whenDOMReady.js +2 -0
  685. package/dist/prod/util/whenDOMReady.js.map +7 -0
  686. package/dist/prod/util/willShowContent.js +2 -0
  687. package/dist/prod/util/willShowContent.js.map +7 -0
  688. package/dist/prod/validateThemeRoot.js +2 -0
  689. package/dist/prod/validateThemeRoot.js.map +7 -0
  690. package/dist/renderer/JsxRenderer.d.ts +3 -0
  691. package/dist/renderer/JsxRenderer.js +26 -0
  692. package/dist/renderer/JsxRenderer.js.map +1 -0
  693. package/dist/renderer/LitRenderer.d.ts +5 -5
  694. package/dist/renderer/LitRenderer.js +5 -10
  695. package/dist/renderer/LitRenderer.js.map +1 -1
  696. package/dist/renderer/directives/style-map.d.ts +13 -0
  697. package/dist/renderer/directives/style-map.js +59 -59
  698. package/dist/renderer/directives/style-map.js.map +1 -0
  699. package/dist/renderer/executeTemplate.d.ts +3 -4
  700. package/dist/renderer/executeTemplate.js +1 -19
  701. package/dist/renderer/executeTemplate.js.map +1 -1
  702. package/dist/sap/base/Log.js +698 -188
  703. package/dist/sap/base/assert.js +28 -1
  704. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  705. package/dist/sap/base/security/URLListValidator.js +253 -6
  706. package/dist/sap/base/security/encodeCSS.js +34 -8
  707. package/dist/sap/base/security/encodeXML.js +47 -17
  708. package/dist/sap/base/security/sanitizeHTML.js +35 -13
  709. package/dist/sap/base/strings/toHex.js +27 -2
  710. package/dist/sap/base/util/now.js +24 -3
  711. package/dist/sap/base/util/uid.js +27 -0
  712. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +113 -98
  713. package/dist/ssr-dom-shim.d.ts +1 -0
  714. package/dist/ssr-dom-shim.js +63 -0
  715. package/dist/ssr-dom-shim.js.map +1 -0
  716. package/dist/ssr-dom.d.ts +1 -0
  717. package/dist/ssr-dom.js +3 -0
  718. package/dist/ssr-dom.js.map +1 -0
  719. package/dist/theming/CustomStyle.js +7 -5
  720. package/dist/theming/CustomStyle.js.map +1 -1
  721. package/dist/theming/ThemeLoaded.js.map +1 -1
  722. package/dist/theming/ThemeRegistered.d.ts +4 -0
  723. package/dist/theming/ThemeRegistered.js +11 -0
  724. package/dist/theming/ThemeRegistered.js.map +1 -0
  725. package/dist/theming/applyTheme.d.ts +2 -0
  726. package/dist/theming/applyTheme.js +27 -11
  727. package/dist/theming/applyTheme.js.map +1 -1
  728. package/dist/theming/componentStyles.d.ts +3 -0
  729. package/dist/theming/componentStyles.js +15 -0
  730. package/dist/theming/componentStyles.js.map +1 -0
  731. package/dist/theming/getConstructableStyle.d.ts +2 -2
  732. package/dist/theming/getConstructableStyle.js +3 -3
  733. package/dist/theming/getConstructableStyle.js.map +1 -1
  734. package/dist/theming/getEffectiveStyle.d.ts +1 -1
  735. package/dist/theming/getEffectiveStyle.js +5 -12
  736. package/dist/theming/getEffectiveStyle.js.map +1 -1
  737. package/dist/theming/getStylesString.d.ts +1 -1
  738. package/dist/theming/getStylesString.js +2 -4
  739. package/dist/theming/getStylesString.js.map +1 -1
  740. package/dist/theming/getThemeDesignerTheme.js +2 -1
  741. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  742. package/dist/thirdparty/_merge.js.map +1 -1
  743. package/dist/thirdparty/isPlainObject.js.map +1 -1
  744. package/dist/thirdparty/merge.js.map +1 -1
  745. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  746. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  747. package/dist/thirdparty/preact/jsxRuntime.module.js +1 -0
  748. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  749. package/dist/thirdparty/preact/preact.module.js +1 -0
  750. package/dist/types/AnimationMode.d.ts +0 -8
  751. package/dist/types/AnimationMode.js +0 -8
  752. package/dist/types/AnimationMode.js.map +1 -1
  753. package/dist/types/CalendarType.d.ts +0 -9
  754. package/dist/types/CalendarType.js +0 -9
  755. package/dist/types/CalendarType.js.map +1 -1
  756. package/dist/types/InvisibleMessageMode.d.ts +5 -10
  757. package/dist/types/InvisibleMessageMode.js +4 -11
  758. package/dist/types/InvisibleMessageMode.js.map +1 -1
  759. package/dist/types/ItemNavigationBehavior.d.ts +0 -6
  760. package/dist/types/ItemNavigationBehavior.js +0 -6
  761. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  762. package/dist/types/MovePlacement.d.ts +20 -0
  763. package/dist/types/MovePlacement.js +22 -0
  764. package/dist/types/MovePlacement.js.map +1 -0
  765. package/dist/types/NavigationMode.d.ts +0 -8
  766. package/dist/types/NavigationMode.js +0 -8
  767. package/dist/types/NavigationMode.js.map +1 -1
  768. package/dist/types/Orientation.d.ts +16 -0
  769. package/dist/types/Orientation.js +18 -0
  770. package/dist/types/Orientation.js.map +1 -0
  771. package/dist/types/SortOrder.d.ts +24 -0
  772. package/dist/types/SortOrder.js +26 -0
  773. package/dist/types/SortOrder.js.map +1 -0
  774. package/dist/types/ValueState.d.ts +3 -17
  775. package/dist/types/ValueState.js +3 -17
  776. package/dist/types/ValueState.js.map +1 -1
  777. package/dist/types.d.ts +45 -14
  778. package/dist/types.js.map +1 -1
  779. package/dist/updateShadowRoot.d.ts +1 -2
  780. package/dist/updateShadowRoot.js +5 -21
  781. package/dist/updateShadowRoot.js.map +1 -1
  782. package/dist/util/AccessibilityTextsHelper.d.ts +17 -0
  783. package/dist/util/AccessibilityTextsHelper.js +199 -0
  784. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  785. package/dist/util/Caret.js.map +1 -1
  786. package/dist/util/ColorConversion.d.ts +2 -1
  787. package/dist/util/ColorConversion.js +233 -216
  788. package/dist/util/ColorConversion.js.map +1 -1
  789. package/dist/util/FetchHelper.js.map +1 -1
  790. package/dist/util/FocusableElements.js +54 -16
  791. package/dist/util/FocusableElements.js.map +1 -1
  792. package/dist/util/HTMLSanitizer.d.ts +2 -0
  793. package/dist/util/HTMLSanitizer.js +2 -2
  794. package/dist/util/HTMLSanitizer.js.map +1 -1
  795. package/dist/util/InvisibleMessage.js +2 -2
  796. package/dist/util/InvisibleMessage.js.map +1 -1
  797. package/dist/util/PopupUtils.d.ts +1 -3
  798. package/dist/util/PopupUtils.js +1 -15
  799. package/dist/util/PopupUtils.js.map +1 -1
  800. package/dist/util/SelectionAssistant.d.ts +12 -0
  801. package/dist/util/SelectionAssistant.js +71 -0
  802. package/dist/util/SelectionAssistant.js.map +1 -0
  803. package/dist/util/SlotsHelper.js.map +1 -1
  804. package/dist/util/StringHelper.d.ts +3 -1
  805. package/dist/util/StringHelper.js +15 -1
  806. package/dist/util/StringHelper.js.map +1 -1
  807. package/dist/util/TabbableElements.js +5 -12
  808. package/dist/util/TabbableElements.js.map +1 -1
  809. package/dist/util/arraysAreEqual.js.map +1 -1
  810. package/dist/util/clamp.js +2 -1
  811. package/dist/util/clamp.js.map +1 -1
  812. package/dist/util/createInstanceChecker.d.ts +2 -0
  813. package/dist/util/createInstanceChecker.js +8 -0
  814. package/dist/util/createInstanceChecker.js.map +1 -0
  815. package/dist/util/createLinkInHead.d.ts +1 -1
  816. package/dist/util/createLinkInHead.js +1 -1
  817. package/dist/util/createLinkInHead.js.map +1 -1
  818. package/dist/util/createMultiInstanceChecker.d.ts +2 -0
  819. package/dist/util/createMultiInstanceChecker.js +19 -0
  820. package/dist/util/createMultiInstanceChecker.js.map +1 -0
  821. package/dist/util/debounce.js.map +1 -1
  822. package/dist/util/detectNavigatorLanguage.d.ts +2 -2
  823. package/dist/util/detectNavigatorLanguage.js +6 -1
  824. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  825. package/dist/util/dragAndDrop/DragRegistry.d.ts +39 -0
  826. package/dist/util/dragAndDrop/DragRegistry.js +62 -0
  827. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  828. package/dist/util/dragAndDrop/findClosestPosition.d.ts +12 -0
  829. package/dist/util/dragAndDrop/findClosestPosition.js +106 -0
  830. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  831. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  832. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  833. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  834. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  835. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  836. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  837. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  838. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  839. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  840. package/dist/util/escapeRegex.js.map +1 -1
  841. package/dist/util/fixSafariActiveState.d.ts +2 -0
  842. package/dist/util/fixSafariActiveState.js +11 -0
  843. package/dist/util/fixSafariActiveState.js.map +1 -0
  844. package/dist/util/formatMessage.js.map +1 -1
  845. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  846. package/dist/util/getActiveElement.js.map +1 -1
  847. package/dist/util/getClassCopy.d.ts +147 -104
  848. package/dist/util/getClassCopy.js.map +1 -1
  849. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -2
  850. package/dist/util/getDesigntimePropertyAsArray.js +2 -1
  851. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  852. package/dist/util/getEffectiveContentDensity.js.map +1 -1
  853. package/dist/util/getFastNavigationGroups.js +6 -1
  854. package/dist/util/getFastNavigationGroups.js.map +1 -1
  855. package/dist/util/getFileExtension.js.map +1 -1
  856. package/dist/util/getNormalizedTarget.js.map +1 -1
  857. package/dist/util/getParentElement.d.ts +2 -0
  858. package/dist/util/getParentElement.js +5 -0
  859. package/dist/util/getParentElement.js.map +1 -0
  860. package/dist/util/getSingletonElementInstance.d.ts +10 -1
  861. package/dist/util/getSingletonElementInstance.js +11 -2
  862. package/dist/util/getSingletonElementInstance.js.map +1 -1
  863. package/dist/util/hash2str.d.ts +1 -0
  864. package/dist/util/hash2str.js +14 -0
  865. package/dist/util/hash2str.js.map +1 -0
  866. package/dist/util/isElementClickable.js.map +1 -1
  867. package/dist/util/isElementHidden.js +2 -1
  868. package/dist/util/isElementHidden.js.map +1 -1
  869. package/dist/util/isElementInView.js.map +1 -1
  870. package/dist/util/isElementTabbable.js +2 -2
  871. package/dist/util/isElementTabbable.js.map +1 -1
  872. package/dist/util/isEventMarked.d.ts +2 -0
  873. package/dist/util/isEventMarked.js +6 -0
  874. package/dist/util/isEventMarked.js.map +1 -0
  875. package/dist/util/isValidPropertyName.js.map +1 -1
  876. package/dist/util/throttle.d.ts +2 -0
  877. package/dist/util/throttle.js +20 -0
  878. package/dist/util/throttle.js.map +1 -0
  879. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  880. package/dist/util/toLowercaseEnumValue.js +4 -0
  881. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  882. package/dist/util/valueStateNavigation.d.ts +8 -0
  883. package/dist/util/valueStateNavigation.js +40 -0
  884. package/dist/util/valueStateNavigation.js.map +1 -0
  885. package/dist/util/whenDOMReady.js.map +1 -1
  886. package/dist/util/willShowContent.js.map +1 -1
  887. package/dist/validateThemeRoot.js +21 -15
  888. package/dist/validateThemeRoot.js.map +1 -1
  889. package/dist/vscode.html-custom-data.json +22 -0
  890. package/package-scripts.cjs +105 -0
  891. package/package.json +53 -23
  892. package/src/css/MultipleDragGhost.css +17 -0
  893. package/src/css/OpenUI5PopupStyles.css +10 -0
  894. package/src/css/ScrollbarStyles.css +3 -0
  895. package/src/css/SystemCSSVars.css +27 -10
  896. package/src/i18n/messagebundle.properties +5 -0
  897. package/src/i18n/messagebundle_en.properties +2 -0
  898. package/src/i18n/messagebundle_en_US_sappsd.properties +2 -0
  899. package/src/i18n/messagebundle_en_US_saprigi.properties +2 -0
  900. package/src/i18n/messagebundle_en_US_saptrc.properties +2 -0
  901. package/src/thirdparty/preact/jsxRuntime.module.js +1 -0
  902. package/src/thirdparty/preact/preact.module.js +1 -0
  903. package/src/thirdparty/preact/version.txt +1 -0
  904. package/tsconfig.json +18 -12
  905. package/.eslintignore +0 -15
  906. package/bundle.esm.js +0 -60
  907. package/config/wdio.conf.js +0 -1
  908. package/dist/CSP.d.ts +0 -30
  909. package/dist/CSP.js +0 -51
  910. package/dist/CSP.js.map +0 -1
  911. package/dist/MarkedEvents.d.ts +0 -9
  912. package/dist/MarkedEvents.js +0 -15
  913. package/dist/MarkedEvents.js.map +0 -1
  914. package/dist/StaticArea.d.ts +0 -0
  915. package/dist/StaticArea.js +0 -6
  916. package/dist/StaticArea.js.map +0 -1
  917. package/dist/StaticAreaItem.d.ts +0 -36
  918. package/dist/StaticAreaItem.js +0 -99
  919. package/dist/StaticAreaItem.js.map +0 -1
  920. package/dist/api.json +0 -1
  921. package/dist/assets/bundle.esm.0cfce34f.js +0 -56
  922. package/dist/assets-meta/IconCollectionsAlias.d.ts +0 -17
  923. package/dist/assets-meta/IconCollectionsAlias.js +0 -18
  924. package/dist/assets-meta/IconCollectionsAlias.js.map +0 -1
  925. package/dist/config/RTL.d.ts +0 -7
  926. package/dist/config/RTL.js +0 -34
  927. package/dist/config/RTL.js.map +0 -1
  928. package/dist/config/ThemeRoots.d.ts +0 -4
  929. package/dist/config/ThemeRoots.js +0 -28
  930. package/dist/config/ThemeRoots.js.map +0 -1
  931. package/dist/css/FontFace.css +0 -66
  932. package/dist/css/OverrideFontFace.css +0 -32
  933. package/dist/decorators/fastNavigation.d.ts +0 -7
  934. package/dist/decorators/fastNavigation.js +0 -13
  935. package/dist/decorators/fastNavigation.js.map +0 -1
  936. package/dist/decorators/languageAware.d.ts +0 -7
  937. package/dist/decorators/languageAware.js +0 -13
  938. package/dist/decorators/languageAware.js.map +0 -1
  939. package/dist/decorators/themeAware.d.ts +0 -7
  940. package/dist/decorators/themeAware.js +0 -13
  941. package/dist/decorators/themeAware.js.map +0 -1
  942. package/dist/generated/css/OverrideFontFace.css.js +0 -5
  943. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +0 -11
  944. package/dist/theming/getEffectiveLinksHrefs.d.ts +0 -3
  945. package/dist/theming/getEffectiveLinksHrefs.js +0 -17
  946. package/dist/theming/getEffectiveLinksHrefs.js.map +0 -1
  947. package/dist/theming/preloadLinks.d.ts +0 -3
  948. package/dist/theming/preloadLinks.js +0 -19
  949. package/dist/theming/preloadLinks.js.map +0 -1
  950. package/dist/types/CSSColor.d.ts +0 -16
  951. package/dist/types/CSSColor.js +0 -19
  952. package/dist/types/CSSColor.js.map +0 -1
  953. package/dist/types/DOMReference.d.ts +0 -17
  954. package/dist/types/DOMReference.js +0 -25
  955. package/dist/types/DOMReference.js.map +0 -1
  956. package/dist/types/DataType.d.ts +0 -25
  957. package/dist/types/DataType.js +0 -44
  958. package/dist/types/DataType.js.map +0 -1
  959. package/dist/types/Float.d.ts +0 -18
  960. package/dist/types/Float.js +0 -22
  961. package/dist/types/Float.js.map +0 -1
  962. package/dist/types/Integer.d.ts +0 -18
  963. package/dist/types/Integer.js +0 -22
  964. package/dist/types/Integer.js.map +0 -1
  965. package/dist/util/AriaLabelHelper.d.ts +0 -6
  966. package/dist/util/AriaLabelHelper.js +0 -44
  967. package/dist/util/AriaLabelHelper.js.map +0 -1
  968. package/dist/util/createStyleInHead.d.ts +0 -8
  969. package/dist/util/createStyleInHead.js +0 -18
  970. package/dist/util/createStyleInHead.js.map +0 -1
  971. package/dist/util/getEffectiveScrollbarStyle.d.ts +0 -2
  972. package/dist/util/getEffectiveScrollbarStyle.js +0 -4
  973. package/dist/util/getEffectiveScrollbarStyle.js.map +0 -1
  974. package/index.js +0 -4
  975. package/lib/generate-asset-parameters/index.js +0 -25
  976. package/lib/generate-styles/index.js +0 -26
  977. package/lib/generate-version-info/index.js +0 -32
  978. package/package-scripts.js +0 -67
  979. package/src/AssetRegistry.ts +0 -11
  980. package/src/Boot.ts +0 -61
  981. package/src/CSP.ts +0 -66
  982. package/src/CustomElementsRegistry.ts +0 -98
  983. package/src/CustomElementsScope.ts +0 -33
  984. package/src/CustomElementsScopeUtils.ts +0 -115
  985. package/src/DOMObserver.ts +0 -28
  986. package/src/Device.ts +0 -124
  987. package/src/EventProvider.ts +0 -87
  988. package/src/FeaturesRegistry.ts +0 -14
  989. package/src/FontFace.ts +0 -31
  990. package/src/InitialConfiguration.ts +0 -207
  991. package/src/Keys.ts +0 -295
  992. package/src/ManagedStyles.ts +0 -92
  993. package/src/MarkedEvents.ts +0 -20
  994. package/src/MediaRange.ts +0 -110
  995. package/src/PropertiesFileFormat.ts +0 -95
  996. package/src/Render.ts +0 -180
  997. package/src/RenderQueue.ts +0 -71
  998. package/src/Runtimes.ts +0 -114
  999. package/src/StaticArea.ts +0 -3
  1000. package/src/StaticAreaItem.ts +0 -113
  1001. package/src/SystemCSSVars.ts +0 -10
  1002. package/src/Theming.ts +0 -4
  1003. package/src/UI5Element.ts +0 -1155
  1004. package/src/UI5ElementMetadata.ts +0 -389
  1005. package/src/animations/AnimationQueue.ts +0 -43
  1006. package/src/animations/animate.ts +0 -64
  1007. package/src/animations/scroll.ts +0 -21
  1008. package/src/animations/slideDown.ts +0 -72
  1009. package/src/animations/slideUp.ts +0 -67
  1010. package/src/asset-registries/Icons.ts +0 -162
  1011. package/src/asset-registries/Illustrations.ts +0 -75
  1012. package/src/asset-registries/LocaleData.ts +0 -172
  1013. package/src/asset-registries/Themes.ts +0 -67
  1014. package/src/asset-registries/i18n.ts +0 -118
  1015. package/src/assets-meta/IconCollectionsAlias.ts +0 -18
  1016. package/src/config/AnimationMode.ts +0 -33
  1017. package/src/config/CalendarType.ts +0 -23
  1018. package/src/config/FormatSettings.ts +0 -21
  1019. package/src/config/Icons.ts +0 -59
  1020. package/src/config/Language.ts +0 -72
  1021. package/src/config/NoConflict.ts +0 -67
  1022. package/src/config/RTL.ts +0 -41
  1023. package/src/config/Theme.ts +0 -64
  1024. package/src/config/ThemeRoots.ts +0 -41
  1025. package/src/css/FontFace.css +0 -66
  1026. package/src/css/OverrideFontFace.css +0 -32
  1027. package/src/decorators/customElement.ts +0 -17
  1028. package/src/decorators/event.ts +0 -28
  1029. package/src/decorators/fastNavigation.ts +0 -14
  1030. package/src/decorators/languageAware.ts +0 -14
  1031. package/src/decorators/property.ts +0 -30
  1032. package/src/decorators/slot.ts +0 -49
  1033. package/src/decorators/themeAware.ts +0 -14
  1034. package/src/delegate/ItemNavigation.ts +0 -393
  1035. package/src/delegate/ResizeHandler.ts +0 -95
  1036. package/src/delegate/ScrollEnablement.ts +0 -221
  1037. package/src/features/F6Navigation.ts +0 -141
  1038. package/src/features/OpenUI5Element.ts +0 -11
  1039. package/src/features/OpenUI5Enablement.ts +0 -117
  1040. package/src/features/OpenUI5Support.ts +0 -148
  1041. package/src/getSharedResource.ts +0 -30
  1042. package/src/i18nBundle.ts +0 -108
  1043. package/src/locale/Locale.ts +0 -101
  1044. package/src/locale/RTLAwareRegistry.ts +0 -16
  1045. package/src/locale/applyDirection.ts +0 -18
  1046. package/src/locale/directionChange.ts +0 -34
  1047. package/src/locale/getEffectiveDir.ts +0 -28
  1048. package/src/locale/getLocale.ts +0 -46
  1049. package/src/locale/languageChange.ts +0 -24
  1050. package/src/locale/nextFallbackLocale.ts +0 -28
  1051. package/src/locale/normalizeLocale.ts +0 -56
  1052. package/src/renderer/LitRenderer.ts +0 -60
  1053. package/src/renderer/directives/style-map.js +0 -72
  1054. package/src/renderer/executeTemplate.ts +0 -40
  1055. package/src/theming/CustomStyle.ts +0 -62
  1056. package/src/theming/ThemeLoaded.ts +0 -24
  1057. package/src/theming/applyTheme.ts +0 -90
  1058. package/src/theming/getConstructableStyle.ts +0 -31
  1059. package/src/theming/getEffectiveLinksHrefs.ts +0 -26
  1060. package/src/theming/getEffectiveStyle.ts +0 -41
  1061. package/src/theming/getStylesString.ts +0 -15
  1062. package/src/theming/getThemeDesignerTheme.ts +0 -101
  1063. package/src/theming/preloadLinks.ts +0 -24
  1064. package/src/thirdparty/_merge.ts +0 -32
  1065. package/src/thirdparty/isPlainObject.ts +0 -18
  1066. package/src/thirdparty/merge.ts +0 -5
  1067. package/src/types/AnimationMode.ts +0 -33
  1068. package/src/types/CSSColor.ts +0 -20
  1069. package/src/types/CalendarType.ts +0 -38
  1070. package/src/types/DOMReference.ts +0 -28
  1071. package/src/types/DataType.ts +0 -51
  1072. package/src/types/Float.ts +0 -25
  1073. package/src/types/Integer.ts +0 -25
  1074. package/src/types/InvisibleMessageMode.ts +0 -27
  1075. package/src/types/ItemNavigationBehavior.ts +0 -26
  1076. package/src/types/NavigationMode.ts +0 -33
  1077. package/src/types/ValueState.ts +0 -47
  1078. package/src/types.ts +0 -30
  1079. package/src/updateShadowRoot.ts +0 -37
  1080. package/src/util/AriaLabelHelper.ts +0 -63
  1081. package/src/util/Caret.ts +0 -28
  1082. package/src/util/ColorConversion.ts +0 -399
  1083. package/src/util/FetchHelper.ts +0 -31
  1084. package/src/util/FocusableElements.ts +0 -82
  1085. package/src/util/HTMLSanitizer.ts +0 -9
  1086. package/src/util/InvisibleMessage.ts +0 -69
  1087. package/src/util/PopupUtils.ts +0 -112
  1088. package/src/util/SlotsHelper.ts +0 -39
  1089. package/src/util/StringHelper.ts +0 -26
  1090. package/src/util/TabbableElements.ts +0 -70
  1091. package/src/util/arraysAreEqual.ts +0 -15
  1092. package/src/util/clamp.ts +0 -12
  1093. package/src/util/createLinkInHead.ts +0 -25
  1094. package/src/util/createStyleInHead.ts +0 -20
  1095. package/src/util/debounce.ts +0 -18
  1096. package/src/util/detectNavigatorLanguage.ts +0 -13
  1097. package/src/util/escapeRegex.ts +0 -11
  1098. package/src/util/formatMessage.ts +0 -24
  1099. package/src/util/generateHighlightedMarkup.ts +0 -43
  1100. package/src/util/getActiveElement.ts +0 -11
  1101. package/src/util/getClassCopy.ts +0 -12
  1102. package/src/util/getDesigntimePropertyAsArray.ts +0 -4
  1103. package/src/util/getEffectiveContentDensity.ts +0 -5
  1104. package/src/util/getEffectiveScrollbarStyle.ts +0 -5
  1105. package/src/util/getFastNavigationGroups.ts +0 -63
  1106. package/src/util/getFileExtension.ts +0 -21
  1107. package/src/util/getNormalizedTarget.ts +0 -16
  1108. package/src/util/getSingletonElementInstance.ts +0 -13
  1109. package/src/util/isElementClickable.ts +0 -19
  1110. package/src/util/isElementHidden.ts +0 -9
  1111. package/src/util/isElementInView.ts +0 -15
  1112. package/src/util/isElementTabbable.ts +0 -37
  1113. package/src/util/isValidPropertyName.ts +0 -29
  1114. package/src/util/whenDOMReady.ts +0 -13
  1115. package/src/util/willShowContent.ts +0 -7
  1116. package/src/validateThemeRoot.ts +0 -58
  1117. package/used-modules.txt +0 -10
package/dist/Boot.js CHANGED
@@ -1,44 +1,105 @@
1
1
  import whenDOMReady from "./util/whenDOMReady.js";
2
+ import EventProvider from "./EventProvider.js";
2
3
  import insertFontFace from "./FontFace.js";
3
4
  import insertSystemCSSVars from "./SystemCSSVars.js";
4
- import { getTheme } from "./config/Theme.js";
5
+ import insertScrollbarStyles from "./ScrollbarStyles.js";
6
+ import { getTheme, getBaseTheme } from "./config/Theme.js";
5
7
  import applyTheme from "./theming/applyTheme.js";
6
8
  import { registerCurrentRuntime } from "./Runtimes.js";
7
9
  import { getFeature } from "./FeaturesRegistry.js";
10
+ import { attachThemeRegistered } from "./theming/ThemeRegistered.js";
11
+ import fixSafariActiveState from "./util/fixSafariActiveState.js";
12
+ let booted = false;
8
13
  let bootPromise;
14
+ let openUI5ListenersAttached = false;
15
+ const eventProvider = new EventProvider();
16
+ const isBooted = () => {
17
+ return booted;
18
+ };
9
19
  /**
10
- * Attach a callback that will be executed on boot
20
+ * Attaches a callback that will be executed after boot finishes.
21
+ * **Note:** If the framework already booted, the callback will be immediately executed.
11
22
  * @public
12
- * @param listener
23
+ * @param { Function } listener
13
24
  */
14
- const attachBoot = async (listener) => {
15
- await boot();
25
+ const attachBoot = (listener) => {
26
+ if (!booted) {
27
+ eventProvider.attachEvent("boot", listener);
28
+ return;
29
+ }
16
30
  listener();
17
31
  };
32
+ /**
33
+ * This function may now be called twice - once without OpenUI5Support, and then later again, when OpenUI5 is loaded dynamically
34
+ * In this case, deregister the UI5 Web Components listener
35
+ */
36
+ const initF6Navigation = async () => {
37
+ const openUI5Support = getFeature("OpenUI5Support");
38
+ const isOpenUI5Loaded = openUI5Support ? openUI5Support.isOpenUI5Detected() : false;
39
+ const f6Navigation = getFeature("F6Navigation");
40
+ if (openUI5Support) {
41
+ f6Navigation && f6Navigation.destroy(); // F6Navigation is not needed when OpenUI5 is used
42
+ await openUI5Support.init();
43
+ }
44
+ if (f6Navigation && !isOpenUI5Loaded) {
45
+ f6Navigation.init();
46
+ }
47
+ };
48
+ const attachOpenUI5SupportListeners = () => {
49
+ if (openUI5ListenersAttached) {
50
+ return;
51
+ }
52
+ const openUI5Support = getFeature("OpenUI5Support");
53
+ if (openUI5Support) {
54
+ openUI5ListenersAttached = openUI5Support.attachListeners(); // listeners will be attached (return true) only if OpenUI5 is loaded
55
+ }
56
+ };
18
57
  const boot = async () => {
19
58
  if (bootPromise !== undefined) {
20
59
  return bootPromise;
21
60
  }
22
61
  const bootExecutor = async (resolve) => {
23
62
  registerCurrentRuntime();
24
- const openUI5Support = getFeature("OpenUI5Support");
25
- const isOpenUI5Loaded = openUI5Support ? openUI5Support.isLoaded() : false;
26
- const f6Navigation = getFeature("F6Navigation");
27
- if (openUI5Support) {
28
- await openUI5Support.init();
29
- }
30
- if (f6Navigation && !isOpenUI5Loaded) {
31
- f6Navigation.init();
63
+ if (typeof document === "undefined") {
64
+ resolve();
65
+ return;
32
66
  }
67
+ attachThemeRegistered(onThemeRegistered);
68
+ await initF6Navigation(); // depends on OpenUI5Support
33
69
  await whenDOMReady();
34
70
  await applyTheme(getTheme());
35
- openUI5Support && openUI5Support.attachListeners();
71
+ attachOpenUI5SupportListeners(); // depends on OpenUI5Support
36
72
  insertFontFace();
37
73
  insertSystemCSSVars();
74
+ insertScrollbarStyles();
75
+ fixSafariActiveState();
38
76
  resolve();
77
+ booted = true;
78
+ eventProvider.fireEvent("boot");
39
79
  };
40
80
  bootPromise = new Promise(bootExecutor);
41
81
  return bootPromise;
42
82
  };
43
- export { boot, attachBoot, };
83
+ const secondaryBoot = async () => {
84
+ await boot(); // make sure we're not in the middle of boot before re-running the skipped parts
85
+ await initF6Navigation();
86
+ attachOpenUI5SupportListeners();
87
+ };
88
+ /**
89
+ * Callback, executed after theme properties registration
90
+ * to apply the newly registered theme.
91
+ * @private
92
+ * @param { string } theme
93
+ */
94
+ const onThemeRegistered = (theme) => {
95
+ if (!booted) {
96
+ return;
97
+ }
98
+ const currentTheme = getTheme();
99
+ const currentBaseTheme = getBaseTheme();
100
+ if (theme === currentTheme || theme === currentBaseTheme) {
101
+ applyTheme(currentTheme);
102
+ }
103
+ };
104
+ export { boot, secondaryBoot, attachBoot, isBooted, };
44
105
  //# sourceMappingURL=Boot.js.map
package/dist/Boot.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Boot.js","sourceRoot":"","sources":["../src/Boot.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,cAAc,MAAM,eAAe,CAAC;AAC3C,OAAO,mBAAmB,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAKnD,IAAI,WAA0B,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,GAAG,KAAK,EAAE,QAAoB,EAAE,EAAE;IACjD,MAAM,IAAI,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IACtC,IAAI,WAAW,KAAK,SAAS,EAAE;QAC9B,OAAO,WAAW,CAAC;KACnB;IAED,MAAM,YAAY,GAAG,KAAK,EAAE,OAAuB,EAAE,EAAE;QACtD,sBAAsB,EAAE,CAAC;QAEzB,MAAM,cAAc,GAAG,UAAU,CAAwB,gBAAgB,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAC3E,MAAM,YAAY,GAAG,UAAU,CAAsB,cAAc,CAAC,CAAC;QAErE,IAAI,cAAc,EAAE;YACnB,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;SAC5B;QAED,IAAI,YAAY,IAAI,CAAC,eAAe,EAAE;YACrC,YAAY,CAAC,IAAI,EAAE,CAAC;SACpB;QAED,MAAM,YAAY,EAAE,CAAC;QACrB,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC7B,cAAc,IAAI,cAAc,CAAC,eAAe,EAAE,CAAC;QACnD,cAAc,EAAE,CAAC;QACjB,mBAAmB,EAAE,CAAC;QAEtB,OAAO,EAAE,CAAC;IACX,CAAC,CAAC;IAEF,WAAW,GAAG,IAAI,OAAO,CAAC,YAAiD,CAAC,CAAC;IAE7E,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF,OAAO,EACN,IAAI,EACJ,UAAU,GACV,CAAC"}
1
+ {"version":3,"file":"Boot.js","sourceRoot":"","sources":["../src/Boot.ts"],"names":[],"mappings":"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","sourcesContent":["import whenDOMReady from \"./util/whenDOMReady.js\";\nimport EventProvider from \"./EventProvider.js\";\nimport insertFontFace from \"./FontFace.js\";\nimport insertSystemCSSVars from \"./SystemCSSVars.js\";\nimport insertScrollbarStyles from \"./ScrollbarStyles.js\";\nimport { getTheme, getBaseTheme } from \"./config/Theme.js\";\nimport applyTheme from \"./theming/applyTheme.js\";\nimport { registerCurrentRuntime } from \"./Runtimes.js\";\nimport { getFeature } from \"./FeaturesRegistry.js\";\nimport type OpenUI5Support from \"./features/OpenUI5Support.js\";\nimport type F6Navigation from \"./features/F6Navigation.js\";\nimport type { PromiseResolve } from \"./types.js\";\nimport { attachThemeRegistered } from \"./theming/ThemeRegistered.js\";\nimport fixSafariActiveState from \"./util/fixSafariActiveState.js\";\n\nlet booted = false;\nlet bootPromise: Promise<void>;\nlet openUI5ListenersAttached = false;\nconst eventProvider = new EventProvider<void, void>();\n\nconst isBooted = (): boolean => {\n\treturn booted;\n};\n\n/**\n * Attaches a callback that will be executed after boot finishes.\n * **Note:** If the framework already booted, the callback will be immediately executed.\n * @public\n * @param { Function } listener\n */\nconst attachBoot = (listener: () => void) => {\n\tif (!booted) {\n\t\teventProvider.attachEvent(\"boot\", listener);\n\t\treturn;\n\t}\n\n\tlistener();\n};\n\n/**\n * This function may now be called twice - once without OpenUI5Support, and then later again, when OpenUI5 is loaded dynamically\n * In this case, deregister the UI5 Web Components listener\n */\nconst initF6Navigation = async () => {\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tconst isOpenUI5Loaded = openUI5Support ? openUI5Support.isOpenUI5Detected() : false;\n\tconst f6Navigation = getFeature<typeof F6Navigation>(\"F6Navigation\");\n\n\tif (openUI5Support) {\n\t\tf6Navigation && f6Navigation.destroy(); // F6Navigation is not needed when OpenUI5 is used\n\t\tawait openUI5Support.init();\n\t}\n\n\tif (f6Navigation && !isOpenUI5Loaded) {\n\t\tf6Navigation.init();\n\t}\n};\n\nconst attachOpenUI5SupportListeners = () => {\n\tif (openUI5ListenersAttached) {\n\t\treturn;\n\t}\n\n\tconst openUI5Support = getFeature<typeof OpenUI5Support>(\"OpenUI5Support\");\n\tif (openUI5Support) {\n\t\topenUI5ListenersAttached = openUI5Support.attachListeners(); // listeners will be attached (return true) only if OpenUI5 is loaded\n\t}\n};\n\nconst boot = async (): Promise<void> => {\n\tif (bootPromise !== undefined) {\n\t\treturn bootPromise;\n\t}\n\n\tconst bootExecutor = async (resolve: PromiseResolve) => {\n\t\tregisterCurrentRuntime();\n\n\t\tif (typeof document === \"undefined\") {\n\t\t\tresolve();\n\t\t\treturn;\n\t\t}\n\n\t\tattachThemeRegistered(onThemeRegistered);\n\n\t\tawait initF6Navigation(); // depends on OpenUI5Support\n\t\tawait whenDOMReady();\n\t\tawait applyTheme(getTheme());\n\t\tattachOpenUI5SupportListeners(); // depends on OpenUI5Support\n\t\tinsertFontFace();\n\t\tinsertSystemCSSVars();\n\t\tinsertScrollbarStyles();\n\t\tfixSafariActiveState();\n\n\t\tresolve();\n\n\t\tbooted = true;\n\t\teventProvider.fireEvent(\"boot\");\n\t};\n\n\tbootPromise = new Promise(bootExecutor as (resolve: PromiseResolve) => void);\n\treturn bootPromise;\n};\n\nconst secondaryBoot = async (): Promise<void> => {\n\tawait boot(); // make sure we're not in the middle of boot before re-running the skipped parts\n\tawait initF6Navigation();\n\tattachOpenUI5SupportListeners();\n};\n\n/**\n * Callback, executed after theme properties registration\n * to apply the newly registered theme.\n * @private\n * @param { string } theme\n */\nconst onThemeRegistered = (theme: string) => {\n\tif (!booted) {\n\t\treturn;\n\t}\n\n\tconst currentTheme = getTheme();\n\tconst currentBaseTheme = getBaseTheme();\n\n\tif (theme === currentTheme || theme === currentBaseTheme) {\n\t\tapplyTheme(currentTheme);\n\t}\n};\n\nexport {\n\tboot,\n\tsecondaryBoot,\n\tattachBoot,\n\tisBooted,\n};\n"]}
@@ -1,5 +1,6 @@
1
1
  declare const registerTag: (tag: string) => void;
2
2
  declare const isTagRegistered: (tag: string) => boolean;
3
+ declare const hasRegisteredTags: () => boolean;
3
4
  declare const getAllRegisteredTags: () => string[];
4
5
  declare const recordTagRegistrationFailure: (tag: string) => void;
5
- export { registerTag, isTagRegistered, getAllRegisteredTags, recordTagRegistrationFailure, };
6
+ export { registerTag, isTagRegistered, hasRegisteredTags, getAllRegisteredTags, recordTagRegistrationFailure, };
@@ -12,6 +12,9 @@ const registerTag = (tag) => {
12
12
  const isTagRegistered = (tag) => {
13
13
  return Definitions.has(tag);
14
14
  };
15
+ const hasRegisteredTags = () => {
16
+ return Definitions.size > 0;
17
+ };
15
18
  const getAllRegisteredTags = () => {
16
19
  return [...Definitions.values()];
17
20
  };
@@ -71,8 +74,8 @@ const displayFailedRegistrations = () => {
71
74
  message = `${message}\nSince the above web components were defined by the same or newer version runtime, they should be compatible with your code.`;
72
75
  }
73
76
  });
74
- message = `${message}\n\nTo prevent other runtimes from defining tags that you use, consider using scoping or have third-party libraries use scoping: https://github.com/SAP/ui5-webcomponents/blob/main/docs/2-advanced/03-scoping.md.`;
77
+ message = `${message}\n\nTo prevent other runtimes from defining tags that you use, consider using scoping or have third-party libraries use scoping: https://github.com/UI5/webcomponents/blob/main/docs/2-advanced/06-scoping.md.`;
75
78
  console.warn(message); // eslint-disable-line
76
79
  };
77
- export { registerTag, isTagRegistered, getAllRegisteredTags, recordTagRegistrationFailure, };
80
+ export { registerTag, isTagRegistered, hasRegisteredTags, getAllRegisteredTags, recordTagRegistrationFailure, };
78
81
  //# sourceMappingURL=CustomElementsRegistry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomElementsRegistry.js","sourceRoot":"","sources":["../src/CustomElementsRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGxF,MAAM,IAAI,GAAG,iBAAiB,CAAsB,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;AACvE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAEtC,IAAI,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;AAC9C,IAAI,cAAmC,CAAC;AAExC,MAAM,eAAe,GAAG,CAAC,CAAC,CAAC;AAE3B,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;IACnC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,EAAE;IACvC,OAAO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACjC,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,GAAW,EAAE,EAAE;IACpD,IAAI,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,kBAAkB,KAAK,SAAS,EAAE;QACrC,kBAAkB,GAAG,eAAe,CAAC,CAAC,mHAAmH;KACzJ;IAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE;QACtC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;KAC5C;IACD,QAAQ,CAAC,GAAG,CAAC,kBAAkB,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE3C,IAAI,CAAC,cAAc,EAAE;QACpB,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,0BAA0B,EAAE,CAAC;YAC7B,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;YACrB,cAAc,GAAG,SAAS,CAAC;QAC5B,CAAC,EAAE,IAAI,CAAC,CAAC;KACT;AACF,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,GAAG,EAAE;IACvC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,mBAAmB,GAAG,sBAAsB,EAAE,CAAC;IACrD,MAAM,cAAc,GAAG,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAExD,IAAI,OAAO,GAAG,iDAAiD,CAAC;IAEhE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,OAAO,GAAG,GAAG,OAAO,uDAAuD,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;KAC7I;IAED,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;QAChD,IAAI,UAAkB,CAAC;QACvB,IAAI,YAAY,CAAC;QAEjB,IAAI,iBAAiB,KAAK,eAAe,EAAE,EAAE,kCAAkC;YAC9E,UAAU,GAAG,CAAC,CAAC,CAAC,0CAA0C;YAC1D,YAAY,GAAG;gBACd,WAAW,EAAE,uBAAuB;aACpC,CAAC;SACF;aAAM;YACN,UAAU,GAAG,eAAe,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;YACrE,YAAY,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;SAC9C;QAED,IAAI,WAAW,CAAC;QAChB,IAAI,UAAU,GAAG,CAAC,EAAE;YACnB,WAAW,GAAG,UAAU,CAAC;SACzB;aAAM,IAAI,UAAU,GAAG,CAAC,EAAE;YAC1B,WAAW,GAAG,SAAS,CAAC;SACxB;aAAM;YACN,WAAW,GAAG,UAAU,CAAC;SACzB;QACD,OAAO,GAAG,GAAG,OAAO,QAAQ,cAAc,CAAC,WAAW,sBAAsB,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,IAAI,gDAAgD,WAAW,aAAa,YAAY,CAAC,WAAW,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAEpR,IAAI,UAAU,GAAG,CAAC,EAAE;YACnB,OAAO,GAAG,GAAG,OAAO,qFAAqF,YAAY,CAAC,WAAW,kCAAkC,CAAC;SACpK;aAAM;YACN,OAAO,GAAG,GAAG,OAAO,+HAA+H,CAAC;SACpJ;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,GAAG,OAAO,oNAAoN,CAAC;IAEzO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB;AAC9C,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,4BAA4B,GAC5B,CAAC"}
1
+ {"version":3,"file":"CustomElementsRegistry.js","sourceRoot":"","sources":["../src/CustomElementsRegistry.ts"],"names":[],"mappings":"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","sourcesContent":["import getSharedResource from \"./getSharedResource.js\";\nimport { getCurrentRuntimeIndex, compareRuntimes, getAllRuntimes } from \"./Runtimes.js\";\nimport type { Timeout } from \"./types.js\";\n\nconst Tags = getSharedResource<Map<string, number>>(\"Tags\", new Map());\nconst Definitions = new Set<string>();\n\nlet Failures = new Map<number, Set<string>>();\nlet failureTimeout: Timeout | undefined;\n\nconst UNKNOWN_RUNTIME = -1;\n\nconst registerTag = (tag: string) => {\n\tDefinitions.add(tag);\n\tTags.set(tag, getCurrentRuntimeIndex());\n};\n\nconst isTagRegistered = (tag: string) => {\n\treturn Definitions.has(tag);\n};\n\nconst hasRegisteredTags = () => {\n\treturn Definitions.size > 0;\n};\n\nconst getAllRegisteredTags = () => {\n\treturn [...Definitions.values()];\n};\n\nconst recordTagRegistrationFailure = (tag: string) => {\n\tlet tagRegRuntimeIndex = Tags.get(tag);\n\tif (tagRegRuntimeIndex === undefined) {\n\t\ttagRegRuntimeIndex = UNKNOWN_RUNTIME; // If the tag is taken, but not registered in Tags, then a version before 1.1.0 defined it => use the \"unknown\" key\n\t}\n\n\tif (!Failures.has(tagRegRuntimeIndex)) {\n\t\tFailures.set(tagRegRuntimeIndex, new Set());\n\t}\n\tFailures.get(tagRegRuntimeIndex)!.add(tag);\n\n\tif (!failureTimeout) {\n\t\tfailureTimeout = setTimeout(() => {\n\t\t\tdisplayFailedRegistrations();\n\t\t\tFailures = new Map();\n\t\t\tfailureTimeout = undefined;\n\t\t}, 1000);\n\t}\n};\n\nconst displayFailedRegistrations = () => {\n\tconst allRuntimes = getAllRuntimes();\n\tconst currentRuntimeIndex = getCurrentRuntimeIndex();\n\tconst currentRuntime = allRuntimes[currentRuntimeIndex];\n\n\tlet message = `Multiple UI5 Web Components instances detected.`;\n\n\tif (allRuntimes.length > 1) {\n\t\tmessage = `${message}\\nLoading order (versions before 1.1.0 not listed): ${allRuntimes.map(runtime => `\\n${runtime.description}`).join(\"\")}`;\n\t}\n\n\t[...Failures.keys()].forEach(otherRuntimeIndex => {\n\t\tlet comparison: number;\n\t\tlet otherRuntime;\n\n\t\tif (otherRuntimeIndex === UNKNOWN_RUNTIME) { // version < 1.1.0 defined the tag\n\t\t\tcomparison = 1; // the current runtime is considered newer\n\t\t\totherRuntime = {\n\t\t\t\tdescription: `Older unknown runtime`,\n\t\t\t};\n\t\t} else {\n\t\t\tcomparison = compareRuntimes(currentRuntimeIndex, otherRuntimeIndex);\n\t\t\totherRuntime = allRuntimes[otherRuntimeIndex];\n\t\t}\n\n\t\tlet compareWord;\n\t\tif (comparison > 0) {\n\t\t\tcompareWord = \"an older\";\n\t\t} else if (comparison < 0) {\n\t\t\tcompareWord = \"a newer\";\n\t\t} else {\n\t\t\tcompareWord = \"the same\";\n\t\t}\n\t\tmessage = `${message}\\n\\n\"${currentRuntime.description}\" failed to define ${Failures.get(otherRuntimeIndex)!.size} tag(s) as they were defined by a runtime of ${compareWord} version \"${otherRuntime.description}\": ${([...Failures.get(otherRuntimeIndex)!]).sort().join(\", \")}.`;\n\n\t\tif (comparison > 0) {\n\t\t\tmessage = `${message}\\nWARNING! If your code uses features of the above web components, unavailable in ${otherRuntime.description}, it might not work as expected!`;\n\t\t} else {\n\t\t\tmessage = `${message}\\nSince the above web components were defined by the same or newer version runtime, they should be compatible with your code.`;\n\t\t}\n\t});\n\n\tmessage = `${message}\\n\\nTo prevent other runtimes from defining tags that you use, consider using scoping or have third-party libraries use scoping: https://github.com/UI5/webcomponents/blob/main/docs/2-advanced/06-scoping.md.`;\n\n\tconsole.warn(message); // eslint-disable-line\n};\n\nexport {\n\tregisterTag,\n\tisTagRegistered,\n\thasRegisteredTags,\n\tgetAllRegisteredTags,\n\trecordTagRegistrationFailure,\n};\n"]}
@@ -1,7 +1,7 @@
1
- import { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag } from "./CustomElementsScopeUtils.js";
1
+ import { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, getScopedVarName } from "./CustomElementsScopeUtils.js";
2
2
  declare class LitStatic {
3
- static html: (strings: TemplateStringsArray, ...values: unknown[]) => import("lit-html").TemplateResult<1 | 2>;
4
- static svg: (strings: TemplateStringsArray, ...values: unknown[]) => import("lit-html").TemplateResult<1 | 2>;
3
+ static html: (strings: TemplateStringsArray, ...values: unknown[]) => import("lit-html").TemplateResult;
4
+ static svg: (strings: TemplateStringsArray, ...values: unknown[]) => import("lit-html").TemplateResult;
5
5
  static unsafeStatic: (value: string) => object;
6
6
  }
7
- export { LitStatic, setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, };
7
+ export { LitStatic, setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, getScopedVarName, };
@@ -1,5 +1,5 @@
1
1
  import { html, svg, unsafeStatic, } from "lit-html/static.js";
2
- import { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, } from "./CustomElementsScopeUtils.js";
2
+ import { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, getScopedVarName, } from "./CustomElementsScopeUtils.js";
3
3
  import { registerFeature } from "./FeaturesRegistry.js";
4
4
  class LitStatic {
5
5
  }
@@ -7,5 +7,5 @@ LitStatic.html = html;
7
7
  LitStatic.svg = svg;
8
8
  LitStatic.unsafeStatic = unsafeStatic;
9
9
  registerFeature("LitStatic", LitStatic);
10
- export { LitStatic, setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, };
10
+ export { LitStatic, setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, getScopedVarName, };
11
11
  //# sourceMappingURL=CustomElementsScope.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomElementsScope.js","sourceRoot":"","sources":["../src/CustomElementsScope.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,IAAI,EACJ,GAAG,EACH,YAAY,GACZ,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,+BAA+B,GAC/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,SAAS;;AACP,cAAI,GAAG,IAAI,CAAC;AACZ,aAAG,GAAG,GAAG,CAAC;AACV,sBAAY,GAA8B,YAAY,CAAC;AAG/D,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAExC,OAAO,EACN,SAAS,EACT,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,+BAA+B,GAC/B,CAAC"}
1
+ {"version":3,"file":"CustomElementsScope.js","sourceRoot":"","sources":["../src/CustomElementsScope.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,IAAI,EACJ,GAAG,EACH,YAAY,GACZ,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,+BAA+B,EAC/B,gBAAgB,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,SAAS;;AACP,cAAI,GAAG,IAAI,CAAC;AACZ,aAAG,GAAG,GAAG,CAAC;AACV,sBAAY,GAA8B,YAAY,CAAC;AAG/D,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAExC,OAAO,EACN,SAAS,EACT,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,+BAA+B,EAC/B,gBAAgB,GAChB,CAAC","sourcesContent":["import {\n\thtml,\n\tsvg,\n\tunsafeStatic,\n} from \"lit-html/static.js\";\n\nimport {\n\tsetCustomElementsScopingSuffix,\n\tgetCustomElementsScopingSuffix,\n\tsetCustomElementsScopingRules,\n\tgetCustomElementsScopingRules,\n\tshouldScopeCustomElement,\n\tgetEffectiveScopingSuffixForTag,\n\tgetScopedVarName,\n} from \"./CustomElementsScopeUtils.js\";\nimport { registerFeature } from \"./FeaturesRegistry.js\";\n\nclass LitStatic {\n\tstatic html = html;\n\tstatic svg = svg;\n\tstatic unsafeStatic: (value: string) => object = unsafeStatic;\n}\n\nregisterFeature(\"LitStatic\", LitStatic);\n\nexport {\n\tLitStatic,\n\tsetCustomElementsScopingSuffix,\n\tgetCustomElementsScopingSuffix,\n\tsetCustomElementsScopingRules,\n\tgetCustomElementsScopingRules,\n\tshouldScopeCustomElement,\n\tgetEffectiveScopingSuffixForTag,\n\tgetScopedVarName,\n};\n"]}
@@ -4,7 +4,9 @@ type Rules = {
4
4
  };
5
5
  /**
6
6
  * Sets the suffix to be used for custom elements scoping, f.e. pass "demo" to get tags such as "ui5-button-demo".
7
- * Note: by default all tags starting with "ui5-" will be scoped, unless you change this by calling "setCustomElementsScopingRules"
7
+ *
8
+ * **Note:** By default all tags starting with "ui5-" will be scoped, unless you change this by calling "setCustomElementsScopingRules"
9
+ * **Note:** Setting the scoping suffix must be done before importing any components.
8
10
  *
9
11
  * @public
10
12
  * @param suffix The scoping suffix
@@ -16,7 +18,7 @@ declare const setCustomElementsScopingSuffix: (suffix: string) => void;
16
18
  * @public
17
19
  * @returns {String|undefined}
18
20
  */
19
- declare const getCustomElementsScopingSuffix: () => string;
21
+ declare const getCustomElementsScopingSuffix: () => string | undefined;
20
22
  /**
21
23
  * Sets the rules, governing which custom element tags to scope and which not, f.e.
22
24
  * setCustomElementsScopingRules({include: [/^ui5-/]}, exclude: [/^ui5-mylib-/, /^ui5-carousel$/]);
@@ -52,4 +54,18 @@ declare const shouldScopeCustomElement: (tag: string) => boolean | undefined;
52
54
  * @returns {String}
53
55
  */
54
56
  declare const getEffectiveScopingSuffixForTag: (tag: string) => string | undefined;
55
- export { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, };
57
+ /**
58
+ * @public
59
+ * Used for getting a scoped name for a CSS variable using the same transformation used in the build
60
+ * @param name the name of the css variable as written in the code
61
+ * @param withVersion whether to include the version in the scoped name
62
+ * @returns a variable name with the current version inserted as available at runtime
63
+ * @deprecated As of version 2.19.0 this method is no longer required. Variables can now be defined at the component level
64
+ * and are automatically encapsulated within each component’s Shadow DOM.
65
+ * As a result, runtime scoping logic is no longer necessary.
66
+ *
67
+ * It is still needed for third-party packages that have not yet migrated to the
68
+ * component-level variable approach.
69
+ */
70
+ declare const getScopedVarName: (name: string, withVersion?: boolean) => string;
71
+ export { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, getScopedVarName, };
@@ -1,3 +1,5 @@
1
+ import { hasRegisteredTags } from "./CustomElementsRegistry.js";
2
+ import VersionInfo from "./generated/VersionInfo.js";
1
3
  let suf;
2
4
  let rulesObj = {
3
5
  include: [/^ui5-/],
@@ -6,7 +8,9 @@ let rulesObj = {
6
8
  const tagsCache = new Map(); // true/false means the tag should/should not be cached, undefined means not known yet.
7
9
  /**
8
10
  * Sets the suffix to be used for custom elements scoping, f.e. pass "demo" to get tags such as "ui5-button-demo".
9
- * Note: by default all tags starting with "ui5-" will be scoped, unless you change this by calling "setCustomElementsScopingRules"
11
+ *
12
+ * **Note:** By default all tags starting with "ui5-" will be scoped, unless you change this by calling "setCustomElementsScopingRules"
13
+ * **Note:** Setting the scoping suffix must be done before importing any components.
10
14
  *
11
15
  * @public
12
16
  * @param suffix The scoping suffix
@@ -15,6 +19,10 @@ const setCustomElementsScopingSuffix = (suffix) => {
15
19
  if (!suffix.match(/^[a-zA-Z0-9_-]+$/)) {
16
20
  throw new Error("Only alphanumeric characters and dashes allowed for the scoping suffix");
17
21
  }
22
+ if (hasRegisteredTags()) {
23
+ // eslint-disable-next-line no-console
24
+ console.warn("Setting the scoping suffix must be done before importing any components. For proper usage, read the scoping section: https://github.com/UI5/webcomponents/blob/main/docs/2-advanced/06-scoping.md.");
25
+ }
18
26
  suf = suffix;
19
27
  };
20
28
  /**
@@ -86,5 +94,26 @@ const getEffectiveScopingSuffixForTag = (tag) => {
86
94
  return getCustomElementsScopingSuffix();
87
95
  }
88
96
  };
89
- export { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, };
97
+ /**
98
+ * @public
99
+ * Used for getting a scoped name for a CSS variable using the same transformation used in the build
100
+ * @param name the name of the css variable as written in the code
101
+ * @param withVersion whether to include the version in the scoped name
102
+ * @returns a variable name with the current version inserted as available at runtime
103
+ * @deprecated As of version 2.19.0 this method is no longer required. Variables can now be defined at the component level
104
+ * and are automatically encapsulated within each component’s Shadow DOM.
105
+ * As a result, runtime scoping logic is no longer necessary.
106
+ *
107
+ * It is still needed for third-party packages that have not yet migrated to the
108
+ * component-level variable approach.
109
+ */
110
+ const getScopedVarName = (name, withVersion = false) => {
111
+ if (!withVersion) {
112
+ return name;
113
+ }
114
+ const versionStr = `v${VersionInfo.version.replaceAll(".", "-")}`;
115
+ const expr = /(--_?ui5)([^,:)\s]+)/g;
116
+ return name.replaceAll(expr, `$1-${versionStr}$2`);
117
+ };
118
+ export { setCustomElementsScopingSuffix, getCustomElementsScopingSuffix, setCustomElementsScopingRules, getCustomElementsScopingRules, shouldScopeCustomElement, getEffectiveScopingSuffixForTag, getScopedVarName, };
90
119
  //# sourceMappingURL=CustomElementsScopeUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomElementsScopeUtils.js","sourceRoot":"","sources":["../src/CustomElementsScopeUtils.ts"],"names":[],"mappings":"AAAA,IAAI,GAAW,CAAC;AAOhB,IAAI,QAAQ,GAAU;IACrB,OAAO,EAAE,CAAC,OAAO,CAAC;IAClB,OAAO,EAAE,EAAE;CACX,CAAC;AAEF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAC,CAAC,uFAAuF;AAErI;;;;;;GAMG;AACH,MAAM,8BAA8B,GAAG,CAAC,MAAc,EAAE,EAAE;IACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE;QACtC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;KAC1F;IAED,GAAG,GAAG,MAAM,CAAC;AACd,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,8BAA8B,GAAG,GAAG,EAAE;IAC3C,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,6BAA6B,GAAG,CAAC,KAAY,EAAE,EAAE;IACtD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;KACjF;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,YAAY,MAAM,CAAC,CAAC,EAAE;QAC3F,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;KAC3E;IAED,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,YAAY,MAAM,CAAC,CAAC,CAAC,EAAE;QAC9G,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;KAC3E;IAED,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;IACpC,QAAQ,GAAG,KAAK,CAAC;IACjB,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,yCAAyC;AAC7D,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,6BAA6B,GAAG,GAAG,EAAE;IAC1C,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,wBAAwB,GAAG,CAAC,GAAW,EAAE,EAAE;IAChD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACxB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACjH,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;KAC3B;IAED,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,+BAA+B,GAAG,CAAC,GAAW,EAAE,EAAE;IACvD,IAAI,wBAAwB,CAAC,GAAG,CAAC,EAAE;QAClC,OAAO,8BAA8B,EAAE,CAAC;KACxC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,+BAA+B,GAC/B,CAAC"}
1
+ {"version":3,"file":"CustomElementsScopeUtils.js","sourceRoot":"","sources":["../src/CustomElementsScopeUtils.ts"],"names":[],"mappings":"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","sourcesContent":["import { hasRegisteredTags } from \"./CustomElementsRegistry.js\";\nimport VersionInfo from \"./generated/VersionInfo.js\";\n\nlet suf: string;\n\ntype Rules = {\n\tinclude: Array<RegExp>,\n\texclude: Array<RegExp>,\n};\n\nlet rulesObj: Rules = {\n\tinclude: [/^ui5-/],\n\texclude: [],\n};\n\nconst tagsCache = new Map<string, boolean>(); // true/false means the tag should/should not be cached, undefined means not known yet.\n\n/**\n * Sets the suffix to be used for custom elements scoping, f.e. pass \"demo\" to get tags such as \"ui5-button-demo\".\n *\n * **Note:** By default all tags starting with \"ui5-\" will be scoped, unless you change this by calling \"setCustomElementsScopingRules\"\n * **Note:** Setting the scoping suffix must be done before importing any components.\n *\n * @public\n * @param suffix The scoping suffix\n */\nconst setCustomElementsScopingSuffix = (suffix: string) => {\n\tif (!suffix.match(/^[a-zA-Z0-9_-]+$/)) {\n\t\tthrow new Error(\"Only alphanumeric characters and dashes allowed for the scoping suffix\");\n\t}\n\n\tif (hasRegisteredTags()) {\n\t\t// eslint-disable-next-line no-console\n\t\tconsole.warn(\"Setting the scoping suffix must be done before importing any components. For proper usage, read the scoping section: https://github.com/UI5/webcomponents/blob/main/docs/2-advanced/06-scoping.md.\");\n\t}\n\n\tsuf = suffix;\n};\n\n/**\n * Returns the currently set scoping suffix, or undefined if not set.\n *\n * @public\n * @returns {String|undefined}\n */\nconst getCustomElementsScopingSuffix = (): string | undefined => {\n\treturn suf;\n};\n\n/**\n * Sets the rules, governing which custom element tags to scope and which not, f.e.\n * setCustomElementsScopingRules({include: [/^ui5-/]}, exclude: [/^ui5-mylib-/, /^ui5-carousel$/]);\n * will scope all elements starting with \"ui5-\" but not the ones starting with \"ui5-mylib-\" and not \"ui5-carousel\".\n *\n * @public\n * @param rules Object with \"include\" and \"exclude\" properties, both arrays of regular expressions. Note that \"include\"\n * rules are applied first and \"exclude\" rules second.\n */\nconst setCustomElementsScopingRules = (rules: Rules) => {\n\tif (!rules || !rules.include) {\n\t\tthrow new Error(`\"rules\" must be an object with at least an \"include\" property`);\n\t}\n\n\tif (!Array.isArray(rules.include) || rules.include.some(rule => !(rule instanceof RegExp))) {\n\t\tthrow new Error(`\"rules.include\" must be an array of regular expressions`);\n\t}\n\n\tif (rules.exclude && (!Array.isArray(rules.exclude) || rules.exclude.some(rule => !(rule instanceof RegExp)))) {\n\t\tthrow new Error(`\"rules.exclude\" must be an array of regular expressions`);\n\t}\n\n\trules.exclude = rules.exclude || [];\n\trulesObj = rules;\n\ttagsCache.clear(); // reset the cache upon setting new rules\n};\n\n/**\n * Returns the rules, governing which custom element tags to scope and which not. By default, all elements\n * starting with \"ui5-\" are scoped. The default rules are: {include: [/^ui5-/]}.\n *\n * @public\n * @returns {Object}\n */\nconst getCustomElementsScopingRules = () => {\n\treturn rulesObj;\n};\n\n/**\n * Determines whether custom elements with the given tag should be scoped or not.\n * The tag is first matched against the \"include\" rules and then against the \"exclude\" rules and the\n * result is cached until new rules are set.\n *\n * @public\n * @param tag\n */\nconst shouldScopeCustomElement = (tag: string) => {\n\tif (!tagsCache.has(tag)) {\n\t\tconst result = rulesObj.include.some(rule => tag.match(rule)) && !rulesObj.exclude.some(rule => tag.match(rule));\n\t\ttagsCache.set(tag, result);\n\t}\n\n\treturn tagsCache.get(tag);\n};\n\n/**\n * Returns the currently set scoping suffix, if any and if the tag should be scoped, or undefined otherwise.\n *\n * @public\n * @param tag\n * @returns {String}\n */\nconst getEffectiveScopingSuffixForTag = (tag: string) => {\n\tif (shouldScopeCustomElement(tag)) {\n\t\treturn getCustomElementsScopingSuffix();\n\t}\n};\n\n/**\n * @public\n * Used for getting a scoped name for a CSS variable using the same transformation used in the build\n * @param name the name of the css variable as written in the code\n * @param withVersion whether to include the version in the scoped name\n * @returns a variable name with the current version inserted as available at runtime\n * @deprecated As of version 2.19.0 this method is no longer required. Variables can now be defined at the component level\n * and are automatically encapsulated within each component’s Shadow DOM.\n * As a result, runtime scoping logic is no longer necessary.\n *\n * It is still needed for third-party packages that have not yet migrated to the\n * component-level variable approach.\n */\nconst getScopedVarName = (name: string, withVersion: boolean = false) => {\n\tif (!withVersion) {\n\t\treturn name;\n\t}\n\n\tconst versionStr = `v${VersionInfo.version.replaceAll(\".\", \"-\")}`;\n\tconst expr = /(--_?ui5)([^,:)\\s]+)/g;\n\treturn name.replaceAll(expr, `$1-${versionStr}$2`);\n};\n\nexport {\n\tsetCustomElementsScopingSuffix,\n\tgetCustomElementsScopingSuffix,\n\tsetCustomElementsScopingRules,\n\tgetCustomElementsScopingRules,\n\tshouldScopeCustomElement,\n\tgetEffectiveScopingSuffixForTag,\n\tgetScopedVarName,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DOMObserver.js","sourceRoot":"","sources":["../src/DOMObserver.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,IAAI,OAAO,EAA0B,CAAC;AAExD;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,IAAU,EAAE,QAA0B,EAAE,OAA8B,EAAE,EAAE;IACjG,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAChD,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAU,EAAE,EAAE;IACvC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,QAAQ,EAAE;QACb,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KACvB;AACF,CAAC,CAAC;AAEF,OAAO,EACN,cAAc,EACd,gBAAgB,GAChB,CAAC"}
1
+ {"version":3,"file":"DOMObserver.js","sourceRoot":"","sources":["../src/DOMObserver.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,IAAI,OAAO,EAA0B,CAAC;AAExD;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,IAAU,EAAE,QAA0B,EAAE,OAA8B,EAAE,EAAE;IACjG,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAChD,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,IAAU,EAAE,EAAE;IACvC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,QAAQ,EAAE,CAAC;QACd,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,cAAc,EACd,gBAAgB,GAChB,CAAC","sourcesContent":["const observers = new WeakMap<Node, MutationObserver>();\n\n/**\n * @param node\n * @param callback\n * @param options\n */\nconst observeDOMNode = (node: Node, callback: MutationCallback, options?: MutationObserverInit) => {\n\tconst observer = new MutationObserver(callback);\n\tobservers.set(node, observer);\n\tobserver.observe(node, options);\n};\n\n/**\n * @param node\n */\nconst unobserveDOMNode = (node: Node) => {\n\tconst observer = observers.get(node);\n\tif (observer) {\n\t\tobserver.disconnect();\n\t\tobservers.delete(node);\n\t}\n};\n\nexport {\n\tobserveDOMNode,\n\tunobserveDOMNode,\n};\n"]}
package/dist/Device.d.ts CHANGED
@@ -1,5 +1,19 @@
1
+ declare const internals: {
2
+ readonly userAgent: string;
3
+ readonly touch: boolean;
4
+ readonly chrome: boolean;
5
+ readonly firefox: boolean;
6
+ readonly safari: boolean;
7
+ readonly webkit: boolean;
8
+ readonly windows: boolean;
9
+ readonly macOS: boolean;
10
+ readonly iOS: boolean;
11
+ readonly android: boolean;
12
+ readonly androidPhone: boolean;
13
+ readonly ipad: boolean;
14
+ _isPhone(): boolean;
15
+ };
1
16
  declare const supportsTouch: () => boolean;
2
- declare const isIE: () => boolean;
3
17
  declare const isSafari: () => boolean;
4
18
  declare const isChrome: () => boolean;
5
19
  declare const isFirefox: () => boolean;
@@ -8,5 +22,6 @@ declare const isPhone: () => boolean;
8
22
  declare const isDesktop: () => boolean;
9
23
  declare const isCombi: () => boolean;
10
24
  declare const isIOS: () => boolean;
25
+ declare const isMac: () => boolean;
11
26
  declare const isAndroid: () => boolean;
12
- export { supportsTouch, isIE, isSafari, isChrome, isFirefox, isPhone, isTablet, isDesktop, isCombi, isIOS, isAndroid, };
27
+ export { internals, supportsTouch, isSafari, isChrome, isFirefox, isPhone, isTablet, isDesktop, isCombi, isIOS, isAndroid, isMac, };
package/dist/Device.js CHANGED
@@ -1,91 +1,171 @@
1
- const ua = navigator.userAgent;
2
- const touch = "ontouchstart" in window || navigator.maxTouchPoints > 0;
3
- const ie = /(msie|trident)/i.test(ua);
4
- const chrome = !ie && /(Chrome|CriOS)/.test(ua);
5
- const firefox = /Firefox/.test(ua);
6
- const safari = !ie && !chrome && /(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(ua);
7
- const webkit = !ie && /webkit/.test(ua);
8
- const windows = navigator.platform.indexOf("Win") !== -1;
9
- const iOS = !!(navigator.platform.match(/iPhone|iPad|iPod/)) || !!(navigator.userAgent.match(/Mac/) && "ontouchend" in document);
10
- const android = !windows && /Android/.test(ua);
11
- const androidPhone = android && /(?=android)(?=.*mobile)/i.test(ua);
12
- const ipad = /ipad/i.test(ua) || (/Macintosh/i.test(ua) && "ontouchend" in document);
13
- // With iOS 13 the string 'iPad' was removed from the user agent string through a browser setting, which is applied on all sites by default:
14
- // "Request Desktop Website -> All websites" (for more infos see: https://forums.developer.apple.com/thread/119186).
15
- // Therefore the OS is detected as MACINTOSH instead of iOS and the device is a tablet if the Device.support.touch is true.
1
+ const isSSR = typeof document === "undefined";
2
+ const internals = {
3
+ get userAgent() {
4
+ if (isSSR) {
5
+ return "";
6
+ }
7
+ return navigator.userAgent;
8
+ },
9
+ get touch() {
10
+ if (isSSR) {
11
+ return false;
12
+ }
13
+ return "ontouchstart" in window || navigator.maxTouchPoints > 0;
14
+ },
15
+ get chrome() {
16
+ if (isSSR) {
17
+ return false;
18
+ }
19
+ return /(Chrome|CriOS)/.test(internals.userAgent);
20
+ },
21
+ get firefox() {
22
+ if (isSSR) {
23
+ return false;
24
+ }
25
+ return /Firefox/.test(internals.userAgent);
26
+ },
27
+ get safari() {
28
+ if (isSSR) {
29
+ return false;
30
+ }
31
+ return !internals.chrome && /(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(internals.userAgent);
32
+ },
33
+ get webkit() {
34
+ if (isSSR) {
35
+ return false;
36
+ }
37
+ return /webkit/.test(internals.userAgent);
38
+ },
39
+ get windows() {
40
+ if (isSSR) {
41
+ return false;
42
+ }
43
+ return navigator.platform.indexOf("Win") !== -1;
44
+ },
45
+ get macOS() {
46
+ if (isSSR) {
47
+ return false;
48
+ }
49
+ return !!navigator.userAgent.match(/Macintosh|Mac OS X/i);
50
+ },
51
+ get iOS() {
52
+ if (isSSR) {
53
+ return false;
54
+ }
55
+ return !!(navigator.platform.match(/iPhone|iPad|iPod/)) || !!(internals.userAgent.match(/Mac/) && "ontouchend" in document);
56
+ },
57
+ get android() {
58
+ if (isSSR) {
59
+ return false;
60
+ }
61
+ return !internals.windows && /Android/.test(internals.userAgent);
62
+ },
63
+ get androidPhone() {
64
+ if (isSSR) {
65
+ return false;
66
+ }
67
+ return internals.android && /(?=android)(?=.*mobile)/i.test(internals.userAgent);
68
+ },
69
+ get ipad() {
70
+ if (isSSR) {
71
+ return false;
72
+ }
73
+ // With iOS 13 the string 'iPad' was removed from the user agent string through a browser setting, which is applied on all sites by default:
74
+ // "Request Desktop Website -> All websites" (for more infos see: https://forums.developer.apple.com/thread/119186).
75
+ // Therefore the OS is detected as MACINTOSH instead of iOS and the device is a tablet if the Device.support.touch is true.
76
+ return /ipad/i.test(internals.userAgent) || (/Macintosh/i.test(internals.userAgent) && "ontouchend" in document);
77
+ },
78
+ _isPhone() {
79
+ detectTablet();
80
+ return internals.touch && !tablet;
81
+ },
82
+ };
16
83
  let windowsVersion;
17
84
  let webkitVersion;
18
85
  let tablet;
19
86
  const isWindows8OrAbove = () => {
20
- if (!windows) {
87
+ if (isSSR) {
88
+ return false;
89
+ }
90
+ if (!internals.windows) {
21
91
  return false;
22
92
  }
23
93
  if (windowsVersion === undefined) {
24
- const matches = ua.match(/Windows NT (\d+).(\d)/);
94
+ const matches = internals.userAgent.match(/Windows NT (\d+).(\d)/);
25
95
  windowsVersion = matches ? parseFloat(matches[1]) : 0;
26
96
  }
27
97
  return windowsVersion >= 8;
28
98
  };
29
99
  const isWebkit537OrAbove = () => {
30
- if (!webkit) {
100
+ if (isSSR) {
101
+ return false;
102
+ }
103
+ if (!internals.webkit) {
31
104
  return false;
32
105
  }
33
106
  if (webkitVersion === undefined) {
34
- const matches = ua.match(/(webkit)[ /]([\w.]+)/);
107
+ const matches = internals.userAgent.match(/(webkit)[ /]([\w.]+)/);
35
108
  webkitVersion = matches ? parseFloat(matches[1]) : 0;
36
109
  }
37
110
  return webkitVersion >= 537.10;
38
111
  };
39
112
  const detectTablet = () => {
113
+ if (isSSR) {
114
+ return false;
115
+ }
40
116
  if (tablet !== undefined) {
41
117
  return;
42
118
  }
43
- if (ipad) {
119
+ if (internals.ipad) {
44
120
  tablet = true;
45
121
  return;
46
122
  }
47
- if (touch) {
123
+ if (internals.touch) {
48
124
  if (isWindows8OrAbove()) {
49
125
  tablet = true;
50
126
  return;
51
127
  }
52
- if (chrome && android) {
53
- tablet = !/Mobile Safari\/[.0-9]+/.test(ua);
128
+ if (internals.chrome && internals.android) {
129
+ tablet = !/Mobile Safari\/[.0-9]+/.test(internals.userAgent);
54
130
  return;
55
131
  }
56
132
  let densityFactor = window.devicePixelRatio ? window.devicePixelRatio : 1; // may be undefined in Windows Phone devices
57
- if (android && isWebkit537OrAbove()) {
133
+ if (internals.android && isWebkit537OrAbove()) {
58
134
  densityFactor = 1;
59
135
  }
60
136
  tablet = (Math.min(window.screen.width / densityFactor, window.screen.height / densityFactor) >= 600);
61
137
  return;
62
138
  }
63
- tablet = (ie && ua.indexOf("Touch") !== -1) || (android && !androidPhone);
139
+ tablet = internals.userAgent.indexOf("Touch") !== -1 || (internals.android && !internals.androidPhone);
64
140
  };
65
- const supportsTouch = () => touch;
66
- const isIE = () => ie;
67
- const isSafari = () => safari;
68
- const isChrome = () => chrome;
69
- const isFirefox = () => firefox;
141
+ const supportsTouch = () => internals.touch;
142
+ const isSafari = () => internals.safari;
143
+ const isChrome = () => internals.chrome;
144
+ const isFirefox = () => internals.firefox;
70
145
  const isTablet = () => {
71
146
  detectTablet();
72
- return (touch || isWindows8OrAbove()) && tablet;
147
+ return (internals.touch || isWindows8OrAbove()) && tablet;
73
148
  };
74
149
  const isPhone = () => {
75
- detectTablet();
76
- return touch && !tablet;
150
+ return internals._isPhone();
77
151
  };
78
152
  const isDesktop = () => {
153
+ if (isSSR) {
154
+ return false;
155
+ }
79
156
  return (!isTablet() && !isPhone()) || isWindows8OrAbove();
80
157
  };
81
158
  const isCombi = () => {
82
159
  return isTablet() && isDesktop();
83
160
  };
84
161
  const isIOS = () => {
85
- return iOS;
162
+ return internals.iOS;
163
+ };
164
+ const isMac = () => {
165
+ return internals.macOS;
86
166
  };
87
167
  const isAndroid = () => {
88
- return android || androidPhone;
168
+ return internals.android || internals.androidPhone;
89
169
  };
90
- export { supportsTouch, isIE, isSafari, isChrome, isFirefox, isPhone, isTablet, isDesktop, isCombi, isIOS, isAndroid, };
170
+ export { internals, supportsTouch, isSafari, isChrome, isFirefox, isPhone, isTablet, isDesktop, isCombi, isIOS, isAndroid, isMac, };
91
171
  //# sourceMappingURL=Device.js.map