@ui5/webcomponents-base 0.0.0-aadaf0b2a → 0.0.0-acc6fea96

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 (760) hide show
  1. package/.npsrc.json +3 -0
  2. package/CHANGELOG.md +2324 -0
  3. package/README.md +50 -10
  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 +5 -0
  27. package/dist/AssetRegistry.js +6 -9
  28. package/dist/AssetRegistry.js.map +1 -0
  29. package/dist/Boot.d.ts +10 -0
  30. package/dist/Boot.js +75 -0
  31. package/dist/Boot.js.map +1 -0
  32. package/dist/CustomElementsRegistry.d.ts +5 -0
  33. package/dist/CustomElementsRegistry.js +78 -0
  34. package/dist/CustomElementsRegistry.js.map +1 -0
  35. package/dist/CustomElementsScope.d.ts +7 -0
  36. package/dist/CustomElementsScope.js +11 -0
  37. package/dist/CustomElementsScope.js.map +1 -0
  38. package/dist/CustomElementsScopeUtils.d.ts +62 -0
  39. package/dist/CustomElementsScopeUtils.js +102 -0
  40. package/dist/CustomElementsScopeUtils.js.map +1 -0
  41. package/dist/DOMObserver.d.ts +11 -0
  42. package/dist/DOMObserver.js +23 -0
  43. package/dist/DOMObserver.js.map +1 -0
  44. package/dist/Device.d.ts +27 -0
  45. package/dist/Device.js +163 -815
  46. package/dist/Device.js.map +1 -0
  47. package/dist/EventProvider.d.ts +25 -0
  48. package/dist/EventProvider.js +67 -70
  49. package/dist/EventProvider.js.map +1 -0
  50. package/dist/FeaturesRegistry.d.ts +18 -0
  51. package/dist/FeaturesRegistry.js +41 -7
  52. package/dist/FeaturesRegistry.js.map +1 -0
  53. package/dist/FontFace.d.ts +2 -0
  54. package/dist/FontFace.js +26 -69
  55. package/dist/FontFace.js.map +1 -0
  56. package/dist/IgnoreCustomElements.d.ts +25 -0
  57. package/dist/IgnoreCustomElements.js +37 -0
  58. package/dist/IgnoreCustomElements.js.map +1 -0
  59. package/dist/InitialConfiguration.d.ts +34 -0
  60. package/dist/InitialConfiguration.js +153 -104
  61. package/dist/InitialConfiguration.js.map +1 -0
  62. package/dist/Keys.d.ts +64 -0
  63. package/dist/Keys.js +182 -157
  64. package/dist/Keys.js.map +1 -0
  65. package/dist/Location.d.ts +11 -0
  66. package/dist/Location.js +49 -0
  67. package/dist/Location.js.map +1 -0
  68. package/dist/ManagedStyles.d.ts +7 -0
  69. package/dist/ManagedStyles.js +69 -0
  70. package/dist/ManagedStyles.js.map +1 -0
  71. package/dist/MediaRange.d.ts +31 -0
  72. package/dist/MediaRange.js +88 -0
  73. package/dist/MediaRange.js.map +1 -0
  74. package/dist/PropertiesFileFormat.d.ts +8 -0
  75. package/dist/PropertiesFileFormat.js +85 -0
  76. package/dist/PropertiesFileFormat.js.map +1 -0
  77. package/dist/Render.d.ts +47 -0
  78. package/dist/Render.js +143 -0
  79. package/dist/Render.js.map +1 -0
  80. package/dist/RenderQueue.d.ts +19 -0
  81. package/dist/RenderQueue.js +53 -39
  82. package/dist/RenderQueue.js.map +1 -0
  83. package/dist/Runtimes.d.ts +27 -0
  84. package/dist/Runtimes.js +97 -0
  85. package/dist/Runtimes.js.map +1 -0
  86. package/dist/SystemCSSVars.d.ts +2 -0
  87. package/dist/SystemCSSVars.js +9 -0
  88. package/dist/SystemCSSVars.js.map +1 -0
  89. package/dist/Theming.d.ts +3 -0
  90. package/dist/Theming.js +3 -6
  91. package/dist/Theming.js.map +1 -0
  92. package/dist/UI5Element.d.ts +414 -0
  93. package/dist/UI5Element.js +1105 -855
  94. package/dist/UI5Element.js.map +1 -0
  95. package/dist/UI5ElementMetadata.d.ts +164 -0
  96. package/dist/UI5ElementMetadata.js +244 -164
  97. package/dist/UI5ElementMetadata.js.map +1 -0
  98. package/dist/animations/AnimationQueue.d.ts +8 -0
  99. package/dist/animations/AnimationQueue.js +31 -38
  100. package/dist/animations/AnimationQueue.js.map +1 -0
  101. package/dist/animations/animate.d.ts +14 -0
  102. package/dist/animations/animate.js +46 -51
  103. package/dist/animations/animate.js.map +1 -0
  104. package/dist/animations/scroll.d.ts +5 -0
  105. package/dist/animations/scroll.js +18 -27
  106. package/dist/animations/scroll.js.map +1 -0
  107. package/dist/animations/slideDown.d.ts +5 -0
  108. package/dist/animations/slideDown.js +53 -78
  109. package/dist/animations/slideDown.js.map +1 -0
  110. package/dist/animations/slideUp.d.ts +5 -0
  111. package/dist/animations/slideUp.js +49 -70
  112. package/dist/animations/slideUp.js.map +1 -0
  113. package/dist/asset-registries/Icons.d.ts +39 -0
  114. package/dist/asset-registries/Icons.js +136 -24
  115. package/dist/asset-registries/Icons.js.map +1 -0
  116. package/dist/asset-registries/Illustrations.d.ts +19 -0
  117. package/dist/asset-registries/Illustrations.js +77 -0
  118. package/dist/asset-registries/Illustrations.js.map +1 -0
  119. package/dist/asset-registries/LocaleData.d.ts +7 -0
  120. package/dist/asset-registries/LocaleData.js +125 -116
  121. package/dist/asset-registries/LocaleData.js.map +1 -0
  122. package/dist/asset-registries/Themes.d.ts +9 -0
  123. package/dist/asset-registries/Themes.js +58 -66
  124. package/dist/asset-registries/Themes.js.map +1 -0
  125. package/dist/asset-registries/i18n.d.ts +23 -0
  126. package/dist/asset-registries/i18n.js +84 -56
  127. package/dist/asset-registries/i18n.js.map +1 -0
  128. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  129. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  130. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  131. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  132. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  133. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  134. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  135. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  136. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  137. package/dist/config/AnimationMode.d.ts +14 -0
  138. package/dist/config/AnimationMode.js +28 -10
  139. package/dist/config/AnimationMode.js.map +1 -0
  140. package/dist/config/CalendarType.d.ts +15 -0
  141. package/dist/config/CalendarType.js +36 -14
  142. package/dist/config/CalendarType.js.map +1 -0
  143. package/dist/config/ConfigurationReset.d.ts +4 -0
  144. package/dist/config/ConfigurationReset.js +11 -0
  145. package/dist/config/ConfigurationReset.js.map +1 -0
  146. package/dist/config/Fonts.d.ts +16 -0
  147. package/dist/config/Fonts.js +30 -0
  148. package/dist/config/Fonts.js.map +1 -0
  149. package/dist/config/FormatSettings.d.ts +15 -0
  150. package/dist/config/FormatSettings.js +19 -9
  151. package/dist/config/FormatSettings.js.map +1 -0
  152. package/dist/config/Icons.d.ts +40 -0
  153. package/dist/config/Icons.js +44 -0
  154. package/dist/config/Icons.js.map +1 -0
  155. package/dist/config/Language.d.ts +40 -0
  156. package/dist/config/Language.js +74 -10
  157. package/dist/config/Language.js.map +1 -0
  158. package/dist/config/NoConflict.d.ts +20 -0
  159. package/dist/config/NoConflict.js +45 -41
  160. package/dist/config/NoConflict.js.map +1 -0
  161. package/dist/config/Theme.d.ts +39 -0
  162. package/dist/config/Theme.js +75 -22
  163. package/dist/config/Theme.js.map +1 -0
  164. package/dist/config/ThemeRoot.d.ts +27 -0
  165. package/dist/config/ThemeRoot.js +61 -0
  166. package/dist/config/ThemeRoot.js.map +1 -0
  167. package/dist/config/Timezone.d.ts +17 -0
  168. package/dist/config/Timezone.js +34 -0
  169. package/dist/config/Timezone.js.map +1 -0
  170. package/dist/config/Tooltips.d.ts +19 -0
  171. package/dist/config/Tooltips.js +29 -0
  172. package/dist/config/Tooltips.js.map +1 -0
  173. package/dist/connectToComponent.d.ts +9 -0
  174. package/dist/connectToComponent.js +59 -0
  175. package/dist/connectToComponent.js.map +1 -0
  176. package/dist/converters/DOMReference.d.ts +5 -0
  177. package/dist/converters/DOMReference.js +13 -0
  178. package/dist/converters/DOMReference.js.map +1 -0
  179. package/dist/css/BusyIndicator.css +80 -0
  180. package/dist/css/FontFace.css +96 -0
  181. package/dist/css/OverrideFontFace.css +32 -0
  182. package/dist/css/SystemCSSVars.css +9 -0
  183. package/dist/decorators/bound.d.ts +1 -0
  184. package/dist/decorators/bound.js +34 -0
  185. package/dist/decorators/bound.js.map +1 -0
  186. package/dist/decorators/customElement.d.ts +62 -0
  187. package/dist/decorators/customElement.js +48 -0
  188. package/dist/decorators/customElement.js.map +1 -0
  189. package/dist/decorators/event-strict.d.ts +15 -0
  190. package/dist/decorators/event-strict.js +26 -0
  191. package/dist/decorators/event-strict.js.map +1 -0
  192. package/dist/decorators/event.d.ts +16 -0
  193. package/dist/decorators/event.js +27 -0
  194. package/dist/decorators/event.js.map +1 -0
  195. package/dist/decorators/i18n.d.ts +17 -0
  196. package/dist/decorators/i18n.js +26 -0
  197. package/dist/decorators/i18n.js.map +1 -0
  198. package/dist/decorators/property.d.ts +9 -0
  199. package/dist/decorators/property.js +24 -0
  200. package/dist/decorators/property.js.map +1 -0
  201. package/dist/decorators/query.d.ts +25 -0
  202. package/dist/decorators/query.js +32 -0
  203. package/dist/decorators/query.js.map +1 -0
  204. package/dist/decorators/queryAll.d.ts +27 -0
  205. package/dist/decorators/queryAll.js +34 -0
  206. package/dist/decorators/queryAll.js.map +1 -0
  207. package/dist/decorators/slot.d.ts +9 -0
  208. package/dist/decorators/slot.js +37 -0
  209. package/dist/decorators/slot.js.map +1 -0
  210. package/dist/decorators.d.ts +8 -0
  211. package/dist/decorators.js +9 -0
  212. package/dist/decorators.js.map +1 -0
  213. package/dist/delegate/ItemNavigation.d.ts +114 -0
  214. package/dist/delegate/ItemNavigation.js +311 -274
  215. package/dist/delegate/ItemNavigation.js.map +1 -0
  216. package/dist/delegate/ResizeHandler.d.ts +23 -0
  217. package/dist/delegate/ResizeHandler.js +82 -63
  218. package/dist/delegate/ResizeHandler.js.map +1 -0
  219. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  220. package/dist/delegate/ScrollEnablement.js +159 -100
  221. package/dist/delegate/ScrollEnablement.js.map +1 -0
  222. package/dist/features/F6Navigation.d.ts +19 -0
  223. package/dist/features/F6Navigation.js +170 -0
  224. package/dist/features/F6Navigation.js.map +1 -0
  225. package/dist/features/InputElementsFormSupport.d.ts +15 -0
  226. package/dist/features/InputElementsFormSupport.js +39 -0
  227. package/dist/features/InputElementsFormSupport.js.map +1 -0
  228. package/dist/features/LegacyDateFormats.d.ts +18 -0
  229. package/dist/features/LegacyDateFormats.js +20 -0
  230. package/dist/features/LegacyDateFormats.js.map +1 -0
  231. package/dist/features/OpenUI5Element.d.ts +9 -0
  232. package/dist/features/OpenUI5Element.js +5 -0
  233. package/dist/features/OpenUI5Element.js.map +1 -0
  234. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  235. package/dist/features/OpenUI5Enablement.js +96 -0
  236. package/dist/features/OpenUI5Enablement.js.map +1 -0
  237. package/dist/features/OpenUI5Support.d.ts +34 -0
  238. package/dist/features/OpenUI5Support.js +140 -73
  239. package/dist/features/OpenUI5Support.js.map +1 -0
  240. package/dist/features/patchPatcher.d.ts +11 -0
  241. package/dist/features/patchPatcher.js +11 -0
  242. package/dist/features/patchPatcher.js.map +1 -0
  243. package/dist/features/patchPopup.d.ts +15 -0
  244. package/dist/features/patchPopup.js +61 -0
  245. package/dist/features/patchPopup.js.map +1 -0
  246. package/dist/generated/AssetParameters.d.ts +6 -0
  247. package/dist/generated/AssetParameters.js +8 -0
  248. package/dist/generated/AssetParameters.js.map +1 -0
  249. package/dist/generated/VersionInfo.d.ts +10 -0
  250. package/dist/generated/VersionInfo.js +11 -0
  251. package/dist/generated/VersionInfo.js.map +1 -0
  252. package/dist/generated/css/BusyIndicator.css.d.ts +2 -0
  253. package/dist/generated/css/BusyIndicator.css.js +2 -0
  254. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  255. package/dist/generated/css/FontFace.css.d.ts +2 -0
  256. package/dist/generated/css/FontFace.css.js +2 -0
  257. package/dist/generated/css/FontFace.css.js.map +1 -0
  258. package/dist/generated/css/OverrideFontFace.css.d.ts +2 -0
  259. package/dist/generated/css/OverrideFontFace.css.js +2 -0
  260. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  261. package/dist/generated/css/SystemCSSVars.css.d.ts +2 -0
  262. package/dist/generated/css/SystemCSSVars.css.js +2 -0
  263. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  264. package/dist/getSharedResource.d.ts +11 -0
  265. package/dist/getSharedResource.js +40 -0
  266. package/dist/getSharedResource.js.map +1 -0
  267. package/dist/global.d.ts +40 -0
  268. package/dist/i18nBundle.d.ts +41 -0
  269. package/dist/i18nBundle.js +71 -30
  270. package/dist/i18nBundle.js.map +1 -0
  271. package/dist/index.d.ts +8 -0
  272. package/dist/jsx-dev-runtime.d.ts +4 -0
  273. package/dist/jsx-dev-runtime.js +43 -0
  274. package/dist/jsx-dev-runtime.js.map +1 -0
  275. package/dist/jsx-runtime.d.ts +50 -0
  276. package/dist/jsx-runtime.js +27 -0
  277. package/dist/jsx-runtime.js.map +1 -0
  278. package/dist/jsx-utils.d.ts +3 -0
  279. package/dist/jsx-utils.js +39 -0
  280. package/dist/jsx-utils.js.map +1 -0
  281. package/dist/locale/Locale.d.ts +22 -0
  282. package/dist/locale/Locale.js +75 -87
  283. package/dist/locale/Locale.js.map +1 -0
  284. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  285. package/dist/locale/RTLAwareRegistry.js +9 -0
  286. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  287. package/dist/locale/applyDirection.d.ts +11 -0
  288. package/dist/locale/applyDirection.js +18 -0
  289. package/dist/locale/applyDirection.js.map +1 -0
  290. package/dist/locale/directionChange.d.ts +15 -0
  291. package/dist/locale/directionChange.js +24 -0
  292. package/dist/locale/directionChange.js.map +1 -0
  293. package/dist/locale/getEffectiveDir.d.ts +2 -0
  294. package/dist/locale/getEffectiveDir.js +8 -0
  295. package/dist/locale/getEffectiveDir.js.map +1 -0
  296. package/dist/locale/getLocale.d.ts +7 -0
  297. package/dist/locale/getLocale.js +28 -21
  298. package/dist/locale/getLocale.js.map +1 -0
  299. package/dist/locale/languageChange.d.ts +5 -0
  300. package/dist/locale/languageChange.js +14 -0
  301. package/dist/locale/languageChange.js.map +1 -0
  302. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  303. package/dist/locale/nextFallbackLocale.js +17 -19
  304. package/dist/locale/nextFallbackLocale.js.map +1 -0
  305. package/dist/locale/normalizeLocale.d.ts +7 -0
  306. package/dist/locale/normalizeLocale.js +36 -37
  307. package/dist/locale/normalizeLocale.js.map +1 -0
  308. package/dist/renderer/JsxRenderer.d.ts +3 -0
  309. package/dist/renderer/JsxRenderer.js +16 -0
  310. package/dist/renderer/JsxRenderer.js.map +1 -0
  311. package/dist/renderer/LitRenderer.d.ts +14 -0
  312. package/dist/renderer/LitRenderer.js +33 -12
  313. package/dist/renderer/LitRenderer.js.map +1 -0
  314. package/dist/renderer/directives/style-map.d.ts +13 -0
  315. package/dist/renderer/directives/style-map.js +72 -0
  316. package/dist/renderer/directives/style-map.js.map +1 -0
  317. package/dist/renderer/executeTemplate.d.ts +12 -0
  318. package/dist/renderer/executeTemplate.js +12 -0
  319. package/dist/renderer/executeTemplate.js.map +1 -0
  320. package/dist/sap/base/Log.js +750 -0
  321. package/dist/sap/base/assert.js +34 -0
  322. package/dist/sap/base/config/MemoryConfigurationProvider.js +20 -0
  323. package/dist/sap/base/security/URLListValidator.js +406 -0
  324. package/dist/sap/base/security/encodeCSS.js +40 -0
  325. package/dist/sap/base/security/encodeXML.js +53 -0
  326. package/dist/sap/base/security/sanitizeHTML.js +38 -0
  327. package/dist/sap/base/strings/toHex.js +33 -0
  328. package/dist/sap/base/util/now.js +28 -0
  329. package/dist/sap/base/util/uid.js +27 -0
  330. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  331. package/dist/ssr-dom-shim.d.ts +1 -0
  332. package/dist/ssr-dom-shim.js +12 -0
  333. package/dist/ssr-dom-shim.js.map +1 -0
  334. package/dist/ssr-dom.d.ts +1 -0
  335. package/dist/ssr-dom.js +3 -0
  336. package/dist/ssr-dom.js.map +1 -0
  337. package/dist/theming/CustomStyle.d.ts +6 -0
  338. package/dist/theming/CustomStyle.js +46 -17
  339. package/dist/theming/CustomStyle.js.map +1 -0
  340. package/dist/theming/ThemeLoaded.d.ts +5 -0
  341. package/dist/theming/ThemeLoaded.js +14 -0
  342. package/dist/theming/ThemeLoaded.js.map +1 -0
  343. package/dist/theming/ThemeRegistered.d.ts +4 -0
  344. package/dist/theming/ThemeRegistered.js +11 -0
  345. package/dist/theming/ThemeRegistered.js.map +1 -0
  346. package/dist/theming/applyTheme.d.ts +2 -0
  347. package/dist/theming/applyTheme.js +74 -17
  348. package/dist/theming/applyTheme.js.map +1 -0
  349. package/dist/theming/getConstructableStyle.d.ts +9 -0
  350. package/dist/theming/getConstructableStyle.js +15 -15
  351. package/dist/theming/getConstructableStyle.js.map +1 -0
  352. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  353. package/dist/theming/getEffectiveStyle.js +23 -13
  354. package/dist/theming/getEffectiveStyle.js.map +1 -0
  355. package/dist/theming/getStylesString.d.ts +3 -0
  356. package/dist/theming/getStylesString.js +9 -0
  357. package/dist/theming/getStylesString.js.map +1 -0
  358. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  359. package/dist/theming/getThemeDesignerTheme.js +81 -0
  360. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  361. package/dist/thirdparty/_merge.d.ts +2 -0
  362. package/dist/thirdparty/_merge.js +7 -4
  363. package/dist/thirdparty/_merge.js.map +1 -0
  364. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  365. package/dist/thirdparty/isPlainObject.js +11 -10
  366. package/dist/thirdparty/isPlainObject.js.map +1 -0
  367. package/dist/thirdparty/merge.d.ts +2 -0
  368. package/dist/thirdparty/merge.js +4 -8
  369. package/dist/thirdparty/merge.js.map +1 -0
  370. package/dist/thirdparty/preact/jsx.d.ts +2616 -0
  371. package/dist/thirdparty/preact/jsxRuntime.module.d.ts +62 -0
  372. package/dist/thirdparty/preact/jsxRuntime.module.js +2 -0
  373. package/dist/thirdparty/preact/preact.module.d.ts +398 -0
  374. package/dist/thirdparty/preact/preact.module.js +2 -0
  375. package/dist/types/AnimationMode.d.ts +24 -0
  376. package/dist/types/AnimationMode.js +25 -6
  377. package/dist/types/AnimationMode.js.map +1 -0
  378. package/dist/types/CalendarType.d.ts +28 -0
  379. package/dist/types/CalendarType.js +26 -18
  380. package/dist/types/CalendarType.js.map +1 -0
  381. package/dist/types/InvisibleMessageMode.d.ts +20 -0
  382. package/dist/types/InvisibleMessageMode.js +20 -0
  383. package/dist/types/InvisibleMessageMode.js.map +1 -0
  384. package/dist/types/ItemNavigationBehavior.d.ts +18 -0
  385. package/dist/types/ItemNavigationBehavior.js +16 -17
  386. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  387. package/dist/types/MovePlacement.d.ts +20 -0
  388. package/dist/types/MovePlacement.js +22 -0
  389. package/dist/types/MovePlacement.js.map +1 -0
  390. package/dist/types/NavigationMode.d.ts +24 -0
  391. package/dist/types/NavigationMode.js +25 -5
  392. package/dist/types/NavigationMode.js.map +1 -0
  393. package/dist/types/Orientation.d.ts +16 -0
  394. package/dist/types/Orientation.js +18 -0
  395. package/dist/types/Orientation.js.map +1 -0
  396. package/dist/types/ValueState.d.ts +28 -0
  397. package/dist/types/ValueState.js +27 -19
  398. package/dist/types/ValueState.js.map +1 -0
  399. package/dist/types.d.ts +41 -0
  400. package/dist/types.js +2 -0
  401. package/dist/types.js.map +1 -0
  402. package/dist/updateShadowRoot.d.ts +7 -0
  403. package/dist/updateShadowRoot.js +17 -0
  404. package/dist/updateShadowRoot.js.map +1 -0
  405. package/dist/util/AccessibilityTextsHelper.d.ts +17 -0
  406. package/dist/util/AccessibilityTextsHelper.js +199 -0
  407. package/dist/util/AccessibilityTextsHelper.js.map +1 -0
  408. package/dist/util/Caret.d.ts +7 -0
  409. package/dist/util/Caret.js +23 -0
  410. package/dist/util/Caret.js.map +1 -0
  411. package/dist/util/ColorConversion.d.ts +31 -0
  412. package/dist/util/ColorConversion.js +352 -0
  413. package/dist/util/ColorConversion.js.map +1 -0
  414. package/dist/util/FetchHelper.d.ts +3 -0
  415. package/dist/util/FetchHelper.js +19 -25
  416. package/dist/util/FetchHelper.js.map +1 -0
  417. package/dist/util/FocusableElements.d.ts +4 -0
  418. package/dist/util/FocusableElements.js +70 -56
  419. package/dist/util/FocusableElements.js.map +1 -0
  420. package/dist/util/HTMLSanitizer.d.ts +3 -0
  421. package/dist/util/HTMLSanitizer.js +6 -0
  422. package/dist/util/HTMLSanitizer.js.map +1 -0
  423. package/dist/util/InvisibleMessage.d.ts +10 -0
  424. package/dist/util/InvisibleMessage.js +56 -0
  425. package/dist/util/InvisibleMessage.js.map +1 -0
  426. package/dist/util/PopupUtils.d.ts +5 -0
  427. package/dist/util/PopupUtils.js +60 -0
  428. package/dist/util/PopupUtils.js.map +1 -0
  429. package/dist/util/SelectionAssistant.d.ts +12 -0
  430. package/dist/util/SelectionAssistant.js +79 -0
  431. package/dist/util/SelectionAssistant.js.map +1 -0
  432. package/dist/util/SlotsHelper.d.ts +9 -0
  433. package/dist/util/SlotsHelper.js +30 -0
  434. package/dist/util/SlotsHelper.js.map +1 -0
  435. package/dist/util/StringHelper.d.ts +5 -0
  436. package/dist/util/StringHelper.js +32 -21
  437. package/dist/util/StringHelper.js.map +1 -0
  438. package/dist/util/TabbableElements.d.ts +17 -0
  439. package/dist/util/TabbableElements.js +46 -39
  440. package/dist/util/TabbableElements.js.map +1 -0
  441. package/dist/util/arraysAreEqual.d.ts +2 -0
  442. package/dist/util/arraysAreEqual.js +13 -0
  443. package/dist/util/arraysAreEqual.js.map +1 -0
  444. package/dist/util/clamp.d.ts +9 -0
  445. package/dist/util/clamp.js +13 -0
  446. package/dist/util/clamp.js.map +1 -0
  447. package/dist/util/createLinkInHead.d.ts +7 -0
  448. package/dist/util/createLinkInHead.js +21 -0
  449. package/dist/util/createLinkInHead.js.map +1 -0
  450. package/dist/util/debounce.d.ts +2 -0
  451. package/dist/util/debounce.js +15 -0
  452. package/dist/util/debounce.js.map +1 -0
  453. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  454. package/dist/util/detectNavigatorLanguage.js +14 -10
  455. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  456. package/dist/util/dragAndDrop/DragRegistry.d.ts +33 -0
  457. package/dist/util/dragAndDrop/DragRegistry.js +66 -0
  458. package/dist/util/dragAndDrop/DragRegistry.js.map +1 -0
  459. package/dist/util/dragAndDrop/findClosestPosition.d.ts +11 -0
  460. package/dist/util/dragAndDrop/findClosestPosition.js +102 -0
  461. package/dist/util/dragAndDrop/findClosestPosition.js.map +1 -0
  462. package/dist/util/dragAndDrop/handleDragOver.d.ts +16 -0
  463. package/dist/util/dragAndDrop/handleDragOver.js +42 -0
  464. package/dist/util/dragAndDrop/handleDragOver.js.map +1 -0
  465. package/dist/util/dragAndDrop/handleDrop.d.ts +5 -0
  466. package/dist/util/dragAndDrop/handleDrop.js +22 -0
  467. package/dist/util/dragAndDrop/handleDrop.js.map +1 -0
  468. package/dist/util/dragAndDrop/longDragOverHandler.d.ts +2 -0
  469. package/dist/util/dragAndDrop/longDragOverHandler.js +25 -0
  470. package/dist/util/dragAndDrop/longDragOverHandler.js.map +1 -0
  471. package/dist/util/escapeRegex.d.ts +8 -0
  472. package/dist/util/escapeRegex.js +11 -0
  473. package/dist/util/escapeRegex.js.map +1 -0
  474. package/dist/util/fixSafariActiveState.d.ts +2 -0
  475. package/dist/util/fixSafariActiveState.js +11 -0
  476. package/dist/util/fixSafariActiveState.js.map +1 -0
  477. package/dist/util/formatMessage.d.ts +2 -0
  478. package/dist/util/formatMessage.js +15 -19
  479. package/dist/util/formatMessage.js.map +1 -0
  480. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  481. package/dist/util/generateHighlightedMarkup.js +41 -0
  482. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  483. package/dist/util/getActiveElement.d.ts +2 -0
  484. package/dist/util/getActiveElement.js +9 -0
  485. package/dist/util/getActiveElement.js.map +1 -0
  486. package/dist/util/getClassCopy.d.ts +438 -0
  487. package/dist/util/getClassCopy.js +10 -0
  488. package/dist/util/getClassCopy.js.map +1 -0
  489. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  490. package/dist/util/getDesigntimePropertyAsArray.js +5 -3
  491. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  492. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  493. package/dist/util/getEffectiveContentDensity.js +4 -0
  494. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  495. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  496. package/dist/util/getEffectiveScrollbarStyle.js +34 -0
  497. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  498. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  499. package/dist/util/getFastNavigationGroups.js +51 -0
  500. package/dist/util/getFastNavigationGroups.js.map +1 -0
  501. package/dist/util/getFileExtension.d.ts +12 -0
  502. package/dist/util/getFileExtension.js +19 -0
  503. package/dist/util/getFileExtension.js.map +1 -0
  504. package/dist/util/getNormalizedTarget.d.ts +7 -0
  505. package/dist/util/getNormalizedTarget.js +14 -0
  506. package/dist/util/getNormalizedTarget.js.map +1 -0
  507. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  508. package/dist/util/getSingletonElementInstance.js +19 -0
  509. package/dist/util/getSingletonElementInstance.js.map +1 -0
  510. package/dist/util/hash2str.d.ts +1 -0
  511. package/dist/util/hash2str.js +14 -0
  512. package/dist/util/hash2str.js.map +1 -0
  513. package/dist/util/isElementClickable.d.ts +2 -0
  514. package/dist/util/isElementClickable.js +16 -0
  515. package/dist/util/isElementClickable.js.map +1 -0
  516. package/dist/util/isElementHidden.d.ts +2 -0
  517. package/dist/util/isElementHidden.js +8 -0
  518. package/dist/util/isElementHidden.js.map +1 -0
  519. package/dist/util/isElementInView.d.ts +6 -0
  520. package/dist/util/isElementInView.js +12 -0
  521. package/dist/util/isElementInView.js.map +1 -0
  522. package/dist/util/isElementTabbable.d.ts +9 -0
  523. package/dist/util/isElementTabbable.js +30 -0
  524. package/dist/util/isElementTabbable.js.map +1 -0
  525. package/dist/util/isValidPropertyName.d.ts +8 -0
  526. package/dist/util/isValidPropertyName.js +20 -12
  527. package/dist/util/isValidPropertyName.js.map +1 -0
  528. package/dist/util/toLowercaseEnumValue.d.ts +3 -0
  529. package/dist/util/toLowercaseEnumValue.js +4 -0
  530. package/dist/util/toLowercaseEnumValue.js.map +1 -0
  531. package/dist/util/whenDOMReady.d.ts +2 -0
  532. package/dist/util/whenDOMReady.js +11 -10
  533. package/dist/util/whenDOMReady.js.map +1 -0
  534. package/dist/util/willShowContent.d.ts +2 -0
  535. package/dist/util/willShowContent.js +7 -0
  536. package/dist/util/willShowContent.js.map +1 -0
  537. package/dist/validateThemeRoot.d.ts +2 -0
  538. package/dist/validateThemeRoot.js +49 -0
  539. package/dist/validateThemeRoot.js.map +1 -0
  540. package/index.js +206 -2
  541. package/package-scripts.cjs +74 -0
  542. package/package.json +43 -13
  543. package/src/css/BusyIndicator.css +80 -0
  544. package/src/css/FontFace.css +96 -0
  545. package/src/css/OverrideFontFace.css +32 -0
  546. package/src/css/SystemCSSVars.css +9 -0
  547. package/src/thirdparty/preact/jsxRuntime.module.js +2 -0
  548. package/src/thirdparty/preact/preact.module.js +2 -0
  549. package/src/thirdparty/preact/version.txt +1 -0
  550. package/tsconfig.json +20 -0
  551. package/.eslintignore +0 -10
  552. package/bundle.es5.js +0 -28
  553. package/bundle.esm.js +0 -48
  554. package/config/.eslintrc.js +0 -3
  555. package/config/rollup.config.js +0 -1
  556. package/config/wdio.conf.js +0 -1
  557. package/dist/RenderScheduler.js +0 -165
  558. package/dist/SVGIconRegistry.js +0 -60
  559. package/dist/StaticArea.js +0 -41
  560. package/dist/StaticAreaItem.js +0 -101
  561. package/dist/animations/config.js +0 -5
  562. package/dist/boot.js +0 -32
  563. package/dist/compatibility/DOMObserver.js +0 -62
  564. package/dist/compatibility/patchNodeValue.js +0 -24
  565. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  566. package/dist/config/RTL.js +0 -31
  567. package/dist/delegate/CustomResize.js +0 -78
  568. package/dist/delegate/NativeResize.js +0 -44
  569. package/dist/features/browsersupport/Edge.js +0 -6
  570. package/dist/features/browsersupport/IE11.js +0 -41
  571. package/dist/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
  572. package/dist/renderer/ifDefined.js +0 -21
  573. package/dist/resources/bundle.es5.js +0 -212
  574. package/dist/resources/bundle.es5.js.map +0 -1
  575. package/dist/resources/bundle.esm.js +0 -123
  576. package/dist/resources/bundle.esm.js.map +0 -1
  577. package/dist/test-resources/assets/Themes.js +0 -13
  578. package/dist/test-resources/dev-helpers/ExternalThemePresent.js +0 -3
  579. package/dist/test-resources/elements/Child.js +0 -35
  580. package/dist/test-resources/elements/Generic.js +0 -84
  581. package/dist/test-resources/elements/GenericExt.js +0 -26
  582. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  583. package/dist/test-resources/elements/Parent.js +0 -37
  584. package/dist/test-resources/pages/AllTestElements.html +0 -40
  585. package/dist/test-resources/pages/Configuration.html +0 -20
  586. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  587. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  588. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  589. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  590. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  591. package/dist/test-resources/specs/Theming.spec.js +0 -31
  592. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  593. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  594. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  595. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  596. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  597. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  598. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  599. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  600. package/dist/theming/CSSVarsPonyfill.js +0 -25
  601. package/dist/theming/ExternalThemePresent.js +0 -12
  602. package/dist/theming/adaptCSSForIE.js +0 -90
  603. package/dist/theming/createComponentStyleTag.js +0 -32
  604. package/dist/theming/createThemePropertiesStyleTag.js +0 -27
  605. package/dist/thirdparty/Array.from.js +0 -16
  606. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  607. package/dist/thirdparty/Array.prototype.find.js +0 -46
  608. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  609. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  610. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  611. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  612. package/dist/thirdparty/Number.isInteger.js +0 -5
  613. package/dist/thirdparty/Number.isNaN.js +0 -1
  614. package/dist/thirdparty/Number.parseInt.js +0 -1
  615. package/dist/thirdparty/Object.assign.js +0 -31
  616. package/dist/thirdparty/Object.entries.js +0 -11
  617. package/dist/thirdparty/Symbol.js +0 -2
  618. package/dist/thirdparty/WeakSet.js +0 -27
  619. package/dist/thirdparty/es6-string-methods.js +0 -182
  620. package/dist/thirdparty/events-polyfills.js +0 -89
  621. package/dist/thirdparty/fetch.js +0 -1
  622. package/dist/thirdparty/template.js +0 -600
  623. package/dist/thirdparty/webcomponents-sd-ce-pf.js +0 -318
  624. package/dist/types/CSSSize.js +0 -9
  625. package/dist/types/DataType.js +0 -25
  626. package/dist/types/Integer.js +0 -9
  627. package/dist/types/PopupState.js +0 -37
  628. package/dist/util/createStyleInHead.js +0 -18
  629. package/dist/util/isDescendantOf.js +0 -15
  630. package/dist/util/isNodeClickable.js +0 -19
  631. package/dist/util/isNodeHidden.js +0 -13
  632. package/dist/util/isNodeTabbable.js +0 -28
  633. package/dist/webcomponentsjs/LICENSE.md +0 -19
  634. package/dist/webcomponentsjs/README.md +0 -229
  635. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  636. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  637. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  638. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  639. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  640. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  641. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  642. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  643. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  644. package/dist/webcomponentsjs/package.json +0 -46
  645. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  646. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  647. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  648. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  649. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  650. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  651. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  652. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  653. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  654. package/package-scripts.js +0 -41
  655. package/src/AssetRegistry.js +0 -9
  656. package/src/Device.js +0 -823
  657. package/src/EventProvider.js +0 -73
  658. package/src/FeaturesRegistry.js +0 -11
  659. package/src/FontFace.js +0 -73
  660. package/src/InitialConfiguration.js +0 -130
  661. package/src/Keys.js +0 -161
  662. package/src/RenderQueue.js +0 -42
  663. package/src/RenderScheduler.js +0 -165
  664. package/src/SVGIconRegistry.js +0 -60
  665. package/src/StaticArea.js +0 -41
  666. package/src/StaticAreaItem.js +0 -101
  667. package/src/Theming.js +0 -7
  668. package/src/UI5Element.js +0 -870
  669. package/src/UI5ElementMetadata.js +0 -173
  670. package/src/animations/AnimationQueue.js +0 -42
  671. package/src/animations/animate.js +0 -53
  672. package/src/animations/config.js +0 -5
  673. package/src/animations/scroll.js +0 -28
  674. package/src/animations/slideDown.js +0 -79
  675. package/src/animations/slideUp.js +0 -71
  676. package/src/asset-registries/Icons.js +0 -24
  677. package/src/asset-registries/LocaleData.js +0 -127
  678. package/src/asset-registries/Themes.js +0 -75
  679. package/src/asset-registries/i18n.js +0 -74
  680. package/src/boot.js +0 -32
  681. package/src/compatibility/DOMObserver.js +0 -62
  682. package/src/compatibility/patchNodeValue.js +0 -24
  683. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  684. package/src/config/AnimationMode.js +0 -13
  685. package/src/config/CalendarType.js +0 -18
  686. package/src/config/FormatSettings.js +0 -13
  687. package/src/config/Language.js +0 -12
  688. package/src/config/NoConflict.js +0 -51
  689. package/src/config/RTL.js +0 -31
  690. package/src/config/Theme.js +0 -28
  691. package/src/delegate/CustomResize.js +0 -78
  692. package/src/delegate/ItemNavigation.js +0 -278
  693. package/src/delegate/NativeResize.js +0 -44
  694. package/src/delegate/ResizeHandler.js +0 -66
  695. package/src/delegate/ScrollEnablement.js +0 -106
  696. package/src/features/OpenUI5Support.js +0 -76
  697. package/src/features/browsersupport/Edge.js +0 -6
  698. package/src/features/browsersupport/IE11.js +0 -41
  699. package/src/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
  700. package/src/i18nBundle.js +0 -35
  701. package/src/locale/Locale.js +0 -91
  702. package/src/locale/getLocale.js +0 -31
  703. package/src/locale/nextFallbackLocale.js +0 -26
  704. package/src/locale/normalizeLocale.js +0 -48
  705. package/src/renderer/LitRenderer.js +0 -15
  706. package/src/renderer/ifDefined.js +0 -21
  707. package/src/theming/CSSVarsPonyfill.js +0 -25
  708. package/src/theming/CustomStyle.js +0 -19
  709. package/src/theming/ExternalThemePresent.js +0 -12
  710. package/src/theming/adaptCSSForIE.js +0 -90
  711. package/src/theming/applyTheme.js +0 -19
  712. package/src/theming/createComponentStyleTag.js +0 -32
  713. package/src/theming/createThemePropertiesStyleTag.js +0 -27
  714. package/src/theming/getConstructableStyle.js +0 -25
  715. package/src/theming/getEffectiveStyle.js +0 -15
  716. package/src/thirdparty/Array.from.js +0 -16
  717. package/src/thirdparty/Array.prototype.fill.js +0 -44
  718. package/src/thirdparty/Array.prototype.find.js +0 -46
  719. package/src/thirdparty/Array.prototype.includes.js +0 -51
  720. package/src/thirdparty/Element.prototype.closest.js +0 -11
  721. package/src/thirdparty/Element.prototype.matches.js +0 -6
  722. package/src/thirdparty/Map.prototype.keys.js +0 -9
  723. package/src/thirdparty/Number.isInteger.js +0 -5
  724. package/src/thirdparty/Number.isNaN.js +0 -1
  725. package/src/thirdparty/Number.parseInt.js +0 -1
  726. package/src/thirdparty/Object.assign.js +0 -31
  727. package/src/thirdparty/Object.entries.js +0 -11
  728. package/src/thirdparty/Symbol.js +0 -2
  729. package/src/thirdparty/WeakSet.js +0 -27
  730. package/src/thirdparty/_merge.js +0 -32
  731. package/src/thirdparty/es6-string-methods.js +0 -182
  732. package/src/thirdparty/events-polyfills.js +0 -89
  733. package/src/thirdparty/fetch.js +0 -1
  734. package/src/thirdparty/isPlainObject.js +0 -18
  735. package/src/thirdparty/merge.js +0 -10
  736. package/src/thirdparty/template.js +0 -600
  737. package/src/thirdparty/webcomponents-sd-ce-pf.js +0 -318
  738. package/src/types/AnimationMode.js +0 -7
  739. package/src/types/CSSSize.js +0 -9
  740. package/src/types/CalendarType.js +0 -22
  741. package/src/types/DataType.js +0 -25
  742. package/src/types/Integer.js +0 -9
  743. package/src/types/ItemNavigationBehavior.js +0 -21
  744. package/src/types/NavigationMode.js +0 -6
  745. package/src/types/PopupState.js +0 -37
  746. package/src/types/ValueState.js +0 -22
  747. package/src/util/FetchHelper.js +0 -31
  748. package/src/util/FocusableElements.js +0 -60
  749. package/src/util/StringHelper.js +0 -26
  750. package/src/util/TabbableElements.js +0 -43
  751. package/src/util/createStyleInHead.js +0 -18
  752. package/src/util/detectNavigatorLanguage.js +0 -11
  753. package/src/util/formatMessage.js +0 -23
  754. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  755. package/src/util/isDescendantOf.js +0 -15
  756. package/src/util/isNodeClickable.js +0 -19
  757. package/src/util/isNodeHidden.js +0 -13
  758. package/src/util/isNodeTabbable.js +0 -28
  759. package/src/util/isValidPropertyName.js +0 -20
  760. package/src/util/whenDOMReady.js +0 -13
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeRoot.js","sourceRoot":"","sources":["../../src/config/ThemeRoot.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,6BAA6B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,IAAI,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,aAAiC,CAAC;AAEtC,wBAAwB,CAAC,GAAG,EAAE;IAC7B,aAAa,GAAG,SAAS,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,GAAuB,EAAE;IAC7C,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACjC,aAAa,GAAG,sBAAsB,EAAE,CAAC;IAC1C,CAAC;IAED,OAAO,aAAa,CAAC;AACtB,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,YAAY,GAAG,CAAC,SAAiB,EAA6B,EAAE;IACrE,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO;IACR,CAAC;IAED,aAAa,GAAG,SAAS,CAAC;IAE1B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,OAAO,SAAS,0FAA0F,CAAC,CAAC,CAAC,sBAAsB;QAChJ,OAAO;IACR,CAAC;IAED,OAAO,6BAA6B,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE;IACzC,OAAO,GAAG,YAAY,EAAG,gBAAgB,KAAK,oBAAoB,CAAC,CAAC,0CAA0C;AAC/G,CAAC,CAAC;AAEF,MAAM,6BAA6B,GAAG,KAAK,EAAE,KAAa,EAAiB,EAAE;IAC5E,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,gCAAgC,KAAK,IAAI,CAAC,CAAC;IAE/E,IAAI,IAAI,EAAE,CAAC;QACV,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,gBAAgB,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,4BAA4B,EAAE,KAAK,EAAE,CAAC,CAAC;AACzF,CAAC,CAAC;AAEF,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,6BAA6B,GAC7B,CAAC","sourcesContent":["import createLinkInHead from \"../util/createLinkInHead.js\";\nimport validateThemeRoot from \"../validateThemeRoot.js\";\nimport { getThemeRoot as getConfiguredThemeRoot } from \"../InitialConfiguration.js\";\nimport { getTheme } from \"./Theme.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet currThemeRoot: string | undefined;\n\nattachConfigurationReset(() => {\n\tcurrThemeRoot = undefined;\n});\n\n/**\n * Returns the current theme root.\n *\n * @public\n * @since 1.14.0\n * @returns { string } the current theme root\n */\nconst getThemeRoot = (): string | undefined => {\n\tif (currThemeRoot === undefined) {\n\t\tcurrThemeRoot = getConfiguredThemeRoot();\n\t}\n\n\treturn currThemeRoot;\n};\n\n/**\n * Sets theme root for the current theme.\n * When set, the framework will validate the theme root and fetch the theme styles (CSS variables) from this location.\n *\n * **Note:** The feature is specific to custom themes, created with the `UI Theme Designer`.\n * The provided theme root is used only as a base to construct the actual location of the theme styles: `{themeRoot}/.../css_variables.css`.\n *\n * **Note:** Certain security restrictions will apply before fetching the theme assets.\n * Absolute URLs to a different origin than the current page will result in using the current page as an origin.\n * To allow specific origins, use &lt;meta name=\"sap-allowedThemeOrigins\" content=\"https://my-example-host.com/\"&gt; tag inside the &lt;head&gt; of the page.\n *\n * @public\n * @since 1.14.0\n * @param { string } themeRoot the new theme root\n * @returns { Promise<void> }\n */\nconst setThemeRoot = (themeRoot: string): Promise<void> | undefined => {\n\tif (currThemeRoot === themeRoot) {\n\t\treturn;\n\t}\n\n\tcurrThemeRoot = themeRoot;\n\n\tif (!validateThemeRoot(themeRoot)) {\n\t\tconsole.warn(`The ${themeRoot} is not valid. Check the allowed origins as suggested in the \"setThemeRoot\" description.`); // eslint-disable-line\n\t\treturn;\n\t}\n\n\treturn attachCustomThemeStylesToHead(getTheme());\n};\n\nconst formatThemeLink = (theme: string) => {\n\treturn `${getThemeRoot()!}Base/baseLib/${theme}/css_variables.css`; // theme root is always set at this point.\n};\n\nconst attachCustomThemeStylesToHead = async (theme: string): Promise<void> => {\n\tconst link = document.querySelector(`[sap-ui-webcomponents-theme=\"${theme}\"]`);\n\n\tif (link) {\n\t\tdocument.head.removeChild(link);\n\t}\n\n\tawait createLinkInHead(formatThemeLink(theme), { \"sap-ui-webcomponents-theme\": theme });\n};\n\nexport {\n\tgetThemeRoot,\n\tsetThemeRoot,\n\tattachCustomThemeStylesToHead,\n};\n"]}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Returns the configured IANA timezone ID.
3
+ *
4
+ * @private
5
+ * @returns {string}
6
+ */
7
+ declare const getTimezone: () => string | undefined;
8
+ /**
9
+ * Sets the IANA timezone ID.
10
+ * **For example:** "America/New_York", "Europe/London", "Australia/Sydney", "Asia/Bishkek", etc.
11
+ *>
12
+ * @param {string} timezone
13
+ * @private
14
+ * @returns { Promise<void> }
15
+ */
16
+ declare const setTimezone: (timezone: string) => void;
17
+ export { getTimezone, setTimezone, };
@@ -0,0 +1,34 @@
1
+ import { getTimezone as getConfiguredTimezone } from "../InitialConfiguration.js";
2
+ import { attachConfigurationReset } from "./ConfigurationReset.js";
3
+ let currTimezone;
4
+ attachConfigurationReset(() => {
5
+ currTimezone = undefined;
6
+ });
7
+ /**
8
+ * Returns the configured IANA timezone ID.
9
+ *
10
+ * @private
11
+ * @returns {string}
12
+ */
13
+ const getTimezone = () => {
14
+ if (currTimezone === undefined) {
15
+ currTimezone = getConfiguredTimezone();
16
+ }
17
+ return currTimezone;
18
+ };
19
+ /**
20
+ * Sets the IANA timezone ID.
21
+ * **For example:** "America/New_York", "Europe/London", "Australia/Sydney", "Asia/Bishkek", etc.
22
+ *>
23
+ * @param {string} timezone
24
+ * @private
25
+ * @returns { Promise<void> }
26
+ */
27
+ const setTimezone = (timezone) => {
28
+ if (currTimezone === timezone) {
29
+ return;
30
+ }
31
+ currTimezone = timezone;
32
+ };
33
+ export { getTimezone, setTimezone, };
34
+ //# sourceMappingURL=Timezone.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Timezone.js","sourceRoot":"","sources":["../../src/config/Timezone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,IAAI,YAAgC,CAAC;AAErC,wBAAwB,CAAC,GAAG,EAAE;IAC7B,YAAY,GAAG,SAAS,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAChC,YAAY,GAAG,qBAAqB,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,YAAY,CAAC;AACrB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,EAAE;IACxC,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO;IACR,CAAC;IAED,YAAY,GAAG,QAAQ,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,WAAW,GACX,CAAC","sourcesContent":["import { getTimezone as getConfiguredTimezone } from \"../InitialConfiguration.js\";\nimport { attachConfigurationReset } from \"./ConfigurationReset.js\";\n\nlet currTimezone: string | undefined;\n\nattachConfigurationReset(() => {\n\tcurrTimezone = undefined;\n});\n\n/**\n * Returns the configured IANA timezone ID.\n *\n * @private\n * @returns {string}\n */\nconst getTimezone = (): string | undefined => {\n\tif (currTimezone === undefined) {\n\t\tcurrTimezone = getConfiguredTimezone();\n\t}\n\treturn currTimezone;\n};\n\n/**\n * Sets the IANA timezone ID.\n * **For example:** \"America/New_York\", \"Europe/London\", \"Australia/Sydney\", \"Asia/Bishkek\", etc.\n *>\n * @param {string} timezone\n * @private\n * @returns { Promise<void> }\n */\nconst setTimezone = (timezone: string) => {\n\tif (currTimezone === timezone) {\n\t\treturn;\n\t}\n\n\tcurrTimezone = timezone;\n};\n\nexport {\n\tgetTimezone,\n\tsetTimezone,\n};\n"]}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Returns if the "enableDefaultTooltips" configuration is set.
3
+ * @public
4
+ * @since 2.1.0
5
+ * @returns { boolean }
6
+ */
7
+ declare const getEnableDefaultTooltips: () => boolean;
8
+ /**
9
+ * Defines the "enableDefaultTooltips" setting.
10
+ *
11
+ * - When set to "true" (default), the components will display default tooltips.
12
+ * - When set to "false", the components will NOT display default tooltips.
13
+ *
14
+ * @public
15
+ * @since 2.1.0
16
+ * @param { boolean } enableDefaultTooltips
17
+ */
18
+ declare const setEnableDefaultTooltips: (enableDefaultTooltips: boolean) => void;
19
+ export { getEnableDefaultTooltips, setEnableDefaultTooltips, };
@@ -0,0 +1,29 @@
1
+ import { getEnableDefaultTooltips as getConfiguredEnableDefaultTooltips } from "../InitialConfiguration.js";
2
+ let _enableDefaultTooltips;
3
+ /**
4
+ * Returns if the "enableDefaultTooltips" configuration is set.
5
+ * @public
6
+ * @since 2.1.0
7
+ * @returns { boolean }
8
+ */
9
+ const getEnableDefaultTooltips = () => {
10
+ if (_enableDefaultTooltips === undefined) {
11
+ _enableDefaultTooltips = getConfiguredEnableDefaultTooltips();
12
+ }
13
+ return _enableDefaultTooltips;
14
+ };
15
+ /**
16
+ * Defines the "enableDefaultTooltips" setting.
17
+ *
18
+ * - When set to "true" (default), the components will display default tooltips.
19
+ * - When set to "false", the components will NOT display default tooltips.
20
+ *
21
+ * @public
22
+ * @since 2.1.0
23
+ * @param { boolean } enableDefaultTooltips
24
+ */
25
+ const setEnableDefaultTooltips = (enableDefaultTooltips) => {
26
+ _enableDefaultTooltips = enableDefaultTooltips;
27
+ };
28
+ export { getEnableDefaultTooltips, setEnableDefaultTooltips, };
29
+ //# sourceMappingURL=Tooltips.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltips.js","sourceRoot":"","sources":["../../src/config/Tooltips.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,IAAI,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAE5G,IAAI,sBAA+B,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,wBAAwB,GAAG,GAAY,EAAE;IAC9C,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;QAC1C,sBAAsB,GAAG,kCAAkC,EAAE,CAAC;IAC/D,CAAC;IAED,OAAO,sBAAsB,CAAC;AAC/B,CAAC,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,wBAAwB,GAAG,CAAC,qBAA8B,EAAE,EAAE;IACnE,sBAAsB,GAAG,qBAAqB,CAAC;AAChD,CAAC,CAAC;AAEF,OAAO,EACN,wBAAwB,EACxB,wBAAwB,GACxB,CAAC","sourcesContent":["import { getEnableDefaultTooltips as getConfiguredEnableDefaultTooltips } from \"../InitialConfiguration.js\";\n\nlet _enableDefaultTooltips: boolean;\n\n/**\n * Returns if the \"enableDefaultTooltips\" configuration is set.\n * @public\n * @since 2.1.0\n * @returns { boolean }\n */\nconst getEnableDefaultTooltips = (): boolean => {\n\tif (_enableDefaultTooltips === undefined) {\n\t\t_enableDefaultTooltips = getConfiguredEnableDefaultTooltips();\n\t}\n\n\treturn _enableDefaultTooltips;\n};\n\n/**\n * Defines the \"enableDefaultTooltips\" setting.\n *\n * - When set to \"true\" (default), the components will display default tooltips.\n * - When set to \"false\", the components will NOT display default tooltips.\n *\n * @public\n * @since 2.1.0\n * @param { boolean } enableDefaultTooltips\n */\nconst setEnableDefaultTooltips = (enableDefaultTooltips: boolean) => {\n\t_enableDefaultTooltips = enableDefaultTooltips;\n};\n\nexport {\n\tgetEnableDefaultTooltips,\n\tsetEnableDefaultTooltips,\n};\n"]}
@@ -0,0 +1,9 @@
1
+ import type UI5Element from "./UI5Element.js";
2
+ type ConnectOptions = {
3
+ host: UI5Element;
4
+ propName: string;
5
+ onConnect?: (friend: HTMLElement) => void;
6
+ onDisconnect?: (friend: HTMLElement) => void;
7
+ };
8
+ declare const connectToComponent: (options: ConnectOptions) => HTMLElement | undefined;
9
+ export default connectToComponent;
@@ -0,0 +1,59 @@
1
+ import { renderDeferred } from "./Render.js";
2
+ const MISSING_ELEMENT_POLL_TIMEOUT = 500; // how often to poll for not-yet-in-DOM friend elements
3
+ const connections = new Map();
4
+ const intervals = new Map();
5
+ const connectToComponent = (options) => {
6
+ const host = options.host;
7
+ const propName = options.propName;
8
+ const friend = host[propName];
9
+ let connectedTo;
10
+ if (friend === undefined || friend === "") {
11
+ connectedTo = undefined; // do not return early even if a "menu" property is not set - it may have been set before and cleanup must run
12
+ }
13
+ else if (friend instanceof HTMLElement) {
14
+ connectedTo = friend;
15
+ }
16
+ else {
17
+ const rootNode = host.getRootNode();
18
+ connectedTo = (rootNode.getElementById && rootNode.getElementById(friend)) || undefined;
19
+ }
20
+ const key = `${host._id}-${propName}`;
21
+ const prevConnectedTo = connections.get(key);
22
+ // Not connected - return undefined
23
+ if (!connectedTo) {
24
+ if (prevConnectedTo) { // but first disconnect, if needed
25
+ options.onDisconnect && options.onDisconnect(prevConnectedTo);
26
+ connections.delete(key);
27
+ }
28
+ // if friend element not in DOM yet, start polling
29
+ if (typeof friend === "string" && friend && !intervals.has(key)) {
30
+ const interval = setInterval(() => {
31
+ const rootNode = host.getRootNode();
32
+ const found = (rootNode.getElementById && rootNode.getElementById(friend));
33
+ if (found) {
34
+ clearInterval(intervals.get(key));
35
+ intervals.delete(key);
36
+ renderDeferred(host);
37
+ }
38
+ }, MISSING_ELEMENT_POLL_TIMEOUT);
39
+ intervals.set(key, interval);
40
+ }
41
+ return;
42
+ }
43
+ // If connected, but still polling, stop polling
44
+ if (intervals.has(key)) {
45
+ clearInterval(intervals.get(key));
46
+ intervals.delete(key);
47
+ }
48
+ // Connected - either for the first time, or to something else
49
+ if (prevConnectedTo !== connectedTo) {
50
+ if (prevConnectedTo) {
51
+ options.onDisconnect && options.onDisconnect(prevConnectedTo);
52
+ }
53
+ options.onConnect && options.onConnect(connectedTo);
54
+ connections.set(key, connectedTo);
55
+ }
56
+ return connections.get(key);
57
+ };
58
+ export default connectToComponent;
59
+ //# sourceMappingURL=connectToComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectToComponent.js","sourceRoot":"","sources":["../src/connectToComponent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,4BAA4B,GAAG,GAAG,CAAC,CAAC,uDAAuD;AACjG,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAC;AACnD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;AAS9C,MAAM,kBAAkB,GAAG,CAAC,OAAuB,EAA2B,EAAE;IAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,MAAM,MAAM,GAAG,IAAI,CAAC,QAA6B,CAAqC,CAAC;IAEvF,IAAI,WAAoC,CAAC;IACzC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAC3C,WAAW,GAAG,SAAS,CAAC,CAAC,8GAA8G;IACxI,CAAC;SAAM,IAAI,MAAM,YAAY,WAAW,EAAE,CAAC;QAC1C,WAAW,GAAG,MAAM,CAAC;IACtB,CAAC;SAAM,CAAC;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAc,CAAC;QAChD,WAAW,GAAG,CAAC,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAC;IACzF,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,QAAQ,EAAE,CAAC;IACtC,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE7C,mCAAmC;IACnC,IAAI,CAAC,WAAW,EAAE,CAAC;QAClB,IAAI,eAAe,EAAE,CAAC,CAAC,kCAAkC;YACxD,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YAC9D,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,kDAAkD;QAClD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACjE,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;gBACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAc,CAAC;gBAChD,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;gBAE3E,IAAI,KAAK,EAAE,CAAC;oBACX,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBAClC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACtB,cAAc,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;YACF,CAAC,EAAE,4BAA4B,CAAC,CAAC;YACjC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO;IACR,CAAC;IAED,gDAAgD;IAChD,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAClC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,8DAA8D;IAC9D,IAAI,eAAe,KAAK,WAAW,EAAE,CAAC;QACrC,IAAI,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACpD,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC","sourcesContent":["import type UI5Element from \"./UI5Element.js\";\nimport { renderDeferred } from \"./Render.js\";\nimport type { Interval } from \"./types.js\";\n\nconst MISSING_ELEMENT_POLL_TIMEOUT = 500; // how often to poll for not-yet-in-DOM friend elements\nconst connections = new Map<string, HTMLElement>();\nconst intervals = new Map<string, Interval>();\n\ntype ConnectOptions = {\n\thost: UI5Element;\n\tpropName: string;\n\tonConnect?: (friend: HTMLElement) => void;\n\tonDisconnect?: (friend: HTMLElement) => void;\n}\n\nconst connectToComponent = (options: ConnectOptions): HTMLElement | undefined => {\n\tconst host = options.host;\n\tconst propName = options.propName;\n\tconst friend = host[propName as keyof typeof host] as HTMLElement | string | undefined;\n\n\tlet connectedTo: HTMLElement | undefined;\n\tif (friend === undefined || friend === \"\") {\n\t\tconnectedTo = undefined; // do not return early even if a \"menu\" property is not set - it may have been set before and cleanup must run\n\t} else if (friend instanceof HTMLElement) {\n\t\tconnectedTo = friend;\n\t} else {\n\t\tconst rootNode = host.getRootNode() as Document;\n\t\tconnectedTo = (rootNode.getElementById && rootNode.getElementById(friend)) || undefined;\n\t}\n\n\tconst key = `${host._id}-${propName}`;\n\tconst prevConnectedTo = connections.get(key);\n\n\t// Not connected - return undefined\n\tif (!connectedTo) {\n\t\tif (prevConnectedTo) { // but first disconnect, if needed\n\t\t\toptions.onDisconnect && options.onDisconnect(prevConnectedTo);\n\t\t\tconnections.delete(key);\n\t\t}\n\n\t\t// if friend element not in DOM yet, start polling\n\t\tif (typeof friend === \"string\" && friend && !intervals.has(key)) {\n\t\t\tconst interval = setInterval(() => {\n\t\t\t\tconst rootNode = host.getRootNode() as Document;\n\t\t\t\tconst found = (rootNode.getElementById && rootNode.getElementById(friend));\n\n\t\t\t\tif (found) {\n\t\t\t\t\tclearInterval(intervals.get(key));\n\t\t\t\t\tintervals.delete(key);\n\t\t\t\t\trenderDeferred(host);\n\t\t\t\t}\n\t\t\t}, MISSING_ELEMENT_POLL_TIMEOUT);\n\t\t\tintervals.set(key, interval);\n\t\t}\n\n\t\treturn;\n\t}\n\n\t// If connected, but still polling, stop polling\n\tif (intervals.has(key)) {\n\t\tclearInterval(intervals.get(key));\n\t\tintervals.delete(key);\n\t}\n\n\t// Connected - either for the first time, or to something else\n\tif (prevConnectedTo !== connectedTo) {\n\t\tif (prevConnectedTo) {\n\t\t\toptions.onDisconnect && options.onDisconnect(prevConnectedTo);\n\t\t}\n\t\toptions.onConnect && options.onConnect(connectedTo);\n\t\tconnections.set(key, connectedTo);\n\t}\n\n\treturn connections.get(key);\n};\n\nexport default connectToComponent;\n"]}
@@ -0,0 +1,5 @@
1
+ declare const DOMReferenceConverter: {
2
+ toAttribute(propertyValue: string | HTMLElement): string | null;
3
+ fromAttribute(value: string | null): string | null;
4
+ };
5
+ export default DOMReferenceConverter;
@@ -0,0 +1,13 @@
1
+ const DOMReferenceConverter = {
2
+ toAttribute(propertyValue) {
3
+ if (propertyValue instanceof HTMLElement) {
4
+ return null;
5
+ }
6
+ return propertyValue;
7
+ },
8
+ fromAttribute(value) {
9
+ return value;
10
+ },
11
+ };
12
+ export default DOMReferenceConverter;
13
+ //# sourceMappingURL=DOMReference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DOMReference.js","sourceRoot":"","sources":["../../src/converters/DOMReference.ts"],"names":[],"mappings":"AAAA,MAAM,qBAAqB,GAAG;IAC7B,WAAW,CAAC,aAAmC;QAC9C,IAAI,aAAa,YAAY,WAAW,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,aAAa,CAAC;IACtB,CAAC;IACD,aAAa,CAAC,KAAoB;QACjC,OAAO,KAAK,CAAC;IACd,CAAC;CACD,CAAC;AAEF,eAAe,qBAAqB,CAAC","sourcesContent":["const DOMReferenceConverter = {\n\ttoAttribute(propertyValue: string | HTMLElement) {\n\t\tif (propertyValue instanceof HTMLElement) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn propertyValue;\n\t},\n\tfromAttribute(value: string | null) {\n\t\treturn value;\n\t},\n};\n\nexport default DOMReferenceConverter;\n"]}
@@ -0,0 +1,80 @@
1
+ .busy-indicator-wrapper {
2
+ position: relative;
3
+ height: 100%;
4
+ width: 100%;
5
+ }
6
+
7
+ .busy-indicator-overlay {
8
+ display: var(--ui5_web_components_busy_indicator_display);
9
+ position: absolute;
10
+ inset: 0;
11
+ background: var(--ui5_web_components_busy_indicator_background-color);
12
+ z-index: 99;
13
+ }
14
+
15
+ .busy-indicator-busy-area {
16
+ display: var(--ui5_web_components_busy_indicator_display);
17
+ position: absolute;
18
+ z-index: 99;
19
+ inset: 0;
20
+ justify-content: center;
21
+ align-items: center;
22
+ background-color: inherit;
23
+ flex-direction: column;
24
+ color: var(--_ui5_busy_indicator_color);
25
+ }
26
+
27
+ :host([__is-busy]) .busy-indicator-wrapper > :not(.busy-indicator-busy-area):not(.busy-indicator-overlay):not([busy-indicator-before-span]) {
28
+ --ui5_web_components_busy_indicator_display: none;
29
+ }
30
+
31
+ .busy-indicator-busy-area:focus {
32
+ outline: var(--_ui5_busy_indicator_focus_outline);
33
+ outline-offset: -.125rem;
34
+ }
35
+
36
+ .busy-indicator-circle {
37
+ width: 1rem;
38
+ height: 1rem;
39
+ display: inline-block;
40
+ background-color: currentColor;
41
+ border-radius: 50%;
42
+ }
43
+
44
+ .circle-animation-0 {
45
+ animation: grow 1.6s infinite cubic-bezier(0.32, 0.06, 0.85, 1.11);
46
+ }
47
+
48
+ .circle-animation-1 {
49
+ animation: grow 1.6s infinite cubic-bezier(0.32, 0.06, 0.85, 1.11);
50
+ animation-delay: 200ms;
51
+ }
52
+
53
+ .circle-animation-2 {
54
+ animation: grow 1.6s infinite cubic-bezier(0.32, 0.06, 0.85, 1.11);
55
+ animation-delay: 400ms;
56
+ }
57
+
58
+ .sapUiLocalBusy {
59
+ --ui5_web_components_busy_indicator_display: none;
60
+ }
61
+
62
+ .busy-indicator-wrapper [ui5-busy-indicator] {
63
+ display: none;
64
+ }
65
+
66
+ @keyframes grow {
67
+ 0%, 50%, 100% {
68
+ -webkit-transform: scale(0.5);
69
+ -moz-transform: scale(0.5);
70
+ -ms-transform: scale(0.5);
71
+ transform: scale(0.5);
72
+ }
73
+
74
+ 25% {
75
+ -webkit-transform: scale(1);
76
+ -moz-transform: scale(1);
77
+ -ms-transform: scale(1);
78
+ transform: scale(1);
79
+ }
80
+ }
@@ -0,0 +1,96 @@
1
+ @font-face {
2
+ font-family: "72";
3
+ font-style: normal;
4
+ font-weight: 400;
5
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2"), local("72");
6
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
7
+ }
8
+
9
+ @font-face {
10
+ font-family: "72full";
11
+ font-style: normal;
12
+ font-weight: 400;
13
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2"), local('72-full');
14
+ }
15
+
16
+ @font-face {
17
+ font-family: "72";
18
+ font-style: normal;
19
+ font-weight: 700;
20
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"), local('72-Bold');
21
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
22
+ }
23
+
24
+ @font-face {
25
+ font-family: "72full";
26
+ font-style: normal;
27
+ font-weight: 700;
28
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2");
29
+ }
30
+
31
+ @font-face {
32
+ font-family: '72-Bold';
33
+ font-style: normal;
34
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"), local('72-Bold');
35
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
36
+ }
37
+
38
+ @font-face {
39
+ font-family: '72-Boldfull';
40
+ font-style: normal;
41
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2");
42
+ }
43
+
44
+ @font-face {
45
+ font-family: '72-Light';
46
+ font-style: normal;
47
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Light.woff2?ui5-webcomponents) format("woff2"), local('72-Light');
48
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
49
+ }
50
+
51
+ @font-face {
52
+ font-family: '72-Lightfull';
53
+ font-style: normal;
54
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Light-full.woff2?ui5-webcomponents) format("woff2");
55
+ }
56
+
57
+ @font-face {
58
+ font-family: '72Mono';
59
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Regular.woff2?ui5-webcomponents) format('woff2'), local('72Mono');
60
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
61
+ }
62
+
63
+ @font-face {
64
+ font-family: '72Monofull';
65
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Regular-full.woff2?ui5-webcomponents) format('woff2');
66
+ }
67
+
68
+ @font-face {
69
+ font-family: '72Mono-Bold';
70
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Bold.woff2?ui5-webcomponents) format('woff2'), local('72Mono-Bold');
71
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
72
+ }
73
+
74
+ @font-face {
75
+ font-family: '72Mono-Boldfull';
76
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Bold-full.woff2?ui5-webcomponents) format('woff2');
77
+ }
78
+
79
+ @font-face {
80
+ font-family: "72Black";
81
+ font-style: bold;
82
+ font-weight: 900;
83
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2"), local('72Black');
84
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
85
+ }
86
+
87
+ @font-face {
88
+ font-family: '72Blackfull';
89
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black-full.woff2?ui5-webcomponents) format('woff2');
90
+ }
91
+
92
+ @font-face {
93
+ font-family: "72-SemiboldDuplex";
94
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-SemiboldDuplex.woff2?ui5-webcomponents) format("woff2"), local('72-SemiboldDuplex');
95
+ unicode-range: U+00, U+0D, U+20-7E, U+A0-FF, U+131, U+152-153, U+161, U+178, U+17D-17E, U+192, U+237, U+2C6, U+2DC, U+3BC, U+1E9E, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122;
96
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Some diacritics are supported by the 72 font:
3
+ * * Grave
4
+ * * Acute
5
+ * * Circumflex
6
+ * * Tilde
7
+ *
8
+ * However, the following diacritics and the combination of multiple diacritics (including the supported ones) are not supported:
9
+ * * Breve
10
+ * * Horn
11
+ * * Dot below
12
+ * * Hook above
13
+ *
14
+ *
15
+ * Override for the characters that aren't covered by the '72' font to other system fonts
16
+ *
17
+ * U+0102-0103: A and a with Breve
18
+ * U+01A0-01A1: O and o with Horn
19
+ * U+01AF-01B0: U and u with Horn
20
+ * U+1EA0-1EB7: A and a with diacritics that are not supported by the font and combination of multiple diacritics
21
+ * U+1EB8-1EC7: E and e with diacritics that are not supported by the font and combination of multiple diacritics
22
+ * U+1EC8-1ECB: I and i with diacritics that are not supported by the font and combination of multiple diacritics
23
+ * U+1ECC-1EE3: O and o with diacritics that are not supported by the font and combination of multiple diacritics
24
+ * U+1EE4-1EF1: U and u with diacritics that are not supported by the font and combination of multiple diacritics
25
+ * U+1EF4-1EF7: Y and y with diacritics that are not supported by the font and combination of multiple diacritics
26
+ *
27
+ */
28
+ @font-face {
29
+ font-family: '72override';
30
+ unicode-range: U+0102-0103, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EB7, U+1EB8-1EC7, U+1EC8-1ECB, U+1ECC-1EE3, U+1EE4-1EF1, U+1EF4-1EF7;
31
+ src: local('Arial'), local('Helvetica'), local('sans-serif');
32
+ }
@@ -0,0 +1,9 @@
1
+ :root {
2
+ --_ui5_content_density:cozy;
3
+ }
4
+
5
+ [data-ui5-compact-size],
6
+ .ui5-content-density-compact,
7
+ .sapUiSizeCompact {
8
+ --_ui5_content_density:compact;
9
+ }
@@ -0,0 +1 @@
1
+ export default function bound(target: any, key: string | symbol, descriptor: any): any;
@@ -0,0 +1,34 @@
1
+ export default function bound(target, key, descriptor) {
2
+ if (!(typeof target[key] === "function")) {
3
+ throw new Error(`@bound decorator can only be applied to methods, received ${String(key)}: ${typeof target[key]}`);
4
+ }
5
+ let fn = descriptor.value;
6
+ return {
7
+ configurable: true,
8
+ get() {
9
+ if (!(this instanceof target.constructor)) {
10
+ return fn;
11
+ }
12
+ // if the property is already defined on the instance, then this call is a super call
13
+ if (Object.hasOwnProperty.call(this, key)) {
14
+ return fn;
15
+ }
16
+ let boundFn = fn.bind(this);
17
+ Object.defineProperty(this, key, {
18
+ configurable: true,
19
+ get() {
20
+ return boundFn;
21
+ },
22
+ set(value) {
23
+ // setting a value on the instance means they overwrite the default behaviour
24
+ boundFn = value;
25
+ },
26
+ });
27
+ return boundFn;
28
+ },
29
+ set(value) {
30
+ fn = value;
31
+ },
32
+ };
33
+ }
34
+ //# sourceMappingURL=bound.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bound.js","sourceRoot":"","sources":["../../src/decorators/bound.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,MAAW,EAAE,GAAoB,EAAE,UAAe;IAC/E,IAAI,CAAC,CAAC,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,6DAA6D,MAAM,CAAC,GAAG,CAAC,KAAK,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpH,CAAC;IAED,IAAI,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC;IAC1B,OAAO;QACN,YAAY,EAAE,IAAI;QAClB,GAAG;YACF,IAAI,CAAC,CAAC,IAAI,YAAY,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3C,OAAO,EAAE,CAAC;YACX,CAAC;YAED,qFAAqF;YACrF,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC3C,OAAO,EAAE,CAAC;YACX,CAAC;YAED,IAAI,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE5B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE;gBAChC,YAAY,EAAE,IAAI;gBAClB,GAAG;oBACF,OAAO,OAAO,CAAC;gBAChB,CAAC;gBACD,GAAG,CAAC,KAAU;oBACb,6EAA6E;oBAC7E,OAAO,GAAG,KAAK,CAAC;gBACjB,CAAC;aACD,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QAChB,CAAC;QACD,GAAG,CAAC,KAAU;YACb,EAAE,GAAG,KAAK,CAAC;QACZ,CAAC;KACD,CAAC;AACH,CAAC","sourcesContent":["export default function bound(target: any, key: string | symbol, descriptor: any): any {\n\tif (!(typeof target[key] === \"function\")) {\n\t\tthrow new Error(`@bound decorator can only be applied to methods, received ${String(key)}: ${typeof target[key]}`);\n\t}\n\n\tlet fn = descriptor.value;\n\treturn {\n\t\tconfigurable: true,\n\t\tget(): any {\n\t\t\tif (!(this instanceof target.constructor)) {\n\t\t\t\treturn fn;\n\t\t\t}\n\n\t\t\t// if the property is already defined on the instance, then this call is a super call\n\t\t\tif (Object.hasOwnProperty.call(this, key)) {\n\t\t\t\treturn fn;\n\t\t\t}\n\n\t\t\tlet boundFn = fn.bind(this);\n\n\t\t\tObject.defineProperty(this, key, {\n\t\t\t\tconfigurable: true,\n\t\t\t\tget(): any {\n\t\t\t\t\treturn boundFn;\n\t\t\t\t},\n\t\t\t\tset(value: any): void {\n\t\t\t\t\t// setting a value on the instance means they overwrite the default behaviour\n\t\t\t\t\tboundFn = value;\n\t\t\t\t},\n\t\t\t});\n\t\t\treturn boundFn;\n\t\t},\n\t\tset(value: any): void {\n\t\t\tfn = value;\n\t\t},\n\t};\n}\n"]}
@@ -0,0 +1,62 @@
1
+ import type UI5Element from "../UI5Element.js";
2
+ import type { Renderer } from "../UI5Element.js";
3
+ import type { TemplateFunction as Template } from "../renderer/executeTemplate.js";
4
+ import type { ComponentStylesData as Styles } from "../types.js";
5
+ /**
6
+ * Returns a custom element class decorator.
7
+ *
8
+ * @param { string | object } tagNameOrComponentSettings
9
+ * @returns { ClassDecorator }
10
+ */
11
+ declare const customElement: (tagNameOrComponentSettings?: string | {
12
+ /**
13
+ * The tag name of the custom element (will be suffixed if the scoping feature is used).
14
+ */
15
+ tag?: string;
16
+ /**
17
+ * The renderer of the custom element - officially supported are: jsxRenderer and litRender (deprecated).
18
+ */
19
+ renderer?: Renderer;
20
+ /**
21
+ * The styles to be injected into the shadow root of the custom element.
22
+ */
23
+ styles?: Styles;
24
+ /**
25
+ * The template function of the custom element - must match the renderer.
26
+ */
27
+ template?: Template;
28
+ /**
29
+ * Other custom elements used in the shadow root of the custom element.
30
+ * @deprecated no longer necessary for jsxRenderer-enabled components
31
+ */
32
+ dependencies?: Array<typeof UI5Element>;
33
+ /**
34
+ * Whether the custom element should be re-rendered when the language changes.
35
+ */
36
+ languageAware?: boolean;
37
+ /**
38
+ * Whether the custom element should be re-rendered when the theme changes.
39
+ */
40
+ themeAware?: boolean;
41
+ /**
42
+ * Whether the custom element needs the CLDR assets.
43
+ */
44
+ cldr?: boolean;
45
+ /**
46
+ * Whether the custom element supports the F6 Fast navigation feature (is a fast-navigation group).
47
+ */
48
+ fastNavigation?: boolean;
49
+ /**
50
+ * Whether the custom element is form-associated and implements form-relevant features.
51
+ */
52
+ formAssociated?: boolean;
53
+ /**
54
+ * The shadow root options of the custom element.
55
+ */
56
+ shadowRootOptions?: Partial<ShadowRootInit>;
57
+ /**
58
+ * A list of all features, supported by the custom element.
59
+ */
60
+ features?: Array<string>;
61
+ }) => ClassDecorator;
62
+ export default customElement;
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Returns a custom element class decorator.
3
+ *
4
+ * @param { string | object } tagNameOrComponentSettings
5
+ * @returns { ClassDecorator }
6
+ */
7
+ const customElement = (tagNameOrComponentSettings = {}) => {
8
+ return (target) => {
9
+ if (!Object.prototype.hasOwnProperty.call(target, "metadata")) {
10
+ target.metadata = {};
11
+ }
12
+ if (typeof tagNameOrComponentSettings === "string") {
13
+ target.metadata.tag = tagNameOrComponentSettings;
14
+ return;
15
+ }
16
+ const { tag, languageAware, themeAware, cldr, fastNavigation, formAssociated, shadowRootOptions, features, } = tagNameOrComponentSettings;
17
+ target.metadata.tag = tag;
18
+ if (languageAware) {
19
+ target.metadata.languageAware = languageAware;
20
+ }
21
+ if (cldr) {
22
+ target.metadata.cldr = cldr;
23
+ }
24
+ if (features) {
25
+ target.metadata.features = features;
26
+ }
27
+ if (themeAware) {
28
+ target.metadata.themeAware = themeAware;
29
+ }
30
+ if (fastNavigation) {
31
+ target.metadata.fastNavigation = fastNavigation;
32
+ }
33
+ if (formAssociated) {
34
+ target.metadata.formAssociated = formAssociated;
35
+ }
36
+ if (shadowRootOptions) {
37
+ target.metadata.shadowRootOptions = shadowRootOptions;
38
+ }
39
+ ["renderer", "template", "styles", "dependencies"].forEach((customElementEntity) => {
40
+ const customElementEntityValue = tagNameOrComponentSettings[customElementEntity];
41
+ customElementEntityValue && Object.defineProperty(target, customElementEntity, {
42
+ get: () => tagNameOrComponentSettings[customElementEntity],
43
+ });
44
+ });
45
+ };
46
+ };
47
+ export default customElement;
48
+ //# sourceMappingURL=customElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customElement.js","sourceRoot":"","sources":["../../src/decorators/customElement.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,MAAM,aAAa,GAAG,CAAC,6BAkDnB,EAAE,EAAkB,EAAE;IACzB,OAAO,CAAC,MAAW,EAAE,EAAE;QACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC;YAC/D,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,OAAO,0BAA0B,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,0BAA0B,CAAC;YACjD,OAAO;QACR,CAAC;QAED,MAAM,EACL,GAAG,EACH,aAAa,EACb,UAAU,EACV,IAAI,EACJ,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,QAAQ,GACP,GAAG,0BAA0B,CAAC;QAEhC,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC;QAC1B,IAAI,aAAa,EAAE,CAAC;YACnB,MAAM,CAAC,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QAC7B,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACrC,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YAChB,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;QACzC,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;QACjD,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;QACjD,CAAC;QAED,IAAI,iBAAiB,EAAE,CAAC;YACvB,MAAM,CAAC,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QACvD,CAAC;QAED,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,mBAA2B,EAAE,EAAE;YAC1F,MAAM,wBAAwB,GAAG,0BAA0B,CAAC,mBAAuC,CAAC,CAAC;YAErG,wBAAwB,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,mBAAmB,EAAE;gBAC9E,GAAG,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,mBAAuC,CAAC;aAC9E,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC","sourcesContent":["import type UI5Element from \"../UI5Element.js\";\nimport type { Renderer } from \"../UI5Element.js\";\nimport type { TemplateFunction as Template } from \"../renderer/executeTemplate.js\";\nimport type { ComponentStylesData as Styles } from \"../types.js\";\n\n/**\n * Returns a custom element class decorator.\n *\n * @param { string | object } tagNameOrComponentSettings\n * @returns { ClassDecorator }\n */\nconst customElement = (tagNameOrComponentSettings: string | {\n\t/**\n\t * The tag name of the custom element (will be suffixed if the scoping feature is used).\n\t */\n\ttag?: string,\n\t/**\n\t * The renderer of the custom element - officially supported are: jsxRenderer and litRender (deprecated).\n\t */\n\trenderer?: Renderer,\n\t/**\n\t * The styles to be injected into the shadow root of the custom element.\n\t */\n\tstyles?: Styles,\n\t/**\n\t * The template function of the custom element - must match the renderer.\n\t */\n\ttemplate?: Template,\n\t/**\n\t * Other custom elements used in the shadow root of the custom element.\n\t * @deprecated no longer necessary for jsxRenderer-enabled components\n\t */\n\tdependencies?: Array<typeof UI5Element>,\n\t/**\n\t * Whether the custom element should be re-rendered when the language changes.\n\t */\n\tlanguageAware?: boolean,\n\t/**\n\t * Whether the custom element should be re-rendered when the theme changes.\n\t */\n\tthemeAware?: boolean,\n\t/**\n\t * Whether the custom element needs the CLDR assets.\n\t */\n\tcldr?: boolean,\n\t/**\n\t * Whether the custom element supports the F6 Fast navigation feature (is a fast-navigation group).\n\t */\n\tfastNavigation?: boolean,\n\t/**\n\t * Whether the custom element is form-associated and implements form-relevant features.\n\t */\n\tformAssociated?: boolean,\n\t/**\n\t * The shadow root options of the custom element.\n\t */\n\tshadowRootOptions?: Partial<ShadowRootInit>,\n\t/**\n\t * A list of all features, supported by the custom element.\n\t */\n\tfeatures?: Array<string>,\n} = {}): ClassDecorator => {\n\treturn (target: any) => {\n\t\tif (!Object.prototype.hasOwnProperty.call(target, \"metadata\")) {\n\t\t\ttarget.metadata = {};\n\t\t}\n\n\t\tif (typeof tagNameOrComponentSettings === \"string\") {\n\t\t\ttarget.metadata.tag = tagNameOrComponentSettings;\n\t\t\treturn;\n\t\t}\n\n\t\tconst {\n\t\t\ttag,\n\t\t\tlanguageAware,\n\t\t\tthemeAware,\n\t\t\tcldr,\n\t\t\tfastNavigation,\n\t\t\tformAssociated,\n\t\t\tshadowRootOptions,\n\t\t\tfeatures,\n\t\t } = tagNameOrComponentSettings;\n\n\t\ttarget.metadata.tag = tag;\n\t\tif (languageAware) {\n\t\t\ttarget.metadata.languageAware = languageAware;\n\t\t}\n\t\tif (cldr) {\n\t\t\ttarget.metadata.cldr = cldr;\n\t\t}\n\n\t\tif (features) {\n\t\t\ttarget.metadata.features = features;\n\t\t}\n\n\t\tif (themeAware) {\n\t\t\ttarget.metadata.themeAware = themeAware;\n\t\t}\n\t\tif (fastNavigation) {\n\t\t\ttarget.metadata.fastNavigation = fastNavigation;\n\t\t}\n\t\tif (formAssociated) {\n\t\t\ttarget.metadata.formAssociated = formAssociated;\n\t\t}\n\n\t\tif (shadowRootOptions) {\n\t\t\ttarget.metadata.shadowRootOptions = shadowRootOptions;\n\t\t}\n\n\t\t[\"renderer\", \"template\", \"styles\", \"dependencies\"].forEach((customElementEntity: string) => {\n\t\t\tconst customElementEntityValue = tagNameOrComponentSettings[customElementEntity as keyof typeof tag];\n\n\t\t\tcustomElementEntityValue && Object.defineProperty(target, customElementEntity, {\n\t\t\t\tget: () => tagNameOrComponentSettings[customElementEntity as keyof typeof tag],\n\t\t\t});\n\t\t});\n\t};\n};\n\nexport default customElement;\n"]}
@@ -0,0 +1,15 @@
1
+ import type UI5Element from "../UI5Element.js";
2
+ type EventDetailKeys<T extends typeof UI5Element> = keyof InstanceType<T>["eventDetails"];
3
+ type ExtractEventKeys<T extends typeof UI5Element> = EventDetailKeys<T> extends never ? "event name not found in `eventDetails` field" : EventDetailKeys<T>;
4
+ /**
5
+ * Returns an event class decorator.
6
+ *
7
+ * @param { string } name the event name
8
+ * @param { EventData } data the event data
9
+ * @returns { ClassDecorator }
10
+ */
11
+ declare const event: <T extends typeof UI5Element, N extends ExtractEventKeys<T>>(name: N, data?: {
12
+ bubbles?: boolean;
13
+ cancelable?: boolean;
14
+ }) => (target: T) => T | void;
15
+ export default event;