@ui5/webcomponents-base 0.0.0-b4cbc43ba → 0.0.0-b804b8982

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 (1092) hide show
  1. package/.npsrc.json +3 -0
  2. package/CHANGELOG.md +2337 -0
  3. package/README.md +50 -10
  4. package/cypress/specs/Accessor.cy.tsx +79 -0
  5. package/cypress/specs/Boot.cy.tsx +19 -0
  6. package/cypress/specs/ConfigurationChange.cy.tsx +41 -0
  7. package/cypress/specs/ConfigurationScript.cy.tsx +133 -0
  8. package/cypress/specs/ConfigurationURL.cy.tsx +201 -0
  9. package/cypress/specs/CustomMount.cy.tsx +9 -0
  10. package/cypress/specs/CustomTheme.cy.tsx +36 -0
  11. package/cypress/specs/EventProvider.cy.tsx +59 -0
  12. package/cypress/specs/Events.cy.tsx +28 -0
  13. package/cypress/specs/SystemDOMElements.cy.tsx +8 -0
  14. package/cypress/specs/Theming.cy.tsx +74 -0
  15. package/cypress/specs/UI5ElementInvalidation.cy.tsx +252 -0
  16. package/cypress/specs/UI5ElementLifecycle.cy.tsx +82 -0
  17. package/cypress/specs/UI5ElementListenForChildPropChanges.cy.tsx +83 -0
  18. package/cypress/specs/UI5ElementMetadataExt.cy.tsx +42 -0
  19. package/cypress/specs/UI5ElementPropertyValidation.cy.tsx +16 -0
  20. package/cypress/specs/UI5ElementPropsAndAttrs.cy.tsx +113 -0
  21. package/cypress/specs/UI5ElementShadowDOM.cy.tsx +30 -0
  22. package/cypress/specs/UI5ElementSlots.cy.tsx +136 -0
  23. package/cypress/specs/WithComplexTemplate.cy.tsx +32 -0
  24. package/cypress/specs/i18n_texts.cy.tsx +129 -0
  25. package/cypress/specs/util/FocusableElements.cy.tsx +48 -0
  26. package/cypress/support/commands.ts +39 -0
  27. package/cypress/support/component-index.html +12 -0
  28. package/cypress/support/component.ts +36 -0
  29. package/cypress/tsconfig.json +21 -0
  30. package/cypress.config.js +3 -0
  31. package/dist/.tsbuildinfobuild +1 -0
  32. package/dist/AssetRegistry.d.ts +5 -0
  33. package/dist/AssetRegistry.js +6 -12
  34. package/dist/AssetRegistry.js.map +1 -0
  35. package/dist/Boot.d.ts +10 -0
  36. package/dist/Boot.js +61 -34
  37. package/dist/Boot.js.map +1 -0
  38. package/dist/CustomElementsRegistry.d.ts +6 -0
  39. package/dist/CustomElementsRegistry.js +72 -30
  40. package/dist/CustomElementsRegistry.js.map +1 -0
  41. package/dist/CustomElementsScope.d.ts +7 -0
  42. package/dist/CustomElementsScope.js +11 -108
  43. package/dist/CustomElementsScope.js.map +1 -0
  44. package/dist/CustomElementsScopeUtils.d.ts +64 -0
  45. package/dist/CustomElementsScopeUtils.js +109 -0
  46. package/dist/CustomElementsScopeUtils.js.map +1 -0
  47. package/dist/DOMObserver.d.ts +11 -0
  48. package/dist/DOMObserver.js +12 -50
  49. package/dist/DOMObserver.js.map +1 -0
  50. package/dist/Device.d.ts +27 -0
  51. package/dist/Device.js +163 -815
  52. package/dist/Device.js.map +1 -0
  53. package/dist/EventProvider.d.ts +25 -0
  54. package/dist/EventProvider.js +67 -88
  55. package/dist/EventProvider.js.map +1 -0
  56. package/dist/FeaturesRegistry.d.ts +3 -0
  57. package/dist/FeaturesRegistry.js +5 -7
  58. package/dist/FeaturesRegistry.js.map +1 -0
  59. package/dist/FontFace.d.ts +2 -0
  60. package/dist/FontFace.js +22 -110
  61. package/dist/FontFace.js.map +1 -0
  62. package/dist/IgnoreCustomElements.d.ts +25 -0
  63. package/dist/IgnoreCustomElements.js +37 -0
  64. package/dist/IgnoreCustomElements.js.map +1 -0
  65. package/dist/InitialConfiguration.d.ts +34 -0
  66. package/dist/InitialConfiguration.js +148 -119
  67. package/dist/InitialConfiguration.js.map +1 -0
  68. package/dist/Keys.d.ts +64 -0
  69. package/dist/Keys.js +180 -215
  70. package/dist/Keys.js.map +1 -0
  71. package/dist/Location.d.ts +11 -0
  72. package/dist/Location.js +49 -0
  73. package/dist/Location.js.map +1 -0
  74. package/dist/ManagedStyles.d.ts +7 -0
  75. package/dist/ManagedStyles.js +69 -0
  76. package/dist/ManagedStyles.js.map +1 -0
  77. package/dist/MediaRange.d.ts +31 -0
  78. package/dist/MediaRange.js +88 -0
  79. package/dist/MediaRange.js.map +1 -0
  80. package/dist/PropertiesFileFormat.d.ts +8 -0
  81. package/dist/PropertiesFileFormat.js +85 -0
  82. package/dist/PropertiesFileFormat.js.map +1 -0
  83. package/dist/Render.d.ts +47 -0
  84. package/dist/Render.js +82 -113
  85. package/dist/Render.js.map +1 -0
  86. package/dist/RenderQueue.d.ts +19 -0
  87. package/dist/RenderQueue.js +52 -62
  88. package/dist/RenderQueue.js.map +1 -0
  89. package/dist/Runtimes.d.ts +27 -0
  90. package/dist/Runtimes.js +97 -0
  91. package/dist/Runtimes.js.map +1 -0
  92. package/dist/SystemCSSVars.d.ts +2 -0
  93. package/dist/SystemCSSVars.js +6 -28
  94. package/dist/SystemCSSVars.js.map +1 -0
  95. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  96. package/dist/Theming.js +1 -1
  97. package/dist/Theming.js.map +1 -0
  98. package/dist/UI5Element.d.ts +424 -0
  99. package/dist/UI5Element.js +1092 -1002
  100. package/dist/UI5Element.js.map +1 -0
  101. package/dist/UI5ElementMetadata.d.ts +159 -0
  102. package/dist/UI5ElementMetadata.js +237 -302
  103. package/dist/UI5ElementMetadata.js.map +1 -0
  104. package/dist/animations/AnimationQueue.d.ts +8 -0
  105. package/dist/animations/AnimationQueue.js +31 -38
  106. package/dist/animations/AnimationQueue.js.map +1 -0
  107. package/dist/animations/animate.d.ts +14 -0
  108. package/dist/animations/animate.js +46 -51
  109. package/dist/animations/animate.js.map +1 -0
  110. package/dist/animations/scroll.d.ts +5 -0
  111. package/dist/animations/scroll.js +18 -27
  112. package/dist/animations/scroll.js.map +1 -0
  113. package/dist/animations/slideDown.d.ts +5 -0
  114. package/dist/animations/slideDown.js +53 -78
  115. package/dist/animations/slideDown.js.map +1 -0
  116. package/dist/animations/slideUp.d.ts +5 -0
  117. package/dist/animations/slideUp.js +49 -70
  118. package/dist/animations/slideUp.js.map +1 -0
  119. package/dist/asset-registries/Icons.d.ts +39 -0
  120. package/dist/asset-registries/Icons.js +136 -32
  121. package/dist/asset-registries/Icons.js.map +1 -0
  122. package/dist/asset-registries/Illustrations.d.ts +19 -0
  123. package/dist/asset-registries/Illustrations.js +77 -0
  124. package/dist/asset-registries/Illustrations.js.map +1 -0
  125. package/dist/asset-registries/LocaleData.d.ts +7 -0
  126. package/dist/asset-registries/LocaleData.js +119 -118
  127. package/dist/asset-registries/LocaleData.js.map +1 -0
  128. package/dist/asset-registries/Themes.d.ts +9 -0
  129. package/dist/asset-registries/Themes.js +57 -78
  130. package/dist/asset-registries/Themes.js.map +1 -0
  131. package/dist/asset-registries/i18n.d.ts +23 -0
  132. package/dist/asset-registries/i18n.js +80 -88
  133. package/dist/asset-registries/i18n.js.map +1 -0
  134. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  135. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  136. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  137. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  138. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  139. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  140. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  141. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  142. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  143. package/dist/config/AnimationMode.d.ts +14 -0
  144. package/dist/config/AnimationMode.js +26 -18
  145. package/dist/config/AnimationMode.js.map +1 -0
  146. package/dist/config/CalendarType.d.ts +15 -0
  147. package/dist/config/CalendarType.js +36 -14
  148. package/dist/config/CalendarType.js.map +1 -0
  149. package/dist/config/ConfigurationReset.d.ts +4 -0
  150. package/dist/config/ConfigurationReset.js +11 -0
  151. package/dist/config/ConfigurationReset.js.map +1 -0
  152. package/dist/config/Fonts.d.ts +16 -0
  153. package/dist/config/Fonts.js +30 -0
  154. package/dist/config/Fonts.js.map +1 -0
  155. package/dist/config/FormatSettings.d.ts +15 -0
  156. package/dist/config/FormatSettings.js +19 -9
  157. package/dist/config/FormatSettings.js.map +1 -0
  158. package/dist/config/Icons.d.ts +40 -0
  159. package/dist/config/Icons.js +44 -0
  160. package/dist/config/Icons.js.map +1 -0
  161. package/dist/config/Language.d.ts +40 -0
  162. package/dist/config/Language.js +56 -48
  163. package/dist/config/Language.js.map +1 -0
  164. package/dist/config/NoConflict.d.ts +20 -0
  165. package/dist/config/NoConflict.js +45 -41
  166. package/dist/config/NoConflict.js.map +1 -0
  167. package/dist/config/Theme.d.ts +39 -0
  168. package/dist/config/Theme.js +74 -22
  169. package/dist/config/Theme.js.map +1 -0
  170. package/dist/config/ThemeRoot.d.ts +27 -0
  171. package/dist/config/ThemeRoot.js +61 -0
  172. package/dist/config/ThemeRoot.js.map +1 -0
  173. package/dist/config/Timezone.d.ts +17 -0
  174. package/dist/config/Timezone.js +34 -0
  175. package/dist/config/Timezone.js.map +1 -0
  176. package/dist/config/Tooltips.d.ts +19 -0
  177. package/dist/config/Tooltips.js +29 -0
  178. package/dist/config/Tooltips.js.map +1 -0
  179. package/dist/connectToComponent.d.ts +9 -0
  180. package/dist/connectToComponent.js +59 -0
  181. package/dist/connectToComponent.js.map +1 -0
  182. package/dist/converters/DOMReference.d.ts +5 -0
  183. package/dist/converters/DOMReference.js +13 -0
  184. package/dist/converters/DOMReference.js.map +1 -0
  185. package/dist/css/BusyIndicator.css +80 -0
  186. package/dist/css/FontFace.css +96 -0
  187. package/dist/css/OverrideFontFace.css +32 -0
  188. package/dist/css/SystemCSSVars.css +9 -0
  189. package/dist/custom-elements-internal.json +2788 -0
  190. package/dist/custom-elements.json +2485 -0
  191. package/dist/decorators/bound.d.ts +1 -0
  192. package/dist/decorators/bound.js +34 -0
  193. package/dist/decorators/bound.js.map +1 -0
  194. package/dist/decorators/customElement.d.ts +63 -0
  195. package/dist/decorators/customElement.js +45 -0
  196. package/dist/decorators/customElement.js.map +1 -0
  197. package/dist/decorators/event-strict.d.ts +15 -0
  198. package/dist/decorators/event-strict.js +26 -0
  199. package/dist/decorators/event-strict.js.map +1 -0
  200. package/dist/decorators/event.d.ts +16 -0
  201. package/dist/decorators/event.js +27 -0
  202. package/dist/decorators/event.js.map +1 -0
  203. package/dist/decorators/i18n.d.ts +17 -0
  204. package/dist/decorators/i18n.js +32 -0
  205. package/dist/decorators/i18n.js.map +1 -0
  206. package/dist/decorators/property.d.ts +9 -0
  207. package/dist/decorators/property.js +24 -0
  208. package/dist/decorators/property.js.map +1 -0
  209. package/dist/decorators/query.d.ts +25 -0
  210. package/dist/decorators/query.js +32 -0
  211. package/dist/decorators/query.js.map +1 -0
  212. package/dist/decorators/queryAll.d.ts +27 -0
  213. package/dist/decorators/queryAll.js +34 -0
  214. package/dist/decorators/queryAll.js.map +1 -0
  215. package/dist/decorators/slot.d.ts +9 -0
  216. package/dist/decorators/slot.js +37 -0
  217. package/dist/decorators/slot.js.map +1 -0
  218. package/dist/decorators.d.ts +8 -0
  219. package/dist/decorators.js +9 -0
  220. package/dist/decorators.js.map +1 -0
  221. package/dist/delegate/ItemNavigation.d.ts +114 -0
  222. package/dist/delegate/ItemNavigation.js +286 -264
  223. package/dist/delegate/ItemNavigation.js.map +1 -0
  224. package/dist/delegate/ResizeHandler.d.ts +23 -0
  225. package/dist/delegate/ResizeHandler.js +70 -91
  226. package/dist/delegate/ResizeHandler.js.map +1 -0
  227. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  228. package/dist/delegate/ScrollEnablement.js +159 -176
  229. package/dist/delegate/ScrollEnablement.js.map +1 -0
  230. package/dist/features/F6Navigation.d.ts +20 -0
  231. package/dist/features/F6Navigation.js +183 -0
  232. package/dist/features/F6Navigation.js.map +1 -0
  233. package/dist/features/InputElementsFormSupport.d.ts +15 -0
  234. package/dist/features/InputElementsFormSupport.js +39 -0
  235. package/dist/features/InputElementsFormSupport.js.map +1 -0
  236. package/dist/features/LegacyDateFormats.d.ts +18 -0
  237. package/dist/features/LegacyDateFormats.js +20 -0
  238. package/dist/features/LegacyDateFormats.js.map +1 -0
  239. package/dist/features/OpenUI5Element.d.ts +9 -0
  240. package/dist/features/OpenUI5Element.js +5 -0
  241. package/dist/features/OpenUI5Element.js.map +1 -0
  242. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  243. package/dist/features/OpenUI5Enablement.js +96 -0
  244. package/dist/features/OpenUI5Enablement.js.map +1 -0
  245. package/dist/features/OpenUI5Support.d.ts +34 -0
  246. package/dist/features/OpenUI5Support.js +140 -87
  247. package/dist/features/OpenUI5Support.js.map +1 -0
  248. package/dist/features/patchPatcher.d.ts +11 -0
  249. package/dist/features/patchPatcher.js +11 -0
  250. package/dist/features/patchPatcher.js.map +1 -0
  251. package/dist/features/patchPopup.d.ts +15 -0
  252. package/dist/features/patchPopup.js +70 -0
  253. package/dist/features/patchPopup.js.map +1 -0
  254. package/dist/generated/AssetParameters.d.ts +6 -0
  255. package/dist/generated/AssetParameters.js +4 -9
  256. package/dist/generated/AssetParameters.js.map +1 -0
  257. package/dist/generated/VersionInfo.d.ts +10 -0
  258. package/dist/generated/VersionInfo.js +11 -0
  259. package/dist/generated/VersionInfo.js.map +1 -0
  260. package/dist/generated/css/BusyIndicator.css.d.ts +2 -0
  261. package/dist/generated/css/BusyIndicator.css.js +2 -0
  262. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  263. package/dist/generated/css/FontFace.css.d.ts +2 -0
  264. package/dist/generated/css/FontFace.css.js +2 -0
  265. package/dist/generated/css/FontFace.css.js.map +1 -0
  266. package/dist/generated/css/OverrideFontFace.css.d.ts +2 -0
  267. package/dist/generated/css/OverrideFontFace.css.js +2 -0
  268. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  269. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -0
  270. package/dist/generated/css/SystemCSSVars.css.js +2 -0
  271. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  272. package/dist/getSharedResource.d.ts +11 -0
  273. package/dist/getSharedResource.js +28 -18
  274. package/dist/getSharedResource.js.map +1 -0
  275. package/dist/global.d.ts +40 -0
  276. package/dist/i18nBundle.d.ts +41 -0
  277. package/dist/i18nBundle.js +66 -42
  278. package/dist/i18nBundle.js.map +1 -0
  279. package/dist/index.d.ts +12 -0
  280. package/dist/jsx-dev-runtime.d.ts +4 -0
  281. package/dist/jsx-dev-runtime.js +43 -0
  282. package/dist/jsx-dev-runtime.js.map +1 -0
  283. package/dist/jsx-runtime.d.ts +50 -0
  284. package/dist/jsx-runtime.js +27 -0
  285. package/dist/jsx-runtime.js.map +1 -0
  286. package/dist/jsx-utils.d.ts +3 -0
  287. package/dist/jsx-utils.js +48 -0
  288. package/dist/jsx-utils.js.map +1 -0
  289. package/dist/locale/Locale.d.ts +22 -0
  290. package/dist/locale/Locale.js +75 -87
  291. package/dist/locale/Locale.js.map +1 -0
  292. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  293. package/dist/locale/RTLAwareRegistry.js +6 -11
  294. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  295. package/dist/locale/applyDirection.d.ts +11 -0
  296. package/dist/locale/applyDirection.js +8 -7
  297. package/dist/locale/applyDirection.js.map +1 -0
  298. package/dist/locale/directionChange.d.ts +15 -0
  299. package/dist/locale/directionChange.js +7 -15
  300. package/dist/locale/directionChange.js.map +1 -0
  301. package/dist/locale/getEffectiveDir.d.ts +2 -0
  302. package/dist/locale/getEffectiveDir.js +6 -26
  303. package/dist/locale/getEffectiveDir.js.map +1 -0
  304. package/dist/locale/getLocale.d.ts +7 -0
  305. package/dist/locale/getLocale.js +26 -29
  306. package/dist/locale/getLocale.js.map +1 -0
  307. package/dist/locale/languageChange.d.ts +5 -0
  308. package/dist/locale/languageChange.js +8 -16
  309. package/dist/locale/languageChange.js.map +1 -0
  310. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  311. package/dist/locale/nextFallbackLocale.js +15 -19
  312. package/dist/locale/nextFallbackLocale.js.map +1 -0
  313. package/dist/locale/normalizeLocale.d.ts +7 -0
  314. package/dist/locale/normalizeLocale.js +34 -41
  315. package/dist/locale/normalizeLocale.js.map +1 -0
  316. package/dist/prod/AssetRegistry.js +2 -0
  317. package/dist/prod/AssetRegistry.js.map +7 -0
  318. package/dist/prod/Boot.js +2 -0
  319. package/dist/prod/Boot.js.map +7 -0
  320. package/dist/prod/CustomElementsRegistry.js +10 -0
  321. package/dist/prod/CustomElementsRegistry.js.map +7 -0
  322. package/dist/prod/CustomElementsScope.js +2 -0
  323. package/dist/prod/CustomElementsScope.js.map +7 -0
  324. package/dist/prod/CustomElementsScopeUtils.js +2 -0
  325. package/dist/prod/CustomElementsScopeUtils.js.map +7 -0
  326. package/dist/prod/DOMObserver.js +2 -0
  327. package/dist/prod/DOMObserver.js.map +7 -0
  328. package/dist/prod/Device.js +2 -0
  329. package/dist/prod/Device.js.map +7 -0
  330. package/dist/prod/EventProvider.js +2 -0
  331. package/dist/prod/EventProvider.js.map +7 -0
  332. package/dist/prod/FeaturesRegistry.js +2 -0
  333. package/dist/prod/FeaturesRegistry.js.map +7 -0
  334. package/dist/prod/FontFace.js +2 -0
  335. package/dist/prod/FontFace.js.map +7 -0
  336. package/dist/prod/IgnoreCustomElements.js +2 -0
  337. package/dist/prod/IgnoreCustomElements.js.map +7 -0
  338. package/dist/prod/InitialConfiguration.js +2 -0
  339. package/dist/prod/InitialConfiguration.js.map +7 -0
  340. package/dist/prod/Keys.js +2 -0
  341. package/dist/prod/Keys.js.map +7 -0
  342. package/dist/prod/Location.js +2 -0
  343. package/dist/prod/Location.js.map +7 -0
  344. package/dist/prod/ManagedStyles.js +2 -0
  345. package/dist/prod/ManagedStyles.js.map +7 -0
  346. package/dist/prod/MediaRange.js +2 -0
  347. package/dist/prod/MediaRange.js.map +7 -0
  348. package/dist/prod/PropertiesFileFormat.js +3 -0
  349. package/dist/prod/PropertiesFileFormat.js.map +7 -0
  350. package/dist/prod/Render.js +2 -0
  351. package/dist/prod/Render.js.map +7 -0
  352. package/dist/prod/RenderQueue.js +2 -0
  353. package/dist/prod/RenderQueue.js.map +7 -0
  354. package/dist/prod/Runtimes.js +2 -0
  355. package/dist/prod/Runtimes.js.map +7 -0
  356. package/dist/prod/SystemCSSVars.js +2 -0
  357. package/dist/prod/SystemCSSVars.js.map +7 -0
  358. package/dist/prod/Theming.js +2 -0
  359. package/dist/prod/Theming.js.map +7 -0
  360. package/dist/prod/UI5Element.js +2 -0
  361. package/dist/prod/UI5Element.js.map +7 -0
  362. package/dist/prod/UI5ElementMetadata.js +2 -0
  363. package/dist/prod/UI5ElementMetadata.js.map +7 -0
  364. package/dist/prod/animations/AnimationQueue.js +2 -0
  365. package/dist/prod/animations/AnimationQueue.js.map +7 -0
  366. package/dist/prod/animations/animate.js +2 -0
  367. package/dist/prod/animations/animate.js.map +7 -0
  368. package/dist/prod/animations/scroll.js +2 -0
  369. package/dist/prod/animations/scroll.js.map +7 -0
  370. package/dist/prod/animations/slideDown.js +2 -0
  371. package/dist/prod/animations/slideDown.js.map +7 -0
  372. package/dist/prod/animations/slideUp.js +2 -0
  373. package/dist/prod/animations/slideUp.js.map +7 -0
  374. package/dist/prod/asset-registries/Icons.js +2 -0
  375. package/dist/prod/asset-registries/Icons.js.map +7 -0
  376. package/dist/prod/asset-registries/Illustrations.js +2 -0
  377. package/dist/prod/asset-registries/Illustrations.js.map +7 -0
  378. package/dist/prod/asset-registries/LocaleData.js +2 -0
  379. package/dist/prod/asset-registries/LocaleData.js.map +7 -0
  380. package/dist/prod/asset-registries/Themes.js +2 -0
  381. package/dist/prod/asset-registries/Themes.js.map +7 -0
  382. package/dist/prod/asset-registries/i18n.js +2 -0
  383. package/dist/prod/asset-registries/i18n.js.map +7 -0
  384. package/dist/prod/asset-registries/util/IconCollectionsAlias.js +2 -0
  385. package/dist/prod/asset-registries/util/IconCollectionsAlias.js.map +7 -0
  386. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js +2 -0
  387. package/dist/prod/asset-registries/util/IconCollectionsByTheme.js.map +7 -0
  388. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js +2 -0
  389. package/dist/prod/asset-registries/util/getIconCollectionByTheme.js.map +7 -0
  390. package/dist/prod/config/AnimationMode.js +2 -0
  391. package/dist/prod/config/AnimationMode.js.map +7 -0
  392. package/dist/prod/config/CalendarType.js +2 -0
  393. package/dist/prod/config/CalendarType.js.map +7 -0
  394. package/dist/prod/config/ConfigurationReset.js +2 -0
  395. package/dist/prod/config/ConfigurationReset.js.map +7 -0
  396. package/dist/prod/config/Fonts.js +2 -0
  397. package/dist/prod/config/Fonts.js.map +7 -0
  398. package/dist/prod/config/FormatSettings.js +2 -0
  399. package/dist/prod/config/FormatSettings.js.map +7 -0
  400. package/dist/prod/config/Icons.js +2 -0
  401. package/dist/prod/config/Icons.js.map +7 -0
  402. package/dist/prod/config/Language.js +2 -0
  403. package/dist/prod/config/Language.js.map +7 -0
  404. package/dist/prod/config/NoConflict.js +2 -0
  405. package/dist/prod/config/NoConflict.js.map +7 -0
  406. package/dist/prod/config/Theme.js +2 -0
  407. package/dist/prod/config/Theme.js.map +7 -0
  408. package/dist/prod/config/ThemeRoot.js +2 -0
  409. package/dist/prod/config/ThemeRoot.js.map +7 -0
  410. package/dist/prod/config/Timezone.js +2 -0
  411. package/dist/prod/config/Timezone.js.map +7 -0
  412. package/dist/prod/config/Tooltips.js +2 -0
  413. package/dist/prod/config/Tooltips.js.map +7 -0
  414. package/dist/prod/connectToComponent.js +2 -0
  415. package/dist/prod/connectToComponent.js.map +7 -0
  416. package/dist/prod/converters/DOMReference.js +2 -0
  417. package/dist/prod/converters/DOMReference.js.map +7 -0
  418. package/dist/prod/decorators/bound.js +2 -0
  419. package/dist/prod/decorators/bound.js.map +7 -0
  420. package/dist/prod/decorators/customElement.js +2 -0
  421. package/dist/prod/decorators/customElement.js.map +7 -0
  422. package/dist/prod/decorators/event-strict.js +2 -0
  423. package/dist/prod/decorators/event-strict.js.map +7 -0
  424. package/dist/prod/decorators/event.js +2 -0
  425. package/dist/prod/decorators/event.js.map +7 -0
  426. package/dist/prod/decorators/i18n.js +2 -0
  427. package/dist/prod/decorators/i18n.js.map +7 -0
  428. package/dist/prod/decorators/property.js +2 -0
  429. package/dist/prod/decorators/property.js.map +7 -0
  430. package/dist/prod/decorators/query.js +2 -0
  431. package/dist/prod/decorators/query.js.map +7 -0
  432. package/dist/prod/decorators/queryAll.js +2 -0
  433. package/dist/prod/decorators/queryAll.js.map +7 -0
  434. package/dist/prod/decorators/slot.js +2 -0
  435. package/dist/prod/decorators/slot.js.map +7 -0
  436. package/dist/prod/decorators.js +2 -0
  437. package/dist/prod/decorators.js.map +7 -0
  438. package/dist/prod/delegate/ItemNavigation.js +2 -0
  439. package/dist/prod/delegate/ItemNavigation.js.map +7 -0
  440. package/dist/prod/delegate/ResizeHandler.js +2 -0
  441. package/dist/prod/delegate/ResizeHandler.js.map +7 -0
  442. package/dist/prod/delegate/ScrollEnablement.js +2 -0
  443. package/dist/prod/delegate/ScrollEnablement.js.map +7 -0
  444. package/dist/prod/features/F6Navigation.js +2 -0
  445. package/dist/prod/features/F6Navigation.js.map +7 -0
  446. package/dist/prod/features/InputElementsFormSupport.js +2 -0
  447. package/dist/prod/features/InputElementsFormSupport.js.map +7 -0
  448. package/dist/prod/features/LegacyDateFormats.js +2 -0
  449. package/dist/prod/features/LegacyDateFormats.js.map +7 -0
  450. package/dist/prod/features/OpenUI5Element.js +2 -0
  451. package/dist/prod/features/OpenUI5Element.js.map +7 -0
  452. package/dist/prod/features/OpenUI5Enablement.js +21 -0
  453. package/dist/prod/features/OpenUI5Enablement.js.map +7 -0
  454. package/dist/prod/features/OpenUI5Support.js +2 -0
  455. package/dist/prod/features/OpenUI5Support.js.map +7 -0
  456. package/dist/prod/features/patchPatcher.js +2 -0
  457. package/dist/prod/features/patchPatcher.js.map +7 -0
  458. package/dist/prod/features/patchPopup.js +2 -0
  459. package/dist/prod/features/patchPopup.js.map +7 -0
  460. package/dist/prod/generated/AssetParameters.js +2 -0
  461. package/dist/prod/generated/AssetParameters.js.map +7 -0
  462. package/dist/prod/generated/VersionInfo.js +2 -0
  463. package/dist/prod/generated/VersionInfo.js.map +7 -0
  464. package/dist/prod/generated/css/BusyIndicator.css.js +2 -0
  465. package/dist/prod/generated/css/BusyIndicator.css.js.map +7 -0
  466. package/dist/prod/generated/css/FontFace.css.js +2 -0
  467. package/dist/prod/generated/css/FontFace.css.js.map +7 -0
  468. package/dist/prod/generated/css/OverrideFontFace.css.js +2 -0
  469. package/dist/prod/generated/css/OverrideFontFace.css.js.map +7 -0
  470. package/dist/prod/generated/css/SystemCSSVars.css.js +2 -0
  471. package/dist/prod/generated/css/SystemCSSVars.css.js.map +7 -0
  472. package/dist/prod/getSharedResource.js +2 -0
  473. package/dist/prod/getSharedResource.js.map +7 -0
  474. package/dist/prod/global.d.js +2 -0
  475. package/dist/prod/global.d.js.map +7 -0
  476. package/dist/prod/i18nBundle.js +2 -0
  477. package/dist/prod/i18nBundle.js.map +7 -0
  478. package/dist/prod/index.d.js +2 -0
  479. package/dist/prod/index.d.js.map +7 -0
  480. package/dist/prod/jsx-dev-runtime.js +2 -0
  481. package/dist/prod/jsx-dev-runtime.js.map +7 -0
  482. package/dist/prod/jsx-runtime.js +2 -0
  483. package/dist/prod/jsx-runtime.js.map +7 -0
  484. package/dist/prod/jsx-utils.js +2 -0
  485. package/dist/prod/jsx-utils.js.map +7 -0
  486. package/dist/prod/locale/Locale.js +2 -0
  487. package/dist/prod/locale/Locale.js.map +7 -0
  488. package/dist/prod/locale/RTLAwareRegistry.js +2 -0
  489. package/dist/prod/locale/RTLAwareRegistry.js.map +7 -0
  490. package/dist/prod/locale/applyDirection.js +2 -0
  491. package/dist/prod/locale/applyDirection.js.map +7 -0
  492. package/dist/prod/locale/directionChange.js +2 -0
  493. package/dist/prod/locale/directionChange.js.map +7 -0
  494. package/dist/prod/locale/getEffectiveDir.js +2 -0
  495. package/dist/prod/locale/getEffectiveDir.js.map +7 -0
  496. package/dist/prod/locale/getLocale.js +2 -0
  497. package/dist/prod/locale/getLocale.js.map +7 -0
  498. package/dist/prod/locale/languageChange.js +2 -0
  499. package/dist/prod/locale/languageChange.js.map +7 -0
  500. package/dist/prod/locale/nextFallbackLocale.js +2 -0
  501. package/dist/prod/locale/nextFallbackLocale.js.map +7 -0
  502. package/dist/prod/locale/normalizeLocale.js +2 -0
  503. package/dist/prod/locale/normalizeLocale.js.map +7 -0
  504. package/dist/prod/renderer/JsxRenderer.js +2 -0
  505. package/dist/prod/renderer/JsxRenderer.js.map +7 -0
  506. package/dist/prod/renderer/LitRenderer.js +2 -0
  507. package/dist/prod/renderer/LitRenderer.js.map +7 -0
  508. package/dist/prod/renderer/directives/style-map.js +6 -0
  509. package/dist/prod/renderer/directives/style-map.js.map +7 -0
  510. package/dist/prod/renderer/executeTemplate.js +2 -0
  511. package/dist/prod/renderer/executeTemplate.js.map +7 -0
  512. package/dist/prod/sap/base/Log.js +750 -0
  513. package/dist/prod/sap/base/assert.js +34 -0
  514. package/dist/prod/sap/base/config/MemoryConfigurationProvider.js +20 -0
  515. package/dist/prod/sap/base/security/URLListValidator.js +406 -0
  516. package/dist/prod/sap/base/security/encodeCSS.js +40 -0
  517. package/dist/prod/sap/base/security/encodeXML.js +53 -0
  518. package/dist/prod/sap/base/security/sanitizeHTML.js +38 -0
  519. package/dist/prod/sap/base/strings/toHex.js +33 -0
  520. package/dist/prod/sap/base/util/now.js +28 -0
  521. package/dist/prod/sap/base/util/uid.js +27 -0
  522. package/dist/prod/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  523. package/dist/prod/ssr-dom-shim.js +2 -0
  524. package/dist/prod/ssr-dom-shim.js.map +7 -0
  525. package/dist/prod/ssr-dom.js +2 -0
  526. package/dist/prod/ssr-dom.js.map +7 -0
  527. package/dist/prod/theming/CustomStyle.js +2 -0
  528. package/dist/prod/theming/CustomStyle.js.map +7 -0
  529. package/dist/prod/theming/ThemeLoaded.js +2 -0
  530. package/dist/prod/theming/ThemeLoaded.js.map +7 -0
  531. package/dist/prod/theming/ThemeRegistered.js +2 -0
  532. package/dist/prod/theming/ThemeRegistered.js.map +7 -0
  533. package/dist/prod/theming/applyTheme.js +2 -0
  534. package/dist/prod/theming/applyTheme.js.map +7 -0
  535. package/dist/prod/theming/getConstructableStyle.js +2 -0
  536. package/dist/prod/theming/getConstructableStyle.js.map +7 -0
  537. package/dist/prod/theming/getEffectiveStyle.js +2 -0
  538. package/dist/prod/theming/getEffectiveStyle.js.map +7 -0
  539. package/dist/prod/theming/getStylesString.js +2 -0
  540. package/dist/prod/theming/getStylesString.js.map +7 -0
  541. package/dist/prod/theming/getThemeDesignerTheme.js +2 -0
  542. package/dist/prod/theming/getThemeDesignerTheme.js.map +7 -0
  543. package/dist/prod/thirdparty/_merge.js +2 -0
  544. package/dist/prod/thirdparty/_merge.js.map +7 -0
  545. package/dist/prod/thirdparty/isPlainObject.js +2 -0
  546. package/dist/prod/thirdparty/isPlainObject.js.map +7 -0
  547. package/dist/prod/thirdparty/merge.js +2 -0
  548. package/dist/prod/thirdparty/merge.js.map +7 -0
  549. package/dist/prod/thirdparty/preact/jsx.d.js +2 -0
  550. package/dist/prod/thirdparty/preact/jsx.d.js.map +7 -0
  551. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js +2 -0
  552. package/dist/prod/thirdparty/preact/jsxRuntime.module.d.js.map +7 -0
  553. package/dist/prod/thirdparty/preact/jsxRuntime.module.js +1 -0
  554. package/dist/prod/thirdparty/preact/preact.module.d.js +2 -0
  555. package/dist/prod/thirdparty/preact/preact.module.d.js.map +7 -0
  556. package/dist/prod/thirdparty/preact/preact.module.js +1 -0
  557. package/dist/prod/types/AnimationMode.js +2 -0
  558. package/dist/prod/types/AnimationMode.js.map +7 -0
  559. package/dist/prod/types/CalendarType.js +2 -0
  560. package/dist/prod/types/CalendarType.js.map +7 -0
  561. package/dist/prod/types/InvisibleMessageMode.js +2 -0
  562. package/dist/prod/types/InvisibleMessageMode.js.map +7 -0
  563. package/dist/prod/types/ItemNavigationBehavior.js +2 -0
  564. package/dist/prod/types/ItemNavigationBehavior.js.map +7 -0
  565. package/dist/prod/types/MovePlacement.js +2 -0
  566. package/dist/prod/types/MovePlacement.js.map +7 -0
  567. package/dist/prod/types/NavigationMode.js +2 -0
  568. package/dist/prod/types/NavigationMode.js.map +7 -0
  569. package/dist/prod/types/Orientation.js +2 -0
  570. package/dist/prod/types/Orientation.js.map +7 -0
  571. package/dist/prod/types/SortOrder.js +2 -0
  572. package/dist/prod/types/SortOrder.js.map +7 -0
  573. package/dist/prod/types/ValueState.js +2 -0
  574. package/dist/prod/types/ValueState.js.map +7 -0
  575. package/dist/prod/types.js +2 -0
  576. package/dist/prod/types.js.map +7 -0
  577. package/dist/prod/updateShadowRoot.js +2 -0
  578. package/dist/prod/updateShadowRoot.js.map +7 -0
  579. package/dist/prod/util/AccessibilityTextsHelper.js +2 -0
  580. package/dist/prod/util/AccessibilityTextsHelper.js.map +7 -0
  581. package/dist/prod/util/Caret.js +2 -0
  582. package/dist/prod/util/Caret.js.map +7 -0
  583. package/dist/prod/util/ColorConversion.js +2 -0
  584. package/dist/prod/util/ColorConversion.js.map +7 -0
  585. package/dist/prod/util/FetchHelper.js +2 -0
  586. package/dist/prod/util/FetchHelper.js.map +7 -0
  587. package/dist/prod/util/FocusableElements.js +2 -0
  588. package/dist/prod/util/FocusableElements.js.map +7 -0
  589. package/dist/prod/util/HTMLSanitizer.js +2 -0
  590. package/dist/prod/util/HTMLSanitizer.js.map +7 -0
  591. package/dist/prod/util/InvisibleMessage.js +2 -0
  592. package/dist/prod/util/InvisibleMessage.js.map +7 -0
  593. package/dist/prod/util/PopupUtils.js +2 -0
  594. package/dist/prod/util/PopupUtils.js.map +7 -0
  595. package/dist/prod/util/SelectionAssistant.js +2 -0
  596. package/dist/prod/util/SelectionAssistant.js.map +7 -0
  597. package/dist/prod/util/SlotsHelper.js +2 -0
  598. package/dist/prod/util/SlotsHelper.js.map +7 -0
  599. package/dist/prod/util/StringHelper.js +2 -0
  600. package/dist/prod/util/StringHelper.js.map +7 -0
  601. package/dist/prod/util/TabbableElements.js +2 -0
  602. package/dist/prod/util/TabbableElements.js.map +7 -0
  603. package/dist/prod/util/arraysAreEqual.js +2 -0
  604. package/dist/prod/util/arraysAreEqual.js.map +7 -0
  605. package/dist/prod/util/clamp.js +2 -0
  606. package/dist/prod/util/clamp.js.map +7 -0
  607. package/dist/prod/util/createLinkInHead.js +2 -0
  608. package/dist/prod/util/createLinkInHead.js.map +7 -0
  609. package/dist/prod/util/debounce.js +2 -0
  610. package/dist/prod/util/debounce.js.map +7 -0
  611. package/dist/prod/util/detectNavigatorLanguage.js +2 -0
  612. package/dist/prod/util/detectNavigatorLanguage.js.map +7 -0
  613. package/dist/prod/util/dragAndDrop/DragRegistry.js +2 -0
  614. package/dist/prod/util/dragAndDrop/DragRegistry.js.map +7 -0
  615. package/dist/prod/util/dragAndDrop/findClosestPosition.js +2 -0
  616. package/dist/prod/util/dragAndDrop/findClosestPosition.js.map +7 -0
  617. package/dist/prod/util/dragAndDrop/handleDragOver.js +2 -0
  618. package/dist/prod/util/dragAndDrop/handleDragOver.js.map +7 -0
  619. package/dist/prod/util/dragAndDrop/handleDrop.js +2 -0
  620. package/dist/prod/util/dragAndDrop/handleDrop.js.map +7 -0
  621. package/dist/prod/util/dragAndDrop/longDragOverHandler.js +2 -0
  622. package/dist/prod/util/dragAndDrop/longDragOverHandler.js.map +7 -0
  623. package/dist/prod/util/escapeRegex.js +2 -0
  624. package/dist/prod/util/escapeRegex.js.map +7 -0
  625. package/dist/prod/util/fixSafariActiveState.js +2 -0
  626. package/dist/prod/util/fixSafariActiveState.js.map +7 -0
  627. package/dist/prod/util/formatMessage.js +2 -0
  628. package/dist/prod/util/formatMessage.js.map +7 -0
  629. package/dist/prod/util/generateHighlightedMarkup.js +2 -0
  630. package/dist/prod/util/generateHighlightedMarkup.js.map +7 -0
  631. package/dist/prod/util/getActiveElement.js +2 -0
  632. package/dist/prod/util/getActiveElement.js.map +7 -0
  633. package/dist/prod/util/getClassCopy.js +2 -0
  634. package/dist/prod/util/getClassCopy.js.map +7 -0
  635. package/dist/prod/util/getDesigntimePropertyAsArray.js +2 -0
  636. package/dist/prod/util/getDesigntimePropertyAsArray.js.map +7 -0
  637. package/dist/prod/util/getEffectiveContentDensity.js +2 -0
  638. package/dist/prod/util/getEffectiveContentDensity.js.map +7 -0
  639. package/dist/prod/util/getEffectiveScrollbarStyle.js +26 -0
  640. package/dist/prod/util/getEffectiveScrollbarStyle.js.map +7 -0
  641. package/dist/prod/util/getFastNavigationGroups.js +2 -0
  642. package/dist/prod/util/getFastNavigationGroups.js.map +7 -0
  643. package/dist/prod/util/getFileExtension.js +2 -0
  644. package/dist/prod/util/getFileExtension.js.map +7 -0
  645. package/dist/prod/util/getNormalizedTarget.js +2 -0
  646. package/dist/prod/util/getNormalizedTarget.js.map +7 -0
  647. package/dist/prod/util/getSingletonElementInstance.js +2 -0
  648. package/dist/prod/util/getSingletonElementInstance.js.map +7 -0
  649. package/dist/prod/util/hash2str.js +2 -0
  650. package/dist/prod/util/hash2str.js.map +7 -0
  651. package/dist/prod/util/isElementClickable.js +2 -0
  652. package/dist/prod/util/isElementClickable.js.map +7 -0
  653. package/dist/prod/util/isElementHidden.js +2 -0
  654. package/dist/prod/util/isElementHidden.js.map +7 -0
  655. package/dist/prod/util/isElementInView.js +2 -0
  656. package/dist/prod/util/isElementInView.js.map +7 -0
  657. package/dist/prod/util/isElementTabbable.js +2 -0
  658. package/dist/prod/util/isElementTabbable.js.map +7 -0
  659. package/dist/prod/util/isValidPropertyName.js +2 -0
  660. package/dist/prod/util/isValidPropertyName.js.map +7 -0
  661. package/dist/prod/util/throttle.js +2 -0
  662. package/dist/prod/util/throttle.js.map +7 -0
  663. package/dist/prod/util/toLowercaseEnumValue.js +2 -0
  664. package/dist/prod/util/toLowercaseEnumValue.js.map +7 -0
  665. package/dist/prod/util/whenDOMReady.js +2 -0
  666. package/dist/prod/util/whenDOMReady.js.map +7 -0
  667. package/dist/prod/util/willShowContent.js +2 -0
  668. package/dist/prod/util/willShowContent.js.map +7 -0
  669. package/dist/prod/validateThemeRoot.js +2 -0
  670. package/dist/prod/validateThemeRoot.js.map +7 -0
  671. package/dist/renderer/JsxRenderer.d.ts +3 -0
  672. package/dist/renderer/JsxRenderer.js +16 -0
  673. package/dist/renderer/JsxRenderer.js.map +1 -0
  674. package/dist/renderer/LitRenderer.d.ts +14 -0
  675. package/dist/renderer/LitRenderer.js +29 -24
  676. package/dist/renderer/LitRenderer.js.map +1 -0
  677. package/dist/renderer/directives/style-map.d.ts +13 -0
  678. package/dist/renderer/directives/style-map.js +72 -0
  679. package/dist/renderer/directives/style-map.js.map +1 -0
  680. package/dist/renderer/executeTemplate.d.ts +12 -0
  681. package/dist/renderer/executeTemplate.js +2 -7
  682. package/dist/renderer/executeTemplate.js.map +1 -0
  683. package/dist/sap/base/Log.js +750 -0
  684. package/dist/sap/base/assert.js +34 -0
  685. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  686. package/dist/sap/base/security/URLListValidator.js +406 -0
  687. package/dist/sap/base/security/encodeCSS.js +40 -0
  688. package/dist/sap/base/security/encodeXML.js +53 -0
  689. package/dist/sap/base/security/sanitizeHTML.js +38 -0
  690. package/dist/sap/base/strings/toHex.js +33 -0
  691. package/dist/sap/base/util/now.js +28 -0
  692. package/dist/sap/base/util/uid.js +27 -0
  693. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  694. package/dist/ssr-dom-shim.d.ts +1 -0
  695. package/dist/ssr-dom-shim.js +62 -0
  696. package/dist/ssr-dom-shim.js.map +1 -0
  697. package/dist/ssr-dom.d.ts +1 -0
  698. package/dist/ssr-dom.js +3 -0
  699. package/dist/ssr-dom.js.map +1 -0
  700. package/dist/theming/CustomStyle.d.ts +6 -0
  701. package/dist/theming/CustomStyle.js +39 -31
  702. package/dist/theming/CustomStyle.js.map +1 -0
  703. package/dist/theming/ThemeLoaded.d.ts +5 -0
  704. package/dist/theming/ThemeLoaded.js +8 -16
  705. package/dist/theming/ThemeLoaded.js.map +1 -0
  706. package/dist/theming/ThemeRegistered.d.ts +4 -0
  707. package/dist/theming/ThemeRegistered.js +11 -0
  708. package/dist/theming/ThemeRegistered.js.map +1 -0
  709. package/dist/theming/applyTheme.d.ts +2 -0
  710. package/dist/theming/applyTheme.js +63 -65
  711. package/dist/theming/applyTheme.js.map +1 -0
  712. package/dist/theming/getConstructableStyle.d.ts +9 -0
  713. package/dist/theming/getConstructableStyle.js +13 -18
  714. package/dist/theming/getConstructableStyle.js.map +1 -0
  715. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  716. package/dist/theming/getEffectiveStyle.js +19 -24
  717. package/dist/theming/getEffectiveStyle.js.map +1 -0
  718. package/dist/theming/getStylesString.d.ts +3 -0
  719. package/dist/theming/getStylesString.js +7 -11
  720. package/dist/theming/getStylesString.js.map +1 -0
  721. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  722. package/dist/theming/getThemeDesignerTheme.js +74 -60
  723. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  724. package/dist/thirdparty/_merge.d.ts +2 -0
  725. package/dist/thirdparty/_merge.js +7 -4
  726. package/dist/thirdparty/_merge.js.map +1 -0
  727. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  728. package/dist/thirdparty/isPlainObject.js +11 -10
  729. package/dist/thirdparty/isPlainObject.js.map +1 -0
  730. package/dist/thirdparty/merge.d.ts +2 -0
  731. package/dist/thirdparty/merge.js +4 -8
  732. package/dist/thirdparty/merge.js.map +1 -0
  733. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  734. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  735. package/dist/thirdparty/preact/jsxRuntime.module.js +1 -0
  736. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  737. package/dist/thirdparty/preact/preact.module.js +1 -0
  738. package/dist/types/AnimationMode.d.ts +24 -0
  739. package/dist/types/AnimationMode.js +25 -6
  740. package/dist/types/AnimationMode.js.map +1 -0
  741. package/dist/types/CalendarType.d.ts +28 -0
  742. package/dist/types/CalendarType.js +26 -18
  743. package/dist/types/CalendarType.js.map +1 -0
  744. package/dist/types/InvisibleMessageMode.d.ts +20 -0
  745. package/dist/types/InvisibleMessageMode.js +20 -0
  746. package/dist/types/InvisibleMessageMode.js.map +1 -0
  747. package/dist/types/ItemNavigationBehavior.d.ts +18 -0
  748. package/dist/types/ItemNavigationBehavior.js +16 -12
  749. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  750. package/dist/types/MovePlacement.d.ts +20 -0
  751. package/dist/types/MovePlacement.js +22 -0
  752. package/dist/types/MovePlacement.js.map +1 -0
  753. package/dist/types/NavigationMode.d.ts +24 -0
  754. package/dist/types/NavigationMode.js +25 -6
  755. package/dist/types/NavigationMode.js.map +1 -0
  756. package/dist/types/Orientation.d.ts +16 -0
  757. package/dist/types/Orientation.js +18 -0
  758. package/dist/types/Orientation.js.map +1 -0
  759. package/dist/types/SortOrder.d.ts +24 -0
  760. package/dist/types/SortOrder.js +26 -0
  761. package/dist/types/SortOrder.js.map +1 -0
  762. package/dist/types/ValueState.d.ts +28 -0
  763. package/dist/types/ValueState.js +27 -19
  764. package/dist/types/ValueState.js.map +1 -0
  765. package/dist/types.d.ts +41 -0
  766. package/dist/types.js +2 -0
  767. package/dist/types.js.map +1 -0
  768. package/dist/updateShadowRoot.d.ts +7 -0
  769. package/dist/updateShadowRoot.js +10 -19
  770. package/dist/updateShadowRoot.js.map +1 -0
  771. package/dist/util/AccessibilityTextsHelper.d.ts +17 -0
  772. package/dist/util/AccessibilityTextsHelper.js +199 -0
  773. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  774. package/dist/util/Caret.d.ts +7 -0
  775. package/dist/util/Caret.js +16 -38
  776. package/dist/util/Caret.js.map +1 -0
  777. package/dist/util/ColorConversion.d.ts +31 -0
  778. package/dist/util/ColorConversion.js +354 -0
  779. package/dist/util/ColorConversion.js.map +1 -0
  780. package/dist/util/FetchHelper.d.ts +3 -0
  781. package/dist/util/FetchHelper.js +19 -25
  782. package/dist/util/FetchHelper.js.map +1 -0
  783. package/dist/util/FocusableElements.d.ts +4 -0
  784. package/dist/util/FocusableElements.js +95 -68
  785. package/dist/util/FocusableElements.js.map +1 -0
  786. package/dist/util/HTMLSanitizer.d.ts +3 -0
  787. package/dist/util/HTMLSanitizer.js +6 -0
  788. package/dist/util/HTMLSanitizer.js.map +1 -0
  789. package/dist/util/InvisibleMessage.d.ts +10 -0
  790. package/dist/util/InvisibleMessage.js +56 -0
  791. package/dist/util/InvisibleMessage.js.map +1 -0
  792. package/dist/util/PopupUtils.d.ts +5 -0
  793. package/dist/util/PopupUtils.js +60 -0
  794. package/dist/util/PopupUtils.js.map +1 -0
  795. package/dist/util/SelectionAssistant.d.ts +12 -0
  796. package/dist/util/SelectionAssistant.js +79 -0
  797. package/dist/util/SelectionAssistant.js.map +1 -0
  798. package/dist/util/SlotsHelper.d.ts +9 -0
  799. package/dist/util/SlotsHelper.js +22 -35
  800. package/dist/util/SlotsHelper.js.map +1 -0
  801. package/dist/util/StringHelper.d.ts +5 -0
  802. package/dist/util/StringHelper.js +32 -21
  803. package/dist/util/StringHelper.js.map +1 -0
  804. package/dist/util/TabbableElements.d.ts +17 -0
  805. package/dist/util/TabbableElements.js +46 -43
  806. package/dist/util/TabbableElements.js.map +1 -0
  807. package/dist/util/arraysAreEqual.d.ts +2 -0
  808. package/dist/util/arraysAreEqual.js +10 -12
  809. package/dist/util/arraysAreEqual.js.map +1 -0
  810. package/dist/util/clamp.d.ts +9 -0
  811. package/dist/util/clamp.js +13 -0
  812. package/dist/util/clamp.js.map +1 -0
  813. package/dist/util/createLinkInHead.d.ts +7 -0
  814. package/dist/util/createLinkInHead.js +21 -0
  815. package/dist/util/createLinkInHead.js.map +1 -0
  816. package/dist/util/debounce.d.ts +2 -0
  817. package/dist/util/debounce.js +6 -8
  818. package/dist/util/debounce.js.map +1 -0
  819. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  820. package/dist/util/detectNavigatorLanguage.js +13 -11
  821. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  822. package/dist/util/dragAndDrop/DragRegistry.d.ts +33 -0
  823. package/dist/util/dragAndDrop/DragRegistry.js +66 -0
  824. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  825. package/dist/util/dragAndDrop/findClosestPosition.d.ts +12 -0
  826. package/dist/util/dragAndDrop/findClosestPosition.js +106 -0
  827. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  828. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  829. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  830. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  831. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  832. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  833. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  834. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  835. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  836. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  837. package/dist/util/escapeRegex.d.ts +8 -0
  838. package/dist/util/escapeRegex.js +11 -0
  839. package/dist/util/escapeRegex.js.map +1 -0
  840. package/dist/util/fixSafariActiveState.d.ts +2 -0
  841. package/dist/util/fixSafariActiveState.js +11 -0
  842. package/dist/util/fixSafariActiveState.js.map +1 -0
  843. package/dist/util/formatMessage.d.ts +2 -0
  844. package/dist/util/formatMessage.js +15 -19
  845. package/dist/util/formatMessage.js.map +1 -0
  846. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  847. package/dist/util/generateHighlightedMarkup.js +41 -0
  848. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  849. package/dist/util/getActiveElement.d.ts +2 -0
  850. package/dist/util/getActiveElement.js +6 -8
  851. package/dist/util/getActiveElement.js.map +1 -0
  852. package/dist/util/getClassCopy.d.ts +441 -0
  853. package/dist/util/getClassCopy.js +10 -0
  854. package/dist/util/getClassCopy.js.map +1 -0
  855. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  856. package/dist/util/getDesigntimePropertyAsArray.js +5 -3
  857. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  858. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  859. package/dist/util/getEffectiveContentDensity.js +2 -3
  860. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  861. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  862. package/dist/util/getEffectiveScrollbarStyle.js +34 -0
  863. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  864. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  865. package/dist/util/getFastNavigationGroups.js +56 -0
  866. package/dist/util/getFastNavigationGroups.js.map +1 -0
  867. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  868. package/dist/util/getFileExtension.js +9 -11
  869. package/dist/util/getFileExtension.js.map +1 -0
  870. package/dist/util/getNormalizedTarget.d.ts +7 -0
  871. package/dist/util/getNormalizedTarget.js +14 -0
  872. package/dist/util/getNormalizedTarget.js.map +1 -0
  873. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  874. package/dist/util/getSingletonElementInstance.js +17 -11
  875. package/dist/util/getSingletonElementInstance.js.map +1 -0
  876. package/dist/util/hash2str.d.ts +1 -0
  877. package/dist/util/hash2str.js +14 -0
  878. package/dist/util/hash2str.js.map +1 -0
  879. package/dist/util/isElementClickable.d.ts +2 -0
  880. package/dist/util/isElementClickable.js +16 -0
  881. package/dist/util/isElementClickable.js.map +1 -0
  882. package/dist/util/isElementHidden.d.ts +2 -0
  883. package/dist/util/isElementHidden.js +8 -0
  884. package/dist/util/isElementHidden.js.map +1 -0
  885. package/dist/util/isElementInView.d.ts +6 -0
  886. package/dist/util/isElementInView.js +12 -0
  887. package/dist/util/isElementInView.js.map +1 -0
  888. package/dist/util/isElementTabbable.d.ts +9 -0
  889. package/dist/util/isElementTabbable.js +30 -0
  890. package/dist/util/isElementTabbable.js.map +1 -0
  891. package/dist/util/isValidPropertyName.d.ts +8 -0
  892. package/dist/util/isValidPropertyName.js +16 -17
  893. package/dist/util/isValidPropertyName.js.map +1 -0
  894. package/dist/util/throttle.d.ts +2 -0
  895. package/dist/util/throttle.js +20 -0
  896. package/dist/util/throttle.js.map +1 -0
  897. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  898. package/dist/util/toLowercaseEnumValue.js +4 -0
  899. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  900. package/dist/util/whenDOMReady.d.ts +2 -0
  901. package/dist/util/whenDOMReady.js +11 -10
  902. package/dist/util/whenDOMReady.js.map +1 -0
  903. package/dist/util/willShowContent.d.ts +2 -0
  904. package/dist/util/willShowContent.js +7 -0
  905. package/dist/util/willShowContent.js.map +1 -0
  906. package/dist/validateThemeRoot.d.ts +2 -0
  907. package/dist/validateThemeRoot.js +49 -0
  908. package/dist/validateThemeRoot.js.map +1 -0
  909. package/dist/vscode.html-custom-data.json +22 -0
  910. package/index.js +206 -2
  911. package/package-scripts.cjs +74 -0
  912. package/package.json +48 -11
  913. package/src/css/BusyIndicator.css +80 -0
  914. package/src/css/FontFace.css +96 -0
  915. package/src/css/OverrideFontFace.css +32 -0
  916. package/src/css/SystemCSSVars.css +9 -0
  917. package/src/thirdparty/preact/jsxRuntime.module.js +1 -0
  918. package/src/thirdparty/preact/preact.module.js +1 -0
  919. package/src/thirdparty/preact/version.txt +1 -0
  920. package/tsconfig.json +19 -0
  921. package/.eslintignore +0 -11
  922. package/bundle.esm.js +0 -55
  923. package/config/.eslintrc.js +0 -3
  924. package/config/rollup.config.js +0 -1
  925. package/config/wdio.conf.js +0 -1
  926. package/dist/RenderScheduler.js +0 -44
  927. package/dist/SVGIconRegistry.js +0 -73
  928. package/dist/StaticAreaItem.js +0 -80
  929. package/dist/animations/config.js +0 -5
  930. package/dist/config/AssetsPath.js +0 -17
  931. package/dist/config/RTL.js +0 -31
  932. package/dist/features/PropertiesFormatSupport.js +0 -8
  933. package/dist/isLegacyBrowser.js +0 -3
  934. package/dist/renderer/ifDefined.js +0 -21
  935. package/dist/renderer/scopeHTML.js +0 -32
  936. package/dist/resources/bundle.esm.js +0 -121
  937. package/dist/resources/bundle.esm.js.map +0 -1
  938. package/dist/test-resources/assets/Themes.js +0 -17
  939. package/dist/test-resources/elements/Child.js +0 -35
  940. package/dist/test-resources/elements/Generic.js +0 -84
  941. package/dist/test-resources/elements/GenericExt.js +0 -26
  942. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  943. package/dist/test-resources/elements/Parent.js +0 -41
  944. package/dist/test-resources/elements/WithStaticArea.js +0 -76
  945. package/dist/test-resources/pages/AllTestElements.html +0 -39
  946. package/dist/test-resources/pages/Configuration.html +0 -18
  947. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  948. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  949. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  950. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  951. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  952. package/dist/test-resources/pages/i18n.html +0 -40
  953. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  954. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  955. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  956. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  957. package/dist/test-resources/specs/StaticArea.spec.js +0 -34
  958. package/dist/test-resources/specs/Theming.spec.js +0 -31
  959. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -240
  960. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -96
  961. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -73
  962. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  963. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  964. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  965. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  966. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  967. package/dist/theming/createThemePropertiesStyleTag.js +0 -20
  968. package/dist/types/CSSSize.js +0 -9
  969. package/dist/types/DataType.js +0 -25
  970. package/dist/types/Float.js +0 -10
  971. package/dist/types/Integer.js +0 -9
  972. package/dist/types/PopupState.js +0 -37
  973. package/dist/util/AriaLabelHelper.js +0 -41
  974. package/dist/util/EffectiveAssetPath.js +0 -27
  975. package/dist/util/createStyleInHead.js +0 -18
  976. package/dist/util/encodeCSS.js +0 -24
  977. package/dist/util/findNodeOwner.js +0 -35
  978. package/dist/util/isDescendantOf.js +0 -15
  979. package/dist/util/isNodeClickable.js +0 -19
  980. package/dist/util/isNodeHidden.js +0 -9
  981. package/dist/util/isNodeTabbable.js +0 -28
  982. package/dist/util/parseProperties.js +0 -89
  983. package/dist/util/setToArray.js +0 -10
  984. package/lib/generate-asset-parameters/index.js +0 -22
  985. package/package-scripts.js +0 -46
  986. package/src/AssetRegistry.js +0 -12
  987. package/src/Boot.js +0 -48
  988. package/src/CustomElementsRegistry.js +0 -39
  989. package/src/CustomElementsScope.js +0 -108
  990. package/src/DOMObserver.js +0 -61
  991. package/src/Device.js +0 -823
  992. package/src/EventProvider.js +0 -91
  993. package/src/FeaturesRegistry.js +0 -11
  994. package/src/FontFace.js +0 -118
  995. package/src/InitialConfiguration.js +0 -150
  996. package/src/Keys.js +0 -221
  997. package/src/Render.js +0 -174
  998. package/src/RenderQueue.js +0 -66
  999. package/src/RenderScheduler.js +0 -44
  1000. package/src/SVGIconRegistry.js +0 -73
  1001. package/src/StaticAreaItem.js +0 -80
  1002. package/src/SystemCSSVars.js +0 -31
  1003. package/src/UI5Element.js +0 -1032
  1004. package/src/UI5ElementMetadata.js +0 -311
  1005. package/src/animations/AnimationQueue.js +0 -42
  1006. package/src/animations/animate.js +0 -53
  1007. package/src/animations/config.js +0 -5
  1008. package/src/animations/scroll.js +0 -28
  1009. package/src/animations/slideDown.js +0 -79
  1010. package/src/animations/slideUp.js +0 -71
  1011. package/src/asset-registries/Icons.js +0 -32
  1012. package/src/asset-registries/LocaleData.js +0 -135
  1013. package/src/asset-registries/Themes.js +0 -88
  1014. package/src/asset-registries/i18n.js +0 -110
  1015. package/src/config/AnimationMode.js +0 -23
  1016. package/src/config/AssetsPath.js +0 -17
  1017. package/src/config/CalendarType.js +0 -18
  1018. package/src/config/FormatSettings.js +0 -13
  1019. package/src/config/Language.js +0 -68
  1020. package/src/config/NoConflict.js +0 -51
  1021. package/src/config/RTL.js +0 -31
  1022. package/src/config/Theme.js +0 -28
  1023. package/src/delegate/ItemNavigation.js +0 -293
  1024. package/src/delegate/ResizeHandler.js +0 -106
  1025. package/src/delegate/ScrollEnablement.js +0 -182
  1026. package/src/features/OpenUI5Support.js +0 -90
  1027. package/src/features/PropertiesFormatSupport.js +0 -8
  1028. package/src/getSharedResource.js +0 -30
  1029. package/src/i18nBundle.js +0 -52
  1030. package/src/isLegacyBrowser.js +0 -3
  1031. package/src/locale/Locale.js +0 -91
  1032. package/src/locale/RTLAwareRegistry.js +0 -14
  1033. package/src/locale/applyDirection.js +0 -17
  1034. package/src/locale/directionChange.js +0 -32
  1035. package/src/locale/getEffectiveDir.js +0 -28
  1036. package/src/locale/getLocale.js +0 -41
  1037. package/src/locale/languageChange.js +0 -22
  1038. package/src/locale/nextFallbackLocale.js +0 -28
  1039. package/src/locale/normalizeLocale.js +0 -54
  1040. package/src/renderer/LitRenderer.js +0 -31
  1041. package/src/renderer/executeTemplate.js +0 -17
  1042. package/src/renderer/ifDefined.js +0 -21
  1043. package/src/renderer/scopeHTML.js +0 -32
  1044. package/src/theming/CustomStyle.js +0 -40
  1045. package/src/theming/ThemeLoaded.js +0 -22
  1046. package/src/theming/applyTheme.js +0 -78
  1047. package/src/theming/createThemePropertiesStyleTag.js +0 -20
  1048. package/src/theming/getConstructableStyle.js +0 -30
  1049. package/src/theming/getEffectiveStyle.js +0 -30
  1050. package/src/theming/getStylesString.js +0 -13
  1051. package/src/theming/getThemeDesignerTheme.js +0 -67
  1052. package/src/thirdparty/_merge.js +0 -32
  1053. package/src/thirdparty/isPlainObject.js +0 -18
  1054. package/src/thirdparty/merge.js +0 -10
  1055. package/src/types/AnimationMode.js +0 -7
  1056. package/src/types/CSSSize.js +0 -9
  1057. package/src/types/CalendarType.js +0 -22
  1058. package/src/types/DataType.js +0 -25
  1059. package/src/types/Float.js +0 -10
  1060. package/src/types/Integer.js +0 -9
  1061. package/src/types/ItemNavigationBehavior.js +0 -16
  1062. package/src/types/NavigationMode.js +0 -7
  1063. package/src/types/PopupState.js +0 -37
  1064. package/src/types/ValueState.js +0 -22
  1065. package/src/updateShadowRoot.js +0 -26
  1066. package/src/util/AriaLabelHelper.js +0 -41
  1067. package/src/util/Caret.js +0 -45
  1068. package/src/util/EffectiveAssetPath.js +0 -27
  1069. package/src/util/FetchHelper.js +0 -31
  1070. package/src/util/FocusableElements.js +0 -73
  1071. package/src/util/SlotsHelper.js +0 -43
  1072. package/src/util/StringHelper.js +0 -26
  1073. package/src/util/TabbableElements.js +0 -47
  1074. package/src/util/arraysAreEqual.js +0 -15
  1075. package/src/util/createStyleInHead.js +0 -18
  1076. package/src/util/debounce.js +0 -17
  1077. package/src/util/detectNavigatorLanguage.js +0 -13
  1078. package/src/util/encodeCSS.js +0 -24
  1079. package/src/util/findNodeOwner.js +0 -35
  1080. package/src/util/formatMessage.js +0 -23
  1081. package/src/util/getActiveElement.js +0 -11
  1082. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  1083. package/src/util/getEffectiveContentDensity.js +0 -5
  1084. package/src/util/getSingletonElementInstance.js +0 -13
  1085. package/src/util/isDescendantOf.js +0 -15
  1086. package/src/util/isNodeClickable.js +0 -19
  1087. package/src/util/isNodeHidden.js +0 -9
  1088. package/src/util/isNodeTabbable.js +0 -28
  1089. package/src/util/isValidPropertyName.js +0 -29
  1090. package/src/util/parseProperties.js +0 -89
  1091. package/src/util/setToArray.js +0 -10
  1092. package/src/util/whenDOMReady.js +0 -13
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FocusableElements.js","sourceRoot":"","sources":["../../src/util/FocusableElements.ts"],"names":[],"mappings":"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","sourcesContent":["import isElementHidden from \"./isElementHidden.js\";\nimport isElementClickable from \"./isElementClickable.js\";\nimport { instanceOfUI5Element } from \"../UI5Element.js\";\nimport { isSafari } from \"../Device.js\";\n\ntype FocusableElementPromise = Promise<HTMLElement | null>;\n\nconst isFocusTrap = (el: HTMLElement) => {\n\treturn el.hasAttribute(\"data-ui5-focus-trap\");\n};\n\nconst isScrollable = (el: HTMLElement) => {\n\tconst computedStyle = getComputedStyle(el);\n\n\treturn (el.scrollHeight > el.clientHeight && [\"scroll\", \"auto\"].indexOf(computedStyle.overflowY) >= 0)\n\t\t|| (el.scrollWidth > el.clientWidth && [\"scroll\", \"auto\"].indexOf(computedStyle.overflowX) >= 0);\n};\n\nconst getFirstFocusableElement = async (container: HTMLElement, startFromContainer?: boolean): FocusableElementPromise => {\n\tif (!container || isElementHidden(container)) {\n\t\treturn null;\n\t}\n\n\treturn findFocusableElement(container, true, startFromContainer);\n};\n\nconst getLastFocusableElement = async (container: HTMLElement, startFromContainer?: boolean): FocusableElementPromise => {\n\tif (!container || isElementHidden(container)) {\n\t\treturn null;\n\t}\n\n\treturn findFocusableElement(container, false, startFromContainer);\n};\n\nconst isElemFocusable = (el: HTMLElement) => {\n\treturn el.hasAttribute(\"data-ui5-focus-redirect\") || !isElementHidden(el);\n};\n\nconst isUI5ElementWithNegativeTabIndex = (el: HTMLElement) => {\n\tif (instanceOfUI5Element(el)) {\n\t\tconst tabIndex = el.getAttribute(\"tabindex\");\n\t\tif (tabIndex !== null && parseInt(tabIndex) < 0) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n};\n\nconst findFocusableElement = async (container: HTMLElement, forward: boolean, startFromContainer?: boolean): FocusableElementPromise => {\n\tlet child: HTMLElement | undefined;\n\tlet assignedElements;\n\tlet currentIndex = -1;\n\n\tif (container.shadowRoot) {\n\t\tchild = forward ? container.shadowRoot.firstChild as HTMLElement : container.shadowRoot.lastChild as HTMLElement;\n\t} else if (container instanceof HTMLSlotElement && container.assignedNodes()) {\n\t\tassignedElements = container.assignedNodes();\n\t\tcurrentIndex = forward ? 0 : assignedElements.length - 1;\n\t\tchild = assignedElements[currentIndex] as HTMLElement;\n\t} else if (startFromContainer) {\n\t\tchild = container;\n\t} else {\n\t\tchild = forward ? container.firstElementChild as HTMLElement : container.lastElementChild as HTMLElement;\n\t}\n\n\tlet focusableDescendant;\n\n\t/* eslint-disable no-await-in-loop */\n\n\twhile (child) {\n\t\tconst originalChild: HTMLElement | undefined = child;\n\n\t\tif (!isElementHidden(originalChild) && !isUI5ElementWithNegativeTabIndex(originalChild)) {\n\t\t\tif (instanceOfUI5Element(child)) {\n\t\t\t\t// getDomRef is used because some components mark their focusable ref in an inner\n\t\t\t\t// html but there might also be focusable targets outside of it\n\t\t\t\t// as an example - TreeItemBase\n\t\t\t\t// div - root of the component returned by getDomRef()\n\t\t\t\t// \tli.ui5-li-tree - returned by getFocusDomRef() and may not be focusable (ItemNavigation manages tabindex)\n\t\t\t\t// \tul.subtree - may still contain focusable targets (sub nodes of the tree item)\n\t\t\t\tawait child._waitForDomRef();\n\t\t\t\tchild = child.getDomRef();\n\t\t\t}\n\n\t\t\tif (!child || isElementHidden(child)) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif (child.nodeType === 1 && isElemFocusable(child) && !isFocusTrap(child)) {\n\t\t\t\tif (isElementClickable(child)) {\n\t\t\t\t\treturn (child && typeof child.focus === \"function\") ? child : null;\n\t\t\t\t}\n\n\t\t\t\tfocusableDescendant = await findFocusableElement(child, forward);\n\n\t\t\t\t// check if it is a keyboard focusable scroll container\n\t\t\t\tif (!isSafari() && !focusableDescendant && isScrollable(child)) {\n\t\t\t\t\treturn (child && typeof child.focus === \"function\") ? child : null;\n\t\t\t\t}\n\n\t\t\t\tif (focusableDescendant) {\n\t\t\t\t\treturn (focusableDescendant && typeof focusableDescendant.focus === \"function\") ? focusableDescendant : null;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tchild = forward ? originalChild.nextSibling as HTMLElement : originalChild.previousSibling as HTMLElement;\n\n\t\t// If the child element is not part of the currently assigned element,\n\t\t// we have to check the next/previous element assigned to the slot or continue with the next/previous sibling of the slot,\n\t\t// otherwise, the nextSibling/previousSibling is the next element inside the light DOM\n\t\tif (assignedElements && !assignedElements[currentIndex].contains(child)) {\n\t\t\tcurrentIndex = forward ? currentIndex + 1 : currentIndex - 1;\n\n\t\t\tchild = assignedElements[currentIndex] as HTMLElement;\n\t\t}\n\t}\n\n\t/* eslint-enable no-await-in-loop */\n\n\treturn null;\n};\n\nexport {\n\tgetFirstFocusableElement,\n\tgetLastFocusableElement,\n};\n"]}
@@ -0,0 +1,3 @@
1
+ import sanitizeHTML from "../sap/base/security/sanitizeHTML.js";
2
+ import URLListValidator from "../sap/base/security/URLListValidator.js";
3
+ export { URLListValidator, sanitizeHTML, };
@@ -0,0 +1,6 @@
1
+ // @ts-ignore
2
+ import sanitizeHTML from "../sap/base/security/sanitizeHTML.js";
3
+ // @ts-ignore
4
+ import URLListValidator from "../sap/base/security/URLListValidator.js";
5
+ export { URLListValidator, sanitizeHTML, };
6
+ //# sourceMappingURL=HTMLSanitizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HTMLSanitizer.js","sourceRoot":"","sources":["../../src/util/HTMLSanitizer.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,YAAY,MAAM,sCAAsC,CAAC;AAChE,aAAa;AACb,OAAO,gBAAgB,MAAM,0CAA0C,CAAC;AAExE,OAAO,EACN,gBAAgB,EAChB,YAAY,GACZ,CAAC","sourcesContent":["// @ts-ignore\nimport sanitizeHTML from \"../sap/base/security/sanitizeHTML.js\";\n// @ts-ignore\nimport URLListValidator from \"../sap/base/security/URLListValidator.js\";\n\nexport {\n\tURLListValidator,\n\tsanitizeHTML,\n};\n"]}
@@ -0,0 +1,10 @@
1
+ import InvisibleMessageMode from "../types/InvisibleMessageMode.js";
2
+ /**
3
+ * Inserts the string into the respective span, depending on the mode provided.
4
+ *
5
+ * @param { string } message String to be announced by the screen reader.
6
+ * @param { InvisibleMessageMode } mode The mode to be inserted in the aria-live attribute.
7
+ * @public
8
+ */
9
+ declare const announce: (message: string, mode: InvisibleMessageMode) => void;
10
+ export default announce;
@@ -0,0 +1,56 @@
1
+ import InvisibleMessageMode from "../types/InvisibleMessageMode.js";
2
+ import getSingletonElementInstance from "./getSingletonElementInstance.js";
3
+ import { attachBoot } from "../Boot.js";
4
+ let politeSpan;
5
+ let assertiveSpan;
6
+ const setOutOfViewportStyles = (el) => {
7
+ el.style.position = "absolute";
8
+ el.style.clip = "rect(1px,1px,1px,1px)";
9
+ el.style.userSelect = "none";
10
+ el.style.left = "-1000px";
11
+ el.style.top = "-1000px";
12
+ el.style.pointerEvents = "none";
13
+ };
14
+ attachBoot(() => {
15
+ if (politeSpan && assertiveSpan) {
16
+ return;
17
+ }
18
+ politeSpan = document.createElement("span");
19
+ assertiveSpan = document.createElement("span");
20
+ politeSpan.classList.add("ui5-invisiblemessage-polite");
21
+ assertiveSpan.classList.add("ui5-invisiblemessage-assertive");
22
+ politeSpan.setAttribute("aria-live", "polite");
23
+ assertiveSpan.setAttribute("aria-live", "assertive");
24
+ politeSpan.setAttribute("role", "alert");
25
+ assertiveSpan.setAttribute("role", "alert");
26
+ setOutOfViewportStyles(politeSpan);
27
+ setOutOfViewportStyles(assertiveSpan);
28
+ getSingletonElementInstance("ui5-announcement-area").appendChild(politeSpan);
29
+ getSingletonElementInstance("ui5-announcement-area").appendChild(assertiveSpan);
30
+ });
31
+ /**
32
+ * Inserts the string into the respective span, depending on the mode provided.
33
+ *
34
+ * @param { string } message String to be announced by the screen reader.
35
+ * @param { InvisibleMessageMode } mode The mode to be inserted in the aria-live attribute.
36
+ * @public
37
+ */
38
+ const announce = (message, mode) => {
39
+ // If no type is presented, fallback to polite announcement.
40
+ const span = mode === InvisibleMessageMode.Assertive ? assertiveSpan : politeSpan;
41
+ // Set textContent to empty string in order to trigger screen reader's announcement.
42
+ span.textContent = "";
43
+ span.textContent = message;
44
+ if (mode !== InvisibleMessageMode.Assertive && mode !== InvisibleMessageMode.Polite) {
45
+ console.warn(`You have entered an invalid mode. Valid values are: "Polite" and "Assertive". The framework will automatically set the mode to "Polite".`); // eslint-disable-line
46
+ }
47
+ // clear the span in order to avoid reading it out while in JAWS reading node
48
+ setTimeout(() => {
49
+ // ensure that we clear the text node only if no announce is made in the meantime
50
+ if (span.textContent === message) {
51
+ span.textContent = "";
52
+ }
53
+ }, 3000);
54
+ };
55
+ export default announce;
56
+ //# sourceMappingURL=InvisibleMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InvisibleMessage.js","sourceRoot":"","sources":["../../src/util/InvisibleMessage.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,kCAAkC,CAAC;AACpE,OAAO,2BAA2B,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,IAAI,UAAuB,CAAC;AAC5B,IAAI,aAA0B,CAAC;AAE/B,MAAM,sBAAsB,GAAG,CAAC,EAAe,EAAE,EAAE;IAClD,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;IAC/B,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACxC,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC;IAC7B,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;IAC1B,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,SAAS,CAAC;IACzB,EAAE,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC;AACjC,CAAC,CAAC;AAEF,UAAU,CAAC,GAAG,EAAE;IACf,IAAI,UAAU,IAAI,aAAa,EAAE,CAAC;QACjC,OAAO;IACR,CAAC;IAED,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAE/C,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IACxD,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAE9D,UAAU,CAAC,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC/C,aAAa,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAErD,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE5C,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACnC,sBAAsB,CAAC,aAAa,CAAC,CAAC;IAEtC,2BAA2B,CAAC,uBAAuB,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC7E,2BAA2B,CAAC,uBAAuB,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AACjF,CAAC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,IAA0B,EAAE,EAAE;IAChE,4DAA4D;IAC5D,MAAM,IAAI,GAAG,IAAI,KAAK,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;IAElF,oFAAoF;IACpF,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IACtB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;IAE3B,IAAI,IAAI,KAAK,oBAAoB,CAAC,SAAS,IAAI,IAAI,KAAK,oBAAoB,CAAC,MAAM,EAAE,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,0IAA0I,CAAC,CAAC,CAAC,sBAAsB;IACjL,CAAC;IAED,6EAA6E;IAC7E,UAAU,CAAC,GAAG,EAAE;QACf,iFAAiF;QACjF,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACvB,CAAC;IACF,CAAC,EAAE,IAAI,CAAC,CAAC;AACV,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC","sourcesContent":["import InvisibleMessageMode from \"../types/InvisibleMessageMode.js\";\nimport getSingletonElementInstance from \"./getSingletonElementInstance.js\";\nimport { attachBoot } from \"../Boot.js\";\n\nlet politeSpan: HTMLElement;\nlet assertiveSpan: HTMLElement;\n\nconst setOutOfViewportStyles = (el: HTMLElement) => {\n\tel.style.position = \"absolute\";\n\tel.style.clip = \"rect(1px,1px,1px,1px)\";\n\tel.style.userSelect = \"none\";\n\tel.style.left = \"-1000px\";\n\tel.style.top = \"-1000px\";\n\tel.style.pointerEvents = \"none\";\n};\n\nattachBoot(() => {\n\tif (politeSpan && assertiveSpan) {\n\t\treturn;\n\t}\n\n\tpoliteSpan = document.createElement(\"span\");\n\tassertiveSpan = document.createElement(\"span\");\n\n\tpoliteSpan.classList.add(\"ui5-invisiblemessage-polite\");\n\tassertiveSpan.classList.add(\"ui5-invisiblemessage-assertive\");\n\n\tpoliteSpan.setAttribute(\"aria-live\", \"polite\");\n\tassertiveSpan.setAttribute(\"aria-live\", \"assertive\");\n\n\tpoliteSpan.setAttribute(\"role\", \"alert\");\n\tassertiveSpan.setAttribute(\"role\", \"alert\");\n\n\tsetOutOfViewportStyles(politeSpan);\n\tsetOutOfViewportStyles(assertiveSpan);\n\n\tgetSingletonElementInstance(\"ui5-announcement-area\").appendChild(politeSpan);\n\tgetSingletonElementInstance(\"ui5-announcement-area\").appendChild(assertiveSpan);\n});\n\n/**\n * Inserts the string into the respective span, depending on the mode provided.\n *\n * @param { string } message String to be announced by the screen reader.\n * @param { InvisibleMessageMode } mode The mode to be inserted in the aria-live attribute.\n * @public\n */\nconst announce = (message: string, mode: InvisibleMessageMode) => {\n\t// If no type is presented, fallback to polite announcement.\n\tconst span = mode === InvisibleMessageMode.Assertive ? assertiveSpan : politeSpan;\n\n\t// Set textContent to empty string in order to trigger screen reader's announcement.\n\tspan.textContent = \"\";\n\tspan.textContent = message;\n\n\tif (mode !== InvisibleMessageMode.Assertive && mode !== InvisibleMessageMode.Polite) {\n\t\tconsole.warn(`You have entered an invalid mode. Valid values are: \"Polite\" and \"Assertive\". The framework will automatically set the mode to \"Polite\".`); // eslint-disable-line\n\t}\n\n\t// clear the span in order to avoid reading it out while in JAWS reading node\n\tsetTimeout(() => {\n\t\t// ensure that we clear the text node only if no announce is made in the meantime\n\t\tif (span.textContent === message) {\n\t\t\tspan.textContent = \"\";\n\t\t}\n\t}, 3000);\n};\n\nexport default announce;\n"]}
@@ -0,0 +1,5 @@
1
+ declare const getFocusedElement: () => HTMLElement | null;
2
+ declare const isFocusedElementWithinNode: (node: HTMLElement) => boolean;
3
+ declare const isClickInRect: (e: MouseEvent | TouchEvent, rect: DOMRect) => boolean;
4
+ declare const getClosedPopupParent: (el: HTMLElement) => HTMLElement;
5
+ export { getFocusedElement, isClickInRect, getClosedPopupParent, isFocusedElementWithinNode, };
@@ -0,0 +1,60 @@
1
+ import getActiveElement from "./getActiveElement.js";
2
+ const getFocusedElement = () => {
3
+ const element = getActiveElement();
4
+ return (element && typeof element.focus === "function") ? element : null;
5
+ };
6
+ const isFocusedElementWithinNode = (node) => {
7
+ const fe = getFocusedElement();
8
+ if (fe) {
9
+ return isNodeContainedWithin(node, fe);
10
+ }
11
+ return false;
12
+ };
13
+ const isNodeContainedWithin = (parent, child) => {
14
+ let currentNode = parent;
15
+ if (currentNode.shadowRoot) {
16
+ const children = Array.from(currentNode.shadowRoot.children);
17
+ currentNode = children.find(n => n.localName !== "style");
18
+ if (!currentNode) {
19
+ return false;
20
+ }
21
+ }
22
+ if (currentNode === child) {
23
+ return true;
24
+ }
25
+ const childNodes = currentNode.localName === "slot" ? currentNode.assignedNodes() : currentNode.children;
26
+ if (childNodes) {
27
+ return Array.from(childNodes).some(n => isNodeContainedWithin(n, child));
28
+ }
29
+ return false;
30
+ };
31
+ const isPointInRect = (x, y, rect) => {
32
+ return x >= rect.left && x <= rect.right
33
+ && y >= rect.top && y <= rect.bottom;
34
+ };
35
+ const isClickInRect = (e, rect) => {
36
+ let x;
37
+ let y;
38
+ if (e instanceof MouseEvent) {
39
+ x = e.clientX;
40
+ y = e.clientY;
41
+ }
42
+ else {
43
+ const touch = e.touches[0];
44
+ x = touch.clientX;
45
+ y = touch.clientY;
46
+ }
47
+ return isPointInRect(x, y, rect);
48
+ };
49
+ function instanceOfPopup(object) {
50
+ return "isUI5Element" in object && "_show" in object;
51
+ }
52
+ const getClosedPopupParent = (el) => {
53
+ const parent = el.parentElement || (el.getRootNode && el.getRootNode().host);
54
+ if (parent && ((instanceOfPopup(parent) || parent === document.documentElement))) {
55
+ return parent;
56
+ }
57
+ return getClosedPopupParent(parent);
58
+ };
59
+ export { getFocusedElement, isClickInRect, getClosedPopupParent, isFocusedElementWithinNode, };
60
+ //# sourceMappingURL=PopupUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopupUtils.js","sourceRoot":"","sources":["../../src/util/PopupUtils.ts"],"names":[],"mappings":"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","sourcesContent":["import getActiveElement from \"./getActiveElement.js\";\n\nconst getFocusedElement = () => {\n\tconst element = getActiveElement() as HTMLElement;\n\treturn (element && typeof element.focus === \"function\") ? element : null;\n};\n\nconst isFocusedElementWithinNode = (node: HTMLElement) => {\n\tconst fe = getFocusedElement();\n\n\tif (fe) {\n\t\treturn isNodeContainedWithin(node, fe);\n\t}\n\n\treturn false;\n};\n\nconst isNodeContainedWithin = (parent: HTMLElement, child: HTMLElement): boolean => {\n\tlet currentNode: HTMLElement | undefined = parent;\n\n\tif (currentNode.shadowRoot) {\n\t\tconst children = Array.from(currentNode.shadowRoot.children) as Array<HTMLElement>;\n\t\tcurrentNode = children.find(n => n.localName !== \"style\");\n\n\t\tif (!currentNode) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tif (currentNode === child) {\n\t\treturn true;\n\t}\n\n\tconst childNodes = currentNode.localName === \"slot\" ? (currentNode as HTMLSlotElement).assignedNodes() : currentNode.children;\n\n\tif (childNodes) {\n\t\treturn Array.from(childNodes).some(n => isNodeContainedWithin(n as HTMLElement, child));\n\t}\n\n\treturn false;\n};\n\nconst isPointInRect = (x: number, y: number, rect: DOMRect) => {\n\treturn x >= rect.left && x <= rect.right\n\t\t&& y >= rect.top && y <= rect.bottom;\n};\n\nconst isClickInRect = (e: MouseEvent | TouchEvent, rect: DOMRect) => {\n\tlet x;\n\tlet y;\n\n\tif (e instanceof MouseEvent) {\n\t\tx = e.clientX;\n\t\ty = e.clientY;\n\t} else {\n\t\tconst touch = e.touches[0];\n\t\tx = touch.clientX;\n\t\ty = touch.clientY;\n\t}\n\n\treturn isPointInRect(x, y, rect);\n};\n\ninterface PopupInterface { // Refactor: replace with Popup.js\n\t_show: () => void,\n\topen: boolean,\n}\nfunction instanceOfPopup(object: any): object is PopupInterface {\n\treturn \"isUI5Element\" in object && \"_show\" in object;\n}\n\nconst getClosedPopupParent = (el: HTMLElement): HTMLElement => {\n\tconst parent = el.parentElement || (el.getRootNode && (el.getRootNode() as ShadowRoot).host);\n\n\tif (parent && ((instanceOfPopup(parent) || parent === document.documentElement))) {\n\t\treturn parent as HTMLElement;\n\t}\n\n\treturn getClosedPopupParent(parent as HTMLElement);\n};\n\nexport {\n\tgetFocusedElement,\n\tisClickInRect,\n\tgetClosedPopupParent,\n\tisFocusedElementWithinNode,\n};\n"]}
@@ -0,0 +1,12 @@
1
+ declare const getElementSelection: (element: HTMLElement) => {
2
+ selectedText: string;
3
+ x: number;
4
+ y: number;
5
+ width: number;
6
+ height: number;
7
+ top: number;
8
+ right: number;
9
+ bottom: number;
10
+ left: number;
11
+ };
12
+ export default getElementSelection;
@@ -0,0 +1,79 @@
1
+ import getEffectiveScrollbarStyle from "../util/getEffectiveScrollbarStyle.js";
2
+ const copyAndApplyStyles = (element, copiedElement) => {
3
+ const computedStyles = getComputedStyle(element);
4
+ for (let i = 0; i < computedStyles.length; i++) {
5
+ const propertyName = computedStyles[i];
6
+ copiedElement.style.setProperty(propertyName, computedStyles.getPropertyValue(propertyName));
7
+ }
8
+ element.tagName === "INPUT" && setInputSpecificStyles(copiedElement);
9
+ copiedElement.style.position = "absolute";
10
+ copiedElement.style.left = `${element.getBoundingClientRect().left}px`;
11
+ copiedElement.style.top = `${element.getBoundingClientRect().top}px`;
12
+ setUnInteractableStyles(copiedElement);
13
+ document.body.appendChild(copiedElement);
14
+ };
15
+ const setUnInteractableStyles = (element) => {
16
+ element.style.position = "absolute";
17
+ element.style.userSelect = "none";
18
+ element.style.pointerEvents = "none";
19
+ element.style.zIndex = "-1";
20
+ element.style.opacity = "0";
21
+ };
22
+ const setInputSpecificStyles = (element) => {
23
+ element.style.whiteSpace = "nowrap";
24
+ element.style.overflowX = "auto";
25
+ element.style.overflowY = "hidden";
26
+ };
27
+ const applyScrollStylings = () => {
28
+ const sheet = new CSSStyleSheet();
29
+ const styles = getEffectiveScrollbarStyle();
30
+ sheet.replaceSync(styles);
31
+ document.adoptedStyleSheets = [...document.adoptedStyleSheets, sheet];
32
+ };
33
+ const createCopy = () => {
34
+ const copiedElement = document.createElement("div");
35
+ copiedElement.id = "ui5-selection-mirror";
36
+ copiedElement.contentEditable = "true";
37
+ applyScrollStylings();
38
+ document.body.appendChild(copiedElement);
39
+ };
40
+ const applyScrollPosition = (element, copiedElement) => {
41
+ copiedElement.scrollTop = element.scrollTop;
42
+ copiedElement.scrollLeft = element.scrollLeft;
43
+ };
44
+ const getSelectionCoordinates = (element, mirror) => {
45
+ const { selectionStart, selectionEnd } = element;
46
+ const selectedText = element.value.slice(selectionStart, element.selectionEnd);
47
+ const range = document.createRange();
48
+ range.setStart(mirror.firstChild, selectionEnd - 1);
49
+ range.setEnd(mirror.firstChild, selectionEnd);
50
+ applyScrollPosition(element, mirror);
51
+ const rangeRect = range.getBoundingClientRect();
52
+ const rectObject = {
53
+ x: rangeRect.x,
54
+ y: rangeRect.y,
55
+ width: rangeRect.width,
56
+ height: rangeRect.height,
57
+ top: rangeRect.top,
58
+ right: rangeRect.right,
59
+ bottom: rangeRect.bottom,
60
+ left: rangeRect.left,
61
+ };
62
+ document.body.removeChild(mirror);
63
+ return { ...rectObject, selectedText };
64
+ };
65
+ const getElementSelection = (element) => {
66
+ const innerElement = element.shadowRoot.querySelector("textarea")
67
+ || element.shadowRoot.querySelector("input");
68
+ if (!document.getElementById("ui5-selection-mirror")) {
69
+ createCopy();
70
+ }
71
+ const copiedElement = document.getElementById("ui5-selection-mirror");
72
+ copiedElement.textContent = innerElement.value;
73
+ if (innerElement) {
74
+ copyAndApplyStyles(innerElement, copiedElement);
75
+ }
76
+ return getSelectionCoordinates(innerElement, copiedElement);
77
+ };
78
+ export default getElementSelection;
79
+ //# sourceMappingURL=SelectionAssistant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectionAssistant.js","sourceRoot":"","sources":["../../src/util/SelectionAssistant.ts"],"names":[],"mappings":"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","sourcesContent":["import getEffectiveScrollbarStyle from \"../util/getEffectiveScrollbarStyle.js\";\n\nconst copyAndApplyStyles = (element: HTMLElement, copiedElement: HTMLElement) => {\n\tconst computedStyles = getComputedStyle(element);\n\n\tfor (let i = 0; i < computedStyles.length; i++) {\n\t\tconst propertyName = computedStyles[i];\n\t\tcopiedElement.style.setProperty(propertyName, computedStyles.getPropertyValue(propertyName));\n\t}\n\n\telement.tagName === \"INPUT\" && setInputSpecificStyles(copiedElement);\n\n\tcopiedElement.style.position = \"absolute\";\n\tcopiedElement.style.left = `${element.getBoundingClientRect().left}px`;\n\tcopiedElement.style.top = `${element.getBoundingClientRect().top}px`;\n\n\tsetUnInteractableStyles(copiedElement);\n\n\tdocument.body.appendChild(copiedElement);\n};\n\nconst setUnInteractableStyles = (element: HTMLElement) => {\n\telement.style.position = \"absolute\";\n\telement.style.userSelect = \"none\";\n\telement.style.pointerEvents = \"none\";\n\telement.style.zIndex = \"-1\";\n\telement.style.opacity = \"0\";\n};\n\nconst setInputSpecificStyles = (element: HTMLElement) => {\n\telement.style.whiteSpace = \"nowrap\";\n\telement.style.overflowX = \"auto\";\n\telement.style.overflowY = \"hidden\";\n};\n\nconst applyScrollStylings = () => {\n\tconst sheet = new CSSStyleSheet();\n\tconst styles = getEffectiveScrollbarStyle();\n\n\tsheet.replaceSync(styles);\n\n\tdocument.adoptedStyleSheets = [...document.adoptedStyleSheets, sheet];\n};\n\nconst createCopy = () => {\n\tconst copiedElement = document.createElement(\"div\");\n\n\tcopiedElement.id = \"ui5-selection-mirror\";\n\tcopiedElement.contentEditable = \"true\";\n\n\tapplyScrollStylings();\n\n\tdocument.body.appendChild(copiedElement);\n};\n\nconst applyScrollPosition = (element: HTMLElement, copiedElement: HTMLElement) => {\n\tcopiedElement.scrollTop = element.scrollTop;\n\tcopiedElement.scrollLeft = element.scrollLeft;\n};\n\nconst getSelectionCoordinates = (element: HTMLInputElement | HTMLTextAreaElement, mirror: HTMLDivElement) => {\n\tconst { selectionStart, selectionEnd } = element;\n\tconst selectedText = element.value.slice(\n\t\tselectionStart!,\n\t\telement.selectionEnd!,\n\t);\n\tconst range = document.createRange();\n\n\trange.setStart(mirror.firstChild!, selectionEnd! - 1);\n\trange.setEnd(mirror.firstChild!, selectionEnd!);\n\n\tapplyScrollPosition(element, mirror);\n\n\tconst rangeRect = range.getBoundingClientRect();\n\tconst rectObject = {\n\t\tx: rangeRect.x,\n\t\ty: rangeRect.y,\n\t\twidth: rangeRect.width,\n\t\theight: rangeRect.height,\n\t\ttop: rangeRect.top,\n\t\tright: rangeRect.right,\n\t\tbottom: rangeRect.bottom,\n\t\tleft: rangeRect.left,\n\t};\n\n\tdocument.body.removeChild(mirror);\n\n\treturn { ...rectObject, selectedText };\n};\n\nconst getElementSelection = (element: HTMLElement) => {\n\tconst innerElement = element.shadowRoot!.querySelector(\"textarea\")\n\t\t|| element.shadowRoot!.querySelector(\"input\");\n\n\tif (!document.getElementById(\"ui5-selection-mirror\")) {\n\t\tcreateCopy();\n\t}\n\n\tconst copiedElement = document.getElementById(\n\t\t\"ui5-selection-mirror\",\n\t)!;\n\n\tcopiedElement.textContent = innerElement!.value;\n\n\tif (innerElement) {\n\t\tcopyAndApplyStyles(innerElement, copiedElement)!;\n\t}\n\n\treturn getSelectionCoordinates(innerElement!, copiedElement as HTMLDivElement);\n};\n\nexport default getElementSelection;\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Determines the slot to which a node should be assigned
3
+ * @param node Text node or HTML element
4
+ * @returns {string}
5
+ */
6
+ declare const getSlotName: (node: Node) => string;
7
+ declare const getSlottedNodes: (node: Node) => Node[];
8
+ declare const getSlottedNodesList: (nodeList: Array<Node>) => Node[];
9
+ export { getSlotName, getSlottedNodes, getSlottedNodesList, };
@@ -3,41 +3,28 @@
3
3
  * @param node Text node or HTML element
4
4
  * @returns {string}
5
5
  */
6
- const getSlotName = node => {
7
- // Text nodes can only go to the default slot
8
- if (!(node instanceof HTMLElement)) {
9
- return "default";
10
- }
11
-
12
- // Discover the slot based on the real slot name (f.e. footer => footer, or content-32 => content)
13
- const slot = node.getAttribute("slot");
14
- if (slot) {
15
- const match = slot.match(/^(.+?)-\d+$/);
16
- return match ? match[1] : slot;
17
- }
18
-
19
- // Use default slot as a fallback
20
- return "default";
6
+ const getSlotName = (node) => {
7
+ // Text nodes can only go to the default slot
8
+ if (!(node instanceof HTMLElement)) {
9
+ return "default";
10
+ }
11
+ // Discover the slot based on the real slot name (f.e. footer => footer, or content-32 => content)
12
+ const slot = node.getAttribute("slot");
13
+ if (slot) {
14
+ const match = slot.match(/^(.+?)-\d+$/);
15
+ return match ? match[1] : slot;
16
+ }
17
+ // Use default slot as a fallback
18
+ return "default";
21
19
  };
22
-
23
- const isSlot = el => el && el instanceof HTMLElement && el.localName === "slot";
24
-
25
- const getSlottedElements = el => {
26
- if (isSlot(el)) {
27
- return el.assignedNodes({ flatten: true }).filter(item => item instanceof HTMLElement);
28
- }
29
-
30
- return [el];
20
+ const getSlottedNodes = (node) => {
21
+ if (node instanceof HTMLSlotElement) {
22
+ return node.assignedNodes({ flatten: true }).filter(item => item instanceof HTMLElement);
23
+ }
24
+ return [node];
31
25
  };
32
-
33
- const getSlottedElementsList = elList => {
34
- const reducer = (acc, curr) => acc.concat(getSlottedElements(curr));
35
- return elList.reduce(reducer, []);
36
- };
37
-
38
- export {
39
- getSlotName,
40
- isSlot,
41
- getSlottedElements,
42
- getSlottedElementsList,
26
+ const getSlottedNodesList = (nodeList) => {
27
+ return nodeList.reduce((acc, curr) => acc.concat(getSlottedNodes(curr)), []);
43
28
  };
29
+ export { getSlotName, getSlottedNodes, getSlottedNodesList, };
30
+ //# sourceMappingURL=SlotsHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlotsHelper.js","sourceRoot":"","sources":["../../src/util/SlotsHelper.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,GAAG,CAAC,IAAU,EAAE,EAAE;IAClC,6CAA6C;IAC7C,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC,EAAE,CAAC;QACpC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,kGAAkG;IAClG,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,IAAI,EAAE,CAAC;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACxC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,iCAAiC;IACjC,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,IAAU,EAAE,EAAE;IACtC,IAAI,IAAI,YAAY,eAAe,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,WAAW,CAAC,CAAC;IAC1F,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,QAAqB,EAAE,EAAE;IACrD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,EAAiB,CAAC,CAAC;AAC7F,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,eAAe,EACf,mBAAmB,GACnB,CAAC","sourcesContent":["/**\n * Determines the slot to which a node should be assigned\n * @param node Text node or HTML element\n * @returns {string}\n */\nconst getSlotName = (node: Node) => {\n\t// Text nodes can only go to the default slot\n\tif (!(node instanceof HTMLElement)) {\n\t\treturn \"default\";\n\t}\n\n\t// Discover the slot based on the real slot name (f.e. footer => footer, or content-32 => content)\n\tconst slot = node.getAttribute(\"slot\");\n\tif (slot) {\n\t\tconst match = slot.match(/^(.+?)-\\d+$/);\n\t\treturn match ? match[1] : slot;\n\t}\n\n\t// Use default slot as a fallback\n\treturn \"default\";\n};\n\nconst getSlottedNodes = (node: Node) => {\n\tif (node instanceof HTMLSlotElement) {\n\t\treturn node.assignedNodes({ flatten: true }).filter(item => item instanceof HTMLElement);\n\t}\n\n\treturn [node];\n};\n\nconst getSlottedNodesList = (nodeList: Array<Node>) => {\n\treturn nodeList.reduce((acc, curr) => acc.concat(getSlottedNodes(curr)), [] as Array<Node>);\n};\n\nexport {\n\tgetSlotName,\n\tgetSlottedNodes,\n\tgetSlottedNodesList,\n};\n"]}
@@ -0,0 +1,5 @@
1
+ declare const kebabToCamelCase: (string: string) => string;
2
+ declare const camelToKebabCase: (string: string) => string;
3
+ declare const pascalToKebabCase: (pascalString: string) => string;
4
+ declare const kebabToPascalCase: (src: string) => string;
5
+ export { kebabToCamelCase, camelToKebabCase, pascalToKebabCase, kebabToPascalCase, };
@@ -1,26 +1,37 @@
1
1
  const kebabToCamelMap = new Map();
2
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);
3
+ const kebabToPascalMap = new Map();
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
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);
11
+ const camelToKebabCase = (string) => {
12
+ if (!camelToKebabMap.has(string)) {
13
+ const result = string.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
14
+ camelToKebabMap.set(string, result);
15
+ }
16
+ return camelToKebabMap.get(string);
18
17
  };
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("");
18
+ const pascalToKebabCase = (pascalString) => {
19
+ return camelToKebabCase(pascalString);
24
20
  };
25
-
26
- export { kebabToCamelCase, camelToKebabCase };
21
+ const toCamelCase = (parts) => {
22
+ return parts.map((string, index) => {
23
+ return index === 0 ? string.toLowerCase() : string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
24
+ }).join("");
25
+ };
26
+ const kebabToPascalCase = (src) => {
27
+ const cachedName = kebabToPascalMap.get(src);
28
+ if (cachedName) {
29
+ return cachedName;
30
+ }
31
+ const camelStr = kebabToCamelCase(src);
32
+ const result = camelStr.charAt(0).toUpperCase() + camelStr.slice(1);
33
+ kebabToPascalMap.set(src, result);
34
+ return result;
35
+ };
36
+ export { kebabToCamelCase, camelToKebabCase, pascalToKebabCase, kebabToPascalCase, };
37
+ //# sourceMappingURL=StringHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StringHelper.js","sourceRoot":"","sources":["../../src/util/StringHelper.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;AAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;AAClD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEnD,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACxE,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,YAAoB,EAAE,EAAE;IAClD,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC5C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAClC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5G,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE;IACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpE,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAClC,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,GACjB,CAAC","sourcesContent":["const kebabToCamelMap = new Map<string, string>();\nconst camelToKebabMap = new Map<string, string>();\nconst kebabToPascalMap = new Map<string, string>();\n\nconst kebabToCamelCase = (string: string) => {\n\tif (!kebabToCamelMap.has(string)) {\n\t\tconst result = toCamelCase(string.split(\"-\"));\n\t\tkebabToCamelMap.set(string, result);\n\t}\n\treturn kebabToCamelMap.get(string)!;\n};\n\nconst camelToKebabCase = (string: string) => {\n\tif (!camelToKebabMap.has(string)) {\n\t\tconst result = string.replace(/([a-z])([A-Z])/g, \"$1-$2\").toLowerCase();\n\t\tcamelToKebabMap.set(string, result);\n\t}\n\treturn camelToKebabMap.get(string)!;\n};\n\nconst pascalToKebabCase = (pascalString: string) => {\n\treturn camelToKebabCase(pascalString);\n};\n\nconst toCamelCase = (parts: Array<string>) => {\n\treturn parts.map((string, index) => {\n\t\treturn index === 0 ? string.toLowerCase() : string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();\n\t}).join(\"\");\n};\n\nconst kebabToPascalCase = (src: string) => {\n\tconst cachedName = kebabToPascalMap.get(src);\n\tif (cachedName) {\n\t\treturn cachedName;\n\t}\n\n\tconst camelStr = kebabToCamelCase(src);\n\tconst result = camelStr.charAt(0).toUpperCase() + camelStr.slice(1);\n\tkebabToPascalMap.set(src, result);\n\treturn result;\n};\n\nexport {\n\tkebabToCamelCase,\n\tcamelToKebabCase,\n\tpascalToKebabCase,\n\tkebabToPascalCase,\n};\n"]}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Returns the tabbable elements within the provided HTMLElement.
3
+ *
4
+ * @public
5
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
6
+ * @returns { Array<HTMLElement> } the tabbable elements
7
+ */
8
+ declare const getTabbableElements: (el: HTMLElement) => Array<HTMLElement>;
9
+ /**
10
+ * Returns the last tabbable element within the provided HTMLElement.
11
+ *
12
+ * @public
13
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
14
+ * @returns { HTMLElement | null } the last tabbable element or "null" if not found
15
+ */
16
+ declare const getLastTabbableElement: (el: HTMLElement) => HTMLElement | null;
17
+ export { getTabbableElements, getLastTabbableElement, };
@@ -1,47 +1,50 @@
1
- import isNodeTabbable from "./isNodeTabbable.js";
2
-
3
- const getTabbableElements = node => {
4
- return getTabbables(node.children);
1
+ import isElementTabbable from "./isElementTabbable.js";
2
+ /**
3
+ * Returns the tabbable elements within the provided HTMLElement.
4
+ *
5
+ * @public
6
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
7
+ * @returns { Array<HTMLElement> } the tabbable elements
8
+ */
9
+ const getTabbableElements = (el) => {
10
+ return getTabbables([...el.children]);
5
11
  };
6
-
7
- const getLastTabbableElement = node => {
8
- const tabbables = getTabbables(node.children);
9
- return tabbables.length ? tabbables[tabbables.length - 1] : null;
12
+ /**
13
+ * Returns the last tabbable element within the provided HTMLElement.
14
+ *
15
+ * @public
16
+ * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
17
+ * @returns { HTMLElement | null } the last tabbable element or "null" if not found
18
+ */
19
+ const getLastTabbableElement = (el) => {
20
+ const tabbables = getTabbables([...el.children]);
21
+ return tabbables.length ? tabbables[tabbables.length - 1] : null;
10
22
  };
11
-
12
23
  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) {
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 (isNodeTabbable(currentNode)) {
31
- tabbablesNodes.push(currentNode);
32
- }
33
-
34
- if (currentNode.tagName === "SLOT") {
35
- getTabbables(currentNode.assignedNodes(), tabbablesNodes);
36
- } else {
37
- getTabbables(currentNode.children, tabbablesNodes);
38
- }
39
- });
40
-
41
- return tabbablesNodes;
42
- };
43
-
44
- export {
45
- getTabbableElements,
46
- getLastTabbableElement,
24
+ const tabbableElements = tabbables || [];
25
+ if (!nodes) {
26
+ return tabbableElements;
27
+ }
28
+ nodes.forEach(currentNode => {
29
+ if (currentNode.nodeType === Node.TEXT_NODE || currentNode.nodeType === Node.COMMENT_NODE) {
30
+ return;
31
+ }
32
+ const currentElement = currentNode;
33
+ if (currentElement.hasAttribute("data-sap-no-tab-ref")) {
34
+ return;
35
+ }
36
+ if (isElementTabbable(currentElement)) {
37
+ tabbableElements.push(currentElement);
38
+ }
39
+ if (currentElement.tagName === "SLOT") {
40
+ getTabbables(currentElement.assignedNodes(), tabbableElements);
41
+ }
42
+ else {
43
+ const children = currentElement.shadowRoot ? currentElement.shadowRoot.children : currentElement.children;
44
+ getTabbables([...children], tabbableElements);
45
+ }
46
+ });
47
+ return tabbableElements;
47
48
  };
49
+ export { getTabbableElements, getLastTabbableElement, };
50
+ //# sourceMappingURL=TabbableElements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabbableElements.js","sourceRoot":"","sources":["../../src/util/TabbableElements.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG,CAAC,EAAe,EAAsB,EAAE;IACnE,OAAO,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,sBAAsB,GAAG,CAAC,EAAe,EAAsB,EAAE;IACtE,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAkB,EAAE,SAA8B,EAAsB,EAAE;IAC/F,MAAM,gBAAgB,GAAG,SAAS,IAAI,EAAE,CAAC;IAEzC,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;QAC3B,IAAI,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3F,OAAO;QACR,CAAC;QAED,MAAM,cAAc,GAAG,WAA0B,CAAC;QAClD,IAAI,cAAc,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACxD,OAAO;QACR,CAAC;QAED,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC;YACvC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,cAAc,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YACvC,YAAY,CAAE,cAAkC,CAAC,aAAa,EAAwB,EAAE,gBAAgB,CAAC,CAAC;QAC3G,CAAC;aAAM,CAAC;YACP,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC1G,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAC/C,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,EACN,mBAAmB,EACnB,sBAAsB,GACtB,CAAC","sourcesContent":["import isElementTabbable from \"./isElementTabbable.js\";\n\n/**\n * Returns the tabbable elements within the provided HTMLElement.\n *\n * @public\n * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)\n * @returns { Array<HTMLElement> } the tabbable elements\n */\nconst getTabbableElements = (el: HTMLElement): Array<HTMLElement> => {\n\treturn getTabbables([...el.children]);\n};\n\n/**\n * Returns the last tabbable element within the provided HTMLElement.\n *\n * @public\n * @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)\n * @returns { HTMLElement | null } the last tabbable element or \"null\" if not found\n */\nconst getLastTabbableElement = (el: HTMLElement): HTMLElement | null => {\n\tconst tabbables = getTabbables([...el.children]);\n\treturn tabbables.length ? tabbables[tabbables.length - 1] : null;\n};\n\nconst getTabbables = (nodes: Array<Node>, tabbables?: Array<HTMLElement>): Array<HTMLElement> => {\n\tconst tabbableElements = tabbables || [];\n\n\tif (!nodes) {\n\t\treturn tabbableElements;\n\t}\n\n\tnodes.forEach(currentNode => {\n\t\tif (currentNode.nodeType === Node.TEXT_NODE || currentNode.nodeType === Node.COMMENT_NODE) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst currentElement = currentNode as HTMLElement;\n\t\tif (currentElement.hasAttribute(\"data-sap-no-tab-ref\")) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isElementTabbable(currentElement)) {\n\t\t\ttabbableElements.push(currentElement);\n\t\t}\n\n\t\tif (currentElement.tagName === \"SLOT\") {\n\t\t\tgetTabbables((currentElement as HTMLSlotElement).assignedNodes() as Array<HTMLElement>, tabbableElements);\n\t\t} else {\n\t\t\tconst children = currentElement.shadowRoot ? currentElement.shadowRoot.children : currentElement.children;\n\t\t\tgetTabbables([...children], tabbableElements);\n\t\t}\n\t});\n\n\treturn tabbableElements;\n};\n\nexport {\n\tgetTabbableElements,\n\tgetLastTabbableElement,\n};\n"]}
@@ -0,0 +1,2 @@
1
+ declare const arraysAreEqual: (arr1: Array<any>, arr2: Array<any>) => boolean;
2
+ export default arraysAreEqual;
@@ -1,15 +1,13 @@
1
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;
2
+ if (arr1.length !== arr2.length) {
3
+ return false;
4
+ }
5
+ for (let i = 0; i < arr1.length; i++) {
6
+ if (arr1[i] !== arr2[i]) {
7
+ return false;
8
+ }
9
+ }
10
+ return true;
13
11
  };
14
-
15
12
  export default arraysAreEqual;
13
+ //# sourceMappingURL=arraysAreEqual.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arraysAreEqual.js","sourceRoot":"","sources":["../../src/util/arraysAreEqual.ts"],"names":[],"mappings":"AAAA,MAAM,cAAc,GAAG,CAAC,IAAgB,EAAE,IAAgB,EAAE,EAAE;IAC7D,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC","sourcesContent":["const arraysAreEqual = (arr1: Array<any>, arr2: Array<any>) => {\n\tif (arr1.length !== arr2.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < arr1.length; i++) {\n\t\tif (arr1[i] !== arr2[i]) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn true;\n};\n\nexport default arraysAreEqual;\n"]}