@ui5/webcomponents-base 0.0.0-cc312800a → 0.0.0-ce98ce2bb

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 (636) hide show
  1. package/.eslintignore +8 -4
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +787 -0
  4. package/README.md +57 -7
  5. package/bundle.esm.js +26 -13
  6. package/config/wdio.conf.cjs +400 -0
  7. package/{src/AssetRegistry.js → dist/AssetRegistry.d.ts} +1 -7
  8. package/dist/AssetRegistry.js +2 -7
  9. package/dist/AssetRegistry.js.map +1 -0
  10. package/dist/Boot.d.ts +9 -0
  11. package/dist/Boot.js +56 -28
  12. package/dist/Boot.js.map +1 -0
  13. package/dist/CSP.d.ts +30 -0
  14. package/dist/CSP.js +51 -0
  15. package/dist/CSP.js.map +1 -0
  16. package/dist/CustomElementsRegistry.d.ts +5 -0
  17. package/dist/CustomElementsRegistry.js +69 -30
  18. package/dist/CustomElementsRegistry.js.map +1 -0
  19. package/dist/CustomElementsScope.d.ts +7 -0
  20. package/dist/CustomElementsScope.js +11 -108
  21. package/dist/CustomElementsScope.js.map +1 -0
  22. package/dist/CustomElementsScopeUtils.d.ts +62 -0
  23. package/dist/CustomElementsScopeUtils.js +102 -0
  24. package/dist/CustomElementsScopeUtils.js.map +1 -0
  25. package/dist/DOMObserver.d.ts +11 -0
  26. package/dist/DOMObserver.js +12 -54
  27. package/dist/DOMObserver.js.map +1 -0
  28. package/dist/Device.d.ts +13 -0
  29. package/dist/Device.js +159 -84
  30. package/dist/Device.js.map +1 -0
  31. package/dist/EventProvider.d.ts +25 -0
  32. package/dist/EventProvider.js +67 -88
  33. package/dist/EventProvider.js.map +1 -0
  34. package/dist/FeaturesRegistry.d.ts +3 -0
  35. package/dist/FeaturesRegistry.js +5 -7
  36. package/dist/FeaturesRegistry.js.map +1 -0
  37. package/dist/FontFace.d.ts +2 -0
  38. package/dist/FontFace.js +17 -110
  39. package/dist/FontFace.js.map +1 -0
  40. package/dist/IgnoreCustomElements.d.ts +27 -0
  41. package/dist/IgnoreCustomElements.js +39 -0
  42. package/dist/IgnoreCustomElements.js.map +1 -0
  43. package/dist/InitialConfiguration.d.ts +27 -0
  44. package/dist/InitialConfiguration.js +121 -114
  45. package/dist/InitialConfiguration.js.map +1 -0
  46. package/dist/Keys.d.ts +61 -0
  47. package/dist/Keys.js +178 -229
  48. package/dist/Keys.js.map +1 -0
  49. package/dist/ManagedStyles.d.ts +8 -0
  50. package/dist/ManagedStyles.js +78 -0
  51. package/dist/ManagedStyles.js.map +1 -0
  52. package/dist/MarkedEvents.d.ts +9 -0
  53. package/dist/MarkedEvents.js +15 -0
  54. package/dist/MarkedEvents.js.map +1 -0
  55. package/dist/MediaRange.d.ts +37 -0
  56. package/dist/MediaRange.js +54 -65
  57. package/dist/MediaRange.js.map +1 -0
  58. package/dist/PropertiesFileFormat.d.ts +8 -0
  59. package/dist/PropertiesFileFormat.js +72 -82
  60. package/dist/PropertiesFileFormat.js.map +1 -0
  61. package/dist/Render.d.ts +47 -0
  62. package/dist/Render.js +82 -112
  63. package/dist/Render.js.map +1 -0
  64. package/dist/RenderQueue.d.ts +19 -0
  65. package/dist/RenderQueue.js +52 -62
  66. package/dist/RenderQueue.js.map +1 -0
  67. package/dist/Runtimes.d.ts +27 -0
  68. package/dist/Runtimes.js +86 -0
  69. package/dist/Runtimes.js.map +1 -0
  70. package/dist/StaticArea.d.ts +3 -0
  71. package/dist/StaticArea.js +5 -1
  72. package/dist/StaticArea.js.map +1 -0
  73. package/dist/StaticAreaItem.d.ts +37 -0
  74. package/dist/StaticAreaItem.js +89 -83
  75. package/dist/StaticAreaItem.js.map +1 -0
  76. package/dist/SystemCSSVars.d.ts +2 -0
  77. package/dist/SystemCSSVars.js +6 -28
  78. package/dist/SystemCSSVars.js.map +1 -0
  79. package/{src/Theming.js → dist/Theming.d.ts} +0 -1
  80. package/dist/Theming.js +1 -1
  81. package/dist/Theming.js.map +1 -0
  82. package/dist/UI5Element.d.ts +380 -0
  83. package/dist/UI5Element.js +928 -997
  84. package/dist/UI5Element.js.map +1 -0
  85. package/dist/UI5ElementMetadata.d.ts +150 -0
  86. package/dist/UI5ElementMetadata.js +278 -298
  87. package/dist/UI5ElementMetadata.js.map +1 -0
  88. package/dist/animations/AnimationQueue.d.ts +8 -0
  89. package/dist/animations/AnimationQueue.js +31 -38
  90. package/dist/animations/AnimationQueue.js.map +1 -0
  91. package/dist/animations/animate.d.ts +14 -0
  92. package/dist/animations/animate.js +46 -51
  93. package/dist/animations/animate.js.map +1 -0
  94. package/dist/animations/scroll.d.ts +5 -0
  95. package/dist/animations/scroll.js +18 -27
  96. package/dist/animations/scroll.js.map +1 -0
  97. package/dist/animations/slideDown.d.ts +5 -0
  98. package/dist/animations/slideDown.js +53 -78
  99. package/dist/animations/slideDown.js.map +1 -0
  100. package/dist/animations/slideUp.d.ts +5 -0
  101. package/dist/animations/slideUp.js +49 -70
  102. package/dist/animations/slideUp.js.map +1 -0
  103. package/dist/api.json +1 -0
  104. package/dist/asset-registries/Icons.d.ts +39 -0
  105. package/dist/asset-registries/Icons.js +120 -102
  106. package/dist/asset-registries/Icons.js.map +1 -0
  107. package/dist/asset-registries/Illustrations.d.ts +18 -0
  108. package/dist/asset-registries/Illustrations.js +85 -0
  109. package/dist/asset-registries/Illustrations.js.map +1 -0
  110. package/dist/asset-registries/LocaleData.d.ts +7 -0
  111. package/dist/asset-registries/LocaleData.js +104 -118
  112. package/dist/asset-registries/LocaleData.js.map +1 -0
  113. package/dist/asset-registries/Themes.d.ts +11 -0
  114. package/dist/asset-registries/Themes.js +40 -66
  115. package/dist/asset-registries/Themes.js.map +1 -0
  116. package/dist/asset-registries/i18n.d.ts +23 -0
  117. package/dist/asset-registries/i18n.js +61 -81
  118. package/dist/asset-registries/i18n.js.map +1 -0
  119. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  120. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  121. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  122. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  123. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  124. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  125. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  126. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  127. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  128. package/dist/assets/Boot.34b7cea0.css +1 -0
  129. package/dist/assets/Boot.52ac4401.js +9 -0
  130. package/dist/assets/bundle.esm.6d93df7e.js +50 -0
  131. package/dist/config/AnimationMode.d.ts +14 -0
  132. package/dist/config/AnimationMode.js +21 -18
  133. package/dist/config/AnimationMode.js.map +1 -0
  134. package/dist/config/CalendarType.d.ts +8 -0
  135. package/dist/config/CalendarType.js +13 -12
  136. package/dist/config/CalendarType.js.map +1 -0
  137. package/dist/config/FormatSettings.d.ts +15 -0
  138. package/dist/config/FormatSettings.js +15 -9
  139. package/dist/config/FormatSettings.js.map +1 -0
  140. package/dist/config/Icons.d.ts +40 -0
  141. package/dist/config/Icons.js +44 -0
  142. package/dist/config/Icons.js.map +1 -0
  143. package/dist/config/Language.d.ts +40 -0
  144. package/dist/config/Language.js +43 -43
  145. package/dist/config/Language.js.map +1 -0
  146. package/dist/config/NoConflict.d.ts +20 -0
  147. package/dist/config/NoConflict.js +41 -41
  148. package/dist/config/NoConflict.js.map +1 -0
  149. package/dist/config/RTL.d.ts +7 -0
  150. package/dist/config/RTL.js +26 -20
  151. package/dist/config/RTL.js.map +1 -0
  152. package/dist/config/Theme.d.ts +38 -0
  153. package/dist/config/Theme.js +64 -22
  154. package/dist/config/Theme.js.map +1 -0
  155. package/dist/config/ThemeRoot.d.ts +29 -0
  156. package/dist/config/ThemeRoot.js +59 -0
  157. package/dist/config/ThemeRoot.js.map +1 -0
  158. package/dist/config/Timezone.d.ts +17 -0
  159. package/dist/config/Timezone.js +30 -0
  160. package/dist/config/Timezone.js.map +1 -0
  161. package/dist/connectToComponent.d.ts +9 -0
  162. package/dist/connectToComponent.js +59 -0
  163. package/dist/connectToComponent.js.map +1 -0
  164. package/dist/css/BusyIndicator.css +80 -0
  165. package/dist/css/FontFace.css +84 -0
  166. package/dist/css/OverrideFontFace.css +32 -0
  167. package/dist/css/SystemCSSVars.css +17 -0
  168. package/dist/decorators/customElement.d.ts +23 -0
  169. package/dist/decorators/customElement.js +37 -0
  170. package/dist/decorators/customElement.js.map +1 -0
  171. package/dist/decorators/event.d.ts +10 -0
  172. package/dist/decorators/event.js +24 -0
  173. package/dist/decorators/event.js.map +1 -0
  174. package/dist/decorators/property.d.ts +9 -0
  175. package/dist/decorators/property.js +24 -0
  176. package/dist/decorators/property.js.map +1 -0
  177. package/dist/decorators/slot.d.ts +9 -0
  178. package/dist/decorators/slot.js +37 -0
  179. package/dist/decorators/slot.js.map +1 -0
  180. package/dist/delegate/ItemNavigation.d.ts +113 -0
  181. package/dist/delegate/ItemNavigation.js +277 -246
  182. package/dist/delegate/ItemNavigation.js.map +1 -0
  183. package/dist/delegate/ResizeHandler.d.ts +25 -0
  184. package/dist/delegate/ResizeHandler.js +72 -91
  185. package/dist/delegate/ResizeHandler.js.map +1 -0
  186. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  187. package/dist/delegate/ScrollEnablement.js +157 -174
  188. package/dist/delegate/ScrollEnablement.js.map +1 -0
  189. package/dist/features/F6Navigation.d.ts +19 -0
  190. package/dist/features/F6Navigation.js +151 -0
  191. package/dist/features/F6Navigation.js.map +1 -0
  192. package/dist/features/LegacyDateFormats.d.ts +18 -0
  193. package/dist/features/LegacyDateFormats.js +20 -0
  194. package/dist/features/LegacyDateFormats.js.map +1 -0
  195. package/dist/features/OpenUI5Element.d.ts +9 -0
  196. package/dist/features/OpenUI5Element.js +5 -0
  197. package/dist/features/OpenUI5Element.js.map +1 -0
  198. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  199. package/dist/features/OpenUI5Enablement.js +96 -0
  200. package/dist/features/OpenUI5Enablement.js.map +1 -0
  201. package/dist/features/OpenUI5Support.d.ts +36 -0
  202. package/dist/features/OpenUI5Support.js +150 -121
  203. package/dist/features/OpenUI5Support.js.map +1 -0
  204. package/dist/generated/AssetParameters.js +3 -1
  205. package/dist/generated/VersionInfo.js +10 -0
  206. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  207. package/dist/generated/css/BusyIndicator.css.js +7 -0
  208. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  209. package/dist/generated/css/FontFace.css.d.ts +3 -0
  210. package/dist/generated/css/FontFace.css.js +7 -0
  211. package/dist/generated/css/FontFace.css.js.map +1 -0
  212. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  213. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  214. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  215. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  216. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  217. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  218. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  219. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  220. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  221. package/dist/getSharedResource.d.ts +11 -0
  222. package/dist/getSharedResource.js +28 -18
  223. package/dist/getSharedResource.js.map +1 -0
  224. package/dist/global.d.ts +40 -0
  225. package/dist/i18nBundle.d.ts +43 -0
  226. package/dist/i18nBundle.js +68 -44
  227. package/dist/i18nBundle.js.map +1 -0
  228. package/dist/locale/Locale.d.ts +22 -0
  229. package/dist/locale/Locale.js +75 -87
  230. package/dist/locale/Locale.js.map +1 -0
  231. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  232. package/dist/locale/RTLAwareRegistry.js +6 -11
  233. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  234. package/dist/locale/applyDirection.d.ts +10 -0
  235. package/dist/locale/applyDirection.js +7 -7
  236. package/dist/locale/applyDirection.js.map +1 -0
  237. package/dist/locale/directionChange.d.ts +15 -0
  238. package/dist/locale/directionChange.js +7 -15
  239. package/dist/locale/directionChange.js.map +1 -0
  240. package/dist/locale/getEffectiveDir.d.ts +2 -0
  241. package/dist/locale/getEffectiveDir.js +20 -24
  242. package/dist/locale/getEffectiveDir.js.map +1 -0
  243. package/dist/locale/getLocale.d.ts +7 -0
  244. package/dist/locale/getLocale.js +26 -29
  245. package/dist/locale/getLocale.js.map +1 -0
  246. package/dist/locale/languageChange.d.ts +5 -0
  247. package/dist/locale/languageChange.js +8 -16
  248. package/dist/locale/languageChange.js.map +1 -0
  249. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  250. package/dist/locale/nextFallbackLocale.js +15 -19
  251. package/dist/locale/nextFallbackLocale.js.map +1 -0
  252. package/dist/locale/normalizeLocale.d.ts +7 -0
  253. package/dist/locale/normalizeLocale.js +34 -41
  254. package/dist/locale/normalizeLocale.js.map +1 -0
  255. package/dist/renderer/LitRenderer.d.ts +14 -0
  256. package/dist/renderer/LitRenderer.js +34 -24
  257. package/dist/renderer/LitRenderer.js.map +1 -0
  258. package/dist/renderer/directives/style-map.js +72 -0
  259. package/dist/renderer/executeTemplate.d.ts +13 -0
  260. package/dist/renderer/executeTemplate.js +20 -7
  261. package/dist/renderer/executeTemplate.js.map +1 -0
  262. package/dist/sap/base/Log.js +240 -0
  263. package/dist/sap/base/assert.js +7 -0
  264. package/dist/sap/base/security/URLListValidator.js +159 -0
  265. package/dist/sap/base/security/encodeCSS.js +14 -0
  266. package/dist/sap/base/security/encodeXML.js +23 -0
  267. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  268. package/dist/sap/base/strings/toHex.js +8 -0
  269. package/dist/sap/base/util/now.js +7 -0
  270. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  271. package/dist/theming/CustomStyle.d.ts +6 -0
  272. package/dist/theming/CustomStyle.js +39 -31
  273. package/dist/theming/CustomStyle.js.map +1 -0
  274. package/dist/theming/ThemeLoaded.d.ts +5 -0
  275. package/dist/theming/ThemeLoaded.js +8 -16
  276. package/dist/theming/ThemeLoaded.js.map +1 -0
  277. package/dist/theming/ThemeRegistered.d.ts +4 -0
  278. package/dist/theming/ThemeRegistered.js +11 -0
  279. package/dist/theming/ThemeRegistered.js.map +1 -0
  280. package/dist/theming/applyTheme.d.ts +2 -0
  281. package/dist/theming/applyTheme.js +63 -65
  282. package/dist/theming/applyTheme.js.map +1 -0
  283. package/dist/theming/getConstructableStyle.d.ts +9 -0
  284. package/dist/theming/getConstructableStyle.js +12 -17
  285. package/dist/theming/getConstructableStyle.js.map +1 -0
  286. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  287. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  288. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  289. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  290. package/dist/theming/getEffectiveStyle.js +25 -23
  291. package/dist/theming/getEffectiveStyle.js.map +1 -0
  292. package/dist/theming/getStylesString.d.ts +3 -0
  293. package/dist/theming/getStylesString.js +9 -11
  294. package/dist/theming/getStylesString.js.map +1 -0
  295. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  296. package/dist/theming/getThemeDesignerTheme.js +73 -60
  297. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  298. package/dist/theming/preloadLinks.d.ts +3 -0
  299. package/dist/theming/preloadLinks.js +19 -0
  300. package/dist/theming/preloadLinks.js.map +1 -0
  301. package/dist/thirdparty/_merge.d.ts +2 -0
  302. package/dist/thirdparty/_merge.js +7 -4
  303. package/dist/thirdparty/_merge.js.map +1 -0
  304. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  305. package/dist/thirdparty/isPlainObject.js +11 -10
  306. package/dist/thirdparty/isPlainObject.js.map +1 -0
  307. package/dist/thirdparty/merge.d.ts +2 -0
  308. package/dist/thirdparty/merge.js +4 -8
  309. package/dist/thirdparty/merge.js.map +1 -0
  310. package/dist/types/AnimationMode.d.ts +32 -0
  311. package/dist/types/AnimationMode.js +33 -6
  312. package/dist/types/AnimationMode.js.map +1 -0
  313. package/dist/types/CSSColor.d.ts +15 -0
  314. package/dist/types/CSSColor.js +14 -5
  315. package/dist/types/CSSColor.js.map +1 -0
  316. package/dist/types/CSSSize.d.ts +15 -0
  317. package/dist/types/CSSSize.js +14 -5
  318. package/dist/types/CSSSize.js.map +1 -0
  319. package/dist/types/CalendarType.d.ts +37 -0
  320. package/dist/types/CalendarType.js +35 -18
  321. package/dist/types/CalendarType.js.map +1 -0
  322. package/dist/types/DOMReference.d.ts +17 -0
  323. package/dist/types/DOMReference.js +25 -0
  324. package/dist/types/DOMReference.js.map +1 -0
  325. package/dist/types/DataType.d.ts +25 -0
  326. package/dist/types/DataType.js +33 -14
  327. package/dist/types/DataType.js.map +1 -0
  328. package/dist/types/Float.d.ts +17 -0
  329. package/dist/types/Float.js +17 -6
  330. package/dist/types/Float.js.map +1 -0
  331. package/dist/types/Integer.d.ts +17 -0
  332. package/dist/types/Integer.js +17 -5
  333. package/dist/types/Integer.js.map +1 -0
  334. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  335. package/dist/types/InvisibleMessageMode.js +27 -0
  336. package/dist/types/InvisibleMessageMode.js.map +1 -0
  337. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  338. package/dist/types/ItemNavigationBehavior.js +22 -12
  339. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  340. package/dist/types/NavigationMode.d.ts +32 -0
  341. package/dist/types/NavigationMode.js +33 -6
  342. package/dist/types/NavigationMode.js.map +1 -0
  343. package/dist/types/ValueState.d.ts +42 -0
  344. package/dist/types/ValueState.js +41 -19
  345. package/dist/types/ValueState.js.map +1 -0
  346. package/dist/types.d.ts +18 -0
  347. package/dist/types.js +2 -0
  348. package/dist/types.js.map +1 -0
  349. package/dist/updateShadowRoot.d.ts +8 -0
  350. package/dist/updateShadowRoot.js +32 -16
  351. package/dist/updateShadowRoot.js.map +1 -0
  352. package/dist/util/AriaLabelHelper.d.ts +15 -0
  353. package/dist/util/AriaLabelHelper.js +166 -36
  354. package/dist/util/AriaLabelHelper.js.map +1 -0
  355. package/dist/util/Caret.d.ts +7 -0
  356. package/dist/util/Caret.js +16 -38
  357. package/dist/util/Caret.js.map +1 -0
  358. package/dist/util/ColorConversion.d.ts +30 -0
  359. package/dist/util/ColorConversion.js +315 -348
  360. package/dist/util/ColorConversion.js.map +1 -0
  361. package/dist/util/FetchHelper.d.ts +3 -0
  362. package/dist/util/FetchHelper.js +19 -25
  363. package/dist/util/FetchHelper.js.map +1 -0
  364. package/dist/util/FocusableElements.d.ts +4 -0
  365. package/dist/util/FocusableElements.js +67 -68
  366. package/dist/util/FocusableElements.js.map +1 -0
  367. package/dist/util/HTMLSanitizer.d.ts +3 -0
  368. package/dist/util/HTMLSanitizer.js +6 -0
  369. package/dist/util/HTMLSanitizer.js.map +1 -0
  370. package/dist/util/InvisibleMessage.d.ts +10 -0
  371. package/dist/util/InvisibleMessage.js +56 -0
  372. package/dist/util/InvisibleMessage.js.map +1 -0
  373. package/dist/util/PopupUtils.d.ts +7 -0
  374. package/dist/util/PopupUtils.js +58 -77
  375. package/dist/util/PopupUtils.js.map +1 -0
  376. package/dist/util/SlotsHelper.d.ts +9 -0
  377. package/dist/util/SlotsHelper.js +22 -35
  378. package/dist/util/SlotsHelper.js.map +1 -0
  379. package/dist/util/StringHelper.d.ts +3 -0
  380. package/dist/util/StringHelper.js +17 -20
  381. package/dist/util/StringHelper.js.map +1 -0
  382. package/dist/util/TabbableElements.d.ts +17 -0
  383. package/dist/util/TabbableElements.js +53 -43
  384. package/dist/util/TabbableElements.js.map +1 -0
  385. package/dist/util/arraysAreEqual.d.ts +2 -0
  386. package/dist/util/arraysAreEqual.js +10 -12
  387. package/dist/util/arraysAreEqual.js.map +1 -0
  388. package/{src/util/clamp.js → dist/util/clamp.d.ts} +1 -4
  389. package/dist/util/clamp.js +2 -2
  390. package/dist/util/clamp.js.map +1 -0
  391. package/dist/util/createLinkInHead.d.ts +7 -0
  392. package/dist/util/createLinkInHead.js +21 -0
  393. package/dist/util/createLinkInHead.js.map +1 -0
  394. package/dist/util/createStyleInHead.d.ts +8 -0
  395. package/dist/util/createStyleInHead.js +10 -10
  396. package/dist/util/createStyleInHead.js.map +1 -0
  397. package/dist/util/debounce.d.ts +2 -0
  398. package/dist/util/debounce.js +6 -8
  399. package/dist/util/debounce.js.map +1 -0
  400. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  401. package/dist/util/detectNavigatorLanguage.js +7 -10
  402. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  403. package/dist/util/escapeRegex.d.ts +8 -0
  404. package/dist/util/escapeRegex.js +11 -0
  405. package/dist/util/escapeRegex.js.map +1 -0
  406. package/dist/util/formatMessage.d.ts +2 -0
  407. package/dist/util/formatMessage.js +15 -19
  408. package/dist/util/formatMessage.js.map +1 -0
  409. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  410. package/dist/util/generateHighlightedMarkup.js +41 -0
  411. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  412. package/dist/util/getActiveElement.d.ts +2 -0
  413. package/dist/util/getActiveElement.js +6 -8
  414. package/dist/util/getActiveElement.js.map +1 -0
  415. package/dist/util/getClassCopy.d.ts +400 -0
  416. package/dist/util/getClassCopy.js +7 -7
  417. package/dist/util/getClassCopy.js.map +1 -0
  418. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  419. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  420. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  421. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  422. package/dist/util/getEffectiveContentDensity.js +2 -3
  423. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  424. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  425. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  426. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  427. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  428. package/dist/util/getFastNavigationGroups.js +51 -0
  429. package/dist/util/getFastNavigationGroups.js.map +1 -0
  430. package/{src/util/getFileExtension.js → dist/util/getFileExtension.d.ts} +3 -12
  431. package/dist/util/getFileExtension.js +9 -11
  432. package/dist/util/getFileExtension.js.map +1 -0
  433. package/dist/util/getNormalizedTarget.d.ts +7 -0
  434. package/dist/util/getNormalizedTarget.js +14 -0
  435. package/dist/util/getNormalizedTarget.js.map +1 -0
  436. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  437. package/dist/util/getSingletonElementInstance.js +17 -11
  438. package/dist/util/getSingletonElementInstance.js.map +1 -0
  439. package/dist/util/isElementClickable.d.ts +2 -0
  440. package/dist/util/isElementClickable.js +16 -0
  441. package/dist/util/isElementClickable.js.map +1 -0
  442. package/dist/util/isElementHidden.d.ts +2 -0
  443. package/dist/util/isElementHidden.js +8 -0
  444. package/dist/util/isElementHidden.js.map +1 -0
  445. package/dist/util/isElementInView.d.ts +6 -0
  446. package/dist/util/isElementInView.js +6 -9
  447. package/dist/util/isElementInView.js.map +1 -0
  448. package/dist/util/isElementTabbable.d.ts +9 -0
  449. package/dist/util/isElementTabbable.js +30 -0
  450. package/dist/util/isElementTabbable.js.map +1 -0
  451. package/dist/util/isValidPropertyName.d.ts +8 -0
  452. package/dist/util/isValidPropertyName.js +16 -17
  453. package/dist/util/isValidPropertyName.js.map +1 -0
  454. package/dist/util/whenDOMReady.d.ts +2 -0
  455. package/dist/util/whenDOMReady.js +11 -10
  456. package/dist/util/whenDOMReady.js.map +1 -0
  457. package/dist/util/willShowContent.d.ts +2 -0
  458. package/dist/util/willShowContent.js +7 -0
  459. package/dist/util/willShowContent.js.map +1 -0
  460. package/dist/validateThemeRoot.d.ts +2 -0
  461. package/dist/validateThemeRoot.js +48 -0
  462. package/dist/validateThemeRoot.js.map +1 -0
  463. package/index.js +228 -2
  464. package/lib/generate-asset-parameters/index.js +11 -6
  465. package/lib/generate-styles/index.js +31 -0
  466. package/lib/generate-version-info/index.js +32 -0
  467. package/package-scripts.cjs +71 -0
  468. package/package.json +19 -9
  469. package/src/css/BusyIndicator.css +80 -0
  470. package/src/css/FontFace.css +84 -0
  471. package/src/css/OverrideFontFace.css +32 -0
  472. package/src/css/SystemCSSVars.css +17 -0
  473. package/src/renderer/directives/style-map.js +72 -0
  474. package/tsconfig.json +14 -0
  475. package/used-modules.txt +10 -0
  476. package/config/rollup.config.js +0 -1
  477. package/config/wdio.conf.js +0 -1
  478. package/dist/RenderScheduler.js +0 -44
  479. package/dist/animations/config.js +0 -5
  480. package/dist/config/AssetsPath.js +0 -17
  481. package/dist/isLegacyBrowser.js +0 -3
  482. package/dist/renderer/ifDefined.js +0 -21
  483. package/dist/renderer/scopeHTML.js +0 -32
  484. package/dist/resources/bundle.esm.js +0 -121
  485. package/dist/resources/bundle.esm.js.map +0 -1
  486. package/dist/test-resources/assets/Themes.js +0 -17
  487. package/dist/test-resources/elements/Child.js +0 -35
  488. package/dist/test-resources/elements/Generic.js +0 -84
  489. package/dist/test-resources/elements/GenericExt.js +0 -26
  490. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  491. package/dist/test-resources/elements/Parent.js +0 -41
  492. package/dist/test-resources/elements/WithStaticArea.js +0 -76
  493. package/dist/test-resources/pages/AllTestElements.html +0 -39
  494. package/dist/test-resources/pages/Configuration.html +0 -18
  495. package/dist/test-resources/pages/ConfigurationScript.html +0 -34
  496. package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
  497. package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
  498. package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
  499. package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
  500. package/dist/test-resources/pages/i18n.html +0 -35
  501. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
  502. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
  503. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -47
  504. package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
  505. package/dist/test-resources/specs/StaticArea.spec.js +0 -36
  506. package/dist/test-resources/specs/Theming.spec.js +0 -33
  507. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
  508. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
  509. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
  510. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
  511. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
  512. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
  513. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
  514. package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
  515. package/dist/theming/createThemePropertiesStyleTag.js +0 -20
  516. package/dist/types/PopupState.js +0 -37
  517. package/dist/util/encodeCSS.js +0 -24
  518. package/dist/util/findNodeOwner.js +0 -35
  519. package/dist/util/isDescendantOf.js +0 -15
  520. package/dist/util/isNodeClickable.js +0 -19
  521. package/dist/util/isNodeHidden.js +0 -9
  522. package/dist/util/isNodeTabbable.js +0 -28
  523. package/dist/util/setToArray.js +0 -10
  524. package/hash.txt +0 -1
  525. package/package-scripts.js +0 -43
  526. package/src/Boot.js +0 -43
  527. package/src/CustomElementsRegistry.js +0 -39
  528. package/src/CustomElementsScope.js +0 -108
  529. package/src/DOMObserver.js +0 -65
  530. package/src/Device.js +0 -100
  531. package/src/EventProvider.js +0 -91
  532. package/src/FeaturesRegistry.js +0 -11
  533. package/src/FontFace.js +0 -118
  534. package/src/InitialConfiguration.js +0 -149
  535. package/src/Keys.js +0 -233
  536. package/src/MediaRange.js +0 -109
  537. package/src/PropertiesFileFormat.js +0 -95
  538. package/src/Render.js +0 -173
  539. package/src/RenderQueue.js +0 -66
  540. package/src/RenderScheduler.js +0 -44
  541. package/src/StaticArea.js +0 -3
  542. package/src/StaticAreaItem.js +0 -96
  543. package/src/SystemCSSVars.js +0 -31
  544. package/src/UI5Element.js +0 -1034
  545. package/src/UI5ElementMetadata.js +0 -311
  546. package/src/animations/AnimationQueue.js +0 -42
  547. package/src/animations/animate.js +0 -53
  548. package/src/animations/config.js +0 -5
  549. package/src/animations/scroll.js +0 -28
  550. package/src/animations/slideDown.js +0 -79
  551. package/src/animations/slideUp.js +0 -71
  552. package/src/asset-registries/Icons.js +0 -118
  553. package/src/asset-registries/LocaleData.js +0 -150
  554. package/src/asset-registries/Themes.js +0 -78
  555. package/src/asset-registries/i18n.js +0 -121
  556. package/src/config/AnimationMode.js +0 -23
  557. package/src/config/AssetsPath.js +0 -17
  558. package/src/config/CalendarType.js +0 -18
  559. package/src/config/FormatSettings.js +0 -13
  560. package/src/config/Language.js +0 -68
  561. package/src/config/NoConflict.js +0 -51
  562. package/src/config/RTL.js +0 -31
  563. package/src/config/Theme.js +0 -28
  564. package/src/delegate/ItemNavigation.js +0 -285
  565. package/src/delegate/ResizeHandler.js +0 -106
  566. package/src/delegate/ScrollEnablement.js +0 -182
  567. package/src/features/OpenUI5Support.js +0 -125
  568. package/src/getSharedResource.js +0 -30
  569. package/src/i18nBundle.js +0 -55
  570. package/src/isLegacyBrowser.js +0 -3
  571. package/src/locale/Locale.js +0 -91
  572. package/src/locale/RTLAwareRegistry.js +0 -14
  573. package/src/locale/applyDirection.js +0 -17
  574. package/src/locale/directionChange.js +0 -32
  575. package/src/locale/getEffectiveDir.js +0 -28
  576. package/src/locale/getLocale.js +0 -41
  577. package/src/locale/languageChange.js +0 -22
  578. package/src/locale/nextFallbackLocale.js +0 -28
  579. package/src/locale/normalizeLocale.js +0 -54
  580. package/src/renderer/LitRenderer.js +0 -31
  581. package/src/renderer/executeTemplate.js +0 -17
  582. package/src/renderer/ifDefined.js +0 -21
  583. package/src/renderer/scopeHTML.js +0 -32
  584. package/src/theming/CustomStyle.js +0 -40
  585. package/src/theming/ThemeLoaded.js +0 -22
  586. package/src/theming/applyTheme.js +0 -78
  587. package/src/theming/createThemePropertiesStyleTag.js +0 -20
  588. package/src/theming/getConstructableStyle.js +0 -30
  589. package/src/theming/getEffectiveStyle.js +0 -30
  590. package/src/theming/getStylesString.js +0 -13
  591. package/src/theming/getThemeDesignerTheme.js +0 -67
  592. package/src/thirdparty/_merge.js +0 -32
  593. package/src/thirdparty/isPlainObject.js +0 -18
  594. package/src/thirdparty/merge.js +0 -10
  595. package/src/types/AnimationMode.js +0 -7
  596. package/src/types/CSSColor.js +0 -9
  597. package/src/types/CSSSize.js +0 -9
  598. package/src/types/CalendarType.js +0 -22
  599. package/src/types/DataType.js +0 -25
  600. package/src/types/Float.js +0 -10
  601. package/src/types/Integer.js +0 -9
  602. package/src/types/ItemNavigationBehavior.js +0 -16
  603. package/src/types/NavigationMode.js +0 -7
  604. package/src/types/PopupState.js +0 -37
  605. package/src/types/ValueState.js +0 -22
  606. package/src/updateShadowRoot.js +0 -26
  607. package/src/util/AriaLabelHelper.js +0 -41
  608. package/src/util/Caret.js +0 -45
  609. package/src/util/ColorConversion.js +0 -370
  610. package/src/util/FetchHelper.js +0 -31
  611. package/src/util/FocusableElements.js +0 -73
  612. package/src/util/PopupUtils.js +0 -93
  613. package/src/util/SlotsHelper.js +0 -43
  614. package/src/util/StringHelper.js +0 -26
  615. package/src/util/TabbableElements.js +0 -47
  616. package/src/util/arraysAreEqual.js +0 -15
  617. package/src/util/createStyleInHead.js +0 -18
  618. package/src/util/debounce.js +0 -17
  619. package/src/util/detectNavigatorLanguage.js +0 -13
  620. package/src/util/encodeCSS.js +0 -24
  621. package/src/util/findNodeOwner.js +0 -35
  622. package/src/util/formatMessage.js +0 -23
  623. package/src/util/getActiveElement.js +0 -11
  624. package/src/util/getClassCopy.js +0 -10
  625. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  626. package/src/util/getEffectiveContentDensity.js +0 -5
  627. package/src/util/getSingletonElementInstance.js +0 -13
  628. package/src/util/isDescendantOf.js +0 -15
  629. package/src/util/isElementInView.js +0 -15
  630. package/src/util/isNodeClickable.js +0 -19
  631. package/src/util/isNodeHidden.js +0 -9
  632. package/src/util/isNodeTabbable.js +0 -28
  633. package/src/util/isValidPropertyName.js +0 -29
  634. package/src/util/setToArray.js +0 -10
  635. package/src/util/whenDOMReady.js +0 -13
  636. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Returns the current theme root.
3
+ *
4
+ * @public
5
+ * @since 1.14.0
6
+ * @returns { string } the current theme root
7
+ */
8
+ declare const getThemeRoot: () => string | undefined;
9
+ /**
10
+ * Sets theme root for the current theme.
11
+ * When set, the framework will validate the theme root and fetch the theme styles (CSS variables) from this location.
12
+ *
13
+ * <b>Note:</b> The feature is specific to custom themes, created with the `UI Theme Designer`.
14
+ * The provided theme root is used only as a base to construct the actual location of the theme styles: `{themeRoot}/.../css_variables.css`.
15
+ *
16
+ * <br/>
17
+ *
18
+ * <b>Note:</b> Certain security restrictions will apply before fetching the theme assets.
19
+ * Absolute URLs to a different origin than the current page will result in using the current page as an origin.
20
+ * 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.
21
+ *
22
+ * @public
23
+ * @since 1.14.0
24
+ * @param { string } themeRoot the new theme root
25
+ * @returns { Promise<void> }
26
+ */
27
+ declare const setThemeRoot: (themeRoot: string) => Promise<void> | undefined;
28
+ declare const attachCustomThemeStylesToHead: (theme: string) => Promise<void>;
29
+ export { getThemeRoot, setThemeRoot, attachCustomThemeStylesToHead, };
@@ -0,0 +1,59 @@
1
+ import createLinkInHead from "../util/createLinkInHead.js";
2
+ import validateThemeRoot from "../validateThemeRoot.js";
3
+ import { getThemeRoot as getConfiguredThemeRoot } from "../InitialConfiguration.js";
4
+ import { getTheme } from "./Theme.js";
5
+ let currThemeRoot;
6
+ /**
7
+ * Returns the current theme root.
8
+ *
9
+ * @public
10
+ * @since 1.14.0
11
+ * @returns { string } the current theme root
12
+ */
13
+ const getThemeRoot = () => {
14
+ if (currThemeRoot === undefined) {
15
+ currThemeRoot = getConfiguredThemeRoot();
16
+ }
17
+ return currThemeRoot;
18
+ };
19
+ /**
20
+ * Sets theme root for the current theme.
21
+ * When set, the framework will validate the theme root and fetch the theme styles (CSS variables) from this location.
22
+ *
23
+ * <b>Note:</b> The feature is specific to custom themes, created with the `UI Theme Designer`.
24
+ * The provided theme root is used only as a base to construct the actual location of the theme styles: `{themeRoot}/.../css_variables.css`.
25
+ *
26
+ * <br/>
27
+ *
28
+ * <b>Note:</b> Certain security restrictions will apply before fetching the theme assets.
29
+ * Absolute URLs to a different origin than the current page will result in using the current page as an origin.
30
+ * 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.
31
+ *
32
+ * @public
33
+ * @since 1.14.0
34
+ * @param { string } themeRoot the new theme root
35
+ * @returns { Promise<void> }
36
+ */
37
+ const setThemeRoot = (themeRoot) => {
38
+ if (currThemeRoot === themeRoot) {
39
+ return;
40
+ }
41
+ currThemeRoot = themeRoot;
42
+ if (!validateThemeRoot(themeRoot)) {
43
+ console.warn(`The ${themeRoot} is not valid. Check the allowed origins as suggested in the "setThemeRoot" description.`); // eslint-disable-line
44
+ return;
45
+ }
46
+ return attachCustomThemeStylesToHead(getTheme());
47
+ };
48
+ const formatThemeLink = (theme) => {
49
+ return `${getThemeRoot()}Base/baseLib/${theme}/css_variables.css`; // theme root is always set at this point.
50
+ };
51
+ const attachCustomThemeStylesToHead = async (theme) => {
52
+ const link = document.querySelector(`[sap-ui-webcomponents-theme="${theme}"]`);
53
+ if (link) {
54
+ document.head.removeChild(link);
55
+ }
56
+ await createLinkInHead(formatThemeLink(theme), { "sap-ui-webcomponents-theme": theme });
57
+ };
58
+ export { getThemeRoot, setThemeRoot, attachCustomThemeStylesToHead, };
59
+ //# sourceMappingURL=ThemeRoot.js.map
@@ -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;AAEtC,IAAI,aAAiC,CAAC;AAEtC;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,GAAuB,EAAE;IAC7C,IAAI,aAAa,KAAK,SAAS,EAAE;QAChC,aAAa,GAAG,sBAAsB,EAAE,CAAC;KACzC;IAED,OAAO,aAAa,CAAC;AACtB,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,YAAY,GAAG,CAAC,SAAiB,EAA6B,EAAE;IACrE,IAAI,aAAa,KAAK,SAAS,EAAE;QAChC,OAAO;KACP;IAED,aAAa,GAAG,SAAS,CAAC;IAE1B,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE;QAClC,OAAO,CAAC,IAAI,CAAC,OAAO,SAAS,0FAA0F,CAAC,CAAC,CAAC,sBAAsB;QAChJ,OAAO;KACP;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;QACT,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KAChC;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\";\n\nlet currThemeRoot: string | undefined;\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 * <b>Note:</b> 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 * <br/>\n *\n * <b>Note:</b> 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
+ * <b>For example:</b> "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,30 @@
1
+ import { getTimezone as getConfiguredTimezone } from "../InitialConfiguration.js";
2
+ let currTimezone;
3
+ /**
4
+ * Returns the configured IANA timezone ID.
5
+ *
6
+ * @private
7
+ * @returns {string}
8
+ */
9
+ const getTimezone = () => {
10
+ if (currTimezone === undefined) {
11
+ currTimezone = getConfiguredTimezone();
12
+ }
13
+ return currTimezone;
14
+ };
15
+ /**
16
+ * Sets the IANA timezone ID.
17
+ * <b>For example:</b> "America/New_York", "Europe/London", "Australia/Sydney", "Asia/Bishkek", etc.
18
+ *>
19
+ * @param {string} timezone
20
+ * @private
21
+ * @returns { Promise<void> }
22
+ */
23
+ const setTimezone = (timezone) => {
24
+ if (currTimezone === timezone) {
25
+ return;
26
+ }
27
+ currTimezone = timezone;
28
+ };
29
+ export { getTimezone, setTimezone, };
30
+ //# 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;AAElF,IAAI,YAAgC,CAAC;AAErC;;;;;GAKG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,YAAY,KAAK,SAAS,EAAE;QAC/B,YAAY,GAAG,qBAAqB,EAAE,CAAC;KACvC;IACD,OAAO,YAAY,CAAC;AACrB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAE,EAAE;IACxC,IAAI,YAAY,KAAK,QAAQ,EAAE;QAC9B,OAAO;KACP;IAED,YAAY,GAAG,QAAQ,CAAC;AACzB,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,WAAW,GACX,CAAC","sourcesContent":["import { getTimezone as getConfiguredTimezone } from \"../InitialConfiguration.js\";\n\nlet currTimezone: string | undefined;\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 * <b>For example:</b> \"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,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;QAC1C,WAAW,GAAG,SAAS,CAAC,CAAC,8GAA8G;KACvI;SAAM,IAAI,MAAM,YAAY,WAAW,EAAE;QACzC,WAAW,GAAG,MAAM,CAAC;KACrB;SAAM;QACN,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;KACxF;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;QACjB,IAAI,eAAe,EAAE,EAAE,kCAAkC;YACxD,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YAC9D,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACxB;QAED,kDAAkD;QAClD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAChE,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;oBACV,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBAClC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACtB,cAAc,CAAC,IAAI,CAAC,CAAC;iBACrB;YACF,CAAC,EAAE,4BAA4B,CAAC,CAAC;YACjC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;SAC7B;QAED,OAAO;KACP;IAED,gDAAgD;IAChD,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACvB,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAClC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;KACtB;IAED,8DAA8D;IAC9D,IAAI,eAAe,KAAK,WAAW,EAAE;QACpC,IAAI,eAAe,EAAE;YACpB,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;SAC9D;QACD,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACpD,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;KAClC;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 { 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,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,84 @@
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
+ }
7
+
8
+ @font-face {
9
+ font-family: "72full";
10
+ font-style: normal;
11
+ font-weight: 400;
12
+ 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');
13
+
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
+ }
22
+
23
+ @font-face {
24
+ font-family: "72full";
25
+ font-style: normal;
26
+ font-weight: 700;
27
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2");
28
+ }
29
+
30
+ @font-face {
31
+ font-family: '72-Bold';
32
+ font-style: normal;
33
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"), local('72-Bold');
34
+ }
35
+
36
+ @font-face {
37
+ font-family: '72-Boldfull';
38
+ font-style: normal;
39
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2");
40
+ }
41
+
42
+ @font-face {
43
+ font-family: '72-Light';
44
+ font-style: normal;
45
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Light.woff2?ui5-webcomponents) format("woff2"), local('72-Light');
46
+ }
47
+
48
+ @font-face {
49
+ font-family: '72-Lightfull';
50
+ font-style: normal;
51
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Light-full.woff2?ui5-webcomponents) format("woff2");
52
+ }
53
+
54
+ @font-face {
55
+ font-family: '72Mono';
56
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Regular.woff2?ui5-webcomponents) format('woff2'), local('72Mono');
57
+ }
58
+
59
+ @font-face {
60
+ font-family: '72Monofull';
61
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Regular-full.woff2?ui5-webcomponents) format('woff2');
62
+ }
63
+
64
+ @font-face {
65
+ font-family: '72Mono-Bold';
66
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Bold.woff2?ui5-webcomponents) format('woff2'), local('72Mono-Bold');
67
+ }
68
+
69
+ @font-face {
70
+ font-family: '72Mono-Boldfull';
71
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72Mono-Bold-full.woff2?ui5-webcomponents) format('woff2');
72
+ }
73
+
74
+ @font-face {
75
+ font-family: "72Black";
76
+ font-style: bold;
77
+ font-weight: 900;
78
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2"), local('72Black');
79
+ }
80
+
81
+ @font-face {
82
+ font-family: "72-SemiboldDuplex";
83
+ src: url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-SemiboldDuplex.woff2?ui5-webcomponents) format("woff2"), local('72-SemiboldDuplex');
84
+ }
@@ -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,17 @@
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
+ }
10
+
11
+ [dir="rtl"] {
12
+ --_ui5_dir:rtl;
13
+ }
14
+
15
+ [dir="ltr"] {
16
+ --_ui5_dir:ltr;
17
+ }
@@ -0,0 +1,23 @@
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
+ tag?: string;
13
+ renderer?: Renderer;
14
+ styles?: Styles;
15
+ template?: Template;
16
+ dependencies?: Array<typeof UI5Element>;
17
+ staticAreaStyles?: Styles;
18
+ staticAreaTemplate?: Template;
19
+ languageAware?: boolean;
20
+ themeAware?: boolean;
21
+ fastNavigation?: boolean;
22
+ }) => ClassDecorator;
23
+ export default customElement;
@@ -0,0 +1,37 @@
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, fastNavigation, } = tagNameOrComponentSettings;
17
+ target.metadata.tag = tag;
18
+ if (languageAware) {
19
+ target.metadata.languageAware = languageAware;
20
+ }
21
+ if (themeAware) {
22
+ target.metadata.themeAware = themeAware;
23
+ }
24
+ if (fastNavigation) {
25
+ target.metadata.fastNavigation = fastNavigation;
26
+ }
27
+ ["render", "renderer", "template", "staticAreaTemplate", "styles", "staticAreaStyles", "dependencies"].forEach((customElementEntity) => {
28
+ const _customElementEntity = customElementEntity === "render" ? "renderer" : customElementEntity;
29
+ const customElementEntityValue = tagNameOrComponentSettings[_customElementEntity];
30
+ customElementEntityValue && Object.defineProperty(target, customElementEntity, {
31
+ get: () => customElementEntityValue,
32
+ });
33
+ });
34
+ };
35
+ };
36
+ export default customElement;
37
+ //# 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,0BAWtB,EAAkB,EAAE;IACpB,OAAO,CAAC,MAAW,EAAE,EAAE;QACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;YAC9D,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;SACrB;QAED,IAAI,OAAO,0BAA0B,KAAK,QAAQ,EAAE;YACnD,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,0BAA0B,CAAC;YACjD,OAAO;SACP;QAED,MAAM,EACL,GAAG,EACH,aAAa,EACb,UAAU,EACV,cAAc,GACb,GAAG,0BAA0B,CAAC;QAEhC,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC;QAC1B,IAAI,aAAa,EAAE;YAClB,MAAM,CAAC,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC;SAC9C;QACD,IAAI,UAAU,EAAE;YACf,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;SACxC;QACD,IAAI,cAAc,EAAE;YACnB,MAAM,CAAC,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;SAChD;QAED,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,mBAA2B,EAAE,EAAE;YAC9I,MAAM,oBAAoB,GAAG,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC;YACjG,MAAM,wBAAwB,GAAG,0BAA0B,CAAC,oBAAwC,CAAC,CAAC;YAEtG,wBAAwB,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,mBAAmB,EAAE;gBAC9E,GAAG,EAAE,GAAG,EAAE,CAAC,wBAAwB;aACnC,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\ttag?: string,\n\trenderer?: Renderer,\n\tstyles?: Styles,\n\ttemplate?: Template,\n\tdependencies?: Array<typeof UI5Element>,\n\tstaticAreaStyles?: Styles,\n\tstaticAreaTemplate?: Template,\n\tlanguageAware?: boolean,\n\tthemeAware?: boolean,\n\tfastNavigation?: boolean,\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\tfastNavigation,\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 (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\n\t\t[\"render\", \"renderer\", \"template\", \"staticAreaTemplate\", \"styles\", \"staticAreaStyles\", \"dependencies\"].forEach((customElementEntity: string) => {\n\t\t\tconst _customElementEntity = customElementEntity === \"render\" ? \"renderer\" : customElementEntity;\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: () => customElementEntityValue,\n\t\t\t});\n\t\t});\n\t};\n};\n\nexport default customElement;\n"]}
@@ -0,0 +1,10 @@
1
+ import { EventData } from "../UI5ElementMetadata.js";
2
+ /**
3
+ * Returns an event class decorator.
4
+ *
5
+ * @param { string } name the event name
6
+ * @param { EventData } data the event data
7
+ * @returns { ClassDecorator }
8
+ */
9
+ declare const event: (name: string, data?: EventData) => ClassDecorator;
10
+ export default event;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Returns an event class decorator.
3
+ *
4
+ * @param { string } name the event name
5
+ * @param { EventData } data the event data
6
+ * @returns { ClassDecorator }
7
+ */
8
+ const event = (name, data = {}) => {
9
+ return (target) => {
10
+ if (!Object.prototype.hasOwnProperty.call(target, "metadata")) {
11
+ target.metadata = {};
12
+ }
13
+ const metadata = target.metadata;
14
+ if (!metadata.events) {
15
+ metadata.events = {};
16
+ }
17
+ const eventsMetadata = metadata.events;
18
+ if (!eventsMetadata[name]) {
19
+ eventsMetadata[name] = data;
20
+ }
21
+ };
22
+ };
23
+ export default event;
24
+ //# sourceMappingURL=event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/decorators/event.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,OAAkB,EAAE,EAAkB,EAAE;IACpE,OAAO,CAAC,MAAW,EAAE,EAAE;QACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;YAC9D,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;SACrB;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACrB,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC;SACrB;QAED,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;QACvC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YAC1B,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;SAC5B;IACF,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["import { EventData } from \"../UI5ElementMetadata.js\";\n\n/**\n * Returns an event class decorator.\n *\n * @param { string } name the event name\n * @param { EventData } data the event data\n * @returns { ClassDecorator }\n */\nconst event = (name: string, data: EventData = {}): 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\tconst metadata = target.metadata;\n\t\tif (!metadata.events) {\n\t\t\tmetadata.events = {};\n\t\t}\n\n\t\tconst eventsMetadata = metadata.events;\n\t\tif (!eventsMetadata[name]) {\n\t\t\teventsMetadata[name] = data;\n\t\t}\n\t};\n};\n\nexport default event;\n"]}
@@ -0,0 +1,9 @@
1
+ import { Property } from "../UI5ElementMetadata.js";
2
+ /**
3
+ * Returns a property decorator.
4
+ *
5
+ * @param { Property } propData
6
+ * @returns { PropertyDecorator }
7
+ */
8
+ declare const property: (propData?: Property) => PropertyDecorator;
9
+ export default property;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Returns a property decorator.
3
+ *
4
+ * @param { Property } propData
5
+ * @returns { PropertyDecorator }
6
+ */
7
+ const property = (propData) => {
8
+ return (target, propertyKey) => {
9
+ const ctor = target.constructor;
10
+ if (!Object.prototype.hasOwnProperty.call(ctor, "metadata")) {
11
+ ctor.metadata = {};
12
+ }
13
+ const metadata = ctor.metadata;
14
+ if (!metadata.properties) {
15
+ metadata.properties = {};
16
+ }
17
+ const propsMetadata = metadata.properties;
18
+ if (!propsMetadata[propertyKey]) {
19
+ propsMetadata[propertyKey] = propData || { type: String };
20
+ }
21
+ };
22
+ };
23
+ export default property;
24
+ //# sourceMappingURL=property.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"property.js","sourceRoot":"","sources":["../../src/decorators/property.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,CAAC,QAAmB,EAAqB,EAAE;IAC3D,OAAO,CAAC,MAAW,EAAE,WAA4B,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAgC,CAAC;QAErD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;YAC5D,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;SACnB;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;YACzB,QAAQ,CAAC,UAAU,GAAG,EAAE,CAAC;SACzB;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC;QAC1C,IAAI,CAAC,aAAa,CAAC,WAAqB,CAAC,EAAE;YAC1C,aAAa,CAAC,WAAqB,CAAC,GAAG,QAAQ,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SACpE;IACF,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC","sourcesContent":["import type UI5Element from \"../UI5Element.js\";\nimport { Property } from \"../UI5ElementMetadata.js\";\n\n/**\n * Returns a property decorator.\n *\n * @param { Property } propData\n * @returns { PropertyDecorator }\n */\nconst property = (propData?: Property): PropertyDecorator => {\n\treturn (target: any, propertyKey: string | symbol) => {\n\t\tconst ctor = target.constructor as typeof UI5Element;\n\n\t\tif (!Object.prototype.hasOwnProperty.call(ctor, \"metadata\")) {\n\t\t\tctor.metadata = {};\n\t\t}\n\n\t\tconst metadata = ctor.metadata;\n\t\tif (!metadata.properties) {\n\t\t\tmetadata.properties = {};\n\t\t}\n\n\t\tconst propsMetadata = metadata.properties;\n\t\tif (!propsMetadata[propertyKey as string]) {\n\t\t\tpropsMetadata[propertyKey as string] = propData || { type: String };\n\t\t}\n\t};\n};\n\nexport default property;\n"]}
@@ -0,0 +1,9 @@
1
+ import { Slot } from "../UI5ElementMetadata.js";
2
+ /**
3
+ * Returns a slot decorator.
4
+ *
5
+ * @param { Slot } slotData
6
+ * @returns { PropertyDecorator }
7
+ */
8
+ declare const slot: (slotData?: Slot) => PropertyDecorator;
9
+ export default slot;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Returns a slot decorator.
3
+ *
4
+ * @param { Slot } slotData
5
+ * @returns { PropertyDecorator }
6
+ */
7
+ const slot = (slotData) => {
8
+ return (target, slotKey) => {
9
+ const ctor = target.constructor;
10
+ if (!Object.prototype.hasOwnProperty.call(ctor, "metadata")) {
11
+ ctor.metadata = {};
12
+ }
13
+ const metadata = ctor.metadata;
14
+ if (!metadata.slots) {
15
+ metadata.slots = {};
16
+ }
17
+ const slotMetadata = metadata.slots;
18
+ if (slotData && slotData.default && slotMetadata.default) {
19
+ throw new Error("Only one slot can be the default slot.");
20
+ }
21
+ const key = slotData && slotData.default ? "default" : slotKey;
22
+ slotData = slotData || { type: HTMLElement };
23
+ if (!slotData.type) {
24
+ slotData.type = HTMLElement;
25
+ }
26
+ if (!slotMetadata[key]) {
27
+ slotMetadata[key] = slotData;
28
+ }
29
+ if (slotData.default) {
30
+ delete slotMetadata.default.default;
31
+ slotMetadata.default.propertyName = slotKey;
32
+ }
33
+ ctor.metadata.managedSlots = true;
34
+ };
35
+ };
36
+ export default slot;
37
+ //# sourceMappingURL=slot.js.map