@ui5/webcomponents-base 0.0.0-4b9b0ab7c → 0.0.0-4e88b8243

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 (634) hide show
  1. package/.npsrc.json +3 -0
  2. package/CHANGELOG.md +1672 -0
  3. package/README.md +6 -12
  4. package/cypress/specs/Accessor.cy.ts +79 -0
  5. package/cypress/specs/Boot.cy.ts +19 -0
  6. package/cypress/specs/ConfigurationChange.cy.ts +41 -0
  7. package/cypress/specs/ConfigurationScript.cy.ts +116 -0
  8. package/cypress/specs/ConfigurationURL.cy.ts +182 -0
  9. package/cypress/specs/CustomMount.cy.ts +34 -0
  10. package/cypress/specs/CustomTheme.cy.ts +36 -0
  11. package/cypress/specs/EventProvider.cy.ts +59 -0
  12. package/cypress/specs/SystemDOMElements.cy.ts +8 -0
  13. package/cypress/specs/Theming.cy.ts +74 -0
  14. package/cypress/specs/UI5ElementInvalidation.cy.ts +207 -0
  15. package/cypress/specs/UI5ElementLifecycle.cy.ts +82 -0
  16. package/cypress/specs/UI5ElementListenForChildPropChanges.cy.ts +62 -0
  17. package/cypress/specs/UI5ElementMetadataExt.cy.ts +42 -0
  18. package/cypress/specs/UI5ElementPropertyValidation.cy.ts +16 -0
  19. package/cypress/specs/UI5ElementPropsAndAttrs.cy.ts +113 -0
  20. package/cypress/specs/UI5ElementShadowDOM.cy.ts +30 -0
  21. package/cypress/specs/UI5ElementSlots.cy.ts +116 -0
  22. package/cypress/specs/WithComplexTemplate.cy.ts +32 -0
  23. package/cypress/tsconfig.json +20 -0
  24. package/cypress.config.js +3 -0
  25. package/dist/.tsbuildinfobuild +1 -0
  26. package/dist/AssetRegistry.d.ts +2 -2
  27. package/dist/AssetRegistry.js +2 -2
  28. package/dist/AssetRegistry.js.map +1 -1
  29. package/dist/Boot.d.ts +3 -2
  30. package/dist/Boot.js +22 -12
  31. package/dist/Boot.js.map +1 -1
  32. package/dist/CustomElementsRegistry.js +1 -1
  33. package/dist/CustomElementsRegistry.js.map +1 -1
  34. package/dist/CustomElementsScope.d.ts +4 -4
  35. package/dist/CustomElementsScope.js +2 -2
  36. package/dist/CustomElementsScope.js.map +1 -1
  37. package/dist/CustomElementsScopeUtils.d.ts +8 -1
  38. package/dist/CustomElementsScopeUtils.js +13 -1
  39. package/dist/CustomElementsScopeUtils.js.map +1 -1
  40. package/dist/DOMObserver.js.map +1 -1
  41. package/dist/Device.d.ts +17 -2
  42. package/dist/Device.js +19 -14
  43. package/dist/Device.js.map +1 -1
  44. package/dist/EventProvider.js +1 -1
  45. package/dist/EventProvider.js.map +1 -1
  46. package/dist/FeaturesRegistry.d.ts +16 -1
  47. package/dist/FeaturesRegistry.js +37 -1
  48. package/dist/FeaturesRegistry.js.map +1 -1
  49. package/dist/FontFace.js +6 -1
  50. package/dist/FontFace.js.map +1 -1
  51. package/dist/IgnoreCustomElements.d.ts +25 -0
  52. package/dist/IgnoreCustomElements.js +37 -0
  53. package/dist/IgnoreCustomElements.js.map +1 -0
  54. package/dist/InitialConfiguration.d.ts +15 -3
  55. package/dist/InitialConfiguration.js +41 -9
  56. package/dist/InitialConfiguration.js.map +1 -1
  57. package/dist/Keys.d.ts +8 -1
  58. package/dist/Keys.js +114 -106
  59. package/dist/Keys.js.map +1 -1
  60. package/dist/Location.d.ts +11 -0
  61. package/dist/Location.js +49 -0
  62. package/dist/Location.js.map +1 -0
  63. package/dist/ManagedStyles.d.ts +5 -6
  64. package/dist/ManagedStyles.js +45 -53
  65. package/dist/ManagedStyles.js.map +1 -1
  66. package/dist/MediaRange.d.ts +6 -12
  67. package/dist/MediaRange.js +21 -31
  68. package/dist/MediaRange.js.map +1 -1
  69. package/dist/PropertiesFileFormat.js.map +1 -1
  70. package/dist/Render.js.map +1 -1
  71. package/dist/RenderQueue.js.map +1 -1
  72. package/dist/Runtimes.js +11 -0
  73. package/dist/Runtimes.js.map +1 -1
  74. package/dist/SystemCSSVars.js.map +1 -1
  75. package/dist/Theming.js.map +1 -1
  76. package/dist/UI5Element.d.ts +111 -75
  77. package/dist/UI5Element.js +394 -229
  78. package/dist/UI5Element.js.map +1 -1
  79. package/dist/UI5ElementMetadata.d.ts +41 -27
  80. package/dist/UI5ElementMetadata.js +34 -72
  81. package/dist/UI5ElementMetadata.js.map +1 -1
  82. package/dist/animations/AnimationQueue.js.map +1 -1
  83. package/dist/animations/animate.js.map +1 -1
  84. package/dist/animations/scroll.js.map +1 -1
  85. package/dist/animations/slideDown.js.map +1 -1
  86. package/dist/animations/slideUp.js.map +1 -1
  87. package/dist/asset-registries/Icons.d.ts +21 -12
  88. package/dist/asset-registries/Icons.js +51 -19
  89. package/dist/asset-registries/Icons.js.map +1 -1
  90. package/dist/asset-registries/Illustrations.d.ts +2 -0
  91. package/dist/asset-registries/Illustrations.js +51 -20
  92. package/dist/asset-registries/Illustrations.js.map +1 -1
  93. package/dist/asset-registries/LocaleData.js +1 -1
  94. package/dist/asset-registries/LocaleData.js.map +1 -1
  95. package/dist/asset-registries/Themes.d.ts +5 -7
  96. package/dist/asset-registries/Themes.js +28 -13
  97. package/dist/asset-registries/Themes.js.map +1 -1
  98. package/dist/asset-registries/i18n.d.ts +2 -2
  99. package/dist/asset-registries/i18n.js +12 -5
  100. package/dist/asset-registries/i18n.js.map +1 -1
  101. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.d.ts +1 -2
  102. package/dist/{assets-meta → asset-registries/util}/IconCollectionsAlias.js +1 -2
  103. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  104. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  105. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  106. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  107. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  108. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  109. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  110. package/dist/config/AnimationMode.d.ts +2 -2
  111. package/dist/config/AnimationMode.js +6 -1
  112. package/dist/config/AnimationMode.js.map +1 -1
  113. package/dist/config/CalendarType.d.ts +8 -1
  114. package/dist/config/CalendarType.js +23 -2
  115. package/dist/config/CalendarType.js.map +1 -1
  116. package/dist/config/ConfigurationReset.d.ts +4 -0
  117. package/dist/config/ConfigurationReset.js +11 -0
  118. package/dist/config/ConfigurationReset.js.map +1 -0
  119. package/dist/config/Fonts.d.ts +16 -0
  120. package/dist/config/Fonts.js +30 -0
  121. package/dist/config/Fonts.js.map +1 -0
  122. package/dist/config/FormatSettings.js +4 -0
  123. package/dist/config/FormatSettings.js.map +1 -1
  124. package/dist/config/Icons.d.ts +9 -24
  125. package/dist/config/Icons.js +8 -67
  126. package/dist/config/Icons.js.map +1 -1
  127. package/dist/config/Language.d.ts +11 -2
  128. package/dist/config/Language.js +24 -4
  129. package/dist/config/Language.js.map +1 -1
  130. package/dist/config/NoConflict.js +5 -0
  131. package/dist/config/NoConflict.js.map +1 -1
  132. package/dist/config/Theme.d.ts +16 -5
  133. package/dist/config/Theme.js +39 -9
  134. package/dist/config/Theme.js.map +1 -1
  135. package/dist/config/ThemeRoot.d.ts +27 -0
  136. package/dist/config/ThemeRoot.js +61 -0
  137. package/dist/config/ThemeRoot.js.map +1 -0
  138. package/dist/config/Timezone.d.ts +17 -0
  139. package/dist/config/Timezone.js +34 -0
  140. package/dist/config/Timezone.js.map +1 -0
  141. package/dist/config/Tooltips.d.ts +19 -0
  142. package/dist/config/Tooltips.js +29 -0
  143. package/dist/config/Tooltips.js.map +1 -0
  144. package/dist/connectToComponent.d.ts +9 -0
  145. package/dist/connectToComponent.js +59 -0
  146. package/dist/connectToComponent.js.map +1 -0
  147. package/dist/converters/DOMReference.d.ts +5 -0
  148. package/dist/converters/DOMReference.js +13 -0
  149. package/dist/converters/DOMReference.js.map +1 -0
  150. package/dist/css/FontFace.css +47 -17
  151. package/dist/css/SystemCSSVars.css +0 -8
  152. package/dist/decorators/bound.d.ts +1 -0
  153. package/dist/decorators/bound.js +34 -0
  154. package/dist/decorators/bound.js.map +1 -0
  155. package/dist/decorators/customElement.d.ts +42 -3
  156. package/dist/decorators/customElement.js +26 -9
  157. package/dist/decorators/customElement.js.map +1 -1
  158. package/dist/decorators/event-strict.d.ts +15 -0
  159. package/dist/decorators/event-strict.js +26 -0
  160. package/dist/decorators/event-strict.js.map +1 -0
  161. package/dist/decorators/event.d.ts +8 -2
  162. package/dist/decorators/event.js +3 -0
  163. package/dist/decorators/event.js.map +1 -1
  164. package/dist/decorators/i18n.d.ts +17 -0
  165. package/dist/decorators/i18n.js +26 -0
  166. package/dist/decorators/i18n.js.map +1 -0
  167. package/dist/decorators/property.d.ts +1 -1
  168. package/dist/decorators/property.js +1 -1
  169. package/dist/decorators/property.js.map +1 -1
  170. package/dist/decorators/query.d.ts +25 -0
  171. package/dist/decorators/query.js +32 -0
  172. package/dist/decorators/query.js.map +1 -0
  173. package/dist/decorators/queryAll.d.ts +27 -0
  174. package/dist/decorators/queryAll.js +34 -0
  175. package/dist/decorators/queryAll.js.map +1 -0
  176. package/dist/decorators/slot.d.ts +1 -1
  177. package/dist/decorators/slot.js +2 -2
  178. package/dist/decorators/slot.js.map +1 -1
  179. package/dist/decorators.d.ts +8 -0
  180. package/dist/decorators.js +9 -0
  181. package/dist/decorators.js.map +1 -0
  182. package/dist/delegate/ItemNavigation.d.ts +9 -8
  183. package/dist/delegate/ItemNavigation.js +13 -14
  184. package/dist/delegate/ItemNavigation.js.map +1 -1
  185. package/dist/delegate/ResizeHandler.d.ts +4 -6
  186. package/dist/delegate/ResizeHandler.js +11 -11
  187. package/dist/delegate/ResizeHandler.js.map +1 -1
  188. package/dist/delegate/ScrollEnablement.js +2 -2
  189. package/dist/delegate/ScrollEnablement.js.map +1 -1
  190. package/dist/features/F6Navigation.d.ts +3 -3
  191. package/dist/features/F6Navigation.js +27 -8
  192. package/dist/features/F6Navigation.js.map +1 -1
  193. package/dist/features/InputElementsFormSupport.d.ts +15 -0
  194. package/dist/features/InputElementsFormSupport.js +39 -0
  195. package/dist/features/InputElementsFormSupport.js.map +1 -0
  196. package/dist/features/LegacyDateFormats.js.map +1 -1
  197. package/dist/features/OpenUI5Element.js.map +1 -1
  198. package/dist/features/OpenUI5Enablement.d.ts +3 -3
  199. package/dist/features/OpenUI5Enablement.js.map +1 -1
  200. package/dist/features/OpenUI5Support.d.ts +15 -6
  201. package/dist/features/OpenUI5Support.js +91 -46
  202. package/dist/features/OpenUI5Support.js.map +1 -1
  203. package/dist/features/patchPatcher.d.ts +11 -0
  204. package/dist/features/patchPatcher.js +11 -0
  205. package/dist/features/patchPatcher.js.map +1 -0
  206. package/dist/features/patchPopup.d.ts +15 -0
  207. package/dist/features/patchPopup.js +61 -0
  208. package/dist/features/patchPopup.js.map +1 -0
  209. package/dist/generated/AssetParameters.d.ts +6 -0
  210. package/dist/generated/AssetParameters.js +4 -9
  211. package/dist/generated/AssetParameters.js.map +1 -0
  212. package/dist/generated/VersionInfo.d.ts +10 -0
  213. package/dist/generated/VersionInfo.js +9 -8
  214. package/dist/generated/VersionInfo.js.map +1 -0
  215. package/dist/generated/css/BusyIndicator.css.d.ts +2 -3
  216. package/dist/generated/css/BusyIndicator.css.js +1 -6
  217. package/dist/generated/css/BusyIndicator.css.js.map +1 -1
  218. package/dist/generated/css/FontFace.css.d.ts +2 -3
  219. package/dist/generated/css/FontFace.css.js +1 -6
  220. package/dist/generated/css/FontFace.css.js.map +1 -1
  221. package/dist/generated/css/OverrideFontFace.css.d.ts +2 -3
  222. package/dist/generated/css/OverrideFontFace.css.js +1 -6
  223. package/dist/generated/css/OverrideFontFace.css.js.map +1 -1
  224. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -3
  225. package/dist/generated/css/SystemCSSVars.css.js +1 -6
  226. package/dist/generated/css/SystemCSSVars.css.js.map +1 -1
  227. package/dist/getSharedResource.d.ts +1 -1
  228. package/dist/getSharedResource.js +8 -2
  229. package/dist/getSharedResource.js.map +1 -1
  230. package/dist/global.d.ts +2 -0
  231. package/dist/i18nBundle.d.ts +2 -4
  232. package/dist/i18nBundle.js +3 -5
  233. package/dist/i18nBundle.js.map +1 -1
  234. package/dist/index.d.ts +8 -0
  235. package/dist/jsx-dev-runtime.d.ts +4 -0
  236. package/dist/jsx-dev-runtime.js +43 -0
  237. package/dist/jsx-dev-runtime.js.map +1 -0
  238. package/dist/jsx-runtime.d.ts +50 -0
  239. package/dist/jsx-runtime.js +27 -0
  240. package/dist/jsx-runtime.js.map +1 -0
  241. package/dist/jsx-utils.d.ts +3 -0
  242. package/dist/jsx-utils.js +39 -0
  243. package/dist/jsx-utils.js.map +1 -0
  244. package/dist/locale/Locale.js.map +1 -1
  245. package/dist/locale/RTLAwareRegistry.d.ts +1 -1
  246. package/dist/locale/RTLAwareRegistry.js.map +1 -1
  247. package/dist/locale/applyDirection.d.ts +3 -2
  248. package/dist/locale/applyDirection.js +3 -2
  249. package/dist/locale/applyDirection.js.map +1 -1
  250. package/dist/locale/directionChange.js.map +1 -1
  251. package/dist/locale/getEffectiveDir.d.ts +1 -1
  252. package/dist/locale/getEffectiveDir.js +3 -19
  253. package/dist/locale/getEffectiveDir.js.map +1 -1
  254. package/dist/locale/getLocale.js.map +1 -1
  255. package/dist/locale/languageChange.js.map +1 -1
  256. package/dist/locale/nextFallbackLocale.js.map +1 -1
  257. package/dist/locale/normalizeLocale.js.map +1 -1
  258. package/dist/renderer/JsxRenderer.d.ts +3 -0
  259. package/dist/renderer/JsxRenderer.js +16 -0
  260. package/dist/renderer/JsxRenderer.js.map +1 -0
  261. package/dist/renderer/LitRenderer.d.ts +3 -3
  262. package/dist/renderer/LitRenderer.js +5 -10
  263. package/dist/renderer/LitRenderer.js.map +1 -1
  264. package/dist/renderer/directives/style-map.d.ts +13 -0
  265. package/dist/renderer/directives/style-map.js +59 -59
  266. package/dist/renderer/directives/style-map.js.map +1 -0
  267. package/dist/renderer/executeTemplate.d.ts +3 -4
  268. package/dist/renderer/executeTemplate.js +1 -19
  269. package/dist/renderer/executeTemplate.js.map +1 -1
  270. package/dist/sap/base/Log.js +698 -188
  271. package/dist/sap/base/assert.js +28 -1
  272. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  273. package/dist/sap/base/security/URLListValidator.js +253 -6
  274. package/dist/sap/base/security/encodeCSS.js +34 -8
  275. package/dist/sap/base/security/encodeXML.js +47 -17
  276. package/dist/sap/base/security/sanitizeHTML.js +35 -13
  277. package/dist/sap/base/strings/toHex.js +27 -2
  278. package/dist/sap/base/util/now.js +24 -3
  279. package/dist/sap/base/util/uid.js +27 -0
  280. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +113 -98
  281. package/dist/ssr-dom-shim.d.ts +1 -0
  282. package/dist/ssr-dom-shim.js +12 -0
  283. package/dist/ssr-dom-shim.js.map +1 -0
  284. package/dist/ssr-dom.d.ts +1 -0
  285. package/dist/ssr-dom.js +3 -0
  286. package/dist/ssr-dom.js.map +1 -0
  287. package/dist/theming/CustomStyle.js.map +1 -1
  288. package/dist/theming/ThemeLoaded.js.map +1 -1
  289. package/dist/theming/ThemeRegistered.d.ts +1 -2
  290. package/dist/theming/ThemeRegistered.js +1 -4
  291. package/dist/theming/ThemeRegistered.js.map +1 -1
  292. package/dist/theming/applyTheme.js +9 -9
  293. package/dist/theming/applyTheme.js.map +1 -1
  294. package/dist/theming/getConstructableStyle.d.ts +2 -2
  295. package/dist/theming/getConstructableStyle.js +3 -3
  296. package/dist/theming/getConstructableStyle.js.map +1 -1
  297. package/dist/theming/getEffectiveStyle.d.ts +1 -1
  298. package/dist/theming/getEffectiveStyle.js +5 -12
  299. package/dist/theming/getEffectiveStyle.js.map +1 -1
  300. package/dist/theming/getStylesString.js +2 -4
  301. package/dist/theming/getStylesString.js.map +1 -1
  302. package/dist/theming/getThemeDesignerTheme.js +2 -1
  303. package/dist/theming/getThemeDesignerTheme.js.map +1 -1
  304. package/dist/thirdparty/_merge.js.map +1 -1
  305. package/dist/thirdparty/isPlainObject.js.map +1 -1
  306. package/dist/thirdparty/merge.js.map +1 -1
  307. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  308. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  309. package/dist/thirdparty/preact/jsxRuntime.module.js +2 -0
  310. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  311. package/dist/thirdparty/preact/preact.module.js +2 -0
  312. package/dist/types/AnimationMode.d.ts +0 -8
  313. package/dist/types/AnimationMode.js +0 -8
  314. package/dist/types/AnimationMode.js.map +1 -1
  315. package/dist/types/CalendarType.d.ts +0 -9
  316. package/dist/types/CalendarType.js +0 -9
  317. package/dist/types/CalendarType.js.map +1 -1
  318. package/dist/types/InvisibleMessageMode.d.ts +5 -10
  319. package/dist/types/InvisibleMessageMode.js +4 -11
  320. package/dist/types/InvisibleMessageMode.js.map +1 -1
  321. package/dist/types/ItemNavigationBehavior.d.ts +0 -6
  322. package/dist/types/ItemNavigationBehavior.js +0 -6
  323. package/dist/types/ItemNavigationBehavior.js.map +1 -1
  324. package/dist/types/MovePlacement.d.ts +20 -0
  325. package/dist/types/MovePlacement.js +22 -0
  326. package/dist/types/MovePlacement.js.map +1 -0
  327. package/dist/types/NavigationMode.d.ts +0 -8
  328. package/dist/types/NavigationMode.js +0 -8
  329. package/dist/types/NavigationMode.js.map +1 -1
  330. package/dist/types/Orientation.d.ts +16 -0
  331. package/dist/types/Orientation.js +18 -0
  332. package/dist/types/Orientation.js.map +1 -0
  333. package/dist/types/ValueState.d.ts +3 -17
  334. package/dist/types/ValueState.js +3 -17
  335. package/dist/types/ValueState.js.map +1 -1
  336. package/dist/types.d.ts +37 -14
  337. package/dist/types.js.map +1 -1
  338. package/dist/updateShadowRoot.d.ts +1 -2
  339. package/dist/updateShadowRoot.js +4 -25
  340. package/dist/updateShadowRoot.js.map +1 -1
  341. package/dist/util/{AriaLabelHelper.d.ts → AccessibilityTextsHelper.d.ts} +4 -2
  342. package/dist/util/{AriaLabelHelper.js → AccessibilityTextsHelper.js} +36 -8
  343. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  344. package/dist/util/Caret.js.map +1 -1
  345. package/dist/util/ColorConversion.d.ts +2 -1
  346. package/dist/util/ColorConversion.js +212 -197
  347. package/dist/util/ColorConversion.js.map +1 -1
  348. package/dist/util/FetchHelper.js.map +1 -1
  349. package/dist/util/FocusableElements.js +18 -15
  350. package/dist/util/FocusableElements.js.map +1 -1
  351. package/dist/util/HTMLSanitizer.js.map +1 -1
  352. package/dist/util/InvisibleMessage.js +2 -2
  353. package/dist/util/InvisibleMessage.js.map +1 -1
  354. package/dist/util/PopupUtils.d.ts +1 -3
  355. package/dist/util/PopupUtils.js +1 -15
  356. package/dist/util/PopupUtils.js.map +1 -1
  357. package/dist/util/SelectionAssistant.d.ts +12 -0
  358. package/dist/util/SelectionAssistant.js +79 -0
  359. package/dist/util/SelectionAssistant.js.map +1 -0
  360. package/dist/util/SlotsHelper.js.map +1 -1
  361. package/dist/util/StringHelper.d.ts +3 -1
  362. package/dist/util/StringHelper.js +15 -1
  363. package/dist/util/StringHelper.js.map +1 -1
  364. package/dist/util/TabbableElements.js +3 -10
  365. package/dist/util/TabbableElements.js.map +1 -1
  366. package/dist/util/arraysAreEqual.js.map +1 -1
  367. package/dist/util/clamp.js +2 -1
  368. package/dist/util/clamp.js.map +1 -1
  369. package/dist/util/createLinkInHead.d.ts +1 -1
  370. package/dist/util/createLinkInHead.js +1 -1
  371. package/dist/util/createLinkInHead.js.map +1 -1
  372. package/dist/util/debounce.js.map +1 -1
  373. package/dist/util/detectNavigatorLanguage.d.ts +2 -2
  374. package/dist/util/detectNavigatorLanguage.js +6 -1
  375. package/dist/util/detectNavigatorLanguage.js.map +1 -1
  376. package/dist/util/dragAndDrop/DragRegistry.d.ts +33 -0
  377. package/dist/util/dragAndDrop/DragRegistry.js +66 -0
  378. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  379. package/dist/util/dragAndDrop/findClosestPosition.d.ts +11 -0
  380. package/dist/util/dragAndDrop/findClosestPosition.js +102 -0
  381. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  382. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  383. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  384. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  385. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  386. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  387. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  388. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  389. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  390. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  391. package/dist/util/escapeRegex.js.map +1 -1
  392. package/dist/util/fixSafariActiveState.d.ts +2 -0
  393. package/dist/util/fixSafariActiveState.js +11 -0
  394. package/dist/util/fixSafariActiveState.js.map +1 -0
  395. package/dist/util/formatMessage.js.map +1 -1
  396. package/dist/util/generateHighlightedMarkup.js.map +1 -1
  397. package/dist/util/getActiveElement.js.map +1 -1
  398. package/dist/util/getClassCopy.d.ts +142 -102
  399. package/dist/util/getClassCopy.js.map +1 -1
  400. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -2
  401. package/dist/util/getDesigntimePropertyAsArray.js +2 -1
  402. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -1
  403. package/dist/util/getEffectiveContentDensity.js.map +1 -1
  404. package/dist/util/getEffectiveScrollbarStyle.d.ts +1 -1
  405. package/dist/util/getEffectiveScrollbarStyle.js +31 -1
  406. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -1
  407. package/dist/util/getFastNavigationGroups.js.map +1 -1
  408. package/dist/util/getFileExtension.js.map +1 -1
  409. package/dist/util/getNormalizedTarget.js.map +1 -1
  410. package/dist/util/getSingletonElementInstance.d.ts +10 -1
  411. package/dist/util/getSingletonElementInstance.js +11 -2
  412. package/dist/util/getSingletonElementInstance.js.map +1 -1
  413. package/dist/util/hash2str.d.ts +1 -0
  414. package/dist/util/hash2str.js +14 -0
  415. package/dist/util/hash2str.js.map +1 -0
  416. package/dist/util/isElementClickable.js.map +1 -1
  417. package/dist/util/isElementHidden.js.map +1 -1
  418. package/dist/util/isElementInView.js.map +1 -1
  419. package/dist/util/isElementTabbable.js +2 -2
  420. package/dist/util/isElementTabbable.js.map +1 -1
  421. package/dist/util/isValidPropertyName.js.map +1 -1
  422. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  423. package/dist/util/toLowercaseEnumValue.js +4 -0
  424. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  425. package/dist/util/whenDOMReady.js.map +1 -1
  426. package/dist/util/willShowContent.js.map +1 -1
  427. package/dist/validateThemeRoot.js +15 -13
  428. package/dist/validateThemeRoot.js.map +1 -1
  429. package/index.js +205 -1
  430. package/package-scripts.cjs +74 -0
  431. package/package.json +31 -9
  432. package/src/css/FontFace.css +47 -17
  433. package/src/css/SystemCSSVars.css +0 -8
  434. package/src/thirdparty/preact/jsxRuntime.module.js +2 -0
  435. package/src/thirdparty/preact/preact.module.js +2 -0
  436. package/src/thirdparty/preact/version.txt +1 -0
  437. package/tsconfig.json +19 -12
  438. package/.eslintignore +0 -16
  439. package/bundle.esm.js +0 -62
  440. package/config/wdio.conf.js +0 -1
  441. package/dist/CSP.d.ts +0 -30
  442. package/dist/CSP.js +0 -51
  443. package/dist/CSP.js.map +0 -1
  444. package/dist/MarkedEvents.d.ts +0 -9
  445. package/dist/MarkedEvents.js +0 -15
  446. package/dist/MarkedEvents.js.map +0 -1
  447. package/dist/StaticArea.d.ts +0 -0
  448. package/dist/StaticArea.js +0 -6
  449. package/dist/StaticArea.js.map +0 -1
  450. package/dist/StaticAreaItem.d.ts +0 -36
  451. package/dist/StaticAreaItem.js +0 -99
  452. package/dist/StaticAreaItem.js.map +0 -1
  453. package/dist/api.json +0 -1
  454. package/dist/assets/Boot.6335ce08.css +0 -1
  455. package/dist/assets/Boot.e74b2a49.js +0 -9
  456. package/dist/assets/bundle.esm.abaf0306.js +0 -52
  457. package/dist/assets-meta/IconCollectionsAlias.js.map +0 -1
  458. package/dist/config/RTL.d.ts +0 -7
  459. package/dist/config/RTL.js +0 -37
  460. package/dist/config/RTL.js.map +0 -1
  461. package/dist/config/ThemeRoots.d.ts +0 -4
  462. package/dist/config/ThemeRoots.js +0 -28
  463. package/dist/config/ThemeRoots.js.map +0 -1
  464. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +0 -11
  465. package/dist/theming/getEffectiveLinksHrefs.d.ts +0 -3
  466. package/dist/theming/getEffectiveLinksHrefs.js +0 -17
  467. package/dist/theming/getEffectiveLinksHrefs.js.map +0 -1
  468. package/dist/theming/preloadLinks.d.ts +0 -3
  469. package/dist/theming/preloadLinks.js +0 -19
  470. package/dist/theming/preloadLinks.js.map +0 -1
  471. package/dist/types/CSSColor.d.ts +0 -15
  472. package/dist/types/CSSColor.js +0 -18
  473. package/dist/types/CSSColor.js.map +0 -1
  474. package/dist/types/DOMReference.d.ts +0 -17
  475. package/dist/types/DOMReference.js +0 -25
  476. package/dist/types/DOMReference.js.map +0 -1
  477. package/dist/types/DataType.d.ts +0 -25
  478. package/dist/types/DataType.js +0 -44
  479. package/dist/types/DataType.js.map +0 -1
  480. package/dist/types/Float.d.ts +0 -17
  481. package/dist/types/Float.js +0 -21
  482. package/dist/types/Float.js.map +0 -1
  483. package/dist/types/Integer.d.ts +0 -17
  484. package/dist/types/Integer.js +0 -21
  485. package/dist/types/Integer.js.map +0 -1
  486. package/dist/util/AriaLabelHelper.js.map +0 -1
  487. package/dist/util/createStyleInHead.d.ts +0 -8
  488. package/dist/util/createStyleInHead.js +0 -18
  489. package/dist/util/createStyleInHead.js.map +0 -1
  490. package/lib/generate-asset-parameters/index.js +0 -25
  491. package/lib/generate-styles/index.js +0 -31
  492. package/lib/generate-version-info/index.js +0 -32
  493. package/package-scripts.js +0 -71
  494. package/src/AssetRegistry.ts +0 -11
  495. package/src/Boot.ts +0 -85
  496. package/src/CSP.ts +0 -66
  497. package/src/CustomElementsRegistry.ts +0 -98
  498. package/src/CustomElementsScope.ts +0 -33
  499. package/src/CustomElementsScopeUtils.ts +0 -115
  500. package/src/DOMObserver.ts +0 -28
  501. package/src/Device.ts +0 -203
  502. package/src/EventProvider.ts +0 -87
  503. package/src/FeaturesRegistry.ts +0 -14
  504. package/src/FontFace.ts +0 -31
  505. package/src/InitialConfiguration.ts +0 -207
  506. package/src/Keys.ts +0 -295
  507. package/src/ManagedStyles.ts +0 -92
  508. package/src/MarkedEvents.ts +0 -20
  509. package/src/MediaRange.ts +0 -110
  510. package/src/PropertiesFileFormat.ts +0 -95
  511. package/src/Render.ts +0 -180
  512. package/src/RenderQueue.ts +0 -71
  513. package/src/Runtimes.ts +0 -114
  514. package/src/StaticArea.ts +0 -3
  515. package/src/StaticAreaItem.ts +0 -113
  516. package/src/SystemCSSVars.ts +0 -10
  517. package/src/Theming.ts +0 -4
  518. package/src/UI5Element.ts +0 -1159
  519. package/src/UI5ElementMetadata.ts +0 -389
  520. package/src/animations/AnimationQueue.ts +0 -43
  521. package/src/animations/animate.ts +0 -64
  522. package/src/animations/scroll.ts +0 -21
  523. package/src/animations/slideDown.ts +0 -72
  524. package/src/animations/slideUp.ts +0 -67
  525. package/src/asset-registries/Icons.ts +0 -161
  526. package/src/asset-registries/Illustrations.ts +0 -75
  527. package/src/asset-registries/LocaleData.ts +0 -172
  528. package/src/asset-registries/Themes.ts +0 -74
  529. package/src/asset-registries/i18n.ts +0 -118
  530. package/src/assets-meta/IconCollectionsAlias.ts +0 -41
  531. package/src/config/AnimationMode.ts +0 -33
  532. package/src/config/CalendarType.ts +0 -23
  533. package/src/config/FormatSettings.ts +0 -35
  534. package/src/config/Icons.ts +0 -126
  535. package/src/config/Language.ts +0 -72
  536. package/src/config/NoConflict.ts +0 -67
  537. package/src/config/RTL.ts +0 -45
  538. package/src/config/Theme.ts +0 -64
  539. package/src/config/ThemeRoots.ts +0 -41
  540. package/src/decorators/customElement.ts +0 -57
  541. package/src/decorators/event.ts +0 -28
  542. package/src/decorators/property.ts +0 -30
  543. package/src/decorators/slot.ts +0 -49
  544. package/src/delegate/ItemNavigation.ts +0 -393
  545. package/src/delegate/ResizeHandler.ts +0 -100
  546. package/src/delegate/ScrollEnablement.ts +0 -224
  547. package/src/features/F6Navigation.ts +0 -195
  548. package/src/features/LegacyDateFormats.ts +0 -40
  549. package/src/features/OpenUI5Element.ts +0 -11
  550. package/src/features/OpenUI5Enablement.ts +0 -117
  551. package/src/features/OpenUI5Support.ts +0 -153
  552. package/src/generated/css/BusyIndicator.css.ts +0 -9
  553. package/src/generated/css/FontFace.css.ts +0 -9
  554. package/src/generated/css/OverrideFontFace.css.ts +0 -9
  555. package/src/generated/css/SystemCSSVars.css.ts +0 -9
  556. package/src/getSharedResource.ts +0 -39
  557. package/src/global.d.ts +0 -38
  558. package/src/i18nBundle.ts +0 -108
  559. package/src/locale/Locale.ts +0 -101
  560. package/src/locale/RTLAwareRegistry.ts +0 -16
  561. package/src/locale/applyDirection.ts +0 -18
  562. package/src/locale/directionChange.ts +0 -34
  563. package/src/locale/getEffectiveDir.ts +0 -28
  564. package/src/locale/getLocale.ts +0 -46
  565. package/src/locale/languageChange.ts +0 -24
  566. package/src/locale/nextFallbackLocale.ts +0 -28
  567. package/src/locale/normalizeLocale.ts +0 -56
  568. package/src/renderer/LitRenderer.ts +0 -60
  569. package/src/renderer/directives/style-map.js +0 -72
  570. package/src/renderer/executeTemplate.ts +0 -40
  571. package/src/theming/CustomStyle.ts +0 -64
  572. package/src/theming/ThemeLoaded.ts +0 -24
  573. package/src/theming/ThemeRegistered.ts +0 -24
  574. package/src/theming/applyTheme.ts +0 -92
  575. package/src/theming/getConstructableStyle.ts +0 -31
  576. package/src/theming/getEffectiveLinksHrefs.ts +0 -26
  577. package/src/theming/getEffectiveStyle.ts +0 -41
  578. package/src/theming/getStylesString.ts +0 -15
  579. package/src/theming/getThemeDesignerTheme.ts +0 -101
  580. package/src/theming/preloadLinks.ts +0 -24
  581. package/src/thirdparty/_merge.ts +0 -32
  582. package/src/thirdparty/isPlainObject.ts +0 -18
  583. package/src/thirdparty/merge.ts +0 -5
  584. package/src/types/AnimationMode.ts +0 -33
  585. package/src/types/CSSColor.ts +0 -19
  586. package/src/types/CalendarType.ts +0 -38
  587. package/src/types/DOMReference.ts +0 -28
  588. package/src/types/DataType.ts +0 -51
  589. package/src/types/Float.ts +0 -24
  590. package/src/types/Integer.ts +0 -24
  591. package/src/types/InvisibleMessageMode.ts +0 -27
  592. package/src/types/ItemNavigationBehavior.ts +0 -26
  593. package/src/types/NavigationMode.ts +0 -33
  594. package/src/types/ValueState.ts +0 -47
  595. package/src/types.ts +0 -30
  596. package/src/updateShadowRoot.ts +0 -42
  597. package/src/util/AriaLabelHelper.ts +0 -218
  598. package/src/util/Caret.ts +0 -28
  599. package/src/util/ColorConversion.ts +0 -399
  600. package/src/util/FetchHelper.ts +0 -31
  601. package/src/util/FocusableElements.ts +0 -92
  602. package/src/util/HTMLSanitizer.ts +0 -9
  603. package/src/util/InvisibleMessage.ts +0 -69
  604. package/src/util/PopupUtils.ts +0 -112
  605. package/src/util/SlotsHelper.ts +0 -39
  606. package/src/util/StringHelper.ts +0 -26
  607. package/src/util/TabbableElements.ts +0 -70
  608. package/src/util/arraysAreEqual.ts +0 -15
  609. package/src/util/clamp.ts +0 -12
  610. package/src/util/createLinkInHead.ts +0 -25
  611. package/src/util/createStyleInHead.ts +0 -20
  612. package/src/util/debounce.ts +0 -18
  613. package/src/util/detectNavigatorLanguage.ts +0 -13
  614. package/src/util/escapeRegex.ts +0 -11
  615. package/src/util/formatMessage.ts +0 -24
  616. package/src/util/generateHighlightedMarkup.ts +0 -43
  617. package/src/util/getActiveElement.ts +0 -11
  618. package/src/util/getClassCopy.ts +0 -12
  619. package/src/util/getDesigntimePropertyAsArray.ts +0 -4
  620. package/src/util/getEffectiveContentDensity.ts +0 -5
  621. package/src/util/getEffectiveScrollbarStyle.ts +0 -5
  622. package/src/util/getFastNavigationGroups.ts +0 -63
  623. package/src/util/getFileExtension.ts +0 -21
  624. package/src/util/getNormalizedTarget.ts +0 -16
  625. package/src/util/getSingletonElementInstance.ts +0 -13
  626. package/src/util/isElementClickable.ts +0 -19
  627. package/src/util/isElementHidden.ts +0 -9
  628. package/src/util/isElementInView.ts +0 -15
  629. package/src/util/isElementTabbable.ts +0 -37
  630. package/src/util/isValidPropertyName.ts +0 -29
  631. package/src/util/whenDOMReady.ts +0 -13
  632. package/src/util/willShowContent.ts +0 -7
  633. package/src/validateThemeRoot.ts +0 -58
  634. package/used-modules.txt +0 -10
@@ -1,27 +1,20 @@
1
1
  /**
2
2
  * Enumeration for different mode behaviors of the InvisibleMessage.
3
3
  *
4
- * @readonly
5
- * @enum {string}
6
4
  * @public
7
- * @author SAP SE
8
- * @alias sap.ui.webc.base.types.InvisibleMessageMode
9
5
  */
10
- var InvisibleMessageMode;
11
- (function (InvisibleMessageMode) {
6
+ const InvisibleMessageMode = {
12
7
  /**
13
8
  * Indicates that updates to the region should be presented at the next graceful opportunity,
14
9
  * such as at the end of reading the current sentence, or when the user pauses typing.
15
10
  * @public
16
- * @type {Polite}
17
11
  */
18
- InvisibleMessageMode["Polite"] = "Polite";
12
+ Polite: "Polite",
19
13
  /**
20
14
  * Indicates that updates to the region have the highest priority and should be presented to the user immediately.
21
15
  * @public
22
- * @type {Assertive}
23
16
  */
24
- InvisibleMessageMode["Assertive"] = "Assertive";
25
- })(InvisibleMessageMode || (InvisibleMessageMode = {}));
17
+ Assertive: "Assertive",
18
+ };
26
19
  export default InvisibleMessageMode;
27
20
  //# sourceMappingURL=InvisibleMessageMode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InvisibleMessageMode.js","sourceRoot":"","sources":["../../src/types/InvisibleMessageMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,IAAK,oBAeJ;AAfD,WAAK,oBAAoB;IACxB;;;;;OAKM;IACN,yCAAiB,CAAA;IAEjB;;;;OAIM;IACN,+CAAuB,CAAA;AACxB,CAAC,EAfI,oBAAoB,KAApB,oBAAoB,QAexB;AAED,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"InvisibleMessageMode.js","sourceRoot":"","sources":["../../src/types/InvisibleMessageMode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,oBAAoB,GAAG;IAC5B;;;;OAIM;IACN,MAAM,EAAE,QAAQ;IAEhB;;;OAGM;IACN,SAAS,EAAE,WAAW;CACb,CAAC;AAIX,eAAe,oBAAoB,CAAC","sourcesContent":["/**\n * Enumeration for different mode behaviors of the InvisibleMessage.\n *\n * @public\n */\nconst InvisibleMessageMode = {\n\t/**\n * Indicates that updates to the region should be presented at the next graceful opportunity,\n * such as at the end of reading the current sentence, or when the user pauses typing.\n\t * @public\n */\n\tPolite: \"Polite\",\n\n\t/**\n * Indicates that updates to the region have the highest priority and should be presented to the user immediately.\n\t * @public\n */\n\tAssertive: \"Assertive\",\n} as const;\n\ntype InvisibleMessageMode = typeof InvisibleMessageMode[keyof typeof InvisibleMessageMode];\n\nexport default InvisibleMessageMode;\n"]}
@@ -1,23 +1,17 @@
1
1
  /**
2
2
  * Different behavior for ItemNavigation.
3
3
  *
4
- * @readonly
5
- * @enum {string}
6
4
  * @public
7
- * @author SAP SE
8
- * @alias sap.ui.webc.base.types.ItemNavigationBehavior
9
5
  */
10
6
  declare enum ItemNavigationBehavior {
11
7
  /**
12
8
  * Static behavior: navigations stops at the first or last item.
13
9
  * @public
14
- * @type {Static}
15
10
  */
16
11
  Static = "Static",
17
12
  /**
18
13
  * Cycling behavior: navigating past the last item continues with the first and vice versa.
19
14
  * @public
20
- * @type {Cyclic}
21
15
  */
22
16
  Cyclic = "Cyclic"
23
17
  }
@@ -1,24 +1,18 @@
1
1
  /**
2
2
  * Different behavior for ItemNavigation.
3
3
  *
4
- * @readonly
5
- * @enum {string}
6
4
  * @public
7
- * @author SAP SE
8
- * @alias sap.ui.webc.base.types.ItemNavigationBehavior
9
5
  */
10
6
  var ItemNavigationBehavior;
11
7
  (function (ItemNavigationBehavior) {
12
8
  /**
13
9
  * Static behavior: navigations stops at the first or last item.
14
10
  * @public
15
- * @type {Static}
16
11
  */
17
12
  ItemNavigationBehavior["Static"] = "Static";
18
13
  /**
19
14
  * Cycling behavior: navigating past the last item continues with the first and vice versa.
20
15
  * @public
21
- * @type {Cyclic}
22
16
  */
23
17
  ItemNavigationBehavior["Cyclic"] = "Cyclic";
24
18
  })(ItemNavigationBehavior || (ItemNavigationBehavior = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"ItemNavigationBehavior.js","sourceRoot":"","sources":["../../src/types/ItemNavigationBehavior.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,IAAK,sBAcJ;AAdD,WAAK,sBAAsB;IAC1B;;;;OAII;IACJ,2CAAiB,CAAA;IAEjB;;;;OAII;IACJ,2CAAiB,CAAA;AAClB,CAAC,EAdI,sBAAsB,KAAtB,sBAAsB,QAc1B;AAED,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"ItemNavigationBehavior.js","sourceRoot":"","sources":["../../src/types/ItemNavigationBehavior.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,IAAK,sBAYJ;AAZD,WAAK,sBAAsB;IAC1B;;;OAGI;IACJ,2CAAiB,CAAA;IAEjB;;;OAGI;IACJ,2CAAiB,CAAA;AAClB,CAAC,EAZI,sBAAsB,KAAtB,sBAAsB,QAY1B;AAED,eAAe,sBAAsB,CAAC","sourcesContent":["/**\n * Different behavior for ItemNavigation.\n *\n * @public\n */\nenum ItemNavigationBehavior {\n\t/**\n\t * Static behavior: navigations stops at the first or last item.\n\t * @public\n \t */\n\tStatic = \"Static\",\n\n\t/**\n\t * Cycling behavior: navigating past the last item continues with the first and vice versa.\n\t * @public\n \t */\n\tCyclic = \"Cyclic\",\n}\n\nexport default ItemNavigationBehavior;\n"]}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Placements of a moved element relative to a target element.
3
+ *
4
+ * @public
5
+ */
6
+ declare enum MovePlacement {
7
+ /**
8
+ * @public
9
+ */
10
+ On = "On",
11
+ /**
12
+ * @public
13
+ */
14
+ Before = "Before",
15
+ /**
16
+ * @public
17
+ */
18
+ After = "After"
19
+ }
20
+ export default MovePlacement;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Placements of a moved element relative to a target element.
3
+ *
4
+ * @public
5
+ */
6
+ var MovePlacement;
7
+ (function (MovePlacement) {
8
+ /**
9
+ * @public
10
+ */
11
+ MovePlacement["On"] = "On";
12
+ /**
13
+ * @public
14
+ */
15
+ MovePlacement["Before"] = "Before";
16
+ /**
17
+ * @public
18
+ */
19
+ MovePlacement["After"] = "After";
20
+ })(MovePlacement || (MovePlacement = {}));
21
+ export default MovePlacement;
22
+ //# sourceMappingURL=MovePlacement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MovePlacement.js","sourceRoot":"","sources":["../../src/types/MovePlacement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,IAAK,aAeJ;AAfD,WAAK,aAAa;IACjB;;OAEG;IACH,0BAAS,CAAA;IAET;;OAEG;IACH,kCAAiB,CAAA;IAEjB;;OAEG;IACH,gCAAe,CAAA;AAChB,CAAC,EAfI,aAAa,KAAb,aAAa,QAejB;AAED,eAAe,aAAa,CAAC","sourcesContent":["/**\n * Placements of a moved element relative to a target element.\n *\n * @public\n */\nenum MovePlacement {\n\t/**\n\t * @public\n\t */\n\tOn = \"On\",\n\n\t/**\n\t * @public\n\t */\n\tBefore = \"Before\",\n\n\t/**\n\t * @public\n\t */\n\tAfter = \"After\",\n}\n\nexport default MovePlacement;\n"]}
@@ -1,31 +1,23 @@
1
1
  /**
2
2
  * Different navigation modes for ItemNavigation.
3
3
  *
4
- * @readonly
5
- * @enum {string}
6
4
  * @public
7
- * @author SAP SE
8
- * @alias sap.ui.webc.base.types.NavigationMode
9
5
  */
10
6
  declare enum NavigationMode {
11
7
  /**
12
8
  * @public
13
- * @type {Auto}
14
9
  */
15
10
  Auto = "Auto",
16
11
  /**
17
12
  * @public
18
- * @type {Vertical}
19
13
  */
20
14
  Vertical = "Vertical",
21
15
  /**
22
16
  * @public
23
- * @type {Horizontal}
24
17
  */
25
18
  Horizontal = "Horizontal",
26
19
  /**
27
20
  * @public
28
- * @type {Paging}
29
21
  */
30
22
  Paging = "Paging"
31
23
  }
@@ -1,32 +1,24 @@
1
1
  /**
2
2
  * Different navigation modes for ItemNavigation.
3
3
  *
4
- * @readonly
5
- * @enum {string}
6
4
  * @public
7
- * @author SAP SE
8
- * @alias sap.ui.webc.base.types.NavigationMode
9
5
  */
10
6
  var NavigationMode;
11
7
  (function (NavigationMode) {
12
8
  /**
13
9
  * @public
14
- * @type {Auto}
15
10
  */
16
11
  NavigationMode["Auto"] = "Auto";
17
12
  /**
18
13
  * @public
19
- * @type {Vertical}
20
14
  */
21
15
  NavigationMode["Vertical"] = "Vertical";
22
16
  /**
23
17
  * @public
24
- * @type {Horizontal}
25
18
  */
26
19
  NavigationMode["Horizontal"] = "Horizontal";
27
20
  /**
28
21
  * @public
29
- * @type {Paging}
30
22
  */
31
23
  NavigationMode["Paging"] = "Paging";
32
24
  })(NavigationMode || (NavigationMode = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationMode.js","sourceRoot":"","sources":["../../src/types/NavigationMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,IAAK,cAqBJ;AArBD,WAAK,cAAc;IAClB;;;OAGG;IACH,+BAAa,CAAA;IACb;;;OAGG;IACH,uCAAqB,CAAA;IACrB;;;OAGG;IACH,2CAAyB,CAAA;IACzB;;;OAGG;IACH,mCAAiB,CAAA;AAClB,CAAC,EArBI,cAAc,KAAd,cAAc,QAqBlB;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"NavigationMode.js","sourceRoot":"","sources":["../../src/types/NavigationMode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,IAAK,cAiBJ;AAjBD,WAAK,cAAc;IAClB;;OAEG;IACH,+BAAa,CAAA;IACb;;OAEG;IACH,uCAAqB,CAAA;IACrB;;OAEG;IACH,2CAAyB,CAAA;IACzB;;OAEG;IACH,mCAAiB,CAAA;AAClB,CAAC,EAjBI,cAAc,KAAd,cAAc,QAiBlB;AAED,eAAe,cAAc,CAAC","sourcesContent":["/**\n * Different navigation modes for ItemNavigation.\n *\n * @public\n */\nenum NavigationMode {\n\t/**\n\t * @public\n\t */\n\tAuto = \"Auto\",\n\t/**\n\t * @public\n\t */\n\tVertical = \"Vertical\",\n\t/**\n\t * @public\n\t */\n\tHorizontal = \"Horizontal\",\n\t/**\n\t * @public\n\t */\n\tPaging = \"Paging\",\n}\n\nexport default NavigationMode;\n"]}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Determines the orientation of an operation.
3
+ *
4
+ * @private
5
+ */
6
+ declare enum Orientation {
7
+ /**
8
+ * @private
9
+ */
10
+ Vertical = "Vertical",
11
+ /**
12
+ * @private
13
+ */
14
+ Horizontal = "Horizontal"
15
+ }
16
+ export default Orientation;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Determines the orientation of an operation.
3
+ *
4
+ * @private
5
+ */
6
+ var Orientation;
7
+ (function (Orientation) {
8
+ /**
9
+ * @private
10
+ */
11
+ Orientation["Vertical"] = "Vertical";
12
+ /**
13
+ * @private
14
+ */
15
+ Orientation["Horizontal"] = "Horizontal";
16
+ })(Orientation || (Orientation = {}));
17
+ export default Orientation;
18
+ //# sourceMappingURL=Orientation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Orientation.js","sourceRoot":"","sources":["../../src/types/Orientation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,IAAK,WAUJ;AAVD,WAAK,WAAW;IACf;;OAEG;IACH,oCAAqB,CAAA;IAErB;;OAEG;IACH,wCAAyB,CAAA;AAC1B,CAAC,EAVI,WAAW,KAAX,WAAW,QAUf;AAED,eAAe,WAAW,CAAC","sourcesContent":["/**\n * Determines the orientation of an operation.\n *\n * @private\n */\nenum Orientation {\n\t/**\n\t * @private\n\t */\n\tVertical = \"Vertical\",\n\n\t/**\n\t * @private\n\t */\n\tHorizontal = \"Horizontal\",\n}\n\nexport default Orientation;\n"]}
@@ -1,41 +1,27 @@
1
1
  /**
2
2
  * Different types of ValueStates.
3
3
  *
4
- * @readonly
5
- * @enum {string}
6
4
  * @public
7
- * @author SAP SE
8
- * @alias sap.ui.webc.base.types.ValueState
9
5
  */
10
6
  declare enum ValueState {
11
7
  /**
12
- *
13
8
  * @public
14
- * @type {None}
15
9
  */
16
10
  None = "None",
17
11
  /**
18
- *
19
12
  * @public
20
- * @type {Success}
21
13
  */
22
- Success = "Success",
14
+ Positive = "Positive",
23
15
  /**
24
- *
25
16
  * @public
26
- * @type {Warning}
27
17
  */
28
- Warning = "Warning",
18
+ Critical = "Critical",
29
19
  /**
30
- *
31
20
  * @public
32
- * @type {Error}
33
21
  */
34
- Error = "Error",
22
+ Negative = "Negative",
35
23
  /**
36
- *
37
24
  * @public
38
- * @type {Information}
39
25
  */
40
26
  Information = "Information"
41
27
  }
@@ -1,42 +1,28 @@
1
1
  /**
2
2
  * Different types of ValueStates.
3
3
  *
4
- * @readonly
5
- * @enum {string}
6
4
  * @public
7
- * @author SAP SE
8
- * @alias sap.ui.webc.base.types.ValueState
9
5
  */
10
6
  var ValueState;
11
7
  (function (ValueState) {
12
8
  /**
13
- *
14
9
  * @public
15
- * @type {None}
16
10
  */
17
11
  ValueState["None"] = "None";
18
12
  /**
19
- *
20
13
  * @public
21
- * @type {Success}
22
14
  */
23
- ValueState["Success"] = "Success";
15
+ ValueState["Positive"] = "Positive";
24
16
  /**
25
- *
26
17
  * @public
27
- * @type {Warning}
28
18
  */
29
- ValueState["Warning"] = "Warning";
19
+ ValueState["Critical"] = "Critical";
30
20
  /**
31
- *
32
21
  * @public
33
- * @type {Error}
34
22
  */
35
- ValueState["Error"] = "Error";
23
+ ValueState["Negative"] = "Negative";
36
24
  /**
37
- *
38
25
  * @public
39
- * @type {Information}
40
26
  */
41
27
  ValueState["Information"] = "Information";
42
28
  })(ValueState || (ValueState = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"ValueState.js","sourceRoot":"","sources":["../../src/types/ValueState.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,IAAK,UAmCJ;AAnCD,WAAK,UAAU;IACd;;;;OAIG;IACH,2BAAa,CAAA;IAEb;;;;OAIG;IACH,iCAAmB,CAAA;IAEnB;;;;OAIG;IACH,iCAAmB,CAAA;IAEnB;;;;OAIG;IACH,6BAAe,CAAA;IAEf;;;;OAIG;IACH,yCAA2B,CAAA;AAC5B,CAAC,EAnCI,UAAU,KAAV,UAAU,QAmCd;AAED,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ValueState.js","sourceRoot":"","sources":["../../src/types/ValueState.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,IAAK,UAyBJ;AAzBD,WAAK,UAAU;IACd;;OAEG;IACH,2BAAa,CAAA;IAEb;;OAEG;IACH,mCAAqB,CAAA;IAErB;;OAEG;IACH,mCAAqB,CAAA;IAErB;;OAEG;IACH,mCAAqB,CAAA;IAErB;;OAEG;IACH,yCAA2B,CAAA;AAC5B,CAAC,EAzBI,UAAU,KAAV,UAAU,QAyBd;AAED,eAAe,UAAU,CAAC","sourcesContent":["/**\n * Different types of ValueStates.\n *\n * @public\n */\nenum ValueState {\n\t/**\n\t * @public\n\t */\n\tNone = \"None\",\n\n\t/**\n\t * @public\n\t */\n\tPositive = \"Positive\",\n\n\t/**\n\t * @public\n\t */\n\tCritical = \"Critical\",\n\n\t/**\n\t * @public\n\t */\n\tNegative = \"Negative\",\n\n\t/**\n\t * @public\n\t */\n\tInformation = \"Information\",\n}\n\nexport default ValueState;\n"]}
package/dist/types.d.ts CHANGED
@@ -1,18 +1,41 @@
1
- type PromiseResolve = (value: void | PromiseLike<void>) => void;
2
- type Timeout = ReturnType<typeof setTimeout>;
3
- type Interval = ReturnType<typeof setInterval>;
4
- type StyleDataCSP = {
5
- content: string;
6
- packageName: string;
7
- fileName: string;
8
- };
9
- type StyleData = StyleDataCSP | string;
10
- type ComponentStylesData = Array<ComponentStylesData> | Array<StyleData> | StyleData;
11
- type ClassMapValue = Record<string, boolean>;
12
- type ClassMap = {
1
+ import type { JSX } from "./jsx-runtime.d.ts";
2
+ export type LowercaseString<T> = T extends string ? Lowercase<T> : never;
3
+ export type PromiseResolve = (value: void | PromiseLike<void>) => void;
4
+ export type Timeout = ReturnType<typeof setTimeout>;
5
+ export type Interval = ReturnType<typeof setInterval>;
6
+ export type StyleData = string;
7
+ export type ComponentStylesData = Array<ComponentStylesData> | string;
8
+ export type ClassMapValue = Record<string, boolean>;
9
+ export type ClassMap = {
13
10
  [x: string]: ClassMapValue | ClassMap;
14
11
  };
15
- type PassiveEventListenerObject = EventListenerObject & {
12
+ export type PassiveEventListenerObject = EventListenerObject & {
16
13
  passive: boolean;
17
14
  };
18
- export type { PromiseResolve, Timeout, Interval, StyleData, StyleDataCSP, ComponentStylesData, ClassMap, PassiveEventListenerObject, };
15
+ export type AriaRole = JSX.AriaRole;
16
+ export type AriaHasPopup = "dialog" | "grid" | "listbox" | "menu" | "tree";
17
+ export type AriaCurrent = "page" | "step" | "location" | "date" | "time" | "true" | "false" | boolean | undefined;
18
+ export type AriaAutoComplete = "list" | "none" | "inline" | "both" | undefined;
19
+ export type AriaLandmarkRole = "none" | "banner" | "main" | "region" | "navigation" | "search" | "complementary" | "form" | "contentinfo";
20
+ export type AccessibilityInfo = {
21
+ role?: AriaRole;
22
+ type?: LowercaseString<string>;
23
+ description?: string;
24
+ disabled?: boolean;
25
+ readonly?: boolean;
26
+ required?: boolean;
27
+ children?: Array<HTMLElement>;
28
+ };
29
+ export type AccessibilityAttributes = {
30
+ ariaSetsize?: number;
31
+ ariaPosinset?: number;
32
+ ariaLabel?: string;
33
+ controls?: LowercaseString<string>;
34
+ expanded?: "true" | "false" | boolean;
35
+ hasPopup?: AriaHasPopup;
36
+ name?: string;
37
+ role?: AriaRole;
38
+ ariaKeyShortcuts?: string;
39
+ ariaCurrent?: AriaCurrent;
40
+ current?: AriaCurrent;
41
+ };
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { JSX } from \"./jsx-runtime.d.ts\";\n\n// General utils\nexport type LowercaseString<T> = T extends string ? Lowercase<T> : never;\n\n// Core Framework types\nexport type PromiseResolve = (value: void | PromiseLike<void>) => void;\nexport type Timeout = ReturnType<typeof setTimeout>;\nexport type Interval = ReturnType<typeof setInterval>;\n\nexport type StyleData = string;\n\nexport type ComponentStylesData = Array<ComponentStylesData> | string;\nexport type ClassMapValue = Record<string, boolean>\n\nexport type ClassMap = { [x: string] : ClassMapValue | ClassMap };\n\nexport type PassiveEventListenerObject = EventListenerObject & { passive: boolean };\n\n// Accessibility\nexport type AriaRole = JSX.AriaRole;\nexport type AriaHasPopup = \"dialog\" | \"grid\" | \"listbox\" | \"menu\" | \"tree\";\nexport type AriaCurrent = \"page\" | \"step\" | \"location\" | \"date\" | \"time\" | \"true\" | \"false\" | boolean | undefined;\nexport type AriaAutoComplete = \"list\" | \"none\" | \"inline\" | \"both\" | undefined;\nexport type AriaLandmarkRole = \"none\" | \"banner\" | \"main\" | \"region\" | \"navigation\" | \"search\" | \"complementary\" | \"form\" | \"contentinfo\"\n\nexport type AccessibilityInfo = {\n\t// The WAI-ARIA role of the component.\n\trole?: AriaRole,\n\n\t// A translated text that represents the component type. Used when several components share same role,\n\t// f.e. Select and ComboBox both have role=\"combobox\".\n\ttype?: LowercaseString<string>,\n\n\t// A translated text that represents relevant component description/state - value, placeholder, label, etc.\n\tdescription?: string,\n\n\t // The component disabled state.\n\tdisabled?: boolean,\n\n\t// The component readonly state.\n\treadonly?: boolean,\n\n\t// The component required state.\n\trequired?: boolean,\n\n\t// An array of elements, aggregated by the component\n\t// <b>Note:</b> Children should only be provided when it is helpful to understand the accessibility context.\n\tchildren?: Array<HTMLElement>,\n}\n\nexport type AccessibilityAttributes = {\n\tariaSetsize?: number,\n\tariaPosinset?: number,\n\tariaLabel?: string,\n\tcontrols?: LowercaseString<string>\n\texpanded?: \"true\" | \"false\" | boolean,\n\thasPopup?: AriaHasPopup,\n\tname?: string,\n\trole?: AriaRole,\n\tariaKeyShortcuts?: string,\n\tariaCurrent?: AriaCurrent,\n\tcurrent?: AriaCurrent,\n}\n"]}
@@ -2,7 +2,6 @@ import type UI5Element from "./UI5Element.js";
2
2
  /**
3
3
  * Updates the shadow root of a UI5Element or its static area item
4
4
  * @param element
5
- * @param forStaticArea
6
5
  */
7
- declare const updateShadowRoot: (element: UI5Element, forStaticArea?: boolean) => void;
6
+ declare const updateShadowRoot: (element: UI5Element) => void;
8
7
  export default updateShadowRoot;
@@ -1,38 +1,17 @@
1
- import executeTemplate from "./renderer/executeTemplate.js";
2
1
  import getConstructableStyle from "./theming/getConstructableStyle.js";
3
- import getEffectiveStyle from "./theming/getEffectiveStyle.js";
4
- import getEffectiveLinksHrefs from "./theming/getEffectiveLinksHrefs.js";
5
- import { shouldUseLinks } from "./CSP.js";
6
2
  /**
7
3
  * Updates the shadow root of a UI5Element or its static area item
8
4
  * @param element
9
- * @param forStaticArea
10
5
  */
11
- const updateShadowRoot = (element, forStaticArea = false) => {
12
- let styleStrOrHrefsArr;
6
+ const updateShadowRoot = (element) => {
13
7
  const ctor = element.constructor;
14
- const propertyName = forStaticArea ? "staticAreaTemplate" : "template";
15
- const template = ctor[propertyName];
16
- const shadowRoot = forStaticArea ? element.staticAreaItem.shadowRoot : element.shadowRoot;
17
- const renderResult = executeTemplate(template, element); // this is checked before calling updateShadowRoot
8
+ const shadowRoot = element.shadowRoot;
18
9
  if (!shadowRoot) {
19
10
  console.warn(`There is no shadow root to update`); // eslint-disable-line
20
11
  return;
21
12
  }
22
- if (shouldUseLinks()) {
23
- styleStrOrHrefsArr = getEffectiveLinksHrefs(ctor, forStaticArea);
24
- }
25
- else if (document.adoptedStyleSheets) { // Chrome
26
- shadowRoot.adoptedStyleSheets = getConstructableStyle(ctor, forStaticArea);
27
- }
28
- else { // FF, Safari
29
- styleStrOrHrefsArr = getEffectiveStyle(ctor, forStaticArea);
30
- }
31
- if (ctor.renderer) {
32
- ctor.renderer(renderResult, shadowRoot, styleStrOrHrefsArr, forStaticArea, { host: element });
33
- return;
34
- }
35
- ctor.render(renderResult, shadowRoot, styleStrOrHrefsArr, forStaticArea, { host: element });
13
+ shadowRoot.adoptedStyleSheets = getConstructableStyle(ctor);
14
+ ctor.renderer(element, shadowRoot);
36
15
  };
37
16
  export default updateShadowRoot;
38
17
  //# sourceMappingURL=updateShadowRoot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateShadowRoot.js","sourceRoot":"","sources":["../src/updateShadowRoot.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,+BAA+B,CAAC;AAC5D,OAAO,qBAAqB,MAAM,oCAAoC,CAAC;AACvE,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAC/D,OAAO,sBAAsB,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG1C;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,OAAmB,EAAE,aAAa,GAAG,KAAK,EAAE,EAAE;IACvE,IAAI,kBAAkB,CAAC;IACvB,MAAM,IAAI,GAAG,OAAO,CAAC,WAAgC,CAAC;IACtD,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,UAAU,CAAC;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,cAAe,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC3F,MAAM,YAAY,GAAG,eAAe,CAAC,QAAS,EAAE,OAAO,CAAC,CAAC,CAAC,kDAAkD;IAE5G,IAAI,CAAC,UAAU,EAAE;QAChB,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC,sBAAsB;QACzE,OAAO;KACP;IAED,IAAI,cAAc,EAAE,EAAE;QACrB,kBAAkB,GAAG,sBAAsB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;KACjE;SAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,EAAE,SAAS;QAClD,UAAU,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;KAC3E;SAAM,EAAE,aAAa;QACrB,kBAAkB,GAAG,iBAAiB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;KAC5D;IAED,IAAI,IAAI,CAAC,QAAQ,EAAE;QAClB,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9F,OAAO;KACP;IAED,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAC7F,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"updateShadowRoot.js","sourceRoot":"","sources":["../src/updateShadowRoot.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,oCAAoC,CAAC;AAGvE;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CAAC,OAAmB,EAAE,EAAE;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAgC,CAAC;IACtD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAEtC,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC,sBAAsB;QACzE,OAAO;IACR,CAAC;IAED,UAAU,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,eAAe,gBAAgB,CAAC","sourcesContent":["import getConstructableStyle from \"./theming/getConstructableStyle.js\";\nimport type UI5Element from \"./UI5Element.js\";\n\n/**\n * Updates the shadow root of a UI5Element or its static area item\n * @param element\n */\nconst updateShadowRoot = (element: UI5Element) => {\n\tconst ctor = element.constructor as typeof UI5Element;\n\tconst shadowRoot = element.shadowRoot;\n\n\tif (!shadowRoot) {\n\t\tconsole.warn(`There is no shadow root to update`); // eslint-disable-line\n\t\treturn;\n\t}\n\n\tshadowRoot.adoptedStyleSheets = getConstructableStyle(ctor);\n\tctor.renderer(element, shadowRoot);\n};\n\nexport default updateShadowRoot;\n"]}
@@ -1,4 +1,4 @@
1
- import UI5Element from "../UI5Element.js";
1
+ import type UI5Element from "../UI5Element.js";
2
2
  type MutationCallback = () => void;
3
3
  declare const getEffectiveAriaLabelText: (el: HTMLElement) => string | undefined;
4
4
  /**
@@ -12,4 +12,6 @@ declare const getAllAccessibleNameRefTexts: (el: HTMLElement) => string;
12
12
  declare const getAssociatedLabelForTexts: (el: HTMLElement) => string | undefined;
13
13
  declare const registerUI5Element: (el: UI5Element, callback: MutationCallback) => void;
14
14
  declare const deregisterUI5Element: (el: UI5Element) => void;
15
- export { getEffectiveAriaLabelText, getAssociatedLabelForTexts, registerUI5Element, deregisterUI5Element, getAllAccessibleNameRefTexts, };
15
+ declare const getEffectiveAriaDescriptionText: (el: HTMLElement) => string | undefined;
16
+ declare const getAllAccessibleDescriptionRefTexts: (el: HTMLElement) => string;
17
+ export { getEffectiveAriaLabelText, getAssociatedLabelForTexts, registerUI5Element, deregisterUI5Element, getAllAccessibleNameRefTexts, getEffectiveAriaDescriptionText, getAllAccessibleDescriptionRefTexts, };
@@ -22,10 +22,9 @@ const getEffectiveAriaLabelText = (el) => {
22
22
  */
23
23
  const getAllAccessibleNameRefTexts = (el) => {
24
24
  const ids = el.accessibleNameRef?.split(" ") ?? [];
25
- const owner = el.getRootNode();
26
25
  let result = "";
27
26
  ids.forEach((elementId, index) => {
28
- const element = owner.querySelector(`[id='${elementId}']`);
27
+ const element = _getReferencedElementById(el, elementId);
29
28
  const text = `${element && element.textContent ? element.textContent : ""}`;
30
29
  if (text) {
31
30
  result += text;
@@ -44,8 +43,10 @@ const _getAllAssociatedElementsFromDOM = (el) => {
44
43
  set.add(itm);
45
44
  });
46
45
  // adding other elements that id is the same as accessibleNameRef value
47
- const value = el["accessibleNameRef"];
48
- const ids = value?.split(" ") ?? [];
46
+ const ariaLabelledBy = el["accessibleNameRef"];
47
+ const ariaDescribedBy = el["accessibleDescriptionRef"];
48
+ const value = [ariaLabelledBy, ariaDescribedBy].filter(Boolean).join(" ");
49
+ const ids = value ? value.split(" ") : [];
49
50
  ids.forEach(id => {
50
51
  const refEl = _getReferencedElementById(el, id);
51
52
  if (refEl) {
@@ -59,7 +60,7 @@ const _getAssociatedLabels = (el) => {
59
60
  return Array.from(labels);
60
61
  };
61
62
  const _getReferencedElementById = (el, elementId) => {
62
- return el.getRootNode().querySelector(`[id='${elementId}']`);
63
+ return el.getRootNode().querySelector(`[id='${elementId}']`) || document.getElementById(elementId);
63
64
  };
64
65
  /**
65
66
  * @param {HTMLElement} el Defines the HTMLElement, for which you need to get all related "label for" texts
@@ -78,7 +79,9 @@ const getAssociatedLabelForTexts = (el) => {
78
79
  };
79
80
  const _createInvalidationCallback = (el) => {
80
81
  const invalidationCallback = (changeInfo) => {
81
- if (!(changeInfo && changeInfo.type === "property" && changeInfo.name === "accessibleNameRef")) {
82
+ const isAccessibleNameRefChange = changeInfo && changeInfo.type === "property" && changeInfo.name === "accessibleNameRef";
83
+ const isAccessibleDescriptionRefChange = changeInfo && changeInfo.type === "property" && changeInfo.name === "accessibleDescriptionRef";
84
+ if (!isAccessibleNameRefChange && !isAccessibleDescriptionRefChange) {
82
85
  return;
83
86
  }
84
87
  const registeredElement = registeredElements.get(el);
@@ -167,5 +170,30 @@ const deregisterUI5Element = (el) => {
167
170
  el.detachInvalidate(registeredElement.invalidationCallback);
168
171
  registeredElements.delete(el);
169
172
  };
170
- export { getEffectiveAriaLabelText, getAssociatedLabelForTexts, registerUI5Element, deregisterUI5Element, getAllAccessibleNameRefTexts, };
171
- //# sourceMappingURL=AriaLabelHelper.js.map
173
+ const getEffectiveAriaDescriptionText = (el) => {
174
+ const accessibleEl = el;
175
+ if (!accessibleEl.accessibleDescriptionRef) {
176
+ if (accessibleEl.accessibleDescription) {
177
+ return accessibleEl.accessibleDescription;
178
+ }
179
+ return undefined;
180
+ }
181
+ return getAllAccessibleDescriptionRefTexts(el);
182
+ };
183
+ const getAllAccessibleDescriptionRefTexts = (el) => {
184
+ const ids = el.accessibleDescriptionRef?.split(" ") ?? [];
185
+ let result = "";
186
+ ids.forEach((elementId, index) => {
187
+ const element = _getReferencedElementById(el, elementId);
188
+ const text = `${element && element.textContent ? element.textContent : ""}`;
189
+ if (text) {
190
+ result += text;
191
+ if (index < ids.length - 1) {
192
+ result += " ";
193
+ }
194
+ }
195
+ });
196
+ return result;
197
+ };
198
+ export { getEffectiveAriaLabelText, getAssociatedLabelForTexts, registerUI5Element, deregisterUI5Element, getAllAccessibleNameRefTexts, getEffectiveAriaDescriptionText, getAllAccessibleDescriptionRefTexts, };
199
+ //# sourceMappingURL=AccessibilityTextsHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccessibilityTextsHelper.js","sourceRoot":"","sources":["../../src/util/AccessibilityTextsHelper.ts"],"names":[],"mappings":"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","sourcesContent":["import type UI5Element from \"../UI5Element.js\";\nimport type { ChangeInfo } from \"../UI5Element.js\";\n\ntype InvalidateCallback = (changeInfo: ChangeInfo) => void;\ntype MutationCallback = () => void;\ntype AssociatedElement = {\n\tobserver: MutationObserver | null;\n\tcallbacks: Array<MutationCallback>;\n};\ntype RegisteredElement = {\n\thost: UI5Element;\n\tobservedElements: Array<HTMLElement>;\n\tcallback: MutationCallback;\n\tinvalidationCallback: InvalidateCallback;\n};\n\nconst associatedElements = new WeakMap<HTMLElement, AssociatedElement>();\nconst registeredElements = new WeakMap<UI5Element, RegisteredElement>();\n\ntype AccessibleElement = HTMLElement & {\n\taccessibleNameRef?: string;\n\taccessibleName?: string;\n\taccessibleDescriptionRef?: string;\n\taccessibleDescription?: string;\n};\n\nconst observerOptions = {\n\tattributes: true,\n\tchildList: true,\n\tcharacterData: true,\n\tsubtree: true,\n};\n\nconst getEffectiveAriaLabelText = (el: HTMLElement) => {\n\tconst accessibleEl = el as AccessibleElement;\n\n\tif (!accessibleEl.accessibleNameRef) {\n\t\tif (accessibleEl.accessibleName) {\n\t\t\treturn accessibleEl.accessibleName;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\treturn getAllAccessibleNameRefTexts(el);\n};\n\n/**\n *\n * @param {HTMLElement} el Defines the HTMLElement, for which you need to get all related texts\n */\nconst getAllAccessibleNameRefTexts = (el: HTMLElement) => {\n\tconst ids = (el as AccessibleElement).accessibleNameRef?.split(\" \") ?? [];\n\tlet result = \"\";\n\n\tids.forEach((elementId: string, index: number) => {\n\t\tconst element = _getReferencedElementById(el, elementId);\n\t\tconst text = `${element && element.textContent ? element.textContent : \"\"}`;\n\t\tif (text) {\n\t\t\tresult += text;\n\t\t\tif (index < ids.length - 1) {\n\t\t\t\tresult += \" \";\n\t\t\t}\n\t\t}\n\t});\n\n\treturn result;\n};\n\nconst _getAllAssociatedElementsFromDOM = (el: UI5Element): Array<HTMLElement> => {\n\tconst set = new Set<HTMLElement>();\n\t// adding labels with attribute for matching the el.id\n\tconst labelsForAssociated = _getAssociatedLabels(el);\n\tlabelsForAssociated.forEach(itm => {\n\t\tset.add(itm);\n\t});\n\t// adding other elements that id is the same as accessibleNameRef value\n\tconst ariaLabelledBy = el[\"accessibleNameRef\" as keyof typeof el] as string;\n\tconst ariaDescribedBy = el[\"accessibleDescriptionRef\" as keyof typeof el] as string;\n\n\tconst value = [ariaLabelledBy, ariaDescribedBy].filter(Boolean).join(\" \");\n\n\tconst ids = value ? value.split(\" \") : [];\n\tids.forEach(id => {\n\t\tconst refEl = _getReferencedElementById(el, id);\n\t\tif (refEl) {\n\t\t\tset.add(refEl);\n\t\t}\n\t});\n\treturn Array.from(set);\n};\n\nconst _getAssociatedLabels = (el: HTMLElement): Array<HTMLElement> => {\n\tconst labels = (el.getRootNode() as HTMLElement).querySelectorAll<HTMLElement>(`[for=\"${el.id}\"]`);\n\treturn Array.from(labels);\n};\n\nconst _getReferencedElementById = (el: HTMLElement, elementId: string): HTMLElement | null => {\n\treturn (el.getRootNode() as HTMLElement).querySelector<HTMLElement>(`[id='${elementId}']`) || document.getElementById(elementId);\n};\n\n/**\n * @param {HTMLElement} el Defines the HTMLElement, for which you need to get all related \"label for\" texts\n */\nconst getAssociatedLabelForTexts = (el: HTMLElement) => {\n\tconst results: Array<string> = [];\n\tconst labels = _getAssociatedLabels(el);\n\n\tlabels.forEach((label: HTMLElement) => {\n\t\tconst labelText = label.textContent;\n\t\tlabelText && results.push(labelText);\n\t});\n\n\tif (results.length) {\n\t\treturn results.join(\" \");\n\t}\n\n\treturn undefined;\n};\n\nconst _createInvalidationCallback = (el: UI5Element) => {\n\tconst invalidationCallback = (changeInfo: ChangeInfo) => {\n\t\tconst isAccessibleNameRefChange = changeInfo && changeInfo.type === \"property\" && changeInfo.name === \"accessibleNameRef\";\n\t\tconst isAccessibleDescriptionRefChange = changeInfo && changeInfo.type === \"property\" && changeInfo.name === \"accessibleDescriptionRef\";\n\t\tif (!isAccessibleNameRefChange && !isAccessibleDescriptionRefChange) {\n\t\t\treturn;\n\t\t}\n\t\tconst registeredElement = registeredElements.get(el);\n\t\tif (!registeredElement) {\n\t\t\treturn;\n\t\t}\n\t\tconst oldAssociatedElements = registeredElement.observedElements;\n\t\tconst newAssociatedElements = _getAllAssociatedElementsFromDOM(el);\n\t\toldAssociatedElements.forEach(oldElement => {\n\t\t\tif (!newAssociatedElements.includes(oldElement)) {\n\t\t\t\t_removeObservedElementFromRegisteredElement(registeredElement, oldElement);\n\t\t\t}\n\t\t});\n\t\tnewAssociatedElements.forEach(newElement => {\n\t\t\tif (!oldAssociatedElements.includes(newElement)) {\n\t\t\t\t_addObservedElementToRegisteredElement(registeredElement, newElement);\n\t\t\t\tregisteredElement.observedElements.push(newElement);\n\t\t\t}\n\t\t});\n\t\tregisteredElement?.callback();\n\t};\n\treturn invalidationCallback;\n};\n\nconst registerUI5Element = (el: UI5Element, callback: MutationCallback) => {\n\tif (registeredElements.has(el)) {\n\t\treturn;\n\t}\n\tconst allAssociatedElements = _getAllAssociatedElementsFromDOM(el);\n\tconst invalidationCallback = _createInvalidationCallback(el);\n\tconst registeredElement = {\n\t\thost: el,\n\t\tobservedElements: allAssociatedElements,\n\t\tcallback,\n\t\tinvalidationCallback,\n\t};\n\tregisteredElements.set(el, registeredElement);\n\tel.attachInvalidate(invalidationCallback);\n\n\tallAssociatedElements.forEach((element: HTMLElement) => {\n\t\t_addObservedElementToRegisteredElement(registeredElement, element);\n\t});\n\tcallback();\n};\n\nconst _addObservedElementToRegisteredElement = (registeredElement: RegisteredElement, element: HTMLElement) => {\n\tlet associatedElement = associatedElements.get(element);\n\tif (!associatedElement) {\n\t\tassociatedElement = { observer: null, callbacks: [] };\n\t\tconst observer = new MutationObserver(() => {\n\t\t\tconst callbacks = (associatedElement as AssociatedElement).callbacks;\n\t\t\tcallbacks.forEach(callback => {\n\t\t\t\tcallback();\n\t\t\t});\n\t\t\tconst domEl = document.getElementById(element.id);\n\t\t\t// if no longer should be observed from this registeredElement, remove it\n\t\t\tif (!(registeredElement.host.id === element.getAttribute(\"for\") || domEl)) {\n\t\t\t\t_removeObservedElementFromRegisteredElement(registeredElement, element);\n\t\t\t}\n\t\t});\n\t\tassociatedElement.observer = observer;\n\t\tobserver.observe(element, observerOptions);\n\t\tassociatedElements.set(element, associatedElement);\n\t}\n\tif (!associatedElement.callbacks.includes(registeredElement.callback)) {\n\t\tassociatedElement.callbacks.push(registeredElement.callback);\n\t}\n};\n\nconst _removeObservedElementFromRegisteredElement = (registeredElement: RegisteredElement, element: HTMLElement) => {\n\tconst associatedElement = associatedElements.get(element);\n\tif (associatedElement) {\n\t\tassociatedElement.callbacks = associatedElement.callbacks.filter(itm => itm !== registeredElement.callback);\n\t\tif (!associatedElement.callbacks.length) {\n\t\t\tassociatedElement.observer?.disconnect();\n\t\t\tassociatedElements.delete(element);\n\t\t}\n\t}\n\tregisteredElement.observedElements = registeredElement.observedElements.filter(itm => itm !== element);\n};\n\nconst deregisterUI5Element = (el: UI5Element) => {\n\tconst registeredElement = registeredElements.get(el);\n\tif (!registeredElement) {\n\t\treturn;\n\t}\n\tconst oldObservedElements = [...registeredElement.observedElements];\n\toldObservedElements.forEach(observedElement => {\n\t\t_removeObservedElementFromRegisteredElement(registeredElement, observedElement);\n\t});\n\tel.detachInvalidate(registeredElement.invalidationCallback);\n\tregisteredElements.delete(el);\n};\n\nconst getEffectiveAriaDescriptionText = (el: HTMLElement) => {\n\tconst accessibleEl = el as AccessibleElement;\n\n\tif (!accessibleEl.accessibleDescriptionRef) {\n\t\tif (accessibleEl.accessibleDescription) {\n\t\t\treturn accessibleEl.accessibleDescription;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\treturn getAllAccessibleDescriptionRefTexts(el);\n};\n\nconst getAllAccessibleDescriptionRefTexts = (el: HTMLElement) => {\n\tconst ids = (el as AccessibleElement).accessibleDescriptionRef?.split(\" \") ?? [];\n\tlet result = \"\";\n\n\tids.forEach((elementId: string, index: number) => {\n\t\tconst element = _getReferencedElementById(el, elementId);\n\t\tconst text = `${element && element.textContent ? element.textContent : \"\"}`;\n\t\tif (text) {\n\t\t\tresult += text;\n\t\t\tif (index < ids.length - 1) {\n\t\t\t\tresult += \" \";\n\t\t\t}\n\t\t}\n\t});\n\n\treturn result;\n};\n\nexport {\n\tgetEffectiveAriaLabelText,\n\tgetAssociatedLabelForTexts,\n\tregisterUI5Element,\n\tderegisterUI5Element,\n\tgetAllAccessibleNameRefTexts,\n\tgetEffectiveAriaDescriptionText,\n\tgetAllAccessibleDescriptionRefTexts,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Caret.js","sourceRoot":"","sources":["../../src/util/Caret.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CAAC,KAAuB,EAAiB,EAAE;IACnE,aAAa;IACb,IAAI,QAAQ,GAAkB,CAAC,CAAC;IAEhC,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,KAAK,CAAC,EAAE,EAAE,kBAAkB;QAC3E,QAAQ,GAAG,KAAK,CAAC,kBAAkB,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;KAC/F;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAuB,EAAE,QAAuB,EAAE,EAAE;IAC7E,IAAI,KAAK,CAAC,cAAc,EAAE;QACzB,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;KAC5C;SAAM;QACN,KAAK,CAAC,KAAK,EAAE,CAAC;KACd;AACF,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,CAAC"}
1
+ {"version":3,"file":"Caret.js","sourceRoot":"","sources":["../../src/util/Caret.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CAAC,KAAuB,EAAiB,EAAE;IACnE,aAAa;IACb,IAAI,QAAQ,GAAkB,CAAC,CAAC;IAEhC,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,KAAK,CAAC,EAAE,CAAC,CAAC,kBAAkB;QAC3E,QAAQ,GAAG,KAAK,CAAC,kBAAkB,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;IAChG,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAuB,EAAE,QAAuB,EAAE,EAAE;IAC7E,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QAC1B,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACP,KAAK,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,CAAC","sourcesContent":["/**\n * Returns the caret (cursor) position of the specified text field (field).\n * Return value range is 0-field.value.length.\n */\nconst getCaretPosition = (field: HTMLInputElement): number | null => {\n\t// Initialize\n\tlet caretPos: number | null = 0;\n\n\tif (field.selectionStart || field.selectionStart === 0) { // Firefox support\n\t\tcaretPos = field.selectionDirection === \"backward\" ? field.selectionStart : field.selectionEnd;\n\t}\n\n\treturn caretPos;\n};\n\nconst setCaretPosition = (field: HTMLInputElement, caretPos: number | null) => {\n\tif (field.selectionStart) {\n\t\tfield.focus();\n\t\tfield.setSelectionRange(caretPos, caretPos);\n\t} else {\n\t\tfield.focus();\n\t}\n};\n\nexport {\n\tgetCaretPosition,\n\tsetCaretPosition,\n};\n"]}