@ui5/webcomponents-base 0.0.0-0fcda382e → 0.0.0-111ecd79a

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 (778) hide show
  1. package/.eslintignore +5 -0
  2. package/CHANGELOG.md +540 -0
  3. package/README.md +53 -7
  4. package/bundle.esm.js +28 -17
  5. package/dist/AssetRegistry.d.ts +5 -0
  6. package/dist/AssetRegistry.js +6 -9
  7. package/dist/AssetRegistry.js.map +1 -0
  8. package/dist/Boot.d.ts +8 -0
  9. package/dist/Boot.js +48 -0
  10. package/dist/Boot.js.map +1 -0
  11. package/dist/CSP.d.ts +30 -0
  12. package/dist/CSP.js +51 -0
  13. package/dist/CSP.js.map +1 -0
  14. package/dist/CustomElementsRegistry.d.ts +5 -0
  15. package/dist/CustomElementsRegistry.js +73 -18
  16. package/dist/CustomElementsRegistry.js.map +1 -0
  17. package/dist/CustomElementsScope.d.ts +7 -0
  18. package/dist/CustomElementsScope.js +11 -0
  19. package/dist/CustomElementsScope.js.map +1 -0
  20. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  21. package/dist/CustomElementsScopeUtils.js +90 -0
  22. package/dist/CustomElementsScopeUtils.js.map +1 -0
  23. package/dist/DOMObserver.d.ts +11 -0
  24. package/dist/DOMObserver.js +23 -0
  25. package/dist/DOMObserver.js.map +1 -0
  26. package/dist/Device.d.ts +12 -0
  27. package/dist/Device.js +159 -816
  28. package/dist/Device.js.map +1 -0
  29. package/dist/EventProvider.d.ts +25 -0
  30. package/dist/EventProvider.js +67 -70
  31. package/dist/EventProvider.js.map +1 -0
  32. package/dist/FeaturesRegistry.d.ts +3 -0
  33. package/dist/FeaturesRegistry.js +5 -7
  34. package/dist/FeaturesRegistry.js.map +1 -0
  35. package/dist/FontFace.d.ts +2 -0
  36. package/dist/FontFace.js +21 -69
  37. package/dist/FontFace.js.map +1 -0
  38. package/dist/InitialConfiguration.d.ts +22 -0
  39. package/dist/InitialConfiguration.js +119 -103
  40. package/dist/InitialConfiguration.js.map +1 -0
  41. package/dist/Keys.d.ts +57 -0
  42. package/dist/Keys.js +175 -158
  43. package/dist/Keys.js.map +1 -0
  44. package/dist/ManagedStyles.d.ts +8 -0
  45. package/dist/ManagedStyles.js +77 -0
  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 +98 -0
  52. package/dist/MediaRange.js.map +1 -0
  53. package/dist/PropertiesFileFormat.d.ts +8 -0
  54. package/dist/PropertiesFileFormat.js +85 -0
  55. package/dist/PropertiesFileFormat.js.map +1 -0
  56. package/dist/Render.d.ts +47 -0
  57. package/dist/Render.js +143 -0
  58. package/dist/Render.js.map +1 -0
  59. package/dist/RenderQueue.d.ts +19 -0
  60. package/dist/RenderQueue.js +53 -39
  61. package/dist/RenderQueue.js.map +1 -0
  62. package/dist/Runtimes.d.ts +27 -0
  63. package/dist/Runtimes.js +86 -0
  64. package/dist/Runtimes.js.map +1 -0
  65. package/dist/StaticArea.d.ts +0 -0
  66. package/dist/StaticArea.js +4 -39
  67. package/dist/StaticArea.js.map +1 -0
  68. package/dist/StaticAreaItem.d.ts +36 -0
  69. package/dist/StaticAreaItem.js +92 -98
  70. package/dist/StaticAreaItem.js.map +1 -0
  71. package/dist/SystemCSSVars.d.ts +2 -0
  72. package/dist/SystemCSSVars.js +9 -0
  73. package/dist/SystemCSSVars.js.map +1 -0
  74. package/dist/Theming.d.ts +3 -0
  75. package/dist/Theming.js +3 -2
  76. package/dist/Theming.js.map +1 -0
  77. package/dist/UI5Element.d.ts +374 -0
  78. package/dist/UI5Element.js +948 -878
  79. package/dist/UI5Element.js.map +1 -0
  80. package/dist/UI5ElementMetadata.d.ts +150 -0
  81. package/dist/UI5ElementMetadata.js +278 -160
  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 +104 -24
  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 +46 -0
  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 +125 -114
  107. package/dist/asset-registries/LocaleData.js.map +1 -0
  108. package/dist/asset-registries/Themes.d.ts +10 -0
  109. package/dist/asset-registries/Themes.js +39 -76
  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 +74 -58
  113. package/dist/asset-registries/i18n.js.map +1 -0
  114. package/dist/assets/bundle.esm.d10f73cb.js +56 -0
  115. package/dist/assets-meta/IconCollectionsAlias.d.ts +17 -0
  116. package/dist/assets-meta/IconCollectionsAlias.js +18 -0
  117. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  118. package/dist/config/AnimationMode.d.ts +14 -0
  119. package/dist/config/AnimationMode.js +23 -10
  120. package/dist/config/AnimationMode.js.map +1 -0
  121. package/dist/config/CalendarType.d.ts +8 -0
  122. package/dist/config/CalendarType.js +13 -12
  123. package/dist/config/CalendarType.js.map +1 -0
  124. package/dist/config/FormatSettings.d.ts +11 -0
  125. package/dist/config/FormatSettings.js +10 -8
  126. package/dist/config/FormatSettings.js.map +1 -0
  127. package/dist/config/Icons.d.ts +30 -0
  128. package/dist/config/Icons.js +48 -0
  129. package/dist/config/Icons.js.map +1 -0
  130. package/dist/config/Language.d.ts +31 -0
  131. package/dist/config/Language.js +54 -10
  132. package/dist/config/Language.js.map +1 -0
  133. package/dist/config/NoConflict.d.ts +20 -0
  134. package/dist/config/NoConflict.js +40 -41
  135. package/dist/config/NoConflict.js.map +1 -0
  136. package/dist/config/RTL.d.ts +7 -0
  137. package/dist/config/RTL.js +26 -20
  138. package/dist/config/RTL.js.map +1 -0
  139. package/dist/config/Theme.d.ts +28 -0
  140. package/dist/config/Theme.js +45 -22
  141. package/dist/config/Theme.js.map +1 -0
  142. package/dist/config/ThemeRoots.d.ts +4 -0
  143. package/dist/config/ThemeRoots.js +28 -0
  144. package/dist/config/ThemeRoots.js.map +1 -0
  145. package/dist/css/BusyIndicator.css +80 -0
  146. package/dist/css/FontFace.css +66 -0
  147. package/dist/css/OverrideFontFace.css +32 -0
  148. package/dist/css/SystemCSSVars.css +17 -0
  149. package/dist/decorators/customElement.d.ts +8 -0
  150. package/dist/decorators/customElement.js +16 -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/fastNavigation.d.ts +7 -0
  156. package/dist/decorators/fastNavigation.js +13 -0
  157. package/dist/decorators/fastNavigation.js.map +1 -0
  158. package/dist/decorators/languageAware.d.ts +7 -0
  159. package/dist/decorators/languageAware.js +13 -0
  160. package/dist/decorators/languageAware.js.map +1 -0
  161. package/dist/decorators/property.d.ts +9 -0
  162. package/dist/decorators/property.js +24 -0
  163. package/dist/decorators/property.js.map +1 -0
  164. package/dist/decorators/slot.d.ts +9 -0
  165. package/dist/decorators/slot.js +37 -0
  166. package/dist/decorators/slot.js.map +1 -0
  167. package/dist/decorators/themeAware.d.ts +7 -0
  168. package/dist/decorators/themeAware.js +13 -0
  169. package/dist/decorators/themeAware.js.map +1 -0
  170. package/dist/delegate/ItemNavigation.d.ts +113 -0
  171. package/dist/delegate/ItemNavigation.js +312 -274
  172. package/dist/delegate/ItemNavigation.js.map +1 -0
  173. package/dist/delegate/ResizeHandler.d.ts +25 -0
  174. package/dist/delegate/ResizeHandler.js +82 -63
  175. package/dist/delegate/ResizeHandler.js.map +1 -0
  176. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  177. package/dist/delegate/ScrollEnablement.js +159 -153
  178. package/dist/delegate/ScrollEnablement.js.map +1 -0
  179. package/dist/features/F6Navigation.d.ts +19 -0
  180. package/dist/features/F6Navigation.js +151 -0
  181. package/dist/features/F6Navigation.js.map +1 -0
  182. package/dist/features/OpenUI5Element.d.ts +9 -0
  183. package/dist/features/OpenUI5Element.js +5 -0
  184. package/dist/features/OpenUI5Element.js.map +1 -0
  185. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  186. package/dist/features/OpenUI5Enablement.js +96 -0
  187. package/dist/features/OpenUI5Enablement.js.map +1 -0
  188. package/dist/features/OpenUI5Support.d.ts +23 -0
  189. package/dist/features/OpenUI5Support.js +93 -86
  190. package/dist/features/OpenUI5Support.js.map +1 -0
  191. package/dist/generated/AssetParameters.js +1 -1
  192. package/dist/generated/VersionInfo.js +10 -0
  193. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  194. package/dist/generated/css/BusyIndicator.css.js +7 -0
  195. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  196. package/dist/generated/css/FontFace.css.d.ts +3 -0
  197. package/dist/generated/css/FontFace.css.js +7 -0
  198. package/dist/generated/css/FontFace.css.js.map +1 -0
  199. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  200. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  201. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  202. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  203. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  204. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  205. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +11 -0
  206. package/dist/getSharedResource.d.ts +11 -0
  207. package/dist/getSharedResource.js +34 -0
  208. package/dist/getSharedResource.js.map +1 -0
  209. package/dist/global.d.ts +38 -0
  210. package/dist/i18nBundle.d.ts +43 -0
  211. package/dist/i18nBundle.js +73 -28
  212. package/dist/i18nBundle.js.map +1 -0
  213. package/dist/locale/Locale.d.ts +22 -0
  214. package/dist/locale/Locale.js +75 -87
  215. package/dist/locale/Locale.js.map +1 -0
  216. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  217. package/dist/locale/RTLAwareRegistry.js +9 -0
  218. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  219. package/dist/locale/applyDirection.d.ts +10 -0
  220. package/dist/locale/applyDirection.js +17 -0
  221. package/dist/locale/applyDirection.js.map +1 -0
  222. package/dist/locale/directionChange.d.ts +15 -0
  223. package/dist/locale/directionChange.js +24 -0
  224. package/dist/locale/directionChange.js.map +1 -0
  225. package/dist/locale/getEffectiveDir.d.ts +2 -0
  226. package/dist/locale/getEffectiveDir.js +24 -0
  227. package/dist/locale/getEffectiveDir.js.map +1 -0
  228. package/dist/locale/getLocale.d.ts +7 -0
  229. package/dist/locale/getLocale.js +28 -21
  230. package/dist/locale/getLocale.js.map +1 -0
  231. package/dist/locale/languageChange.d.ts +5 -0
  232. package/dist/locale/languageChange.js +14 -0
  233. package/dist/locale/languageChange.js.map +1 -0
  234. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  235. package/dist/locale/nextFallbackLocale.js +15 -19
  236. package/dist/locale/nextFallbackLocale.js.map +1 -0
  237. package/dist/locale/normalizeLocale.d.ts +7 -0
  238. package/dist/locale/normalizeLocale.js +34 -41
  239. package/dist/locale/normalizeLocale.js.map +1 -0
  240. package/dist/renderer/LitRenderer.d.ts +14 -0
  241. package/dist/renderer/LitRenderer.js +38 -12
  242. package/dist/renderer/LitRenderer.js.map +1 -0
  243. package/dist/renderer/directives/style-map.js +72 -0
  244. package/dist/renderer/executeTemplate.d.ts +13 -0
  245. package/dist/renderer/executeTemplate.js +30 -0
  246. package/dist/renderer/executeTemplate.js.map +1 -0
  247. package/dist/sap/base/Log.js +240 -0
  248. package/dist/sap/base/assert.js +7 -0
  249. package/dist/sap/base/security/URLListValidator.js +159 -0
  250. package/dist/sap/base/security/encodeCSS.js +14 -0
  251. package/dist/sap/base/security/encodeXML.js +23 -0
  252. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  253. package/dist/sap/base/strings/toHex.js +8 -0
  254. package/dist/sap/base/util/now.js +7 -0
  255. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  256. package/dist/theming/CustomStyle.d.ts +6 -0
  257. package/dist/theming/CustomStyle.js +46 -17
  258. package/dist/theming/CustomStyle.js.map +1 -0
  259. package/dist/theming/ThemeLoaded.d.ts +5 -0
  260. package/dist/theming/ThemeLoaded.js +14 -0
  261. package/dist/theming/ThemeLoaded.js.map +1 -0
  262. package/dist/theming/applyTheme.d.ts +2 -0
  263. package/dist/theming/applyTheme.js +63 -69
  264. package/dist/theming/applyTheme.js.map +1 -0
  265. package/dist/theming/getConstructableStyle.d.ts +9 -0
  266. package/dist/theming/getConstructableStyle.js +15 -15
  267. package/dist/theming/getConstructableStyle.js.map +1 -0
  268. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  269. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  270. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  271. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  272. package/dist/theming/getEffectiveStyle.js +30 -13
  273. package/dist/theming/getEffectiveStyle.js.map +1 -0
  274. package/dist/theming/getStylesString.d.ts +3 -0
  275. package/dist/theming/getStylesString.js +11 -0
  276. package/dist/theming/getStylesString.js.map +1 -0
  277. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  278. package/dist/theming/getThemeDesignerTheme.js +73 -60
  279. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  280. package/dist/theming/preloadLinks.d.ts +3 -0
  281. package/dist/theming/preloadLinks.js +19 -0
  282. package/dist/theming/preloadLinks.js.map +1 -0
  283. package/dist/thirdparty/_merge.d.ts +2 -0
  284. package/dist/thirdparty/_merge.js +7 -4
  285. package/dist/thirdparty/_merge.js.map +1 -0
  286. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  287. package/dist/thirdparty/isPlainObject.js +11 -10
  288. package/dist/thirdparty/isPlainObject.js.map +1 -0
  289. package/dist/thirdparty/merge.d.ts +2 -0
  290. package/dist/thirdparty/merge.js +4 -8
  291. package/dist/thirdparty/merge.js.map +1 -0
  292. package/dist/types/AnimationMode.d.ts +32 -0
  293. package/dist/types/AnimationMode.js +33 -6
  294. package/dist/types/AnimationMode.js.map +1 -0
  295. package/dist/types/CSSColor.d.ts +16 -0
  296. package/dist/types/CSSColor.js +19 -0
  297. package/dist/types/CSSColor.js.map +1 -0
  298. package/dist/types/CalendarType.d.ts +37 -0
  299. package/dist/types/CalendarType.js +35 -18
  300. package/dist/types/CalendarType.js.map +1 -0
  301. package/dist/types/DOMReference.d.ts +17 -0
  302. package/dist/types/DOMReference.js +25 -0
  303. package/dist/types/DOMReference.js.map +1 -0
  304. package/dist/types/DataType.d.ts +25 -0
  305. package/dist/types/DataType.js +33 -14
  306. package/dist/types/DataType.js.map +1 -0
  307. package/dist/types/Float.d.ts +18 -0
  308. package/dist/types/Float.js +22 -0
  309. package/dist/types/Float.js.map +1 -0
  310. package/dist/types/Integer.d.ts +18 -0
  311. package/dist/types/Integer.js +18 -5
  312. package/dist/types/Integer.js.map +1 -0
  313. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  314. package/dist/types/InvisibleMessageMode.js +27 -0
  315. package/dist/types/InvisibleMessageMode.js.map +1 -0
  316. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  317. package/dist/types/ItemNavigationBehavior.js +22 -17
  318. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  319. package/dist/types/NavigationMode.d.ts +32 -0
  320. package/dist/types/NavigationMode.js +33 -5
  321. package/dist/types/NavigationMode.js.map +1 -0
  322. package/dist/types/ValueState.d.ts +42 -0
  323. package/dist/types/ValueState.js +41 -19
  324. package/dist/types/ValueState.js.map +1 -0
  325. package/dist/types.d.ts +18 -0
  326. package/dist/types.js +2 -0
  327. package/dist/types.js.map +1 -0
  328. package/dist/updateShadowRoot.d.ts +8 -0
  329. package/dist/updateShadowRoot.js +34 -0
  330. package/dist/updateShadowRoot.js.map +1 -0
  331. package/dist/util/AriaLabelHelper.d.ts +6 -0
  332. package/dist/util/AriaLabelHelper.js +44 -0
  333. package/dist/util/AriaLabelHelper.js.map +1 -0
  334. package/dist/util/Caret.d.ts +7 -0
  335. package/dist/util/Caret.js +23 -0
  336. package/dist/util/Caret.js.map +1 -0
  337. package/dist/util/ColorConversion.d.ts +30 -0
  338. package/dist/util/ColorConversion.js +337 -0
  339. package/dist/util/ColorConversion.js.map +1 -0
  340. package/dist/util/FetchHelper.d.ts +3 -0
  341. package/dist/util/FetchHelper.js +19 -25
  342. package/dist/util/FetchHelper.js.map +1 -0
  343. package/dist/util/FocusableElements.d.ts +4 -0
  344. package/dist/util/FocusableElements.js +67 -56
  345. package/dist/util/FocusableElements.js.map +1 -0
  346. package/dist/util/HTMLSanitizer.d.ts +3 -0
  347. package/dist/util/HTMLSanitizer.js +6 -0
  348. package/dist/util/HTMLSanitizer.js.map +1 -0
  349. package/dist/util/InvisibleMessage.d.ts +10 -0
  350. package/dist/util/InvisibleMessage.js +56 -0
  351. package/dist/util/InvisibleMessage.js.map +1 -0
  352. package/dist/util/PopupUtils.d.ts +7 -0
  353. package/dist/util/PopupUtils.js +74 -0
  354. package/dist/util/PopupUtils.js.map +1 -0
  355. package/dist/util/SlotsHelper.d.ts +9 -0
  356. package/dist/util/SlotsHelper.js +30 -0
  357. package/dist/util/SlotsHelper.js.map +1 -0
  358. package/dist/util/StringHelper.d.ts +3 -0
  359. package/dist/util/StringHelper.js +17 -20
  360. package/dist/util/StringHelper.js.map +1 -0
  361. package/dist/util/TabbableElements.d.ts +17 -0
  362. package/dist/util/TabbableElements.js +53 -43
  363. package/dist/util/TabbableElements.js.map +1 -0
  364. package/dist/util/arraysAreEqual.d.ts +2 -0
  365. package/dist/util/arraysAreEqual.js +13 -0
  366. package/dist/util/arraysAreEqual.js.map +1 -0
  367. package/dist/util/clamp.d.ts +9 -0
  368. package/dist/util/clamp.js +12 -0
  369. package/dist/util/clamp.js.map +1 -0
  370. package/dist/util/createLinkInHead.d.ts +7 -0
  371. package/dist/util/createLinkInHead.js +21 -0
  372. package/dist/util/createLinkInHead.js.map +1 -0
  373. package/dist/util/createStyleInHead.d.ts +8 -0
  374. package/dist/util/createStyleInHead.js +10 -10
  375. package/dist/util/createStyleInHead.js.map +1 -0
  376. package/dist/util/debounce.d.ts +2 -0
  377. package/dist/util/debounce.js +15 -0
  378. package/dist/util/debounce.js.map +1 -0
  379. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  380. package/dist/util/detectNavigatorLanguage.js +7 -10
  381. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  382. package/dist/util/escapeRegex.d.ts +8 -0
  383. package/dist/util/escapeRegex.js +11 -0
  384. package/dist/util/escapeRegex.js.map +1 -0
  385. package/dist/util/formatMessage.d.ts +2 -0
  386. package/dist/util/formatMessage.js +15 -19
  387. package/dist/util/formatMessage.js.map +1 -0
  388. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  389. package/dist/util/generateHighlightedMarkup.js +41 -0
  390. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  391. package/dist/util/getActiveElement.d.ts +2 -0
  392. package/dist/util/getActiveElement.js +9 -0
  393. package/dist/util/getActiveElement.js.map +1 -0
  394. package/dist/util/getClassCopy.d.ts +400 -0
  395. package/dist/util/getClassCopy.js +10 -0
  396. package/dist/util/getClassCopy.js.map +1 -0
  397. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  398. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  399. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  400. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  401. package/dist/util/getEffectiveContentDensity.js +4 -0
  402. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  403. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  404. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  405. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  406. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  407. package/dist/util/getFastNavigationGroups.js +51 -0
  408. package/dist/util/getFastNavigationGroups.js.map +1 -0
  409. package/dist/util/getFileExtension.d.ts +12 -0
  410. package/dist/util/getFileExtension.js +9 -11
  411. package/dist/util/getFileExtension.js.map +1 -0
  412. package/dist/util/getNormalizedTarget.d.ts +7 -0
  413. package/dist/util/getNormalizedTarget.js +14 -0
  414. package/dist/util/getNormalizedTarget.js.map +1 -0
  415. package/dist/util/getSingletonElementInstance.d.ts +2 -0
  416. package/dist/util/getSingletonElementInstance.js +10 -0
  417. package/dist/util/getSingletonElementInstance.js.map +1 -0
  418. package/dist/util/isElementClickable.d.ts +2 -0
  419. package/dist/util/isElementClickable.js +16 -0
  420. package/dist/util/isElementClickable.js.map +1 -0
  421. package/dist/util/isElementHidden.d.ts +2 -0
  422. package/dist/util/isElementHidden.js +8 -0
  423. package/dist/util/isElementHidden.js.map +1 -0
  424. package/dist/util/isElementInView.d.ts +6 -0
  425. package/dist/util/isElementInView.js +12 -0
  426. package/dist/util/isElementInView.js.map +1 -0
  427. package/dist/util/isElementTabbable.d.ts +9 -0
  428. package/dist/util/isElementTabbable.js +30 -0
  429. package/dist/util/isElementTabbable.js.map +1 -0
  430. package/dist/util/isValidPropertyName.d.ts +8 -0
  431. package/dist/util/isValidPropertyName.js +19 -14
  432. package/dist/util/isValidPropertyName.js.map +1 -0
  433. package/dist/util/whenDOMReady.d.ts +2 -0
  434. package/dist/util/whenDOMReady.js +11 -10
  435. package/dist/util/whenDOMReady.js.map +1 -0
  436. package/dist/util/willShowContent.d.ts +2 -0
  437. package/dist/util/willShowContent.js +7 -0
  438. package/dist/util/willShowContent.js.map +1 -0
  439. package/dist/validateThemeRoot.d.ts +2 -0
  440. package/dist/validateThemeRoot.js +47 -0
  441. package/dist/validateThemeRoot.js.map +1 -0
  442. package/index.js +1 -1
  443. package/lib/generate-asset-parameters/index.js +8 -5
  444. package/lib/generate-styles/index.js +31 -0
  445. package/lib/generate-version-info/index.js +32 -0
  446. package/package-scripts.js +50 -26
  447. package/package.json +20 -12
  448. package/src/AssetRegistry.ts +11 -0
  449. package/src/Boot.ts +65 -0
  450. package/src/CSP.ts +66 -0
  451. package/src/CustomElementsRegistry.ts +98 -0
  452. package/src/CustomElementsScope.ts +33 -0
  453. package/src/CustomElementsScopeUtils.ts +115 -0
  454. package/src/DOMObserver.ts +28 -0
  455. package/src/Device.ts +203 -0
  456. package/src/EventProvider.ts +87 -0
  457. package/src/FeaturesRegistry.ts +14 -0
  458. package/src/FontFace.ts +31 -0
  459. package/src/InitialConfiguration.ts +207 -0
  460. package/src/Keys.ts +295 -0
  461. package/src/ManagedStyles.ts +92 -0
  462. package/src/MarkedEvents.ts +20 -0
  463. package/src/MediaRange.ts +110 -0
  464. package/src/PropertiesFileFormat.ts +95 -0
  465. package/src/Render.ts +180 -0
  466. package/src/RenderQueue.ts +71 -0
  467. package/src/Runtimes.ts +114 -0
  468. package/src/StaticArea.ts +3 -0
  469. package/src/StaticAreaItem.ts +113 -0
  470. package/src/SystemCSSVars.ts +10 -0
  471. package/src/Theming.ts +4 -0
  472. package/src/UI5Element.ts +1156 -0
  473. package/src/UI5ElementMetadata.ts +389 -0
  474. package/src/animations/{AnimationQueue.js → AnimationQueue.ts} +8 -7
  475. package/src/animations/animate.ts +64 -0
  476. package/src/animations/scroll.ts +21 -0
  477. package/src/animations/{slideDown.js → slideDown.ts} +27 -34
  478. package/src/animations/{slideUp.js → slideUp.ts} +28 -32
  479. package/src/asset-registries/Icons.ts +162 -0
  480. package/src/asset-registries/Illustrations.ts +75 -0
  481. package/src/asset-registries/LocaleData.ts +172 -0
  482. package/src/asset-registries/Themes.ts +67 -0
  483. package/src/asset-registries/i18n.ts +118 -0
  484. package/src/assets-meta/IconCollectionsAlias.ts +18 -0
  485. package/src/config/AnimationMode.ts +33 -0
  486. package/src/config/{CalendarType.js → CalendarType.ts} +8 -3
  487. package/src/config/FormatSettings.ts +21 -0
  488. package/src/config/Icons.ts +59 -0
  489. package/src/config/Language.ts +72 -0
  490. package/src/config/NoConflict.ts +67 -0
  491. package/src/config/{RTL.js → RTL.ts} +18 -4
  492. package/src/config/Theme.ts +64 -0
  493. package/src/config/ThemeRoots.ts +41 -0
  494. package/src/css/BusyIndicator.css +80 -0
  495. package/src/css/FontFace.css +66 -0
  496. package/src/css/OverrideFontFace.css +32 -0
  497. package/src/css/SystemCSSVars.css +17 -0
  498. package/src/decorators/customElement.ts +17 -0
  499. package/src/decorators/event.ts +28 -0
  500. package/src/decorators/fastNavigation.ts +14 -0
  501. package/src/decorators/languageAware.ts +14 -0
  502. package/src/decorators/property.ts +30 -0
  503. package/src/decorators/slot.ts +49 -0
  504. package/src/decorators/themeAware.ts +14 -0
  505. package/src/delegate/ItemNavigation.ts +393 -0
  506. package/src/delegate/ResizeHandler.ts +100 -0
  507. package/src/delegate/ScrollEnablement.ts +224 -0
  508. package/src/features/F6Navigation.ts +195 -0
  509. package/src/features/OpenUI5Element.ts +11 -0
  510. package/src/features/OpenUI5Enablement.ts +117 -0
  511. package/src/features/OpenUI5Support.ts +148 -0
  512. package/src/generated/css/BusyIndicator.css.ts +9 -0
  513. package/src/generated/css/FontFace.css.ts +9 -0
  514. package/src/generated/css/OverrideFontFace.css.ts +9 -0
  515. package/src/generated/css/SystemCSSVars.css.ts +9 -0
  516. package/src/getSharedResource.ts +39 -0
  517. package/src/global.d.ts +38 -0
  518. package/src/i18nBundle.ts +108 -0
  519. package/src/locale/{Locale.js → Locale.ts} +15 -5
  520. package/src/locale/RTLAwareRegistry.ts +16 -0
  521. package/src/locale/applyDirection.ts +18 -0
  522. package/src/locale/directionChange.ts +34 -0
  523. package/src/locale/getEffectiveDir.ts +28 -0
  524. package/src/locale/{getLocale.js → getLocale.ts} +20 -5
  525. package/src/locale/languageChange.ts +24 -0
  526. package/src/locale/{nextFallbackLocale.js → nextFallbackLocale.ts} +1 -1
  527. package/src/locale/{normalizeLocale.js → normalizeLocale.ts} +5 -3
  528. package/src/renderer/LitRenderer.ts +60 -0
  529. package/src/renderer/directives/style-map.js +72 -0
  530. package/src/renderer/executeTemplate.ts +40 -0
  531. package/src/theming/CustomStyle.ts +64 -0
  532. package/src/theming/ThemeLoaded.ts +24 -0
  533. package/src/theming/applyTheme.ts +90 -0
  534. package/src/theming/getConstructableStyle.ts +31 -0
  535. package/src/theming/getEffectiveLinksHrefs.ts +26 -0
  536. package/src/theming/getEffectiveStyle.ts +41 -0
  537. package/src/theming/getStylesString.ts +15 -0
  538. package/src/theming/getThemeDesignerTheme.ts +101 -0
  539. package/src/theming/preloadLinks.ts +24 -0
  540. package/src/thirdparty/{_merge.js → _merge.ts} +2 -2
  541. package/src/thirdparty/{isPlainObject.js → isPlainObject.ts} +1 -1
  542. package/src/thirdparty/merge.ts +5 -0
  543. package/src/types/AnimationMode.ts +33 -0
  544. package/src/types/CSSColor.ts +20 -0
  545. package/src/types/CalendarType.ts +38 -0
  546. package/src/types/DOMReference.ts +28 -0
  547. package/src/types/DataType.ts +51 -0
  548. package/src/types/Float.ts +25 -0
  549. package/src/types/Integer.ts +25 -0
  550. package/src/types/InvisibleMessageMode.ts +27 -0
  551. package/src/types/ItemNavigationBehavior.ts +26 -0
  552. package/src/types/NavigationMode.ts +33 -0
  553. package/src/types/ValueState.ts +47 -0
  554. package/src/types.ts +30 -0
  555. package/src/updateShadowRoot.ts +37 -0
  556. package/src/util/AriaLabelHelper.ts +63 -0
  557. package/src/util/Caret.ts +28 -0
  558. package/src/util/ColorConversion.ts +399 -0
  559. package/src/util/{FetchHelper.js → FetchHelper.ts} +7 -7
  560. package/src/util/FocusableElements.ts +92 -0
  561. package/src/util/HTMLSanitizer.ts +9 -0
  562. package/src/util/InvisibleMessage.ts +69 -0
  563. package/src/util/PopupUtils.ts +112 -0
  564. package/src/util/SlotsHelper.ts +39 -0
  565. package/src/util/{StringHelper.js → StringHelper.ts} +7 -7
  566. package/src/util/TabbableElements.ts +70 -0
  567. package/src/util/arraysAreEqual.ts +15 -0
  568. package/src/util/clamp.ts +12 -0
  569. package/src/util/createLinkInHead.ts +25 -0
  570. package/src/util/{createStyleInHead.js → createStyleInHead.ts} +4 -2
  571. package/src/util/debounce.ts +18 -0
  572. package/src/util/{detectNavigatorLanguage.js → detectNavigatorLanguage.ts} +1 -1
  573. package/src/util/escapeRegex.ts +11 -0
  574. package/src/util/{formatMessage.js → formatMessage.ts} +4 -3
  575. package/src/util/generateHighlightedMarkup.ts +43 -0
  576. package/src/util/getActiveElement.ts +11 -0
  577. package/src/util/getClassCopy.ts +12 -0
  578. package/src/util/{getDesigntimePropertyAsArray.js → getDesigntimePropertyAsArray.ts} +1 -1
  579. package/src/util/getEffectiveContentDensity.ts +5 -0
  580. package/src/util/getEffectiveScrollbarStyle.ts +5 -0
  581. package/src/util/getFastNavigationGroups.ts +63 -0
  582. package/src/util/{getFileExtension.js → getFileExtension.ts} +3 -3
  583. package/src/util/getNormalizedTarget.ts +16 -0
  584. package/src/util/getSingletonElementInstance.ts +13 -0
  585. package/src/util/isElementClickable.ts +19 -0
  586. package/src/util/isElementHidden.ts +9 -0
  587. package/src/util/isElementInView.ts +15 -0
  588. package/src/util/isElementTabbable.ts +37 -0
  589. package/src/util/{isValidPropertyName.js → isValidPropertyName.ts} +10 -4
  590. package/src/util/{whenDOMReady.js → whenDOMReady.ts} +1 -1
  591. package/src/util/willShowContent.ts +7 -0
  592. package/src/validateThemeRoot.ts +58 -0
  593. package/tsconfig.json +13 -0
  594. package/used-modules.txt +10 -0
  595. package/bundle.es5.js +0 -28
  596. package/config/.eslintrc.js +0 -3
  597. package/config/rollup.config.js +0 -1
  598. package/dist/RenderScheduler.js +0 -146
  599. package/dist/SVGIconRegistry.js +0 -60
  600. package/dist/animations/config.js +0 -5
  601. package/dist/boot.js +0 -32
  602. package/dist/compatibility/DOMObserver.js +0 -62
  603. package/dist/compatibility/patchNodeValue.js +0 -24
  604. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  605. package/dist/delegate/CustomResize.js +0 -78
  606. package/dist/delegate/NativeResize.js +0 -44
  607. package/dist/features/browsersupport/Edge.js +0 -6
  608. package/dist/features/browsersupport/IE11.js +0 -41
  609. package/dist/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
  610. package/dist/renderer/ifDefined.js +0 -21
  611. package/dist/resources/bundle.es5.js +0 -212
  612. package/dist/resources/bundle.es5.js.map +0 -1
  613. package/dist/resources/bundle.esm.js +0 -129
  614. package/dist/resources/bundle.esm.js.map +0 -1
  615. package/dist/test-resources/assets/Themes.js +0 -13
  616. package/dist/test-resources/elements/Child.js +0 -35
  617. package/dist/test-resources/elements/Generic.js +0 -84
  618. package/dist/test-resources/elements/GenericExt.js +0 -26
  619. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  620. package/dist/test-resources/elements/Parent.js +0 -37
  621. package/dist/test-resources/elements/WithStaticArea.js +0 -76
  622. package/dist/test-resources/pages/AllTestElements.html +0 -42
  623. package/dist/test-resources/pages/Configuration.html +0 -20
  624. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  625. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  626. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  627. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  628. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  629. package/dist/test-resources/specs/StaticArea.spec.js +0 -34
  630. package/dist/test-resources/specs/Theming.spec.js +0 -31
  631. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  632. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  633. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  634. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  635. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  636. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  637. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  638. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  639. package/dist/theming/CSSVarsPonyfill.js +0 -24
  640. package/dist/theming/adaptCSSForIE.js +0 -90
  641. package/dist/theming/createComponentStyleTag.js +0 -49
  642. package/dist/theming/createThemePropertiesStyleTag.js +0 -20
  643. package/dist/thirdparty/Array.from.js +0 -16
  644. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  645. package/dist/thirdparty/Array.prototype.find.js +0 -46
  646. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  647. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  648. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  649. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  650. package/dist/thirdparty/Number.isInteger.js +0 -5
  651. package/dist/thirdparty/Number.isNaN.js +0 -1
  652. package/dist/thirdparty/Number.parseInt.js +0 -1
  653. package/dist/thirdparty/Object.assign.js +0 -31
  654. package/dist/thirdparty/Object.entries.js +0 -11
  655. package/dist/thirdparty/Symbol.js +0 -2
  656. package/dist/thirdparty/WeakSet.js +0 -27
  657. package/dist/thirdparty/es6-string-methods.js +0 -182
  658. package/dist/thirdparty/events-polyfills.js +0 -89
  659. package/dist/thirdparty/fetch.js +0 -1
  660. package/dist/thirdparty/template.js +0 -600
  661. package/dist/thirdparty/webcomponents-sd-ce-pf.js +0 -318
  662. package/dist/types/CSSSize.js +0 -9
  663. package/dist/types/PopupState.js +0 -37
  664. package/dist/util/findNodeOwner.js +0 -35
  665. package/dist/util/isDescendantOf.js +0 -15
  666. package/dist/util/isNodeClickable.js +0 -19
  667. package/dist/util/isNodeHidden.js +0 -13
  668. package/dist/util/isNodeTabbable.js +0 -28
  669. package/dist/webcomponentsjs/LICENSE.md +0 -19
  670. package/dist/webcomponentsjs/README.md +0 -229
  671. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  672. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  673. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  674. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  675. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  676. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  677. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  678. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  679. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  680. package/dist/webcomponentsjs/package.json +0 -46
  681. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  682. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  683. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  684. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  685. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  686. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  687. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  688. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  689. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  690. package/src/AssetRegistry.js +0 -9
  691. package/src/CustomElementsRegistry.js +0 -23
  692. package/src/Device.js +0 -823
  693. package/src/EventProvider.js +0 -73
  694. package/src/FeaturesRegistry.js +0 -11
  695. package/src/FontFace.js +0 -73
  696. package/src/InitialConfiguration.js +0 -131
  697. package/src/Keys.js +0 -161
  698. package/src/RenderQueue.js +0 -42
  699. package/src/RenderScheduler.js +0 -146
  700. package/src/SVGIconRegistry.js +0 -60
  701. package/src/StaticArea.js +0 -41
  702. package/src/StaticAreaItem.js +0 -105
  703. package/src/Theming.js +0 -3
  704. package/src/UI5Element.js +0 -898
  705. package/src/UI5ElementMetadata.js +0 -173
  706. package/src/animations/animate.js +0 -53
  707. package/src/animations/config.js +0 -5
  708. package/src/animations/scroll.js +0 -28
  709. package/src/asset-registries/Icons.js +0 -24
  710. package/src/asset-registries/LocaleData.js +0 -125
  711. package/src/asset-registries/Themes.js +0 -87
  712. package/src/asset-registries/i18n.js +0 -79
  713. package/src/boot.js +0 -32
  714. package/src/compatibility/DOMObserver.js +0 -62
  715. package/src/compatibility/patchNodeValue.js +0 -24
  716. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  717. package/src/config/AnimationMode.js +0 -13
  718. package/src/config/FormatSettings.js +0 -13
  719. package/src/config/Language.js +0 -12
  720. package/src/config/NoConflict.js +0 -51
  721. package/src/config/Theme.js +0 -28
  722. package/src/delegate/CustomResize.js +0 -78
  723. package/src/delegate/ItemNavigation.js +0 -278
  724. package/src/delegate/NativeResize.js +0 -44
  725. package/src/delegate/ResizeHandler.js +0 -66
  726. package/src/delegate/ScrollEnablement.js +0 -159
  727. package/src/features/OpenUI5Support.js +0 -90
  728. package/src/features/browsersupport/Edge.js +0 -6
  729. package/src/features/browsersupport/IE11.js +0 -41
  730. package/src/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
  731. package/src/i18nBundle.js +0 -33
  732. package/src/renderer/LitRenderer.js +0 -15
  733. package/src/renderer/ifDefined.js +0 -21
  734. package/src/theming/CSSVarsPonyfill.js +0 -24
  735. package/src/theming/CustomStyle.js +0 -19
  736. package/src/theming/adaptCSSForIE.js +0 -90
  737. package/src/theming/applyTheme.js +0 -81
  738. package/src/theming/createComponentStyleTag.js +0 -49
  739. package/src/theming/createThemePropertiesStyleTag.js +0 -20
  740. package/src/theming/getConstructableStyle.js +0 -25
  741. package/src/theming/getEffectiveStyle.js +0 -15
  742. package/src/theming/getThemeDesignerTheme.js +0 -67
  743. package/src/thirdparty/Array.from.js +0 -16
  744. package/src/thirdparty/Array.prototype.fill.js +0 -44
  745. package/src/thirdparty/Array.prototype.find.js +0 -46
  746. package/src/thirdparty/Array.prototype.includes.js +0 -51
  747. package/src/thirdparty/Element.prototype.closest.js +0 -11
  748. package/src/thirdparty/Element.prototype.matches.js +0 -6
  749. package/src/thirdparty/Map.prototype.keys.js +0 -9
  750. package/src/thirdparty/Number.isInteger.js +0 -5
  751. package/src/thirdparty/Number.isNaN.js +0 -1
  752. package/src/thirdparty/Number.parseInt.js +0 -1
  753. package/src/thirdparty/Object.assign.js +0 -31
  754. package/src/thirdparty/Object.entries.js +0 -11
  755. package/src/thirdparty/Symbol.js +0 -2
  756. package/src/thirdparty/WeakSet.js +0 -27
  757. package/src/thirdparty/es6-string-methods.js +0 -182
  758. package/src/thirdparty/events-polyfills.js +0 -89
  759. package/src/thirdparty/fetch.js +0 -1
  760. package/src/thirdparty/merge.js +0 -10
  761. package/src/thirdparty/template.js +0 -600
  762. package/src/thirdparty/webcomponents-sd-ce-pf.js +0 -318
  763. package/src/types/AnimationMode.js +0 -7
  764. package/src/types/CSSSize.js +0 -9
  765. package/src/types/CalendarType.js +0 -22
  766. package/src/types/DataType.js +0 -25
  767. package/src/types/Integer.js +0 -9
  768. package/src/types/ItemNavigationBehavior.js +0 -21
  769. package/src/types/NavigationMode.js +0 -6
  770. package/src/types/PopupState.js +0 -37
  771. package/src/types/ValueState.js +0 -22
  772. package/src/util/FocusableElements.js +0 -60
  773. package/src/util/TabbableElements.js +0 -47
  774. package/src/util/findNodeOwner.js +0 -35
  775. package/src/util/isDescendantOf.js +0 -15
  776. package/src/util/isNodeClickable.js +0 -19
  777. package/src/util/isNodeHidden.js +0 -13
  778. package/src/util/isNodeTabbable.js +0 -28
@@ -1,173 +0,0 @@
1
- import DataType from "./types/DataType.js";
2
- import isDescendantOf from "./util/isDescendantOf.js";
3
- import { camelToKebabCase } from "./util/StringHelper.js";
4
-
5
- /**
6
- *
7
- * @class
8
- * @public
9
- */
10
- class UI5ElementMetadata {
11
- constructor(metadata) {
12
- this.metadata = metadata;
13
- }
14
-
15
- /**
16
- * Only intended for use by UI5Element.js
17
- * @protected
18
- */
19
- static validatePropertyValue(value, propData) {
20
- const isMultiple = propData.multiple;
21
- if (isMultiple) {
22
- return value.map(propValue => validateSingleProperty(propValue, propData));
23
- }
24
- return validateSingleProperty(value, propData);
25
- }
26
-
27
- /**
28
- * Only intended for use by UI5Element.js
29
- * @protected
30
- */
31
- static validateSlotValue(value, slotData) {
32
- return validateSingleSlot(value, slotData);
33
- }
34
-
35
- /**
36
- * Returns the tag of the UI5 Element
37
- * @public
38
- */
39
- getTag() {
40
- return this.metadata.tag;
41
- }
42
-
43
- /**
44
- * Determines whether a property should have an attribute counterpart
45
- * @public
46
- * @param propName
47
- * @returns {boolean}
48
- */
49
- hasAttribute(propName) {
50
- const propData = this.getProperties()[propName];
51
- return propData.type !== Object && !propData.noAttribute;
52
- }
53
-
54
- /**
55
- * Returns an array with the properties of the UI5 Element (in camelCase)
56
- * @public
57
- * @returns {string[]}
58
- */
59
- getPropertiesList() {
60
- return Object.keys(this.getProperties());
61
- }
62
-
63
- /**
64
- * Returns an array with the attributes of the UI5 Element (in kebab-case)
65
- * @public
66
- * @returns {string[]}
67
- */
68
- getAttributesList() {
69
- return this.getPropertiesList().filter(this.hasAttribute, this).map(camelToKebabCase);
70
- }
71
-
72
- /**
73
- * Returns an object with key-value pairs of slots and their metadata definitions
74
- * @public
75
- */
76
- getSlots() {
77
- return this.metadata.slots || {};
78
- }
79
-
80
- /**
81
- * Determines whether this UI5 Element has a default slot of type Node, therefore can slot text
82
- * @returns {boolean}
83
- */
84
- canSlotText() {
85
- const defaultSlot = this.getSlots().default;
86
- return defaultSlot && defaultSlot.type === Node;
87
- }
88
-
89
- /**
90
- * Determines whether this UI5 Element supports any slots
91
- * @public
92
- */
93
- hasSlots() {
94
- return !!Object.entries(this.getSlots()).length;
95
- }
96
-
97
- /**
98
- * Determines whether this UI5 Element supports any slots with "individualSlots: true"
99
- * @public
100
- */
101
- hasIndividualSlots() {
102
- return this.slotsAreManaged() && Object.entries(this.getSlots()).some(([_slotName, slotData]) => slotData.individualSlots);
103
- }
104
-
105
- /**
106
- * Determines whether this UI5 Element needs to invalidate if children are added/removed/changed
107
- * @public
108
- */
109
- slotsAreManaged() {
110
- return !!this.metadata.managedSlots;
111
- }
112
-
113
- /**
114
- * Returns an object with key-value pairs of properties and their metadata definitions
115
- * @public
116
- */
117
- getProperties() {
118
- return this.metadata.properties || {};
119
- }
120
-
121
- /**
122
- * Returns an object with key-value pairs of events and their metadata definitions
123
- * @public
124
- */
125
- getEvents() {
126
- return this.metadata.events || {};
127
- }
128
- }
129
-
130
- const validateSingleProperty = (value, propData) => {
131
- const propertyType = propData.type;
132
-
133
- if (propertyType === Boolean) {
134
- return typeof value === "boolean" ? value : false;
135
- }
136
- if (propertyType === String) {
137
- return (typeof value === "string" || typeof value === "undefined" || value === null) ? value : value.toString();
138
- }
139
- if (propertyType === Object) {
140
- return typeof value === "object" ? value : propData.defaultValue;
141
- }
142
- if (isDescendantOf(propertyType, DataType)) {
143
- return propertyType.isValid(value) ? value : propData.defaultValue;
144
- }
145
- };
146
-
147
- const validateSingleSlot = (value, slotData) => {
148
- if (value === null) {
149
- return value;
150
- }
151
-
152
- const getSlottedNodes = el => {
153
- const isTag = el instanceof HTMLElement;
154
- const isSlot = isTag && el.localName === "slot";
155
-
156
- if (isSlot) {
157
- return el.assignedNodes({ flatten: true }).filter(item => item instanceof HTMLElement);
158
- }
159
-
160
- return [el];
161
- };
162
-
163
- const slottedNodes = getSlottedNodes(value);
164
- slottedNodes.forEach(el => {
165
- if (!(el instanceof slotData.type)) {
166
- throw new Error(`${el} is not of type ${slotData.type}`);
167
- }
168
- });
169
-
170
- return value;
171
- };
172
-
173
- export default UI5ElementMetadata;
@@ -1,53 +0,0 @@
1
- import AnimationQueue from "./AnimationQueue.js";
2
- import animationConfig from "./config.js";
3
-
4
- export default ({
5
- beforeStart = animationConfig.identity,
6
- duration = animationConfig.defaultDuration,
7
- element = animationConfig.element,
8
- progress: progressCallback = animationConfig.identity,
9
- }) => {
10
- let start = null;
11
- let stopped = false;
12
- let animationFrame;
13
- let stop;
14
- let animate;
15
-
16
- const promise = new Promise((resolve, reject) => {
17
- animate = timestamp => {
18
- start = start || timestamp;
19
-
20
- const timeElapsed = timestamp - start;
21
- const remaining = duration - timeElapsed;
22
-
23
- if (timeElapsed <= duration) {
24
- const progress = 1 - remaining / duration; // easing formula (currently linear)
25
- progressCallback(progress);
26
- animationFrame = !stopped && requestAnimationFrame(animate);
27
- } else {
28
- progressCallback(1);
29
- resolve();
30
- }
31
- };
32
-
33
- stop = () => {
34
- stopped = true;
35
- cancelAnimationFrame(animationFrame);
36
- reject(new Error("animation stopped"));
37
- };
38
- }).catch(oReason => oReason);
39
-
40
- AnimationQueue.push(element, () => {
41
- beforeStart();
42
- requestAnimationFrame(animate);
43
-
44
- return new Promise(resolve => {
45
- promise.then(() => resolve());
46
- });
47
- });
48
-
49
- return {
50
- promise: () => promise,
51
- stop: () => stop,
52
- };
53
- };
@@ -1,5 +0,0 @@
1
- export default {
2
- defaultDuration: 400,
3
- element: document.createElement("DIV"),
4
- identity: () => {},
5
- };
@@ -1,28 +0,0 @@
1
- import animate from "./animate.js";
2
- import animationConfig from "./config.js";
3
-
4
- export default ({
5
- element = animationConfig.element,
6
- duration = animationConfig.duration,
7
- progress: progressCallback = animationConfig.identity,
8
- dx = 0,
9
- dy = 0,
10
- }) => {
11
- let scrollLeft;
12
- let scrollTop;
13
-
14
- return animate({
15
- beforeStart: () => {
16
- scrollLeft = element.scrollLeft;
17
- scrollTop = element.scrollTop;
18
- },
19
- duration,
20
- element,
21
- progress: progress => {
22
- progressCallback(progress);
23
-
24
- element.scrollLeft = scrollLeft + (progress * dx); // easing - linear
25
- element.scrollTop = scrollTop + (progress * dy); // easing - linear
26
- },
27
- });
28
- };
@@ -1,24 +0,0 @@
1
- import { registerIcon, registerCollectionPromise } from "../SVGIconRegistry.js";
2
- import { fetchJsonOnce } from "../util/FetchHelper.js";
3
-
4
- const registerIconBundle = async (collectionName, bundleData) => {
5
- let resolveFn;
6
- const collectionFetched = new Promise(resolve => {
7
- resolveFn = resolve;
8
- });
9
- registerCollectionPromise(collectionName, collectionFetched);
10
-
11
- if (typeof bundleData !== "object") { // not inlined from build -> fetch it
12
- bundleData = await fetchJsonOnce(bundleData);
13
- }
14
- fillRegistry(bundleData);
15
- resolveFn();
16
- };
17
-
18
- const fillRegistry = bundleData => {
19
- Object.keys(bundleData.data).forEach(iconName => {
20
- registerIcon(iconName, { pathData: bundleData.data[iconName], accData: bundleData.accData[iconName], collection: bundleData.collection });
21
- });
22
- };
23
-
24
- export { registerIconBundle }; // eslint-disable-line
@@ -1,125 +0,0 @@
1
- import { fetchJsonOnce } from "../util/FetchHelper.js";
2
- import { getFeature } from "../FeaturesRegistry.js";
3
- import { DEFAULT_LOCALE, SUPPORTED_LOCALES } from "../generated/AssetParameters.js";
4
-
5
- const resources = new Map();
6
- const cldrData = {};
7
- const cldrUrls = {};
8
-
9
- // externally configurable mapping function for resolving (localeId -> URL)
10
- // default implementation - ui5 CDN
11
- let cldrMappingFn = locale => `https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/${locale}.json`;
12
-
13
- const M_ISO639_OLD_TO_NEW = {
14
- "iw": "he",
15
- "ji": "yi",
16
- "in": "id",
17
- "sh": "sr",
18
- };
19
-
20
- const calcLocale = (language, region, script) => {
21
- // normalize language and handle special cases
22
- language = (language && M_ISO639_OLD_TO_NEW[language]) || language;
23
- // Special case 1: in an SAP context, the inclusive language code "no" always means Norwegian Bokmal ("nb")
24
- if (language === "no") {
25
- language = "nb";
26
- }
27
- // Special case 2: for Chinese, derive a default region from the script (this behavior is inherited from Java)
28
- if (language === "zh" && !region) {
29
- if (script === "Hans") {
30
- region = "CN";
31
- } else if (script === "Hant") {
32
- region = "TW";
33
- }
34
- }
35
-
36
- // try language + region
37
- let localeId = `${language}_${region}`;
38
- if (!SUPPORTED_LOCALES.includes(localeId)) {
39
- // fallback to language only
40
- localeId = language;
41
- }
42
- if (!SUPPORTED_LOCALES.includes(localeId)) {
43
- // fallback to english
44
- localeId = DEFAULT_LOCALE;
45
- }
46
-
47
- return localeId;
48
- };
49
-
50
-
51
- const resolveMissingMappings = () => {
52
- if (!cldrMappingFn) {
53
- return;
54
- }
55
-
56
- const missingLocales = SUPPORTED_LOCALES.filter(locale => !cldrData[locale] && !cldrUrls[locale]);
57
- missingLocales.forEach(locale => {
58
- cldrUrls[locale] = cldrMappingFn(locale);
59
- });
60
- };
61
-
62
- const registerModuleContent = (moduleName, content) => {
63
- resources.set(moduleName, content);
64
- };
65
-
66
- const getModuleContent = moduleName => {
67
- const moduleContent = resources.get(moduleName);
68
- if (moduleContent) {
69
- return moduleContent;
70
- }
71
-
72
- const missingModule = moduleName.match(/sap\/ui\/core\/cldr\/(\w+)\.json/);
73
- if (missingModule) {
74
- throw new Error(`CLDR data for locale ${missingModule[1]} is not loaded!`);
75
- }
76
-
77
- throw new Error(`Unknown module ${moduleName}`);
78
- };
79
-
80
- const fetchCldr = async (language, region, script) => {
81
- resolveMissingMappings();
82
- const localeId = calcLocale(language, region, script);
83
-
84
- let cldrObj = cldrData[localeId];
85
- const url = cldrUrls[localeId];
86
-
87
- const OpenUI5Support = getFeature("OpenUI5Support");
88
- if (!cldrObj && OpenUI5Support) {
89
- cldrObj = OpenUI5Support.getLocaleDataObject();
90
- }
91
-
92
- if (cldrObj) {
93
- // inlined from build or fetched independently
94
- registerModuleContent(`sap/ui/core/cldr/${localeId}.json`, cldrObj);
95
- } else if (url) {
96
- // fetch it
97
- const cldrContent = await fetchJsonOnce(url);
98
- registerModuleContent(`sap/ui/core/cldr/${localeId}.json`, cldrContent);
99
- }
100
- };
101
-
102
- const registerCldr = (locale, url) => {
103
- cldrUrls[locale] = url;
104
- };
105
-
106
- const setCldrData = (locale, data) => {
107
- cldrData[locale] = data;
108
- };
109
-
110
- const getCldrData = locale => {
111
- return cldrData[locale];
112
- };
113
-
114
- const _registerMappingFunction = mappingFn => {
115
- cldrMappingFn = mappingFn;
116
- };
117
-
118
- export {
119
- fetchCldr,
120
- registerCldr,
121
- setCldrData,
122
- getCldrData,
123
- getModuleContent,
124
- _registerMappingFunction,
125
- };
@@ -1,87 +0,0 @@
1
- import { fetchJsonOnce, fetchTextOnce } from "../util/FetchHelper.js";
2
- import { DEFAULT_THEME } from "../generated/AssetParameters.js";
3
- import getFileExtension from "../util/getFileExtension.js";
4
-
5
- const themeURLs = new Map();
6
- const themeStyles = new Map();
7
- const registeredPackages = new Set();
8
- const registeredThemes = new Set();
9
-
10
- /**
11
- * Used to provide CSS Vars for a specific theme for a specific package.
12
- * The CSS Vars can be passed directly as a string (containing them), as an object with a "_" property(containing them in the "_" property), or as a URL.
13
- * This URL must point to a JSON file, containing a "_" property.
14
- *
15
- * Example usage:
16
- * 1) Pass the CSS Vars as a string directly.
17
- * registerThemeProperties("my-package", "my_theme", ":root{--var1: red;}");
18
- * 2) Pass the CSS Vars as an object directly
19
- * registerThemeProperties("my-package", "my_theme", {"_": ":root{--var1: red;}"});
20
- * 3) Pass a URL to a CSS file, containing the CSS Vars. Will be fetched on demand, not upon registration.
21
- * registerThemeProperties("my-package", "my_theme", "http://url/to/my/theme.css");
22
- * 4) Pass a URL to a JSON file, containing the CSS Vars in its "_" property. Will be fetched on demand, not upon registration.
23
- * registerThemeProperties("my-package", "my_theme", "http://url/to/my/theme.json");
24
- *
25
- * @public
26
- * @param packageName - the NPM package for which CSS Vars are registered
27
- * @param themeName - the theme which the CSS Vars implement
28
- * @param style - can be one of four options: a string, an object with a "_" property, URL to a CSS file, or URL to a JSON file with a "_" property
29
- */
30
- const registerThemeProperties = (packageName, themeName, style) => {
31
- if (style._) {
32
- // JSON object like ({"_": ":root"})
33
- themeStyles.set(`${packageName}_${themeName}`, style._);
34
- } else if (style.includes(":root") || style === "") {
35
- // pure string, including empty string
36
- themeStyles.set(`${packageName}_${themeName}`, style);
37
- } else {
38
- // url for fetching
39
- themeURLs.set(`${packageName}_${themeName}`, style);
40
- }
41
- registeredPackages.add(packageName);
42
- registeredThemes.add(themeName);
43
- };
44
-
45
- const getThemeProperties = async (packageName, themeName) => {
46
- const style = themeStyles.get(`${packageName}_${themeName}`);
47
- if (style !== undefined) { // it's valid for style to be an empty string
48
- return style;
49
- }
50
-
51
- if (!registeredThemes.has(themeName)) {
52
- const regThemesStr = [...registeredThemes.values()].join(", ");
53
- console.warn(`You have requested a non-registered theme - falling back to ${DEFAULT_THEME}. Registered themes are: ${regThemesStr}`); /* eslint-disable-line */
54
- return themeStyles.get(`${packageName}_${DEFAULT_THEME}`);
55
- }
56
-
57
- const data = await fetchThemeProperties(packageName, themeName);
58
- const themeProps = data._ || data;
59
-
60
- themeStyles.set(`${packageName}_${themeName}`, themeProps);
61
- return themeProps;
62
- };
63
-
64
- const fetchThemeProperties = async (packageName, themeName) => {
65
- const url = themeURLs.get(`${packageName}_${themeName}`);
66
-
67
- if (!url) {
68
- throw new Error(`You have to import the ${packageName}/dist/Assets.js module to switch to additional themes`);
69
- }
70
-
71
- return getFileExtension(url) === ".css" ? fetchTextOnce(url) : fetchJsonOnce(url);
72
- };
73
-
74
- const getRegisteredPackages = () => {
75
- return registeredPackages;
76
- };
77
-
78
- const isThemeRegistered = theme => {
79
- return registeredThemes.has(theme);
80
- };
81
-
82
- export {
83
- registerThemeProperties,
84
- getThemeProperties,
85
- getRegisteredPackages,
86
- isThemeRegistered,
87
- };
@@ -1,79 +0,0 @@
1
- import getLocale from "../locale/getLocale.js";
2
- import { fetchJsonOnce } from "../util/FetchHelper.js";
3
- import normalizeLocale from "../locale/normalizeLocale.js";
4
- import nextFallbackLocale from "../locale/nextFallbackLocale.js";
5
- import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
6
-
7
- const bundleData = new Map();
8
- const bundleURLs = new Map();
9
-
10
- /**
11
- * Sets a map with texts and ID the are related to.
12
- * @param {string} packageName package ID that the i18n bundle will be related to
13
- * @param {Object} data an object with string locales as keys and text translataions as values
14
- * @public
15
- */
16
- const setI18nBundleData = (packageName, data) => {
17
- bundleData.set(packageName, data);
18
- };
19
-
20
- const getI18nBundleData = packageName => {
21
- return bundleData.get(packageName);
22
- };
23
-
24
- /**
25
- * Registers a map of locale/url information, to be used by the <code>fetchI18nBundle</code> method.
26
- * @param {string} packageName package ID that the i18n bundle will be related to
27
- * @param {Object} bundle an object with string locales as keys and the URLs of where the corresponding locale can be fetched from, f.e {"en": "path/en.json", ...}
28
- * @public
29
- */
30
- const registerI18nBundle = (packageName, bundle) => {
31
- bundleURLs.set(packageName, bundle);
32
- };
33
-
34
- /**
35
- * This method preforms the asynchronous task of fetching the actual text resources. It will fetch
36
- * each text resource over the network once (even for multiple calls to the same method).
37
- * It should be fully finished before the i18nBundle class is created in the webcomponents.
38
- * This method uses the bundle URLs that are populated by the <code>registerI18nBundle</code> method.
39
- * To simplify the usage, the synchronization of both methods happens internally for the same <code>bundleId</code>
40
- * @param {packageName} packageName the NPM package name
41
- * @public
42
- */
43
- const fetchI18nBundle = async packageName => {
44
- const bundlesForPackage = bundleURLs.get(packageName);
45
-
46
- if (!bundlesForPackage) {
47
- console.warn(`Message bundle assets are not configured. Falling back to English texts.`, /* eslint-disable-line */
48
- ` You need to import ${packageName}/dist/Assets.js with a build tool that supports JSON imports.`); /* eslint-disable-line */
49
- return;
50
- }
51
-
52
- const language = getLocale().getLanguage();
53
-
54
- let localeId = normalizeLocale(language);
55
- while (!bundlesForPackage[localeId]) {
56
- localeId = nextFallbackLocale(localeId);
57
- }
58
-
59
- if (localeId === DEFAULT_LANGUAGE) {
60
- return;
61
- }
62
-
63
- const bundleURL = bundlesForPackage[localeId];
64
-
65
- if (typeof bundleURL === "object") { // inlined from build
66
- setI18nBundleData(packageName, bundleURL);
67
- return;
68
- }
69
-
70
- const data = await fetchJsonOnce(bundleURL);
71
- setI18nBundleData(packageName, data);
72
- };
73
-
74
- export {
75
- fetchI18nBundle,
76
- registerI18nBundle,
77
- setI18nBundleData,
78
- getI18nBundleData,
79
- };
package/src/boot.js DELETED
@@ -1,32 +0,0 @@
1
- import whenDOMReady from "./util/whenDOMReady.js";
2
- import insertFontFace from "./FontFace.js";
3
- import { getTheme } from "./config/Theme.js";
4
- import applyTheme from "./theming/applyTheme.js";
5
- import whenPolyfillLoaded from "./compatibility/whenPolyfillLoaded.js";
6
- import { getFeature } from "./FeaturesRegistry.js";
7
-
8
- let bootPromise;
9
-
10
- const boot = () => {
11
- if (bootPromise) {
12
- return bootPromise;
13
- }
14
-
15
- bootPromise = new Promise(async resolve => {
16
- const OpenUI5Support = getFeature("OpenUI5Support");
17
- if (OpenUI5Support) {
18
- await OpenUI5Support.init();
19
- }
20
-
21
- await whenDOMReady();
22
- await applyTheme(getTheme());
23
- OpenUI5Support && OpenUI5Support.attachListeners();
24
- insertFontFace();
25
- await whenPolyfillLoaded();
26
- resolve();
27
- });
28
-
29
- return bootPromise;
30
- };
31
-
32
- export default boot;
@@ -1,62 +0,0 @@
1
- // Shorthands
2
- const w = window;
3
-
4
- // Map of observer objects per dom node
5
- const observers = new WeakMap();
6
-
7
- /**
8
- * Implements universal DOM node observation methods.
9
- */
10
- class DOMObserver {
11
- constructor() {
12
- throw new Error("Static class");
13
- }
14
-
15
- /**
16
- * This function abstracts out mutation observer usage inside shadow DOM.
17
- * For native shadow DOM the native mutation observer is used.
18
- * When the polyfill is used, the observeChildren ShadyDOM method is used instead.
19
- *
20
- * @throws Exception
21
- * Note: does not allow several mutation observers per node. If there is a valid use-case, this behavior can be changed.
22
- *
23
- * @param node
24
- * @param callback
25
- * @param options - Only used for the native mutation observer
26
- */
27
- static observeDOMNode(node, callback, options) {
28
- let observerObject = observers.get(node);
29
- if (observerObject) {
30
- throw new Error("A mutation/ShadyDOM observer is already assigned to this node.");
31
- }
32
-
33
- if (w.ShadyDOM) {
34
- observerObject = w.ShadyDOM.observeChildren(node, callback);
35
- } else {
36
- observerObject = new MutationObserver(callback);
37
- observerObject.observe(node, options);
38
- }
39
-
40
- observers.set(node, observerObject);
41
- }
42
-
43
- /**
44
- * De-registers the mutation observer, depending on its type
45
- * @param node
46
- */
47
- static unobserveDOMNode(node) {
48
- const observerObject = observers.get(node);
49
- if (!observerObject) {
50
- return;
51
- }
52
-
53
- if (observerObject instanceof MutationObserver) {
54
- observerObject.disconnect();
55
- } else {
56
- w.ShadyDOM.unobserveChildren(observerObject);
57
- }
58
- observers.delete(node);
59
- }
60
- }
61
-
62
- export default DOMObserver;
@@ -1,24 +0,0 @@
1
- const patchNodeValue = () => {
2
- if (!window.ShadyDOM) {
3
- return;
4
- }
5
- const nativeNodeValue = Object.getOwnPropertyDescriptor(Node.prototype, "nodeValue");
6
- Object.defineProperty(Node.prototype, "nodeValue", {
7
- get() {
8
- return nativeNodeValue.get.apply(this);
9
- },
10
- set(text) {
11
- nativeNodeValue.set.apply(this, arguments); // eslint-disable-line
12
-
13
- // Call manually the mutation observer callback
14
- const parentElement = this.parentNode;
15
- if (parentElement instanceof HTMLElement && parentElement.isUI5Element) {
16
- parentElement._processChildren();
17
- }
18
- },
19
- });
20
- };
21
-
22
- patchNodeValue();
23
-
24
- export default {};