@ui5/webcomponents-base 0.0.0-dff5837d7 → 0.0.0-e0658a650

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 (745) hide show
  1. package/.eslintignore +3 -0
  2. package/CHANGELOG.md +453 -0
  3. package/README.md +53 -7
  4. package/bundle.esm.js +28 -17
  5. package/dist/AssetRegistry.d.ts +5 -0
  6. package/dist/AssetRegistry.js +6 -10
  7. package/dist/AssetRegistry.js.map +1 -0
  8. package/dist/Boot.d.ts +8 -0
  9. package/dist/Boot.js +44 -0
  10. package/dist/Boot.js.map +1 -0
  11. package/dist/CSP.d.ts +30 -0
  12. package/dist/CSP.js +51 -0
  13. package/dist/CSP.js.map +1 -0
  14. package/dist/CustomElementsRegistry.d.ts +5 -0
  15. package/dist/CustomElementsRegistry.js +69 -30
  16. package/dist/CustomElementsRegistry.js.map +1 -0
  17. package/dist/CustomElementsScope.d.ts +7 -0
  18. package/dist/CustomElementsScope.js +11 -0
  19. package/dist/CustomElementsScope.js.map +1 -0
  20. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  21. package/dist/CustomElementsScopeUtils.js +90 -0
  22. package/dist/CustomElementsScopeUtils.js.map +1 -0
  23. package/dist/DOMObserver.d.ts +11 -0
  24. package/dist/DOMObserver.js +23 -0
  25. package/dist/DOMObserver.js.map +1 -0
  26. package/dist/Device.d.ts +11 -0
  27. package/dist/Device.js +82 -816
  28. package/dist/Device.js.map +1 -0
  29. package/dist/EventProvider.d.ts +25 -0
  30. package/dist/EventProvider.js +67 -78
  31. package/dist/EventProvider.js.map +1 -0
  32. package/dist/FeaturesRegistry.d.ts +3 -0
  33. package/dist/FeaturesRegistry.js +5 -7
  34. package/dist/FeaturesRegistry.js.map +1 -0
  35. package/dist/FontFace.d.ts +2 -0
  36. package/dist/FontFace.js +21 -69
  37. package/dist/FontFace.js.map +1 -0
  38. package/dist/InitialConfiguration.d.ts +22 -0
  39. package/dist/InitialConfiguration.js +119 -103
  40. package/dist/InitialConfiguration.js.map +1 -0
  41. package/dist/Keys.d.ts +57 -0
  42. package/dist/Keys.js +174 -166
  43. package/dist/Keys.js.map +1 -0
  44. package/dist/ManagedStyles.d.ts +8 -0
  45. package/dist/ManagedStyles.js +77 -0
  46. package/dist/ManagedStyles.js.map +1 -0
  47. package/dist/MediaRange.d.ts +36 -0
  48. package/dist/MediaRange.js +96 -0
  49. package/dist/MediaRange.js.map +1 -0
  50. package/dist/PropertiesFileFormat.d.ts +8 -0
  51. package/dist/PropertiesFileFormat.js +85 -0
  52. package/dist/PropertiesFileFormat.js.map +1 -0
  53. package/dist/Render.d.ts +47 -0
  54. package/dist/Render.js +143 -0
  55. package/dist/Render.js.map +1 -0
  56. package/dist/RenderQueue.d.ts +19 -0
  57. package/dist/RenderQueue.js +53 -39
  58. package/dist/RenderQueue.js.map +1 -0
  59. package/dist/Runtimes.d.ts +27 -0
  60. package/dist/Runtimes.js +86 -0
  61. package/dist/Runtimes.js.map +1 -0
  62. package/dist/StaticArea.d.ts +0 -0
  63. package/dist/StaticArea.js +4 -39
  64. package/dist/StaticArea.js.map +1 -0
  65. package/dist/StaticAreaItem.d.ts +36 -0
  66. package/dist/StaticAreaItem.js +92 -98
  67. package/dist/StaticAreaItem.js.map +1 -0
  68. package/dist/SystemCSSVars.d.ts +2 -0
  69. package/dist/SystemCSSVars.js +6 -28
  70. package/dist/SystemCSSVars.js.map +1 -0
  71. package/dist/Theming.d.ts +3 -0
  72. package/dist/Theming.js +3 -2
  73. package/dist/Theming.js.map +1 -0
  74. package/dist/UI5Element.d.ts +371 -0
  75. package/dist/UI5Element.js +922 -969
  76. package/dist/UI5Element.js.map +1 -0
  77. package/dist/UI5ElementMetadata.d.ts +147 -0
  78. package/dist/UI5ElementMetadata.js +261 -174
  79. package/dist/UI5ElementMetadata.js.map +1 -0
  80. package/dist/animations/AnimationQueue.d.ts +8 -0
  81. package/dist/animations/AnimationQueue.js +31 -38
  82. package/dist/animations/AnimationQueue.js.map +1 -0
  83. package/dist/animations/animate.d.ts +14 -0
  84. package/dist/animations/animate.js +46 -51
  85. package/dist/animations/animate.js.map +1 -0
  86. package/dist/animations/scroll.d.ts +5 -0
  87. package/dist/animations/scroll.js +18 -27
  88. package/dist/animations/scroll.js.map +1 -0
  89. package/dist/animations/slideDown.d.ts +5 -0
  90. package/dist/animations/slideDown.js +53 -78
  91. package/dist/animations/slideDown.js.map +1 -0
  92. package/dist/animations/slideUp.d.ts +5 -0
  93. package/dist/animations/slideUp.js +49 -70
  94. package/dist/animations/slideUp.js.map +1 -0
  95. package/dist/api.json +1 -0
  96. package/dist/asset-registries/Icons.d.ts +30 -0
  97. package/dist/asset-registries/Icons.js +104 -31
  98. package/dist/asset-registries/Icons.js.map +1 -0
  99. package/dist/asset-registries/Illustrations.d.ts +16 -0
  100. package/dist/asset-registries/Illustrations.js +46 -0
  101. package/dist/asset-registries/Illustrations.js.map +1 -0
  102. package/dist/asset-registries/LocaleData.d.ts +7 -0
  103. package/dist/asset-registries/LocaleData.js +125 -114
  104. package/dist/asset-registries/LocaleData.js.map +1 -0
  105. package/dist/asset-registries/Themes.d.ts +10 -0
  106. package/dist/asset-registries/Themes.js +39 -76
  107. package/dist/asset-registries/Themes.js.map +1 -0
  108. package/dist/asset-registries/i18n.d.ts +23 -0
  109. package/dist/asset-registries/i18n.js +71 -82
  110. package/dist/asset-registries/i18n.js.map +1 -0
  111. package/dist/assets/bundle.esm.72c1d211.js +56 -0
  112. package/dist/assets-meta/IconCollectionsAlias.d.ts +17 -0
  113. package/dist/assets-meta/IconCollectionsAlias.js +18 -0
  114. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  115. package/dist/config/AnimationMode.d.ts +14 -0
  116. package/dist/config/AnimationMode.js +23 -10
  117. package/dist/config/AnimationMode.js.map +1 -0
  118. package/dist/config/CalendarType.d.ts +8 -0
  119. package/dist/config/CalendarType.js +13 -12
  120. package/dist/config/CalendarType.js.map +1 -0
  121. package/dist/config/FormatSettings.d.ts +11 -0
  122. package/dist/config/FormatSettings.js +10 -8
  123. package/dist/config/FormatSettings.js.map +1 -0
  124. package/dist/config/Icons.d.ts +30 -0
  125. package/dist/config/Icons.js +48 -0
  126. package/dist/config/Icons.js.map +1 -0
  127. package/dist/config/Language.d.ts +31 -0
  128. package/dist/config/Language.js +44 -29
  129. package/dist/config/Language.js.map +1 -0
  130. package/dist/config/NoConflict.d.ts +20 -0
  131. package/dist/config/NoConflict.js +40 -41
  132. package/dist/config/NoConflict.js.map +1 -0
  133. package/dist/config/RTL.d.ts +7 -0
  134. package/dist/config/RTL.js +23 -20
  135. package/dist/config/RTL.js.map +1 -0
  136. package/dist/config/Theme.d.ts +28 -0
  137. package/dist/config/Theme.js +45 -22
  138. package/dist/config/Theme.js.map +1 -0
  139. package/dist/config/ThemeRoots.d.ts +4 -0
  140. package/dist/config/ThemeRoots.js +28 -0
  141. package/dist/config/ThemeRoots.js.map +1 -0
  142. package/dist/css/BusyIndicator.css +80 -0
  143. package/dist/css/FontFace.css +66 -0
  144. package/dist/css/OverrideFontFace.css +32 -0
  145. package/dist/css/SystemCSSVars.css +17 -0
  146. package/dist/delegate/ItemNavigation.d.ts +113 -0
  147. package/dist/delegate/ItemNavigation.js +312 -278
  148. package/dist/delegate/ItemNavigation.js.map +1 -0
  149. package/dist/delegate/ResizeHandler.d.ts +24 -0
  150. package/dist/delegate/ResizeHandler.js +80 -62
  151. package/dist/delegate/ResizeHandler.js.map +1 -0
  152. package/dist/delegate/ScrollEnablement.d.ts +43 -0
  153. package/dist/delegate/ScrollEnablement.js +159 -153
  154. package/dist/delegate/ScrollEnablement.js.map +1 -0
  155. package/dist/features/F6Navigation.d.ts +16 -0
  156. package/dist/features/F6Navigation.js +112 -0
  157. package/dist/features/F6Navigation.js.map +1 -0
  158. package/dist/features/OpenUI5Element.d.ts +9 -0
  159. package/dist/features/OpenUI5Element.js +5 -0
  160. package/dist/features/OpenUI5Element.js.map +1 -0
  161. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  162. package/dist/features/OpenUI5Enablement.js +96 -0
  163. package/dist/features/OpenUI5Enablement.js.map +1 -0
  164. package/dist/features/OpenUI5Support.d.ts +23 -0
  165. package/dist/features/OpenUI5Support.js +93 -86
  166. package/dist/features/OpenUI5Support.js.map +1 -0
  167. package/dist/generated/AssetParameters.js +1 -1
  168. package/dist/generated/VersionInfo.js +10 -0
  169. package/dist/generated/css/BusyIndicator.css.js +5 -0
  170. package/dist/generated/css/FontFace.css.js +5 -0
  171. package/dist/generated/css/OverrideFontFace.css.js +5 -0
  172. package/dist/generated/css/SystemCSSVars.css.js +5 -0
  173. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +11 -0
  174. package/dist/getSharedResource.d.ts +11 -0
  175. package/dist/getSharedResource.js +26 -0
  176. package/dist/getSharedResource.js.map +1 -0
  177. package/dist/i18nBundle.d.ts +43 -0
  178. package/dist/i18nBundle.js +73 -28
  179. package/dist/i18nBundle.js.map +1 -0
  180. package/dist/locale/Locale.d.ts +22 -0
  181. package/dist/locale/Locale.js +75 -87
  182. package/dist/locale/Locale.js.map +1 -0
  183. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  184. package/dist/locale/RTLAwareRegistry.js +6 -11
  185. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  186. package/dist/locale/applyDirection.d.ts +10 -0
  187. package/dist/locale/applyDirection.js +10 -8
  188. package/dist/locale/applyDirection.js.map +1 -0
  189. package/dist/locale/directionChange.d.ts +15 -0
  190. package/dist/locale/directionChange.js +24 -0
  191. package/dist/locale/directionChange.js.map +1 -0
  192. package/dist/locale/getEffectiveDir.d.ts +2 -0
  193. package/dist/locale/getEffectiveDir.js +24 -0
  194. package/dist/locale/getEffectiveDir.js.map +1 -0
  195. package/dist/locale/getLocale.d.ts +7 -0
  196. package/dist/locale/getLocale.js +28 -21
  197. package/dist/locale/getLocale.js.map +1 -0
  198. package/dist/locale/languageChange.d.ts +5 -0
  199. package/dist/locale/languageChange.js +8 -16
  200. package/dist/locale/languageChange.js.map +1 -0
  201. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  202. package/dist/locale/nextFallbackLocale.js +15 -19
  203. package/dist/locale/nextFallbackLocale.js.map +1 -0
  204. package/dist/locale/normalizeLocale.d.ts +7 -0
  205. package/dist/locale/normalizeLocale.js +34 -41
  206. package/dist/locale/normalizeLocale.js.map +1 -0
  207. package/dist/renderer/LitRenderer.d.ts +14 -0
  208. package/dist/renderer/LitRenderer.js +38 -12
  209. package/dist/renderer/LitRenderer.js.map +1 -0
  210. package/dist/renderer/directives/style-map.js +72 -0
  211. package/dist/renderer/executeTemplate.d.ts +13 -0
  212. package/dist/renderer/executeTemplate.js +30 -0
  213. package/dist/renderer/executeTemplate.js.map +1 -0
  214. package/dist/sap/base/Log.js +241 -0
  215. package/dist/sap/base/assert.js +8 -0
  216. package/dist/sap/base/security/URLListValidator.js +148 -0
  217. package/dist/sap/base/security/encodeCSS.js +14 -0
  218. package/dist/sap/base/security/encodeXML.js +23 -0
  219. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  220. package/dist/sap/base/strings/toHex.js +8 -0
  221. package/dist/sap/base/util/now.js +7 -0
  222. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  223. package/dist/theming/CustomStyle.d.ts +6 -0
  224. package/dist/theming/CustomStyle.js +44 -17
  225. package/dist/theming/CustomStyle.js.map +1 -0
  226. package/dist/theming/ThemeLoaded.d.ts +5 -0
  227. package/dist/theming/ThemeLoaded.js +14 -0
  228. package/dist/theming/ThemeLoaded.js.map +1 -0
  229. package/dist/theming/applyTheme.d.ts +2 -0
  230. package/dist/theming/applyTheme.js +63 -69
  231. package/dist/theming/applyTheme.js.map +1 -0
  232. package/dist/theming/getConstructableStyle.d.ts +9 -0
  233. package/dist/theming/getConstructableStyle.js +15 -15
  234. package/dist/theming/getConstructableStyle.js.map +1 -0
  235. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  236. package/dist/theming/getEffectiveLinksHrefs.js +16 -0
  237. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  238. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  239. package/dist/theming/getEffectiveStyle.js +30 -13
  240. package/dist/theming/getEffectiveStyle.js.map +1 -0
  241. package/dist/theming/getStylesString.d.ts +3 -0
  242. package/dist/theming/getStylesString.js +10 -0
  243. package/dist/theming/getStylesString.js.map +1 -0
  244. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  245. package/dist/theming/getThemeDesignerTheme.js +73 -60
  246. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  247. package/dist/theming/preloadLinks.d.ts +3 -0
  248. package/dist/theming/preloadLinks.js +19 -0
  249. package/dist/theming/preloadLinks.js.map +1 -0
  250. package/dist/thirdparty/_merge.d.ts +2 -0
  251. package/dist/thirdparty/_merge.js +7 -4
  252. package/dist/thirdparty/_merge.js.map +1 -0
  253. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  254. package/dist/thirdparty/isPlainObject.js +11 -10
  255. package/dist/thirdparty/isPlainObject.js.map +1 -0
  256. package/dist/thirdparty/merge.d.ts +2 -0
  257. package/dist/thirdparty/merge.js +4 -8
  258. package/dist/thirdparty/merge.js.map +1 -0
  259. package/dist/types/AnimationMode.d.ts +32 -0
  260. package/dist/types/AnimationMode.js +33 -6
  261. package/dist/types/AnimationMode.js.map +1 -0
  262. package/dist/types/CSSColor.d.ts +16 -0
  263. package/dist/types/CSSColor.js +19 -0
  264. package/dist/types/CSSColor.js.map +1 -0
  265. package/dist/types/CalendarType.d.ts +37 -0
  266. package/dist/types/CalendarType.js +35 -18
  267. package/dist/types/CalendarType.js.map +1 -0
  268. package/dist/types/DOMReference.d.ts +17 -0
  269. package/dist/types/DOMReference.js +25 -0
  270. package/dist/types/DOMReference.js.map +1 -0
  271. package/dist/types/DataType.d.ts +25 -0
  272. package/dist/types/DataType.js +32 -13
  273. package/dist/types/DataType.js.map +1 -0
  274. package/dist/types/Float.d.ts +18 -0
  275. package/dist/types/Float.js +18 -6
  276. package/dist/types/Float.js.map +1 -0
  277. package/dist/types/Integer.d.ts +18 -0
  278. package/dist/types/Integer.js +18 -5
  279. package/dist/types/Integer.js.map +1 -0
  280. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  281. package/dist/types/InvisibleMessageMode.js +27 -0
  282. package/dist/types/InvisibleMessageMode.js.map +1 -0
  283. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  284. package/dist/types/ItemNavigationBehavior.js +22 -17
  285. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  286. package/dist/types/NavigationMode.d.ts +32 -0
  287. package/dist/types/NavigationMode.js +33 -6
  288. package/dist/types/NavigationMode.js.map +1 -0
  289. package/dist/types/ValueState.d.ts +42 -0
  290. package/dist/types/ValueState.js +41 -19
  291. package/dist/types/ValueState.js.map +1 -0
  292. package/dist/types.d.ts +13 -0
  293. package/dist/types.js +2 -0
  294. package/dist/types.js.map +1 -0
  295. package/dist/updateShadowRoot.d.ts +8 -0
  296. package/dist/updateShadowRoot.js +34 -0
  297. package/dist/updateShadowRoot.js.map +1 -0
  298. package/dist/util/AriaLabelHelper.d.ts +6 -0
  299. package/dist/util/AriaLabelHelper.js +44 -0
  300. package/dist/util/AriaLabelHelper.js.map +1 -0
  301. package/dist/util/Caret.d.ts +7 -0
  302. package/dist/util/Caret.js +23 -0
  303. package/dist/util/Caret.js.map +1 -0
  304. package/dist/util/ColorConversion.d.ts +33 -0
  305. package/dist/util/ColorConversion.js +337 -0
  306. package/dist/util/ColorConversion.js.map +1 -0
  307. package/dist/util/FetchHelper.d.ts +3 -0
  308. package/dist/util/FetchHelper.js +19 -25
  309. package/dist/util/FetchHelper.js.map +1 -0
  310. package/dist/util/FocusableElements.d.ts +3 -0
  311. package/dist/util/FocusableElements.js +57 -61
  312. package/dist/util/FocusableElements.js.map +1 -0
  313. package/dist/util/HTMLSanitizer.d.ts +3 -0
  314. package/dist/util/HTMLSanitizer.js +6 -0
  315. package/dist/util/HTMLSanitizer.js.map +1 -0
  316. package/dist/util/InvisibleMessage.d.ts +10 -0
  317. package/dist/util/InvisibleMessage.js +56 -0
  318. package/dist/util/InvisibleMessage.js.map +1 -0
  319. package/dist/util/PopupUtils.d.ts +7 -0
  320. package/dist/util/PopupUtils.js +74 -0
  321. package/dist/util/PopupUtils.js.map +1 -0
  322. package/dist/util/SlotsHelper.d.ts +9 -0
  323. package/dist/util/SlotsHelper.js +30 -0
  324. package/dist/util/SlotsHelper.js.map +1 -0
  325. package/dist/util/StringHelper.d.ts +3 -0
  326. package/dist/util/StringHelper.js +17 -20
  327. package/dist/util/StringHelper.js.map +1 -0
  328. package/dist/util/TabbableElements.d.ts +3 -0
  329. package/dist/util/TabbableElements.js +39 -43
  330. package/dist/util/TabbableElements.js.map +1 -0
  331. package/dist/util/arraysAreEqual.d.ts +2 -0
  332. package/dist/util/arraysAreEqual.js +13 -0
  333. package/dist/util/arraysAreEqual.js.map +1 -0
  334. package/dist/util/clamp.d.ts +9 -0
  335. package/dist/util/clamp.js +12 -0
  336. package/dist/util/clamp.js.map +1 -0
  337. package/dist/util/createLinkInHead.d.ts +7 -0
  338. package/dist/util/createLinkInHead.js +21 -0
  339. package/dist/util/createLinkInHead.js.map +1 -0
  340. package/dist/util/createStyleInHead.d.ts +8 -0
  341. package/dist/util/createStyleInHead.js +10 -10
  342. package/dist/util/createStyleInHead.js.map +1 -0
  343. package/dist/util/debounce.d.ts +2 -0
  344. package/dist/util/debounce.js +15 -0
  345. package/dist/util/debounce.js.map +1 -0
  346. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  347. package/dist/util/detectNavigatorLanguage.js +7 -10
  348. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  349. package/dist/util/escapeRegex.d.ts +8 -0
  350. package/dist/util/escapeRegex.js +11 -0
  351. package/dist/util/escapeRegex.js.map +1 -0
  352. package/dist/util/formatMessage.d.ts +2 -0
  353. package/dist/util/formatMessage.js +15 -19
  354. package/dist/util/formatMessage.js.map +1 -0
  355. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  356. package/dist/util/generateHighlightedMarkup.js +41 -0
  357. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  358. package/dist/util/getActiveElement.d.ts +2 -0
  359. package/dist/util/getActiveElement.js +9 -0
  360. package/dist/util/getActiveElement.js.map +1 -0
  361. package/dist/util/getClassCopy.d.ts +398 -0
  362. package/dist/util/getClassCopy.js +10 -0
  363. package/dist/util/getClassCopy.js.map +1 -0
  364. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  365. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  366. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  367. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  368. package/dist/util/getEffectiveContentDensity.js +4 -0
  369. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  370. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  371. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  372. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  373. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  374. package/dist/util/getFastNavigationGroups.js +51 -0
  375. package/dist/util/getFastNavigationGroups.js.map +1 -0
  376. package/dist/util/getFileExtension.d.ts +12 -0
  377. package/dist/util/getFileExtension.js +9 -11
  378. package/dist/util/getFileExtension.js.map +1 -0
  379. package/dist/util/getNormalizedTarget.d.ts +7 -0
  380. package/dist/util/getNormalizedTarget.js +14 -0
  381. package/dist/util/getNormalizedTarget.js.map +1 -0
  382. package/dist/util/getSingletonElementInstance.d.ts +2 -0
  383. package/dist/util/getSingletonElementInstance.js +10 -0
  384. package/dist/util/getSingletonElementInstance.js.map +1 -0
  385. package/dist/util/isDefaultSlotProvided.d.ts +2 -0
  386. package/dist/util/isDefaultSlotProvided.js +10 -0
  387. package/dist/util/isDefaultSlotProvided.js.map +1 -0
  388. package/dist/util/isElementClickable.d.ts +2 -0
  389. package/dist/util/isElementClickable.js +16 -0
  390. package/dist/util/isElementClickable.js.map +1 -0
  391. package/dist/util/isElementHidden.d.ts +2 -0
  392. package/dist/util/isElementHidden.js +8 -0
  393. package/dist/util/isElementHidden.js.map +1 -0
  394. package/dist/util/isElementInView.d.ts +6 -0
  395. package/dist/util/isElementInView.js +12 -0
  396. package/dist/util/isElementInView.js.map +1 -0
  397. package/dist/util/isElementTabbable.d.ts +2 -0
  398. package/dist/util/isElementTabbable.js +22 -0
  399. package/dist/util/isElementTabbable.js.map +1 -0
  400. package/dist/util/isValidPropertyName.d.ts +8 -0
  401. package/dist/util/isValidPropertyName.js +18 -18
  402. package/dist/util/isValidPropertyName.js.map +1 -0
  403. package/dist/util/whenDOMReady.d.ts +2 -0
  404. package/dist/util/whenDOMReady.js +11 -10
  405. package/dist/util/whenDOMReady.js.map +1 -0
  406. package/dist/validateThemeRoot.d.ts +2 -0
  407. package/dist/validateThemeRoot.js +47 -0
  408. package/dist/validateThemeRoot.js.map +1 -0
  409. package/global.d.ts +44 -0
  410. package/index.js +1 -1
  411. package/lib/generate-asset-parameters/index.js +8 -5
  412. package/lib/generate-styles/index.js +26 -0
  413. package/lib/generate-version-info/index.js +32 -0
  414. package/package-scripts.js +48 -28
  415. package/package.json +21 -13
  416. package/src/AssetRegistry.ts +11 -0
  417. package/src/Boot.ts +61 -0
  418. package/src/CSP.ts +66 -0
  419. package/src/CustomElementsRegistry.ts +98 -0
  420. package/src/CustomElementsScope.ts +33 -0
  421. package/src/CustomElementsScopeUtils.ts +115 -0
  422. package/src/DOMObserver.ts +28 -0
  423. package/src/Device.ts +121 -0
  424. package/src/EventProvider.ts +87 -0
  425. package/src/FeaturesRegistry.ts +14 -0
  426. package/src/FontFace.ts +31 -0
  427. package/src/InitialConfiguration.ts +207 -0
  428. package/src/Keys.ts +295 -0
  429. package/src/ManagedStyles.ts +92 -0
  430. package/src/MediaRange.ts +109 -0
  431. package/src/{util/parseProperties.js → PropertiesFileFormat.ts} +14 -8
  432. package/src/Render.ts +180 -0
  433. package/src/RenderQueue.ts +71 -0
  434. package/src/Runtimes.ts +114 -0
  435. package/src/StaticArea.ts +3 -0
  436. package/src/StaticAreaItem.ts +113 -0
  437. package/src/SystemCSSVars.ts +10 -0
  438. package/src/Theming.ts +4 -0
  439. package/src/UI5Element.ts +1125 -0
  440. package/src/UI5ElementMetadata.ts +364 -0
  441. package/src/animations/{AnimationQueue.js → AnimationQueue.ts} +8 -7
  442. package/src/animations/animate.ts +64 -0
  443. package/src/animations/scroll.ts +21 -0
  444. package/src/animations/{slideDown.js → slideDown.ts} +27 -34
  445. package/src/animations/{slideUp.js → slideUp.ts} +28 -32
  446. package/src/asset-registries/Icons.ts +161 -0
  447. package/src/asset-registries/Illustrations.ts +73 -0
  448. package/src/asset-registries/LocaleData.ts +172 -0
  449. package/src/asset-registries/Themes.ts +67 -0
  450. package/src/asset-registries/i18n.ts +118 -0
  451. package/src/assets-meta/IconCollectionsAlias.ts +18 -0
  452. package/src/config/AnimationMode.ts +33 -0
  453. package/src/config/{CalendarType.js → CalendarType.ts} +8 -3
  454. package/src/config/FormatSettings.ts +21 -0
  455. package/src/config/Icons.ts +59 -0
  456. package/src/config/Language.ts +72 -0
  457. package/src/config/NoConflict.ts +67 -0
  458. package/src/config/{RTL.js → RTL.ts} +14 -4
  459. package/src/config/Theme.ts +64 -0
  460. package/src/config/ThemeRoots.ts +41 -0
  461. package/src/css/BusyIndicator.css +80 -0
  462. package/src/css/FontFace.css +66 -0
  463. package/src/css/OverrideFontFace.css +32 -0
  464. package/src/css/SystemCSSVars.css +17 -0
  465. package/src/delegate/ItemNavigation.ts +393 -0
  466. package/src/delegate/ResizeHandler.ts +95 -0
  467. package/src/delegate/ScrollEnablement.ts +215 -0
  468. package/src/features/F6Navigation.ts +141 -0
  469. package/src/features/OpenUI5Element.ts +11 -0
  470. package/src/features/OpenUI5Enablement.ts +117 -0
  471. package/src/features/OpenUI5Support.ts +148 -0
  472. package/src/getSharedResource.ts +30 -0
  473. package/src/i18nBundle.ts +108 -0
  474. package/src/locale/{Locale.js → Locale.ts} +15 -5
  475. package/src/locale/RTLAwareRegistry.ts +16 -0
  476. package/src/locale/applyDirection.ts +18 -0
  477. package/src/locale/directionChange.ts +34 -0
  478. package/src/locale/getEffectiveDir.ts +28 -0
  479. package/src/locale/{getLocale.js → getLocale.ts} +20 -5
  480. package/src/locale/languageChange.ts +24 -0
  481. package/src/locale/{nextFallbackLocale.js → nextFallbackLocale.ts} +1 -1
  482. package/src/locale/{normalizeLocale.js → normalizeLocale.ts} +4 -2
  483. package/src/renderer/LitRenderer.ts +60 -0
  484. package/src/renderer/directives/style-map.js +72 -0
  485. package/src/renderer/executeTemplate.ts +40 -0
  486. package/src/theming/CustomStyle.ts +62 -0
  487. package/src/theming/ThemeLoaded.ts +24 -0
  488. package/src/theming/applyTheme.ts +90 -0
  489. package/src/theming/getConstructableStyle.ts +31 -0
  490. package/src/theming/getEffectiveLinksHrefs.ts +24 -0
  491. package/src/theming/getEffectiveStyle.ts +41 -0
  492. package/src/theming/getStylesString.ts +13 -0
  493. package/src/theming/getThemeDesignerTheme.ts +101 -0
  494. package/src/theming/preloadLinks.ts +24 -0
  495. package/src/thirdparty/{_merge.js → _merge.ts} +2 -2
  496. package/src/thirdparty/{isPlainObject.js → isPlainObject.ts} +1 -1
  497. package/src/thirdparty/merge.ts +5 -0
  498. package/src/types/AnimationMode.ts +33 -0
  499. package/src/types/CSSColor.ts +20 -0
  500. package/src/types/CalendarType.ts +38 -0
  501. package/src/types/DOMReference.ts +28 -0
  502. package/src/types/DataType.ts +51 -0
  503. package/src/types/Float.ts +25 -0
  504. package/src/types/Integer.ts +25 -0
  505. package/src/types/InvisibleMessageMode.ts +27 -0
  506. package/src/types/ItemNavigationBehavior.ts +26 -0
  507. package/src/types/NavigationMode.ts +33 -0
  508. package/src/types/ValueState.ts +47 -0
  509. package/src/types.ts +22 -0
  510. package/src/updateShadowRoot.ts +37 -0
  511. package/src/util/AriaLabelHelper.ts +63 -0
  512. package/src/util/Caret.ts +28 -0
  513. package/src/util/ColorConversion.ts +394 -0
  514. package/src/util/{FetchHelper.js → FetchHelper.ts} +7 -7
  515. package/src/util/FocusableElements.ts +80 -0
  516. package/src/util/HTMLSanitizer.ts +9 -0
  517. package/src/util/InvisibleMessage.ts +69 -0
  518. package/src/util/PopupUtils.ts +114 -0
  519. package/src/util/SlotsHelper.ts +39 -0
  520. package/src/util/{StringHelper.js → StringHelper.ts} +7 -7
  521. package/src/util/TabbableElements.ts +56 -0
  522. package/src/util/arraysAreEqual.ts +15 -0
  523. package/src/util/clamp.ts +12 -0
  524. package/src/util/createLinkInHead.ts +25 -0
  525. package/src/util/{createStyleInHead.js → createStyleInHead.ts} +4 -2
  526. package/src/util/debounce.ts +18 -0
  527. package/src/util/{detectNavigatorLanguage.js → detectNavigatorLanguage.ts} +1 -1
  528. package/src/util/escapeRegex.ts +11 -0
  529. package/src/util/{formatMessage.js → formatMessage.ts} +4 -3
  530. package/src/util/generateHighlightedMarkup.ts +43 -0
  531. package/src/util/getActiveElement.ts +11 -0
  532. package/src/util/getClassCopy.ts +12 -0
  533. package/src/util/{getDesigntimePropertyAsArray.js → getDesigntimePropertyAsArray.ts} +1 -1
  534. package/src/util/getEffectiveContentDensity.ts +5 -0
  535. package/src/util/getEffectiveScrollbarStyle.ts +5 -0
  536. package/src/util/getFastNavigationGroups.ts +63 -0
  537. package/src/util/{getFileExtension.js → getFileExtension.ts} +3 -3
  538. package/src/util/getNormalizedTarget.ts +16 -0
  539. package/src/util/getSingletonElementInstance.ts +13 -0
  540. package/src/util/isDefaultSlotProvided.ts +11 -0
  541. package/src/util/isElementClickable.ts +19 -0
  542. package/src/util/isElementHidden.ts +9 -0
  543. package/src/util/isElementInView.ts +15 -0
  544. package/src/util/isElementTabbable.ts +28 -0
  545. package/src/util/{isValidPropertyName.js → isValidPropertyName.ts} +7 -6
  546. package/src/util/{whenDOMReady.js → whenDOMReady.ts} +1 -1
  547. package/src/validateThemeRoot.ts +58 -0
  548. package/tsconfig.json +13 -0
  549. package/used-modules.txt +10 -0
  550. package/bundle.es5.js +0 -28
  551. package/config/.eslintrc.js +0 -3
  552. package/config/rollup.config.js +0 -1
  553. package/dist/RenderScheduler.js +0 -178
  554. package/dist/SVGIconRegistry.js +0 -60
  555. package/dist/animations/config.js +0 -5
  556. package/dist/boot.js +0 -34
  557. package/dist/compatibility/DOMObserver.js +0 -62
  558. package/dist/compatibility/patchNodeValue.js +0 -24
  559. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  560. package/dist/delegate/CustomResize.js +0 -78
  561. package/dist/delegate/NativeResize.js +0 -44
  562. package/dist/features/PropertiesFormatSupport.js +0 -8
  563. package/dist/features/browsersupport/Edge.js +0 -6
  564. package/dist/features/browsersupport/IE11.js +0 -41
  565. package/dist/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
  566. package/dist/renderer/ifDefined.js +0 -21
  567. package/dist/resources/bundle.es5.js +0 -212
  568. package/dist/resources/bundle.es5.js.map +0 -1
  569. package/dist/resources/bundle.esm.js +0 -129
  570. package/dist/resources/bundle.esm.js.map +0 -1
  571. package/dist/test-resources/assets/Themes.js +0 -13
  572. package/dist/test-resources/elements/Child.js +0 -35
  573. package/dist/test-resources/elements/Generic.js +0 -84
  574. package/dist/test-resources/elements/GenericExt.js +0 -26
  575. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  576. package/dist/test-resources/elements/Parent.js +0 -37
  577. package/dist/test-resources/elements/WithStaticArea.js +0 -76
  578. package/dist/test-resources/pages/AllTestElements.html +0 -42
  579. package/dist/test-resources/pages/Configuration.html +0 -20
  580. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  581. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  582. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  583. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  584. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  585. package/dist/test-resources/specs/StaticArea.spec.js +0 -34
  586. package/dist/test-resources/specs/Theming.spec.js +0 -31
  587. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  588. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  589. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  590. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  591. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  592. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  593. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  594. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  595. package/dist/theming/CSSVarsPonyfill.js +0 -24
  596. package/dist/theming/adaptCSSForIE.js +0 -90
  597. package/dist/theming/createComponentStyleTag.js +0 -49
  598. package/dist/theming/createThemePropertiesStyleTag.js +0 -20
  599. package/dist/thirdparty/Array.from.js +0 -16
  600. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  601. package/dist/thirdparty/Array.prototype.find.js +0 -46
  602. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  603. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  604. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  605. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  606. package/dist/thirdparty/Number.isInteger.js +0 -5
  607. package/dist/thirdparty/Number.isNaN.js +0 -1
  608. package/dist/thirdparty/Number.parseInt.js +0 -1
  609. package/dist/thirdparty/Object.assign.js +0 -31
  610. package/dist/thirdparty/Object.entries.js +0 -11
  611. package/dist/thirdparty/Symbol.js +0 -2
  612. package/dist/thirdparty/WeakSet.js +0 -27
  613. package/dist/thirdparty/es6-string-methods.js +0 -182
  614. package/dist/thirdparty/events-polyfills.js +0 -89
  615. package/dist/thirdparty/fetch.js +0 -1
  616. package/dist/thirdparty/template.js +0 -600
  617. package/dist/thirdparty/webcomponents-sd-ce-pf.js +0 -318
  618. package/dist/types/CSSSize.js +0 -9
  619. package/dist/types/PopupState.js +0 -37
  620. package/dist/util/findNodeOwner.js +0 -35
  621. package/dist/util/isDescendantOf.js +0 -15
  622. package/dist/util/isNodeClickable.js +0 -19
  623. package/dist/util/isNodeHidden.js +0 -9
  624. package/dist/util/isNodeTabbable.js +0 -28
  625. package/dist/util/isSlot.js +0 -3
  626. package/dist/util/parseProperties.js +0 -89
  627. package/dist/util/setToArray.js +0 -10
  628. package/dist/webcomponentsjs/LICENSE.md +0 -19
  629. package/dist/webcomponentsjs/README.md +0 -229
  630. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  631. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  632. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  633. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  634. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  635. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  636. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  637. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  638. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  639. package/dist/webcomponentsjs/package.json +0 -46
  640. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  641. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  642. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  643. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  644. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  645. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  646. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  647. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  648. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  649. package/src/AssetRegistry.js +0 -10
  650. package/src/CustomElementsRegistry.js +0 -39
  651. package/src/Device.js +0 -823
  652. package/src/EventProvider.js +0 -81
  653. package/src/FeaturesRegistry.js +0 -11
  654. package/src/FontFace.js +0 -73
  655. package/src/InitialConfiguration.js +0 -131
  656. package/src/Keys.js +0 -170
  657. package/src/RenderQueue.js +0 -42
  658. package/src/RenderScheduler.js +0 -178
  659. package/src/SVGIconRegistry.js +0 -60
  660. package/src/StaticArea.js +0 -41
  661. package/src/StaticAreaItem.js +0 -105
  662. package/src/SystemCSSVars.js +0 -31
  663. package/src/Theming.js +0 -3
  664. package/src/UI5Element.js +0 -992
  665. package/src/UI5ElementMetadata.js +0 -187
  666. package/src/animations/animate.js +0 -53
  667. package/src/animations/config.js +0 -5
  668. package/src/animations/scroll.js +0 -28
  669. package/src/asset-registries/Icons.js +0 -31
  670. package/src/asset-registries/LocaleData.js +0 -125
  671. package/src/asset-registries/Themes.js +0 -87
  672. package/src/asset-registries/i18n.js +0 -106
  673. package/src/boot.js +0 -34
  674. package/src/compatibility/DOMObserver.js +0 -62
  675. package/src/compatibility/patchNodeValue.js +0 -24
  676. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  677. package/src/config/AnimationMode.js +0 -13
  678. package/src/config/FormatSettings.js +0 -13
  679. package/src/config/Language.js +0 -41
  680. package/src/config/NoConflict.js +0 -51
  681. package/src/config/Theme.js +0 -28
  682. package/src/delegate/CustomResize.js +0 -78
  683. package/src/delegate/ItemNavigation.js +0 -282
  684. package/src/delegate/NativeResize.js +0 -44
  685. package/src/delegate/ResizeHandler.js +0 -65
  686. package/src/delegate/ScrollEnablement.js +0 -159
  687. package/src/features/OpenUI5Support.js +0 -90
  688. package/src/features/PropertiesFormatSupport.js +0 -8
  689. package/src/features/browsersupport/Edge.js +0 -6
  690. package/src/features/browsersupport/IE11.js +0 -41
  691. package/src/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
  692. package/src/i18nBundle.js +0 -33
  693. package/src/locale/RTLAwareRegistry.js +0 -14
  694. package/src/locale/applyDirection.js +0 -15
  695. package/src/locale/languageChange.js +0 -22
  696. package/src/renderer/LitRenderer.js +0 -15
  697. package/src/renderer/ifDefined.js +0 -21
  698. package/src/theming/CSSVarsPonyfill.js +0 -24
  699. package/src/theming/CustomStyle.js +0 -19
  700. package/src/theming/adaptCSSForIE.js +0 -90
  701. package/src/theming/applyTheme.js +0 -81
  702. package/src/theming/createComponentStyleTag.js +0 -49
  703. package/src/theming/createThemePropertiesStyleTag.js +0 -20
  704. package/src/theming/getConstructableStyle.js +0 -25
  705. package/src/theming/getEffectiveStyle.js +0 -15
  706. package/src/theming/getThemeDesignerTheme.js +0 -67
  707. package/src/thirdparty/Array.from.js +0 -16
  708. package/src/thirdparty/Array.prototype.fill.js +0 -44
  709. package/src/thirdparty/Array.prototype.find.js +0 -46
  710. package/src/thirdparty/Array.prototype.includes.js +0 -51
  711. package/src/thirdparty/Element.prototype.closest.js +0 -11
  712. package/src/thirdparty/Element.prototype.matches.js +0 -6
  713. package/src/thirdparty/Map.prototype.keys.js +0 -9
  714. package/src/thirdparty/Number.isInteger.js +0 -5
  715. package/src/thirdparty/Number.isNaN.js +0 -1
  716. package/src/thirdparty/Number.parseInt.js +0 -1
  717. package/src/thirdparty/Object.assign.js +0 -31
  718. package/src/thirdparty/Object.entries.js +0 -11
  719. package/src/thirdparty/Symbol.js +0 -2
  720. package/src/thirdparty/WeakSet.js +0 -27
  721. package/src/thirdparty/es6-string-methods.js +0 -182
  722. package/src/thirdparty/events-polyfills.js +0 -89
  723. package/src/thirdparty/fetch.js +0 -1
  724. package/src/thirdparty/merge.js +0 -10
  725. package/src/thirdparty/template.js +0 -600
  726. package/src/thirdparty/webcomponents-sd-ce-pf.js +0 -318
  727. package/src/types/AnimationMode.js +0 -7
  728. package/src/types/CSSSize.js +0 -9
  729. package/src/types/CalendarType.js +0 -22
  730. package/src/types/DataType.js +0 -25
  731. package/src/types/Float.js +0 -10
  732. package/src/types/Integer.js +0 -9
  733. package/src/types/ItemNavigationBehavior.js +0 -21
  734. package/src/types/NavigationMode.js +0 -7
  735. package/src/types/PopupState.js +0 -37
  736. package/src/types/ValueState.js +0 -22
  737. package/src/util/FocusableElements.js +0 -66
  738. package/src/util/TabbableElements.js +0 -47
  739. package/src/util/findNodeOwner.js +0 -35
  740. package/src/util/isDescendantOf.js +0 -15
  741. package/src/util/isNodeClickable.js +0 -19
  742. package/src/util/isNodeHidden.js +0 -9
  743. package/src/util/isNodeTabbable.js +0 -28
  744. package/src/util/isSlot.js +0 -3
  745. package/src/util/setToArray.js +0 -10
@@ -1,13 +1,26 @@
1
1
  import { getAnimationMode as getConfiguredAnimationMode } from "../InitialConfiguration.js";
2
-
3
- let animationMode;
4
-
2
+ import AnimationMode from "../types/AnimationMode.js";
3
+ let curAnimationMode;
4
+ /**
5
+ * Returns the animation mode - "full", "basic", "minimal" or "none".
6
+ * @public
7
+ * @returns { AnimationMode }
8
+ */
5
9
  const getAnimationMode = () => {
6
- if (animationMode === undefined) {
7
- animationMode = getConfiguredAnimationMode();
8
- }
9
-
10
- return animationMode;
10
+ if (curAnimationMode === undefined) {
11
+ curAnimationMode = getConfiguredAnimationMode();
12
+ }
13
+ return curAnimationMode;
11
14
  };
12
-
13
- export { getAnimationMode }; // eslint-disable-line
15
+ /**
16
+ * Sets the animation mode - "full", "basic", "minimal" or "none".
17
+ * @public
18
+ * @param { AnimationMode } animationMode
19
+ */
20
+ const setAnimationMode = (animationMode) => {
21
+ if (Object.values(AnimationMode).includes(animationMode)) {
22
+ curAnimationMode = animationMode;
23
+ }
24
+ };
25
+ export { getAnimationMode, setAnimationMode, };
26
+ //# sourceMappingURL=AnimationMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnimationMode.js","sourceRoot":"","sources":["../../src/config/AnimationMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,aAAa,MAAM,2BAA2B,CAAC;AAEtD,IAAI,gBAA+B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,GAAkB,EAAE;IAC5C,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACnC,gBAAgB,GAAG,0BAA0B,EAAE,CAAC;KAChD;IAED,OAAO,gBAAgB,CAAC;AACzB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,aAA4B,EAAE,EAAE;IACzD,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;QACzD,gBAAgB,GAAG,aAAa,CAAC;KACjC;AACF,CAAC,CAAC;AAEF,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import CalendarType from "../types/CalendarType.js";
2
+ /**
3
+ * Returns the configured or default calendar type.
4
+ * @public
5
+ * @returns { CalendarType } the effective calendar type
6
+ */
7
+ declare const getCalendarType: () => CalendarType;
8
+ export { getCalendarType };
@@ -1,18 +1,19 @@
1
1
  import CalendarType from "../types/CalendarType.js";
2
2
  import { getCalendarType as getConfiguredCalendarType } from "../InitialConfiguration.js";
3
-
4
3
  let calendarType;
5
-
4
+ /**
5
+ * Returns the configured or default calendar type.
6
+ * @public
7
+ * @returns { CalendarType } the effective calendar type
8
+ */
6
9
  const getCalendarType = () => {
7
- if (calendarType === undefined) {
8
- calendarType = getConfiguredCalendarType();
9
- }
10
-
11
- if (CalendarType.isValid(calendarType)) {
12
- return calendarType;
13
- }
14
-
15
- return CalendarType.Gregorian;
10
+ if (calendarType === undefined) {
11
+ calendarType = getConfiguredCalendarType();
12
+ }
13
+ if (calendarType && calendarType in CalendarType) {
14
+ return calendarType;
15
+ }
16
+ return CalendarType.Gregorian;
16
17
  };
17
-
18
18
  export { getCalendarType }; // eslint-disable-line
19
+ //# sourceMappingURL=CalendarType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CalendarType.js","sourceRoot":"","sources":["../../src/config/CalendarType.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,eAAe,IAAI,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE1F,IAAI,YAAsC,CAAC;AAE3C;;;;GAIG;AACH,MAAM,eAAe,GAAG,GAAiB,EAAE;IAC1C,IAAI,YAAY,KAAK,SAAS,EAAE;QAC/B,YAAY,GAAG,yBAAyB,EAAE,CAAC;KAC3C;IAED,IAAI,YAAY,IAAI,YAAY,IAAI,YAAY,EAAE;QACjD,OAAO,YAAY,CAAC;KACpB;IAED,OAAO,YAAY,CAAC,SAAS,CAAC;AAC/B,CAAC,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC,sBAAsB"}
@@ -0,0 +1,11 @@
1
+ type FormatSettings = {
2
+ firstDayOfWeek?: number;
3
+ };
4
+ /**
5
+ * Returns the first day of the week from the configured format settings or based on the current locale.
6
+ * @public
7
+ * @returns {Number} 0 (Sunday) through 6 (Saturday)
8
+ */
9
+ declare const getFirstDayOfWeek: () => number | undefined;
10
+ export { getFirstDayOfWeek };
11
+ export type { FormatSettings };
@@ -1,13 +1,15 @@
1
1
  import { getFormatSettings } from "../InitialConfiguration.js";
2
-
3
2
  let formatSettings;
4
-
3
+ /**
4
+ * Returns the first day of the week from the configured format settings or based on the current locale.
5
+ * @public
6
+ * @returns {Number} 0 (Sunday) through 6 (Saturday)
7
+ */
5
8
  const getFirstDayOfWeek = () => {
6
- if (formatSettings === undefined) {
7
- formatSettings = getFormatSettings();
8
- }
9
-
10
- return formatSettings.firstDayOfWeek;
9
+ if (formatSettings === undefined) {
10
+ formatSettings = getFormatSettings();
11
+ }
12
+ return formatSettings.firstDayOfWeek;
11
13
  };
12
-
13
14
  export { getFirstDayOfWeek }; // eslint-disable-line
15
+ //# sourceMappingURL=FormatSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormatSettings.js","sourceRoot":"","sources":["../../src/config/FormatSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAI/D,IAAI,cAA8B,CAAC;AAEnC;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,GAAuB,EAAE;IAClD,IAAI,cAAc,KAAK,SAAS,EAAE;QACjC,cAAc,GAAG,iBAAiB,EAAE,CAAC;KACrC;IAED,OAAO,cAAc,CAAC,cAAc,CAAC;AACtC,CAAC,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,sBAAsB"}
@@ -0,0 +1,30 @@
1
+ declare enum IconCollection {
2
+ v4 = "SAP-icons",
3
+ v5 = "SAP-icons-v5"
4
+ }
5
+ /**
6
+ * Sets the default icon collection (SAP-icons font v4 or SAP-icons font v5) per theme,
7
+ * which will be applied in case icon collection is not specified.
8
+ *
9
+ * Note: by default SAP-icons-v5 is used in all SAP Horizon variants and SAP-icons-v4 for all the rest.
10
+ * @public
11
+ * @param {string} theme
12
+ * @param {IconCollection} collectionName
13
+ */
14
+ declare const setDefaultIconCollection: (theme: string, collectionName: "horizon" | IconCollection) => void;
15
+ /**
16
+ * Returns the default icon collection (v4 or v5) for given theme,
17
+ * that is configured.
18
+ *
19
+ * @param {string} theme
20
+ * @public
21
+ * @returns {string | undefined}
22
+ */
23
+ declare const getDefaultIconCollection: (theme: string) => string | undefined;
24
+ /**
25
+ * Returns the effective icon collection that will be applied for icon web components
26
+ * whenever namespace is not specified.
27
+ * @returns {string}
28
+ */
29
+ declare const getEffectiveDefaultIconCollection: () => string;
30
+ export { setDefaultIconCollection, getDefaultIconCollection, getEffectiveDefaultIconCollection, };
@@ -0,0 +1,48 @@
1
+ import { getTheme, isThemeFamily } from "./Theme.js";
2
+ const IconCollectionConfiguration = new Map();
3
+ var IconCollection;
4
+ (function (IconCollection) {
5
+ IconCollection["v4"] = "SAP-icons";
6
+ IconCollection["v5"] = "SAP-icons-v5";
7
+ })(IconCollection || (IconCollection = {}));
8
+ /**
9
+ * Sets the default icon collection (SAP-icons font v4 or SAP-icons font v5) per theme,
10
+ * which will be applied in case icon collection is not specified.
11
+ *
12
+ * Note: by default SAP-icons-v5 is used in all SAP Horizon variants and SAP-icons-v4 for all the rest.
13
+ * @public
14
+ * @param {string} theme
15
+ * @param {IconCollection} collectionName
16
+ */
17
+ const setDefaultIconCollection = (theme, collectionName) => {
18
+ if (collectionName === "horizon") {
19
+ collectionName = IconCollection.v5;
20
+ }
21
+ IconCollectionConfiguration.set(theme, collectionName);
22
+ };
23
+ /**
24
+ * Returns the default icon collection (v4 or v5) for given theme,
25
+ * that is configured.
26
+ *
27
+ * @param {string} theme
28
+ * @public
29
+ * @returns {string | undefined}
30
+ */
31
+ const getDefaultIconCollection = (theme) => {
32
+ return IconCollectionConfiguration.get(theme);
33
+ };
34
+ /**
35
+ * Returns the effective icon collection that will be applied for icon web components
36
+ * whenever namespace is not specified.
37
+ * @returns {string}
38
+ */
39
+ const getEffectiveDefaultIconCollection = () => {
40
+ const currentTheme = getTheme();
41
+ const currentThemeConfiguration = IconCollectionConfiguration.get(currentTheme);
42
+ if (currentThemeConfiguration) {
43
+ return currentThemeConfiguration;
44
+ }
45
+ return isThemeFamily("sap_horizon") ? IconCollection.v5 : IconCollection.v4;
46
+ };
47
+ export { setDefaultIconCollection, getDefaultIconCollection, getEffectiveDefaultIconCollection, };
48
+ //# sourceMappingURL=Icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../../src/config/Icons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAkB,CAAC;AAE9D,IAAK,cAGJ;AAHD,WAAK,cAAc;IAClB,kCAAgB,CAAA;IAChB,qCAAmB,CAAA;AACpB,CAAC,EAHI,cAAc,KAAd,cAAc,QAGlB;AAED;;;;;;;;GAQG;AACH,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAE,cAA0C,EAAE,EAAE;IAC9F,IAAI,cAAc,KAAK,SAAS,EAAE;QACjC,cAAc,GAAG,cAAc,CAAC,EAAE,CAAC;KACnC;IAED,2BAA2B,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAAsB,EAAE;IACtE,OAAO,2BAA2B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,iCAAiC,GAAG,GAAG,EAAE;IAC9C,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC;IAChC,MAAM,yBAAyB,GAAG,2BAA2B,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEhF,IAAI,yBAAyB,EAAE;QAC9B,OAAO,yBAAyB,CAAC;KACjC;IAED,OAAO,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC;AAC7E,CAAC,CAAC;AAEF,OAAO,EACN,wBAAwB,EACxB,wBAAwB,EACxB,iCAAiC,GACjC,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Returns the currently configured language, or the browser language as a fallback.
3
+ * @public
4
+ * @returns {string}
5
+ */
6
+ declare const getLanguage: () => string | undefined;
7
+ /**
8
+ * Changes the current language, re-fetches all message bundles, updates all language-aware components
9
+ * and returns a promise that resolves when all rendering is done.
10
+ *
11
+ * @param {string} language
12
+ * @public
13
+ * @returns {Promise<void>}
14
+ */
15
+ declare const setLanguage: (language: string) => Promise<void>;
16
+ /**
17
+ * Defines if the default language, that is inlined, should be
18
+ * fetched over the network instead of using the inlined one.
19
+ * <b>Note:</b> By default the language will not be fetched.
20
+ *
21
+ * @public
22
+ * @param {boolean} fetchDefaultLang
23
+ */
24
+ declare const setFetchDefaultLanguage: (fetchDefaultLang: boolean) => void;
25
+ /**
26
+ * Returns if the default language, that is inlined, should be fetched over the network.
27
+ * @public
28
+ * @returns {boolean}
29
+ */
30
+ declare const getFetchDefaultLanguage: () => boolean;
31
+ export { getLanguage, setLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
@@ -1,41 +1,56 @@
1
- import { getLanguage as getConfiguredLanguage } from "../InitialConfiguration.js";
1
+ import { getLanguage as getConfiguredLanguage, getFetchDefaultLanguage as getConfiguredFetchDefaultLanguage, } from "../InitialConfiguration.js";
2
2
  import { fireLanguageChange } from "../locale/languageChange.js";
3
- import RenderScheduler from "../RenderScheduler.js";
4
-
5
- let language;
6
-
3
+ import { reRenderAllUI5Elements } from "../Render.js";
4
+ let curLanguage;
5
+ let fetchDefaultLanguage;
7
6
  /**
8
- * Returns the currently configured language, or the browser language as a fallback
9
- * @returns {String}
7
+ * Returns the currently configured language, or the browser language as a fallback.
8
+ * @public
9
+ * @returns {string}
10
10
  */
11
11
  const getLanguage = () => {
12
- if (language === undefined) {
13
- language = getConfiguredLanguage();
14
- }
15
- return language;
12
+ if (curLanguage === undefined) {
13
+ curLanguage = getConfiguredLanguage();
14
+ }
15
+ return curLanguage;
16
16
  };
17
-
18
17
  /**
19
18
  * Changes the current language, re-fetches all message bundles, updates all language-aware components
20
- * and returns a promise that resolves when all rendering is done
19
+ * and returns a promise that resolves when all rendering is done.
21
20
  *
22
- * @param newLanguage
21
+ * @param {string} language
22
+ * @public
23
23
  * @returns {Promise<void>}
24
24
  */
25
- const setLanguage = async newLanguage => {
26
- if (language === newLanguage) {
27
- return;
28
- }
29
-
30
- language = newLanguage;
31
-
32
- const listenersResults = fireLanguageChange(newLanguage);
33
- await Promise.all(listenersResults);
34
- RenderScheduler.reRenderAllUI5Elements({ languageAware: true });
35
- return RenderScheduler.whenFinished();
25
+ const setLanguage = async (language) => {
26
+ if (curLanguage === language) {
27
+ return;
28
+ }
29
+ curLanguage = language;
30
+ await fireLanguageChange(language);
31
+ await reRenderAllUI5Elements({ languageAware: true });
36
32
  };
37
-
38
- export {
39
- getLanguage,
40
- setLanguage,
33
+ /**
34
+ * Defines if the default language, that is inlined, should be
35
+ * fetched over the network instead of using the inlined one.
36
+ * <b>Note:</b> By default the language will not be fetched.
37
+ *
38
+ * @public
39
+ * @param {boolean} fetchDefaultLang
40
+ */
41
+ const setFetchDefaultLanguage = (fetchDefaultLang) => {
42
+ fetchDefaultLanguage = fetchDefaultLang;
43
+ };
44
+ /**
45
+ * Returns if the default language, that is inlined, should be fetched over the network.
46
+ * @public
47
+ * @returns {boolean}
48
+ */
49
+ const getFetchDefaultLanguage = () => {
50
+ if (fetchDefaultLanguage === undefined) {
51
+ setFetchDefaultLanguage(getConfiguredFetchDefaultLanguage());
52
+ }
53
+ return fetchDefaultLanguage;
41
54
  };
55
+ export { getLanguage, setLanguage, setFetchDefaultLanguage, getFetchDefaultLanguage, };
56
+ //# sourceMappingURL=Language.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Language.js","sourceRoot":"","sources":["../../src/config/Language.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,IAAI,qBAAqB,EACpC,uBAAuB,IAAI,iCAAiC,GAC5D,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD,IAAI,WAA+B,CAAC;AACpC,IAAI,oBAA6B,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,GAAG,GAAuB,EAAE;IAC5C,IAAI,WAAW,KAAK,SAAS,EAAE;QAC9B,WAAW,GAAG,qBAAqB,EAAE,CAAC;KACtC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG,KAAK,EAAE,QAAgB,EAAiB,EAAE;IAC7D,IAAI,WAAW,KAAK,QAAQ,EAAE;QAC7B,OAAO;KACP;IAED,WAAW,GAAG,QAAQ,CAAC;IAEvB,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,sBAAsB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,uBAAuB,GAAG,CAAC,gBAAyB,EAAE,EAAE;IAC7D,oBAAoB,GAAG,gBAAgB,CAAC;AACzC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,GAAY,EAAE;IAC7C,IAAI,oBAAoB,KAAK,SAAS,EAAE;QACvC,uBAAuB,CAAC,iCAAiC,EAAE,CAAC,CAAC;KAC7D;IAED,OAAO,oBAAoB,CAAC;AAC7B,CAAC,CAAC;AAEF,OAAO,EACN,WAAW,EACX,WAAW,EACX,uBAAuB,EACvB,uBAAuB,GACvB,CAAC"}
@@ -0,0 +1,20 @@
1
+ type NoConflictData = boolean | {
2
+ events: Array<string>;
3
+ };
4
+ /**
5
+ * Returns if the "noConflict" configuration is set.
6
+ * @public
7
+ * @returns { NoConflictData }
8
+ */
9
+ declare const getNoConflict: () => NoConflictData;
10
+ /**
11
+ * Sets the "noConflict" mode.
12
+ * - When "false" (default value), all custom events are fired with and without the "ui5-" prefix.
13
+ * - When "true", all custom events are fired with the "ui5-" prefix only.
14
+ * - When an object is supplied, just the specified events will be fired with the "ui5-" prefix.
15
+ * @public
16
+ * @param { NoConflictData } noConflictData
17
+ */
18
+ declare const setNoConflict: (noConflictData: NoConflictData) => void;
19
+ declare const skipOriginalEvent: (eventName: string) => boolean;
20
+ export { getNoConflict, setNoConflict, skipOriginalEvent, };
@@ -1,51 +1,50 @@
1
1
  import { getNoConflict as getConfiguredNoConflict } from "../InitialConfiguration.js";
2
-
3
2
  // Fire these events even with noConflict: true
4
3
  const excludeList = [
5
- "value-changed",
4
+ "value-changed",
6
5
  ];
7
-
8
- const shouldFireOriginalEvent = eventName => {
9
- return excludeList.includes(eventName);
10
- };
11
-
12
6
  let noConflict;
13
-
14
- const shouldNotFireOriginalEvent = eventName => {
15
- const nc = getNoConflict();
16
- return !(nc.events && nc.events.includes && nc.events.includes(eventName));
7
+ const shouldFireOriginalEvent = (eventName) => {
8
+ return excludeList.includes(eventName);
17
9
  };
18
-
19
- const getNoConflict = () => {
20
- if (noConflict === undefined) {
21
- noConflict = getConfiguredNoConflict();
22
- }
23
-
24
- return noConflict;
10
+ const shouldNotFireOriginalEvent = (eventName) => {
11
+ const nc = getNoConflict();
12
+ // return !(nc.events && nc.events.includes && nc.events.includes(eventName));
13
+ return !(typeof nc !== "boolean" && nc.events && nc.events.includes && nc.events.includes(eventName));
25
14
  };
26
-
27
- const skipOriginalEvent = eventName => {
28
- const nc = getNoConflict();
29
-
30
- // Always fire these events
31
- if (shouldFireOriginalEvent(eventName)) {
32
- return false;
33
- }
34
-
35
- // Read from the configuration
36
- if (nc === true) {
37
- return true;
38
- }
39
-
40
- return !shouldNotFireOriginalEvent(eventName);
15
+ /**
16
+ * Returns if the "noConflict" configuration is set.
17
+ * @public
18
+ * @returns { NoConflictData }
19
+ */
20
+ const getNoConflict = () => {
21
+ if (noConflict === undefined) {
22
+ noConflict = getConfiguredNoConflict();
23
+ }
24
+ return noConflict;
41
25
  };
42
-
43
- const setNoConflict = noConflictData => {
44
- noConflict = noConflictData;
26
+ /**
27
+ * Sets the "noConflict" mode.
28
+ * - When "false" (default value), all custom events are fired with and without the "ui5-" prefix.
29
+ * - When "true", all custom events are fired with the "ui5-" prefix only.
30
+ * - When an object is supplied, just the specified events will be fired with the "ui5-" prefix.
31
+ * @public
32
+ * @param { NoConflictData } noConflictData
33
+ */
34
+ const setNoConflict = (noConflictData) => {
35
+ noConflict = noConflictData;
45
36
  };
46
-
47
- export {
48
- getNoConflict,
49
- setNoConflict,
50
- skipOriginalEvent,
37
+ const skipOriginalEvent = (eventName) => {
38
+ const nc = getNoConflict();
39
+ // Always fire these events
40
+ if (shouldFireOriginalEvent(eventName)) {
41
+ return false;
42
+ }
43
+ // Read from the configuration
44
+ if (nc === true) {
45
+ return true;
46
+ }
47
+ return !shouldNotFireOriginalEvent(eventName);
51
48
  };
49
+ export { getNoConflict, setNoConflict, skipOriginalEvent, };
50
+ //# sourceMappingURL=NoConflict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoConflict.js","sourceRoot":"","sources":["../../src/config/NoConflict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAEtF,+CAA+C;AAC/C,MAAM,WAAW,GAAG;IACnB,eAAe;CACf,CAAC;AAIF,IAAI,UAA0B,CAAC;AAE/B,MAAM,uBAAuB,GAAG,CAAC,SAAiB,EAAE,EAAE;IACrD,OAAO,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAAG,CAAC,SAAiB,EAAE,EAAE;IACxD,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAC3B,8EAA8E;IAC9E,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,SAAS,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AACvG,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAAG,GAAmB,EAAE;IAC1C,IAAI,UAAU,KAAK,SAAS,EAAE;QAC7B,UAAU,GAAG,uBAAuB,EAAE,CAAC;KACvC;IAED,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,CAAC,cAA8B,EAAE,EAAE;IACxD,UAAU,GAAG,cAAc,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,EAAE;IAC/C,MAAM,EAAE,GAAG,aAAa,EAAE,CAAC;IAE3B,2BAA2B;IAC3B,IAAI,uBAAuB,CAAC,SAAS,CAAC,EAAE;QACvC,OAAO,KAAK,CAAC;KACb;IAED,8BAA8B;IAC9B,IAAI,EAAE,KAAK,IAAI,EAAE;QAChB,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,OAAO,EACN,aAAa,EACb,aAAa,EACb,iBAAiB,GACjB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Gets the effective RTL setting by first checking the configuration
3
+ * and if not set using the currently set language or the navigator language if the language is not explicitly set.
4
+ * @returns {boolean} whether RTL should be used
5
+ */
6
+ declare const getRTL: () => boolean;
7
+ export { getRTL };
@@ -2,30 +2,33 @@ import { getRTL as getConfiguredRTL } from "../InitialConfiguration.js";
2
2
  import { getLanguage } from "./Language.js";
3
3
  import getDesigntimePropertyAsArray from "../util/getDesigntimePropertyAsArray.js";
4
4
  import detectNavigatorLanguage from "../util/detectNavigatorLanguage.js";
5
-
6
5
  const M_ISO639_OLD_TO_NEW = {
7
- "iw": "he",
8
- "ji": "yi",
9
- "in": "id",
10
- "sh": "sr",
6
+ "iw": "he",
7
+ "ji": "yi",
8
+ "in": "id",
9
+ "sh": "sr",
11
10
  };
12
-
13
11
  const A_RTL_LOCALES = getDesigntimePropertyAsArray("$cldr-rtl-locales:ar,fa,he$") || [];
14
-
15
- const impliesRTL = language => {
16
- language = (language && M_ISO639_OLD_TO_NEW[language]) || language;
17
-
18
- return A_RTL_LOCALES.indexOf(language) >= 0;
12
+ /**
13
+ * Checks whether the language is using RTL
14
+ * @param {string} language
15
+ * @returns {boolean} whether the language is using RTL
16
+ */
17
+ const impliesRTL = (language) => {
18
+ language = (language && M_ISO639_OLD_TO_NEW[language]) || language;
19
+ return A_RTL_LOCALES.indexOf(language) >= 0;
19
20
  };
20
-
21
+ /**
22
+ * Gets the effective RTL setting by first checking the configuration
23
+ * and if not set using the currently set language or the navigator language if the language is not explicitly set.
24
+ * @returns {boolean} whether RTL should be used
25
+ */
21
26
  const getRTL = () => {
22
- const configurationRTL = getConfiguredRTL();
23
-
24
- if (configurationRTL !== null) {
25
- return !!configurationRTL;
26
- }
27
-
28
- return impliesRTL(getLanguage() || detectNavigatorLanguage());
27
+ const configurationRTL = getConfiguredRTL();
28
+ if (configurationRTL !== undefined) {
29
+ return !!configurationRTL;
30
+ }
31
+ return impliesRTL(getLanguage() || detectNavigatorLanguage());
29
32
  };
30
-
31
33
  export { getRTL }; // eslint-disable-line
34
+ //# sourceMappingURL=RTL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RTL.js","sourceRoot":"","sources":["../../src/config/RTL.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,4BAA4B,MAAM,yCAAyC,CAAC;AACnF,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AAEzE,MAAM,mBAAmB,GAAG;IAC3B,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;CACV,CAAC;AAEF,MAAM,aAAa,GAAG,4BAA4B,CAAC,6BAA6B,CAAC,IAAI,EAAE,CAAC;AAExF;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE;IACvC,QAAQ,GAAG,CAAC,QAAQ,IAAI,mBAAmB,CAAC,QAA4C,CAAC,CAAC,IAAI,QAAQ,CAAC;IAEvG,OAAO,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,GAAG,GAAY,EAAE;IAC5B,MAAM,gBAAgB,GAAG,gBAAgB,EAAE,CAAC;IAE5C,IAAI,gBAAgB,KAAK,SAAS,EAAE;QACnC,OAAO,CAAC,CAAC,gBAAgB,CAAC;KAC1B;IAED,OAAO,UAAU,CAAC,WAAW,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,sBAAsB"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Returns the current theme.
3
+ * @public
4
+ * @returns {string} the current theme name
5
+ */
6
+ declare const getTheme: () => string;
7
+ /**
8
+ * Applies a new theme after fetching its assets from the network.
9
+ * @public
10
+ * @param {string} theme the name of the new theme
11
+ * @returns {Promise<void>} a promise that is resolved when the new theme assets have been fetched and applied to the DOM
12
+ */
13
+ declare const setTheme: (theme: string) => Promise<void>;
14
+ /**
15
+ * Returns if the given theme name is the one currently applied.
16
+ * @private
17
+ * @param {string} theme
18
+ * @returns {boolean}
19
+ */
20
+ declare const isTheme: (theme: string) => boolean;
21
+ /**
22
+ * Returns if the current theme is part of given theme family.
23
+ * @private
24
+ * @param {string} theme the theme family
25
+ * @returns {boolean}
26
+ */
27
+ declare const isThemeFamily: (theme: string) => boolean;
28
+ export { getTheme, setTheme, isTheme, isThemeFamily, };
@@ -1,28 +1,51 @@
1
1
  import { getTheme as getConfiguredTheme } from "../InitialConfiguration.js";
2
+ import { reRenderAllUI5Elements } from "../Render.js";
2
3
  import applyTheme from "../theming/applyTheme.js";
3
-
4
- let theme;
5
-
4
+ let curTheme;
5
+ /**
6
+ * Returns the current theme.
7
+ * @public
8
+ * @returns {string} the current theme name
9
+ */
6
10
  const getTheme = () => {
7
- if (theme === undefined) {
8
- theme = getConfiguredTheme();
9
- }
10
-
11
- return theme;
11
+ if (curTheme === undefined) {
12
+ curTheme = getConfiguredTheme();
13
+ }
14
+ return curTheme;
12
15
  };
13
-
14
- const setTheme = async newTheme => {
15
- if (theme === newTheme) {
16
- return;
17
- }
18
-
19
- theme = newTheme;
20
-
21
- // Update CSS Custom Properties
22
- await applyTheme(theme);
16
+ /**
17
+ * Applies a new theme after fetching its assets from the network.
18
+ * @public
19
+ * @param {string} theme the name of the new theme
20
+ * @returns {Promise<void>} a promise that is resolved when the new theme assets have been fetched and applied to the DOM
21
+ */
22
+ const setTheme = async (theme) => {
23
+ if (curTheme === theme) {
24
+ return;
25
+ }
26
+ curTheme = theme;
27
+ // Update CSS Custom Properties
28
+ await applyTheme(curTheme);
29
+ await reRenderAllUI5Elements({ themeAware: true });
23
30
  };
24
-
25
- export {
26
- getTheme,
27
- setTheme,
31
+ /**
32
+ * Returns if the given theme name is the one currently applied.
33
+ * @private
34
+ * @param {string} theme
35
+ * @returns {boolean}
36
+ */
37
+ const isTheme = (theme) => {
38
+ const currentTheme = getTheme();
39
+ return currentTheme === theme || currentTheme === `${theme}_exp`;
28
40
  };
41
+ /**
42
+ * Returns if the current theme is part of given theme family.
43
+ * @private
44
+ * @param {string} theme the theme family
45
+ * @returns {boolean}
46
+ */
47
+ const isThemeFamily = (theme) => {
48
+ return getTheme().startsWith(theme);
49
+ };
50
+ export { getTheme, setTheme, isTheme, isThemeFamily, };
51
+ //# sourceMappingURL=Theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Theme.js","sourceRoot":"","sources":["../../src/config/Theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,IAAI,QAAgB,CAAC;AAErB;;;;GAIG;AACH,MAAM,QAAQ,GAAG,GAAW,EAAE;IAC7B,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC3B,QAAQ,GAAG,kBAAkB,EAAE,CAAC;KAChC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAa,EAAiB,EAAE;IACvD,IAAI,QAAQ,KAAK,KAAK,EAAE;QACvB,OAAO;KACP;IAED,QAAQ,GAAG,KAAK,CAAC;IAEjB,+BAA+B;IAC/B,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,sBAAsB,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE;IACjC,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC;IAChC,OAAO,YAAY,KAAK,KAAK,IAAI,YAAY,KAAK,GAAG,KAAK,MAAM,CAAC;AAClE,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;IACvC,OAAO,QAAQ,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,OAAO,EACN,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,aAAa,GACb,CAAC"}
@@ -0,0 +1,4 @@
1
+ declare const getThemeRoot: () => string | undefined;
2
+ declare const setThemeRoot: (theme: string, newThemeRoot: string) => void;
3
+ declare const attachCustomThemeStylesToHead: (theme: string) => Promise<void>;
4
+ export { getThemeRoot, setThemeRoot, attachCustomThemeStylesToHead, };