@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,16 +1,11 @@
1
- import UI5ElementMetadata, { Slot, SlotValue, State, PropertyValue, Metadata } from "./UI5ElementMetadata.js";
1
+ import "@ui5/webcomponents-base/dist/ssr-dom.js";
2
+ import type { JSX } from "./jsx-runtime.js";
3
+ import UI5ElementMetadata from "./UI5ElementMetadata.js";
4
+ import type { Slot, SlotValue, State, PropertyValue, Metadata } from "./UI5ElementMetadata.js";
2
5
  import EventProvider from "./EventProvider.js";
3
- import StaticAreaItem from "./StaticAreaItem.js";
4
- import type { TemplateFunction, TemplateFunctionResult } from "./renderer/executeTemplate.js";
5
- import type { PromiseResolve, ComponentStylesData, ClassMap } from "./types.js";
6
- type Renderer = (templateResult: TemplateFunctionResult, container: HTMLElement | DocumentFragment, styleStrOrHrefsArr: string | Array<string> | undefined, forStaticArea: boolean, options: RendererOptions) => void;
7
- type RendererOptions = {
8
- /**
9
- * An object to use as the `this` value for event listeners. It's often
10
- * useful to set this to the host component rendering a template.
11
- */
12
- host?: object;
13
- };
6
+ import type { TemplateFunction } from "./renderer/executeTemplate.js";
7
+ import type { AccessibilityInfo, PromiseResolve, ComponentStylesData, ClassMap } from "./types.js";
8
+ type Renderer = (instance: UI5Element, container: HTMLElement | DocumentFragment) => void;
14
9
  type ChangeInfo = {
15
10
  type: "property" | "slot";
16
11
  name: string;
@@ -25,42 +20,61 @@ type InvalidationInfo = ChangeInfo & {
25
20
  };
26
21
  type ChildChangeListener = (param: InvalidationInfo) => void;
27
22
  type SlotChangeListener = (this: HTMLSlotElement, ev: Event) => void;
23
+ type SlottedChild = Record<string, any>;
24
+ type NotEqual<X, Y> = true extends Equal<X, Y> ? false : true;
25
+ type Equal<X, Y> = (<T>() => T extends X ? 1 : 2) extends (<T>() => T extends Y ? 1 : 2) ? true : false;
26
+ type IsAny<T, Y, N> = 0 extends (1 & T) ? Y : N;
27
+ type KebabToCamel<T extends string> = T extends `${infer H}-${infer J}${infer K}` ? `${Uncapitalize<H>}${Capitalize<J>}${KebabToCamel<K>}` : T;
28
+ type KebabToPascal<T extends string> = Capitalize<KebabToCamel<T>>;
29
+ type GlobalHTMLAttributeNames = "accesskey" | "autocapitalize" | "autofocus" | "autocomplete" | "contenteditable" | "contextmenu" | "class" | "dir" | "draggable" | "enterkeyhint" | "hidden" | "id" | "inputmode" | "lang" | "nonce" | "part" | "exportparts" | "pattern" | "slot" | "spellcheck" | "style" | "tabIndex" | "tabindex" | "title" | "translate" | "ref" | "inert";
30
+ type ElementProps<I> = Partial<Omit<I, keyof HTMLElement>>;
31
+ type Convert<T> = {
32
+ [Property in keyof T as `on${KebabToPascal<string & Property>}`]: IsAny<T[Property], any, (e: CustomEvent<T[Property]>) => void>;
33
+ };
28
34
  /**
35
+ * @class
29
36
  * Base class for all UI5 Web Components
30
37
  *
31
- * @class
32
- * @constructor
33
- * @author SAP SE
34
- * @alias sap.ui.webc.base.UI5Element
35
38
  * @extends HTMLElement
36
39
  * @public
37
40
  */
38
41
  declare abstract class UI5Element extends HTMLElement {
42
+ eventDetails: NotEqual<this, UI5Element> extends true ? object : {
43
+ [k: string]: any;
44
+ };
45
+ _jsxEvents: Omit<JSX.DOMAttributes<this>, keyof Convert<this["eventDetails"]> | "onClose" | "onToggle" | "onChange" | "onSelect" | "onInput"> & Convert<this["eventDetails"]>;
46
+ _jsxProps: Pick<JSX.AllHTMLAttributes<HTMLElement>, GlobalHTMLAttributeNames> & ElementProps<this> & Partial<this["_jsxEvents"]> & {
47
+ key?: any;
48
+ };
39
49
  __id?: string;
40
50
  _suppressInvalidation: boolean;
41
51
  _changedState: Array<ChangeInfo>;
42
- _eventProvider: EventProvider<InvalidationInfo, void>;
52
+ _invalidationEventProvider: EventProvider<InvalidationInfo, void>;
53
+ _componentStateFinalizedEventProvider: EventProvider<void, void>;
43
54
  _inDOM: boolean;
44
55
  _fullyConnected: boolean;
45
56
  _childChangeListeners: Map<string, ChildChangeListener>;
57
+ _slotsAssignedNodes: WeakMap<HTMLSlotElement, Array<SlotValue>>;
46
58
  _slotChangeListeners: Map<string, SlotChangeListener>;
47
59
  _domRefReadyPromise: Promise<void> & {
48
60
  _deferredResolve?: PromiseResolve;
49
61
  };
50
62
  _doNotSyncAttributes: Set<string>;
51
63
  _state: State;
52
- _onComponentStateFinalized?: () => void;
64
+ _internals: ElementInternals;
65
+ _individualSlot?: string;
53
66
  _getRealDomRef?: () => HTMLElement;
54
- staticAreaItem?: StaticAreaItem;
55
67
  static template?: TemplateFunction;
56
- static staticAreaTemplate?: TemplateFunction;
57
68
  static _metadata: UI5ElementMetadata;
69
+ static renderer: Renderer;
70
+ initializedProperties: Map<string, unknown>;
71
+ _rendered: boolean;
72
+ constructor();
73
+ _initShadowRoot(): void;
58
74
  /**
59
- * @deprecated
75
+ * Note: this "slotchange" listener is for slots, rendered in the component's shadow root
60
76
  */
61
- static render: Renderer;
62
- static renderer?: Renderer;
63
- constructor();
77
+ _onShadowRootSlotChange(e: Event): void;
64
78
  /**
65
79
  * Returns a unique ID for this UI5 Element
66
80
  *
@@ -68,6 +82,7 @@ declare abstract class UI5Element extends HTMLElement {
68
82
  * @protected
69
83
  */
70
84
  get _id(): string;
85
+ render(): object;
71
86
  /**
72
87
  * Do not call this method from derivatives of UI5Element, use "onEnterDOM" only
73
88
  * @private
@@ -123,22 +138,22 @@ declare abstract class UI5Element extends HTMLElement {
123
138
  /**
124
139
  * Attach a callback that will be executed whenever the component is invalidated
125
140
  *
126
- * @param {InvalidationInfo} callback
141
+ * @param callback
127
142
  * @public
128
143
  */
129
144
  attachInvalidate(callback: (param: InvalidationInfo) => void): void;
130
145
  /**
131
146
  * Detach the callback that is executed whenever the component is invalidated
132
147
  *
133
- * @param {InvalidationInfo} callback
148
+ * @param callback
134
149
  * @public
135
150
  */
136
151
  detachInvalidate(callback: (param: InvalidationInfo) => void): void;
137
152
  /**
138
153
  * Callback that is executed whenever a monitored child changes its state
139
154
  *
140
- * @param {sting} slotName the slot in which a child was invalidated
141
- * @param { ChangeInfo } childChangeInfo the changeInfo object for the child in the given slot
155
+ * @param slotName the slot in which a child was invalidated
156
+ * @param childChangeInfo the changeInfo object for the child in the given slot
142
157
  * @private
143
158
  */
144
159
  _onChildChange(slotName: string, childChangeInfo: ChangeInfo): void;
@@ -147,44 +162,37 @@ declare abstract class UI5Element extends HTMLElement {
147
162
  * @private
148
163
  */
149
164
  attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
165
+ formAssociatedCallback(): void;
166
+ static get formAssociated(): boolean;
150
167
  /**
151
168
  * @private
152
169
  */
153
170
  _updateAttribute(name: string, newValue: PropertyValue): void;
154
- /**
155
- * @private
156
- */
157
- _upgradeProperty(this: Record<string, any>, propertyName: string): void;
158
- /**
159
- * @private
160
- */
161
- _upgradeAllProperties(): void;
162
171
  /**
163
172
  * Returns a singleton event listener for the "change" event of a child in a given slot
164
173
  *
165
174
  * @param slotName the name of the slot, where the child is
166
- * @returns {ChildChangeListener}
167
175
  * @private
168
176
  */
169
- _getChildChangeListener(slotName: string): ChildChangeListener | undefined;
177
+ _getChildChangeListener(slotName: string): ChildChangeListener;
170
178
  /**
171
179
  * Returns a singleton slotchange event listener that invalidates the component due to changes in the given slot
172
180
  *
173
181
  * @param slotName the name of the slot, where the slot element (whose slotchange event we're listening to) is
174
- * @returns {SlotChangeListener}
175
182
  * @private
176
183
  */
177
184
  _getSlotChangeListener(slotName: string): SlotChangeListener;
178
185
  /**
179
186
  * @private
180
187
  */
181
- _attachSlotChange(child: HTMLSlotElement, slotName: string): void;
188
+ _attachSlotChange(slot: HTMLSlotElement, slotName: string, invalidateOnChildChange: boolean): void;
182
189
  /**
183
190
  * @private
184
191
  */
185
192
  _detachSlotChange(child: HTMLSlotElement, slotName: string): void;
186
193
  /**
187
194
  * Whenever a slot element is slotted inside a UI5 Web Component, its slotchange event invalidates the component
195
+ * Note: this "slotchange" listener is for slots that are children of the component (in the light dom, as opposed to slots rendered by the component in the shadow root)
188
196
  *
189
197
  * @param slotName the name of the slot, where the slot element (whose slotchange event we're listening to) is
190
198
  * @private
@@ -205,9 +213,9 @@ declare abstract class UI5Element extends HTMLElement {
205
213
  * 1) children: immediate children (HTML elements or text nodes) were added, removed or reordered in the slot
206
214
  * 2) textcontent: text nodes in the slot changed value (or nested text nodes were added or changed value). Can only trigger for slots of "type: Node"
207
215
  * 3) slotchange: a slot element, slotted inside that slot had its "slotchange" event listener called. This practically means that transitively slotted children changed.
208
- * Can only trigger if the child of a slot is a slot element itself.
216
+ * Can only trigger if the child of a slot is a slot element itself.
209
217
  * 4) childchange: indicates that a UI5Element child in that slot was invalidated and in turn invalidated the component.
210
- * Can only trigger for slots with "invalidateOnChildChange" metadata descriptor
218
+ * Can only trigger for slots with "invalidateOnChildChange" metadata descriptor
211
219
  *
212
220
  * - newValue: the new value of the property (for type="property" only)
213
221
  *
@@ -218,6 +226,7 @@ declare abstract class UI5Element extends HTMLElement {
218
226
  * @public
219
227
  */
220
228
  onInvalidation(changeInfo: ChangeInfo): void;
229
+ updateAttributes(): void;
221
230
  /**
222
231
  * Do not call this method directly, only intended to be called by js
223
232
  * @protected
@@ -231,7 +240,7 @@ declare abstract class UI5Element extends HTMLElement {
231
240
  * @private
232
241
  */
233
242
  _waitForDomRef(): Promise<void> & {
234
- _deferredResolve?: PromiseResolve | undefined;
243
+ _deferredResolve?: PromiseResolve;
235
244
  };
236
245
  /**
237
246
  * Returns the DOM Element inside the Shadow Root that corresponds to the opening tag in the UI5 Web Component's template
@@ -255,7 +264,7 @@ declare abstract class UI5Element extends HTMLElement {
255
264
  getFocusDomRefAsync(): Promise<HTMLElement | undefined>;
256
265
  /**
257
266
  * Set the focus to the element, returned by "getFocusDomRef()" (marked by "data-sap-focus-ref")
258
- * @param {FocusOptions} focusOptions additional options for the focus
267
+ * @param focusOptions additional options for the focus
259
268
  * @public
260
269
  */
261
270
  focus(focusOptions?: FocusOptions): Promise<void>;
@@ -266,48 +275,79 @@ declare abstract class UI5Element extends HTMLElement {
266
275
  * @param data - additional data for the event
267
276
  * @param cancelable - true, if the user can call preventDefault on the event object
268
277
  * @param bubbles - true, if the event bubbles
269
- * @returns {boolean} false, if the event was cancelled (preventDefault called), true otherwise
278
+ * @returns false, if the event was cancelled (preventDefault called), true otherwise
279
+ * @deprecated use fireDecoratorEvent instead
270
280
  */
271
281
  fireEvent<T>(name: string, data?: T, cancelable?: boolean, bubbles?: boolean): boolean;
282
+ /**
283
+ * Fires a custom event, configured via the "event" decorator.
284
+ * @public
285
+ * @param name - name of the event
286
+ * @param data - additional data for the event
287
+ * @returns false, if the event was cancelled (preventDefault called), true otherwise
288
+ */
289
+ fireDecoratorEvent<N extends keyof this["eventDetails"]>(name: N, data?: this["eventDetails"][N] | undefined): boolean;
272
290
  _fireEvent<T>(name: string, data?: T, cancelable?: boolean, bubbles?: boolean): boolean;
291
+ getEventData(name: string): {
292
+ detail?: Record<string, object>;
293
+ cancelable?: boolean;
294
+ bubbles?: boolean;
295
+ };
273
296
  /**
274
297
  * Returns the actual children, associated with a slot.
275
298
  * Useful when there are transitive slots in nested component scenarios and you don't want to get a list of the slots, but rather of their content.
276
299
  * @public
277
300
  */
278
- getSlottedNodes<T = Node>(slotName: string): T[];
301
+ getSlottedNodes<T = Node>(slotName: string): Array<T>;
302
+ /**
303
+ * Attach a callback that will be executed whenever the component's state is finalized
304
+ *
305
+ * @param callback
306
+ * @public
307
+ */
308
+ attachComponentStateFinalized(callback: () => void): void;
309
+ /**
310
+ * Detach the callback that is executed whenever the component's state is finalized
311
+ *
312
+ * @param callback
313
+ * @public
314
+ */
315
+ detachComponentStateFinalized(callback: () => void): void;
279
316
  /**
280
317
  * Determines whether the component should be rendered in RTL mode or not.
281
318
  * Returns: "rtl", "ltr" or undefined
282
319
  *
283
320
  * @public
284
- * @returns {String|undefined}
321
+ * @default undefined
285
322
  */
286
323
  get effectiveDir(): string | undefined;
287
324
  /**
288
325
  * Used to duck-type UI5 elements without using instanceof
289
- * @returns {boolean}
290
326
  * @public
327
+ * @default true
291
328
  */
292
329
  get isUI5Element(): boolean;
293
330
  get classes(): ClassMap;
294
331
  /**
295
- * Do not override this method in derivatives of UI5Element, use metadata properties instead
332
+ * Returns the component accessibility info.
296
333
  * @private
297
334
  */
298
- static get observedAttributes(): string[];
335
+ get accessibilityInfo(): AccessibilityInfo;
299
336
  /**
337
+ * Do not override this method in derivatives of UI5Element, use metadata properties instead
300
338
  * @private
301
339
  */
302
- static _needsShadowDOM(): boolean;
340
+ static get observedAttributes(): string[];
303
341
  /**
342
+ * Returns all tags, used inside component's template subject to scoping.
343
+ * returns {Array[]} // TODO add @
304
344
  * @private
305
345
  */
306
- static _needsStaticArea(): boolean;
346
+ static get tagsToScope(): Array<string>;
307
347
  /**
308
- * @public
348
+ * @private
309
349
  */
310
- getStaticAreaItemDomRef(): Promise<ShadowRoot | null>;
350
+ static _needsShadowDOM(): boolean;
311
351
  /**
312
352
  * @private
313
353
  */
@@ -321,58 +361,54 @@ declare abstract class UI5Element extends HTMLElement {
321
361
  * Returns the CSS for this UI5 Web Component Class
322
362
  * @protected
323
363
  */
324
- static get styles(): ComponentStylesData;
325
- /**
326
- * Returns the Static Area CSS for this UI5 Web Component Class
327
- * @protected
328
- */
329
- static get staticAreaStyles(): ComponentStylesData;
364
+ static styles: ComponentStylesData;
330
365
  /**
331
366
  * Returns an array with the dependencies for this UI5 Web Component, which could be:
332
- * - composed components (used in its shadow root or static area item)
367
+ * - composed components (used in its shadow root)
333
368
  * - slotted components that the component may need to communicate with
334
369
  *
370
+ * @deprecated no longer necessary for jsxRenderer-enabled components
335
371
  * @protected
336
372
  */
337
373
  static get dependencies(): Array<typeof UI5Element>;
374
+ static cacheUniqueDependencies(this: typeof UI5Element): void;
338
375
  /**
339
376
  * Returns a list of the unique dependencies for this UI5 Web Component
340
377
  *
341
378
  * @public
342
379
  */
343
- static getUniqueDependencies(this: typeof UI5Element): (typeof UI5Element)[];
344
- /**
345
- * Returns a promise that resolves whenever all dependencies for this UI5 Web Component have resolved
346
- *
347
- * @returns {Promise}
348
- */
349
- static whenDependenciesDefined(): Promise<Array<typeof UI5Element>>;
380
+ static getUniqueDependencies(this: typeof UI5Element): Array<typeof UI5Element>;
350
381
  /**
351
382
  * Hook that will be called upon custom element definition
352
383
  *
353
384
  * @protected
354
- * @returns {Promise<void>}
385
+ * @deprecated use the "i18n" decorator for fetching message bundles and the "cldr" option in the "customElements" decorator for fetching CLDR
355
386
  */
356
387
  static onDefine(): Promise<void>;
388
+ static fetchI18nBundles(): Promise<import("./i18nBundle.js").default[]>;
389
+ static fetchCLDR(): Promise<void>;
390
+ static asyncFinished: boolean;
391
+ static definePromise: Promise<void> | undefined;
357
392
  /**
358
393
  * Registers a UI5 Web Component in the browser window object
359
394
  * @public
360
- * @returns {Promise<UI5Element>}
361
395
  */
362
- static define(): Promise<typeof UI5Element>;
396
+ static define(): typeof UI5Element;
363
397
  /**
364
398
  * Returns an instance of UI5ElementMetadata.js representing this UI5 Web Component's full metadata (its and its parents')
365
399
  * Note: not to be confused with the "get metadata()" method, which returns an object for this class's metadata only
366
400
  * @public
367
- * @returns {UI5ElementMetadata}
368
401
  */
369
402
  static getMetadata(): UI5ElementMetadata;
403
+ get validity(): ValidityState;
404
+ get validationMessage(): string;
405
+ checkValidity(): boolean;
406
+ reportValidity(): boolean;
370
407
  }
371
408
  /**
372
409
  * Always use duck-typing to cover all runtimes on the page.
373
- * @returns {boolean}
374
410
  */
375
411
  declare const instanceOfUI5Element: (object: any) => object is UI5Element;
376
412
  export default UI5Element;
377
- export { instanceOfUI5Element };
378
- export type { ChangeInfo, Renderer, RendererOptions, };
413
+ export { instanceOfUI5Element, };
414
+ export type { ChangeInfo, InvalidationInfo, Renderer, SlottedChild, };