@ui5/webcomponents-base 0.0.0-32b659ddc → 0.0.0-33e059bcd

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 (776) hide show
  1. package/.eslintignore +9 -3
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +1264 -0
  4. package/README.md +58 -7
  5. package/bundle.esm.js +36 -22
  6. package/config/wdio.conf.cjs +400 -0
  7. package/dist/.tsbuildinfo +1 -0
  8. package/dist/AssetRegistry.d.ts +5 -0
  9. package/dist/AssetRegistry.js +6 -9
  10. package/dist/AssetRegistry.js.map +1 -0
  11. package/dist/Boot.d.ts +9 -0
  12. package/dist/Boot.js +71 -0
  13. package/dist/Boot.js.map +1 -0
  14. package/dist/CSP.d.ts +30 -0
  15. package/dist/CSP.js +51 -0
  16. package/dist/CSP.js.map +1 -0
  17. package/dist/CustomElementsRegistry.d.ts +5 -0
  18. package/dist/CustomElementsRegistry.js +78 -0
  19. package/dist/CustomElementsRegistry.js.map +1 -0
  20. package/dist/CustomElementsScope.d.ts +7 -0
  21. package/dist/CustomElementsScope.js +11 -0
  22. package/dist/CustomElementsScope.js.map +1 -0
  23. package/dist/CustomElementsScopeUtils.d.ts +62 -0
  24. package/dist/CustomElementsScopeUtils.js +102 -0
  25. package/dist/CustomElementsScopeUtils.js.map +1 -0
  26. package/dist/DOMObserver.d.ts +11 -0
  27. package/dist/DOMObserver.js +23 -0
  28. package/dist/DOMObserver.js.map +1 -0
  29. package/dist/Device.d.ts +13 -0
  30. package/dist/Device.js +167 -815
  31. package/dist/Device.js.map +1 -0
  32. package/dist/EventProvider.d.ts +25 -0
  33. package/dist/EventProvider.js +67 -70
  34. package/dist/EventProvider.js.map +1 -0
  35. package/dist/FeaturesRegistry.d.ts +3 -0
  36. package/dist/FeaturesRegistry.js +5 -7
  37. package/dist/FeaturesRegistry.js.map +1 -0
  38. package/dist/FontFace.d.ts +2 -0
  39. package/dist/FontFace.js +21 -69
  40. package/dist/FontFace.js.map +1 -0
  41. package/dist/IgnoreCustomElements.d.ts +27 -0
  42. package/dist/IgnoreCustomElements.js +39 -0
  43. package/dist/IgnoreCustomElements.js.map +1 -0
  44. package/dist/InitialConfiguration.d.ts +28 -0
  45. package/dist/InitialConfiguration.js +135 -104
  46. package/dist/InitialConfiguration.js.map +1 -0
  47. package/dist/Keys.d.ts +61 -0
  48. package/dist/Keys.js +181 -0
  49. package/dist/Keys.js.map +1 -0
  50. package/dist/ManagedStyles.d.ts +9 -0
  51. package/dist/ManagedStyles.js +157 -0
  52. package/dist/ManagedStyles.js.map +1 -0
  53. package/dist/MarkedEvents.d.ts +9 -0
  54. package/dist/MarkedEvents.js +15 -0
  55. package/dist/MarkedEvents.js.map +1 -0
  56. package/dist/MediaRange.d.ts +31 -0
  57. package/dist/MediaRange.js +88 -0
  58. package/dist/MediaRange.js.map +1 -0
  59. package/dist/PropertiesFileFormat.d.ts +8 -0
  60. package/dist/PropertiesFileFormat.js +85 -0
  61. package/dist/PropertiesFileFormat.js.map +1 -0
  62. package/dist/Render.d.ts +47 -0
  63. package/dist/Render.js +143 -0
  64. package/dist/Render.js.map +1 -0
  65. package/dist/RenderQueue.d.ts +19 -0
  66. package/dist/RenderQueue.js +53 -39
  67. package/dist/RenderQueue.js.map +1 -0
  68. package/dist/Runtimes.d.ts +27 -0
  69. package/dist/Runtimes.js +86 -0
  70. package/dist/Runtimes.js.map +1 -0
  71. package/dist/StaticArea.d.ts +3 -0
  72. package/dist/StaticArea.js +4 -38
  73. package/dist/StaticArea.js.map +1 -0
  74. package/dist/StaticAreaItem.d.ts +35 -0
  75. package/dist/StaticAreaItem.js +94 -84
  76. package/dist/StaticAreaItem.js.map +1 -0
  77. package/dist/SystemCSSVars.d.ts +2 -0
  78. package/dist/SystemCSSVars.js +9 -0
  79. package/dist/SystemCSSVars.js.map +1 -0
  80. package/dist/Theming.d.ts +3 -0
  81. package/dist/Theming.js +4 -55
  82. package/dist/Theming.js.map +1 -0
  83. package/dist/UI5Element.d.ts +384 -0
  84. package/dist/UI5Element.js +960 -854
  85. package/dist/UI5Element.js.map +1 -0
  86. package/dist/UI5ElementMetadata.d.ts +143 -0
  87. package/dist/UI5ElementMetadata.js +281 -152
  88. package/dist/UI5ElementMetadata.js.map +1 -0
  89. package/dist/animations/AnimationQueue.d.ts +8 -0
  90. package/dist/animations/AnimationQueue.js +31 -38
  91. package/dist/animations/AnimationQueue.js.map +1 -0
  92. package/dist/animations/animate.d.ts +14 -0
  93. package/dist/animations/animate.js +46 -51
  94. package/dist/animations/animate.js.map +1 -0
  95. package/dist/animations/scroll.d.ts +5 -0
  96. package/dist/animations/scroll.js +18 -27
  97. package/dist/animations/scroll.js.map +1 -0
  98. package/dist/animations/slideDown.d.ts +5 -0
  99. package/dist/animations/slideDown.js +53 -78
  100. package/dist/animations/slideDown.js.map +1 -0
  101. package/dist/animations/slideUp.d.ts +5 -0
  102. package/dist/animations/slideUp.js +49 -70
  103. package/dist/animations/slideUp.js.map +1 -0
  104. package/dist/asset-registries/Icons.d.ts +39 -0
  105. package/dist/asset-registries/Icons.js +136 -24
  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 +76 -0
  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 +126 -98
  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 +59 -66
  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 +85 -57
  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/config/AnimationMode.d.ts +14 -0
  129. package/dist/config/AnimationMode.js +23 -10
  130. package/dist/config/AnimationMode.js.map +1 -0
  131. package/dist/config/CalendarType.d.ts +15 -0
  132. package/dist/config/CalendarType.js +32 -19
  133. package/dist/config/CalendarType.js.map +1 -0
  134. package/dist/config/FormatSettings.d.ts +15 -0
  135. package/dist/config/FormatSettings.js +15 -9
  136. package/dist/config/FormatSettings.js.map +1 -0
  137. package/dist/config/Icons.d.ts +40 -0
  138. package/dist/config/Icons.js +44 -0
  139. package/dist/config/Icons.js.map +1 -0
  140. package/dist/config/Language.d.ts +40 -0
  141. package/dist/config/Language.js +66 -10
  142. package/dist/config/Language.js.map +1 -0
  143. package/dist/config/NoConflict.d.ts +20 -0
  144. package/dist/config/NoConflict.js +41 -41
  145. package/dist/config/NoConflict.js.map +1 -0
  146. package/dist/config/RTL.d.ts +7 -0
  147. package/dist/config/RTL.js +26 -20
  148. package/dist/config/RTL.js.map +1 -0
  149. package/dist/config/Theme.d.ts +38 -0
  150. package/dist/config/Theme.js +65 -23
  151. package/dist/config/Theme.js.map +1 -0
  152. package/dist/config/ThemeRoot.d.ts +29 -0
  153. package/dist/config/ThemeRoot.js +59 -0
  154. package/dist/config/ThemeRoot.js.map +1 -0
  155. package/dist/config/Timezone.d.ts +17 -0
  156. package/dist/config/Timezone.js +30 -0
  157. package/dist/config/Timezone.js.map +1 -0
  158. package/dist/connectToComponent.d.ts +9 -0
  159. package/dist/connectToComponent.js +59 -0
  160. package/dist/connectToComponent.js.map +1 -0
  161. package/dist/css/BusyIndicator.css +80 -0
  162. package/dist/css/FontFace.css +96 -0
  163. package/dist/css/OverrideFontFace.css +32 -0
  164. package/dist/css/SystemCSSVars.css +17 -0
  165. package/dist/custom-elements-internal.json +2765 -0
  166. package/dist/custom-elements.json +2528 -0
  167. package/dist/decorators/customElement.d.ts +23 -0
  168. package/dist/decorators/customElement.js +37 -0
  169. package/dist/decorators/customElement.js.map +1 -0
  170. package/dist/decorators/event.d.ts +13 -0
  171. package/dist/decorators/event.js +24 -0
  172. package/dist/decorators/event.js.map +1 -0
  173. package/dist/decorators/property.d.ts +9 -0
  174. package/dist/decorators/property.js +24 -0
  175. package/dist/decorators/property.js.map +1 -0
  176. package/dist/decorators/slot.d.ts +9 -0
  177. package/dist/decorators/slot.js +37 -0
  178. package/dist/decorators/slot.js.map +1 -0
  179. package/dist/delegate/ItemNavigation.d.ts +114 -0
  180. package/dist/delegate/ItemNavigation.js +311 -274
  181. package/dist/delegate/ItemNavigation.js.map +1 -0
  182. package/dist/delegate/ResizeHandler.d.ts +23 -0
  183. package/dist/delegate/ResizeHandler.js +82 -63
  184. package/dist/delegate/ResizeHandler.js.map +1 -0
  185. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  186. package/dist/delegate/ScrollEnablement.js +159 -100
  187. package/dist/delegate/ScrollEnablement.js.map +1 -0
  188. package/dist/features/F6Navigation.d.ts +19 -0
  189. package/dist/features/F6Navigation.js +151 -0
  190. package/dist/features/F6Navigation.js.map +1 -0
  191. package/dist/features/LegacyDateFormats.d.ts +18 -0
  192. package/dist/features/LegacyDateFormats.js +20 -0
  193. package/dist/features/LegacyDateFormats.js.map +1 -0
  194. package/dist/features/OpenUI5Element.d.ts +9 -0
  195. package/dist/features/OpenUI5Element.js +5 -0
  196. package/dist/features/OpenUI5Element.js.map +1 -0
  197. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  198. package/dist/features/OpenUI5Enablement.js +96 -0
  199. package/dist/features/OpenUI5Enablement.js.map +1 -0
  200. package/dist/features/OpenUI5Support.d.ts +36 -0
  201. package/dist/features/OpenUI5Support.js +152 -73
  202. package/dist/features/OpenUI5Support.js.map +1 -0
  203. package/dist/generated/AssetParameters.d.ts +6 -0
  204. package/dist/generated/AssetParameters.js +8 -0
  205. package/dist/generated/AssetParameters.js.map +1 -0
  206. package/dist/generated/VersionInfo.d.ts +10 -0
  207. package/dist/generated/VersionInfo.js +11 -0
  208. package/dist/generated/VersionInfo.js.map +1 -0
  209. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  210. package/dist/generated/css/BusyIndicator.css.js +7 -0
  211. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  212. package/dist/generated/css/FontFace.css.d.ts +3 -0
  213. package/dist/generated/css/FontFace.css.js +7 -0
  214. package/dist/generated/css/FontFace.css.js.map +1 -0
  215. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  216. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  217. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  218. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  219. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  220. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  221. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  222. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  223. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  224. package/dist/getSharedResource.d.ts +11 -0
  225. package/dist/getSharedResource.js +40 -0
  226. package/dist/getSharedResource.js.map +1 -0
  227. package/dist/global.d.ts +40 -0
  228. package/dist/i18nBundle.d.ts +41 -0
  229. package/dist/i18nBundle.js +71 -30
  230. package/dist/i18nBundle.js.map +1 -0
  231. package/dist/locale/Locale.d.ts +22 -0
  232. package/dist/locale/Locale.js +79 -0
  233. package/dist/locale/Locale.js.map +1 -0
  234. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  235. package/dist/locale/RTLAwareRegistry.js +9 -0
  236. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  237. package/dist/locale/applyDirection.d.ts +10 -0
  238. package/dist/locale/applyDirection.js +17 -0
  239. package/dist/locale/applyDirection.js.map +1 -0
  240. package/dist/locale/directionChange.d.ts +15 -0
  241. package/dist/locale/directionChange.js +24 -0
  242. package/dist/locale/directionChange.js.map +1 -0
  243. package/dist/locale/getEffectiveDir.d.ts +2 -0
  244. package/dist/locale/getEffectiveDir.js +24 -0
  245. package/dist/locale/getEffectiveDir.js.map +1 -0
  246. package/dist/locale/getLocale.d.ts +7 -0
  247. package/dist/locale/getLocale.js +38 -0
  248. package/dist/locale/getLocale.js.map +1 -0
  249. package/dist/locale/languageChange.d.ts +5 -0
  250. package/dist/locale/languageChange.js +14 -0
  251. package/dist/locale/languageChange.js.map +1 -0
  252. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  253. package/dist/locale/nextFallbackLocale.js +24 -0
  254. package/dist/locale/nextFallbackLocale.js.map +1 -0
  255. package/dist/locale/normalizeLocale.d.ts +7 -0
  256. package/dist/locale/normalizeLocale.js +47 -0
  257. package/dist/locale/normalizeLocale.js.map +1 -0
  258. package/dist/renderer/LitRenderer.d.ts +14 -0
  259. package/dist/renderer/LitRenderer.js +38 -12
  260. package/dist/renderer/LitRenderer.js.map +1 -0
  261. package/dist/renderer/directives/style-map.js +72 -0
  262. package/dist/renderer/executeTemplate.d.ts +13 -0
  263. package/dist/renderer/executeTemplate.js +30 -0
  264. package/dist/renderer/executeTemplate.js.map +1 -0
  265. package/dist/sap/base/Log.js +750 -0
  266. package/dist/sap/base/assert.js +34 -0
  267. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  268. package/dist/sap/base/security/URLListValidator.js +406 -0
  269. package/dist/sap/base/security/encodeCSS.js +40 -0
  270. package/dist/sap/base/security/encodeXML.js +53 -0
  271. package/dist/sap/base/security/sanitizeHTML.js +38 -0
  272. package/dist/sap/base/strings/toHex.js +33 -0
  273. package/dist/sap/base/util/now.js +28 -0
  274. package/dist/sap/base/util/uid.js +27 -0
  275. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  276. package/dist/ssr-dom-shim.d.ts +1 -0
  277. package/dist/ssr-dom-shim.js +12 -0
  278. package/dist/ssr-dom-shim.js.map +1 -0
  279. package/dist/ssr-dom.d.ts +0 -0
  280. package/dist/ssr-dom.js +3 -0
  281. package/dist/ssr-dom.js.map +1 -0
  282. package/dist/theming/CustomStyle.d.ts +6 -0
  283. package/dist/theming/CustomStyle.js +46 -17
  284. package/dist/theming/CustomStyle.js.map +1 -0
  285. package/dist/theming/ThemeLoaded.d.ts +5 -0
  286. package/dist/theming/ThemeLoaded.js +14 -0
  287. package/dist/theming/ThemeLoaded.js.map +1 -0
  288. package/dist/theming/ThemeRegistered.d.ts +4 -0
  289. package/dist/theming/ThemeRegistered.js +11 -0
  290. package/dist/theming/ThemeRegistered.js.map +1 -0
  291. package/dist/theming/applyTheme.d.ts +2 -0
  292. package/dist/theming/applyTheme.js +76 -0
  293. package/dist/theming/applyTheme.js.map +1 -0
  294. package/dist/theming/getConstructableStyle.d.ts +9 -0
  295. package/dist/theming/getConstructableStyle.js +25 -0
  296. package/dist/theming/getConstructableStyle.js.map +1 -0
  297. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  298. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  299. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  300. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  301. package/dist/theming/getEffectiveStyle.js +32 -0
  302. package/dist/theming/getEffectiveStyle.js.map +1 -0
  303. package/dist/theming/getStylesString.d.ts +3 -0
  304. package/dist/theming/getStylesString.js +11 -0
  305. package/dist/theming/getStylesString.js.map +1 -0
  306. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  307. package/dist/theming/getThemeDesignerTheme.js +80 -0
  308. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  309. package/dist/theming/preloadLinks.d.ts +3 -0
  310. package/dist/theming/preloadLinks.js +19 -0
  311. package/dist/theming/preloadLinks.js.map +1 -0
  312. package/dist/thirdparty/_merge.d.ts +2 -0
  313. package/dist/thirdparty/_merge.js +35 -0
  314. package/dist/thirdparty/_merge.js.map +1 -0
  315. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  316. package/dist/thirdparty/isPlainObject.js +19 -0
  317. package/dist/thirdparty/isPlainObject.js.map +1 -0
  318. package/dist/thirdparty/merge.d.ts +2 -0
  319. package/dist/thirdparty/merge.js +6 -0
  320. package/dist/thirdparty/merge.js.map +1 -0
  321. package/dist/types/AnimationMode.d.ts +24 -0
  322. package/dist/types/AnimationMode.js +25 -6
  323. package/dist/types/AnimationMode.js.map +1 -0
  324. package/dist/types/CSSColor.d.ts +11 -0
  325. package/dist/types/CSSColor.js +14 -0
  326. package/dist/types/CSSColor.js.map +1 -0
  327. package/dist/types/CSSSize.d.ts +11 -0
  328. package/dist/types/CSSSize.js +10 -5
  329. package/dist/types/CSSSize.js.map +1 -0
  330. package/dist/types/CalendarType.d.ts +28 -0
  331. package/dist/types/CalendarType.js +30 -0
  332. package/dist/types/CalendarType.js.map +1 -0
  333. package/dist/types/DOMReference.d.ts +13 -0
  334. package/dist/types/DOMReference.js +21 -0
  335. package/dist/types/DOMReference.js.map +1 -0
  336. package/dist/types/DataType.d.ts +20 -0
  337. package/dist/types/DataType.js +31 -17
  338. package/dist/types/DataType.js.map +1 -0
  339. package/dist/types/Float.d.ts +14 -0
  340. package/dist/types/Float.js +18 -0
  341. package/dist/types/Float.js.map +1 -0
  342. package/dist/types/Integer.d.ts +14 -0
  343. package/dist/types/Integer.js +14 -5
  344. package/dist/types/Integer.js.map +1 -0
  345. package/dist/types/InvisibleMessageMode.d.ts +20 -0
  346. package/dist/types/InvisibleMessageMode.js +20 -0
  347. package/dist/types/InvisibleMessageMode.js.map +1 -0
  348. package/dist/types/ItemNavigationBehavior.d.ts +18 -0
  349. package/dist/types/ItemNavigationBehavior.js +16 -17
  350. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  351. package/dist/types/NavigationMode.d.ts +24 -0
  352. package/dist/types/NavigationMode.js +25 -5
  353. package/dist/types/NavigationMode.js.map +1 -0
  354. package/dist/types/ValueState.d.ts +28 -0
  355. package/dist/types/ValueState.js +27 -19
  356. package/dist/types/ValueState.js.map +1 -0
  357. package/dist/types.d.ts +18 -0
  358. package/dist/types.js +2 -0
  359. package/dist/types.js.map +1 -0
  360. package/dist/updateShadowRoot.d.ts +8 -0
  361. package/dist/updateShadowRoot.js +42 -0
  362. package/dist/updateShadowRoot.js.map +1 -0
  363. package/dist/util/AriaLabelHelper.d.ts +15 -0
  364. package/dist/util/AriaLabelHelper.js +171 -0
  365. package/dist/util/AriaLabelHelper.js.map +1 -0
  366. package/dist/util/Caret.d.ts +7 -0
  367. package/dist/util/Caret.js +23 -0
  368. package/dist/util/Caret.js.map +1 -0
  369. package/dist/util/ColorConversion.d.ts +30 -0
  370. package/dist/util/ColorConversion.js +342 -0
  371. package/dist/util/ColorConversion.js.map +1 -0
  372. package/dist/util/FetchHelper.d.ts +3 -0
  373. package/dist/util/FetchHelper.js +19 -25
  374. package/dist/util/FetchHelper.js.map +1 -0
  375. package/dist/util/FocusableElements.d.ts +4 -0
  376. package/dist/util/FocusableElements.js +68 -56
  377. package/dist/util/FocusableElements.js.map +1 -0
  378. package/dist/util/HTMLSanitizer.d.ts +3 -0
  379. package/dist/util/HTMLSanitizer.js +6 -0
  380. package/dist/util/HTMLSanitizer.js.map +1 -0
  381. package/dist/util/InvisibleMessage.d.ts +10 -0
  382. package/dist/util/InvisibleMessage.js +56 -0
  383. package/dist/util/InvisibleMessage.js.map +1 -0
  384. package/dist/util/PopupUtils.d.ts +7 -0
  385. package/dist/util/PopupUtils.js +74 -0
  386. package/dist/util/PopupUtils.js.map +1 -0
  387. package/dist/util/SlotsHelper.d.ts +9 -0
  388. package/dist/util/SlotsHelper.js +30 -0
  389. package/dist/util/SlotsHelper.js.map +1 -0
  390. package/dist/util/StringHelper.d.ts +3 -0
  391. package/dist/util/StringHelper.js +17 -20
  392. package/dist/util/StringHelper.js.map +1 -0
  393. package/dist/util/TabbableElements.d.ts +17 -0
  394. package/dist/util/TabbableElements.js +53 -40
  395. package/dist/util/TabbableElements.js.map +1 -0
  396. package/dist/util/arraysAreEqual.d.ts +2 -0
  397. package/dist/util/arraysAreEqual.js +13 -0
  398. package/dist/util/arraysAreEqual.js.map +1 -0
  399. package/dist/util/clamp.d.ts +9 -0
  400. package/dist/util/clamp.js +12 -0
  401. package/dist/util/clamp.js.map +1 -0
  402. package/dist/util/createLinkInHead.d.ts +7 -0
  403. package/dist/util/createLinkInHead.js +21 -0
  404. package/dist/util/createLinkInHead.js.map +1 -0
  405. package/dist/util/createStyleInHead.d.ts +8 -0
  406. package/dist/util/createStyleInHead.js +10 -10
  407. package/dist/util/createStyleInHead.js.map +1 -0
  408. package/dist/util/debounce.d.ts +2 -0
  409. package/dist/util/debounce.js +15 -0
  410. package/dist/util/debounce.js.map +1 -0
  411. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  412. package/dist/util/detectNavigatorLanguage.js +14 -10
  413. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  414. package/dist/util/escapeRegex.d.ts +8 -0
  415. package/dist/util/escapeRegex.js +11 -0
  416. package/dist/util/escapeRegex.js.map +1 -0
  417. package/dist/util/formatMessage.d.ts +2 -0
  418. package/dist/util/formatMessage.js +15 -19
  419. package/dist/util/formatMessage.js.map +1 -0
  420. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  421. package/dist/util/generateHighlightedMarkup.js +41 -0
  422. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  423. package/dist/util/getActiveElement.d.ts +2 -0
  424. package/dist/util/getActiveElement.js +9 -0
  425. package/dist/util/getActiveElement.js.map +1 -0
  426. package/dist/util/getClassCopy.d.ts +419 -0
  427. package/dist/util/getClassCopy.js +10 -0
  428. package/dist/util/getClassCopy.js.map +1 -0
  429. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  430. package/dist/util/getDesigntimePropertyAsArray.js +5 -3
  431. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  432. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  433. package/dist/util/getEffectiveContentDensity.js +4 -0
  434. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  435. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  436. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  437. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  438. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  439. package/dist/util/getFastNavigationGroups.js +51 -0
  440. package/dist/util/getFastNavigationGroups.js.map +1 -0
  441. package/dist/util/getFileExtension.d.ts +12 -0
  442. package/dist/util/getFileExtension.js +19 -0
  443. package/dist/util/getFileExtension.js.map +1 -0
  444. package/dist/util/getNormalizedTarget.d.ts +7 -0
  445. package/dist/util/getNormalizedTarget.js +14 -0
  446. package/dist/util/getNormalizedTarget.js.map +1 -0
  447. package/dist/util/getParentElement.d.ts +2 -0
  448. package/dist/util/getParentElement.js +5 -0
  449. package/dist/util/getParentElement.js.map +1 -0
  450. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  451. package/dist/util/getSingletonElementInstance.js +19 -0
  452. package/dist/util/getSingletonElementInstance.js.map +1 -0
  453. package/dist/util/isElementClickable.d.ts +2 -0
  454. package/dist/util/isElementClickable.js +16 -0
  455. package/dist/util/isElementClickable.js.map +1 -0
  456. package/dist/util/isElementContainingBlock.d.ts +2 -0
  457. package/dist/util/isElementContainingBlock.js +11 -0
  458. package/dist/util/isElementContainingBlock.js.map +1 -0
  459. package/dist/util/isElementHidden.d.ts +2 -0
  460. package/dist/util/isElementHidden.js +8 -0
  461. package/dist/util/isElementHidden.js.map +1 -0
  462. package/dist/util/isElementInView.d.ts +6 -0
  463. package/dist/util/isElementInView.js +12 -0
  464. package/dist/util/isElementInView.js.map +1 -0
  465. package/dist/util/isElementTabbable.d.ts +9 -0
  466. package/dist/util/isElementTabbable.js +30 -0
  467. package/dist/util/isElementTabbable.js.map +1 -0
  468. package/dist/util/isValidPropertyName.d.ts +8 -0
  469. package/dist/util/isValidPropertyName.js +20 -12
  470. package/dist/util/isValidPropertyName.js.map +1 -0
  471. package/dist/util/whenDOMReady.d.ts +2 -0
  472. package/dist/util/whenDOMReady.js +11 -10
  473. package/dist/util/whenDOMReady.js.map +1 -0
  474. package/dist/util/willShowContent.d.ts +2 -0
  475. package/dist/util/willShowContent.js +7 -0
  476. package/dist/util/willShowContent.js.map +1 -0
  477. package/dist/validateThemeRoot.d.ts +2 -0
  478. package/dist/validateThemeRoot.js +48 -0
  479. package/dist/validateThemeRoot.js.map +1 -0
  480. package/index.js +228 -2
  481. package/lib/generate-asset-parameters/index.js +27 -0
  482. package/lib/generate-styles/index.js +31 -0
  483. package/lib/generate-version-info/index.js +32 -0
  484. package/package-scripts.cjs +65 -0
  485. package/package.json +30 -14
  486. package/src/css/BusyIndicator.css +80 -0
  487. package/src/css/FontFace.css +96 -0
  488. package/src/css/OverrideFontFace.css +32 -0
  489. package/src/css/SystemCSSVars.css +17 -0
  490. package/src/renderer/directives/style-map.js +72 -0
  491. package/tsconfig.json +18 -0
  492. package/used-modules.txt +14 -0
  493. package/bundle.es5.js +0 -28
  494. package/config/rollup.config.js +0 -1
  495. package/config/wdio.conf.js +0 -1
  496. package/dist/Assets.js +0 -2
  497. package/dist/CSS.js +0 -48
  498. package/dist/FormatSettings.js +0 -31
  499. package/dist/Locale.js +0 -101
  500. package/dist/LocaleProvider.js +0 -34
  501. package/dist/RenderScheduler.js +0 -165
  502. package/dist/ResourceLoaderOverrides.js +0 -38
  503. package/dist/SVGIconRegistry.js +0 -54
  504. package/dist/animations/config.js +0 -5
  505. package/dist/boot.js +0 -32
  506. package/dist/compatibility/DOMObserver.js +0 -62
  507. package/dist/compatibility/patchNodeValue.js +0 -24
  508. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  509. package/dist/dates/CalendarDate.js +0 -203
  510. package/dist/dates/CalendarType.js +0 -22
  511. package/dist/dates/CalendarUtils.js +0 -99
  512. package/dist/delegate/CustomResize.js +0 -78
  513. package/dist/delegate/NativeResize.js +0 -44
  514. package/dist/events/PseudoEvents.js +0 -58
  515. package/dist/features/browsersupport/Edge.js +0 -6
  516. package/dist/features/browsersupport/IE11.js +0 -41
  517. package/dist/features/calendar/Buddhist.js +0 -1
  518. package/dist/features/calendar/Islamic.js +0 -1
  519. package/dist/features/calendar/Japanese.js +0 -1
  520. package/dist/features/calendar/Persian.js +0 -1
  521. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5906
  522. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5906
  523. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5906
  524. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4979
  525. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4996
  526. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5498
  527. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4888
  528. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4916
  529. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4917
  530. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4915
  531. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4883
  532. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4883
  533. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4970
  534. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4962
  535. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4971
  536. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4977
  537. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4971
  538. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4972
  539. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4971
  540. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4972
  541. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4973
  542. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4972
  543. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4912
  544. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4914
  545. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4913
  546. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4914
  547. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4913
  548. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4915
  549. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4913
  550. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4915
  551. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4914
  552. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4967
  553. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4883
  554. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -5008
  555. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4979
  556. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4979
  557. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4973
  558. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4997
  559. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4979
  560. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5378
  561. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4829
  562. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4919
  563. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4856
  564. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4658
  565. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4950
  566. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4950
  567. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4830
  568. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4725
  569. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4738
  570. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5481
  571. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -5112
  572. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4515
  573. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4977
  574. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4884
  575. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4884
  576. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5176
  577. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4805
  578. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4940
  579. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -5090
  580. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5407
  581. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5407
  582. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5370
  583. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5340
  584. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -5126
  585. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -5011
  586. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4797
  587. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4979
  588. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5353
  589. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4673
  590. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4632
  591. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4640
  592. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4640
  593. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4728
  594. package/dist/json-imports/LocaleData.js +0 -171
  595. package/dist/renderer/ifDefined.js +0 -21
  596. package/dist/resources/bundle.es5.js +0 -212
  597. package/dist/resources/bundle.es5.js.map +0 -1
  598. package/dist/resources/bundle.esm.js +0 -123
  599. package/dist/resources/bundle.esm.js.map +0 -1
  600. package/dist/shims/Core-shim.js +0 -53
  601. package/dist/test-resources/assets/Themes.js +0 -13
  602. package/dist/test-resources/dev-helpers/ExternalThemePresent.js +0 -3
  603. package/dist/test-resources/elements/Child.js +0 -35
  604. package/dist/test-resources/elements/Generic.js +0 -84
  605. package/dist/test-resources/elements/GenericExt.js +0 -26
  606. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  607. package/dist/test-resources/elements/Parent.js +0 -37
  608. package/dist/test-resources/pages/AllTestElements.html +0 -40
  609. package/dist/test-resources/pages/Configuration.html +0 -20
  610. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  611. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  612. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  613. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  614. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  615. package/dist/test-resources/specs/Theming.spec.js +0 -31
  616. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  617. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  618. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  619. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  620. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  621. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  622. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  623. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  624. package/dist/theming/StyleInjection.js +0 -67
  625. package/dist/thirdparty/Array.from.js +0 -16
  626. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  627. package/dist/thirdparty/Array.prototype.find.js +0 -46
  628. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  629. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  630. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  631. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  632. package/dist/thirdparty/Number.isInteger.js +0 -5
  633. package/dist/thirdparty/Number.isNaN.js +0 -1
  634. package/dist/thirdparty/Number.parseInt.js +0 -1
  635. package/dist/thirdparty/Object.assign.js +0 -31
  636. package/dist/thirdparty/Object.entries.js +0 -11
  637. package/dist/thirdparty/Symbol.js +0 -2
  638. package/dist/thirdparty/WeakSet.js +0 -27
  639. package/dist/thirdparty/events-polyfills.js +0 -89
  640. package/dist/thirdparty/fetch.js +0 -1
  641. package/dist/thirdparty/template.js +0 -600
  642. package/dist/types/PopupState.js +0 -37
  643. package/dist/util/CSSTransformUtils.js +0 -90
  644. package/dist/util/isDescendantOf.js +0 -15
  645. package/dist/util/isNodeClickable.js +0 -19
  646. package/dist/util/isNodeHidden.js +0 -13
  647. package/dist/util/isNodeTabbable.js +0 -28
  648. package/dist/util/normalizeLocale.js +0 -77
  649. package/dist/webcomponentsjs/LICENSE.md +0 -19
  650. package/dist/webcomponentsjs/README.md +0 -229
  651. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  652. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  653. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  654. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  655. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  656. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  657. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  658. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  659. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  660. package/dist/webcomponentsjs/package.json +0 -46
  661. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  662. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  663. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  664. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  665. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  666. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  667. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  668. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  669. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  670. package/package-scripts.js +0 -42
  671. package/src/AssetRegistry.js +0 -9
  672. package/src/Assets.js +0 -2
  673. package/src/CSS.js +0 -48
  674. package/src/Device.js +0 -823
  675. package/src/EventProvider.js +0 -73
  676. package/src/FeaturesRegistry.js +0 -11
  677. package/src/FontFace.js +0 -73
  678. package/src/FormatSettings.js +0 -31
  679. package/src/InitialConfiguration.js +0 -130
  680. package/src/Locale.js +0 -101
  681. package/src/LocaleProvider.js +0 -34
  682. package/src/RenderQueue.js +0 -42
  683. package/src/RenderScheduler.js +0 -165
  684. package/src/ResourceLoaderOverrides.js +0 -38
  685. package/src/SVGIconRegistry.js +0 -54
  686. package/src/StaticArea.js +0 -41
  687. package/src/StaticAreaItem.js +0 -90
  688. package/src/Theming.js +0 -55
  689. package/src/UI5Element.js +0 -869
  690. package/src/UI5ElementMetadata.js +0 -164
  691. package/src/animations/AnimationQueue.js +0 -42
  692. package/src/animations/animate.js +0 -53
  693. package/src/animations/config.js +0 -5
  694. package/src/animations/scroll.js +0 -28
  695. package/src/animations/slideDown.js +0 -79
  696. package/src/animations/slideUp.js +0 -71
  697. package/src/asset-registries/Icons.js +0 -24
  698. package/src/asset-registries/LocaleData.js +0 -108
  699. package/src/asset-registries/Themes.js +0 -75
  700. package/src/asset-registries/i18n.js +0 -74
  701. package/src/boot.js +0 -32
  702. package/src/compatibility/DOMObserver.js +0 -62
  703. package/src/compatibility/patchNodeValue.js +0 -24
  704. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  705. package/src/config/AnimationMode.js +0 -13
  706. package/src/config/CalendarType.js +0 -22
  707. package/src/config/FormatSettings.js +0 -13
  708. package/src/config/Language.js +0 -12
  709. package/src/config/NoConflict.js +0 -51
  710. package/src/config/RTL.js +0 -31
  711. package/src/config/Theme.js +0 -28
  712. package/src/dates/CalendarDate.js +0 -203
  713. package/src/dates/CalendarType.js +0 -22
  714. package/src/dates/CalendarUtils.js +0 -99
  715. package/src/delegate/CustomResize.js +0 -78
  716. package/src/delegate/ItemNavigation.js +0 -278
  717. package/src/delegate/NativeResize.js +0 -44
  718. package/src/delegate/ResizeHandler.js +0 -66
  719. package/src/delegate/ScrollEnablement.js +0 -106
  720. package/src/events/PseudoEvents.js +0 -58
  721. package/src/features/OpenUI5Support.js +0 -76
  722. package/src/features/browsersupport/Edge.js +0 -6
  723. package/src/features/browsersupport/IE11.js +0 -41
  724. package/src/features/calendar/Buddhist.js +0 -1
  725. package/src/features/calendar/Islamic.js +0 -1
  726. package/src/features/calendar/Japanese.js +0 -1
  727. package/src/features/calendar/Persian.js +0 -1
  728. package/src/i18nBundle.js +0 -35
  729. package/src/json-imports/LocaleData.js +0 -171
  730. package/src/renderer/LitRenderer.js +0 -15
  731. package/src/renderer/ifDefined.js +0 -21
  732. package/src/shims/Core-shim.js +0 -53
  733. package/src/theming/CustomStyle.js +0 -19
  734. package/src/theming/StyleInjection.js +0 -67
  735. package/src/thirdparty/Array.from.js +0 -16
  736. package/src/thirdparty/Array.prototype.fill.js +0 -44
  737. package/src/thirdparty/Array.prototype.find.js +0 -46
  738. package/src/thirdparty/Array.prototype.includes.js +0 -51
  739. package/src/thirdparty/Element.prototype.closest.js +0 -11
  740. package/src/thirdparty/Element.prototype.matches.js +0 -6
  741. package/src/thirdparty/Map.prototype.keys.js +0 -9
  742. package/src/thirdparty/Number.isInteger.js +0 -5
  743. package/src/thirdparty/Number.isNaN.js +0 -1
  744. package/src/thirdparty/Number.parseInt.js +0 -1
  745. package/src/thirdparty/Object.assign.js +0 -31
  746. package/src/thirdparty/Object.entries.js +0 -11
  747. package/src/thirdparty/Symbol.js +0 -2
  748. package/src/thirdparty/WeakSet.js +0 -27
  749. package/src/thirdparty/events-polyfills.js +0 -89
  750. package/src/thirdparty/fetch.js +0 -1
  751. package/src/thirdparty/template.js +0 -600
  752. package/src/types/AnimationMode.js +0 -7
  753. package/src/types/CSSSize.js +0 -9
  754. package/src/types/DataType.js +0 -25
  755. package/src/types/Integer.js +0 -9
  756. package/src/types/ItemNavigationBehavior.js +0 -21
  757. package/src/types/NavigationMode.js +0 -6
  758. package/src/types/PopupState.js +0 -37
  759. package/src/types/ValueState.js +0 -22
  760. package/src/util/CSSTransformUtils.js +0 -90
  761. package/src/util/FetchHelper.js +0 -31
  762. package/src/util/FocusableElements.js +0 -60
  763. package/src/util/StringHelper.js +0 -26
  764. package/src/util/TabbableElements.js +0 -44
  765. package/src/util/createStyleInHead.js +0 -18
  766. package/src/util/detectNavigatorLanguage.js +0 -11
  767. package/src/util/formatMessage.js +0 -23
  768. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  769. package/src/util/isDescendantOf.js +0 -15
  770. package/src/util/isNodeClickable.js +0 -19
  771. package/src/util/isNodeHidden.js +0 -13
  772. package/src/util/isNodeTabbable.js +0 -28
  773. package/src/util/isValidPropertyName.js +0 -20
  774. package/src/util/normalizeLocale.js +0 -77
  775. package/src/util/whenDOMReady.js +0 -13
  776. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1,51 @@
1
+ let groups = [];
2
+ const isFastNavGroupElemenet = (el) => {
3
+ return el.getAttribute("data-sap-ui-fastnavgroup") === "true";
4
+ };
5
+ const isElementVisible = (el) => {
6
+ const style = window.getComputedStyle(el);
7
+ return style.width !== "0px"
8
+ && style.height !== "0px"
9
+ && style.opacity !== "0"
10
+ && style.display !== "none"
11
+ && style.visibility !== "hidden";
12
+ };
13
+ const findFastNavigationGroups = (container, startFromContainer) => {
14
+ let child, assignedElements, index = 0;
15
+ if (!isElementVisible(container)) {
16
+ return;
17
+ }
18
+ if (isFastNavGroupElemenet(container)) {
19
+ groups.push(container);
20
+ }
21
+ if (container.shadowRoot) {
22
+ child = container.shadowRoot.firstChild;
23
+ }
24
+ else if (container instanceof HTMLSlotElement && container.assignedNodes()) {
25
+ assignedElements = container.assignedNodes();
26
+ child = assignedElements[0];
27
+ }
28
+ else if (startFromContainer) {
29
+ child = container;
30
+ }
31
+ else {
32
+ child = container.firstElementChild;
33
+ }
34
+ while (child) {
35
+ const originalChild = child;
36
+ if (!child) {
37
+ return;
38
+ }
39
+ if (child.nodeType === 1) {
40
+ findFastNavigationGroups(child, false);
41
+ }
42
+ child = assignedElements && assignedElements.length ? assignedElements[++index] : originalChild.nextElementSibling;
43
+ }
44
+ };
45
+ const getFastNavigationGroups = (container) => {
46
+ groups = [];
47
+ findFastNavigationGroups(container, true);
48
+ return groups;
49
+ };
50
+ export default getFastNavigationGroups;
51
+ //# sourceMappingURL=getFastNavigationGroups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFastNavigationGroups.js","sourceRoot":"","sources":["../../src/util/getFastNavigationGroups.ts"],"names":[],"mappings":"AAAA,IAAI,MAAM,GAAuB,EAAE,CAAC;AAEpC,MAAM,sBAAsB,GAAG,CAAC,EAAe,EAAE,EAAE;IAClD,OAAO,EAAE,CAAC,YAAY,CAAC,0BAA0B,CAAC,KAAK,MAAM,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,EAAe,EAAE,EAAE;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAE1C,OAAO,KAAK,CAAC,KAAK,KAAK,KAAK;WACxB,KAAK,CAAC,MAAM,KAAK,KAAK;WACtB,KAAK,CAAC,OAAO,KAAK,GAAG;WACrB,KAAK,CAAC,OAAO,KAAK,MAAM;WACxB,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,SAAsB,EAAE,kBAA4B,EAAE,EAAE;IACzF,IAAI,KAAK,EACR,gBAAgB,EAChB,KAAK,GAAG,CAAC,CAAC;IAEX,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE;QACjC,OAAO;KACP;IAED,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE;QACtC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACvB;IAED,IAAI,SAAS,CAAC,UAAU,EAAE;QACzB,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC;KACxC;SAAM,IAAI,SAAS,YAAY,eAAe,IAAI,SAAS,CAAC,aAAa,EAAE,EAAE;QAC7E,gBAAgB,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;QAC7C,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;KAC5B;SAAM,IAAI,kBAAkB,EAAE;QAC9B,KAAK,GAAG,SAAS,CAAC;KAClB;SAAM;QACN,KAAK,GAAG,SAAS,CAAC,iBAAiB,CAAC;KACpC;IAED,OAAO,KAAK,EAAE;QACb,MAAM,aAAa,GAAgB,KAAoB,CAAC;QACxD,IAAI,CAAC,KAAK,EAAE;YACX,OAAO;SACP;QAED,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,EAAE;YACzB,wBAAwB,CAAC,KAAoB,EAAE,KAAK,CAAC,CAAC;SACtD;QAED,KAAK,GAAG,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,kBAAkB,CAAC;KACnH;AACF,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAAC,SAAsB,EAAE,EAAE;IAC1D,MAAM,GAAG,EAAE,CAAC;IAEZ,wBAAwB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAE1C,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF,eAAe,uBAAuB,CAAC","sourcesContent":["let groups: Array<HTMLElement> = [];\n\nconst isFastNavGroupElemenet = (el: HTMLElement) => {\n\treturn el.getAttribute(\"data-sap-ui-fastnavgroup\") === \"true\";\n};\n\nconst isElementVisible = (el: HTMLElement) => {\n\tconst style = window.getComputedStyle(el);\n\n\treturn style.width !== \"0px\"\n\t\t&& style.height !== \"0px\"\n\t\t&& style.opacity !== \"0\"\n\t\t&& style.display !== \"none\"\n\t\t&& style.visibility !== \"hidden\";\n};\n\nconst findFastNavigationGroups = (container: HTMLElement, startFromContainer?: boolean) => {\n\tlet child,\n\t\tassignedElements,\n\t\tindex = 0;\n\n\tif (!isElementVisible(container)) {\n\t\treturn;\n\t}\n\n\tif (isFastNavGroupElemenet(container)) {\n\t\tgroups.push(container);\n\t}\n\n\tif (container.shadowRoot) {\n\t\tchild = container.shadowRoot.firstChild;\n\t} else if (container instanceof HTMLSlotElement && container.assignedNodes()) {\n\t\tassignedElements = container.assignedNodes();\n\t\tchild = assignedElements[0];\n\t} else if (startFromContainer) {\n\t\tchild = container;\n\t} else {\n\t\tchild = container.firstElementChild;\n\t}\n\n\twhile (child) {\n\t\tconst originalChild: HTMLElement = child as HTMLElement;\n\t\tif (!child) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (child.nodeType === 1) {\n\t\t\tfindFastNavigationGroups(child as HTMLElement, false);\n\t\t}\n\n\t\tchild = assignedElements && assignedElements.length ? assignedElements[++index] : originalChild.nextElementSibling;\n\t}\n};\n\nconst getFastNavigationGroups = (container: HTMLElement) => {\n\tgroups = [];\n\n\tfindFastNavigationGroups(container, true);\n\n\treturn groups;\n};\n\nexport default getFastNavigationGroups;\n"]}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * "" -> ""
3
+ * "noExtension" -> ""
4
+ * "file.txt" -> ".txt"
5
+ * "file.with.many.dots.doc" -> ".doc"
6
+ * ".gitignore" -> ""
7
+ *
8
+ * @param { string } fileName - the file name
9
+ * @returns { string }
10
+ */
11
+ declare const getFileExtension: (fileName: string) => string;
12
+ export default getFileExtension;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * "" -> ""
3
+ * "noExtension" -> ""
4
+ * "file.txt" -> ".txt"
5
+ * "file.with.many.dots.doc" -> ".doc"
6
+ * ".gitignore" -> ""
7
+ *
8
+ * @param { string } fileName - the file name
9
+ * @returns { string }
10
+ */
11
+ const getFileExtension = (fileName) => {
12
+ const dotPos = fileName.lastIndexOf(".");
13
+ if (dotPos < 1) {
14
+ return "";
15
+ }
16
+ return fileName.slice(dotPos);
17
+ };
18
+ export default getFileExtension;
19
+ //# sourceMappingURL=getFileExtension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFileExtension.js","sourceRoot":"","sources":["../../src/util/getFileExtension.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,EAAE;IAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEzC,IAAI,MAAM,GAAG,CAAC,EAAE;QACf,OAAO,EAAE,CAAC;KACV;IAED,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC","sourcesContent":["/**\n * \"\" -> \"\"\n * \"noExtension\" -> \"\"\n * \"file.txt\" -> \".txt\"\n * \"file.with.many.dots.doc\" -> \".doc\"\n * \".gitignore\" -> \"\"\n *\n * @param { string } fileName - the file name\n * @returns { string }\n */\nconst getFileExtension = (fileName: string) => {\n\tconst dotPos = fileName.lastIndexOf(\".\");\n\n\tif (dotPos < 1) {\n\t\treturn \"\";\n\t}\n\n\treturn fileName.slice(dotPos);\n};\n\nexport default getFileExtension;\n"]}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Returns the normalized event target in cases when it has shadow root.
3
+ * @param {Object} target The original event target
4
+ * @returns {Object} The normalized target
5
+ */
6
+ declare const getNormalizedTarget: (target: HTMLElement) => HTMLElement;
7
+ export default getNormalizedTarget;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Returns the normalized event target in cases when it has shadow root.
3
+ * @param {Object} target The original event target
4
+ * @returns {Object} The normalized target
5
+ */
6
+ const getNormalizedTarget = (target) => {
7
+ let element = target;
8
+ if (target.shadowRoot && target.shadowRoot.activeElement) {
9
+ element = target.shadowRoot.activeElement;
10
+ }
11
+ return element;
12
+ };
13
+ export default getNormalizedTarget;
14
+ //# sourceMappingURL=getNormalizedTarget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getNormalizedTarget.js","sourceRoot":"","sources":["../../src/util/getNormalizedTarget.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,MAAmB,EAAE,EAAE;IACnD,IAAI,OAAO,GAAG,MAAM,CAAC;IAErB,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE;QACzD,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,aAA4B,CAAC;KACzD;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC","sourcesContent":["/**\n * Returns the normalized event target in cases when it has shadow root.\n * @param {Object} target The original event target\n * @returns {Object} The normalized target\n */\nconst getNormalizedTarget = (target: HTMLElement) => {\n\tlet element = target;\n\n\tif (target.shadowRoot && target.shadowRoot.activeElement) {\n\t\telement = target.shadowRoot.activeElement as HTMLElement;\n\t}\n\n\treturn element;\n};\n\nexport default getNormalizedTarget;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const getParentElement: (el: HTMLElement) => HTMLElement;
2
+ export default getParentElement;
@@ -0,0 +1,5 @@
1
+ const getParentElement = (el) => {
2
+ return (el.parentElement ? el.parentNode : el.parentNode.host);
3
+ };
4
+ export default getParentElement;
5
+ //# sourceMappingURL=getParentElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getParentElement.js","sourceRoot":"","sources":["../../src/util/getParentElement.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG,CAAC,EAAe,EAAE,EAAE;IAC5C,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAE,EAAE,CAAC,UAAyB,CAAC,IAAI,CAAgB,CAAC;AAC/F,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC","sourcesContent":["const getParentElement = (el: HTMLElement) => {\n\treturn (el.parentElement ? el.parentNode : (el.parentNode as ShadowRoot).host) as HTMLElement;\n};\n\nexport default getParentElement;\n"]}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Returns a singleton HTML element, inserted in given parent element of HTML page,
3
+ * used mostly to store and share global resources between multiple UI5 Web Components runtimes.
4
+ *
5
+ * @param { string } tag the element tag/selector
6
+ * @param { HTMLElement } parentElement the parent element to insert the singleton element instance
7
+ * @param { Function } createEl a factory function for the element instantiation, by default document.createElement is used
8
+ * @returns { Element }
9
+ */
10
+ declare const getSingletonElementInstance: (tag: string, parentElement?: HTMLElement, createEl?: () => Element) => Element;
11
+ export default getSingletonElementInstance;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Returns a singleton HTML element, inserted in given parent element of HTML page,
3
+ * used mostly to store and share global resources between multiple UI5 Web Components runtimes.
4
+ *
5
+ * @param { string } tag the element tag/selector
6
+ * @param { HTMLElement } parentElement the parent element to insert the singleton element instance
7
+ * @param { Function } createEl a factory function for the element instantiation, by default document.createElement is used
8
+ * @returns { Element }
9
+ */
10
+ const getSingletonElementInstance = (tag, parentElement = document.body, createEl) => {
11
+ let el = document.querySelector(tag);
12
+ if (el) {
13
+ return el;
14
+ }
15
+ el = createEl ? createEl() : document.createElement(tag);
16
+ return parentElement.insertBefore(el, parentElement.firstChild);
17
+ };
18
+ export default getSingletonElementInstance;
19
+ //# sourceMappingURL=getSingletonElementInstance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSingletonElementInstance.js","sourceRoot":"","sources":["../../src/util/getSingletonElementInstance.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,2BAA2B,GAAG,CAAC,GAAW,EAAE,gBAA6B,QAAQ,CAAC,IAAI,EAAE,QAAwB,EAAE,EAAE;IACzH,IAAI,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,EAAE,EAAE;QACP,OAAO,EAAE,CAAC;KACV;IAED,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAEzD,OAAO,aAAa,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,eAAe,2BAA2B,CAAC","sourcesContent":["/**\n * Returns a singleton HTML element, inserted in given parent element of HTML page,\n * used mostly to store and share global resources between multiple UI5 Web Components runtimes.\n *\n * @param { string } tag the element tag/selector\n * @param { HTMLElement } parentElement the parent element to insert the singleton element instance\n * @param { Function } createEl a factory function for the element instantiation, by default document.createElement is used\n * @returns { Element }\n */\nconst getSingletonElementInstance = (tag: string, parentElement: HTMLElement = document.body, createEl?: () => Element) => {\n\tlet el = document.querySelector(tag);\n\n\tif (el) {\n\t\treturn el;\n\t}\n\n\tel = createEl ? createEl() : document.createElement(tag);\n\n\treturn parentElement.insertBefore(el, parentElement.firstChild);\n};\n\nexport default getSingletonElementInstance;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const isElementClickable: (el: HTMLElement) => boolean;
2
+ export default isElementClickable;
@@ -0,0 +1,16 @@
1
+ const rClickable = /^(?:a|area)$/i;
2
+ const rFocusable = /^(?:input|select|textarea|button)$/i;
3
+ const isElementClickable = (el) => {
4
+ if (el.disabled) {
5
+ return false;
6
+ }
7
+ const tabIndex = el.getAttribute("tabindex");
8
+ if (tabIndex !== null && tabIndex !== undefined) {
9
+ return parseInt(tabIndex) >= 0;
10
+ }
11
+ return rFocusable.test(el.nodeName)
12
+ || (rClickable.test(el.nodeName)
13
+ && !!el.href);
14
+ };
15
+ export default isElementClickable;
16
+ //# sourceMappingURL=isElementClickable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isElementClickable.js","sourceRoot":"","sources":["../../src/util/isElementClickable.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,eAAe,CAAC;AACnC,MAAM,UAAU,GAAG,qCAAqC,CAAC;AAEzD,MAAM,kBAAkB,GAAG,CAAC,EAAe,EAAW,EAAE;IACvD,IAAK,EAAwB,CAAC,QAAQ,EAAE;QACvC,OAAO,KAAK,CAAC;KACb;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE;QAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC/B;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;WAC/B,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;eAC7B,CAAC,CAAE,EAAsB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC","sourcesContent":["const rClickable = /^(?:a|area)$/i;\nconst rFocusable = /^(?:input|select|textarea|button)$/i;\n\nconst isElementClickable = (el: HTMLElement): boolean => {\n\tif ((el as HTMLButtonElement).disabled) {\n\t\treturn false;\n\t}\n\n\tconst tabIndex = el.getAttribute(\"tabindex\");\n\tif (tabIndex !== null && tabIndex !== undefined) {\n\t\treturn parseInt(tabIndex) >= 0;\n\t}\n\n\treturn rFocusable.test(el.nodeName)\n\t\t|| (rClickable.test(el.nodeName)\n\t\t&& !!(el as HTMLLinkElement).href);\n};\n\nexport default isElementClickable;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const isElementContainingBlock: (el: HTMLElement) => boolean | "";
2
+ export default isElementContainingBlock;
@@ -0,0 +1,11 @@
1
+ const isElementContainingBlock = (el) => {
2
+ const computedStyle = getComputedStyle(el);
3
+ return ["size", "inline-size"].indexOf(computedStyle.containerType) > -1
4
+ || ["transform", "perspective"].indexOf(computedStyle.willChange) > -1
5
+ || ["layout", "paint", "strict", "content"].indexOf(computedStyle.contain) > -1
6
+ || (computedStyle.transform && computedStyle.transform !== "none")
7
+ || (computedStyle.perspective && computedStyle.perspective !== "none")
8
+ || (computedStyle.backdropFilter && computedStyle.backdropFilter !== "none");
9
+ };
10
+ export default isElementContainingBlock;
11
+ //# sourceMappingURL=isElementContainingBlock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isElementContainingBlock.js","sourceRoot":"","sources":["../../src/util/isElementContainingBlock.ts"],"names":[],"mappings":"AAAA,MAAM,wBAAwB,GAAG,CAAC,EAAe,EAAE,EAAE;IACpD,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAE3C,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;WACrE,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;WACnE,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;WAC5E,CAAC,aAAa,CAAC,SAAS,IAAI,aAAa,CAAC,SAAS,KAAK,MAAM,CAAC;WAC/D,CAAC,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,WAAW,KAAK,MAAM,CAAC;WACnE,CAAC,aAAa,CAAC,cAAc,IAAI,aAAa,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC;AAC9E,CAAC,CAAC;AAEF,eAAe,wBAAwB,CAAC","sourcesContent":["const isElementContainingBlock = (el: HTMLElement) => {\n\tconst computedStyle = getComputedStyle(el);\n\n\treturn [\"size\", \"inline-size\"].indexOf(computedStyle.containerType) > -1\n\t|| [\"transform\", \"perspective\"].indexOf(computedStyle.willChange) > -1\n\t|| [\"layout\", \"paint\", \"strict\", \"content\"].indexOf(computedStyle.contain) > -1\n\t|| (computedStyle.transform && computedStyle.transform !== \"none\")\n\t|| (computedStyle.perspective && computedStyle.perspective !== \"none\")\n\t|| (computedStyle.backdropFilter && computedStyle.backdropFilter !== \"none\");\n};\n\nexport default isElementContainingBlock;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const isElementHidden: (el: HTMLElement) => boolean;
2
+ export default isElementHidden;
@@ -0,0 +1,8 @@
1
+ const isElementHidden = (el) => {
2
+ if (el.nodeName === "SLOT") {
3
+ return false;
4
+ }
5
+ return (el.offsetWidth <= 0 && el.offsetHeight <= 0) || (el.style && el.style.visibility === "hidden");
6
+ };
7
+ export default isElementHidden;
8
+ //# sourceMappingURL=isElementHidden.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isElementHidden.js","sourceRoot":"","sources":["../../src/util/isElementHidden.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,EAAE;IAC3C,IAAI,EAAE,CAAC,QAAQ,KAAK,MAAM,EAAE;QAC3B,OAAO,KAAK,CAAC;KACb;IAED,OAAO,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC;AACxG,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["const isElementHidden = (el: HTMLElement) => {\n\tif (el.nodeName === \"SLOT\") {\n\t\treturn false;\n\t}\n\n\treturn (el.offsetWidth <= 0 && el.offsetHeight <= 0) || (el.style && el.style.visibility === \"hidden\");\n};\n\nexport default isElementHidden;\n"]}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Determines if the element is within the viewport.
3
+ * @param el {HTMLElement}
4
+ */
5
+ declare const isElementInView: (el: HTMLElement) => boolean;
6
+ export default isElementInView;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Determines if the element is within the viewport.
3
+ * @param el {HTMLElement}
4
+ */
5
+ const isElementInView = (el) => {
6
+ const rect = el.getBoundingClientRect();
7
+ return (rect.top >= 0 && rect.left >= 0
8
+ && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight)
9
+ && rect.right <= (window.innerWidth || document.documentElement.clientWidth));
10
+ };
11
+ export default isElementInView;
12
+ //# sourceMappingURL=isElementInView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isElementInView.js","sourceRoot":"","sources":["../../src/util/isElementInView.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,EAAE;IAC3C,MAAM,IAAI,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;IAExC,OAAO,CACN,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC;WAC3B,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC;WAC5E,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC,CAC7E,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["/**\n * Determines if the element is within the viewport.\n * @param el {HTMLElement}\n */\nconst isElementInView = (el: HTMLElement) => {\n\tconst rect = el.getBoundingClientRect();\n\n\treturn (\n\t\trect.top >= 0 && rect.left >= 0\n\t\t\t&& rect.bottom <= (window.innerHeight || document.documentElement.clientHeight)\n\t\t\t&& rect.right <= (window.innerWidth || document.documentElement.clientWidth)\n\t);\n};\n\nexport default isElementInView;\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Returns if the HTMLElement is tabbable.
3
+ *
4
+ * @public
5
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
6
+ * @returns { boolean } true if the element is tabbable or false - if not
7
+ */
8
+ declare const isElementTabbable: (el: HTMLElement) => boolean;
9
+ export default isElementTabbable;
@@ -0,0 +1,30 @@
1
+ import isElementHidden from "./isElementHidden.js";
2
+ /**
3
+ * Returns if the HTMLElement is tabbable.
4
+ *
5
+ * @public
6
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
7
+ * @returns { boolean } true if the element is tabbable or false - if not
8
+ */
9
+ const isElementTabbable = (el) => {
10
+ if (!el) {
11
+ return false;
12
+ }
13
+ const nodeName = el.nodeName.toLowerCase();
14
+ if (el.hasAttribute("data-sap-no-tab-ref")) {
15
+ return false;
16
+ }
17
+ if (isElementHidden(el)) {
18
+ return false;
19
+ }
20
+ const tabIndex = el.getAttribute("tabindex");
21
+ if (tabIndex !== null && tabIndex !== undefined) {
22
+ return parseInt(tabIndex) >= 0;
23
+ }
24
+ if (nodeName === "a" || /input|select|textarea|button|object/.test(nodeName)) {
25
+ return !el.disabled;
26
+ }
27
+ return false;
28
+ };
29
+ export default isElementTabbable;
30
+ //# sourceMappingURL=isElementTabbable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isElementTabbable.js","sourceRoot":"","sources":["../../src/util/isElementTabbable.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,sBAAsB,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,iBAAiB,GAAG,CAAC,EAAe,EAAW,EAAE;IACtD,IAAI,CAAC,EAAE,EAAE;QACR,OAAO,KAAK,CAAC;KACb;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAE3C,IAAI,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE;QAC3C,OAAO,KAAK,CAAC;KACb;IAED,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC;KACb;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE;QAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC/B;IAED,IAAI,QAAQ,KAAK,GAAG,IAAI,qCAAqC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QAC7E,OAAO,CAAE,EAAsB,CAAC,QAAQ,CAAC;KACzC;IAED,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC","sourcesContent":["import isElementHidden from \"./isElementHidden.js\";\n\n/**\n * Returns if the HTMLElement is tabbable.\n *\n * @public\n * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)\n * @returns { boolean } true if the element is tabbable or false - if not\n */\nconst isElementTabbable = (el: HTMLElement): boolean => {\n\tif (!el) {\n\t\treturn false;\n\t}\n\n\tconst nodeName = el.nodeName.toLowerCase();\n\n\tif (el.hasAttribute(\"data-sap-no-tab-ref\")) {\n\t\treturn false;\n\t}\n\n\tif (isElementHidden(el)) {\n\t\treturn false;\n\t}\n\n\tconst tabIndex = el.getAttribute(\"tabindex\");\n\tif (tabIndex !== null && tabIndex !== undefined) {\n\t\treturn parseInt(tabIndex) >= 0;\n\t}\n\n\tif (nodeName === \"a\" || /input|select|textarea|button|object/.test(nodeName)) {\n\t\treturn !(el as HTMLLinkElement).disabled;\n\t}\n\n\treturn false;\n};\n\nexport default isElementTabbable;\n"]}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Checks whether a property name is valid (does not collide with existing DOM API properties)
3
+ *
4
+ * @param name
5
+ * @returns {boolean}
6
+ */
7
+ declare const isValidPropertyName: (name: string) => boolean;
8
+ export default isValidPropertyName;
@@ -1,20 +1,28 @@
1
+ // Note: disabled is present in IE so we explicitly allow it here.
2
+ // Others, such as title/hidden, we explicitly override, so valid too
3
+ const allowList = [
4
+ "disabled",
5
+ "title",
6
+ "hidden",
7
+ "role",
8
+ "draggable",
9
+ ];
1
10
  /**
2
11
  * Checks whether a property name is valid (does not collide with existing DOM API properties)
3
- * Note: disabled is present in IE so we explicitly allow it here.
4
12
  *
5
13
  * @param name
6
14
  * @returns {boolean}
7
15
  */
8
- const isValidPropertyName = name => {
9
- if (name === "disabled") {
10
- return true;
11
- }
12
- const classes = [
13
- HTMLElement,
14
- Element,
15
- Node,
16
- ];
17
- return !classes.some(klass => klass.prototype.hasOwnProperty(name)); // eslint-disable-line
16
+ const isValidPropertyName = (name) => {
17
+ if (allowList.includes(name) || name.startsWith("aria")) {
18
+ return true;
19
+ }
20
+ const classes = [
21
+ HTMLElement,
22
+ Element,
23
+ Node,
24
+ ];
25
+ return !classes.some(klass => klass.prototype.hasOwnProperty(name)); // eslint-disable-line
18
26
  };
19
-
20
27
  export default isValidPropertyName;
28
+ //# sourceMappingURL=isValidPropertyName.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isValidPropertyName.js","sourceRoot":"","sources":["../../src/util/isValidPropertyName.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,qEAAqE;AACrE,MAAM,SAAS,GAAG;IACjB,UAAU;IACV,OAAO;IACP,QAAQ;IACR,MAAM;IACN,WAAW;CACX,CAAC;AAEF;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC5C,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACxD,OAAO,IAAI,CAAC;KACZ;IACD,MAAM,OAAO,GAAG;QACf,WAAW;QACX,OAAO;QACP,IAAI;KACJ,CAAC;IACF,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,sBAAsB;AAC5F,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC","sourcesContent":["// Note: disabled is present in IE so we explicitly allow it here.\n// Others, such as title/hidden, we explicitly override, so valid too\nconst allowList = [\n\t\"disabled\",\n\t\"title\",\n\t\"hidden\",\n\t\"role\",\n\t\"draggable\",\n];\n\n/**\n * Checks whether a property name is valid (does not collide with existing DOM API properties)\n *\n * @param name\n * @returns {boolean}\n */\nconst isValidPropertyName = (name: string) => {\n\tif (allowList.includes(name) || name.startsWith(\"aria\")) {\n\t\treturn true;\n\t}\n\tconst classes = [\n\t\tHTMLElement,\n\t\tElement,\n\t\tNode,\n\t];\n\treturn !classes.some(klass => klass.prototype.hasOwnProperty(name)); // eslint-disable-line\n};\n\nexport default isValidPropertyName;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const whenDOMReady: () => Promise<void>;
2
+ export default whenDOMReady;
@@ -1,13 +1,14 @@
1
1
  const whenDOMReady = () => {
2
- return new Promise(resolve => {
3
- if (document.body) {
4
- resolve();
5
- } else {
6
- document.addEventListener("DOMContentLoaded", () => {
7
- resolve();
8
- });
9
- }
10
- });
2
+ return new Promise(resolve => {
3
+ if (document.body) {
4
+ resolve();
5
+ }
6
+ else {
7
+ document.addEventListener("DOMContentLoaded", () => {
8
+ resolve();
9
+ });
10
+ }
11
+ });
11
12
  };
12
-
13
13
  export default whenDOMReady;
14
+ //# sourceMappingURL=whenDOMReady.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whenDOMReady.js","sourceRoot":"","sources":["../../src/util/whenDOMReady.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,GAAG,EAAE;IACzB,OAAO,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;QAClC,IAAI,QAAQ,CAAC,IAAI,EAAE;YAClB,OAAO,EAAE,CAAC;SACV;aAAM;YACN,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;gBAClD,OAAO,EAAE,CAAC;YACX,CAAC,CAAC,CAAC;SACH;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["const whenDOMReady = () => {\n\treturn new Promise<void>(resolve => {\n\t\tif (document.body) {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tdocument.addEventListener(\"DOMContentLoaded\", () => {\n\t\t\t\tresolve();\n\t\t\t});\n\t\t}\n\t});\n};\n\nexport default whenDOMReady;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const willShowContent: (childNodes: Array<Node>) => boolean;
2
+ export default willShowContent;
@@ -0,0 +1,7 @@
1
+ const willShowContent = (childNodes) => {
2
+ return Array.from(childNodes).filter(node => {
3
+ return node.nodeType !== Node.COMMENT_NODE && (node.nodeType !== Node.TEXT_NODE || (node.nodeValue || "").trim().length !== 0);
4
+ }).length > 0;
5
+ };
6
+ export default willShowContent;
7
+ //# sourceMappingURL=willShowContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"willShowContent.js","sourceRoot":"","sources":["../../src/util/willShowContent.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,UAAuB,EAAE,EAAE;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC3C,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAChI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACf,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["const willShowContent = (childNodes: Array<Node>) => {\n\treturn Array.from(childNodes).filter(node => {\n\t\treturn node.nodeType !== Node.COMMENT_NODE && (node.nodeType !== Node.TEXT_NODE || (node.nodeValue || \"\").trim().length !== 0);\n\t}).length > 0;\n};\n\nexport default willShowContent;\n"]}
@@ -0,0 +1,2 @@
1
+ declare const validateThemeRoot: (themeRoot: string) => string | undefined;
2
+ export default validateThemeRoot;
@@ -0,0 +1,48 @@
1
+ const getMetaTagValue = (metaTagName) => {
2
+ const metaTag = document.querySelector(`META[name="${metaTagName}"]`), metaTagContent = metaTag && metaTag.getAttribute("content");
3
+ return metaTagContent;
4
+ };
5
+ const validateThemeOrigin = (origin) => {
6
+ const allowedOrigins = getMetaTagValue("sap-allowedThemeOrigins");
7
+ return allowedOrigins && allowedOrigins.split(",").some(allowedOrigin => {
8
+ return allowedOrigin === "*" || origin === allowedOrigin.trim();
9
+ });
10
+ };
11
+ const buildCorrectUrl = (oldUrl, newOrigin) => {
12
+ const oldUrlPath = new URL(oldUrl).pathname;
13
+ return new URL(oldUrlPath, newOrigin).toString();
14
+ };
15
+ const validateThemeRoot = (themeRoot) => {
16
+ let resultUrl;
17
+ try {
18
+ if (themeRoot.startsWith(".") || themeRoot.startsWith("/")) {
19
+ // Handle relative url
20
+ // new URL("/newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
21
+ // new URL("./newExmPath", "http://example.com/exmPath") => http://example.com/exmPath/newExmPath
22
+ // new URL("../newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
23
+ resultUrl = new URL(themeRoot, window.location.href).toString();
24
+ }
25
+ else {
26
+ const themeRootURL = new URL(themeRoot);
27
+ const origin = themeRootURL.origin;
28
+ if (origin && validateThemeOrigin(origin)) {
29
+ // If origin is allowed, use it
30
+ resultUrl = themeRootURL.toString();
31
+ }
32
+ else {
33
+ // If origin is not allow and the URL is not relative, we have to replace the origin
34
+ // with current location
35
+ resultUrl = buildCorrectUrl(themeRootURL.toString(), window.location.href);
36
+ }
37
+ }
38
+ if (!resultUrl.endsWith("/")) {
39
+ resultUrl = `${resultUrl}/`;
40
+ }
41
+ return `${resultUrl}UI5/`;
42
+ }
43
+ catch (e) {
44
+ // Catch if URL is not correct
45
+ }
46
+ };
47
+ export default validateThemeRoot;
48
+ //# sourceMappingURL=validateThemeRoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateThemeRoot.js","sourceRoot":"","sources":["../src/validateThemeRoot.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,WAAmB,EAAE,EAAE;IAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,cAAc,WAAW,IAAI,CAAC,EACpE,cAAc,GAAG,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAE7D,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC9C,MAAM,cAAc,GAAG,eAAe,CAAC,yBAAyB,CAAC,CAAC;IAElE,OAAO,cAAc,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;QACvE,OAAO,aAAa,KAAK,GAAG,IAAI,MAAM,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,SAAiB,EAAE,EAAE;IAC7D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;IAE5C,OAAO,IAAI,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,EAAE;IAC/C,IAAI,SAAS,CAAC;IAEd,IAAI;QACH,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YAC3D,sBAAsB;YACtB,wFAAwF;YACxF,iGAAiG;YACjG,0FAA0F;YAC1F,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;SAChE;aAAM;YACN,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;YAEnC,IAAI,MAAM,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;gBAC1C,+BAA+B;gBAC/B,SAAS,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;aACpC;iBAAM;gBACN,oFAAoF;gBACpF,wBAAwB;gBACxB,SAAS,GAAG,eAAe,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAC3E;SACD;QAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC7B,SAAS,GAAG,GAAG,SAAS,GAAG,CAAC;SAC5B;QAED,OAAO,GAAG,SAAS,MAAM,CAAC;KAC1B;IAAC,OAAO,CAAC,EAAE;QACX,8BAA8B;KAC9B;AACF,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC","sourcesContent":["const getMetaTagValue = (metaTagName: string) => {\n\tconst metaTag = document.querySelector(`META[name=\"${metaTagName}\"]`),\n\t\tmetaTagContent = metaTag && metaTag.getAttribute(\"content\");\n\n\treturn metaTagContent;\n};\n\nconst validateThemeOrigin = (origin: string) => {\n\tconst allowedOrigins = getMetaTagValue(\"sap-allowedThemeOrigins\");\n\n\treturn allowedOrigins && allowedOrigins.split(\",\").some(allowedOrigin => {\n\t\treturn allowedOrigin === \"*\" || origin === allowedOrigin.trim();\n\t});\n};\n\nconst buildCorrectUrl = (oldUrl: string, newOrigin: string) => {\n\tconst oldUrlPath = new URL(oldUrl).pathname;\n\n\treturn new URL(oldUrlPath, newOrigin).toString();\n};\n\nconst validateThemeRoot = (themeRoot: string) => {\n\tlet resultUrl;\n\n\ttry {\n\t\tif (themeRoot.startsWith(\".\") || themeRoot.startsWith(\"/\")) {\n\t\t\t// Handle relative url\n\t\t\t// new URL(\"/newExmPath\", \"http://example.com/exmPath\") => http://example.com/newExmPath\n\t\t\t// new URL(\"./newExmPath\", \"http://example.com/exmPath\") => http://example.com/exmPath/newExmPath\n\t\t\t// new URL(\"../newExmPath\", \"http://example.com/exmPath\") => http://example.com/newExmPath\n\t\t\tresultUrl = new URL(themeRoot, window.location.href).toString();\n\t\t} else {\n\t\t\tconst themeRootURL = new URL(themeRoot);\n\t\t\tconst origin = themeRootURL.origin;\n\n\t\t\tif (origin && validateThemeOrigin(origin)) {\n\t\t\t\t// If origin is allowed, use it\n\t\t\t\tresultUrl = themeRootURL.toString();\n\t\t\t} else {\n\t\t\t\t// If origin is not allow and the URL is not relative, we have to replace the origin\n\t\t\t\t// with current location\n\t\t\t\tresultUrl = buildCorrectUrl(themeRootURL.toString(), window.location.href);\n\t\t\t}\n\t\t}\n\n\t\tif (!resultUrl.endsWith(\"/\")) {\n\t\t\tresultUrl = `${resultUrl}/`;\n\t\t}\n\n\t\treturn `${resultUrl}UI5/`;\n\t} catch (e) {\n\t\t// Catch if URL is not correct\n\t}\n};\n\nexport default validateThemeRoot;\n"]}