@ui5/webcomponents-base 0.0.0-701b14e36 → 0.0.0-760fbb471

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 (601) hide show
  1. package/.eslintignore +2 -0
  2. package/CHANGELOG.md +265 -0
  3. package/README.md +28 -6
  4. package/bundle.esm.js +15 -11
  5. package/{src/AssetRegistry.js → dist/AssetRegistry.d.ts} +1 -7
  6. package/dist/AssetRegistry.js +2 -7
  7. package/dist/AssetRegistry.js.map +1 -0
  8. package/dist/Boot.d.ts +9 -0
  9. package/dist/Boot.js +56 -44
  10. package/dist/Boot.js.map +1 -0
  11. package/{src/CSP.js → dist/CSP.d.ts} +8 -37
  12. package/dist/CSP.js +16 -24
  13. package/dist/CSP.js.map +1 -0
  14. package/dist/CustomElementsRegistry.d.ts +5 -0
  15. package/dist/CustomElementsRegistry.js +66 -83
  16. package/dist/CustomElementsRegistry.js.map +1 -0
  17. package/dist/CustomElementsScope.d.ts +7 -0
  18. package/dist/CustomElementsScope.js +10 -29
  19. package/dist/CustomElementsScope.js.map +1 -0
  20. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  21. package/dist/CustomElementsScopeUtils.js +34 -52
  22. package/dist/CustomElementsScopeUtils.js.map +1 -0
  23. package/dist/DOMObserver.d.ts +11 -0
  24. package/dist/DOMObserver.js +12 -54
  25. package/dist/DOMObserver.js.map +1 -0
  26. package/dist/Device.d.ts +12 -0
  27. package/dist/Device.js +145 -100
  28. package/dist/Device.js.map +1 -0
  29. package/dist/EventProvider.d.ts +25 -0
  30. package/dist/EventProvider.js +67 -82
  31. package/dist/EventProvider.js.map +1 -0
  32. package/dist/FeaturesRegistry.d.ts +3 -0
  33. package/dist/FeaturesRegistry.js +5 -10
  34. package/dist/FeaturesRegistry.js.map +1 -0
  35. package/dist/FontFace.d.ts +2 -0
  36. package/dist/FontFace.js +14 -19
  37. package/dist/FontFace.js.map +1 -0
  38. package/dist/InitialConfiguration.d.ts +22 -0
  39. package/dist/InitialConfiguration.js +112 -131
  40. package/dist/InitialConfiguration.js.map +1 -0
  41. package/dist/Keys.d.ts +57 -0
  42. package/dist/Keys.js +174 -291
  43. package/dist/Keys.js.map +1 -0
  44. package/dist/ManagedStyles.d.ts +8 -0
  45. package/dist/ManagedStyles.js +62 -68
  46. package/dist/ManagedStyles.js.map +1 -0
  47. package/dist/MarkedEvents.d.ts +9 -0
  48. package/dist/MarkedEvents.js +15 -0
  49. package/dist/MarkedEvents.js.map +1 -0
  50. package/dist/MediaRange.d.ts +37 -0
  51. package/dist/MediaRange.js +54 -65
  52. package/dist/MediaRange.js.map +1 -0
  53. package/dist/PropertiesFileFormat.d.ts +8 -0
  54. package/dist/PropertiesFileFormat.js +72 -82
  55. package/dist/PropertiesFileFormat.js.map +1 -0
  56. package/dist/Render.d.ts +47 -0
  57. package/dist/Render.js +81 -113
  58. package/dist/Render.js.map +1 -0
  59. package/dist/RenderQueue.d.ts +19 -0
  60. package/dist/RenderQueue.js +52 -62
  61. package/dist/RenderQueue.js.map +1 -0
  62. package/dist/Runtimes.d.ts +27 -0
  63. package/dist/Runtimes.js +49 -70
  64. package/dist/Runtimes.js.map +1 -0
  65. package/dist/StaticArea.d.ts +0 -0
  66. package/dist/StaticArea.js +4 -1
  67. package/dist/StaticArea.js.map +1 -0
  68. package/dist/StaticAreaItem.d.ts +36 -0
  69. package/dist/StaticAreaItem.js +84 -86
  70. package/dist/StaticAreaItem.js.map +1 -0
  71. package/dist/SystemCSSVars.d.ts +2 -0
  72. package/dist/SystemCSSVars.js +4 -5
  73. package/dist/SystemCSSVars.js.map +1 -0
  74. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  75. package/dist/Theming.js +1 -1
  76. package/dist/Theming.js.map +1 -0
  77. package/dist/UI5Element.d.ts +378 -0
  78. package/dist/UI5Element.js +917 -995
  79. package/dist/UI5Element.js.map +1 -0
  80. package/dist/UI5ElementMetadata.d.ts +150 -0
  81. package/dist/UI5ElementMetadata.js +277 -313
  82. package/dist/UI5ElementMetadata.js.map +1 -0
  83. package/dist/animations/AnimationQueue.d.ts +8 -0
  84. package/dist/animations/AnimationQueue.js +31 -38
  85. package/dist/animations/AnimationQueue.js.map +1 -0
  86. package/dist/animations/animate.d.ts +14 -0
  87. package/dist/animations/animate.js +46 -51
  88. package/dist/animations/animate.js.map +1 -0
  89. package/dist/animations/scroll.d.ts +5 -0
  90. package/dist/animations/scroll.js +18 -27
  91. package/dist/animations/scroll.js.map +1 -0
  92. package/dist/animations/slideDown.d.ts +5 -0
  93. package/dist/animations/slideDown.js +53 -78
  94. package/dist/animations/slideDown.js.map +1 -0
  95. package/dist/animations/slideUp.d.ts +5 -0
  96. package/dist/animations/slideUp.js +49 -70
  97. package/dist/animations/slideUp.js.map +1 -0
  98. package/dist/api.json +1 -0
  99. package/dist/asset-registries/Icons.d.ts +30 -0
  100. package/dist/asset-registries/Icons.js +88 -119
  101. package/dist/asset-registries/Icons.js.map +1 -0
  102. package/dist/asset-registries/Illustrations.d.ts +17 -0
  103. package/dist/asset-registries/Illustrations.js +41 -25
  104. package/dist/asset-registries/Illustrations.js.map +1 -0
  105. package/dist/asset-registries/LocaleData.d.ts +7 -0
  106. package/dist/asset-registries/LocaleData.js +104 -132
  107. package/dist/asset-registries/LocaleData.js.map +1 -0
  108. package/dist/asset-registries/Themes.d.ts +11 -0
  109. package/dist/asset-registries/Themes.js +38 -68
  110. package/dist/asset-registries/Themes.js.map +1 -0
  111. package/dist/asset-registries/i18n.d.ts +23 -0
  112. package/dist/asset-registries/i18n.js +61 -81
  113. package/dist/asset-registries/i18n.js.map +1 -0
  114. package/dist/assets/Boot.34b7cea0.css +1 -0
  115. package/dist/assets/Boot.412e1d69.js +9 -0
  116. package/dist/assets/bundle.esm.189c8cd6.js +52 -0
  117. package/dist/assets-meta/IconCollectionsAlias.d.ts +31 -0
  118. package/dist/assets-meta/IconCollectionsAlias.js +30 -10
  119. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  120. package/dist/config/AnimationMode.d.ts +14 -0
  121. package/dist/config/AnimationMode.js +21 -18
  122. package/dist/config/AnimationMode.js.map +1 -0
  123. package/dist/config/CalendarType.d.ts +8 -0
  124. package/dist/config/CalendarType.js +13 -12
  125. package/dist/config/CalendarType.js.map +1 -0
  126. package/dist/config/FormatSettings.d.ts +15 -0
  127. package/dist/config/FormatSettings.js +15 -9
  128. package/dist/config/FormatSettings.js.map +1 -0
  129. package/dist/config/Icons.d.ts +55 -0
  130. package/dist/config/Icons.js +88 -37
  131. package/dist/config/Icons.js.map +1 -0
  132. package/dist/config/Language.d.ts +40 -0
  133. package/dist/config/Language.js +43 -43
  134. package/dist/config/Language.js.map +1 -0
  135. package/dist/config/NoConflict.d.ts +20 -0
  136. package/dist/config/NoConflict.js +40 -41
  137. package/dist/config/NoConflict.js.map +1 -0
  138. package/dist/config/RTL.d.ts +7 -0
  139. package/dist/config/RTL.js +26 -20
  140. package/dist/config/RTL.js.map +1 -0
  141. package/dist/config/Theme.d.ts +37 -0
  142. package/dist/config/Theme.js +46 -36
  143. package/dist/config/Theme.js.map +1 -0
  144. package/dist/config/ThemeRoots.d.ts +4 -0
  145. package/dist/config/ThemeRoots.js +28 -0
  146. package/dist/config/ThemeRoots.js.map +1 -0
  147. package/dist/css/BusyIndicator.css +4 -0
  148. package/dist/css/FontFace.css +9 -18
  149. package/dist/decorators/customElement.d.ts +23 -0
  150. package/dist/decorators/customElement.js +31 -0
  151. package/dist/decorators/customElement.js.map +1 -0
  152. package/dist/decorators/event.d.ts +10 -0
  153. package/dist/decorators/event.js +24 -0
  154. package/dist/decorators/event.js.map +1 -0
  155. package/dist/decorators/property.d.ts +9 -0
  156. package/dist/decorators/property.js +24 -0
  157. package/dist/decorators/property.js.map +1 -0
  158. package/dist/decorators/slot.d.ts +9 -0
  159. package/dist/decorators/slot.js +37 -0
  160. package/dist/decorators/slot.js.map +1 -0
  161. package/dist/delegate/ItemNavigation.d.ts +113 -0
  162. package/dist/delegate/ItemNavigation.js +277 -312
  163. package/dist/delegate/ItemNavigation.js.map +1 -0
  164. package/dist/delegate/ResizeHandler.d.ts +25 -0
  165. package/dist/delegate/ResizeHandler.js +70 -91
  166. package/dist/delegate/ResizeHandler.js.map +1 -0
  167. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  168. package/dist/delegate/ScrollEnablement.js +157 -180
  169. package/dist/delegate/ScrollEnablement.js.map +1 -0
  170. package/dist/features/F6Navigation.d.ts +19 -0
  171. package/dist/features/F6Navigation.js +145 -100
  172. package/dist/features/F6Navigation.js.map +1 -0
  173. package/dist/features/LegacyDateFormats.d.ts +18 -0
  174. package/dist/features/LegacyDateFormats.js +20 -0
  175. package/dist/features/LegacyDateFormats.js.map +1 -0
  176. package/dist/features/OpenUI5Element.d.ts +9 -0
  177. package/dist/features/OpenUI5Element.js +5 -0
  178. package/dist/features/OpenUI5Element.js.map +1 -0
  179. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  180. package/dist/features/OpenUI5Enablement.js +89 -112
  181. package/dist/features/OpenUI5Enablement.js.map +1 -0
  182. package/dist/features/OpenUI5Support.d.ts +25 -0
  183. package/dist/features/OpenUI5Support.js +92 -119
  184. package/dist/features/OpenUI5Support.js.map +1 -0
  185. package/dist/generated/VersionInfo.js +3 -3
  186. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  187. package/dist/generated/css/BusyIndicator.css.js +7 -5
  188. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  189. package/dist/generated/css/FontFace.css.d.ts +3 -0
  190. package/dist/generated/css/FontFace.css.js +7 -5
  191. package/dist/generated/css/FontFace.css.js.map +1 -0
  192. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  193. package/dist/generated/css/OverrideFontFace.css.js +7 -5
  194. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  195. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  196. package/dist/generated/css/SystemCSSVars.css.js +7 -5
  197. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  198. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +11 -0
  199. package/dist/getSharedResource.d.ts +11 -0
  200. package/dist/getSharedResource.js +21 -17
  201. package/dist/getSharedResource.js.map +1 -0
  202. package/dist/global.d.ts +38 -0
  203. package/dist/i18nBundle.d.ts +43 -0
  204. package/dist/i18nBundle.js +56 -64
  205. package/dist/i18nBundle.js.map +1 -0
  206. package/dist/locale/Locale.d.ts +22 -0
  207. package/dist/locale/Locale.js +75 -87
  208. package/dist/locale/Locale.js.map +1 -0
  209. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  210. package/dist/locale/RTLAwareRegistry.js +6 -11
  211. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  212. package/dist/locale/applyDirection.d.ts +10 -0
  213. package/dist/locale/applyDirection.js +7 -7
  214. package/dist/locale/applyDirection.js.map +1 -0
  215. package/dist/locale/directionChange.d.ts +15 -0
  216. package/dist/locale/directionChange.js +7 -15
  217. package/dist/locale/directionChange.js.map +1 -0
  218. package/dist/locale/getEffectiveDir.d.ts +2 -0
  219. package/dist/locale/getEffectiveDir.js +20 -24
  220. package/dist/locale/getEffectiveDir.js.map +1 -0
  221. package/dist/locale/getLocale.d.ts +7 -0
  222. package/dist/locale/getLocale.js +26 -29
  223. package/dist/locale/getLocale.js.map +1 -0
  224. package/dist/locale/languageChange.d.ts +5 -0
  225. package/dist/locale/languageChange.js +8 -16
  226. package/dist/locale/languageChange.js.map +1 -0
  227. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  228. package/dist/locale/nextFallbackLocale.js +15 -19
  229. package/dist/locale/nextFallbackLocale.js.map +1 -0
  230. package/dist/locale/normalizeLocale.d.ts +7 -0
  231. package/dist/locale/normalizeLocale.js +34 -41
  232. package/dist/locale/normalizeLocale.js.map +1 -0
  233. package/dist/renderer/LitRenderer.d.ts +14 -0
  234. package/dist/renderer/LitRenderer.js +28 -39
  235. package/dist/renderer/LitRenderer.js.map +1 -0
  236. package/dist/renderer/executeTemplate.d.ts +13 -0
  237. package/dist/renderer/executeTemplate.js +12 -16
  238. package/dist/renderer/executeTemplate.js.map +1 -0
  239. package/dist/sap/base/Log.js +28 -29
  240. package/dist/sap/base/assert.js +5 -6
  241. package/dist/sap/base/security/URLListValidator.js +13 -2
  242. package/dist/theming/CustomStyle.d.ts +6 -0
  243. package/dist/theming/CustomStyle.js +33 -45
  244. package/dist/theming/CustomStyle.js.map +1 -0
  245. package/dist/theming/ThemeLoaded.d.ts +5 -0
  246. package/dist/theming/ThemeLoaded.js +8 -16
  247. package/dist/theming/ThemeLoaded.js.map +1 -0
  248. package/dist/theming/ThemeRegistered.d.ts +4 -0
  249. package/dist/theming/ThemeRegistered.js +11 -0
  250. package/dist/theming/ThemeRegistered.js.map +1 -0
  251. package/dist/theming/applyTheme.d.ts +2 -0
  252. package/dist/theming/applyTheme.js +60 -64
  253. package/dist/theming/applyTheme.js.map +1 -0
  254. package/dist/theming/getConstructableStyle.d.ts +9 -0
  255. package/dist/theming/getConstructableStyle.js +12 -17
  256. package/dist/theming/getConstructableStyle.js.map +1 -0
  257. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  258. package/dist/theming/getEffectiveLinksHrefs.js +12 -22
  259. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  260. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  261. package/dist/theming/getEffectiveStyle.js +24 -31
  262. package/dist/theming/getEffectiveStyle.js.map +1 -0
  263. package/dist/theming/getStylesString.d.ts +3 -0
  264. package/dist/theming/getStylesString.js +9 -13
  265. package/dist/theming/getStylesString.js.map +1 -0
  266. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  267. package/dist/theming/getThemeDesignerTheme.js +72 -79
  268. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  269. package/dist/theming/preloadLinks.d.ts +3 -0
  270. package/dist/theming/preloadLinks.js +13 -17
  271. package/dist/theming/preloadLinks.js.map +1 -0
  272. package/dist/thirdparty/_merge.d.ts +2 -0
  273. package/dist/thirdparty/_merge.js +7 -4
  274. package/dist/thirdparty/_merge.js.map +1 -0
  275. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  276. package/dist/thirdparty/isPlainObject.js +11 -10
  277. package/dist/thirdparty/isPlainObject.js.map +1 -0
  278. package/dist/thirdparty/merge.d.ts +2 -0
  279. package/dist/thirdparty/merge.js +4 -8
  280. package/dist/thirdparty/merge.js.map +1 -0
  281. package/dist/types/AnimationMode.d.ts +32 -0
  282. package/dist/types/AnimationMode.js +33 -6
  283. package/dist/types/AnimationMode.js.map +1 -0
  284. package/dist/types/CSSColor.d.ts +15 -0
  285. package/dist/types/CSSColor.js +14 -5
  286. package/dist/types/CSSColor.js.map +1 -0
  287. package/dist/types/CalendarType.d.ts +37 -0
  288. package/dist/types/CalendarType.js +35 -18
  289. package/dist/types/CalendarType.js.map +1 -0
  290. package/dist/types/DOMReference.d.ts +17 -0
  291. package/dist/types/DOMReference.js +25 -0
  292. package/dist/types/DOMReference.js.map +1 -0
  293. package/dist/types/DataType.d.ts +25 -0
  294. package/dist/types/DataType.js +33 -26
  295. package/dist/types/DataType.js.map +1 -0
  296. package/dist/types/Float.d.ts +17 -0
  297. package/dist/types/Float.js +17 -10
  298. package/dist/types/Float.js.map +1 -0
  299. package/dist/types/Integer.d.ts +17 -0
  300. package/dist/types/Integer.js +17 -9
  301. package/dist/types/Integer.js.map +1 -0
  302. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  303. package/dist/types/InvisibleMessageMode.js +20 -23
  304. package/dist/types/InvisibleMessageMode.js.map +1 -0
  305. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  306. package/dist/types/ItemNavigationBehavior.js +22 -12
  307. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  308. package/dist/types/NavigationMode.d.ts +32 -0
  309. package/dist/types/NavigationMode.js +33 -6
  310. package/dist/types/NavigationMode.js.map +1 -0
  311. package/dist/types/ValueState.d.ts +42 -0
  312. package/dist/types/ValueState.js +41 -19
  313. package/dist/types/ValueState.js.map +1 -0
  314. package/dist/types.d.ts +18 -0
  315. package/dist/types.js +2 -0
  316. package/dist/types.js.map +1 -0
  317. package/dist/updateShadowRoot.d.ts +8 -0
  318. package/dist/updateShadowRoot.js +25 -17
  319. package/dist/updateShadowRoot.js.map +1 -0
  320. package/dist/util/AriaLabelHelper.d.ts +15 -0
  321. package/dist/util/AriaLabelHelper.js +166 -36
  322. package/dist/util/AriaLabelHelper.js.map +1 -0
  323. package/dist/util/Caret.d.ts +7 -0
  324. package/dist/util/Caret.js +16 -38
  325. package/dist/util/Caret.js.map +1 -0
  326. package/dist/util/ColorConversion.d.ts +30 -0
  327. package/dist/util/ColorConversion.js +315 -348
  328. package/dist/util/ColorConversion.js.map +1 -0
  329. package/dist/util/FetchHelper.d.ts +3 -0
  330. package/dist/util/FetchHelper.js +19 -25
  331. package/dist/util/FetchHelper.js.map +1 -0
  332. package/dist/util/FocusableElements.d.ts +4 -0
  333. package/dist/util/FocusableElements.js +63 -71
  334. package/dist/util/FocusableElements.js.map +1 -0
  335. package/{src/util/HTMLSanitizer.js → dist/util/HTMLSanitizer.d.ts} +1 -5
  336. package/dist/util/HTMLSanitizer.js +4 -5
  337. package/dist/util/HTMLSanitizer.js.map +1 -0
  338. package/dist/util/InvisibleMessage.d.ts +10 -0
  339. package/dist/util/InvisibleMessage.js +41 -45
  340. package/dist/util/InvisibleMessage.js.map +1 -0
  341. package/dist/util/PopupUtils.d.ts +7 -0
  342. package/dist/util/PopupUtils.js +58 -77
  343. package/dist/util/PopupUtils.js.map +1 -0
  344. package/dist/util/SlotsHelper.d.ts +9 -0
  345. package/dist/util/SlotsHelper.js +22 -35
  346. package/dist/util/SlotsHelper.js.map +1 -0
  347. package/dist/util/StringHelper.d.ts +3 -0
  348. package/dist/util/StringHelper.js +17 -20
  349. package/dist/util/StringHelper.js.map +1 -0
  350. package/dist/util/TabbableElements.d.ts +17 -0
  351. package/dist/util/TabbableElements.js +53 -47
  352. package/dist/util/TabbableElements.js.map +1 -0
  353. package/dist/util/arraysAreEqual.d.ts +2 -0
  354. package/dist/util/arraysAreEqual.js +10 -12
  355. package/dist/util/arraysAreEqual.js.map +1 -0
  356. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  357. package/dist/util/clamp.js +2 -2
  358. package/dist/util/clamp.js.map +1 -0
  359. package/dist/util/createLinkInHead.d.ts +7 -0
  360. package/dist/util/createLinkInHead.js +14 -12
  361. package/dist/util/createLinkInHead.js.map +1 -0
  362. package/dist/util/createStyleInHead.d.ts +8 -0
  363. package/dist/util/createStyleInHead.js +10 -10
  364. package/dist/util/createStyleInHead.js.map +1 -0
  365. package/dist/util/debounce.d.ts +2 -0
  366. package/dist/util/debounce.js +6 -8
  367. package/dist/util/debounce.js.map +1 -0
  368. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  369. package/dist/util/detectNavigatorLanguage.js +7 -10
  370. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  371. package/dist/util/escapeRegex.d.ts +8 -0
  372. package/dist/util/escapeRegex.js +8 -7
  373. package/dist/util/escapeRegex.js.map +1 -0
  374. package/dist/util/formatMessage.d.ts +2 -0
  375. package/dist/util/formatMessage.js +15 -19
  376. package/dist/util/formatMessage.js.map +1 -0
  377. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  378. package/dist/util/generateHighlightedMarkup.js +26 -27
  379. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  380. package/dist/util/getActiveElement.d.ts +2 -0
  381. package/dist/util/getActiveElement.js +6 -8
  382. package/dist/util/getActiveElement.js.map +1 -0
  383. package/dist/util/getClassCopy.d.ts +398 -0
  384. package/dist/util/getClassCopy.js +7 -7
  385. package/dist/util/getClassCopy.js.map +1 -0
  386. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  387. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  388. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  389. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  390. package/dist/util/getEffectiveContentDensity.js +2 -3
  391. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  392. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  393. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  394. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  395. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  396. package/dist/util/getFastNavigationGroups.js +51 -0
  397. package/dist/util/getFastNavigationGroups.js.map +1 -0
  398. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  399. package/dist/util/getFileExtension.js +9 -11
  400. package/dist/util/getFileExtension.js.map +1 -0
  401. package/{src/util/getNormalizedTarget.js → dist/util/getNormalizedTarget.d.ts} +1 -10
  402. package/dist/util/getNormalizedTarget.js +7 -9
  403. package/dist/util/getNormalizedTarget.js.map +1 -0
  404. package/dist/util/getSingletonElementInstance.d.ts +2 -0
  405. package/dist/util/getSingletonElementInstance.js +7 -10
  406. package/dist/util/getSingletonElementInstance.js.map +1 -0
  407. package/dist/util/isElementClickable.d.ts +2 -0
  408. package/dist/util/isElementClickable.js +16 -0
  409. package/dist/util/isElementClickable.js.map +1 -0
  410. package/dist/util/isElementHidden.d.ts +2 -0
  411. package/dist/util/isElementHidden.js +8 -0
  412. package/dist/util/isElementHidden.js.map +1 -0
  413. package/dist/util/isElementInView.d.ts +6 -0
  414. package/dist/util/isElementInView.js +6 -9
  415. package/dist/util/isElementInView.js.map +1 -0
  416. package/dist/util/isElementTabbable.d.ts +9 -0
  417. package/dist/util/isElementTabbable.js +30 -0
  418. package/dist/util/isElementTabbable.js.map +1 -0
  419. package/dist/util/isValidPropertyName.d.ts +8 -0
  420. package/dist/util/isValidPropertyName.js +16 -17
  421. package/dist/util/isValidPropertyName.js.map +1 -0
  422. package/dist/util/whenDOMReady.d.ts +2 -0
  423. package/dist/util/whenDOMReady.js +11 -10
  424. package/dist/util/whenDOMReady.js.map +1 -0
  425. package/dist/util/willShowContent.d.ts +2 -0
  426. package/dist/util/willShowContent.js +7 -0
  427. package/dist/util/willShowContent.js.map +1 -0
  428. package/dist/validateThemeRoot.d.ts +2 -0
  429. package/dist/validateThemeRoot.js +47 -0
  430. package/dist/validateThemeRoot.js.map +1 -0
  431. package/lib/generate-styles/index.js +10 -5
  432. package/package-scripts.js +30 -18
  433. package/package.json +5 -4
  434. package/src/css/BusyIndicator.css +4 -0
  435. package/src/css/FontFace.css +9 -18
  436. package/tsconfig.json +14 -0
  437. package/config/rollup.config.js +0 -1
  438. package/dist/RenderScheduler.js +0 -44
  439. package/dist/animations/config.js +0 -5
  440. package/dist/isLegacyBrowser.js +0 -3
  441. package/dist/resources/bundle.esm.js +0 -32
  442. package/dist/resources/bundle.esm.js.map +0 -1
  443. package/dist/test-resources/assets/Themes.js +0 -17
  444. package/dist/test-resources/elements/Child.js +0 -35
  445. package/dist/test-resources/elements/Generic.js +0 -84
  446. package/dist/test-resources/elements/GenericExt.js +0 -26
  447. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  448. package/dist/test-resources/elements/Parent.js +0 -41
  449. package/dist/test-resources/elements/WithStaticArea.js +0 -77
  450. package/dist/test-resources/pages/AllTestElements.html +0 -42
  451. package/dist/test-resources/pages/Configuration.html +0 -18
  452. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  453. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  454. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  455. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  456. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  457. package/dist/test-resources/pages/i18n.html +0 -33
  458. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
  459. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
  460. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -93
  461. package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
  462. package/dist/test-resources/specs/EventProvider.spec.js +0 -63
  463. package/dist/test-resources/specs/StaticArea.spec.js +0 -78
  464. package/dist/test-resources/specs/Theming.spec.js +0 -44
  465. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
  466. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
  467. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
  468. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
  469. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
  470. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
  471. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
  472. package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
  473. package/dist/types/CSSSize.js +0 -9
  474. package/dist/types/PopupState.js +0 -37
  475. package/dist/util/findNodeOwner.js +0 -35
  476. package/dist/util/isDescendantOf.js +0 -15
  477. package/dist/util/isNodeClickable.js +0 -19
  478. package/dist/util/isNodeHidden.js +0 -9
  479. package/dist/util/isNodeTabbable.js +0 -28
  480. package/dist/util/setToArray.js +0 -10
  481. package/src/Boot.js +0 -59
  482. package/src/CustomElementsRegistry.js +0 -95
  483. package/src/CustomElementsScope.js +0 -30
  484. package/src/CustomElementsScopeUtils.js +0 -108
  485. package/src/DOMObserver.js +0 -65
  486. package/src/Device.js +0 -121
  487. package/src/EventProvider.js +0 -85
  488. package/src/FeaturesRegistry.js +0 -14
  489. package/src/FontFace.js +0 -30
  490. package/src/InitialConfiguration.js +0 -166
  491. package/src/Keys.js +0 -295
  492. package/src/ManagedStyles.js +0 -83
  493. package/src/MediaRange.js +0 -109
  494. package/src/PropertiesFileFormat.js +0 -95
  495. package/src/Render.js +0 -175
  496. package/src/RenderQueue.js +0 -66
  497. package/src/RenderScheduler.js +0 -44
  498. package/src/Runtimes.js +0 -107
  499. package/src/StaticArea.js +0 -3
  500. package/src/StaticAreaItem.js +0 -101
  501. package/src/SystemCSSVars.js +0 -10
  502. package/src/UI5Element.js +0 -1033
  503. package/src/UI5ElementMetadata.js +0 -327
  504. package/src/animations/AnimationQueue.js +0 -42
  505. package/src/animations/animate.js +0 -53
  506. package/src/animations/config.js +0 -5
  507. package/src/animations/scroll.js +0 -28
  508. package/src/animations/slideDown.js +0 -79
  509. package/src/animations/slideUp.js +0 -71
  510. package/src/asset-registries/Icons.js +0 -135
  511. package/src/asset-registries/Illustrations.js +0 -30
  512. package/src/asset-registries/LocaleData.js +0 -164
  513. package/src/asset-registries/Themes.js +0 -82
  514. package/src/asset-registries/i18n.js +0 -121
  515. package/src/assets-meta/IconCollectionsAlias.js +0 -18
  516. package/src/config/AnimationMode.js +0 -23
  517. package/src/config/CalendarType.js +0 -18
  518. package/src/config/FormatSettings.js +0 -13
  519. package/src/config/Icons.js +0 -52
  520. package/src/config/Language.js +0 -68
  521. package/src/config/NoConflict.js +0 -51
  522. package/src/config/RTL.js +0 -31
  523. package/src/config/Theme.js +0 -53
  524. package/src/delegate/ItemNavigation.js +0 -351
  525. package/src/delegate/ResizeHandler.js +0 -106
  526. package/src/delegate/ScrollEnablement.js +0 -188
  527. package/src/features/F6Navigation.js +0 -106
  528. package/src/features/OpenUI5Enablement.js +0 -119
  529. package/src/features/OpenUI5Support.js +0 -125
  530. package/src/getSharedResource.js +0 -30
  531. package/src/i18nBundle.js +0 -86
  532. package/src/isLegacyBrowser.js +0 -3
  533. package/src/locale/Locale.js +0 -91
  534. package/src/locale/RTLAwareRegistry.js +0 -14
  535. package/src/locale/applyDirection.js +0 -17
  536. package/src/locale/directionChange.js +0 -32
  537. package/src/locale/getEffectiveDir.js +0 -28
  538. package/src/locale/getLocale.js +0 -41
  539. package/src/locale/languageChange.js +0 -22
  540. package/src/locale/nextFallbackLocale.js +0 -28
  541. package/src/locale/normalizeLocale.js +0 -54
  542. package/src/renderer/LitRenderer.js +0 -52
  543. package/src/renderer/executeTemplate.js +0 -34
  544. package/src/theming/CustomStyle.js +0 -60
  545. package/src/theming/ThemeLoaded.js +0 -22
  546. package/src/theming/applyTheme.js +0 -79
  547. package/src/theming/getConstructableStyle.js +0 -30
  548. package/src/theming/getEffectiveLinksHrefs.js +0 -27
  549. package/src/theming/getEffectiveStyle.js +0 -39
  550. package/src/theming/getStylesString.js +0 -15
  551. package/src/theming/getThemeDesignerTheme.js +0 -87
  552. package/src/theming/preloadLinks.js +0 -23
  553. package/src/thirdparty/_merge.js +0 -32
  554. package/src/thirdparty/isPlainObject.js +0 -18
  555. package/src/thirdparty/merge.js +0 -10
  556. package/src/types/AnimationMode.js +0 -7
  557. package/src/types/CSSColor.js +0 -9
  558. package/src/types/CSSSize.js +0 -9
  559. package/src/types/CalendarType.js +0 -22
  560. package/src/types/DataType.js +0 -37
  561. package/src/types/Float.js +0 -14
  562. package/src/types/Integer.js +0 -13
  563. package/src/types/InvisibleMessageMode.js +0 -30
  564. package/src/types/ItemNavigationBehavior.js +0 -16
  565. package/src/types/NavigationMode.js +0 -7
  566. package/src/types/PopupState.js +0 -37
  567. package/src/types/ValueState.js +0 -22
  568. package/src/updateShadowRoot.js +0 -30
  569. package/src/util/AriaLabelHelper.js +0 -41
  570. package/src/util/Caret.js +0 -45
  571. package/src/util/ColorConversion.js +0 -370
  572. package/src/util/FetchHelper.js +0 -31
  573. package/src/util/FocusableElements.js +0 -79
  574. package/src/util/InvisibleMessage.js +0 -60
  575. package/src/util/PopupUtils.js +0 -93
  576. package/src/util/SlotsHelper.js +0 -43
  577. package/src/util/StringHelper.js +0 -26
  578. package/src/util/TabbableElements.js +0 -51
  579. package/src/util/arraysAreEqual.js +0 -15
  580. package/src/util/createLinkInHead.js +0 -19
  581. package/src/util/createStyleInHead.js +0 -18
  582. package/src/util/debounce.js +0 -17
  583. package/src/util/detectNavigatorLanguage.js +0 -13
  584. package/src/util/escapeRegex.js +0 -10
  585. package/src/util/findNodeOwner.js +0 -35
  586. package/src/util/formatMessage.js +0 -23
  587. package/src/util/generateHighlightedMarkup.js +0 -42
  588. package/src/util/getActiveElement.js +0 -11
  589. package/src/util/getClassCopy.js +0 -10
  590. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  591. package/src/util/getEffectiveContentDensity.js +0 -5
  592. package/src/util/getSingletonElementInstance.js +0 -13
  593. package/src/util/isDescendantOf.js +0 -15
  594. package/src/util/isElementInView.js +0 -15
  595. package/src/util/isNodeClickable.js +0 -19
  596. package/src/util/isNodeHidden.js +0 -9
  597. package/src/util/isNodeTabbable.js +0 -28
  598. package/src/util/isValidPropertyName.js +0 -29
  599. package/src/util/setToArray.js +0 -10
  600. package/src/util/whenDOMReady.js +0 -13
  601. /package/{config/.eslintrc.js → .eslintrc.js} +0 -0
@@ -5,17 +5,8 @@
5
5
  * "file.with.many.dots.doc" -> ".doc"
6
6
  * ".gitignore" -> ""
7
7
  *
8
- * @param fileName - the file name
9
- * @returns {string}
8
+ * @param { string } fileName - the file name
9
+ * @returns { string }
10
10
  */
11
- const getFileExtension = fileName => {
12
- const dotPos = fileName.lastIndexOf(".");
13
-
14
- if (dotPos < 1) {
15
- return "";
16
- }
17
-
18
- return fileName.slice(dotPos);
19
- };
20
-
11
+ declare const getFileExtension: (fileName: string) => string;
21
12
  export default getFileExtension;
@@ -5,17 +5,15 @@
5
5
  * "file.with.many.dots.doc" -> ".doc"
6
6
  * ".gitignore" -> ""
7
7
  *
8
- * @param fileName - the file name
9
- * @returns {string}
8
+ * @param { string } fileName - the file name
9
+ * @returns { string }
10
10
  */
11
- const getFileExtension = fileName => {
12
- const dotPos = fileName.lastIndexOf(".");
13
-
14
- if (dotPos < 1) {
15
- return "";
16
- }
17
-
18
- return fileName.slice(dotPos);
11
+ const getFileExtension = (fileName) => {
12
+ const dotPos = fileName.lastIndexOf(".");
13
+ if (dotPos < 1) {
14
+ return "";
15
+ }
16
+ return fileName.slice(dotPos);
19
17
  };
20
-
21
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"]}
@@ -3,14 +3,5 @@
3
3
  * @param {Object} target The original event target
4
4
  * @returns {Object} The normalized target
5
5
  */
6
- const getNormalizedTarget = target => {
7
- let element = target;
8
-
9
- if (target.shadowRoot && target.shadowRoot.activeElement) {
10
- element = target.shadowRoot.activeElement;
11
- }
12
-
13
- return element;
14
- };
15
-
6
+ declare const getNormalizedTarget: (target: HTMLElement) => HTMLElement;
16
7
  export default getNormalizedTarget;
@@ -3,14 +3,12 @@
3
3
  * @param {Object} target The original event target
4
4
  * @returns {Object} The normalized target
5
5
  */
6
- const getNormalizedTarget = target => {
7
- let element = target;
8
-
9
- if (target.shadowRoot && target.shadowRoot.activeElement) {
10
- element = target.shadowRoot.activeElement;
11
- }
12
-
13
- return element;
6
+ const getNormalizedTarget = (target) => {
7
+ let element = target;
8
+ if (target.shadowRoot && target.shadowRoot.activeElement) {
9
+ element = target.shadowRoot.activeElement;
10
+ }
11
+ return element;
14
12
  };
15
-
16
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 getSingletonElementInstance: (tag: string, parentElement?: HTMLElement) => Element;
2
+ export default getSingletonElementInstance;
@@ -1,13 +1,10 @@
1
1
  const getSingletonElementInstance = (tag, parentElement = document.body) => {
2
- let el = document.querySelector(tag);
3
-
4
- if (el) {
5
- return el;
6
- }
7
-
8
- el = document.createElement(tag);
9
-
10
- return parentElement.insertBefore(el, parentElement.firstChild);
2
+ let el = document.querySelector(tag);
3
+ if (el) {
4
+ return el;
5
+ }
6
+ el = document.createElement(tag);
7
+ return parentElement.insertBefore(el, parentElement.firstChild);
11
8
  };
12
-
13
9
  export default getSingletonElementInstance;
10
+ //# sourceMappingURL=getSingletonElementInstance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSingletonElementInstance.js","sourceRoot":"","sources":["../../src/util/getSingletonElementInstance.ts"],"names":[],"mappings":"AAAA,MAAM,2BAA2B,GAAG,CAAC,GAAW,EAAE,gBAA6B,QAAQ,CAAC,IAAI,EAAE,EAAE;IAC/F,IAAI,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,EAAE,EAAE;QACP,OAAO,EAAE,CAAC;KACV;IAED,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAEjC,OAAO,aAAa,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,eAAe,2BAA2B,CAAC","sourcesContent":["const getSingletonElementInstance = (tag: string, parentElement: HTMLElement = document.body) => {\n\tlet el = document.querySelector(tag);\n\n\tif (el) {\n\t\treturn el;\n\t}\n\n\tel = 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 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;
@@ -2,14 +2,11 @@
2
2
  * Determines if the element is within the viewport.
3
3
  * @param el {HTMLElement}
4
4
  */
5
- const isElementInView = el => {
6
- const rect = el.getBoundingClientRect();
7
-
8
- return (
9
- rect.top >= 0 && rect.left >= 0
10
- && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight)
11
- && rect.right <= (window.innerWidth || document.documentElement.clientWidth)
12
- );
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));
13
10
  };
14
-
15
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,29 +1,28 @@
1
1
  // Note: disabled is present in IE so we explicitly allow it here.
2
2
  // Others, such as title/hidden, we explicitly override, so valid too
3
3
  const allowList = [
4
- "disabled",
5
- "title",
6
- "hidden",
7
- "role",
8
- "draggable",
4
+ "disabled",
5
+ "title",
6
+ "hidden",
7
+ "role",
8
+ "draggable",
9
9
  ];
10
-
11
10
  /**
12
11
  * Checks whether a property name is valid (does not collide with existing DOM API properties)
13
12
  *
14
13
  * @param name
15
14
  * @returns {boolean}
16
15
  */
17
- const isValidPropertyName = name => {
18
- if (allowList.includes(name) || name.startsWith("aria")) {
19
- return true;
20
- }
21
- const classes = [
22
- HTMLElement,
23
- Element,
24
- Node,
25
- ];
26
- 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
27
26
  };
28
-
29
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,47 @@
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 themeRootURL, resultUrl;
17
+ try {
18
+ themeRootURL = new URL(themeRoot);
19
+ const origin = themeRootURL.origin;
20
+ themeRootURL = themeRootURL.toString();
21
+ if (themeRootURL.startsWith(".") || themeRootURL.startsWith("/")) {
22
+ // Handle relative url
23
+ // new URL("/newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
24
+ // new URL("./newExmPath", "http://example.com/exmPath") => http://example.com/exmPath/newExmPath
25
+ // new URL("../newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
26
+ resultUrl = new URL(themeRootURL, window.location.href).toString();
27
+ }
28
+ else 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, window.location.href);
36
+ }
37
+ if (!resultUrl.endsWith("/")) {
38
+ resultUrl = `${resultUrl}/`;
39
+ }
40
+ return `${resultUrl}UI5/`;
41
+ }
42
+ catch (e) {
43
+ // Catch if URL is not correct
44
+ }
45
+ };
46
+ export default validateThemeRoot;
47
+ //# 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,YAAY,EACf,SAAS,CAAC;IAEX,IAAI;QACH,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QAEnC,YAAY,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;QAEvC,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACjE,sBAAsB;YACtB,wFAAwF;YACxF,iGAAiG;YACjG,0FAA0F;YAC1F,SAAS,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;SACnE;aAAM,IAAI,MAAM,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;YACjD,+BAA+B;YAC/B,SAAS,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;SACpC;aAAM;YACN,oFAAoF;YACpF,wBAAwB;YACxB,SAAS,GAAG,eAAe,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAChE;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 themeRootURL,\n\t\tresultUrl;\n\n\ttry {\n\t\tthemeRootURL = new URL(themeRoot);\n\n\t\tconst origin = themeRootURL.origin;\n\n\t\tthemeRootURL = themeRootURL.toString();\n\n\t\tif (themeRootURL.startsWith(\".\") || themeRootURL.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(themeRootURL, window.location.href).toString();\n\t\t} else if (origin && validateThemeOrigin(origin)) {\n\t\t\t// If origin is allowed, use it\n\t\t\tresultUrl = themeRootURL.toString();\n\t\t} else {\n\t\t\t// If origin is not allow and the URL is not relative, we have to replace the origin\n\t\t\t// with current location\n\t\t\tresultUrl = buildCorrectUrl(themeRootURL, window.location.href);\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"]}
@@ -3,19 +3,24 @@ const path = require('path');
3
3
  const CleanCSS = require('clean-css');
4
4
 
5
5
  const generate = async () => {
6
- await fs.mkdir("dist/generated/css/");
6
+ await fs.mkdir("src/generated/css/", {recursive: true});
7
7
 
8
8
  const files = (await fs.readdir("src/css/")).filter(file => file.endsWith(".css"));
9
9
  const filesPromises = files.map(async file => {
10
10
  let content = await fs.readFile(path.join("src/css/", file));
11
11
  const res = new CleanCSS().minify(`${content}`);
12
- content = `export default {
12
+ content = `import type { StyleData } from "../../types.js";
13
+
14
+ const styleData: StyleData = {
13
15
  packageName: "@ui5/webcomponents-base",
14
16
  fileName: "${file}",
15
- content: \`${res.styles}\`
16
- };`;
17
+ content: \`${res.styles}\`,
18
+ };
19
+
20
+ export default styleData;
21
+ `;
17
22
 
18
- return fs.writeFile(path.join("dist/generated/css/", `${file}.js`), content);
23
+ return fs.writeFile(path.join("src/generated/css/", `${file}.ts`), content);
19
24
  });
20
25
 
21
26
  return Promise.all(filesPromises);
@@ -1,16 +1,22 @@
1
1
  const resolve = require("resolve");
2
+ const path = require("path");
2
3
 
3
4
  const assetParametersScript = resolve.sync("@ui5/webcomponents-base/lib/generate-asset-parameters/index.js");
4
5
  const stylesScript = resolve.sync("@ui5/webcomponents-base/lib/generate-styles/index.js");
5
6
  const versionScript = resolve.sync("@ui5/webcomponents-base/lib/generate-version-info/index.js");
6
- const serve = resolve.sync("@ui5/webcomponents-tools/lib/serve/index.js");
7
7
  const copyUsedModules = resolve.sync("@ui5/webcomponents-tools/lib/copy-list/index.js");
8
8
  const esmAbsToRel = resolve.sync("@ui5/webcomponents-tools/lib/esm-abs-to-rel/index.js");
9
+ const preprocessJSDocScript = resolve.sync("@ui5/webcomponents-tools/lib/jsdoc/preprocess.js");
10
+
11
+ const LIB = path.join(__dirname, `../tools/lib/`);
12
+
13
+ const viteConfig = `-c "${require.resolve("@ui5/webcomponents-tools/components-package/vite.config.js")}"`;
9
14
 
10
15
  const scripts = {
11
- clean: "rimraf dist && rimraf .port",
12
- lint: "eslint . --config config/.eslintrc.js",
13
- prepare: "nps clean integrate copy generateAssetParameters generateVersionInfo generateStyles",
16
+ clean: "rimraf jsdoc-dist && rimraf src/generated && rimraf dist && rimraf .port",
17
+ lint: `eslint .`,
18
+ prepare: "cross-env UI5_TS=true nps clean integrate copy generateAssetParameters generateVersionInfo generateStyles generateTemplates typescript generateAPI",
19
+ typescript: "tsc",
14
20
  integrate: {
15
21
  default: "nps integrate.copy-used-modules integrate.replace-amd integrate.amd-to-es6 integrate.esm-abs-to-rel integrate.third-party",
16
22
  "copy-used-modules": `node "${copyUsedModules}" ./used-modules.txt dist/`,
@@ -24,31 +30,37 @@ const scripts = {
24
30
  },
25
31
  },
26
32
  build: {
27
- default: `nps lint prepare build.bundle`,
28
- bundle: "rollup --config config/rollup.config.js",
33
+ default: `nps prepare lint build.bundle`,
34
+ bundle: `vite build ${viteConfig}`,
29
35
  },
30
36
  copy: {
31
- default: "nps copy.src copy.test",
32
- src: `copy-and-watch "src/**/*.{js,css}" dist/`,
33
- test: `copy-and-watch "test/**/*.*" dist/test-resources`,
37
+ default: "nps copy.src",
38
+ src: `copy-and-watch "src/**/*.{js,css,d.ts}" dist/`,
34
39
  },
35
40
  generateAssetParameters: `node "${assetParametersScript}"`,
36
41
  generateVersionInfo: `node "${versionScript}"`,
37
42
  generateStyles: `node "${stylesScript}"`,
43
+ generateTemplates: `mkdirp dist/generated/templates && node "${LIB}/hbs2ui5/index.js" -d test/elements -o dist/generated/templates`,
44
+ generateAPI: {
45
+ default: "nps generateAPI.prepare generateAPI.preprocess generateAPI.jsdoc generateAPI.cleanup",
46
+ prepare: `copy-and-watch "dist/**/*.js" jsdoc-dist/`,
47
+ preprocess: `node "${preprocessJSDocScript}" jsdoc-dist/`,
48
+ jsdoc: `jsdoc -c "${LIB}/jsdoc/configTypescript.json"`,
49
+ cleanup: "rimraf jsdoc-dist/"
50
+ },
38
51
  watch: {
39
- default: 'concurrently "nps watch.test" "nps watch.src" "nps watch.bundle" "nps watch.styles"',
52
+ default: 'concurrently "nps watch.src" "nps watch.styles" "nps watch.typescript"',
53
+ withBundle: 'concurrently "nps watch.src" "nps watch.bundle" "nps watch.styles" "nps watch.typescript"',
40
54
  src: 'nps "copy.src --watch --skip-initial-copy"',
41
- test: 'nps "copy.test --watch --skip-initial-copy"',
42
- bundle: "rollup --config config/rollup.config.js -w --environment DEV",
55
+ typescript: 'tsc --watch',
56
+ bundle: `node ${LIB}/dev-server/dev-server.js ${viteConfig}`,
43
57
  styles: 'chokidar "src/css/*.css" -c "nps generateStyles"'
44
58
  },
45
- dev: 'concurrently "nps serve" "nps watch"',
46
- start: "nps prepare dev",
47
- serve: `node "${serve}" --dir="dist/" --port=9191 --packageName="@ui5/webcomponents-base"`,
59
+ start: "nps prepare watch.withBundle",
48
60
  test: {
49
- // --success first - report the exit code of the test run (first command to finish), as serve is always terminated and has a non-0 exit code
50
- default: 'concurrently "nps serve" "nps test.run" --kill-others --success first',
51
- run: "cross-env WDIO_LOG_LEVEL=error FORCE_COLOR=0 wdio config/wdio.conf.js",
61
+ default: 'concurrently "nps test.wdio"',
62
+ ssr: `mocha test/ssr`,
63
+ wdio: `node "${LIB}/test-runner/test-runner.js"`
52
64
  },
53
65
  };
54
66
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ui5/webcomponents-base",
3
- "version": "0.0.0-701b14e36",
3
+ "version": "0.0.0-760fbb471",
4
4
  "description": "UI5 Web Components: webcomponents.base",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -35,14 +35,15 @@
35
35
  },
36
36
  "devDependencies": {
37
37
  "@buxlabs/amd-to-es6": "0.16.1",
38
- "@openui5/sap.ui.core": "1.101.0",
39
- "@ui5/webcomponents-tools": "0.0.0-701b14e36",
40
- "chromedriver": "100.0.0",
38
+ "@openui5/sap.ui.core": "1.109.0",
39
+ "@ui5/webcomponents-tools": "0.0.0-760fbb471",
40
+ "chromedriver": "110.0.0",
41
41
  "clean-css": "^5.2.2",
42
42
  "copy-and-watch": "^0.1.5",
43
43
  "cross-env": "^7.0.3",
44
44
  "eslint": "^7.22.0",
45
45
  "mkdirp": "^1.0.4",
46
+ "replace-in-file": "^6.3.5",
46
47
  "resolve": "^1.20.0"
47
48
  }
48
49
  }
@@ -59,6 +59,10 @@
59
59
  --ui5_web_components_busy_indicator_display: none;
60
60
  }
61
61
 
62
+ .busy-indicator-wrapper [ui5-busy-indicator] {
63
+ display: none;
64
+ }
65
+
62
66
  @keyframes grow {
63
67
  0%, 50%, 100% {
64
68
  -webkit-transform: scale(0.5);