@ui5/webcomponents-base 0.0.0-c638668a1 → 0.0.0-c6c04c609

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 (629) hide show
  1. package/.eslintignore +6 -5
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +833 -0
  4. package/README.md +33 -6
  5. package/bundle.esm.js +20 -11
  6. package/config/wdio.conf.cjs +400 -0
  7. package/dist/AssetRegistry.d.ts +5 -0
  8. package/dist/AssetRegistry.js +3 -8
  9. package/dist/AssetRegistry.js.map +1 -0
  10. package/dist/Boot.d.ts +9 -0
  11. package/dist/Boot.js +55 -45
  12. package/dist/Boot.js.map +1 -0
  13. package/{src/CSP.js → dist/CSP.d.ts} +8 -37
  14. package/dist/CSP.js +16 -24
  15. package/dist/CSP.js.map +1 -0
  16. package/dist/CustomElementsRegistry.d.ts +5 -0
  17. package/dist/CustomElementsRegistry.js +66 -83
  18. package/dist/CustomElementsRegistry.js.map +1 -0
  19. package/dist/CustomElementsScope.d.ts +7 -0
  20. package/dist/CustomElementsScope.js +11 -108
  21. package/dist/CustomElementsScope.js.map +1 -0
  22. package/dist/CustomElementsScopeUtils.d.ts +62 -0
  23. package/dist/CustomElementsScopeUtils.js +102 -0
  24. package/dist/CustomElementsScopeUtils.js.map +1 -0
  25. package/dist/DOMObserver.d.ts +11 -0
  26. package/dist/DOMObserver.js +12 -54
  27. package/dist/DOMObserver.js.map +1 -0
  28. package/dist/Device.d.ts +13 -0
  29. package/dist/Device.js +155 -96
  30. package/dist/Device.js.map +1 -0
  31. package/dist/EventProvider.d.ts +25 -0
  32. package/dist/EventProvider.js +67 -82
  33. package/dist/EventProvider.js.map +1 -0
  34. package/dist/FeaturesRegistry.d.ts +3 -0
  35. package/dist/FeaturesRegistry.js +5 -10
  36. package/dist/FeaturesRegistry.js.map +1 -0
  37. package/dist/FontFace.d.ts +2 -0
  38. package/dist/FontFace.js +14 -19
  39. package/dist/FontFace.js.map +1 -0
  40. package/dist/IgnoreCustomElements.d.ts +27 -0
  41. package/dist/IgnoreCustomElements.js +39 -0
  42. package/dist/IgnoreCustomElements.js.map +1 -0
  43. package/dist/InitialConfiguration.d.ts +28 -0
  44. package/dist/InitialConfiguration.js +126 -131
  45. package/dist/InitialConfiguration.js.map +1 -0
  46. package/dist/Keys.d.ts +61 -0
  47. package/dist/Keys.js +178 -267
  48. package/dist/Keys.js.map +1 -0
  49. package/dist/ManagedStyles.d.ts +9 -0
  50. package/dist/ManagedStyles.js +140 -70
  51. package/dist/ManagedStyles.js.map +1 -0
  52. package/dist/MarkedEvents.d.ts +9 -0
  53. package/dist/MarkedEvents.js +15 -0
  54. package/dist/MarkedEvents.js.map +1 -0
  55. package/dist/MediaRange.d.ts +37 -0
  56. package/dist/MediaRange.js +54 -65
  57. package/dist/MediaRange.js.map +1 -0
  58. package/dist/PropertiesFileFormat.d.ts +8 -0
  59. package/dist/PropertiesFileFormat.js +72 -82
  60. package/dist/PropertiesFileFormat.js.map +1 -0
  61. package/dist/Render.d.ts +47 -0
  62. package/dist/Render.js +81 -113
  63. package/dist/Render.js.map +1 -0
  64. package/dist/RenderQueue.d.ts +19 -0
  65. package/dist/RenderQueue.js +52 -62
  66. package/dist/RenderQueue.js.map +1 -0
  67. package/dist/Runtimes.d.ts +27 -0
  68. package/dist/Runtimes.js +49 -70
  69. package/dist/Runtimes.js.map +1 -0
  70. package/dist/StaticArea.d.ts +3 -0
  71. package/dist/StaticArea.js +5 -1
  72. package/dist/StaticArea.js.map +1 -0
  73. package/dist/StaticAreaItem.d.ts +37 -0
  74. package/dist/StaticAreaItem.js +88 -87
  75. package/dist/StaticAreaItem.js.map +1 -0
  76. package/dist/SystemCSSVars.d.ts +2 -0
  77. package/dist/SystemCSSVars.js +4 -5
  78. package/dist/SystemCSSVars.js.map +1 -0
  79. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  80. package/dist/Theming.js +1 -1
  81. package/dist/Theming.js.map +1 -0
  82. package/dist/UI5Element.d.ts +394 -0
  83. package/dist/UI5Element.js +944 -985
  84. package/dist/UI5Element.js.map +1 -0
  85. package/dist/UI5ElementMetadata.d.ts +150 -0
  86. package/dist/UI5ElementMetadata.js +278 -314
  87. package/dist/UI5ElementMetadata.js.map +1 -0
  88. package/dist/animations/AnimationQueue.d.ts +8 -0
  89. package/dist/animations/AnimationQueue.js +31 -38
  90. package/dist/animations/AnimationQueue.js.map +1 -0
  91. package/dist/animations/animate.d.ts +14 -0
  92. package/dist/animations/animate.js +46 -51
  93. package/dist/animations/animate.js.map +1 -0
  94. package/dist/animations/scroll.d.ts +5 -0
  95. package/dist/animations/scroll.js +18 -27
  96. package/dist/animations/scroll.js.map +1 -0
  97. package/dist/animations/slideDown.d.ts +5 -0
  98. package/dist/animations/slideDown.js +53 -78
  99. package/dist/animations/slideDown.js.map +1 -0
  100. package/dist/animations/slideUp.d.ts +5 -0
  101. package/dist/animations/slideUp.js +49 -70
  102. package/dist/animations/slideUp.js.map +1 -0
  103. package/dist/api.json +1 -0
  104. package/dist/asset-registries/Icons.d.ts +39 -0
  105. package/dist/asset-registries/Icons.js +120 -123
  106. package/dist/asset-registries/Icons.js.map +1 -0
  107. package/dist/asset-registries/Illustrations.d.ts +18 -0
  108. package/dist/asset-registries/Illustrations.js +80 -25
  109. package/dist/asset-registries/Illustrations.js.map +1 -0
  110. package/dist/asset-registries/LocaleData.d.ts +7 -0
  111. package/dist/asset-registries/LocaleData.js +104 -127
  112. package/dist/asset-registries/LocaleData.js.map +1 -0
  113. package/dist/asset-registries/Themes.d.ts +12 -0
  114. package/dist/asset-registries/Themes.js +57 -67
  115. package/dist/asset-registries/Themes.js.map +1 -0
  116. package/dist/asset-registries/i18n.d.ts +23 -0
  117. package/dist/asset-registries/i18n.js +61 -81
  118. package/dist/asset-registries/i18n.js.map +1 -0
  119. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  120. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  121. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  122. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  123. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  124. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  125. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  126. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  127. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  128. package/dist/assets/Boot-34b7cea0.css +1 -0
  129. package/dist/assets/Boot-442448c1.js +9 -0
  130. package/dist/assets/bundle.esm-21077c57.js +50 -0
  131. package/dist/config/AnimationMode.d.ts +14 -0
  132. package/dist/config/AnimationMode.js +21 -18
  133. package/dist/config/AnimationMode.js.map +1 -0
  134. package/dist/config/CalendarType.d.ts +15 -0
  135. package/dist/config/CalendarType.js +31 -14
  136. package/dist/config/CalendarType.js.map +1 -0
  137. package/dist/config/FormatSettings.d.ts +15 -0
  138. package/dist/config/FormatSettings.js +15 -9
  139. package/dist/config/FormatSettings.js.map +1 -0
  140. package/dist/config/Icons.d.ts +40 -0
  141. package/dist/config/Icons.js +44 -0
  142. package/dist/config/Icons.js.map +1 -0
  143. package/dist/config/Language.d.ts +40 -0
  144. package/dist/config/Language.js +43 -43
  145. package/dist/config/Language.js.map +1 -0
  146. package/dist/config/NoConflict.d.ts +20 -0
  147. package/dist/config/NoConflict.js +41 -41
  148. package/dist/config/NoConflict.js.map +1 -0
  149. package/dist/config/RTL.d.ts +7 -0
  150. package/dist/config/RTL.js +26 -20
  151. package/dist/config/RTL.js.map +1 -0
  152. package/dist/config/Theme.d.ts +38 -0
  153. package/dist/config/Theme.js +57 -29
  154. package/dist/config/Theme.js.map +1 -0
  155. package/dist/config/ThemeRoot.d.ts +29 -0
  156. package/dist/config/ThemeRoot.js +59 -0
  157. package/dist/config/ThemeRoot.js.map +1 -0
  158. package/dist/config/Timezone.d.ts +17 -0
  159. package/dist/config/Timezone.js +30 -0
  160. package/dist/config/Timezone.js.map +1 -0
  161. package/dist/connectToComponent.d.ts +9 -0
  162. package/dist/connectToComponent.js +59 -0
  163. package/dist/connectToComponent.js.map +1 -0
  164. package/dist/css/BusyIndicator.css +80 -0
  165. package/dist/css/FontFace.css +54 -15
  166. package/dist/decorators/customElement.d.ts +23 -0
  167. package/dist/decorators/customElement.js +37 -0
  168. package/dist/decorators/customElement.js.map +1 -0
  169. package/dist/decorators/event.d.ts +10 -0
  170. package/dist/decorators/event.js +24 -0
  171. package/dist/decorators/event.js.map +1 -0
  172. package/dist/decorators/property.d.ts +9 -0
  173. package/dist/decorators/property.js +24 -0
  174. package/dist/decorators/property.js.map +1 -0
  175. package/dist/decorators/slot.d.ts +9 -0
  176. package/dist/decorators/slot.js +37 -0
  177. package/dist/decorators/slot.js.map +1 -0
  178. package/dist/delegate/ItemNavigation.d.ts +114 -0
  179. package/dist/delegate/ItemNavigation.js +276 -312
  180. package/dist/delegate/ItemNavigation.js.map +1 -0
  181. package/dist/delegate/ResizeHandler.d.ts +25 -0
  182. package/dist/delegate/ResizeHandler.js +72 -91
  183. package/dist/delegate/ResizeHandler.js.map +1 -0
  184. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  185. package/dist/delegate/ScrollEnablement.js +157 -180
  186. package/dist/delegate/ScrollEnablement.js.map +1 -0
  187. package/dist/features/F6Navigation.d.ts +19 -0
  188. package/dist/features/F6Navigation.js +145 -100
  189. package/dist/features/F6Navigation.js.map +1 -0
  190. package/dist/features/LegacyDateFormats.d.ts +18 -0
  191. package/dist/features/LegacyDateFormats.js +20 -0
  192. package/dist/features/LegacyDateFormats.js.map +1 -0
  193. package/dist/features/OpenUI5Element.d.ts +9 -0
  194. package/dist/features/OpenUI5Element.js +5 -0
  195. package/dist/features/OpenUI5Element.js.map +1 -0
  196. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  197. package/dist/features/OpenUI5Enablement.js +96 -0
  198. package/dist/features/OpenUI5Enablement.js.map +1 -0
  199. package/dist/features/OpenUI5Support.d.ts +36 -0
  200. package/dist/features/OpenUI5Support.js +151 -121
  201. package/dist/features/OpenUI5Support.js.map +1 -0
  202. package/dist/generated/AssetParameters.js +3 -1
  203. package/dist/generated/VersionInfo.js +3 -3
  204. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  205. package/dist/generated/css/BusyIndicator.css.js +7 -0
  206. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  207. package/dist/generated/css/FontFace.css.d.ts +3 -0
  208. package/dist/generated/css/FontFace.css.js +7 -5
  209. package/dist/generated/css/FontFace.css.js.map +1 -0
  210. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  211. package/dist/generated/css/OverrideFontFace.css.js +7 -5
  212. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  213. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  214. package/dist/generated/css/SystemCSSVars.css.js +7 -5
  215. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  216. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  217. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  218. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  219. package/dist/getSharedResource.d.ts +11 -0
  220. package/dist/getSharedResource.js +28 -18
  221. package/dist/getSharedResource.js.map +1 -0
  222. package/dist/global.d.ts +40 -0
  223. package/dist/i18nBundle.d.ts +43 -0
  224. package/dist/i18nBundle.js +57 -64
  225. package/dist/i18nBundle.js.map +1 -0
  226. package/dist/locale/Locale.d.ts +22 -0
  227. package/dist/locale/Locale.js +75 -87
  228. package/dist/locale/Locale.js.map +1 -0
  229. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  230. package/dist/locale/RTLAwareRegistry.js +6 -11
  231. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  232. package/dist/locale/applyDirection.d.ts +10 -0
  233. package/dist/locale/applyDirection.js +7 -7
  234. package/dist/locale/applyDirection.js.map +1 -0
  235. package/dist/locale/directionChange.d.ts +15 -0
  236. package/dist/locale/directionChange.js +7 -15
  237. package/dist/locale/directionChange.js.map +1 -0
  238. package/dist/locale/getEffectiveDir.d.ts +2 -0
  239. package/dist/locale/getEffectiveDir.js +20 -24
  240. package/dist/locale/getEffectiveDir.js.map +1 -0
  241. package/dist/locale/getLocale.d.ts +7 -0
  242. package/dist/locale/getLocale.js +26 -29
  243. package/dist/locale/getLocale.js.map +1 -0
  244. package/dist/locale/languageChange.d.ts +5 -0
  245. package/dist/locale/languageChange.js +8 -16
  246. package/dist/locale/languageChange.js.map +1 -0
  247. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  248. package/dist/locale/nextFallbackLocale.js +15 -19
  249. package/dist/locale/nextFallbackLocale.js.map +1 -0
  250. package/dist/locale/normalizeLocale.d.ts +7 -0
  251. package/dist/locale/normalizeLocale.js +34 -41
  252. package/dist/locale/normalizeLocale.js.map +1 -0
  253. package/dist/renderer/LitRenderer.d.ts +14 -0
  254. package/dist/renderer/LitRenderer.js +31 -24
  255. package/dist/renderer/LitRenderer.js.map +1 -0
  256. package/dist/renderer/executeTemplate.d.ts +13 -0
  257. package/dist/renderer/executeTemplate.js +20 -7
  258. package/dist/renderer/executeTemplate.js.map +1 -0
  259. package/dist/sap/base/Log.js +28 -29
  260. package/dist/sap/base/assert.js +5 -6
  261. package/dist/sap/base/security/URLListValidator.js +13 -2
  262. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +112 -97
  263. package/dist/theming/CustomStyle.d.ts +6 -0
  264. package/dist/theming/CustomStyle.js +33 -45
  265. package/dist/theming/CustomStyle.js.map +1 -0
  266. package/dist/theming/ThemeLoaded.d.ts +5 -0
  267. package/dist/theming/ThemeLoaded.js +8 -16
  268. package/dist/theming/ThemeLoaded.js.map +1 -0
  269. package/dist/theming/ThemeRegistered.d.ts +4 -0
  270. package/dist/theming/ThemeRegistered.js +11 -0
  271. package/dist/theming/ThemeRegistered.js.map +1 -0
  272. package/dist/theming/applyTheme.d.ts +2 -0
  273. package/dist/theming/applyTheme.js +61 -64
  274. package/dist/theming/applyTheme.js.map +1 -0
  275. package/dist/theming/getConstructableStyle.d.ts +9 -0
  276. package/dist/theming/getConstructableStyle.js +12 -17
  277. package/dist/theming/getConstructableStyle.js.map +1 -0
  278. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  279. package/dist/theming/getEffectiveLinksHrefs.js +13 -16
  280. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  281. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  282. package/dist/theming/getEffectiveStyle.js +25 -23
  283. package/dist/theming/getEffectiveStyle.js.map +1 -0
  284. package/dist/theming/getStylesString.d.ts +3 -0
  285. package/dist/theming/getStylesString.js +9 -13
  286. package/dist/theming/getStylesString.js.map +1 -0
  287. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  288. package/dist/theming/getThemeDesignerTheme.js +72 -79
  289. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  290. package/dist/theming/preloadLinks.d.ts +3 -0
  291. package/dist/theming/preloadLinks.js +13 -17
  292. package/dist/theming/preloadLinks.js.map +1 -0
  293. package/dist/thirdparty/_merge.d.ts +2 -0
  294. package/dist/thirdparty/_merge.js +7 -4
  295. package/dist/thirdparty/_merge.js.map +1 -0
  296. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  297. package/dist/thirdparty/isPlainObject.js +11 -10
  298. package/dist/thirdparty/isPlainObject.js.map +1 -0
  299. package/dist/thirdparty/merge.d.ts +2 -0
  300. package/dist/thirdparty/merge.js +4 -8
  301. package/dist/thirdparty/merge.js.map +1 -0
  302. package/dist/types/AnimationMode.d.ts +32 -0
  303. package/dist/types/AnimationMode.js +33 -6
  304. package/dist/types/AnimationMode.js.map +1 -0
  305. package/dist/types/CSSColor.d.ts +15 -0
  306. package/dist/types/CSSColor.js +14 -5
  307. package/dist/types/CSSColor.js.map +1 -0
  308. package/dist/types/CSSSize.d.ts +15 -0
  309. package/dist/types/CSSSize.js +14 -5
  310. package/dist/types/CSSSize.js.map +1 -0
  311. package/dist/types/CalendarType.d.ts +37 -0
  312. package/dist/types/CalendarType.js +35 -18
  313. package/dist/types/CalendarType.js.map +1 -0
  314. package/dist/types/DOMReference.d.ts +17 -0
  315. package/dist/types/DOMReference.js +25 -0
  316. package/dist/types/DOMReference.js.map +1 -0
  317. package/dist/types/DataType.d.ts +25 -0
  318. package/dist/types/DataType.js +33 -26
  319. package/dist/types/DataType.js.map +1 -0
  320. package/dist/types/Float.d.ts +17 -0
  321. package/dist/types/Float.js +17 -10
  322. package/dist/types/Float.js.map +1 -0
  323. package/dist/types/Integer.d.ts +17 -0
  324. package/dist/types/Integer.js +17 -9
  325. package/dist/types/Integer.js.map +1 -0
  326. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  327. package/dist/types/InvisibleMessageMode.js +20 -23
  328. package/dist/types/InvisibleMessageMode.js.map +1 -0
  329. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  330. package/dist/types/ItemNavigationBehavior.js +22 -12
  331. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  332. package/dist/types/NavigationMode.d.ts +32 -0
  333. package/dist/types/NavigationMode.js +33 -6
  334. package/dist/types/NavigationMode.js.map +1 -0
  335. package/dist/types/ValueState.d.ts +42 -0
  336. package/dist/types/ValueState.js +41 -19
  337. package/dist/types/ValueState.js.map +1 -0
  338. package/dist/types.d.ts +18 -0
  339. package/dist/types.js +2 -0
  340. package/dist/types.js.map +1 -0
  341. package/dist/updateShadowRoot.d.ts +8 -0
  342. package/dist/updateShadowRoot.js +30 -18
  343. package/dist/updateShadowRoot.js.map +1 -0
  344. package/dist/util/AriaLabelHelper.d.ts +15 -0
  345. package/dist/util/AriaLabelHelper.js +166 -36
  346. package/dist/util/AriaLabelHelper.js.map +1 -0
  347. package/dist/util/Caret.d.ts +7 -0
  348. package/dist/util/Caret.js +16 -38
  349. package/dist/util/Caret.js.map +1 -0
  350. package/dist/util/ColorConversion.d.ts +30 -0
  351. package/dist/util/ColorConversion.js +321 -348
  352. package/dist/util/ColorConversion.js.map +1 -0
  353. package/dist/util/FetchHelper.d.ts +3 -0
  354. package/dist/util/FetchHelper.js +19 -25
  355. package/dist/util/FetchHelper.js.map +1 -0
  356. package/dist/util/FocusableElements.d.ts +4 -0
  357. package/dist/util/FocusableElements.js +64 -71
  358. package/dist/util/FocusableElements.js.map +1 -0
  359. package/{src/util/HTMLSanitizer.js → dist/util/HTMLSanitizer.d.ts} +1 -5
  360. package/dist/util/HTMLSanitizer.js +4 -5
  361. package/dist/util/HTMLSanitizer.js.map +1 -0
  362. package/dist/util/InvisibleMessage.d.ts +10 -0
  363. package/dist/util/InvisibleMessage.js +42 -44
  364. package/dist/util/InvisibleMessage.js.map +1 -0
  365. package/dist/util/PopupUtils.d.ts +7 -0
  366. package/dist/util/PopupUtils.js +58 -77
  367. package/dist/util/PopupUtils.js.map +1 -0
  368. package/dist/util/SlotsHelper.d.ts +9 -0
  369. package/dist/util/SlotsHelper.js +22 -35
  370. package/dist/util/SlotsHelper.js.map +1 -0
  371. package/dist/util/StringHelper.d.ts +3 -0
  372. package/dist/util/StringHelper.js +17 -20
  373. package/dist/util/StringHelper.js.map +1 -0
  374. package/dist/util/TabbableElements.d.ts +17 -0
  375. package/dist/util/TabbableElements.js +53 -43
  376. package/dist/util/TabbableElements.js.map +1 -0
  377. package/dist/util/arraysAreEqual.d.ts +2 -0
  378. package/dist/util/arraysAreEqual.js +10 -12
  379. package/dist/util/arraysAreEqual.js.map +1 -0
  380. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  381. package/dist/util/clamp.js +2 -2
  382. package/dist/util/clamp.js.map +1 -0
  383. package/dist/util/createLinkInHead.d.ts +7 -0
  384. package/dist/util/createLinkInHead.js +14 -12
  385. package/dist/util/createLinkInHead.js.map +1 -0
  386. package/dist/util/createStyleInHead.d.ts +8 -0
  387. package/dist/util/createStyleInHead.js +10 -10
  388. package/dist/util/createStyleInHead.js.map +1 -0
  389. package/dist/util/debounce.d.ts +2 -0
  390. package/dist/util/debounce.js +6 -8
  391. package/dist/util/debounce.js.map +1 -0
  392. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  393. package/dist/util/detectNavigatorLanguage.js +7 -10
  394. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  395. package/dist/util/escapeRegex.d.ts +8 -0
  396. package/dist/util/escapeRegex.js +8 -7
  397. package/dist/util/escapeRegex.js.map +1 -0
  398. package/dist/util/formatMessage.d.ts +2 -0
  399. package/dist/util/formatMessage.js +15 -19
  400. package/dist/util/formatMessage.js.map +1 -0
  401. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  402. package/dist/util/generateHighlightedMarkup.js +26 -27
  403. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  404. package/dist/util/getActiveElement.d.ts +2 -0
  405. package/dist/util/getActiveElement.js +6 -8
  406. package/dist/util/getActiveElement.js.map +1 -0
  407. package/dist/util/getClassCopy.d.ts +402 -0
  408. package/dist/util/getClassCopy.js +7 -7
  409. package/dist/util/getClassCopy.js.map +1 -0
  410. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  411. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  412. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  413. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  414. package/dist/util/getEffectiveContentDensity.js +2 -3
  415. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  416. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  417. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  418. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  419. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  420. package/dist/util/getFastNavigationGroups.js +51 -0
  421. package/dist/util/getFastNavigationGroups.js.map +1 -0
  422. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  423. package/dist/util/getFileExtension.js +9 -11
  424. package/dist/util/getFileExtension.js.map +1 -0
  425. package/dist/util/getNormalizedTarget.d.ts +7 -0
  426. package/dist/util/getNormalizedTarget.js +14 -0
  427. package/dist/util/getNormalizedTarget.js.map +1 -0
  428. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  429. package/dist/util/getSingletonElementInstance.js +17 -11
  430. package/dist/util/getSingletonElementInstance.js.map +1 -0
  431. package/dist/util/isElementClickable.d.ts +2 -0
  432. package/dist/util/isElementClickable.js +16 -0
  433. package/dist/util/isElementClickable.js.map +1 -0
  434. package/dist/util/isElementHidden.d.ts +2 -0
  435. package/dist/util/isElementHidden.js +8 -0
  436. package/dist/util/isElementHidden.js.map +1 -0
  437. package/dist/util/isElementInView.d.ts +6 -0
  438. package/dist/util/isElementInView.js +6 -9
  439. package/dist/util/isElementInView.js.map +1 -0
  440. package/dist/util/isElementTabbable.d.ts +9 -0
  441. package/dist/util/isElementTabbable.js +30 -0
  442. package/dist/util/isElementTabbable.js.map +1 -0
  443. package/dist/util/isValidPropertyName.d.ts +8 -0
  444. package/dist/util/isValidPropertyName.js +16 -17
  445. package/dist/util/isValidPropertyName.js.map +1 -0
  446. package/dist/util/whenDOMReady.d.ts +2 -0
  447. package/dist/util/whenDOMReady.js +11 -10
  448. package/dist/util/whenDOMReady.js.map +1 -0
  449. package/dist/util/willShowContent.d.ts +2 -0
  450. package/dist/util/willShowContent.js +7 -0
  451. package/dist/util/willShowContent.js.map +1 -0
  452. package/dist/validateThemeRoot.d.ts +2 -0
  453. package/dist/validateThemeRoot.js +48 -0
  454. package/dist/validateThemeRoot.js.map +1 -0
  455. package/index.js +227 -1
  456. package/lib/generate-asset-parameters/index.js +11 -5
  457. package/lib/generate-styles/index.js +26 -13
  458. package/lib/generate-version-info/index.js +18 -13
  459. package/package-scripts.cjs +71 -0
  460. package/package.json +8 -6
  461. package/src/css/BusyIndicator.css +80 -0
  462. package/src/css/FontFace.css +54 -15
  463. package/tsconfig.json +14 -0
  464. package/config/rollup.config.js +0 -1
  465. package/config/wdio.conf.js +0 -1
  466. package/dist/RenderScheduler.js +0 -44
  467. package/dist/animations/config.js +0 -5
  468. package/dist/assets-meta/IconCollectionsAlias.js +0 -18
  469. package/dist/isLegacyBrowser.js +0 -3
  470. package/dist/resources/bundle.esm.js +0 -37
  471. package/dist/resources/bundle.esm.js.map +0 -1
  472. package/dist/test-resources/assets/Themes.js +0 -17
  473. package/dist/test-resources/elements/Child.js +0 -35
  474. package/dist/test-resources/elements/Generic.js +0 -84
  475. package/dist/test-resources/elements/GenericExt.js +0 -26
  476. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  477. package/dist/test-resources/elements/Parent.js +0 -41
  478. package/dist/test-resources/elements/WithStaticArea.js +0 -77
  479. package/dist/test-resources/pages/AllTestElements.html +0 -42
  480. package/dist/test-resources/pages/Configuration.html +0 -18
  481. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  482. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  483. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  484. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  485. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  486. package/dist/test-resources/pages/i18n.html +0 -33
  487. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
  488. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
  489. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -93
  490. package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
  491. package/dist/test-resources/specs/EventProvider.spec.js +0 -63
  492. package/dist/test-resources/specs/StaticArea.spec.js +0 -78
  493. package/dist/test-resources/specs/Theming.spec.js +0 -33
  494. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
  495. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
  496. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
  497. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
  498. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
  499. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
  500. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
  501. package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
  502. package/dist/types/PopupState.js +0 -37
  503. package/dist/util/findNodeOwner.js +0 -35
  504. package/dist/util/isDescendantOf.js +0 -15
  505. package/dist/util/isNodeClickable.js +0 -19
  506. package/dist/util/isNodeHidden.js +0 -9
  507. package/dist/util/isNodeTabbable.js +0 -28
  508. package/dist/util/setToArray.js +0 -10
  509. package/hash.txt +0 -1
  510. package/package-scripts.js +0 -67
  511. package/src/AssetRegistry.js +0 -11
  512. package/src/Boot.js +0 -61
  513. package/src/CustomElementsRegistry.js +0 -95
  514. package/src/CustomElementsScope.js +0 -108
  515. package/src/DOMObserver.js +0 -65
  516. package/src/Device.js +0 -116
  517. package/src/EventProvider.js +0 -85
  518. package/src/FeaturesRegistry.js +0 -14
  519. package/src/FontFace.js +0 -30
  520. package/src/InitialConfiguration.js +0 -166
  521. package/src/Keys.js +0 -271
  522. package/src/ManagedStyles.js +0 -83
  523. package/src/MediaRange.js +0 -109
  524. package/src/PropertiesFileFormat.js +0 -95
  525. package/src/Render.js +0 -175
  526. package/src/RenderQueue.js +0 -66
  527. package/src/RenderScheduler.js +0 -44
  528. package/src/Runtimes.js +0 -107
  529. package/src/StaticArea.js +0 -3
  530. package/src/StaticAreaItem.js +0 -101
  531. package/src/SystemCSSVars.js +0 -10
  532. package/src/UI5Element.js +0 -1023
  533. package/src/UI5ElementMetadata.js +0 -327
  534. package/src/animations/AnimationQueue.js +0 -42
  535. package/src/animations/animate.js +0 -53
  536. package/src/animations/config.js +0 -5
  537. package/src/animations/scroll.js +0 -28
  538. package/src/animations/slideDown.js +0 -79
  539. package/src/animations/slideUp.js +0 -71
  540. package/src/asset-registries/Icons.js +0 -139
  541. package/src/asset-registries/Illustrations.js +0 -30
  542. package/src/asset-registries/LocaleData.js +0 -159
  543. package/src/asset-registries/Themes.js +0 -78
  544. package/src/asset-registries/i18n.js +0 -121
  545. package/src/assets-meta/IconCollectionsAlias.js +0 -18
  546. package/src/config/AnimationMode.js +0 -23
  547. package/src/config/CalendarType.js +0 -18
  548. package/src/config/FormatSettings.js +0 -13
  549. package/src/config/Language.js +0 -68
  550. package/src/config/NoConflict.js +0 -51
  551. package/src/config/RTL.js +0 -31
  552. package/src/config/Theme.js +0 -42
  553. package/src/delegate/ItemNavigation.js +0 -351
  554. package/src/delegate/ResizeHandler.js +0 -106
  555. package/src/delegate/ScrollEnablement.js +0 -188
  556. package/src/features/F6Navigation.js +0 -106
  557. package/src/features/OpenUI5Support.js +0 -125
  558. package/src/getSharedResource.js +0 -30
  559. package/src/i18nBundle.js +0 -86
  560. package/src/isLegacyBrowser.js +0 -3
  561. package/src/locale/Locale.js +0 -91
  562. package/src/locale/RTLAwareRegistry.js +0 -14
  563. package/src/locale/applyDirection.js +0 -17
  564. package/src/locale/directionChange.js +0 -32
  565. package/src/locale/getEffectiveDir.js +0 -28
  566. package/src/locale/getLocale.js +0 -41
  567. package/src/locale/languageChange.js +0 -22
  568. package/src/locale/nextFallbackLocale.js +0 -28
  569. package/src/locale/normalizeLocale.js +0 -54
  570. package/src/renderer/LitRenderer.js +0 -34
  571. package/src/renderer/executeTemplate.js +0 -17
  572. package/src/theming/CustomStyle.js +0 -60
  573. package/src/theming/ThemeLoaded.js +0 -22
  574. package/src/theming/applyTheme.js +0 -79
  575. package/src/theming/getConstructableStyle.js +0 -30
  576. package/src/theming/getEffectiveLinksHrefs.js +0 -20
  577. package/src/theming/getEffectiveStyle.js +0 -30
  578. package/src/theming/getStylesString.js +0 -15
  579. package/src/theming/getThemeDesignerTheme.js +0 -87
  580. package/src/theming/preloadLinks.js +0 -23
  581. package/src/thirdparty/_merge.js +0 -32
  582. package/src/thirdparty/isPlainObject.js +0 -18
  583. package/src/thirdparty/merge.js +0 -10
  584. package/src/types/AnimationMode.js +0 -7
  585. package/src/types/CSSColor.js +0 -9
  586. package/src/types/CSSSize.js +0 -9
  587. package/src/types/CalendarType.js +0 -22
  588. package/src/types/DataType.js +0 -37
  589. package/src/types/Float.js +0 -14
  590. package/src/types/Integer.js +0 -13
  591. package/src/types/InvisibleMessageMode.js +0 -30
  592. package/src/types/ItemNavigationBehavior.js +0 -16
  593. package/src/types/NavigationMode.js +0 -7
  594. package/src/types/PopupState.js +0 -37
  595. package/src/types/ValueState.js +0 -22
  596. package/src/updateShadowRoot.js +0 -30
  597. package/src/util/AriaLabelHelper.js +0 -41
  598. package/src/util/Caret.js +0 -45
  599. package/src/util/ColorConversion.js +0 -370
  600. package/src/util/FetchHelper.js +0 -31
  601. package/src/util/FocusableElements.js +0 -79
  602. package/src/util/InvisibleMessage.js +0 -58
  603. package/src/util/PopupUtils.js +0 -93
  604. package/src/util/SlotsHelper.js +0 -43
  605. package/src/util/StringHelper.js +0 -26
  606. package/src/util/TabbableElements.js +0 -47
  607. package/src/util/arraysAreEqual.js +0 -15
  608. package/src/util/createLinkInHead.js +0 -19
  609. package/src/util/createStyleInHead.js +0 -18
  610. package/src/util/debounce.js +0 -17
  611. package/src/util/detectNavigatorLanguage.js +0 -13
  612. package/src/util/escapeRegex.js +0 -10
  613. package/src/util/findNodeOwner.js +0 -35
  614. package/src/util/formatMessage.js +0 -23
  615. package/src/util/generateHighlightedMarkup.js +0 -42
  616. package/src/util/getActiveElement.js +0 -11
  617. package/src/util/getClassCopy.js +0 -10
  618. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  619. package/src/util/getEffectiveContentDensity.js +0 -5
  620. package/src/util/getSingletonElementInstance.js +0 -13
  621. package/src/util/isDescendantOf.js +0 -15
  622. package/src/util/isElementInView.js +0 -15
  623. package/src/util/isNodeClickable.js +0 -19
  624. package/src/util/isNodeHidden.js +0 -9
  625. package/src/util/isNodeTabbable.js +0 -28
  626. package/src/util/isValidPropertyName.js +0 -29
  627. package/src/util/setToArray.js +0 -10
  628. package/src/util/whenDOMReady.js +0 -13
  629. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Keys.js","sourceRoot":"","sources":["../src/Keys.ts"],"names":[],"mappings":"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","sourcesContent":["enum KeyCodes {\n\tBACKSPACE = 8,\n\tTAB = 9,\n\tENTER = 13,\n\tSHIFT = 16,\n\tCONTROL = 17,\n\tALT = 18,\n\tBREAK = 19,\n\tCAPS_LOCK = 20,\n\tESCAPE = 27,\n\tSPACE = 32,\n\tPAGE_UP = 33,\n\tPAGE_DOWN = 34,\n\tEND = 35,\n\tHOME = 36,\n\tARROW_LEFT = 37,\n\tARROW_UP = 38,\n\tARROW_RIGHT = 39,\n\tARROW_DOWN = 40,\n\tPRINT = 44,\n\tINSERT = 45,\n\tDELETE = 46,\n\tDIGIT_0 = 48,\n\tDIGIT_1 = 49,\n\tDIGIT_2 = 50,\n\tDIGIT_3 = 51,\n\tDIGIT_4 = 52,\n\tDIGIT_5 = 53,\n\tDIGIT_6 = 54,\n\tDIGIT_7 = 55,\n\tDIGIT_8 = 56,\n\tDIGIT_9 = 57,\n\tA = 65,\n\tB = 66,\n\tC = 67,\n\tD = 68,\n\tE = 69,\n\tF = 70,\n\tG = 71,\n\tH = 72,\n\tI = 73,\n\tJ = 74,\n\tK = 75,\n\tL = 76,\n\tM = 77,\n\tN = 78,\n\tO = 79,\n\tP = 80,\n\tQ = 81,\n\tR = 82,\n\tS = 83,\n\tT = 84,\n\tU = 85,\n\tV = 86,\n\tW = 87,\n\tX = 88,\n\tY = 89,\n\tZ = 90,\n\tWINDOWS = 91,\n\tCONTEXT_MENU = 93,\n\tTURN_OFF = 94,\n\tSLEEP = 95,\n\tNUMPAD_0 = 96,\n\tNUMPAD_1 = 97,\n\tNUMPAD_2 = 98,\n\tNUMPAD_3 = 99,\n\tNUMPAD_4 = 100,\n\tNUMPAD_5 = 101,\n\tNUMPAD_6 = 102,\n\tNUMPAD_7 = 103,\n\tNUMPAD_8 = 104,\n\tNUMPAD_9 = 105,\n\tNUMPAD_ASTERISK = 106,\n\tNUMPAD_PLUS = 107,\n\tNUMPAD_MINUS = 109,\n\tNUMPAD_COMMA = 110,\n\tNUMPAD_SLASH = 111,\n\tF1 = 112,\n\tF2 = 113,\n\tF3 = 114,\n\tF4 = 115,\n\tF5 = 116,\n\tF6 = 117,\n\tF7 = 118,\n\tF8 = 119,\n\tF9 = 120,\n\tF10 = 121,\n\tF11 = 122,\n\tF12 = 123,\n\tNUM_LOCK = 144,\n\tSCROLL_LOCK = 145,\n\tCOLON = 186,\n\tPLUS = 187,\n\tCOMMA = 188,\n\tSLASH = 189,\n\tDOT = 190,\n\tPIPE = 191,\n\tSEMICOLON = 192,\n\tMINUS = 219,\n\tGREAT_ACCENT = 220,\n\tEQUALS = 221,\n\tSINGLE_QUOTE = 222,\n\tBACKSLASH = 226,\n}\n\nconst isEnter = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Enter\" : event.keyCode === KeyCodes.ENTER) && !hasModifierKeys(event);\n\nconst isEnterShift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Enter\" : event.keyCode === KeyCodes.ENTER) && checkModifierKeys(event, false, false, true);\n\nconst isSpace = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"Spacebar\" || event.key === \" \") : event.keyCode === KeyCodes.SPACE) && !hasModifierKeys(event);\n\nconst isSpaceShift = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"Spacebar\" || event.key === \" \") : event.keyCode === KeyCodes.SPACE) && checkModifierKeys(event, false, false, true);\n\nconst isSpaceCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"Spacebar\" || event.key === \" \") : event.keyCode === KeyCodes.SPACE) && checkModifierKeys(event, true, false, false);\n\nconst isLeft = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowLeft\" || event.key === \"Left\") : event.keyCode === KeyCodes.ARROW_LEFT) && !hasModifierKeys(event);\n\nconst isRight = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowRight\" || event.key === \"Right\") : event.keyCode === KeyCodes.ARROW_RIGHT) && !hasModifierKeys(event);\n\nconst isUp = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowUp\" || event.key === \"Up\") : event.keyCode === KeyCodes.ARROW_UP) && !hasModifierKeys(event);\n\nconst isDown = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowDown\" || event.key === \"Down\") : event.keyCode === KeyCodes.ARROW_DOWN) && !hasModifierKeys(event);\n\nconst isLeftCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowLeft\" || event.key === \"Left\") : event.keyCode === KeyCodes.ARROW_LEFT) && checkModifierKeys(event, true, false, false);\n\nconst isRightCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowRight\" || event.key === \"Right\") : event.keyCode === KeyCodes.ARROW_RIGHT) && checkModifierKeys(event, true, false, false);\n\nconst isUpCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowUp\" || event.key === \"Up\") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, true, false, false);\n\nconst isDownCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowDown\" || event.key === \"Down\") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, true, false, false);\n\nconst isUpShift = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowUp\" || event.key === \"Up\") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, false, false, true);\n\nconst isDownShift = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowDown\" || event.key === \"Down\") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, false, false, true);\n\nconst isUpAlt = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowUp\" || event.key === \"Up\") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, false, true, false);\n\nconst isDownAlt = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowDown\" || event.key === \"Down\") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, false, true, false);\n\nconst isLeftShift = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowLeft\" || event.key === \"Left\") : event.keyCode === KeyCodes.ARROW_LEFT) && checkModifierKeys(event, false, false, true);\n\nconst isRightShift = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowRight\" || event.key === \"Right\") : event.keyCode === KeyCodes.ARROW_RIGHT) && checkModifierKeys(event, false, false, true);\n\nconst isLeftShiftCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowLeft\" || event.key === \"Left\") : event.keyCode === KeyCodes.ARROW_LEFT) && checkModifierKeys(event, true, false, true);\n\nconst isRightShiftCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowRight\" || event.key === \"Right\") : event.keyCode === KeyCodes.ARROW_RIGHT) && checkModifierKeys(event, true, false, true);\n\nconst isUpShiftCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowUp\" || event.key === \"Up\") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, true, false, true);\n\nconst isDownShiftCtrl = (event: KeyboardEvent): boolean => (event.key ? (event.key === \"ArrowDown\" || event.key === \"Down\") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, true, false, true);\n\nconst isHome = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Home\" : event.keyCode === KeyCodes.HOME) && !hasModifierKeys(event);\n\nconst isEnd = (event: KeyboardEvent): boolean => (event.key ? event.key === \"End\" : event.keyCode === KeyCodes.END) && !hasModifierKeys(event);\n\nconst isHomeCtrl = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Home\" : event.keyCode === KeyCodes.HOME) && checkModifierKeys(event, true, false, false);\n\nconst isHomeShift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Home\" : event.keyCode === KeyCodes.HOME) && checkModifierKeys(event, false, false, true);\n\nconst isEndCtrl = (event: KeyboardEvent): boolean => (event.key ? event.key === \"End\" : event.keyCode === KeyCodes.END) && checkModifierKeys(event, true, false, false);\n\nconst isEndShift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"End\" : event.keyCode === KeyCodes.END) && checkModifierKeys(event, false, false, true);\n\nconst isEscape = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Escape\" || event.key === \"Esc\" : event.keyCode === KeyCodes.ESCAPE) && !hasModifierKeys(event);\n\nconst isTabNext = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Tab\" : event.keyCode === KeyCodes.TAB) && !hasModifierKeys(event);\n\nconst isTabPrevious = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Tab\" : event.keyCode === KeyCodes.TAB) && checkModifierKeys(event, /* Ctrl */ false, /* Alt */ false, /* Shift */ true);\n\nconst isBackSpace = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Backspace\" : event.keyCode === KeyCodes.BACKSPACE) && !hasModifierKeys(event);\n\nconst isDelete = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Delete\" : event.keyCode === KeyCodes.DELETE) && !hasModifierKeys(event);\n\nconst isDeleteShift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Delete\" : event.keyCode === KeyCodes.DELETE) && checkModifierKeys(event, false, false, true);\n\nconst isInsertShift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Insert\" : event.keyCode === KeyCodes.DELETE) && checkModifierKeys(event, false, false, true);\n\nconst isInsertCtrl = (event: KeyboardEvent): boolean => (event.key ? event.key === \"Insert\" : event.keyCode === KeyCodes.DELETE) && checkModifierKeys(event, true, false, false);\n\nconst isPageUp = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageUp\" : event.keyCode === KeyCodes.PAGE_UP) && !hasModifierKeys(event);\n\nconst isPageDown = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageDown\" : event.keyCode === KeyCodes.PAGE_DOWN) && !hasModifierKeys(event);\n\nconst isPageUpShift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageUp\" : event.keyCode === KeyCodes.PAGE_UP) && checkModifierKeys(event, false, false, true);\n\nconst isPageUpAlt = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageUp\" : event.keyCode === KeyCodes.PAGE_UP) && checkModifierKeys(event, false, true, false);\n\nconst isPageDownShift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageDown\" : event.keyCode === KeyCodes.PAGE_DOWN) && checkModifierKeys(event, false, false, true);\n\nconst isPageDownAlt = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageDown\" : event.keyCode === KeyCodes.PAGE_DOWN) && checkModifierKeys(event, false, true, false);\n\nconst isPageUpShiftCtrl = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageUp\" : event.keyCode === KeyCodes.PAGE_UP) && checkModifierKeys(event, true, false, true);\n\nconst isPageDownShiftCtrl = (event: KeyboardEvent): boolean => (event.key ? event.key === \"PageDown\" : event.keyCode === KeyCodes.PAGE_DOWN) && checkModifierKeys(event, true, false, true);\n\nconst isPlus = (event: KeyboardEvent): boolean => (event.key ? event.key === \"+\" : event.keyCode === KeyCodes.PLUS) || (event.keyCode === KeyCodes.NUMPAD_PLUS && !hasModifierKeys(event));\n\nconst isMinus = (event: KeyboardEvent): boolean => (event.key ? event.key === \"-\" : event.keyCode === KeyCodes.MINUS) || (event.keyCode === KeyCodes.NUMPAD_MINUS && !hasModifierKeys(event));\n\nconst isShow = (event: KeyboardEvent): boolean => {\n\tif (event.key) {\n\t\treturn isF4(event) || isShowByArrows(event);\n\t}\n\n\treturn (event.keyCode === KeyCodes.F4 && !hasModifierKeys(event)) || (event.keyCode === KeyCodes.ARROW_DOWN && checkModifierKeys(event, /* Ctrl */ false, /* Alt */ true, /* Shift */ false));\n};\n\nconst isF4 = (event: KeyboardEvent): boolean => {\n\treturn event.key === \"F4\" && !hasModifierKeys(event);\n};\n\nconst isF4Shift = (event: KeyboardEvent): boolean => (event.key ? event.key === \"F4\" : event.keyCode === KeyCodes.F4) && checkModifierKeys(event, false, false, true);\n\nconst isF6Next = (event: KeyboardEvent): boolean => ((event.key ? event.key === \"F6\" : event.keyCode === KeyCodes.F6) && checkModifierKeys(event, false, false, false))\n\t|| ((event.key ? (event.key === \"ArrowDown\" || event.key === \"Down\") : event.keyCode === KeyCodes.ARROW_DOWN) && checkModifierKeys(event, true, true, false));\n\nconst isF6Previous = (event: KeyboardEvent): boolean => ((event.key ? event.key === \"F6\" : event.keyCode === KeyCodes.F6) && checkModifierKeys(event, false, false, true))\n\t|| ((event.key ? (event.key === \"ArrowUp\" || event.key === \"Up\") : event.keyCode === KeyCodes.ARROW_UP) && checkModifierKeys(event, true, true, false));\n\nconst isF7 = (event: KeyboardEvent): boolean => (event.key ? event.key === \"F7\" : event.keyCode === KeyCodes.F7) && !hasModifierKeys(event);\n\nconst isShowByArrows = (event: KeyboardEvent): boolean => {\n\treturn ((event.key === \"ArrowDown\" || event.key === \"Down\") || (event.key === \"ArrowUp\" || event.key === \"Up\")) && checkModifierKeys(event, /* Ctrl */ false, /* Alt */ true, /* Shift */ false);\n};\n\nconst isShift = (event: KeyboardEvent): boolean => event.key === \"Shift\" || event.keyCode === KeyCodes.SHIFT;\n\nconst isCtrlA = (event: KeyboardEvent): boolean => ((event.key === \"A\" || event.key === \"a\") || event.which === KeyCodes.A) && checkModifierKeys(event, true, false, false);\n\nconst isCtrlV = (event: KeyboardEvent): boolean => ((event.key === \"V\" || event.key === \"v\") || event.which === KeyCodes.V) && checkModifierKeys(event, true, false, false);\n\nconst isKeyA = (event: KeyboardEvent): boolean => ((event.key === \"A\" || event.key === \"a\") || event.which === KeyCodes.A) && checkModifierKeys(event, false, false, false);\n\nconst isKeyP = (event: KeyboardEvent): boolean => ((event.key === \"P\" || event.key === \"p\") || event.which === KeyCodes.P) && checkModifierKeys(event, false, false, false);\n\nconst hasModifierKeys = (event: KeyboardEvent): boolean => event.shiftKey || event.altKey || getCtrlKey(event);\n\nconst getCtrlKey = (event: KeyboardEvent): boolean => !!(event.metaKey || event.ctrlKey); // double negation doesn't have effect on boolean but ensures null and undefined are equivalent to false.\n\nconst checkModifierKeys = (event: KeyboardEvent, bCtrlKey: boolean, bAltKey: boolean, bShiftKey: boolean):boolean => event.shiftKey === bShiftKey && event.altKey === bAltKey && getCtrlKey(event) === bCtrlKey;\n\nconst isNumber = (event: KeyboardEvent): boolean => ((event.key ? \"0123456789\".indexOf(event.key) !== -1 : event.keyCode >= KeyCodes.DIGIT_0 && event.keyCode <= KeyCodes.DIGIT_9) && checkModifierKeys(event, false, false, false));\n\nconst isColon = (event: KeyboardEvent): boolean => ((event.key ? event.key === \":\" : event.keyCode === KeyCodes.COLON) && checkModifierKeys(event, false, false, true));\n\nexport {\n\tisEnter,\n\tisEnterShift,\n\tisSpace,\n\tisSpaceShift,\n\tisSpaceCtrl,\n\tisLeft,\n\tisRight,\n\tisUp,\n\tisDown,\n\tisLeftCtrl,\n\tisRightCtrl,\n\tisUpCtrl,\n\tisDownCtrl,\n\tisUpShift,\n\tisDownShift,\n\tisUpAlt,\n\tisDownAlt,\n\tisLeftShift,\n\tisRightShift,\n\tisLeftShiftCtrl,\n\tisRightShiftCtrl,\n\tisUpShiftCtrl,\n\tisDownShiftCtrl,\n\tisHome,\n\tisEnd,\n\tisPlus,\n\tisMinus,\n\tisHomeCtrl,\n\tisEndCtrl,\n\tisHomeShift,\n\tisEndShift,\n\tisEscape,\n\tisTabNext,\n\tisTabPrevious,\n\tisBackSpace,\n\tisDelete,\n\tisShow,\n\tisF4,\n\tisF4Shift,\n\tisF6Previous,\n\tisF6Next,\n\tisF7,\n\tisPageUp,\n\tisPageDown,\n\tisPageUpShift,\n\tisPageUpAlt,\n\tisPageDownShift,\n\tisPageDownAlt,\n\tisPageUpShiftCtrl,\n\tisPageDownShiftCtrl,\n\tisShift,\n\tisCtrlA,\n\tisCtrlV,\n\tisKeyA,\n\tisKeyP,\n\tisDeleteShift,\n\tisInsertShift,\n\tisInsertCtrl,\n\tisNumber,\n\tisColon,\n};\n"]}
@@ -0,0 +1,9 @@
1
+ import { StyleData, StyleDataCSP } from "./types.js";
2
+ declare const createStyle: (data: StyleData, name: string, value?: string, theme?: string) => void;
3
+ declare const updateStyle: (data: StyleData, name: string, value?: string, theme?: string) => void;
4
+ declare const hasStyle: (name: string, value?: string) => boolean;
5
+ declare const removeStyle: (name: string, value?: string) => void;
6
+ declare const createOrUpdateStyle: (data: StyleData, name: string, value?: string, theme?: string) => void;
7
+ declare const mergeStyles: (style1?: StyleData, style2?: StyleData) => StyleData | undefined;
8
+ export { createStyle, hasStyle, updateStyle, removeStyle, createOrUpdateStyle, mergeStyles, };
9
+ export type { StyleData, StyleDataCSP, };
@@ -1,83 +1,153 @@
1
1
  import createStyleInHead from "./util/createStyleInHead.js";
2
2
  import createLinkInHead from "./util/createLinkInHead.js";
3
3
  import { shouldUseLinks, getUrl } from "./CSP.js";
4
-
4
+ import { isSafari } from "./Device.js";
5
+ import { getCurrentRuntimeIndex, compareRuntimes } from "./Runtimes.js";
5
6
  const getStyleId = (name, value) => {
6
- return value ? `${name}|${value}` : name;
7
+ return value ? `${name}|${value}` : name;
7
8
  };
8
-
9
- const createStyle = (data, name, value = "") => {
10
- const content = typeof data === "string" ? data : data.content;
11
-
12
- if (shouldUseLinks()) {
13
- const attributes = {};
14
- attributes[name] = value;
15
- const href = getUrl(data.packageName, data.fileName);
16
- createLinkInHead(href, attributes);
17
- } else if (document.adoptedStyleSheets) {
18
- const stylesheet = new CSSStyleSheet();
19
- stylesheet.replaceSync(content);
20
- stylesheet._ui5StyleId = getStyleId(name, value); // set an id so that we can find the style later
21
- document.adoptedStyleSheets = [...document.adoptedStyleSheets, stylesheet];
22
- } else {
23
- const attributes = {};
24
- attributes[name] = value;
25
- createStyleInHead(content, attributes);
26
- }
9
+ const shouldUpdate = (runtimeIndex) => {
10
+ if (runtimeIndex === undefined) {
11
+ return true;
12
+ }
13
+ return compareRuntimes(getCurrentRuntimeIndex(), parseInt(runtimeIndex)) === 1; // 1 means the current is newer, 0 means the same, -1 means the resource's runtime is newer
27
14
  };
28
-
29
- const updateStyle = (data, name, value = "") => {
30
- const content = typeof data === "string" ? data : data.content;
31
-
32
- if (shouldUseLinks()) {
33
- document.querySelector(`head>link[${name}="${value}"]`).href = getUrl(data.packageName, data.fileName);
34
- } else if (document.adoptedStyleSheets) {
35
- document.adoptedStyleSheets.find(sh => sh._ui5StyleId === getStyleId(name, value)).replaceSync(content || "");
36
- } else {
37
- document.querySelector(`head>style[${name}="${value}"]`).textContent = content || "";
38
- }
15
+ const createStyle = (data, name, value = "", theme) => {
16
+ const content = typeof data === "string" ? data : data.content;
17
+ const currentRuntimeIndex = getCurrentRuntimeIndex();
18
+ if (shouldUseLinks()) {
19
+ const attributes = {};
20
+ attributes[name] = value;
21
+ if (theme) {
22
+ attributes["data-ui5-runtime-index"] = currentRuntimeIndex;
23
+ attributes["data-ui5-theme"] = theme;
24
+ }
25
+ const href = getUrl(data.packageName, data.fileName);
26
+ createLinkInHead(href, attributes);
27
+ }
28
+ else if (document.adoptedStyleSheets && !isSafari()) {
29
+ const stylesheet = new CSSStyleSheet();
30
+ stylesheet.replaceSync(content);
31
+ stylesheet._ui5StyleId = getStyleId(name, value); // set an id so that we can find the style later
32
+ if (theme) {
33
+ stylesheet._ui5RuntimeIndex = currentRuntimeIndex;
34
+ stylesheet._ui5Theme = theme;
35
+ }
36
+ document.adoptedStyleSheets = [...document.adoptedStyleSheets, stylesheet];
37
+ }
38
+ else {
39
+ const attributes = {};
40
+ attributes[name] = value;
41
+ if (theme) {
42
+ attributes["data-ui5-runtime-index"] = currentRuntimeIndex;
43
+ attributes["data-ui5-theme"] = theme;
44
+ }
45
+ createStyleInHead(content, attributes);
46
+ }
47
+ };
48
+ const updateStyle = (data, name, value = "", theme) => {
49
+ const content = typeof data === "string" ? data : data.content;
50
+ const currentRuntimeIndex = getCurrentRuntimeIndex();
51
+ if (shouldUseLinks()) {
52
+ const link = document.querySelector(`head>link[${name}="${value}"]`);
53
+ const href = getUrl(data.packageName, data.fileName);
54
+ if (!theme) {
55
+ link.href = href;
56
+ }
57
+ else {
58
+ const linkRuntimeIndex = link.getAttribute("data-ui5-runtime-index") || undefined;
59
+ const linkTheme = link.getAttribute("data-ui5-theme");
60
+ if (linkTheme !== theme || shouldUpdate(linkRuntimeIndex)) {
61
+ link.href = href;
62
+ link.setAttribute("data-ui5-runtime-index", String(currentRuntimeIndex));
63
+ link.setAttribute("data-ui5-theme", theme);
64
+ }
65
+ }
66
+ }
67
+ else if (document.adoptedStyleSheets && !isSafari()) {
68
+ const stylesheet = document.adoptedStyleSheets.find(sh => sh._ui5StyleId === getStyleId(name, value));
69
+ if (!stylesheet) {
70
+ return;
71
+ }
72
+ if (!theme) {
73
+ stylesheet.replaceSync(content || "");
74
+ }
75
+ else {
76
+ const stylesheetRuntimeIndex = stylesheet._ui5RuntimeIndex;
77
+ const stylesheetTheme = stylesheet._ui5Theme;
78
+ if (stylesheetTheme !== theme || shouldUpdate(stylesheetRuntimeIndex)) {
79
+ stylesheet.replaceSync(content || "");
80
+ stylesheet._ui5RuntimeIndex = String(currentRuntimeIndex);
81
+ stylesheet._ui5Theme = theme;
82
+ }
83
+ }
84
+ }
85
+ else {
86
+ const style = document.querySelector(`head>style[${name}="${value}"]`);
87
+ if (!style) {
88
+ return;
89
+ }
90
+ if (!theme) {
91
+ style.textContent = content || "";
92
+ }
93
+ else {
94
+ const styleRuntimeIndex = style.getAttribute("data-ui5-runtime-index") || undefined;
95
+ const styleTheme = style.getAttribute("data-ui5-theme");
96
+ if (styleTheme !== theme || shouldUpdate(styleRuntimeIndex)) {
97
+ style.textContent = content || "";
98
+ style.setAttribute("data-ui5-runtime-index", String(currentRuntimeIndex));
99
+ style.setAttribute("data-ui5-theme", theme);
100
+ }
101
+ }
102
+ }
39
103
  };
40
-
41
104
  const hasStyle = (name, value = "") => {
42
- if (shouldUseLinks()) {
43
- return !!document.querySelector(`head>link[${name}="${value}"]`);
44
- }
45
-
46
- if (document.adoptedStyleSheets) {
47
- return !!document.adoptedStyleSheets.find(sh => sh._ui5StyleId === getStyleId(name, value));
48
- }
49
-
50
- return !!document.querySelector(`head>style[${name}="${value}"]`);
105
+ if (shouldUseLinks()) {
106
+ return !!document.querySelector(`head>link[${name}="${value}"]`);
107
+ }
108
+ const styleElement = document.querySelector(`head>style[${name}="${value}"]`);
109
+ if (document.adoptedStyleSheets && !isSafari()) {
110
+ return !!styleElement || !!document.adoptedStyleSheets.find(sh => sh._ui5StyleId === getStyleId(name, value));
111
+ }
112
+ return !!styleElement;
51
113
  };
52
-
53
114
  const removeStyle = (name, value = "") => {
54
- if (shouldUseLinks()) {
55
- const linkElement = document.querySelector(`head>link[${name}="${value}"]`);
56
- if (linkElement) {
57
- linkElement.parentElement.removeChild(linkElement);
58
- }
59
- } else if (document.adoptedStyleSheets) {
60
- document.adoptedStyleSheets = document.adoptedStyleSheets.filter(sh => sh._ui5StyleId !== getStyleId(name, value));
61
- } else {
62
- const styleElement = document.querySelector(`head > style[${name}="${value}"]`);
63
- if (styleElement) {
64
- styleElement.parentElement.removeChild(styleElement);
65
- }
66
- }
115
+ if (shouldUseLinks()) {
116
+ const linkElement = document.querySelector(`head>link[${name}="${value}"]`);
117
+ linkElement?.parentElement?.removeChild(linkElement);
118
+ }
119
+ else if (document.adoptedStyleSheets && !isSafari()) {
120
+ document.adoptedStyleSheets = document.adoptedStyleSheets.filter(sh => sh._ui5StyleId !== getStyleId(name, value));
121
+ }
122
+ else {
123
+ const styleElement = document.querySelector(`head > style[${name}="${value}"]`);
124
+ styleElement?.parentElement?.removeChild(styleElement);
125
+ }
67
126
  };
68
-
69
- const createOrUpdateStyle = (data, name, value = "") => {
70
- if (hasStyle(name, value)) {
71
- updateStyle(data, name, value);
72
- } else {
73
- createStyle(data, name, value);
74
- }
127
+ const createOrUpdateStyle = (data, name, value = "", theme) => {
128
+ if (hasStyle(name, value)) {
129
+ updateStyle(data, name, value, theme);
130
+ }
131
+ else {
132
+ createStyle(data, name, value, theme);
133
+ }
75
134
  };
76
-
77
- export {
78
- createStyle,
79
- hasStyle,
80
- updateStyle,
81
- removeStyle,
82
- createOrUpdateStyle,
135
+ const mergeStyles = (style1, style2) => {
136
+ if (style1 === undefined) {
137
+ return style2;
138
+ }
139
+ if (style2 === undefined) {
140
+ return style1;
141
+ }
142
+ const style2Content = typeof style2 === "string" ? style2 : style2.content;
143
+ if (typeof style1 === "string") {
144
+ return `${style1} ${style2Content}`;
145
+ }
146
+ return {
147
+ content: `${style1.content} ${style2Content}`,
148
+ packageName: style1.packageName,
149
+ fileName: style1.fileName,
150
+ };
83
151
  };
152
+ export { createStyle, hasStyle, updateStyle, removeStyle, createOrUpdateStyle, mergeStyles, };
153
+ //# sourceMappingURL=ManagedStyles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManagedStyles.js","sourceRoot":"","sources":["../src/ManagedStyles.ts"],"names":[],"mappings":"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","sourcesContent":["import createStyleInHead from \"./util/createStyleInHead.js\";\nimport createLinkInHead from \"./util/createLinkInHead.js\";\nimport { shouldUseLinks, getUrl } from \"./CSP.js\";\nimport { StyleData, StyleDataCSP } from \"./types.js\";\nimport { isSafari } from \"./Device.js\";\nimport { getCurrentRuntimeIndex, compareRuntimes } from \"./Runtimes.js\";\n\nconst getStyleId = (name: string, value: string) => {\n\treturn value ? `${name}|${value}` : name;\n};\n\nconst shouldUpdate = (runtimeIndex: string | undefined) => {\n\tif (runtimeIndex === undefined) {\n\t\treturn true;\n\t}\n\treturn compareRuntimes(getCurrentRuntimeIndex(), parseInt(runtimeIndex)) === 1; // 1 means the current is newer, 0 means the same, -1 means the resource's runtime is newer\n};\n\nconst createStyle = (data: StyleData, name: string, value = \"\", theme?: string) => {\n\tconst content = typeof data === \"string\" ? data : data.content;\n\tconst currentRuntimeIndex = getCurrentRuntimeIndex();\n\n\tif (shouldUseLinks()) {\n\t\tconst attributes = {} as Record<string, any>;\n\t\tattributes[name] = value;\n\t\tif (theme) {\n\t\t\tattributes[\"data-ui5-runtime-index\"] = currentRuntimeIndex;\n\t\t\tattributes[\"data-ui5-theme\"] = theme;\n\t\t}\n\t\tconst href = getUrl((data as StyleDataCSP).packageName, (data as StyleDataCSP).fileName);\n\t\tcreateLinkInHead(href, attributes);\n\t} else if (document.adoptedStyleSheets && !isSafari()) {\n\t\tconst stylesheet = new CSSStyleSheet();\n\t\tstylesheet.replaceSync(content);\n\t\t(stylesheet as Record<string, any>)._ui5StyleId = getStyleId(name, value); // set an id so that we can find the style later\n\t\tif (theme) {\n\t\t\t(stylesheet as Record<string, any>)._ui5RuntimeIndex = currentRuntimeIndex;\n\t\t\t(stylesheet as Record<string, any>)._ui5Theme = theme;\n\t\t}\n\t\tdocument.adoptedStyleSheets = [...document.adoptedStyleSheets, stylesheet];\n\t} else {\n\t\tconst attributes = {} as Record<string, any>;\n\t\tattributes[name] = value;\n\t\tif (theme) {\n\t\t\tattributes[\"data-ui5-runtime-index\"] = currentRuntimeIndex;\n\t\t\tattributes[\"data-ui5-theme\"] = theme;\n\t\t}\n\t\tcreateStyleInHead(content, attributes);\n\t}\n};\n\nconst updateStyle = (data: StyleData, name: string, value = \"\", theme?: string) => {\n\tconst content = typeof data === \"string\" ? data : data.content;\n\tconst currentRuntimeIndex = getCurrentRuntimeIndex();\n\n\tif (shouldUseLinks()) {\n\t\tconst link = document.querySelector(`head>link[${name}=\"${value}\"]`) as HTMLLinkElement;\n\t\tconst href = getUrl((data as StyleDataCSP).packageName, (data as StyleDataCSP).fileName);\n\n\t\tif (!theme) {\n\t\t\tlink.href = href;\n\t\t} else {\n\t\t\tconst linkRuntimeIndex = link.getAttribute(\"data-ui5-runtime-index\") || undefined;\n\t\t\tconst linkTheme = link.getAttribute(\"data-ui5-theme\");\n\t\t\tif (linkTheme !== theme || shouldUpdate(linkRuntimeIndex)) {\n\t\t\t\tlink.href = href;\n\t\t\t\tlink.setAttribute(\"data-ui5-runtime-index\", String(currentRuntimeIndex));\n\t\t\t\tlink.setAttribute(\"data-ui5-theme\", theme);\n\t\t\t}\n\t\t}\n\t} else if (document.adoptedStyleSheets && !isSafari()) {\n\t\tconst stylesheet = document.adoptedStyleSheets.find(sh => (sh as Record<string, any>)._ui5StyleId === getStyleId(name, value));\n\t\tif (!stylesheet) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!theme) {\n\t\t\tstylesheet.replaceSync(content || \"\");\n\t\t} else {\n\t\t\tconst stylesheetRuntimeIndex: string | undefined = (stylesheet as Record<string, any>)._ui5RuntimeIndex;\n\t\t\tconst stylesheetTheme: string | undefined = (stylesheet as Record<string, any>)._ui5Theme;\n\t\t\tif (stylesheetTheme !== theme || shouldUpdate(stylesheetRuntimeIndex)) {\n\t\t\t\tstylesheet.replaceSync(content || \"\");\n\t\t\t\t(stylesheet as Record<string, any>)._ui5RuntimeIndex = String(currentRuntimeIndex);\n\t\t\t\t(stylesheet as Record<string, any>)._ui5Theme = theme;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconst style = document.querySelector(`head>style[${name}=\"${value}\"]`);\n\t\tif (!style) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!theme) {\n\t\t\tstyle.textContent = content || \"\";\n\t\t} else {\n\t\t\tconst styleRuntimeIndex = style.getAttribute(\"data-ui5-runtime-index\") || undefined;\n\t\t\tconst styleTheme = style.getAttribute(\"data-ui5-theme\");\n\t\t\tif (styleTheme !== theme || shouldUpdate(styleRuntimeIndex)) {\n\t\t\t\tstyle.textContent = content || \"\";\n\t\t\t\tstyle.setAttribute(\"data-ui5-runtime-index\", String(currentRuntimeIndex));\n\t\t\t\tstyle.setAttribute(\"data-ui5-theme\", theme);\n\t\t\t}\n\t\t}\n\t}\n};\n\nconst hasStyle = (name: string, value = \"\"): boolean => {\n\tif (shouldUseLinks()) {\n\t\treturn !!document.querySelector(`head>link[${name}=\"${value}\"]`);\n\t}\n\n\tconst styleElement = document.querySelector(`head>style[${name}=\"${value}\"]`);\n\n\tif (document.adoptedStyleSheets && !isSafari()) {\n\t\treturn !!styleElement || !!document.adoptedStyleSheets.find(sh => (sh as Record<string, any>)._ui5StyleId === getStyleId(name, value));\n\t}\n\n\treturn !!styleElement;\n};\n\nconst removeStyle = (name: string, value = \"\") => {\n\tif (shouldUseLinks()) {\n\t\tconst linkElement = document.querySelector(`head>link[${name}=\"${value}\"]`);\n\t\tlinkElement?.parentElement?.removeChild(linkElement);\n\t} else if (document.adoptedStyleSheets && !isSafari()) {\n\t\tdocument.adoptedStyleSheets = document.adoptedStyleSheets.filter(sh => (sh as Record<string, any>)._ui5StyleId !== getStyleId(name, value));\n\t} else {\n\t\tconst styleElement = document.querySelector(`head > style[${name}=\"${value}\"]`);\n\t\tstyleElement?.parentElement?.removeChild(styleElement);\n\t}\n};\n\nconst createOrUpdateStyle = (data: StyleData, name: string, value = \"\", theme?: string) => {\n\tif (hasStyle(name, value)) {\n\t\tupdateStyle(data, name, value, theme);\n\t} else {\n\t\tcreateStyle(data, name, value, theme);\n\t}\n};\n\nconst mergeStyles = (style1?: StyleData, style2?: StyleData) => {\n\tif (style1 === undefined) {\n\t\treturn style2;\n\t}\n\tif (style2 === undefined) {\n\t\treturn style1;\n\t}\n\tconst style2Content = typeof style2 === \"string\" ? style2 : style2.content;\n\tif (typeof style1 === \"string\") {\n\t\treturn `${style1} ${style2Content}`;\n\t}\n\treturn {\n\t\tcontent: `${style1.content} ${style2Content}`,\n\t\tpackageName: style1.packageName,\n\t\tfileName: style1.fileName,\n\t};\n};\n\nexport {\n\tcreateStyle,\n\thasStyle,\n\tupdateStyle,\n\tremoveStyle,\n\tcreateOrUpdateStyle,\n\tmergeStyles,\n};\n\nexport type {\n\tStyleData,\n\tStyleDataCSP,\n};\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Marks the given event with random marker.
3
+ */
4
+ declare const markEvent: (event: Event, value: string) => void;
5
+ /**
6
+ * Returns the marker for the given event.
7
+ */
8
+ declare const getEventMark: (event: Event) => string | undefined;
9
+ export { markEvent, getEventMark, };
@@ -0,0 +1,15 @@
1
+ const markedEvents = new WeakMap();
2
+ /**
3
+ * Marks the given event with random marker.
4
+ */
5
+ const markEvent = (event, value) => {
6
+ markedEvents.set(event, value);
7
+ };
8
+ /**
9
+ * Returns the marker for the given event.
10
+ */
11
+ const getEventMark = (event) => {
12
+ return markedEvents.get(event);
13
+ };
14
+ export { markEvent, getEventMark, };
15
+ //# sourceMappingURL=MarkedEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MarkedEvents.js","sourceRoot":"","sources":["../src/MarkedEvents.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,IAAI,OAAO,EAAiB,CAAC;AAElD;;GAEG;AACH,MAAM,SAAS,GAAG,CAAC,KAAY,EAAE,KAAa,EAAE,EAAE;IACjD,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,YAAY,GAAG,CAAC,KAAY,EAAsB,EAAE;IACzD,OAAO,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,OAAO,EACN,SAAS,EACT,YAAY,GACZ,CAAC","sourcesContent":["const markedEvents = new WeakMap<Event, string>();\n\n/**\n * Marks the given event with random marker.\n */\nconst markEvent = (event: Event, value: string) => {\n\tmarkedEvents.set(event, value);\n};\n\n/**\n * Returns the marker for the given event.\n */\nconst getEventMark = (event: Event): string | undefined => {\n\treturn markedEvents.get(event);\n};\n\nexport {\n\tmarkEvent,\n\tgetEventMark,\n};\n"]}
@@ -0,0 +1,37 @@
1
+ type Range = Map<string, Array<number>>;
2
+ /**
3
+ * Enumeration containing the names and settings of predefined screen width media query range sets.
4
+ *
5
+ * @namespace
6
+ * @name MediaRange.RANGESETS
7
+ * @public
8
+ */
9
+ declare enum RANGESETS {
10
+ /**
11
+ * A 4-step range set (S-M-L-XL).
12
+ *
13
+ * The ranges of this set are:
14
+ * <ul>
15
+ * <li><code>"S"</code>: For screens smaller than 600 pixels.</li>
16
+ * <li><code>"M"</code>: For screens greater than or equal to 600 pixels and smaller than 1024 pixels.</li>
17
+ * <li><code>"L"</code>: For screens greater than or equal to 1024 pixels and smaller than 1440 pixels.</li>
18
+ * <li><code>"XL"</code>: For screens greater than or equal to 1440 pixels.</li>
19
+ * </ul>
20
+ *
21
+ * @name MediaRange.RANGESETS.RANGE_4STEPS
22
+ * @public
23
+ */
24
+ RANGE_4STEPS = "4Step"
25
+ }
26
+ /**
27
+ * API for screen width changes.
28
+ *
29
+ * @namespace
30
+ * @name MediaRange
31
+ */
32
+ declare const MediaRange: {
33
+ RANGESETS: typeof RANGESETS;
34
+ initRangeSet: (name: string, range: Range) => void;
35
+ getCurrentRange: (name: string, width?: number) => string;
36
+ };
37
+ export default MediaRange;
@@ -1,5 +1,34 @@
1
- const querySets = {};
2
-
1
+ const mediaRanges = new Map();
2
+ const DEAFULT_RANGE_SET = new Map();
3
+ DEAFULT_RANGE_SET.set("S", [0, 599]);
4
+ DEAFULT_RANGE_SET.set("M", [600, 1023]);
5
+ DEAFULT_RANGE_SET.set("L", [1024, 1439]);
6
+ DEAFULT_RANGE_SET.set("XL", [1440, Infinity]);
7
+ /**
8
+ * Enumeration containing the names and settings of predefined screen width media query range sets.
9
+ *
10
+ * @namespace
11
+ * @name MediaRange.RANGESETS
12
+ * @public
13
+ */
14
+ var RANGESETS;
15
+ (function (RANGESETS) {
16
+ /**
17
+ * A 4-step range set (S-M-L-XL).
18
+ *
19
+ * The ranges of this set are:
20
+ * <ul>
21
+ * <li><code>"S"</code>: For screens smaller than 600 pixels.</li>
22
+ * <li><code>"M"</code>: For screens greater than or equal to 600 pixels and smaller than 1024 pixels.</li>
23
+ * <li><code>"L"</code>: For screens greater than or equal to 1024 pixels and smaller than 1440 pixels.</li>
24
+ * <li><code>"XL"</code>: For screens greater than or equal to 1440 pixels.</li>
25
+ * </ul>
26
+ *
27
+ * @name MediaRange.RANGESETS.RANGE_4STEPS
28
+ * @public
29
+ */
30
+ RANGESETS["RANGE_4STEPS"] = "4Step";
31
+ })(RANGESETS || (RANGESETS = {}));
3
32
  /**
4
33
  * Initializes a screen width media query range set.
5
34
  *
@@ -18,22 +47,12 @@ const querySets = {};
18
47
  *
19
48
  * @param {string} name The name of the range set to be initialized.
20
49
  * The name must be a valid id and consist only of letters and numeric digits.
21
- *
22
- * @param {int[]} [borders] The range borders
23
- *
24
- * @param {string[]} [names] The names of the ranges. The names must be a valid id and consist only of letters and digits.
25
- *
50
+ * @param {Range} [range] The given range set.
26
51
  * @name MediaRange.initRangeSet
27
- * @function
28
- * @public
29
52
  */
30
- const _initRangeSet = (name, borders, names) => {
31
- querySets[name] = {
32
- borders,
33
- names,
34
- };
53
+ const initRangeSet = (name, range) => {
54
+ mediaRanges.set(name, range);
35
55
  };
36
-
37
56
  /**
38
57
  * Returns information about the current active range of the range set with the given name.
39
58
  *
@@ -41,69 +60,39 @@ const _initRangeSet = (name, borders, names) => {
41
60
  * otherwise it is determined for the current window size.
42
61
  *
43
62
  * @param {string} name The name of the range set. The range set must be initialized beforehand ({@link MediaRange.initRangeSet})
44
- * @param {int} [width] An optional width, based on which the range should be determined;
45
- * If <code>width</code> is not provided, the window size will be used.
63
+ * @param {number} [width] An optional width, based on which the range should be determined;
64
+ * If <code>width</code> is not provided, the window size will be used.
46
65
  * @returns {string} The name of the current active interval of the range set.
47
66
  *
48
67
  * @name MediaRange.getCurrentRange
49
68
  * @function
50
69
  * @public
51
70
  */
52
- const _getCurrentRange = (name, width = window.innerWidth) => {
53
- const querySet = querySets[name];
54
- let i = 0;
55
-
56
- if (!querySet) {
57
- return null;
58
- }
59
-
60
- for (; i < querySet.borders.length; i++) {
61
- if (width < querySet.borders[i]) {
62
- return querySet.names[i];
63
- }
64
- }
65
-
66
- return querySet.names[i];
67
- };
68
-
69
- /**
70
- * Enumeration containing the names and settings of predefined screen width media query range sets.
71
- *
72
- * @namespace
73
- * @name MediaRange.RANGESETS
74
- * @public
75
- */
76
- const RANGESETS = {
77
- /**
78
- * A 4-step range set (S-M-L-XL).
79
- *
80
- * The ranges of this set are:
81
- * <ul>
82
- * <li><code>"S"</code>: For screens smaller than 600 pixels.</li>
83
- * <li><code>"M"</code>: For screens greater than or equal to 600 pixels and smaller than 1024 pixels.</li>
84
- * <li><code>"L"</code>: For screens greater than or equal to 1024 pixels and smaller than 1440 pixels.</li>
85
- * <li><code>"XL"</code>: For screens greater than or equal to 1440 pixels.</li>
86
- * </ul>
87
- *
88
- * @name MediaRange.RANGESETS.RANGE_4STEPS
89
- * @public
90
- */
91
- RANGE_4STEPS: "4Step",
71
+ const getCurrentRange = (name, width = window.innerWidth) => {
72
+ let rangeSet = mediaRanges.get(name);
73
+ if (!rangeSet) {
74
+ rangeSet = mediaRanges.get(RANGESETS.RANGE_4STEPS);
75
+ }
76
+ let currentRangeName;
77
+ const effectiveWidth = Math.floor(width);
78
+ rangeSet.forEach((value, key) => {
79
+ if (effectiveWidth >= value[0] && effectiveWidth <= value[1]) {
80
+ currentRangeName = key;
81
+ }
82
+ });
83
+ return currentRangeName || [...rangeSet.keys()][0];
92
84
  };
93
-
94
85
  /**
95
86
  * API for screen width changes.
96
87
  *
97
88
  * @namespace
98
89
  * @name MediaRange
99
90
  */
100
-
101
91
  const MediaRange = {
102
- RANGESETS,
103
- initRangeSet: _initRangeSet,
104
- getCurrentRange: _getCurrentRange,
92
+ RANGESETS,
93
+ initRangeSet,
94
+ getCurrentRange,
105
95
  };
106
-
107
- MediaRange.initRangeSet(MediaRange.RANGESETS.RANGE_4STEPS, [600, 1024, 1440], ["S", "M", "L", "XL"]);
108
-
96
+ MediaRange.initRangeSet(MediaRange.RANGESETS.RANGE_4STEPS, DEAFULT_RANGE_SET);
109
97
  export default MediaRange;
98
+ //# sourceMappingURL=MediaRange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaRange.js","sourceRoot":"","sources":["../src/MediaRange.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAC;AAE7C,MAAM,iBAAiB,GAAU,IAAI,GAAG,EAAyB,CAAC;AAClE,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AACrC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AACxC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AACzC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE9C;;;;;;GAMG;AACF,IAAK,SAgBL;AAhBA,WAAK,SAAS;IACd;;;;;;;;;;;;;OAaG;IACH,mCAAsB,CAAA;AACvB,CAAC,EAhBK,SAAS,KAAT,SAAS,QAgBd;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAY,EAAE,EAAE;IACnD,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,KAAK,GAAG,MAAM,CAAC,UAAU,EAAU,EAAE;IAC3E,IAAI,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,CAAC,QAAQ,EAAE;QACd,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAE,CAAC;KACpD;IAED,IAAI,gBAAgB,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEzC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC/B,IAAI,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;YAC7D,gBAAgB,GAAG,GAAG,CAAC;SACvB;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;GAKG;AAEH,MAAM,UAAU,GAAG;IAClB,SAAS;IACT,YAAY;IACZ,eAAe;CACf,CAAC;AAEF,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;AAE9E,eAAe,UAAU,CAAC","sourcesContent":["type Range = Map<string, Array<number>>;\n\nconst mediaRanges = new Map<string, Range>();\n\nconst DEAFULT_RANGE_SET: Range = new Map<string, Array<number>>();\nDEAFULT_RANGE_SET.set(\"S\", [0, 599]);\nDEAFULT_RANGE_SET.set(\"M\", [600, 1023]);\nDEAFULT_RANGE_SET.set(\"L\", [1024, 1439]);\nDEAFULT_RANGE_SET.set(\"XL\", [1440, Infinity]);\n\n/**\n * Enumeration containing the names and settings of predefined screen width media query range sets.\n *\n * @namespace\n * @name MediaRange.RANGESETS\n * @public\n */\n enum RANGESETS {\n\t/**\n\t * A 4-step range set (S-M-L-XL).\n\t *\n\t * The ranges of this set are:\n\t * <ul>\n\t * <li><code>\"S\"</code>: For screens smaller than 600 pixels.</li>\n\t * <li><code>\"M\"</code>: For screens greater than or equal to 600 pixels and smaller than 1024 pixels.</li>\n\t * <li><code>\"L\"</code>: For screens greater than or equal to 1024 pixels and smaller than 1440 pixels.</li>\n\t * <li><code>\"XL\"</code>: For screens greater than or equal to 1440 pixels.</li>\n\t * </ul>\n\t *\n\t * @name MediaRange.RANGESETS.RANGE_4STEPS\n\t * @public\n\t */\n\tRANGE_4STEPS = \"4Step\",\n}\n\n/**\n * Initializes a screen width media query range set.\n *\n * This initialization step makes the range set ready to be used for one of the other functions in namespace <code>MediaRange</code>.\n *\n * A range set can be defined as shown in the following example:\n * <pre>\n * MediaRange.initRangeSet(\"MyRangeSet\", [200, 400], [\"Small\", \"Medium\", \"Large\"]);\n * </pre>\n * This example defines the following named ranges:\n * <ul>\n * <li><code>\"Small\"</code>: For screens smaller than 200 pixels.</li>\n * <li><code>\"Medium\"</code>: For screens greater than or equal to 200 pixels and smaller than 400 pixels.</li>\n * <li><code>\"Large\"</code>: For screens greater than or equal to 400 pixels.</li>\n * </ul>\n *\n * @param {string} name The name of the range set to be initialized.\n * The name must be a valid id and consist only of letters and numeric digits.\n * @param {Range} [range] The given range set.\n * @name MediaRange.initRangeSet\n */\nconst initRangeSet = (name: string, range: Range) => {\n\tmediaRanges.set(name, range);\n};\n\n/**\n * Returns information about the current active range of the range set with the given name.\n *\n * If the optional parameter <code>width</code> is given, the active range will be determined for that width,\n * otherwise it is determined for the current window size.\n *\n * @param {string} name The name of the range set. The range set must be initialized beforehand ({@link MediaRange.initRangeSet})\n * @param {number} [width] An optional width, based on which the range should be determined;\n * If <code>width</code> is not provided, the window size will be used.\n * @returns {string} The name of the current active interval of the range set.\n *\n * @name MediaRange.getCurrentRange\n * @function\n * @public\n */\nconst getCurrentRange = (name: string, width = window.innerWidth): string => {\n\tlet rangeSet = mediaRanges.get(name);\n\n\tif (!rangeSet) {\n\t\trangeSet = mediaRanges.get(RANGESETS.RANGE_4STEPS)!;\n\t}\n\n\tlet currentRangeName;\n\tconst effectiveWidth = Math.floor(width);\n\n\trangeSet.forEach((value, key) => {\n\t\tif (effectiveWidth >= value[0] && effectiveWidth <= value[1]) {\n\t\t\tcurrentRangeName = key;\n\t\t}\n\t});\n\n\treturn currentRangeName || [...rangeSet.keys()][0];\n};\n\n/**\n * API for screen width changes.\n *\n * @namespace\n * @name MediaRange\n */\n\nconst MediaRange = {\n\tRANGESETS,\n\tinitRangeSet,\n\tgetCurrentRange,\n};\n\nMediaRange.initRangeSet(MediaRange.RANGESETS.RANGE_4STEPS, DEAFULT_RANGE_SET);\n\nexport default MediaRange;\n"]}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Parses a .properties format
3
+ * @param {string} sText the contents a of a .properties file
4
+ * @returns a object with key/value pairs parsed from the .properties file format
5
+ * @public
6
+ */
7
+ declare const parseProperties: (sText: string) => {};
8
+ export default parseProperties;