@ui5/webcomponents-base 0.0.0-998083e44 → 0.0.0-99b763015

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 (567) hide show
  1. package/.eslintignore +2 -0
  2. package/.eslintrc.js +3 -0
  3. package/CHANGELOG.md +242 -0
  4. package/bundle.esm.js +8 -2
  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 +38 -0
  100. package/dist/asset-registries/Icons.js +106 -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 +58 -80
  113. package/dist/asset-registries/i18n.js.map +1 -0
  114. package/dist/assets/Boot.34b7cea0.css +1 -0
  115. package/dist/assets/Boot.6080e450.js +9 -0
  116. package/dist/assets/bundle.esm.c372ea32.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/FontFace.css +9 -18
  148. package/dist/decorators/customElement.d.ts +23 -0
  149. package/dist/decorators/customElement.js +31 -0
  150. package/dist/decorators/customElement.js.map +1 -0
  151. package/dist/decorators/event.d.ts +10 -0
  152. package/dist/decorators/event.js +24 -0
  153. package/dist/decorators/event.js.map +1 -0
  154. package/dist/decorators/property.d.ts +9 -0
  155. package/dist/decorators/property.js +24 -0
  156. package/dist/decorators/property.js.map +1 -0
  157. package/dist/decorators/slot.d.ts +9 -0
  158. package/dist/decorators/slot.js +37 -0
  159. package/dist/decorators/slot.js.map +1 -0
  160. package/dist/delegate/ItemNavigation.d.ts +113 -0
  161. package/dist/delegate/ItemNavigation.js +277 -317
  162. package/dist/delegate/ItemNavigation.js.map +1 -0
  163. package/dist/delegate/ResizeHandler.d.ts +25 -0
  164. package/dist/delegate/ResizeHandler.js +70 -91
  165. package/dist/delegate/ResizeHandler.js.map +1 -0
  166. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  167. package/dist/delegate/ScrollEnablement.js +157 -180
  168. package/dist/delegate/ScrollEnablement.js.map +1 -0
  169. package/dist/features/F6Navigation.d.ts +19 -0
  170. package/dist/features/F6Navigation.js +145 -104
  171. package/dist/features/F6Navigation.js.map +1 -0
  172. package/dist/features/LegacyDateFormats.d.ts +18 -0
  173. package/dist/features/LegacyDateFormats.js +20 -0
  174. package/dist/features/LegacyDateFormats.js.map +1 -0
  175. package/dist/features/OpenUI5Element.d.ts +9 -0
  176. package/dist/features/OpenUI5Element.js +5 -0
  177. package/dist/features/OpenUI5Element.js.map +1 -0
  178. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  179. package/dist/features/OpenUI5Enablement.js +89 -112
  180. package/dist/features/OpenUI5Enablement.js.map +1 -0
  181. package/dist/features/OpenUI5Support.d.ts +25 -0
  182. package/dist/features/OpenUI5Support.js +92 -119
  183. package/dist/features/OpenUI5Support.js.map +1 -0
  184. package/dist/generated/VersionInfo.js +3 -3
  185. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  186. package/dist/generated/css/BusyIndicator.css.js +7 -5
  187. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  188. package/dist/generated/css/FontFace.css.d.ts +3 -0
  189. package/dist/generated/css/FontFace.css.js +7 -5
  190. package/dist/generated/css/FontFace.css.js.map +1 -0
  191. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  192. package/dist/generated/css/OverrideFontFace.css.js +7 -5
  193. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  194. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  195. package/dist/generated/css/SystemCSSVars.css.js +7 -5
  196. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  197. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +11 -0
  198. package/dist/getSharedResource.d.ts +11 -0
  199. package/dist/getSharedResource.js +21 -17
  200. package/dist/getSharedResource.js.map +1 -0
  201. package/dist/global.d.ts +38 -0
  202. package/dist/i18nBundle.d.ts +43 -0
  203. package/dist/i18nBundle.js +56 -64
  204. package/dist/i18nBundle.js.map +1 -0
  205. package/dist/locale/Locale.d.ts +22 -0
  206. package/dist/locale/Locale.js +75 -87
  207. package/dist/locale/Locale.js.map +1 -0
  208. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  209. package/dist/locale/RTLAwareRegistry.js +6 -11
  210. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  211. package/dist/locale/applyDirection.d.ts +10 -0
  212. package/dist/locale/applyDirection.js +7 -7
  213. package/dist/locale/applyDirection.js.map +1 -0
  214. package/dist/locale/directionChange.d.ts +15 -0
  215. package/dist/locale/directionChange.js +7 -15
  216. package/dist/locale/directionChange.js.map +1 -0
  217. package/dist/locale/getEffectiveDir.d.ts +2 -0
  218. package/dist/locale/getEffectiveDir.js +20 -24
  219. package/dist/locale/getEffectiveDir.js.map +1 -0
  220. package/dist/locale/getLocale.d.ts +7 -0
  221. package/dist/locale/getLocale.js +26 -29
  222. package/dist/locale/getLocale.js.map +1 -0
  223. package/dist/locale/languageChange.d.ts +5 -0
  224. package/dist/locale/languageChange.js +8 -16
  225. package/dist/locale/languageChange.js.map +1 -0
  226. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  227. package/dist/locale/nextFallbackLocale.js +15 -19
  228. package/dist/locale/nextFallbackLocale.js.map +1 -0
  229. package/dist/locale/normalizeLocale.d.ts +7 -0
  230. package/dist/locale/normalizeLocale.js +34 -41
  231. package/dist/locale/normalizeLocale.js.map +1 -0
  232. package/dist/renderer/LitRenderer.d.ts +14 -0
  233. package/dist/renderer/LitRenderer.js +28 -39
  234. package/dist/renderer/LitRenderer.js.map +1 -0
  235. package/dist/renderer/executeTemplate.d.ts +13 -0
  236. package/dist/renderer/executeTemplate.js +12 -16
  237. package/dist/renderer/executeTemplate.js.map +1 -0
  238. package/dist/sap/base/Log.js +28 -29
  239. package/dist/sap/base/assert.js +5 -6
  240. package/dist/sap/base/security/URLListValidator.js +13 -2
  241. package/dist/theming/CustomStyle.d.ts +6 -0
  242. package/dist/theming/CustomStyle.js +33 -45
  243. package/dist/theming/CustomStyle.js.map +1 -0
  244. package/dist/theming/ThemeLoaded.d.ts +5 -0
  245. package/dist/theming/ThemeLoaded.js +8 -16
  246. package/dist/theming/ThemeLoaded.js.map +1 -0
  247. package/dist/theming/ThemeRegistered.d.ts +4 -0
  248. package/dist/theming/ThemeRegistered.js +11 -0
  249. package/dist/theming/ThemeRegistered.js.map +1 -0
  250. package/dist/theming/applyTheme.d.ts +2 -0
  251. package/dist/theming/applyTheme.js +60 -64
  252. package/dist/theming/applyTheme.js.map +1 -0
  253. package/dist/theming/getConstructableStyle.d.ts +9 -0
  254. package/dist/theming/getConstructableStyle.js +12 -17
  255. package/dist/theming/getConstructableStyle.js.map +1 -0
  256. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  257. package/dist/theming/getEffectiveLinksHrefs.js +12 -22
  258. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  259. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  260. package/dist/theming/getEffectiveStyle.js +24 -31
  261. package/dist/theming/getEffectiveStyle.js.map +1 -0
  262. package/dist/theming/getStylesString.d.ts +3 -0
  263. package/dist/theming/getStylesString.js +9 -13
  264. package/dist/theming/getStylesString.js.map +1 -0
  265. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  266. package/dist/theming/getThemeDesignerTheme.js +72 -79
  267. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  268. package/dist/theming/preloadLinks.d.ts +3 -0
  269. package/dist/theming/preloadLinks.js +13 -17
  270. package/dist/theming/preloadLinks.js.map +1 -0
  271. package/dist/thirdparty/_merge.d.ts +2 -0
  272. package/dist/thirdparty/_merge.js +7 -4
  273. package/dist/thirdparty/_merge.js.map +1 -0
  274. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  275. package/dist/thirdparty/isPlainObject.js +11 -10
  276. package/dist/thirdparty/isPlainObject.js.map +1 -0
  277. package/dist/thirdparty/merge.d.ts +2 -0
  278. package/dist/thirdparty/merge.js +4 -8
  279. package/dist/thirdparty/merge.js.map +1 -0
  280. package/dist/types/AnimationMode.d.ts +32 -0
  281. package/dist/types/AnimationMode.js +33 -6
  282. package/dist/types/AnimationMode.js.map +1 -0
  283. package/dist/types/CSSColor.d.ts +15 -0
  284. package/dist/types/CSSColor.js +14 -5
  285. package/dist/types/CSSColor.js.map +1 -0
  286. package/dist/types/CalendarType.d.ts +37 -0
  287. package/dist/types/CalendarType.js +35 -18
  288. package/dist/types/CalendarType.js.map +1 -0
  289. package/dist/types/DOMReference.d.ts +17 -0
  290. package/dist/types/DOMReference.js +25 -0
  291. package/dist/types/DOMReference.js.map +1 -0
  292. package/dist/types/DataType.d.ts +25 -0
  293. package/dist/types/DataType.js +33 -26
  294. package/dist/types/DataType.js.map +1 -0
  295. package/dist/types/Float.d.ts +17 -0
  296. package/dist/types/Float.js +17 -10
  297. package/dist/types/Float.js.map +1 -0
  298. package/dist/types/Integer.d.ts +17 -0
  299. package/dist/types/Integer.js +17 -9
  300. package/dist/types/Integer.js.map +1 -0
  301. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  302. package/dist/types/InvisibleMessageMode.js +20 -23
  303. package/dist/types/InvisibleMessageMode.js.map +1 -0
  304. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  305. package/dist/types/ItemNavigationBehavior.js +22 -12
  306. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  307. package/dist/types/NavigationMode.d.ts +32 -0
  308. package/dist/types/NavigationMode.js +33 -6
  309. package/dist/types/NavigationMode.js.map +1 -0
  310. package/dist/types/ValueState.d.ts +42 -0
  311. package/dist/types/ValueState.js +41 -19
  312. package/dist/types/ValueState.js.map +1 -0
  313. package/dist/types.d.ts +18 -0
  314. package/dist/types.js +2 -0
  315. package/dist/types.js.map +1 -0
  316. package/dist/updateShadowRoot.d.ts +8 -0
  317. package/dist/updateShadowRoot.js +25 -16
  318. package/dist/updateShadowRoot.js.map +1 -0
  319. package/dist/util/AriaLabelHelper.d.ts +15 -0
  320. package/dist/util/AriaLabelHelper.js +166 -36
  321. package/dist/util/AriaLabelHelper.js.map +1 -0
  322. package/dist/util/Caret.d.ts +7 -0
  323. package/dist/util/Caret.js +16 -25
  324. package/dist/util/Caret.js.map +1 -0
  325. package/dist/util/ColorConversion.d.ts +30 -0
  326. package/dist/util/ColorConversion.js +311 -372
  327. package/dist/util/ColorConversion.js.map +1 -0
  328. package/dist/util/FetchHelper.d.ts +3 -0
  329. package/dist/util/FetchHelper.js +19 -25
  330. package/dist/util/FetchHelper.js.map +1 -0
  331. package/dist/util/FocusableElements.d.ts +4 -0
  332. package/dist/util/FocusableElements.js +63 -71
  333. package/dist/util/FocusableElements.js.map +1 -0
  334. package/{src/util/HTMLSanitizer.js → dist/util/HTMLSanitizer.d.ts} +1 -5
  335. package/dist/util/HTMLSanitizer.js +4 -5
  336. package/dist/util/HTMLSanitizer.js.map +1 -0
  337. package/dist/util/InvisibleMessage.d.ts +10 -0
  338. package/dist/util/InvisibleMessage.js +40 -53
  339. package/dist/util/InvisibleMessage.js.map +1 -0
  340. package/dist/util/PopupUtils.d.ts +7 -0
  341. package/dist/util/PopupUtils.js +58 -77
  342. package/dist/util/PopupUtils.js.map +1 -0
  343. package/dist/util/SlotsHelper.d.ts +9 -0
  344. package/dist/util/SlotsHelper.js +22 -35
  345. package/dist/util/SlotsHelper.js.map +1 -0
  346. package/dist/util/StringHelper.d.ts +3 -0
  347. package/dist/util/StringHelper.js +17 -20
  348. package/dist/util/StringHelper.js.map +1 -0
  349. package/dist/util/TabbableElements.d.ts +17 -0
  350. package/dist/util/TabbableElements.js +53 -47
  351. package/dist/util/TabbableElements.js.map +1 -0
  352. package/dist/util/arraysAreEqual.d.ts +2 -0
  353. package/dist/util/arraysAreEqual.js +10 -12
  354. package/dist/util/arraysAreEqual.js.map +1 -0
  355. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  356. package/dist/util/clamp.js +2 -2
  357. package/dist/util/clamp.js.map +1 -0
  358. package/dist/util/createLinkInHead.d.ts +7 -0
  359. package/dist/util/createLinkInHead.js +14 -12
  360. package/dist/util/createLinkInHead.js.map +1 -0
  361. package/dist/util/createStyleInHead.d.ts +8 -0
  362. package/dist/util/createStyleInHead.js +10 -10
  363. package/dist/util/createStyleInHead.js.map +1 -0
  364. package/dist/util/debounce.d.ts +2 -0
  365. package/dist/util/debounce.js +6 -8
  366. package/dist/util/debounce.js.map +1 -0
  367. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  368. package/dist/util/detectNavigatorLanguage.js +7 -10
  369. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  370. package/dist/util/escapeRegex.d.ts +8 -0
  371. package/dist/util/escapeRegex.js +8 -7
  372. package/dist/util/escapeRegex.js.map +1 -0
  373. package/dist/util/formatMessage.d.ts +2 -0
  374. package/dist/util/formatMessage.js +15 -19
  375. package/dist/util/formatMessage.js.map +1 -0
  376. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  377. package/dist/util/generateHighlightedMarkup.js +26 -27
  378. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  379. package/dist/util/getActiveElement.d.ts +2 -0
  380. package/dist/util/getActiveElement.js +6 -8
  381. package/dist/util/getActiveElement.js.map +1 -0
  382. package/dist/util/getClassCopy.d.ts +398 -0
  383. package/dist/util/getClassCopy.js +7 -7
  384. package/dist/util/getClassCopy.js.map +1 -0
  385. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  386. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  387. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  388. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  389. package/dist/util/getEffectiveContentDensity.js +2 -3
  390. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  391. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  392. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  393. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  394. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  395. package/dist/util/getFastNavigationGroups.js +51 -0
  396. package/dist/util/getFastNavigationGroups.js.map +1 -0
  397. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  398. package/dist/util/getFileExtension.js +9 -11
  399. package/dist/util/getFileExtension.js.map +1 -0
  400. package/{src/util/getNormalizedTarget.js → dist/util/getNormalizedTarget.d.ts} +1 -10
  401. package/dist/util/getNormalizedTarget.js +7 -9
  402. package/dist/util/getNormalizedTarget.js.map +1 -0
  403. package/dist/util/getSingletonElementInstance.d.ts +2 -0
  404. package/dist/util/getSingletonElementInstance.js +7 -10
  405. package/dist/util/getSingletonElementInstance.js.map +1 -0
  406. package/dist/util/isElementClickable.d.ts +2 -0
  407. package/dist/util/isElementClickable.js +16 -0
  408. package/dist/util/isElementClickable.js.map +1 -0
  409. package/dist/util/isElementHidden.d.ts +2 -0
  410. package/dist/util/isElementHidden.js +8 -0
  411. package/dist/util/isElementHidden.js.map +1 -0
  412. package/dist/util/isElementInView.d.ts +6 -0
  413. package/dist/util/isElementInView.js +6 -9
  414. package/dist/util/isElementInView.js.map +1 -0
  415. package/dist/util/isElementTabbable.d.ts +9 -0
  416. package/dist/util/isElementTabbable.js +30 -0
  417. package/dist/util/isElementTabbable.js.map +1 -0
  418. package/dist/util/isValidPropertyName.d.ts +8 -0
  419. package/dist/util/isValidPropertyName.js +16 -17
  420. package/dist/util/isValidPropertyName.js.map +1 -0
  421. package/dist/util/whenDOMReady.d.ts +2 -0
  422. package/dist/util/whenDOMReady.js +11 -10
  423. package/dist/util/whenDOMReady.js.map +1 -0
  424. package/dist/util/willShowContent.d.ts +2 -0
  425. package/dist/util/willShowContent.js +7 -0
  426. package/dist/util/willShowContent.js.map +1 -0
  427. package/dist/validateThemeRoot.d.ts +2 -0
  428. package/dist/validateThemeRoot.js +47 -0
  429. package/dist/validateThemeRoot.js.map +1 -0
  430. package/lib/generate-styles/index.js +10 -5
  431. package/package-scripts.js +23 -9
  432. package/package.json +4 -4
  433. package/src/css/FontFace.css +9 -18
  434. package/tsconfig.json +14 -0
  435. package/dist/RenderScheduler.js +0 -44
  436. package/dist/animations/config.js +0 -5
  437. package/dist/assets/bundle.esm.5c3fc675.js +0 -43
  438. package/dist/types/CSSSize.js +0 -9
  439. package/dist/types/PopupState.js +0 -37
  440. package/dist/util/findNodeOwner.js +0 -35
  441. package/dist/util/isDefaultSlotProvided.js +0 -11
  442. package/dist/util/isDescendantOf.js +0 -15
  443. package/dist/util/isNodeClickable.js +0 -19
  444. package/dist/util/isNodeHidden.js +0 -9
  445. package/dist/util/isNodeTabbable.js +0 -28
  446. package/dist/util/setToArray.js +0 -10
  447. package/hash.txt +0 -1
  448. package/src/Boot.js +0 -59
  449. package/src/CustomElementsRegistry.js +0 -95
  450. package/src/CustomElementsScope.js +0 -30
  451. package/src/CustomElementsScopeUtils.js +0 -108
  452. package/src/DOMObserver.js +0 -65
  453. package/src/Device.js +0 -121
  454. package/src/EventProvider.js +0 -85
  455. package/src/FeaturesRegistry.js +0 -14
  456. package/src/FontFace.js +0 -30
  457. package/src/InitialConfiguration.js +0 -166
  458. package/src/Keys.js +0 -295
  459. package/src/ManagedStyles.js +0 -83
  460. package/src/MediaRange.js +0 -109
  461. package/src/PropertiesFileFormat.js +0 -95
  462. package/src/Render.js +0 -175
  463. package/src/RenderQueue.js +0 -66
  464. package/src/RenderScheduler.js +0 -44
  465. package/src/Runtimes.js +0 -107
  466. package/src/StaticArea.js +0 -3
  467. package/src/StaticAreaItem.js +0 -101
  468. package/src/SystemCSSVars.js +0 -10
  469. package/src/UI5Element.js +0 -1033
  470. package/src/UI5ElementMetadata.js +0 -327
  471. package/src/animations/AnimationQueue.js +0 -42
  472. package/src/animations/animate.js +0 -53
  473. package/src/animations/config.js +0 -5
  474. package/src/animations/scroll.js +0 -28
  475. package/src/animations/slideDown.js +0 -79
  476. package/src/animations/slideUp.js +0 -71
  477. package/src/asset-registries/Icons.js +0 -135
  478. package/src/asset-registries/Illustrations.js +0 -30
  479. package/src/asset-registries/LocaleData.js +0 -164
  480. package/src/asset-registries/Themes.js +0 -82
  481. package/src/asset-registries/i18n.js +0 -123
  482. package/src/assets-meta/IconCollectionsAlias.js +0 -18
  483. package/src/config/AnimationMode.js +0 -23
  484. package/src/config/CalendarType.js +0 -18
  485. package/src/config/FormatSettings.js +0 -13
  486. package/src/config/Icons.js +0 -52
  487. package/src/config/Language.js +0 -68
  488. package/src/config/NoConflict.js +0 -51
  489. package/src/config/RTL.js +0 -31
  490. package/src/config/Theme.js +0 -53
  491. package/src/delegate/ItemNavigation.js +0 -356
  492. package/src/delegate/ResizeHandler.js +0 -106
  493. package/src/delegate/ScrollEnablement.js +0 -188
  494. package/src/features/F6Navigation.js +0 -110
  495. package/src/features/OpenUI5Enablement.js +0 -119
  496. package/src/features/OpenUI5Support.js +0 -125
  497. package/src/getSharedResource.js +0 -30
  498. package/src/i18nBundle.js +0 -86
  499. package/src/locale/Locale.js +0 -91
  500. package/src/locale/RTLAwareRegistry.js +0 -14
  501. package/src/locale/applyDirection.js +0 -17
  502. package/src/locale/directionChange.js +0 -32
  503. package/src/locale/getEffectiveDir.js +0 -28
  504. package/src/locale/getLocale.js +0 -41
  505. package/src/locale/languageChange.js +0 -22
  506. package/src/locale/nextFallbackLocale.js +0 -28
  507. package/src/locale/normalizeLocale.js +0 -54
  508. package/src/renderer/LitRenderer.js +0 -52
  509. package/src/renderer/executeTemplate.js +0 -34
  510. package/src/theming/CustomStyle.js +0 -60
  511. package/src/theming/ThemeLoaded.js +0 -22
  512. package/src/theming/applyTheme.js +0 -79
  513. package/src/theming/getConstructableStyle.js +0 -30
  514. package/src/theming/getEffectiveLinksHrefs.js +0 -27
  515. package/src/theming/getEffectiveStyle.js +0 -39
  516. package/src/theming/getStylesString.js +0 -15
  517. package/src/theming/getThemeDesignerTheme.js +0 -87
  518. package/src/theming/preloadLinks.js +0 -23
  519. package/src/thirdparty/_merge.js +0 -32
  520. package/src/thirdparty/isPlainObject.js +0 -18
  521. package/src/thirdparty/merge.js +0 -10
  522. package/src/types/AnimationMode.js +0 -7
  523. package/src/types/CSSColor.js +0 -9
  524. package/src/types/CSSSize.js +0 -9
  525. package/src/types/CalendarType.js +0 -22
  526. package/src/types/DataType.js +0 -37
  527. package/src/types/Float.js +0 -14
  528. package/src/types/Integer.js +0 -13
  529. package/src/types/InvisibleMessageMode.js +0 -30
  530. package/src/types/ItemNavigationBehavior.js +0 -16
  531. package/src/types/NavigationMode.js +0 -7
  532. package/src/types/PopupState.js +0 -37
  533. package/src/types/ValueState.js +0 -22
  534. package/src/updateShadowRoot.js +0 -29
  535. package/src/util/AriaLabelHelper.js +0 -41
  536. package/src/util/Caret.js +0 -32
  537. package/src/util/ColorConversion.js +0 -398
  538. package/src/util/FetchHelper.js +0 -31
  539. package/src/util/FocusableElements.js +0 -79
  540. package/src/util/InvisibleMessage.js +0 -69
  541. package/src/util/PopupUtils.js +0 -93
  542. package/src/util/SlotsHelper.js +0 -43
  543. package/src/util/StringHelper.js +0 -26
  544. package/src/util/TabbableElements.js +0 -51
  545. package/src/util/arraysAreEqual.js +0 -15
  546. package/src/util/createLinkInHead.js +0 -19
  547. package/src/util/createStyleInHead.js +0 -18
  548. package/src/util/debounce.js +0 -17
  549. package/src/util/detectNavigatorLanguage.js +0 -13
  550. package/src/util/escapeRegex.js +0 -10
  551. package/src/util/findNodeOwner.js +0 -35
  552. package/src/util/formatMessage.js +0 -23
  553. package/src/util/generateHighlightedMarkup.js +0 -42
  554. package/src/util/getActiveElement.js +0 -11
  555. package/src/util/getClassCopy.js +0 -10
  556. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  557. package/src/util/getEffectiveContentDensity.js +0 -5
  558. package/src/util/getSingletonElementInstance.js +0 -13
  559. package/src/util/isDefaultSlotProvided.js +0 -11
  560. package/src/util/isDescendantOf.js +0 -15
  561. package/src/util/isElementInView.js +0 -15
  562. package/src/util/isNodeClickable.js +0 -19
  563. package/src/util/isNodeHidden.js +0 -9
  564. package/src/util/isNodeTabbable.js +0 -28
  565. package/src/util/isValidPropertyName.js +0 -29
  566. package/src/util/setToArray.js +0 -10
  567. package/src/util/whenDOMReady.js +0 -13
@@ -1,26 +0,0 @@
1
- const kebabToCamelMap = new Map();
2
- const camelToKebabMap = new Map();
3
-
4
- const kebabToCamelCase = string => {
5
- if (!kebabToCamelMap.has(string)) {
6
- const result = toCamelCase(string.split("-"));
7
- kebabToCamelMap.set(string, result);
8
- }
9
- return kebabToCamelMap.get(string);
10
- };
11
-
12
- const camelToKebabCase = string => {
13
- if (!camelToKebabMap.has(string)) {
14
- const result = string.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
15
- camelToKebabMap.set(string, result);
16
- }
17
- return camelToKebabMap.get(string);
18
- };
19
-
20
- const toCamelCase = parts => {
21
- return parts.map((string, index) => {
22
- return index === 0 ? string.toLowerCase() : string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
23
- }).join("");
24
- };
25
-
26
- export { kebabToCamelCase, camelToKebabCase };
@@ -1,51 +0,0 @@
1
- import isNodeTabbable from "./isNodeTabbable.js";
2
-
3
- const getTabbableElements = node => {
4
- return getTabbables(node.children);
5
- };
6
-
7
- const getLastTabbableElement = node => {
8
- const tabbables = getTabbables(node.children);
9
- return tabbables.length ? tabbables[tabbables.length - 1] : null;
10
- };
11
-
12
- const getTabbables = (nodes, tabbables) => {
13
- const tabbablesNodes = tabbables || [];
14
-
15
- if (!nodes) {
16
- return tabbablesNodes;
17
- }
18
-
19
- Array.from(nodes).forEach(currentNode => {
20
- if (currentNode.nodeType === Node.TEXT_NODE || currentNode.nodeType === Node.COMMENT_NODE || currentNode.hasAttribute("data-sap-no-tab-ref")) {
21
- return;
22
- }
23
-
24
- if (currentNode.shadowRoot) {
25
- // get the root node of the ShadowDom (1st none style tag)
26
- const children = currentNode.shadowRoot.children;
27
- currentNode = Array.from(children).find(node => node.tagName !== "STYLE");
28
- }
29
-
30
- if (!currentNode) {
31
- return;
32
- }
33
-
34
- if (isNodeTabbable(currentNode)) {
35
- tabbablesNodes.push(currentNode);
36
- }
37
-
38
- if (currentNode.tagName === "SLOT") {
39
- getTabbables(currentNode.assignedNodes(), tabbablesNodes);
40
- } else {
41
- getTabbables(currentNode.children, tabbablesNodes);
42
- }
43
- });
44
-
45
- return tabbablesNodes;
46
- };
47
-
48
- export {
49
- getTabbableElements,
50
- getLastTabbableElement,
51
- };
@@ -1,15 +0,0 @@
1
- const arraysAreEqual = (arr1, arr2) => {
2
- if (arr1.length !== arr2.length) {
3
- return false;
4
- }
5
-
6
- for (let i = 0; i < arr1.length; i++) {
7
- if (arr1[i] !== arr2[i]) {
8
- return false;
9
- }
10
- }
11
-
12
- return true;
13
- };
14
-
15
- export default arraysAreEqual;
@@ -1,19 +0,0 @@
1
- /**
2
- * Creates a <link> tag in the <head> tag
3
- * @param href - the CSS
4
- * @param attributes - optional attributes to add to the tag
5
- * @returns {HTMLElement}
6
- */
7
- const createLinkInHead = (href, attributes = {}) => {
8
- const link = document.createElement("link");
9
- link.type = "text/css";
10
- link.rel = "stylesheet";
11
-
12
- Object.entries(attributes).forEach(pair => link.setAttribute(...pair));
13
-
14
- link.href = href;
15
- document.head.appendChild(link);
16
- return link;
17
- };
18
-
19
- export default createLinkInHead;
@@ -1,18 +0,0 @@
1
- /**
2
- * Creates a <style> tag in the <head> tag
3
- * @param cssText - the CSS
4
- * @param attributes - optional attributes to add to the tag
5
- * @returns {HTMLElement}
6
- */
7
- const createStyleInHead = (cssText, attributes = {}) => {
8
- const style = document.createElement("style");
9
- style.type = "text/css";
10
-
11
- Object.entries(attributes).forEach(pair => style.setAttribute(...pair));
12
-
13
- style.textContent = cssText;
14
- document.head.appendChild(style);
15
- return style;
16
- };
17
-
18
- export default createStyleInHead;
@@ -1,17 +0,0 @@
1
- /**
2
- * Delays function execution by given threshold.
3
- * @param fn {Function}
4
- * @param delay {Integer}
5
- */
6
-
7
- let debounceInterval = null;
8
-
9
- const debounce = (fn, delay) => {
10
- clearTimeout(debounceInterval);
11
- debounceInterval = setTimeout(() => {
12
- debounceInterval = null;
13
- fn();
14
- }, delay);
15
- };
16
-
17
- export default debounce;
@@ -1,13 +0,0 @@
1
- import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
2
-
3
- export default () => {
4
- const browserLanguages = navigator.languages;
5
-
6
- const navigatorLanguage = () => {
7
- return navigator.language;
8
- };
9
-
10
- const rawLocale = (browserLanguages && browserLanguages[0]) || navigatorLanguage() || navigator.userLanguage || navigator.browserLanguage;
11
-
12
- return rawLocale || DEFAULT_LANGUAGE;
13
- };
@@ -1,10 +0,0 @@
1
- /**
2
- * Escape a regular expression text so that it can be used in a regular expression.
3
- * @param {string} text The string to be interpreted literally
4
- * @returns Regular expression string to pass to regex
5
- */
6
- function escapeRegex(text) {
7
- return text.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
8
- }
9
-
10
- export default escapeRegex;
@@ -1,35 +0,0 @@
1
- const findNodeOwner = node => {
2
- if (!(node instanceof HTMLElement)) {
3
- throw new Error("Argument node should be of type HTMLElement");
4
- }
5
-
6
- const ownerTypes = [HTMLHtmlElement, HTMLIFrameElement];
7
- let currentShadowRootFlag = true;
8
- let currentCustomElementFlag = true;
9
-
10
- while (node) {
11
- if (node.toString() === "[object ShadowRoot]") {
12
- // Web Component
13
- // or the shadow root of web component with attached shadow root
14
- if (currentShadowRootFlag) {
15
- currentShadowRootFlag = false;
16
- }
17
- if (!currentCustomElementFlag && !currentShadowRootFlag) {
18
- return node;
19
- }
20
- } else if (node.tagName && node.tagName.indexOf("-") > -1) {
21
- if (currentCustomElementFlag) {
22
- currentCustomElementFlag = false;
23
- } else {
24
- return node;
25
- }
26
- } else if (ownerTypes.indexOf(node.constructor) > -1) {
27
- // Document or Iframe reached
28
- return node;
29
- }
30
-
31
- node = node.parentNode || node.host;
32
- }
33
- };
34
-
35
- export default findNodeOwner;
@@ -1,23 +0,0 @@
1
- const messageFormatRegEX = /('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g;
2
-
3
- const formatMessage = (text, values) => {
4
- values = values || [];
5
-
6
- return text.replace(messageFormatRegEX, ($0, $1, $2, $3, offset) => {
7
- if ($1) {
8
- return '\''; /* eslint-disable-line */
9
- }
10
-
11
- if ($2) {
12
- return $2.replace(/''/g, '\''); /* eslint-disable-line */
13
- }
14
-
15
- if ($3) {
16
- return String(values[parseInt($3)]);
17
- }
18
-
19
- throw new Error(`[i18n]: pattern syntax error at pos ${offset}`);
20
- });
21
- };
22
-
23
- export default formatMessage;
@@ -1,42 +0,0 @@
1
- import escapeRegex from "./escapeRegex.js";
2
- import encodeXML from "../sap/base/security/encodeXML.js";
3
-
4
- // utility to replace all occurances of a string
5
- function replaceAll(text, find, replace, caseInsensitive) {
6
- return text.replace(new RegExp(escapeRegex(find), `${caseInsensitive ? "i" : ""}g`), replace);
7
- }
8
-
9
- /**
10
- * Generate markup for a raw string where a particular text is wrapped with some tag, by default `<b>` (bold) tag.
11
- * All inputs to this function are considered literal text, and special characters will always be escaped.
12
- * @param {string} text The text to add highlighting to
13
- * @param {string} textToHighlight The text which should be highlighted
14
- * @return {string} the markup HTML which contains all occurrances of the input text surrounded with a `<b>` tag.
15
- */
16
- function generateHighlightedMarkup(text, textToHighlight) {
17
- if (!text || !textToHighlight) {
18
- return text;
19
- }
20
- // a token is some string that does not appear in either of the input strings
21
- // repeat the token until it does not appear in the string
22
- const makeToken = t => {
23
- const [s, e] = t.split("");
24
- while (text.indexOf(t) >= 0 || textToHighlight.indexOf(t) >= 0) {
25
- t = `${s}${t}${e}`;
26
- }
27
- return t;
28
- };
29
- // It doesn't matter what characters are used as long as all 4 of them are unique
30
- // And also that encodeXML will not change these characters
31
- const openToken = makeToken("12");
32
- const closeToken = makeToken("34");
33
- // wrap every occurance of the textToHighlight using the open/close tokens (instead of markup at this point)
34
- let result = encodeXML(replaceAll(text, textToHighlight, match => `${openToken}${match}${closeToken}`, true));
35
- // now replace the open and close tokens with the markup that we expect
36
- [[openToken, "<b>"], [closeToken, "</b>"]].forEach(([find, replace]) => {
37
- result = replaceAll(result, find, replace);
38
- });
39
- return result;
40
- }
41
-
42
- export default generateHighlightedMarkup;
@@ -1,11 +0,0 @@
1
- const getActiveElement = () => {
2
- let element = document.activeElement;
3
-
4
- while (element && element.shadowRoot && element.shadowRoot.activeElement) {
5
- element = element.shadowRoot.activeElement;
6
- }
7
-
8
- return element;
9
- };
10
-
11
- export default getActiveElement;
@@ -1,10 +0,0 @@
1
- const getClassCopy = (klass, constructorCallback) => {
2
- return class classCopy extends klass {
3
- constructor() {
4
- super();
5
- constructorCallback && constructorCallback();
6
- }
7
- };
8
- };
9
-
10
- export default getClassCopy;
@@ -1,4 +0,0 @@
1
- export default value => {
2
- const m = /\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(value);
3
- return m && m[2] ? m[2].split(/,/) : null;
4
- };
@@ -1,5 +0,0 @@
1
- const GLOBAL_CONTENT_DENSITY_CSS_VAR = "--_ui5_content_density";
2
-
3
- const getEffectiveContentDensity = el => getComputedStyle(el).getPropertyValue(GLOBAL_CONTENT_DENSITY_CSS_VAR);
4
-
5
- export default getEffectiveContentDensity;
@@ -1,13 +0,0 @@
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);
11
- };
12
-
13
- export default getSingletonElementInstance;
@@ -1,11 +0,0 @@
1
- import { getSlotName } from "./SlotsHelper.js";
2
-
3
- const isDefaultSlotProvided = element => {
4
- return Array.from(element.childNodes).filter(node => {
5
- return node.nodeType !== Node.COMMENT_NODE
6
- && getSlotName(node) === "default"
7
- && (node.nodeType !== Node.TEXT_NODE || node.nodeValue.trim().length !== 0);
8
- }).length > 0;
9
- };
10
-
11
- export default isDefaultSlotProvided;
@@ -1,15 +0,0 @@
1
- const isDescendantOf = (klass, baseKlass, inclusive = false) => {
2
- if (typeof klass !== "function" || typeof baseKlass !== "function") {
3
- return false;
4
- }
5
- if (inclusive && klass === baseKlass) {
6
- return true;
7
- }
8
- let parent = klass;
9
- do {
10
- parent = Object.getPrototypeOf(parent);
11
- } while (parent !== null && parent !== baseKlass);
12
- return parent === baseKlass;
13
- };
14
-
15
- export default isDescendantOf;
@@ -1,15 +0,0 @@
1
- /**
2
- * Determines if the element is within the viewport.
3
- * @param el {HTMLElement}
4
- */
5
- const isElementInView = el => {
6
- const rect = el.getBoundingClientRect();
7
-
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
- );
13
- };
14
-
15
- export default isElementInView;
@@ -1,19 +0,0 @@
1
- const rClickable = /^(?:a|area)$/i;
2
- const rFocusable = /^(?:input|select|textarea|button)$/i;
3
-
4
- const isNodeClickable = node => {
5
- if (node.disabled) {
6
- return false;
7
- }
8
-
9
- const tabIndex = node.getAttribute("tabindex");
10
- if (tabIndex !== null && tabIndex !== undefined) {
11
- return parseInt(tabIndex) >= 0;
12
- }
13
-
14
- return rFocusable.test(node.nodeName)
15
- || (rClickable.test(node.nodeName)
16
- && node.href);
17
- };
18
-
19
- export default isNodeClickable;
@@ -1,9 +0,0 @@
1
- const isNodeHidden = node => {
2
- if (node.nodeName === "SLOT") {
3
- return false;
4
- }
5
-
6
- return (node.offsetWidth <= 0 && node.offsetHeight <= 0) || (node.style && node.style.visibility === "hidden");
7
- };
8
-
9
- export default isNodeHidden;
@@ -1,28 +0,0 @@
1
- import isNodeHidden from "./isNodeHidden.js";
2
-
3
- const isNodeTabbable = node => {
4
- if (!node) {
5
- return false;
6
- }
7
-
8
- const nodeName = node.nodeName.toLowerCase();
9
-
10
- if (node.hasAttribute("data-sap-no-tab-ref")) {
11
- return false;
12
- }
13
-
14
- if (isNodeHidden(node)) {
15
- return false;
16
- }
17
-
18
- const tabIndex = node.getAttribute("tabindex");
19
- if (tabIndex !== null && tabIndex !== undefined) {
20
- return parseInt(tabIndex) >= 0;
21
- }
22
-
23
- if (nodeName === "a" || /input|select|textarea|button|object/.test(nodeName)) {
24
- return !node.disabled;
25
- }
26
- };
27
-
28
- export default isNodeTabbable;
@@ -1,29 +0,0 @@
1
- // Note: disabled is present in IE so we explicitly allow it here.
2
- // Others, such as title/hidden, we explicitly override, so valid too
3
- const allowList = [
4
- "disabled",
5
- "title",
6
- "hidden",
7
- "role",
8
- "draggable",
9
- ];
10
-
11
- /**
12
- * Checks whether a property name is valid (does not collide with existing DOM API properties)
13
- *
14
- * @param name
15
- * @returns {boolean}
16
- */
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
27
- };
28
-
29
- export default isValidPropertyName;
@@ -1,10 +0,0 @@
1
- // This is needed as IE11 doesn't have Set.prototype.keys/values/entries, so [...mySet.values()] is not an option
2
- const setToArray = s => {
3
- const arr = [];
4
- s.forEach(item => {
5
- arr.push(item);
6
- });
7
- return arr;
8
- };
9
-
10
- export default setToArray;
@@ -1,13 +0,0 @@
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
- });
11
- };
12
-
13
- export default whenDOMReady;