@ui5/webcomponents-base 0.0.0-9e104af01 → 0.0.0-a289c53b5

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 (390) hide show
  1. package/.eslintignore +5 -4
  2. package/.eslintrc.cjs +3 -0
  3. package/.npsrc.json +3 -0
  4. package/CHANGELOG.md +242 -0
  5. package/bundle.esm.js +5 -1
  6. package/config/wdio.conf.cjs +400 -0
  7. package/dist/AssetRegistry.js.map +1 -1
  8. package/dist/Boot.d.ts +4 -3
  9. package/dist/Boot.js +31 -4
  10. package/dist/Boot.js.map +1 -1
  11. package/dist/CSP.js.map +1 -1
  12. package/dist/CustomElementsRegistry.js.map +1 -1
  13. package/dist/CustomElementsScope.js.map +1 -1
  14. package/dist/CustomElementsScopeUtils.js.map +1 -1
  15. package/dist/DOMObserver.js.map +1 -1
  16. package/dist/Device.js +109 -34
  17. package/dist/Device.js.map +1 -1
  18. package/dist/EventProvider.js.map +1 -1
  19. package/dist/FeaturesRegistry.js.map +1 -1
  20. package/dist/FontFace.js.map +1 -1
  21. package/dist/InitialConfiguration.d.ts +6 -1
  22. package/dist/InitialConfiguration.js +11 -2
  23. package/dist/InitialConfiguration.js.map +1 -1
  24. package/dist/Keys.js.map +1 -1
  25. package/dist/ManagedStyles.js.map +1 -1
  26. package/dist/MarkedEvents.js.map +1 -1
  27. package/dist/MediaRange.js.map +1 -1
  28. package/dist/PropertiesFileFormat.js.map +1 -1
  29. package/dist/Render.js.map +1 -1
  30. package/dist/RenderQueue.js.map +1 -1
  31. package/dist/Runtimes.js.map +1 -1
  32. package/dist/StaticArea.d.ts +3 -0
  33. package/dist/StaticArea.js +4 -3
  34. package/dist/StaticArea.js.map +1 -1
  35. package/dist/StaticAreaItem.js.map +1 -1
  36. package/dist/SystemCSSVars.js.map +1 -1
  37. package/dist/Theming.js.map +1 -1
  38. package/dist/UI5Element.d.ts +20 -15
  39. package/dist/UI5Element.js +11 -23
  40. package/dist/UI5Element.js.map +1 -1
  41. package/dist/UI5ElementMetadata.js.map +1 -1
  42. package/dist/animations/AnimationQueue.js.map +1 -1
  43. package/dist/animations/animate.js.map +1 -1
  44. package/dist/animations/scroll.js.map +1 -1
  45. package/dist/animations/slideDown.js.map +1 -1
  46. package/dist/animations/slideUp.js.map +1 -1
  47. package/dist/api.json +1 -1
  48. package/dist/asset-registries/Icons.d.ts +18 -10
  49. package/dist/asset-registries/Icons.js +44 -23
  50. package/dist/asset-registries/Icons.js.map +1 -1
  51. package/dist/asset-registries/Illustrations.d.ts +1 -1
  52. package/dist/asset-registries/Illustrations.js.map +1 -1
  53. package/dist/asset-registries/LocaleData.js.map +1 -1
  54. package/dist/asset-registries/Themes.d.ts +1 -0
  55. package/dist/asset-registries/Themes.js +2 -0
  56. package/dist/asset-registries/Themes.js.map +1 -1
  57. package/dist/asset-registries/i18n.js +9 -3
  58. package/dist/asset-registries/i18n.js.map +1 -1
  59. package/dist/assets/Boot.34b7cea0.css +1 -0
  60. package/dist/assets/Boot.650535e2.js +9 -0
  61. package/dist/assets/bundle.esm.ceb1b6b8.js +50 -0
  62. package/dist/assets-meta/IconCollectionsAlias.d.ts +24 -10
  63. package/dist/assets-meta/IconCollectionsAlias.js +29 -9
  64. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -1
  65. package/dist/config/AnimationMode.js.map +1 -1
  66. package/dist/config/CalendarType.js.map +1 -1
  67. package/dist/config/FormatSettings.d.ts +5 -1
  68. package/dist/config/FormatSettings.js +5 -1
  69. package/dist/config/FormatSettings.js.map +1 -1
  70. package/dist/config/Icons.d.ts +43 -18
  71. package/dist/config/Icons.js +81 -26
  72. package/dist/config/Icons.js.map +1 -1
  73. package/dist/config/Language.d.ts +10 -1
  74. package/dist/config/Language.js +13 -1
  75. package/dist/config/Language.js.map +1 -1
  76. package/dist/config/NoConflict.js +1 -0
  77. package/dist/config/NoConflict.js.map +1 -1
  78. package/dist/config/RTL.js +3 -0
  79. package/dist/config/RTL.js.map +1 -1
  80. package/dist/config/Theme.d.ts +15 -5
  81. package/dist/config/Theme.js +25 -6
  82. package/dist/config/Theme.js.map +1 -1
  83. package/dist/config/ThemeRoots.js.map +1 -1
  84. package/dist/config/Timezone.d.ts +17 -0
  85. package/dist/config/Timezone.js +30 -0
  86. package/dist/config/Timezone.js.map +1 -0
  87. package/dist/decorators/customElement.d.ts +17 -2
  88. package/dist/decorators/customElement.js +26 -5
  89. package/dist/decorators/customElement.js.map +1 -1
  90. package/dist/decorators/event.js +6 -6
  91. package/dist/decorators/event.js.map +1 -1
  92. package/dist/decorators/property.js +6 -6
  93. package/dist/decorators/property.js.map +1 -1
  94. package/dist/decorators/slot.js +9 -9
  95. package/dist/decorators/slot.js.map +1 -1
  96. package/dist/delegate/ItemNavigation.js.map +1 -1
  97. package/dist/delegate/ResizeHandler.d.ts +2 -1
  98. package/dist/delegate/ResizeHandler.js +7 -3
  99. package/dist/delegate/ResizeHandler.js.map +1 -1
  100. package/dist/delegate/ScrollEnablement.d.ts +4 -3
  101. package/dist/delegate/ScrollEnablement.js.map +1 -1
  102. package/dist/features/F6Navigation.d.ts +3 -0
  103. package/dist/features/F6Navigation.js +77 -38
  104. package/dist/features/F6Navigation.js.map +1 -1
  105. package/dist/features/LegacyDateFormats.d.ts +18 -0
  106. package/dist/features/LegacyDateFormats.js +20 -0
  107. package/dist/features/LegacyDateFormats.js.map +1 -0
  108. package/dist/features/OpenUI5Element.js.map +1 -1
  109. package/dist/features/OpenUI5Enablement.js.map +1 -1
  110. package/dist/features/OpenUI5Support.d.ts +3 -0
  111. package/dist/features/OpenUI5Support.js +2 -0
  112. package/dist/features/OpenUI5Support.js.map +1 -1
  113. package/dist/generated/AssetParameters.js +2 -0
  114. package/dist/generated/VersionInfo.js +3 -3
  115. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  116. package/dist/generated/css/BusyIndicator.css.js +7 -5
  117. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  118. package/dist/generated/css/FontFace.css.d.ts +3 -0
  119. package/dist/generated/css/FontFace.css.js +7 -5
  120. package/dist/generated/css/FontFace.css.js.map +1 -0
  121. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  122. package/dist/generated/css/OverrideFontFace.css.js +7 -5
  123. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  124. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  125. package/dist/generated/css/SystemCSSVars.css.js +7 -5
  126. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  127. package/dist/getSharedResource.d.ts +1 -1
  128. package/dist/getSharedResource.js +10 -2
  129. package/dist/getSharedResource.js.map +1 -1
  130. package/{global.d.ts → dist/global.d.ts} +2 -6
  131. package/dist/i18nBundle.js.map +1 -1
  132. package/dist/locale/Locale.js.map +1 -1
  133. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  134. package/dist/locale/applyDirection.js.map +1 -1
  135. package/dist/locale/directionChange.js.map +1 -1
  136. package/dist/locale/getEffectiveDir.js.map +1 -1
  137. package/dist/locale/getLocale.js.map +1 -1
  138. package/dist/locale/languageChange.js.map +1 -1
  139. package/dist/locale/nextFallbackLocale.js.map +1 -1
  140. package/dist/locale/normalizeLocale.js.map +1 -1
  141. package/dist/renderer/LitRenderer.d.ts +3 -3
  142. package/dist/renderer/LitRenderer.js.map +1 -1
  143. package/dist/renderer/executeTemplate.js.map +1 -1
  144. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  145. package/dist/theming/CustomStyle.js +7 -5
  146. package/dist/theming/CustomStyle.js.map +1 -1
  147. package/dist/theming/ThemeLoaded.js.map +1 -1
  148. package/dist/theming/ThemeRegistered.d.ts +4 -0
  149. package/dist/theming/ThemeRegistered.js +11 -0
  150. package/dist/theming/ThemeRegistered.js.map +1 -0
  151. package/dist/theming/applyTheme.js.map +1 -1
  152. package/dist/theming/getConstructableStyle.js.map +1 -1
  153. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -1
  154. package/dist/theming/getEffectiveStyle.js.map +1 -1
  155. package/dist/theming/getStylesString.d.ts +1 -1
  156. package/dist/theming/getStylesString.js.map +1 -1
  157. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  158. package/dist/theming/preloadLinks.js.map +1 -1
  159. package/dist/thirdparty/_merge.js.map +1 -1
  160. package/dist/thirdparty/isPlainObject.js.map +1 -1
  161. package/dist/thirdparty/merge.js.map +1 -1
  162. package/dist/types/AnimationMode.d.ts +1 -1
  163. package/dist/types/AnimationMode.js +1 -1
  164. package/dist/types/AnimationMode.js.map +1 -1
  165. package/dist/types/CSSColor.d.ts +0 -1
  166. package/dist/types/CSSColor.js +0 -1
  167. package/dist/types/CSSColor.js.map +1 -1
  168. package/dist/types/CalendarType.d.ts +1 -1
  169. package/dist/types/CalendarType.js +1 -1
  170. package/dist/types/CalendarType.js.map +1 -1
  171. package/dist/types/DOMReference.js.map +1 -1
  172. package/dist/types/DataType.js.map +1 -1
  173. package/dist/types/Float.d.ts +0 -1
  174. package/dist/types/Float.js +0 -1
  175. package/dist/types/Float.js.map +1 -1
  176. package/dist/types/Integer.d.ts +0 -1
  177. package/dist/types/Integer.js +0 -1
  178. package/dist/types/Integer.js.map +1 -1
  179. package/dist/types/InvisibleMessageMode.d.ts +1 -1
  180. package/dist/types/InvisibleMessageMode.js +1 -1
  181. package/dist/types/InvisibleMessageMode.js.map +1 -1
  182. package/dist/types/ItemNavigationBehavior.d.ts +1 -1
  183. package/dist/types/ItemNavigationBehavior.js +1 -1
  184. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  185. package/dist/types/NavigationMode.d.ts +1 -1
  186. package/dist/types/NavigationMode.js +1 -1
  187. package/dist/types/NavigationMode.js.map +1 -1
  188. package/dist/types/ValueState.d.ts +1 -1
  189. package/dist/types/ValueState.js +1 -1
  190. package/dist/types/ValueState.js.map +1 -1
  191. package/dist/types.js.map +1 -1
  192. package/dist/updateShadowRoot.js +4 -0
  193. package/dist/updateShadowRoot.js.map +1 -1
  194. package/dist/util/AriaLabelHelper.d.ts +10 -1
  195. package/dist/util/AriaLabelHelper.js +135 -8
  196. package/dist/util/AriaLabelHelper.js.map +1 -1
  197. package/dist/util/Caret.js.map +1 -1
  198. package/dist/util/ColorConversion.js.map +1 -1
  199. package/dist/util/FetchHelper.js.map +1 -1
  200. package/dist/util/FocusableElements.js +12 -2
  201. package/dist/util/FocusableElements.js.map +1 -1
  202. package/dist/util/HTMLSanitizer.js.map +1 -1
  203. package/dist/util/InvisibleMessage.js.map +1 -1
  204. package/dist/util/PopupUtils.d.ts +1 -1
  205. package/dist/util/PopupUtils.js +6 -6
  206. package/dist/util/PopupUtils.js.map +1 -1
  207. package/dist/util/SlotsHelper.js.map +1 -1
  208. package/dist/util/StringHelper.js.map +1 -1
  209. package/dist/util/TabbableElements.js.map +1 -1
  210. package/dist/util/arraysAreEqual.js.map +1 -1
  211. package/dist/util/clamp.js.map +1 -1
  212. package/dist/util/createLinkInHead.js.map +1 -1
  213. package/dist/util/createStyleInHead.js.map +1 -1
  214. package/dist/util/debounce.js.map +1 -1
  215. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  216. package/dist/util/escapeRegex.js.map +1 -1
  217. package/dist/util/formatMessage.js.map +1 -1
  218. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  219. package/dist/util/getActiveElement.js.map +1 -1
  220. package/dist/util/getClassCopy.d.ts +8 -10
  221. package/dist/util/getClassCopy.js.map +1 -1
  222. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  223. package/dist/util/getEffectiveContentDensity.js.map +1 -1
  224. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -1
  225. package/dist/util/getFastNavigationGroups.js.map +1 -1
  226. package/dist/util/getFileExtension.js.map +1 -1
  227. package/dist/util/getNormalizedTarget.js.map +1 -1
  228. package/dist/util/getSingletonElementInstance.js.map +1 -1
  229. package/dist/util/isElementClickable.js.map +1 -1
  230. package/dist/util/isElementHidden.js.map +1 -1
  231. package/dist/util/isElementInView.js.map +1 -1
  232. package/dist/util/isElementTabbable.js.map +1 -1
  233. package/dist/util/isValidPropertyName.js.map +1 -1
  234. package/dist/util/whenDOMReady.js.map +1 -1
  235. package/dist/util/willShowContent.js.map +1 -1
  236. package/dist/validateThemeRoot.js +14 -13
  237. package/dist/validateThemeRoot.js.map +1 -1
  238. package/index.js +227 -1
  239. package/lib/generate-asset-parameters/index.js +4 -2
  240. package/lib/generate-styles/index.js +13 -8
  241. package/lib/generate-version-info/index.js +1 -1
  242. package/{package-scripts.js → package-scripts.cjs} +11 -7
  243. package/package.json +5 -4
  244. package/tsconfig.json +2 -1
  245. package/config/wdio.conf.js +0 -1
  246. package/dist/assets/bundle.esm.0b4afb20.js +0 -56
  247. package/dist/decorators/fastNavigation.d.ts +0 -7
  248. package/dist/decorators/fastNavigation.js +0 -13
  249. package/dist/decorators/fastNavigation.js.map +0 -1
  250. package/dist/decorators/languageAware.d.ts +0 -7
  251. package/dist/decorators/languageAware.js +0 -13
  252. package/dist/decorators/languageAware.js.map +0 -1
  253. package/dist/decorators/themeAware.d.ts +0 -7
  254. package/dist/decorators/themeAware.js +0 -13
  255. package/dist/decorators/themeAware.js.map +0 -1
  256. package/src/AssetRegistry.ts +0 -11
  257. package/src/Boot.ts +0 -61
  258. package/src/CSP.ts +0 -66
  259. package/src/CustomElementsRegistry.ts +0 -98
  260. package/src/CustomElementsScope.ts +0 -33
  261. package/src/CustomElementsScopeUtils.ts +0 -115
  262. package/src/DOMObserver.ts +0 -28
  263. package/src/Device.ts +0 -124
  264. package/src/EventProvider.ts +0 -87
  265. package/src/FeaturesRegistry.ts +0 -14
  266. package/src/FontFace.ts +0 -31
  267. package/src/InitialConfiguration.ts +0 -207
  268. package/src/Keys.ts +0 -295
  269. package/src/ManagedStyles.ts +0 -92
  270. package/src/MarkedEvents.ts +0 -20
  271. package/src/MediaRange.ts +0 -110
  272. package/src/PropertiesFileFormat.ts +0 -95
  273. package/src/Render.ts +0 -180
  274. package/src/RenderQueue.ts +0 -71
  275. package/src/Runtimes.ts +0 -114
  276. package/src/StaticArea.ts +0 -3
  277. package/src/StaticAreaItem.ts +0 -113
  278. package/src/SystemCSSVars.ts +0 -10
  279. package/src/Theming.ts +0 -4
  280. package/src/UI5Element.ts +0 -1155
  281. package/src/UI5ElementMetadata.ts +0 -389
  282. package/src/animations/AnimationQueue.ts +0 -43
  283. package/src/animations/animate.ts +0 -64
  284. package/src/animations/scroll.ts +0 -21
  285. package/src/animations/slideDown.ts +0 -72
  286. package/src/animations/slideUp.ts +0 -67
  287. package/src/asset-registries/Icons.ts +0 -162
  288. package/src/asset-registries/Illustrations.ts +0 -75
  289. package/src/asset-registries/LocaleData.ts +0 -172
  290. package/src/asset-registries/Themes.ts +0 -67
  291. package/src/asset-registries/i18n.ts +0 -118
  292. package/src/assets-meta/IconCollectionsAlias.ts +0 -18
  293. package/src/config/AnimationMode.ts +0 -33
  294. package/src/config/CalendarType.ts +0 -23
  295. package/src/config/FormatSettings.ts +0 -21
  296. package/src/config/Icons.ts +0 -59
  297. package/src/config/Language.ts +0 -72
  298. package/src/config/NoConflict.ts +0 -67
  299. package/src/config/RTL.ts +0 -41
  300. package/src/config/Theme.ts +0 -64
  301. package/src/config/ThemeRoots.ts +0 -41
  302. package/src/decorators/customElement.ts +0 -17
  303. package/src/decorators/event.ts +0 -28
  304. package/src/decorators/fastNavigation.ts +0 -14
  305. package/src/decorators/languageAware.ts +0 -14
  306. package/src/decorators/property.ts +0 -30
  307. package/src/decorators/slot.ts +0 -49
  308. package/src/decorators/themeAware.ts +0 -14
  309. package/src/delegate/ItemNavigation.ts +0 -393
  310. package/src/delegate/ResizeHandler.ts +0 -95
  311. package/src/delegate/ScrollEnablement.ts +0 -221
  312. package/src/features/F6Navigation.ts +0 -141
  313. package/src/features/OpenUI5Element.ts +0 -11
  314. package/src/features/OpenUI5Enablement.ts +0 -117
  315. package/src/features/OpenUI5Support.ts +0 -148
  316. package/src/getSharedResource.ts +0 -30
  317. package/src/i18nBundle.ts +0 -108
  318. package/src/locale/Locale.ts +0 -101
  319. package/src/locale/RTLAwareRegistry.ts +0 -16
  320. package/src/locale/applyDirection.ts +0 -18
  321. package/src/locale/directionChange.ts +0 -34
  322. package/src/locale/getEffectiveDir.ts +0 -28
  323. package/src/locale/getLocale.ts +0 -46
  324. package/src/locale/languageChange.ts +0 -24
  325. package/src/locale/nextFallbackLocale.ts +0 -28
  326. package/src/locale/normalizeLocale.ts +0 -56
  327. package/src/renderer/LitRenderer.ts +0 -60
  328. package/src/renderer/executeTemplate.ts +0 -40
  329. package/src/theming/CustomStyle.ts +0 -62
  330. package/src/theming/ThemeLoaded.ts +0 -24
  331. package/src/theming/applyTheme.ts +0 -90
  332. package/src/theming/getConstructableStyle.ts +0 -31
  333. package/src/theming/getEffectiveLinksHrefs.ts +0 -26
  334. package/src/theming/getEffectiveStyle.ts +0 -41
  335. package/src/theming/getStylesString.ts +0 -15
  336. package/src/theming/getThemeDesignerTheme.ts +0 -101
  337. package/src/theming/preloadLinks.ts +0 -24
  338. package/src/thirdparty/_merge.ts +0 -32
  339. package/src/thirdparty/isPlainObject.ts +0 -18
  340. package/src/thirdparty/merge.ts +0 -5
  341. package/src/types/AnimationMode.ts +0 -33
  342. package/src/types/CSSColor.ts +0 -20
  343. package/src/types/CalendarType.ts +0 -38
  344. package/src/types/DOMReference.ts +0 -28
  345. package/src/types/DataType.ts +0 -51
  346. package/src/types/Float.ts +0 -25
  347. package/src/types/Integer.ts +0 -25
  348. package/src/types/InvisibleMessageMode.ts +0 -27
  349. package/src/types/ItemNavigationBehavior.ts +0 -26
  350. package/src/types/NavigationMode.ts +0 -33
  351. package/src/types/ValueState.ts +0 -47
  352. package/src/types.ts +0 -30
  353. package/src/updateShadowRoot.ts +0 -37
  354. package/src/util/AriaLabelHelper.ts +0 -63
  355. package/src/util/Caret.ts +0 -28
  356. package/src/util/ColorConversion.ts +0 -399
  357. package/src/util/FetchHelper.ts +0 -31
  358. package/src/util/FocusableElements.ts +0 -82
  359. package/src/util/HTMLSanitizer.ts +0 -9
  360. package/src/util/InvisibleMessage.ts +0 -69
  361. package/src/util/PopupUtils.ts +0 -114
  362. package/src/util/SlotsHelper.ts +0 -39
  363. package/src/util/StringHelper.ts +0 -26
  364. package/src/util/TabbableElements.ts +0 -70
  365. package/src/util/arraysAreEqual.ts +0 -15
  366. package/src/util/clamp.ts +0 -12
  367. package/src/util/createLinkInHead.ts +0 -25
  368. package/src/util/createStyleInHead.ts +0 -20
  369. package/src/util/debounce.ts +0 -18
  370. package/src/util/detectNavigatorLanguage.ts +0 -13
  371. package/src/util/escapeRegex.ts +0 -11
  372. package/src/util/formatMessage.ts +0 -24
  373. package/src/util/generateHighlightedMarkup.ts +0 -43
  374. package/src/util/getActiveElement.ts +0 -11
  375. package/src/util/getClassCopy.ts +0 -12
  376. package/src/util/getDesigntimePropertyAsArray.ts +0 -4
  377. package/src/util/getEffectiveContentDensity.ts +0 -5
  378. package/src/util/getEffectiveScrollbarStyle.ts +0 -5
  379. package/src/util/getFastNavigationGroups.ts +0 -63
  380. package/src/util/getFileExtension.ts +0 -21
  381. package/src/util/getNormalizedTarget.ts +0 -16
  382. package/src/util/getSingletonElementInstance.ts +0 -13
  383. package/src/util/isElementClickable.ts +0 -19
  384. package/src/util/isElementHidden.ts +0 -9
  385. package/src/util/isElementInView.ts +0 -15
  386. package/src/util/isElementTabbable.ts +0 -37
  387. package/src/util/isValidPropertyName.ts +0 -29
  388. package/src/util/whenDOMReady.ts +0 -13
  389. package/src/util/willShowContent.ts +0 -7
  390. package/src/validateThemeRoot.ts +0 -58
@@ -1,37 +0,0 @@
1
- import isElementHidden from "./isElementHidden.js";
2
-
3
- /**
4
- * Returns if the HTMLElement is tabbable.
5
- *
6
- * @public
7
- * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
8
- * @returns { boolean } true if the element is tabbable or false - if not
9
- */
10
- const isElementTabbable = (el: HTMLElement): boolean => {
11
- if (!el) {
12
- return false;
13
- }
14
-
15
- const nodeName = el.nodeName.toLowerCase();
16
-
17
- if (el.hasAttribute("data-sap-no-tab-ref")) {
18
- return false;
19
- }
20
-
21
- if (isElementHidden(el)) {
22
- return false;
23
- }
24
-
25
- const tabIndex = el.getAttribute("tabindex");
26
- if (tabIndex !== null && tabIndex !== undefined) {
27
- return parseInt(tabIndex) >= 0;
28
- }
29
-
30
- if (nodeName === "a" || /input|select|textarea|button|object/.test(nodeName)) {
31
- return !(el as HTMLLinkElement).disabled;
32
- }
33
-
34
- return false;
35
- };
36
-
37
- export default isElementTabbable;
@@ -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: string) => {
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,13 +0,0 @@
1
- const whenDOMReady = () => {
2
- return new Promise<void>(resolve => {
3
- if (document.body) {
4
- resolve();
5
- } else {
6
- document.addEventListener("DOMContentLoaded", () => {
7
- resolve();
8
- });
9
- }
10
- });
11
- };
12
-
13
- export default whenDOMReady;
@@ -1,7 +0,0 @@
1
- const willShowContent = (childNodes: Array<Node>) => {
2
- return Array.from(childNodes).filter(node => {
3
- return node.nodeType !== Node.COMMENT_NODE && (node.nodeType !== Node.TEXT_NODE || (node.nodeValue || "").trim().length !== 0);
4
- }).length > 0;
5
- };
6
-
7
- export default willShowContent;
@@ -1,58 +0,0 @@
1
- const getMetaTagValue = (metaTagName: string) => {
2
- const metaTag = document.querySelector(`META[name="${metaTagName}"]`),
3
- metaTagContent = metaTag && metaTag.getAttribute("content");
4
-
5
- return metaTagContent;
6
- };
7
-
8
- const validateThemeOrigin = (origin: string) => {
9
- const allowedOrigins = getMetaTagValue("sap-allowedThemeOrigins");
10
-
11
- return allowedOrigins && allowedOrigins.split(",").some(allowedOrigin => {
12
- return allowedOrigin === "*" || origin === allowedOrigin.trim();
13
- });
14
- };
15
-
16
- const buildCorrectUrl = (oldUrl: string, newOrigin: string) => {
17
- const oldUrlPath = new URL(oldUrl).pathname;
18
-
19
- return new URL(oldUrlPath, newOrigin).toString();
20
- };
21
-
22
- const validateThemeRoot = (themeRoot: string) => {
23
- let themeRootURL,
24
- resultUrl;
25
-
26
- try {
27
- themeRootURL = new URL(themeRoot);
28
-
29
- const origin = themeRootURL.origin;
30
-
31
- themeRootURL = themeRootURL.toString();
32
-
33
- if (themeRootURL.startsWith(".") || themeRootURL.startsWith("/")) {
34
- // Handle relative url
35
- // new URL("/newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
36
- // new URL("./newExmPath", "http://example.com/exmPath") => http://example.com/exmPath/newExmPath
37
- // new URL("../newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
38
- resultUrl = new URL(themeRootURL, window.location.href).toString();
39
- } else if (origin && validateThemeOrigin(origin)) {
40
- // If origin is allowed, use it
41
- resultUrl = themeRootURL.toString();
42
- } else {
43
- // If origin is not allow and the URL is not relative, we have to replace the origin
44
- // with current location
45
- resultUrl = buildCorrectUrl(themeRootURL, window.location.href);
46
- }
47
-
48
- if (!resultUrl.endsWith("/")) {
49
- resultUrl = `${resultUrl}/`;
50
- }
51
-
52
- return `${resultUrl}UI5/`;
53
- } catch (e) {
54
- // Catch if URL is not correct
55
- }
56
- };
57
-
58
- export default validateThemeRoot;