@ui5/webcomponents-base 0.0.0-323968e1b → 0.0.0-33967dd12

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 (754) hide show
  1. package/.eslintignore +9 -3
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +924 -0
  4. package/README.md +57 -7
  5. package/bundle.esm.js +37 -22
  6. package/config/wdio.conf.cjs +400 -0
  7. package/dist/AssetRegistry.d.ts +5 -0
  8. package/dist/AssetRegistry.js +6 -9
  9. package/dist/AssetRegistry.js.map +1 -0
  10. package/dist/Boot.d.ts +9 -0
  11. package/dist/Boot.js +71 -0
  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 +78 -0
  18. package/dist/CustomElementsRegistry.js.map +1 -0
  19. package/dist/CustomElementsScope.d.ts +7 -0
  20. package/dist/CustomElementsScope.js +11 -0
  21. package/dist/CustomElementsScope.js.map +1 -0
  22. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  23. package/dist/CustomElementsScopeUtils.js +90 -0
  24. package/dist/CustomElementsScopeUtils.js.map +1 -0
  25. package/dist/DOMObserver.d.ts +11 -0
  26. package/dist/DOMObserver.js +23 -0
  27. package/dist/DOMObserver.js.map +1 -0
  28. package/dist/Device.d.ts +12 -0
  29. package/dist/Device.js +159 -816
  30. package/dist/Device.js.map +1 -0
  31. package/dist/EventProvider.d.ts +25 -0
  32. package/dist/EventProvider.js +67 -70
  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 +22 -63
  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 +133 -96
  45. package/dist/InitialConfiguration.js.map +1 -0
  46. package/dist/Keys.d.ts +61 -0
  47. package/dist/Keys.js +182 -0
  48. package/dist/Keys.js.map +1 -0
  49. package/dist/ManagedStyles.d.ts +8 -0
  50. package/dist/ManagedStyles.js +84 -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 +98 -0
  57. package/dist/MediaRange.js.map +1 -0
  58. package/dist/PropertiesFileFormat.d.ts +8 -0
  59. package/dist/PropertiesFileFormat.js +85 -0
  60. package/dist/PropertiesFileFormat.js.map +1 -0
  61. package/dist/Render.d.ts +47 -0
  62. package/dist/Render.js +143 -0
  63. package/dist/Render.js.map +1 -0
  64. package/dist/RenderQueue.d.ts +19 -0
  65. package/dist/RenderQueue.js +53 -39
  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 +4 -38
  72. package/dist/StaticArea.js.map +1 -0
  73. package/dist/StaticAreaItem.d.ts +37 -0
  74. package/dist/StaticAreaItem.js +98 -66
  75. package/dist/StaticAreaItem.js.map +1 -0
  76. package/dist/SystemCSSVars.d.ts +2 -0
  77. package/dist/SystemCSSVars.js +9 -0
  78. package/dist/SystemCSSVars.js.map +1 -0
  79. package/dist/Theming.d.ts +3 -0
  80. package/dist/Theming.js +4 -45
  81. package/dist/Theming.js.map +1 -0
  82. package/dist/UI5Element.d.ts +380 -0
  83. package/dist/UI5Element.js +951 -825
  84. package/dist/UI5Element.js.map +1 -0
  85. package/dist/UI5ElementMetadata.d.ts +150 -0
  86. package/dist/UI5ElementMetadata.js +278 -135
  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 +136 -24
  106. package/dist/asset-registries/Icons.js.map +1 -0
  107. package/dist/asset-registries/Illustrations.d.ts +17 -0
  108. package/dist/asset-registries/Illustrations.js +46 -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 +127 -92
  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 +42 -65
  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 +84 -58
  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.4ba9c8eb.js +9 -0
  130. package/dist/assets/bundle.esm.3c881d7f.js +50 -0
  131. package/dist/config/AnimationMode.d.ts +14 -0
  132. package/dist/config/AnimationMode.js +23 -6
  133. package/dist/config/AnimationMode.js.map +1 -0
  134. package/dist/config/CalendarType.d.ts +8 -0
  135. package/dist/config/CalendarType.js +15 -14
  136. package/dist/config/CalendarType.js.map +1 -0
  137. package/dist/config/FormatSettings.d.ts +15 -0
  138. package/dist/config/FormatSettings.js +16 -6
  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 +66 -7
  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 -34
  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 +65 -19
  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/css/BusyIndicator.css +80 -0
  162. package/dist/css/FontFace.css +84 -0
  163. package/dist/css/OverrideFontFace.css +32 -0
  164. package/dist/css/SystemCSSVars.css +17 -0
  165. package/dist/decorators/customElement.d.ts +23 -0
  166. package/dist/decorators/customElement.js +37 -0
  167. package/dist/decorators/customElement.js.map +1 -0
  168. package/dist/decorators/event.d.ts +10 -0
  169. package/dist/decorators/event.js +24 -0
  170. package/dist/decorators/event.js.map +1 -0
  171. package/dist/decorators/property.d.ts +9 -0
  172. package/dist/decorators/property.js +24 -0
  173. package/dist/decorators/property.js.map +1 -0
  174. package/dist/decorators/slot.d.ts +9 -0
  175. package/dist/decorators/slot.js +37 -0
  176. package/dist/decorators/slot.js.map +1 -0
  177. package/dist/delegate/ItemNavigation.d.ts +113 -0
  178. package/dist/delegate/ItemNavigation.js +312 -274
  179. package/dist/delegate/ItemNavigation.js.map +1 -0
  180. package/dist/delegate/ResizeHandler.d.ts +25 -0
  181. package/dist/delegate/ResizeHandler.js +84 -63
  182. package/dist/delegate/ResizeHandler.js.map +1 -0
  183. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  184. package/dist/delegate/ScrollEnablement.js +159 -74
  185. package/dist/delegate/ScrollEnablement.js.map +1 -0
  186. package/dist/features/F6Navigation.d.ts +19 -0
  187. package/dist/features/F6Navigation.js +151 -0
  188. package/dist/features/F6Navigation.js.map +1 -0
  189. package/dist/features/LegacyDateFormats.d.ts +18 -0
  190. package/dist/features/LegacyDateFormats.js +20 -0
  191. package/dist/features/LegacyDateFormats.js.map +1 -0
  192. package/dist/features/OpenUI5Element.d.ts +9 -0
  193. package/dist/features/OpenUI5Element.js +5 -0
  194. package/dist/features/OpenUI5Element.js.map +1 -0
  195. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  196. package/dist/features/OpenUI5Enablement.js +96 -0
  197. package/dist/features/OpenUI5Enablement.js.map +1 -0
  198. package/dist/features/OpenUI5Support.d.ts +36 -0
  199. package/dist/features/OpenUI5Support.js +154 -0
  200. package/dist/features/OpenUI5Support.js.map +1 -0
  201. package/dist/generated/AssetParameters.js +15 -0
  202. package/dist/generated/VersionInfo.js +10 -0
  203. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  204. package/dist/generated/css/BusyIndicator.css.js +7 -0
  205. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  206. package/dist/generated/css/FontFace.css.d.ts +3 -0
  207. package/dist/generated/css/FontFace.css.js +7 -0
  208. package/dist/generated/css/FontFace.css.js.map +1 -0
  209. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  210. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  211. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  212. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  213. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  214. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  215. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  216. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  217. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  218. package/dist/getSharedResource.d.ts +11 -0
  219. package/dist/getSharedResource.js +40 -0
  220. package/dist/getSharedResource.js.map +1 -0
  221. package/dist/global.d.ts +40 -0
  222. package/dist/i18nBundle.d.ts +43 -0
  223. package/dist/i18nBundle.js +74 -30
  224. package/dist/i18nBundle.js.map +1 -0
  225. package/dist/locale/Locale.d.ts +22 -0
  226. package/dist/locale/Locale.js +79 -0
  227. package/dist/locale/Locale.js.map +1 -0
  228. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  229. package/dist/locale/RTLAwareRegistry.js +9 -0
  230. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  231. package/dist/locale/applyDirection.d.ts +10 -0
  232. package/dist/locale/applyDirection.js +17 -0
  233. package/dist/locale/applyDirection.js.map +1 -0
  234. package/dist/locale/directionChange.d.ts +15 -0
  235. package/dist/locale/directionChange.js +24 -0
  236. package/dist/locale/directionChange.js.map +1 -0
  237. package/dist/locale/getEffectiveDir.d.ts +2 -0
  238. package/dist/locale/getEffectiveDir.js +24 -0
  239. package/dist/locale/getEffectiveDir.js.map +1 -0
  240. package/dist/locale/getLocale.d.ts +7 -0
  241. package/dist/locale/getLocale.js +38 -0
  242. package/dist/locale/getLocale.js.map +1 -0
  243. package/dist/locale/languageChange.d.ts +5 -0
  244. package/dist/locale/languageChange.js +14 -0
  245. package/dist/locale/languageChange.js.map +1 -0
  246. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  247. package/dist/locale/nextFallbackLocale.js +24 -0
  248. package/dist/locale/nextFallbackLocale.js.map +1 -0
  249. package/dist/locale/normalizeLocale.d.ts +7 -0
  250. package/dist/locale/normalizeLocale.js +47 -0
  251. package/dist/locale/normalizeLocale.js.map +1 -0
  252. package/dist/renderer/LitRenderer.d.ts +14 -0
  253. package/dist/renderer/LitRenderer.js +38 -12
  254. package/dist/renderer/LitRenderer.js.map +1 -0
  255. package/dist/renderer/directives/style-map.js +72 -0
  256. package/dist/renderer/executeTemplate.d.ts +13 -0
  257. package/dist/renderer/executeTemplate.js +30 -0
  258. package/dist/renderer/executeTemplate.js.map +1 -0
  259. package/dist/sap/base/Log.js +240 -0
  260. package/dist/sap/base/assert.js +7 -0
  261. package/dist/sap/base/security/URLListValidator.js +159 -0
  262. package/dist/sap/base/security/encodeCSS.js +14 -0
  263. package/dist/sap/base/security/encodeXML.js +23 -0
  264. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  265. package/dist/sap/base/strings/toHex.js +8 -0
  266. package/dist/sap/base/util/now.js +7 -0
  267. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  268. package/dist/theming/CustomStyle.d.ts +6 -0
  269. package/dist/theming/CustomStyle.js +46 -17
  270. package/dist/theming/CustomStyle.js.map +1 -0
  271. package/dist/theming/ThemeLoaded.d.ts +5 -0
  272. package/dist/theming/ThemeLoaded.js +14 -0
  273. package/dist/theming/ThemeLoaded.js.map +1 -0
  274. package/dist/theming/ThemeRegistered.d.ts +4 -0
  275. package/dist/theming/ThemeRegistered.js +11 -0
  276. package/dist/theming/ThemeRegistered.js.map +1 -0
  277. package/dist/theming/applyTheme.d.ts +2 -0
  278. package/dist/theming/applyTheme.js +77 -0
  279. package/dist/theming/applyTheme.js.map +1 -0
  280. package/dist/theming/getConstructableStyle.d.ts +9 -0
  281. package/dist/theming/getConstructableStyle.js +25 -0
  282. package/dist/theming/getConstructableStyle.js.map +1 -0
  283. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  284. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  285. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  286. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  287. package/dist/theming/getEffectiveStyle.js +32 -0
  288. package/dist/theming/getEffectiveStyle.js.map +1 -0
  289. package/dist/theming/getStylesString.d.ts +3 -0
  290. package/dist/theming/getStylesString.js +11 -0
  291. package/dist/theming/getStylesString.js.map +1 -0
  292. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  293. package/dist/theming/getThemeDesignerTheme.js +80 -0
  294. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  295. package/dist/theming/preloadLinks.d.ts +3 -0
  296. package/dist/theming/preloadLinks.js +19 -0
  297. package/dist/theming/preloadLinks.js.map +1 -0
  298. package/dist/thirdparty/_merge.d.ts +2 -0
  299. package/dist/thirdparty/_merge.js +35 -0
  300. package/dist/thirdparty/_merge.js.map +1 -0
  301. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  302. package/dist/thirdparty/isPlainObject.js +19 -0
  303. package/dist/thirdparty/isPlainObject.js.map +1 -0
  304. package/dist/thirdparty/merge.d.ts +2 -0
  305. package/dist/thirdparty/merge.js +6 -0
  306. package/dist/thirdparty/merge.js.map +1 -0
  307. package/dist/types/AnimationMode.d.ts +32 -0
  308. package/dist/types/AnimationMode.js +33 -6
  309. package/dist/types/AnimationMode.js.map +1 -0
  310. package/dist/types/CSSColor.d.ts +15 -0
  311. package/dist/types/CSSColor.js +18 -0
  312. package/dist/types/CSSColor.js.map +1 -0
  313. package/dist/types/CalendarType.d.ts +37 -0
  314. package/dist/types/CalendarType.js +39 -0
  315. package/dist/types/CalendarType.js.map +1 -0
  316. package/dist/types/DOMReference.d.ts +17 -0
  317. package/dist/types/DOMReference.js +25 -0
  318. package/dist/types/DOMReference.js.map +1 -0
  319. package/dist/types/DataType.d.ts +25 -0
  320. package/dist/types/DataType.js +33 -14
  321. package/dist/types/DataType.js.map +1 -0
  322. package/dist/types/Float.d.ts +17 -0
  323. package/dist/types/Float.js +21 -0
  324. package/dist/types/Float.js.map +1 -0
  325. package/dist/types/Integer.d.ts +17 -0
  326. package/dist/types/Integer.js +17 -5
  327. package/dist/types/Integer.js.map +1 -0
  328. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  329. package/dist/types/InvisibleMessageMode.js +27 -0
  330. package/dist/types/InvisibleMessageMode.js.map +1 -0
  331. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  332. package/dist/types/ItemNavigationBehavior.js +22 -17
  333. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  334. package/dist/types/NavigationMode.d.ts +32 -0
  335. package/dist/types/NavigationMode.js +33 -5
  336. package/dist/types/NavigationMode.js.map +1 -0
  337. package/dist/types/ValueState.d.ts +42 -0
  338. package/dist/types/ValueState.js +41 -18
  339. package/dist/types/ValueState.js.map +1 -0
  340. package/dist/types.d.ts +18 -0
  341. package/dist/types.js +2 -0
  342. package/dist/types.js.map +1 -0
  343. package/dist/updateShadowRoot.d.ts +8 -0
  344. package/dist/updateShadowRoot.js +41 -0
  345. package/dist/updateShadowRoot.js.map +1 -0
  346. package/dist/util/AriaLabelHelper.d.ts +15 -0
  347. package/dist/util/AriaLabelHelper.js +171 -0
  348. package/dist/util/AriaLabelHelper.js.map +1 -0
  349. package/dist/util/Caret.d.ts +7 -0
  350. package/dist/util/Caret.js +23 -0
  351. package/dist/util/Caret.js.map +1 -0
  352. package/dist/util/ColorConversion.d.ts +30 -0
  353. package/dist/util/ColorConversion.js +337 -0
  354. package/dist/util/ColorConversion.js.map +1 -0
  355. package/dist/util/FetchHelper.d.ts +3 -0
  356. package/dist/util/FetchHelper.js +19 -25
  357. package/dist/util/FetchHelper.js.map +1 -0
  358. package/dist/util/FocusableElements.d.ts +4 -0
  359. package/dist/util/FocusableElements.js +68 -56
  360. package/dist/util/FocusableElements.js.map +1 -0
  361. package/dist/util/HTMLSanitizer.d.ts +3 -0
  362. package/dist/util/HTMLSanitizer.js +6 -0
  363. package/dist/util/HTMLSanitizer.js.map +1 -0
  364. package/dist/util/InvisibleMessage.d.ts +10 -0
  365. package/dist/util/InvisibleMessage.js +56 -0
  366. package/dist/util/InvisibleMessage.js.map +1 -0
  367. package/dist/util/PopupUtils.d.ts +7 -0
  368. package/dist/util/PopupUtils.js +74 -0
  369. package/dist/util/PopupUtils.js.map +1 -0
  370. package/dist/util/SlotsHelper.d.ts +9 -0
  371. package/dist/util/SlotsHelper.js +30 -0
  372. package/dist/util/SlotsHelper.js.map +1 -0
  373. package/dist/util/StringHelper.d.ts +3 -0
  374. package/dist/util/StringHelper.js +21 -9
  375. package/dist/util/StringHelper.js.map +1 -0
  376. package/dist/util/TabbableElements.d.ts +17 -0
  377. package/dist/util/TabbableElements.js +53 -40
  378. package/dist/util/TabbableElements.js.map +1 -0
  379. package/dist/util/arraysAreEqual.d.ts +2 -0
  380. package/dist/util/arraysAreEqual.js +13 -0
  381. package/dist/util/arraysAreEqual.js.map +1 -0
  382. package/dist/util/clamp.d.ts +9 -0
  383. package/dist/util/clamp.js +12 -0
  384. package/dist/util/clamp.js.map +1 -0
  385. package/dist/util/createLinkInHead.d.ts +7 -0
  386. package/dist/util/createLinkInHead.js +21 -0
  387. package/dist/util/createLinkInHead.js.map +1 -0
  388. package/dist/util/createStyleInHead.d.ts +8 -0
  389. package/dist/util/createStyleInHead.js +10 -10
  390. package/dist/util/createStyleInHead.js.map +1 -0
  391. package/dist/util/debounce.d.ts +2 -0
  392. package/dist/util/debounce.js +15 -0
  393. package/dist/util/debounce.js.map +1 -0
  394. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  395. package/dist/util/detectNavigatorLanguage.js +8 -9
  396. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  397. package/dist/util/escapeRegex.d.ts +8 -0
  398. package/dist/util/escapeRegex.js +11 -0
  399. package/dist/util/escapeRegex.js.map +1 -0
  400. package/dist/util/formatMessage.d.ts +2 -0
  401. package/dist/util/formatMessage.js +15 -19
  402. package/dist/util/formatMessage.js.map +1 -0
  403. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  404. package/dist/util/generateHighlightedMarkup.js +41 -0
  405. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  406. package/dist/util/getActiveElement.d.ts +2 -0
  407. package/dist/util/getActiveElement.js +9 -0
  408. package/dist/util/getActiveElement.js.map +1 -0
  409. package/dist/util/getClassCopy.d.ts +400 -0
  410. package/dist/util/getClassCopy.js +10 -0
  411. package/dist/util/getClassCopy.js.map +1 -0
  412. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  413. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  414. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  415. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  416. package/dist/util/getEffectiveContentDensity.js +4 -0
  417. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  418. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  419. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  420. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  421. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  422. package/dist/util/getFastNavigationGroups.js +51 -0
  423. package/dist/util/getFastNavigationGroups.js.map +1 -0
  424. package/dist/util/getFileExtension.d.ts +12 -0
  425. package/dist/util/getFileExtension.js +19 -0
  426. package/dist/util/getFileExtension.js.map +1 -0
  427. package/dist/util/getNormalizedTarget.d.ts +7 -0
  428. package/dist/util/getNormalizedTarget.js +14 -0
  429. package/dist/util/getNormalizedTarget.js.map +1 -0
  430. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  431. package/dist/util/getSingletonElementInstance.js +19 -0
  432. package/dist/util/getSingletonElementInstance.js.map +1 -0
  433. package/dist/util/isElementClickable.d.ts +2 -0
  434. package/dist/util/isElementClickable.js +16 -0
  435. package/dist/util/isElementClickable.js.map +1 -0
  436. package/dist/util/isElementHidden.d.ts +2 -0
  437. package/dist/util/isElementHidden.js +8 -0
  438. package/dist/util/isElementHidden.js.map +1 -0
  439. package/dist/util/isElementInView.d.ts +6 -0
  440. package/dist/util/isElementInView.js +12 -0
  441. package/dist/util/isElementInView.js.map +1 -0
  442. package/dist/util/isElementTabbable.d.ts +9 -0
  443. package/dist/util/isElementTabbable.js +30 -0
  444. package/dist/util/isElementTabbable.js.map +1 -0
  445. package/dist/util/isValidPropertyName.d.ts +8 -0
  446. package/dist/util/isValidPropertyName.js +20 -12
  447. package/dist/util/isValidPropertyName.js.map +1 -0
  448. package/dist/util/whenDOMReady.d.ts +2 -0
  449. package/dist/util/whenDOMReady.js +11 -10
  450. package/dist/util/whenDOMReady.js.map +1 -0
  451. package/dist/util/willShowContent.d.ts +2 -0
  452. package/dist/util/willShowContent.js +7 -0
  453. package/dist/util/willShowContent.js.map +1 -0
  454. package/dist/validateThemeRoot.d.ts +2 -0
  455. package/dist/validateThemeRoot.js +48 -0
  456. package/dist/validateThemeRoot.js.map +1 -0
  457. package/index.js +228 -2
  458. package/lib/generate-asset-parameters/index.js +27 -0
  459. package/lib/generate-styles/index.js +31 -0
  460. package/lib/generate-version-info/index.js +32 -0
  461. package/package-scripts.cjs +71 -0
  462. package/package.json +20 -13
  463. package/src/css/BusyIndicator.css +80 -0
  464. package/src/css/FontFace.css +84 -0
  465. package/src/css/OverrideFontFace.css +32 -0
  466. package/src/css/SystemCSSVars.css +17 -0
  467. package/src/renderer/directives/style-map.js +72 -0
  468. package/tsconfig.json +14 -0
  469. package/used-modules.txt +10 -0
  470. package/bundle.es5.js +0 -28
  471. package/config/rollup.config.js +0 -1
  472. package/config/wdio.conf.js +0 -1
  473. package/dist/Assets.js +0 -2
  474. package/dist/CSS.js +0 -48
  475. package/dist/FormatSettings.js +0 -31
  476. package/dist/Locale.js +0 -101
  477. package/dist/LocaleProvider.js +0 -34
  478. package/dist/RenderScheduler.js +0 -165
  479. package/dist/ResourceLoaderOverrides.js +0 -38
  480. package/dist/SVGIconRegistry.js +0 -54
  481. package/dist/animations/config.js +0 -5
  482. package/dist/boot.js +0 -25
  483. package/dist/compatibility/DOMObserver.js +0 -62
  484. package/dist/compatibility/patchNodeValue.js +0 -24
  485. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  486. package/dist/dates/CalendarDate.js +0 -203
  487. package/dist/dates/CalendarType.js +0 -22
  488. package/dist/dates/CalendarUtils.js +0 -99
  489. package/dist/delegate/CustomResize.js +0 -78
  490. package/dist/delegate/NativeResize.js +0 -44
  491. package/dist/events/PseudoEvents.js +0 -58
  492. package/dist/features/browsersupport/Edge.js +0 -6
  493. package/dist/features/browsersupport/IE11.js +0 -41
  494. package/dist/features/calendar/Buddhist.js +0 -1
  495. package/dist/features/calendar/Islamic.js +0 -1
  496. package/dist/features/calendar/Japanese.js +0 -1
  497. package/dist/features/calendar/Persian.js +0 -1
  498. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5598
  499. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5598
  500. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5598
  501. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4789
  502. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4801
  503. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5245
  504. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4696
  505. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4797
  506. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4798
  507. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4796
  508. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4694
  509. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4694
  510. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4777
  511. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4769
  512. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4778
  513. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4784
  514. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4778
  515. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4779
  516. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4778
  517. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4779
  518. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4780
  519. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4779
  520. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4719
  521. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4721
  522. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4720
  523. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4721
  524. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4721
  525. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4722
  526. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4720
  527. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4722
  528. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4721
  529. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4776
  530. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4704
  531. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -4816
  532. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4788
  533. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4788
  534. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4782
  535. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4806
  536. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4788
  537. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5133
  538. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4680
  539. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4910
  540. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4664
  541. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4500
  542. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4757
  543. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4757
  544. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4599
  545. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4537
  546. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4574
  547. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5234
  548. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -4902
  549. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4352
  550. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4784
  551. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4790
  552. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4790
  553. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5223
  554. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4703
  555. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4753
  556. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -4881
  557. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5157
  558. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5157
  559. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5125
  560. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5105
  561. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -4908
  562. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -4818
  563. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4633
  564. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4791
  565. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5126
  566. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4510
  567. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4469
  568. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4479
  569. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4479
  570. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4565
  571. package/dist/json-imports/LocaleData.js +0 -171
  572. package/dist/renderer/ifDefined.js +0 -21
  573. package/dist/resources/bundle.es5.js +0 -212
  574. package/dist/resources/bundle.es5.js.map +0 -1
  575. package/dist/resources/bundle.esm.js +0 -123
  576. package/dist/resources/bundle.esm.js.map +0 -1
  577. package/dist/shims/Core-shim.js +0 -52
  578. package/dist/shims/jquery-shim.js +0 -89
  579. package/dist/test-resources/assets/Themes.js +0 -11
  580. package/dist/test-resources/elements/Child.js +0 -35
  581. package/dist/test-resources/elements/Generic.js +0 -83
  582. package/dist/test-resources/elements/GenericExt.js +0 -26
  583. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  584. package/dist/test-resources/elements/Parent.js +0 -36
  585. package/dist/test-resources/pages/AllTestElements.html +0 -42
  586. package/dist/test-resources/pages/Configuration.html +0 -20
  587. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  588. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  589. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  590. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  591. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  592. package/dist/test-resources/specs/Theming.spec.js +0 -31
  593. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  594. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  595. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  596. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  597. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  598. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  599. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  600. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  601. package/dist/theming/StyleInjection.js +0 -67
  602. package/dist/thirdparty/Array.from.js +0 -16
  603. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  604. package/dist/thirdparty/Array.prototype.find.js +0 -46
  605. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  606. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  607. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  608. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  609. package/dist/thirdparty/Number.isInteger.js +0 -5
  610. package/dist/thirdparty/Number.isNaN.js +0 -1
  611. package/dist/thirdparty/Number.parseInt.js +0 -1
  612. package/dist/thirdparty/Object.assign.js +0 -31
  613. package/dist/thirdparty/Object.entries.js +0 -11
  614. package/dist/thirdparty/Symbol.js +0 -2
  615. package/dist/thirdparty/WeakSet.js +0 -27
  616. package/dist/thirdparty/events-polyfills.js +0 -89
  617. package/dist/thirdparty/fetch.js +0 -1
  618. package/dist/thirdparty/template.js +0 -600
  619. package/dist/types/CSSSize.js +0 -9
  620. package/dist/types/PopupState.js +0 -37
  621. package/dist/util/CSSTransformUtils.js +0 -90
  622. package/dist/util/isDescendantOf.js +0 -15
  623. package/dist/util/isNodeClickable.js +0 -19
  624. package/dist/util/isNodeHidden.js +0 -13
  625. package/dist/util/isNodeTabbable.js +0 -28
  626. package/dist/util/normalizeLocale.js +0 -77
  627. package/dist/webcomponentsjs/LICENSE.md +0 -19
  628. package/dist/webcomponentsjs/README.md +0 -229
  629. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  630. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  631. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  632. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  633. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  634. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  635. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  636. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  637. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  638. package/dist/webcomponentsjs/package.json +0 -46
  639. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  640. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  641. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  642. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  643. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  644. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  645. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  646. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  647. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  648. package/package-scripts.js +0 -42
  649. package/src/AssetRegistry.js +0 -9
  650. package/src/Assets.js +0 -2
  651. package/src/CSS.js +0 -48
  652. package/src/Device.js +0 -823
  653. package/src/EventProvider.js +0 -73
  654. package/src/FeaturesRegistry.js +0 -11
  655. package/src/FontFace.js +0 -66
  656. package/src/FormatSettings.js +0 -31
  657. package/src/InitialConfiguration.js +0 -119
  658. package/src/Locale.js +0 -101
  659. package/src/LocaleProvider.js +0 -34
  660. package/src/RenderQueue.js +0 -42
  661. package/src/RenderScheduler.js +0 -165
  662. package/src/ResourceLoaderOverrides.js +0 -38
  663. package/src/SVGIconRegistry.js +0 -54
  664. package/src/StaticArea.js +0 -41
  665. package/src/StaticAreaItem.js +0 -73
  666. package/src/Theming.js +0 -45
  667. package/src/UI5Element.js +0 -842
  668. package/src/UI5ElementMetadata.js +0 -148
  669. package/src/animations/AnimationQueue.js +0 -42
  670. package/src/animations/animate.js +0 -53
  671. package/src/animations/config.js +0 -5
  672. package/src/animations/scroll.js +0 -28
  673. package/src/animations/slideDown.js +0 -79
  674. package/src/animations/slideUp.js +0 -71
  675. package/src/asset-registries/Icons.js +0 -24
  676. package/src/asset-registries/LocaleData.js +0 -101
  677. package/src/asset-registries/Themes.js +0 -75
  678. package/src/asset-registries/i18n.js +0 -75
  679. package/src/boot.js +0 -25
  680. package/src/compatibility/DOMObserver.js +0 -62
  681. package/src/compatibility/patchNodeValue.js +0 -24
  682. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  683. package/src/config/AnimationMode.js +0 -9
  684. package/src/config/CalendarType.js +0 -18
  685. package/src/config/FormatSettings.js +0 -9
  686. package/src/config/Language.js +0 -9
  687. package/src/config/NoConflict.js +0 -44
  688. package/src/config/RTL.js +0 -31
  689. package/src/config/Theme.js +0 -24
  690. package/src/dates/CalendarDate.js +0 -203
  691. package/src/dates/CalendarType.js +0 -22
  692. package/src/dates/CalendarUtils.js +0 -99
  693. package/src/delegate/CustomResize.js +0 -78
  694. package/src/delegate/ItemNavigation.js +0 -278
  695. package/src/delegate/NativeResize.js +0 -44
  696. package/src/delegate/ResizeHandler.js +0 -66
  697. package/src/delegate/ScrollEnablement.js +0 -80
  698. package/src/events/PseudoEvents.js +0 -58
  699. package/src/features/browsersupport/Edge.js +0 -6
  700. package/src/features/browsersupport/IE11.js +0 -41
  701. package/src/features/calendar/Buddhist.js +0 -1
  702. package/src/features/calendar/Islamic.js +0 -1
  703. package/src/features/calendar/Japanese.js +0 -1
  704. package/src/features/calendar/Persian.js +0 -1
  705. package/src/i18nBundle.js +0 -35
  706. package/src/json-imports/LocaleData.js +0 -171
  707. package/src/renderer/LitRenderer.js +0 -15
  708. package/src/renderer/ifDefined.js +0 -21
  709. package/src/shims/Core-shim.js +0 -52
  710. package/src/shims/jquery-shim.js +0 -89
  711. package/src/theming/CustomStyle.js +0 -19
  712. package/src/theming/StyleInjection.js +0 -67
  713. package/src/thirdparty/Array.from.js +0 -16
  714. package/src/thirdparty/Array.prototype.fill.js +0 -44
  715. package/src/thirdparty/Array.prototype.find.js +0 -46
  716. package/src/thirdparty/Array.prototype.includes.js +0 -51
  717. package/src/thirdparty/Element.prototype.closest.js +0 -11
  718. package/src/thirdparty/Element.prototype.matches.js +0 -6
  719. package/src/thirdparty/Map.prototype.keys.js +0 -9
  720. package/src/thirdparty/Number.isInteger.js +0 -5
  721. package/src/thirdparty/Number.isNaN.js +0 -1
  722. package/src/thirdparty/Number.parseInt.js +0 -1
  723. package/src/thirdparty/Object.assign.js +0 -31
  724. package/src/thirdparty/Object.entries.js +0 -11
  725. package/src/thirdparty/Symbol.js +0 -2
  726. package/src/thirdparty/WeakSet.js +0 -27
  727. package/src/thirdparty/events-polyfills.js +0 -89
  728. package/src/thirdparty/fetch.js +0 -1
  729. package/src/thirdparty/template.js +0 -600
  730. package/src/types/AnimationMode.js +0 -7
  731. package/src/types/CSSSize.js +0 -9
  732. package/src/types/DataType.js +0 -25
  733. package/src/types/Integer.js +0 -9
  734. package/src/types/ItemNavigationBehavior.js +0 -21
  735. package/src/types/NavigationMode.js +0 -6
  736. package/src/types/PopupState.js +0 -37
  737. package/src/types/ValueState.js +0 -21
  738. package/src/util/CSSTransformUtils.js +0 -90
  739. package/src/util/FetchHelper.js +0 -31
  740. package/src/util/FocusableElements.js +0 -60
  741. package/src/util/StringHelper.js +0 -11
  742. package/src/util/TabbableElements.js +0 -44
  743. package/src/util/createStyleInHead.js +0 -18
  744. package/src/util/detectNavigatorLanguage.js +0 -11
  745. package/src/util/formatMessage.js +0 -23
  746. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  747. package/src/util/isDescendantOf.js +0 -15
  748. package/src/util/isNodeClickable.js +0 -19
  749. package/src/util/isNodeHidden.js +0 -13
  750. package/src/util/isNodeTabbable.js +0 -28
  751. package/src/util/isValidPropertyName.js +0 -20
  752. package/src/util/normalizeLocale.js +0 -77
  753. package/src/util/whenDOMReady.js +0 -13
  754. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEffectiveDir.js","sourceRoot":"","sources":["../../src/locale/getEffectiveDir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAExC,MAAM,eAAe,GAAG,CAAC,OAAoB,EAAE,EAAE;IAChD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC5B,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,8CAA8C;IAChF,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IAEzF,gHAAgH;IAChH,IAAI,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;QAC1C,OAAO,iBAAiB,CAAC;KACzB;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACpC,OAAO,OAAO,CAAC,GAAG,CAAC;KACnB;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;QAChD,OAAO,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC;KAC/B;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QACrC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KACpB;IAED,kFAAkF;IAClF,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACrC,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import { getRTL } from \"../config/RTL.js\";\n\nconst GLOBAL_DIR_CSS_VAR = \"--_ui5_dir\";\n\nconst getEffectiveDir = (element: HTMLElement) => {\n\tconst doc = window.document;\n\tconst dirValues = [\"ltr\", \"rtl\"]; // exclude \"auto\" and \"\" from all calculations\n\tconst locallyAppliedDir = getComputedStyle(element).getPropertyValue(GLOBAL_DIR_CSS_VAR);\n\n\t// In that order, inspect the CSS Var (for modern browsers), the element itself, html and body (for IE fallback)\n\tif (dirValues.includes(locallyAppliedDir)) {\n\t\treturn locallyAppliedDir;\n\t}\n\tif (dirValues.includes(element.dir)) {\n\t\treturn element.dir;\n\t}\n\tif (dirValues.includes(doc.documentElement.dir)) {\n\t\treturn doc.documentElement.dir;\n\t}\n\tif (dirValues.includes(doc.body.dir)) {\n\t\treturn doc.body.dir;\n\t}\n\n\t// Finally, check the configuration for explicitly set RTL or language-implied RTL\n\treturn getRTL() ? \"rtl\" : undefined;\n};\n\nexport default getEffectiveDir;\n"]}
@@ -0,0 +1,7 @@
1
+ import Locale from "./Locale.js";
2
+ /**
3
+ * Returns the locale based on the parameter or configured language Configuration#getLanguage
4
+ * If no language has been configured - a new locale based on browser language is returned
5
+ */
6
+ declare const getLocale: (lang?: string) => Locale;
7
+ export default getLocale;
@@ -0,0 +1,38 @@
1
+ import detectNavigatorLanguage from "../util/detectNavigatorLanguage.js";
2
+ import { getLanguage as getConfigLanguage } from "../config/Language.js";
3
+ import Locale from "./Locale.js";
4
+ import { DEFAULT_LOCALE } from "../generated/AssetParameters.js";
5
+ const cache = new Map();
6
+ const getLocaleInstance = (lang) => {
7
+ if (!cache.has(lang)) {
8
+ cache.set(lang, new Locale(lang));
9
+ }
10
+ return cache.get(lang);
11
+ };
12
+ const convertToLocaleOrNull = (lang) => {
13
+ try {
14
+ if (lang && typeof lang === "string") {
15
+ return getLocaleInstance(lang);
16
+ }
17
+ }
18
+ catch (e) {
19
+ // ignore
20
+ }
21
+ return new Locale(DEFAULT_LOCALE);
22
+ };
23
+ /**
24
+ * Returns the locale based on the parameter or configured language Configuration#getLanguage
25
+ * If no language has been configured - a new locale based on browser language is returned
26
+ */
27
+ const getLocale = (lang) => {
28
+ if (lang) {
29
+ return convertToLocaleOrNull(lang);
30
+ }
31
+ const configLanguage = getConfigLanguage();
32
+ if (configLanguage) {
33
+ return getLocaleInstance(configLanguage);
34
+ }
35
+ return convertToLocaleOrNull(detectNavigatorLanguage());
36
+ };
37
+ export default getLocale;
38
+ //# sourceMappingURL=getLocale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLocale.js","sourceRoot":"","sources":["../../src/locale/getLocale.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;AAExC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACrB,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;KAClC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC9C,IAAI;QACH,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACrC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC/B;KACD;IAAC,OAAO,CAAC,EAAE;QACX,SAAS;KACT;IAED,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,SAAS,GAAG,CAAC,IAAa,EAAU,EAAE;IAC3C,IAAI,IAAI,EAAE;QACT,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;KACnC;IAED,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,IAAI,cAAc,EAAE;QACnB,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;KACzC;IAED,OAAO,qBAAqB,CAAC,uBAAuB,EAAE,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC","sourcesContent":["import detectNavigatorLanguage from \"../util/detectNavigatorLanguage.js\";\nimport { getLanguage as getConfigLanguage } from \"../config/Language.js\";\nimport Locale from \"./Locale.js\";\nimport { DEFAULT_LOCALE } from \"../generated/AssetParameters.js\";\n\nconst cache = new Map<string, Locale>();\n\nconst getLocaleInstance = (lang: string) => {\n\tif (!cache.has(lang)) {\n\t\tcache.set(lang, new Locale(lang));\n\t}\n\n\treturn cache.get(lang)!;\n};\n\nconst convertToLocaleOrNull = (lang: string) => {\n\ttry {\n\t\tif (lang && typeof lang === \"string\") {\n\t\t\treturn getLocaleInstance(lang);\n\t\t}\n\t} catch (e) {\n\t\t// ignore\n\t}\n\n\treturn new Locale(DEFAULT_LOCALE);\n};\n\n/**\n * Returns the locale based on the parameter or configured language Configuration#getLanguage\n * If no language has been configured - a new locale based on browser language is returned\n */\nconst getLocale = (lang?: string): Locale => {\n\tif (lang) {\n\t\treturn convertToLocaleOrNull(lang);\n\t}\n\n\tconst configLanguage = getConfigLanguage();\n\n\tif (configLanguage) {\n\t\treturn getLocaleInstance(configLanguage);\n\t}\n\n\treturn convertToLocaleOrNull(detectNavigatorLanguage());\n};\n\nexport default getLocale;\n"]}
@@ -0,0 +1,5 @@
1
+ type LanguageChangeCallback = (lang: string) => Promise<void | Array<void>>;
2
+ declare const attachLanguageChange: (listener: LanguageChangeCallback) => void;
3
+ declare const detachLanguageChange: (listener: LanguageChangeCallback) => void;
4
+ declare const fireLanguageChange: (lang: string) => Promise<(void | void[])[]>;
5
+ export { attachLanguageChange, detachLanguageChange, fireLanguageChange, };
@@ -0,0 +1,14 @@
1
+ import EventProvider from "../EventProvider.js";
2
+ const eventProvider = new EventProvider();
3
+ const LANG_CHANGE = "languageChange";
4
+ const attachLanguageChange = (listener) => {
5
+ eventProvider.attachEvent(LANG_CHANGE, listener);
6
+ };
7
+ const detachLanguageChange = (listener) => {
8
+ eventProvider.detachEvent(LANG_CHANGE, listener);
9
+ };
10
+ const fireLanguageChange = (lang) => {
11
+ return eventProvider.fireEventAsync(LANG_CHANGE, lang);
12
+ };
13
+ export { attachLanguageChange, detachLanguageChange, fireLanguageChange, };
14
+ //# sourceMappingURL=languageChange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"languageChange.js","sourceRoot":"","sources":["../../src/locale/languageChange.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAIhD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAuC,CAAC;AAC/E,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAErC,MAAM,oBAAoB,GAAG,CAAC,QAAgC,EAAE,EAAE;IACjE,aAAa,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,QAAgC,EAAE,EAAE;IACjE,aAAa,CAAC,WAAW,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC3C,OAAO,aAAa,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF,OAAO,EACN,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,GAClB,CAAC","sourcesContent":["import EventProvider from \"../EventProvider.js\";\n\ntype LanguageChangeCallback = (lang: string) => Promise<void | Array<void>>;\n\nconst eventProvider = new EventProvider<string, Promise<void | Array<void>>>();\nconst LANG_CHANGE = \"languageChange\";\n\nconst attachLanguageChange = (listener: LanguageChangeCallback) => {\n\teventProvider.attachEvent(LANG_CHANGE, listener);\n};\n\nconst detachLanguageChange = (listener: LanguageChangeCallback) => {\n\teventProvider.detachEvent(LANG_CHANGE, listener);\n};\n\nconst fireLanguageChange = (lang: string) => {\n\treturn eventProvider.fireEventAsync(LANG_CHANGE, lang);\n};\n\nexport {\n\tattachLanguageChange,\n\tdetachLanguageChange,\n\tfireLanguageChange,\n};\n"]}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Calculates the next fallback locale for the given locale.
3
+ *
4
+ * @param {string} locale Locale string in Java format (underscores) or null
5
+ * @returns {string} Next fallback Locale or "en" if no fallbacks found.
6
+ */
7
+ declare const nextFallbackLocale: (locale: string) => string;
8
+ export default nextFallbackLocale;
@@ -0,0 +1,24 @@
1
+ import { DEFAULT_LOCALE } from "../generated/AssetParameters.js";
2
+ /**
3
+ * Calculates the next fallback locale for the given locale.
4
+ *
5
+ * @param {string} locale Locale string in Java format (underscores) or null
6
+ * @returns {string} Next fallback Locale or "en" if no fallbacks found.
7
+ */
8
+ const nextFallbackLocale = (locale) => {
9
+ if (!locale) {
10
+ return DEFAULT_LOCALE;
11
+ }
12
+ if (locale === "zh_HK") {
13
+ return "zh_TW";
14
+ }
15
+ // if there are multiple segments (separated by underscores), remove the last one
16
+ const p = locale.lastIndexOf("_");
17
+ if (p >= 0) {
18
+ return locale.slice(0, p);
19
+ }
20
+ // for any language but the default, fallback to the default first before falling back to the 'raw' language (empty string)
21
+ return locale !== DEFAULT_LOCALE ? DEFAULT_LOCALE : "";
22
+ };
23
+ export default nextFallbackLocale;
24
+ //# sourceMappingURL=nextFallbackLocale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nextFallbackLocale.js","sourceRoot":"","sources":["../../src/locale/nextFallbackLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,IAAI,CAAC,MAAM,EAAE;QACZ,OAAO,cAAc,CAAC;KACtB;IAED,IAAI,MAAM,KAAK,OAAO,EAAE;QACvB,OAAO,OAAO,CAAC;KACf;IAED,iFAAiF;IACjF,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,IAAI,CAAC,EAAE;QACX,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KAC1B;IAED,2HAA2H;IAC3H,OAAO,MAAM,KAAK,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;AACxD,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC","sourcesContent":["import { DEFAULT_LOCALE } from \"../generated/AssetParameters.js\";\n\n/**\n * Calculates the next fallback locale for the given locale.\n *\n * @param {string} locale Locale string in Java format (underscores) or null\n * @returns {string} Next fallback Locale or \"en\" if no fallbacks found.\n */\nconst nextFallbackLocale = (locale: string) => {\n\tif (!locale) {\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\tif (locale === \"zh_HK\") {\n\t\treturn \"zh_TW\";\n\t}\n\n\t// if there are multiple segments (separated by underscores), remove the last one\n\tconst p = locale.lastIndexOf(\"_\");\n\tif (p >= 0) {\n\t\treturn locale.slice(0, p);\n\t}\n\n\t// for any language but the default, fallback to the default first before falling back to the 'raw' language (empty string)\n\treturn locale !== DEFAULT_LOCALE ? DEFAULT_LOCALE : \"\";\n};\n\nexport default nextFallbackLocale;\n"]}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Normalizes the given locale in BCP-47 syntax.
3
+ * @param {string} locale locale to normalize
4
+ * @returns {string} Normalized locale, "undefined" if the locale can't be normalized or the default locale, if no locale provided.
5
+ */
6
+ declare const normalizeLocale: (locale: string) => string;
7
+ export default normalizeLocale;
@@ -0,0 +1,47 @@
1
+ import { DEFAULT_LOCALE } from "../generated/AssetParameters.js";
2
+ const localeRegEX = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;
3
+ const SAPSupportabilityLocales = /(?:^|-)(saptrc|sappsd)(?:-|$)/i;
4
+ /* Map for old language names for a few ISO639 codes. */
5
+ const M_ISO639_NEW_TO_OLD = {
6
+ "he": "iw",
7
+ "yi": "ji",
8
+ "nb": "no",
9
+ "sr": "sh",
10
+ };
11
+ /**
12
+ * Normalizes the given locale in BCP-47 syntax.
13
+ * @param {string} locale locale to normalize
14
+ * @returns {string} Normalized locale, "undefined" if the locale can't be normalized or the default locale, if no locale provided.
15
+ */
16
+ const normalizeLocale = (locale) => {
17
+ let m;
18
+ if (!locale) {
19
+ return DEFAULT_LOCALE;
20
+ }
21
+ if (typeof locale === "string" && (m = localeRegEX.exec(locale.replace(/_/g, "-")))) { /* eslint-disable-line */
22
+ let language = m[1].toLowerCase();
23
+ let region = m[3] ? m[3].toUpperCase() : undefined;
24
+ const script = m[2] ? m[2].toLowerCase() : undefined;
25
+ const variants = m[4] ? m[4].slice(1) : undefined;
26
+ const isPrivate = m[6];
27
+ language = M_ISO639_NEW_TO_OLD[language] || language;
28
+ // recognize and convert special SAP supportability locales (overwrites m[]!)
29
+ if ((isPrivate && (m = SAPSupportabilityLocales.exec(isPrivate))) /* eslint-disable-line */ ||
30
+ (variants && (m = SAPSupportabilityLocales.exec(variants)))) { /* eslint-disable-line */
31
+ return `en_US_${m[1].toLowerCase()}`; // for now enforce en_US (agreed with SAP SLS)
32
+ }
33
+ // Chinese: when no region but a script is specified, use default region for each script
34
+ if (language === "zh" && !region) {
35
+ if (script === "hans") {
36
+ region = "CN";
37
+ }
38
+ else if (script === "hant") {
39
+ region = "TW";
40
+ }
41
+ }
42
+ return language + (region ? "_" + region + (variants ? "_" + variants.replace("-", "_") : "") : ""); /* eslint-disable-line */
43
+ }
44
+ return DEFAULT_LOCALE;
45
+ };
46
+ export default normalizeLocale;
47
+ //# sourceMappingURL=normalizeLocale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeLocale.js","sourceRoot":"","sources":["../../src/locale/normalizeLocale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE,MAAM,WAAW,GAAG,4MAA4M,CAAC;AACjO,MAAM,wBAAwB,GAAG,gCAAgC,CAAC;AAElE,wDAAwD;AACxD,MAAM,mBAAmB,GAAG;IAC3B,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,IAAI;CACV,CAAC;AAEF;;;;GAIG;AACH,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,EAAE;IAC1C,IAAI,CAAC,CAAC;IAEN,IAAI,CAAC,MAAM,EAAE;QACZ,OAAO,cAAc,CAAC;KACtB;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAC,yBAAyB;QAC9G,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACnD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvB,QAAQ,GAAG,mBAAmB,CAAC,QAA4C,CAAC,IAAI,QAAQ,CAAC;QAEzF,6EAA6E;QAC7E,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,yBAAyB;YAC1F,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAC,yBAAyB;YACvF,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,8CAA8C;SACpF;QAED,wFAAwF;QACxF,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;YACjC,IAAI,MAAM,KAAK,MAAM,EAAE;gBACtB,MAAM,GAAG,IAAI,CAAC;aACd;iBAAM,IAAI,MAAM,KAAK,MAAM,EAAE;gBAC7B,MAAM,GAAG,IAAI,CAAC;aACd;SACD;QAED,OAAO,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,yBAAyB;KAC9H;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import { DEFAULT_LOCALE } from \"../generated/AssetParameters.js\";\n\nconst localeRegEX = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;\nconst SAPSupportabilityLocales = /(?:^|-)(saptrc|sappsd)(?:-|$)/i;\n\n/* Map for old language names for a few ISO639 codes. */\nconst M_ISO639_NEW_TO_OLD = {\n\t\"he\": \"iw\",\n\t\"yi\": \"ji\",\n\t\"nb\": \"no\",\n\t\"sr\": \"sh\",\n};\n\n/**\n * Normalizes the given locale in BCP-47 syntax.\n * @param {string} locale locale to normalize\n * @returns {string} Normalized locale, \"undefined\" if the locale can't be normalized or the default locale, if no locale provided.\n */\nconst normalizeLocale = (locale: string) => {\n\tlet m;\n\n\tif (!locale) {\n\t\treturn DEFAULT_LOCALE;\n\t}\n\n\tif (typeof locale === \"string\" && (m = localeRegEX.exec(locale.replace(/_/g, \"-\")))) {/* eslint-disable-line */\n\t\tlet language = m[1].toLowerCase();\n\t\tlet region = m[3] ? m[3].toUpperCase() : undefined;\n\t\tconst script = m[2] ? m[2].toLowerCase() : undefined;\n\t\tconst variants = m[4] ? m[4].slice(1) : undefined;\n\t\tconst isPrivate = m[6];\n\n\t\tlanguage = M_ISO639_NEW_TO_OLD[language as keyof typeof M_ISO639_NEW_TO_OLD] || language;\n\n\t\t// recognize and convert special SAP supportability locales (overwrites m[]!)\n\t\tif ((isPrivate && (m = SAPSupportabilityLocales.exec(isPrivate))) /* eslint-disable-line */ ||\n\t\t\t(variants && (m = SAPSupportabilityLocales.exec(variants)))) {/* eslint-disable-line */\n\t\t\treturn `en_US_${m[1].toLowerCase()}`; // for now enforce en_US (agreed with SAP SLS)\n\t\t}\n\n\t\t// Chinese: when no region but a script is specified, use default region for each script\n\t\tif (language === \"zh\" && !region) {\n\t\t\tif (script === \"hans\") {\n\t\t\t\tregion = \"CN\";\n\t\t\t} else if (script === \"hant\") {\n\t\t\t\tregion = \"TW\";\n\t\t\t}\n\t\t}\n\n\t\treturn language + (region ? \"_\" + region + (variants ? \"_\" + variants.replace(\"-\", \"_\") : \"\") : \"\"); /* eslint-disable-line */\n\t}\n\n\treturn DEFAULT_LOCALE;\n};\n\nexport default normalizeLocale;\n"]}
@@ -0,0 +1,14 @@
1
+ import { TemplateResult } from "lit-html";
2
+ import type { Renderer } from "../UI5Element.js";
3
+ declare const effectiveHtml: (strings: TemplateStringsArray, ...values: Array<unknown>) => TemplateResult<1 | 2>;
4
+ declare const effectiveSvg: (strings: TemplateStringsArray, ...values: Array<unknown>) => TemplateResult<1 | 2>;
5
+ declare const litRender: Renderer;
6
+ declare const scopeTag: (tag: string, tags: Array<string>, suffix: string) => object | undefined;
7
+ export { effectiveHtml as html, effectiveSvg as svg, };
8
+ export { scopeTag };
9
+ export { repeat } from "lit-html/directives/repeat.js";
10
+ export { classMap } from "lit-html/directives/class-map.js";
11
+ export { styleMap } from "./directives/style-map.js";
12
+ export { ifDefined } from "lit-html/directives/if-defined.js";
13
+ export { unsafeHTML } from "lit-html/directives/unsafe-html.js";
14
+ export default litRender;
@@ -1,15 +1,41 @@
1
- import { html, render } from "lit-html/lit-html.js";
2
-
3
- const litRender = (templateResult, domNode, styles, { eventContext } = {}) => {
4
- if (styles) {
5
- templateResult = html`<style>${styles}</style>${templateResult}`;
6
- }
7
- render(templateResult, domNode, { eventContext });
8
- };
9
-
10
- export { html, svg } from "lit-html/lit-html.js";
1
+ import { render, html, svg, } from "lit-html";
2
+ import { getFeature } from "../FeaturesRegistry.js";
3
+ const effectiveHtml = (strings, ...values) => {
4
+ const litStatic = getFeature("LitStatic");
5
+ const fn = litStatic ? litStatic.html : html;
6
+ return fn(strings, ...values);
7
+ };
8
+ const effectiveSvg = (strings, ...values) => {
9
+ const litStatic = getFeature("LitStatic");
10
+ const fn = litStatic ? litStatic.svg : svg;
11
+ return fn(strings, ...values);
12
+ };
13
+ const litRender = (templateResult, container, styleStrOrHrefsArr, forStaticArea, options) => {
14
+ const openUI5Enablement = getFeature("OpenUI5Enablement");
15
+ if (openUI5Enablement && !forStaticArea) {
16
+ templateResult = openUI5Enablement.wrapTemplateResultInBusyMarkup(effectiveHtml, options.host, templateResult);
17
+ }
18
+ if (typeof styleStrOrHrefsArr === "string") {
19
+ templateResult = effectiveHtml `<style>${styleStrOrHrefsArr}</style>${templateResult}`;
20
+ }
21
+ else if (Array.isArray(styleStrOrHrefsArr) && styleStrOrHrefsArr.length) {
22
+ templateResult = effectiveHtml `${styleStrOrHrefsArr.map(href => effectiveHtml `<link type="text/css" rel="stylesheet" href="${href}">`)}${templateResult}`;
23
+ }
24
+ render(templateResult, container, options);
25
+ };
26
+ const scopeTag = (tag, tags, suffix) => {
27
+ const litStatic = getFeature("LitStatic");
28
+ if (litStatic) {
29
+ return litStatic.unsafeStatic((tags || []).includes(tag) ? `${tag}-${suffix}` : tag);
30
+ }
31
+ };
32
+ export { effectiveHtml as html, effectiveSvg as svg, };
33
+ export { scopeTag };
11
34
  export { repeat } from "lit-html/directives/repeat.js";
12
35
  export { classMap } from "lit-html/directives/class-map.js";
13
- export { styleMap } from "lit-html/directives/style-map.js";
14
-
36
+ // @ts-ignore style-map is a JS file
37
+ export { styleMap } from "./directives/style-map.js";
38
+ export { ifDefined } from "lit-html/directives/if-defined.js";
39
+ export { unsafeHTML } from "lit-html/directives/unsafe-html.js";
15
40
  export default litRender;
41
+ //# sourceMappingURL=LitRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LitRenderer.js","sourceRoot":"","sources":["../../src/renderer/LitRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,MAAM,EACN,IAAI,EACJ,GAAG,GAEH,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAOpD,MAAM,aAAa,GAAG,CAAC,OAA6B,EAAE,GAAG,MAAsB,EAAE,EAAE;IAClF,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,OAA6B,EAAE,GAAG,MAAsB,EAAE,EAAE;IACjF,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,SAAS,GAAa,CAAC,cAAsC,EAAE,SAAyC,EAAE,kBAAsD,EAAE,aAAsB,EAAE,OAAwB,EAAE,EAAE;IAC3N,MAAM,iBAAiB,GAAG,UAAU,CAA2B,mBAAmB,CAAC,CAAC;IACpF,IAAI,iBAAiB,IAAI,CAAC,aAAa,EAAE;QACxC,cAAc,GAAG,iBAAiB,CAAC,8BAA8B,CAAC,aAAa,EAAE,OAAO,CAAC,IAAkB,EAAE,cAAgC,CAAC,CAAC;KAC/I;IAED,IAAI,OAAO,kBAAkB,KAAK,QAAQ,EAAE;QAC3C,cAAc,GAAG,aAAa,CAAA,UAAU,kBAAkB,WAAW,cAAc,EAAE,CAAC;KACtF;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,kBAAkB,CAAC,MAAM,EAAE;QAC1E,cAAc,GAAG,aAAa,CAAA,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAA,gDAAgD,IAAI,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC;KAC1J;IACD,MAAM,CAAC,cAAgC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,IAAmB,EAAE,MAAc,EAAE,EAAE;IACrE,MAAM,SAAS,GAAG,UAAU,CAAmB,WAAW,CAAC,CAAC;IAC5D,IAAI,SAAS,EAAE;QACd,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACrF;AACF,CAAC,CAAC;AAEF,OAAO,EACN,aAAa,IAAI,IAAI,EACrB,YAAY,IAAI,GAAG,GACnB,CAAC;AACF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,oCAAoC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,eAAe,SAAS,CAAC","sourcesContent":["import {\n\trender,\n\thtml,\n\tsvg,\n\tTemplateResult,\n} from \"lit-html\";\n\nimport { getFeature } from \"../FeaturesRegistry.js\";\nimport type { LitStatic } from \"../CustomElementsScope.js\";\nimport type OpenUI5Enablement from \"../features/OpenUI5Enablement.js\";\nimport type UI5Element from \"../UI5Element.js\";\nimport type { Renderer, RendererOptions } from \"../UI5Element.js\";\nimport { TemplateFunctionResult } from \"./executeTemplate.js\";\n\nconst effectiveHtml = (strings: TemplateStringsArray, ...values: Array<unknown>) => {\n\tconst litStatic = getFeature<typeof LitStatic>(\"LitStatic\");\n\tconst fn = litStatic ? litStatic.html : html;\n\treturn fn(strings, ...values);\n};\n\nconst effectiveSvg = (strings: TemplateStringsArray, ...values: Array<unknown>) => {\n\tconst litStatic = getFeature<typeof LitStatic>(\"LitStatic\");\n\tconst fn = litStatic ? litStatic.svg : svg;\n\treturn fn(strings, ...values);\n};\n\nconst litRender: Renderer = (templateResult: TemplateFunctionResult, container: HTMLElement | DocumentFragment, styleStrOrHrefsArr: string | Array<string> | undefined, forStaticArea: boolean, options: RendererOptions) => {\n\tconst openUI5Enablement = getFeature<typeof OpenUI5Enablement>(\"OpenUI5Enablement\");\n\tif (openUI5Enablement && !forStaticArea) {\n\t\ttemplateResult = openUI5Enablement.wrapTemplateResultInBusyMarkup(effectiveHtml, options.host as UI5Element, templateResult as TemplateResult);\n\t}\n\n\tif (typeof styleStrOrHrefsArr === \"string\") {\n\t\ttemplateResult = effectiveHtml`<style>${styleStrOrHrefsArr}</style>${templateResult}`;\n\t} else if (Array.isArray(styleStrOrHrefsArr) && styleStrOrHrefsArr.length) {\n\t\ttemplateResult = effectiveHtml`${styleStrOrHrefsArr.map(href => effectiveHtml`<link type=\"text/css\" rel=\"stylesheet\" href=\"${href}\">`)}${templateResult}`;\n\t}\n\trender(templateResult as TemplateResult, container, options);\n};\n\nconst scopeTag = (tag: string, tags: Array<string>, suffix: string) => {\n\tconst litStatic = getFeature<typeof LitStatic>(\"LitStatic\");\n\tif (litStatic) {\n\t\treturn litStatic.unsafeStatic((tags || []).includes(tag) ? `${tag}-${suffix}` : tag);\n\t}\n};\n\nexport {\n\teffectiveHtml as html,\n\teffectiveSvg as svg,\n};\nexport { scopeTag };\nexport { repeat } from \"lit-html/directives/repeat.js\";\nexport { classMap } from \"lit-html/directives/class-map.js\";\n// @ts-ignore style-map is a JS file\nexport { styleMap } from \"./directives/style-map.js\";\nexport { ifDefined } from \"lit-html/directives/if-defined.js\";\nexport { unsafeHTML } from \"lit-html/directives/unsafe-html.js\";\n\nexport default litRender;\n"]}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2018 Google LLC
4
+ * SPDX-License-Identifier: BSD-3-Clause
5
+ */
6
+
7
+ /**
8
+ * This is the original style-map.js directive from lit-html 2 with the only difference that "render" is not called even for the first rendering (update is used instead)
9
+ */
10
+
11
+ import { noChange } from 'lit-html';
12
+ import { directive, Directive, PartType, } from 'lit-html/directive.js';
13
+ class StyleMapDirective extends Directive {
14
+ constructor(partInfo) {
15
+ var _a;
16
+ super(partInfo);
17
+ if (partInfo.type !== PartType.ATTRIBUTE ||
18
+ partInfo.name !== 'style' ||
19
+ ((_a = partInfo.strings) === null || _a === void 0 ? void 0 : _a.length) > 2) {
20
+ throw new Error('The `styleMap` directive must be used in the `style` attribute ' +
21
+ 'and must be the only part in the attribute.');
22
+ }
23
+ }
24
+ render(styleInfo) {
25
+ return "";
26
+ }
27
+ update(part, [styleInfo]) {
28
+ const { style } = part.element;
29
+ if (this._previousStyleProperties === undefined) {
30
+ this._previousStyleProperties = new Set();
31
+ for (const name in styleInfo) {
32
+ this._previousStyleProperties.add(name);
33
+ }
34
+ // return this.render(styleInfo);
35
+ }
36
+ // Remove old properties that no longer exist in styleInfo
37
+ // We use forEach() instead of for-of so that re don't require down-level
38
+ // iteration.
39
+ this._previousStyleProperties.forEach((name) => {
40
+ // If the name isn't in styleInfo or it's null/undefined
41
+ if (styleInfo[name] == null) {
42
+ this._previousStyleProperties.delete(name);
43
+ if (name.includes('-')) {
44
+ style.removeProperty(name);
45
+ }
46
+ else {
47
+ // Note reset using empty string (vs null) as IE11 does not always
48
+ // reset via null (https://developer.mozilla.org/en-US/docs/Web/API/ElementCSSInlineStyle/style#setting_styles)
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
50
+ style[name] = '';
51
+ }
52
+ }
53
+ });
54
+ // Add or update properties
55
+ for (const name in styleInfo) {
56
+ const value = styleInfo[name];
57
+ if (value != null) {
58
+ this._previousStyleProperties.add(name);
59
+ if (name.includes('-')) {
60
+ style.setProperty(name, value);
61
+ }
62
+ else {
63
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
64
+ style[name] = value;
65
+ }
66
+ }
67
+ }
68
+ return noChange;
69
+ }
70
+ }
71
+
72
+ export const styleMap = directive(StyleMapDirective);
@@ -0,0 +1,13 @@
1
+ import type UI5Element from "../UI5Element.js";
2
+ type TemplateFunctionResult = object;
3
+ type TemplateFunction = (component: UI5Element, tagsToScope: Array<string>, scope: string | undefined) => TemplateFunctionResult;
4
+ /**
5
+ * Runs a component's template with the component's current state, while also scoping HTML
6
+ *
7
+ * @param template - the template to execute
8
+ * @param component - the component
9
+ * @public
10
+ */
11
+ declare const executeTemplate: (template: TemplateFunction, component: UI5Element) => TemplateFunctionResult;
12
+ export default executeTemplate;
13
+ export type { TemplateFunction, TemplateFunctionResult };
@@ -0,0 +1,30 @@
1
+ import { getCustomElementsScopingSuffix, shouldScopeCustomElement } from "../CustomElementsScopeUtils.js";
2
+ /**
3
+ * Runs a component's template with the component's current state, while also scoping HTML
4
+ *
5
+ * @param template - the template to execute
6
+ * @param component - the component
7
+ * @public
8
+ */
9
+ const executeTemplate = (template, component) => {
10
+ const tagsToScope = getTagsToScope(component);
11
+ const scope = getCustomElementsScopingSuffix();
12
+ return template.call(component, component, tagsToScope, scope);
13
+ };
14
+ /**
15
+ * Returns all tags, used inside component's template subject to scoping.
16
+ * @param component - the component
17
+ * @returns {Array[]}
18
+ * @private
19
+ */
20
+ const getTagsToScope = (component) => {
21
+ const ctor = component.constructor;
22
+ const componentTag = ctor.getMetadata().getPureTag();
23
+ const tagsToScope = ctor.getUniqueDependencies().map((dep) => dep.getMetadata().getPureTag()).filter(shouldScopeCustomElement);
24
+ if (shouldScopeCustomElement(componentTag)) {
25
+ tagsToScope.push(componentTag);
26
+ }
27
+ return tagsToScope;
28
+ };
29
+ export default executeTemplate;
30
+ //# sourceMappingURL=executeTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executeTemplate.js","sourceRoot":"","sources":["../../src/renderer/executeTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAM1G;;;;;;GAMG;AACH,MAAM,eAAe,GAAG,CAAC,QAA0B,EAAE,SAAqB,EAA0B,EAAE;IACrG,MAAM,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,8BAA8B,EAAE,CAAC;IAC/C,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,cAAc,GAAG,CAAC,SAAqB,EAAE,EAAE;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,WAAgC,CAAC;IAExD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC;IACrD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAC,GAAsB,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;IAElJ,IAAI,wBAAwB,CAAC,YAAY,CAAC,EAAE;QAC3C,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC/B;IAED,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import { getCustomElementsScopingSuffix, shouldScopeCustomElement } from \"../CustomElementsScopeUtils.js\";\nimport type UI5Element from \"../UI5Element.js\";\n\ntype TemplateFunctionResult = object;\ntype TemplateFunction = (component: UI5Element, tagsToScope: Array<string>, scope: string | undefined) => TemplateFunctionResult;\n\n/**\n * Runs a component's template with the component's current state, while also scoping HTML\n *\n * @param template - the template to execute\n * @param component - the component\n * @public\n */\nconst executeTemplate = (template: TemplateFunction, component: UI5Element): TemplateFunctionResult => {\n\tconst tagsToScope = getTagsToScope(component);\n\tconst scope = getCustomElementsScopingSuffix();\n\treturn template.call(component, component, tagsToScope, scope);\n};\n\n/**\n * Returns all tags, used inside component's template subject to scoping.\n * @param component - the component\n * @returns {Array[]}\n * @private\n */\nconst getTagsToScope = (component: UI5Element) => {\n\tconst ctor = component.constructor as typeof UI5Element;\n\n\tconst componentTag = ctor.getMetadata().getPureTag();\n\tconst tagsToScope = ctor.getUniqueDependencies().map((dep: typeof UI5Element) => dep.getMetadata().getPureTag()).filter(shouldScopeCustomElement);\n\n\tif (shouldScopeCustomElement(componentTag)) {\n\t\ttagsToScope.push(componentTag);\n\t}\n\n\treturn tagsToScope;\n};\n\nexport default executeTemplate;\nexport type { TemplateFunction, TemplateFunctionResult };\n"]}
@@ -0,0 +1,240 @@
1
+ import now from './util/now.js';
2
+ var Log = {};
3
+ Log.Level = {
4
+ NONE: -1,
5
+ FATAL: 0,
6
+ ERROR: 1,
7
+ WARNING: 2,
8
+ INFO: 3,
9
+ DEBUG: 4,
10
+ TRACE: 5,
11
+ ALL: 5 + 1
12
+ };
13
+ var aLog = [], mMaxLevel = { '': Log.Level.ERROR }, iLogEntriesLimit = 3000, oListener = null, bLogSupportInfo = false;
14
+ function pad0(i, w) {
15
+ return ('000' + String(i)).slice(-w);
16
+ }
17
+ function level(sComponent) {
18
+ return !sComponent || isNaN(mMaxLevel[sComponent]) ? mMaxLevel[''] : mMaxLevel[sComponent];
19
+ }
20
+ function discardLogEntries() {
21
+ var iLogLength = aLog.length;
22
+ if (iLogLength) {
23
+ var iEntriesToKeep = Math.min(iLogLength, Math.floor(iLogEntriesLimit * 0.7));
24
+ if (oListener) {
25
+ oListener.onDiscardLogEntries(aLog.slice(0, iLogLength - iEntriesToKeep));
26
+ }
27
+ if (iEntriesToKeep) {
28
+ aLog = aLog.slice(-iEntriesToKeep, iLogLength);
29
+ } else {
30
+ aLog = [];
31
+ }
32
+ }
33
+ }
34
+ function getLogEntryListenerInstance() {
35
+ if (!oListener) {
36
+ oListener = {
37
+ listeners: [],
38
+ onLogEntry: function (oLogEntry) {
39
+ for (var i = 0; i < oListener.listeners.length; i++) {
40
+ if (oListener.listeners[i].onLogEntry) {
41
+ oListener.listeners[i].onLogEntry(oLogEntry);
42
+ }
43
+ }
44
+ },
45
+ onDiscardLogEntries: function (aDiscardedLogEntries) {
46
+ for (var i = 0; i < oListener.listeners.length; i++) {
47
+ if (oListener.listeners[i].onDiscardLogEntries) {
48
+ oListener.listeners[i].onDiscardLogEntries(aDiscardedLogEntries);
49
+ }
50
+ }
51
+ },
52
+ attach: function (oLog, oLstnr) {
53
+ if (oLstnr) {
54
+ oListener.listeners.push(oLstnr);
55
+ if (oLstnr.onAttachToLog) {
56
+ oLstnr.onAttachToLog(oLog);
57
+ }
58
+ }
59
+ },
60
+ detach: function (oLog, oLstnr) {
61
+ for (var i = 0; i < oListener.listeners.length; i++) {
62
+ if (oListener.listeners[i] === oLstnr) {
63
+ if (oLstnr.onDetachFromLog) {
64
+ oLstnr.onDetachFromLog(oLog);
65
+ }
66
+ oListener.listeners.splice(i, 1);
67
+ return;
68
+ }
69
+ }
70
+ }
71
+ };
72
+ }
73
+ return oListener;
74
+ }
75
+ Log.fatal = function (sMessage, vDetails, sComponent, fnSupportInfo) {
76
+ log(Log.Level.FATAL, sMessage, vDetails, sComponent, fnSupportInfo);
77
+ };
78
+ Log.error = function (sMessage, vDetails, sComponent, fnSupportInfo) {
79
+ log(Log.Level.ERROR, sMessage, vDetails, sComponent, fnSupportInfo);
80
+ };
81
+ Log.warning = function (sMessage, vDetails, sComponent, fnSupportInfo) {
82
+ log(Log.Level.WARNING, sMessage, vDetails, sComponent, fnSupportInfo);
83
+ };
84
+ Log.info = function (sMessage, vDetails, sComponent, fnSupportInfo) {
85
+ log(Log.Level.INFO, sMessage, vDetails, sComponent, fnSupportInfo);
86
+ };
87
+ Log.debug = function (sMessage, vDetails, sComponent, fnSupportInfo) {
88
+ log(Log.Level.DEBUG, sMessage, vDetails, sComponent, fnSupportInfo);
89
+ };
90
+ Log.trace = function (sMessage, vDetails, sComponent, fnSupportInfo) {
91
+ log(Log.Level.TRACE, sMessage, vDetails, sComponent, fnSupportInfo);
92
+ };
93
+ Log.setLevel = function (iLogLevel, sComponent, _bDefault) {
94
+ sComponent = sComponent || '';
95
+ if (!_bDefault || mMaxLevel[sComponent] == null) {
96
+ mMaxLevel[sComponent] = iLogLevel;
97
+ var sLogLevel;
98
+ Object.keys(Log.Level).forEach(function (sLevel) {
99
+ if (Log.Level[sLevel] === iLogLevel) {
100
+ sLogLevel = sLevel;
101
+ }
102
+ });
103
+ log(Log.Level.INFO, 'Changing log level ' + (sComponent ? 'for \'' + sComponent + '\' ' : '') + 'to ' + sLogLevel, '', 'sap.base.log');
104
+ }
105
+ };
106
+ Log.getLevel = function (sComponent) {
107
+ return level(sComponent);
108
+ };
109
+ Log.isLoggable = function (iLevel, sComponent) {
110
+ return (iLevel == null ? Log.Level.DEBUG : iLevel) <= level(sComponent);
111
+ };
112
+ Log.logSupportInfo = function (bEnabled) {
113
+ bLogSupportInfo = bEnabled;
114
+ };
115
+ function log(iLevel, sMessage, vDetails, sComponent, fnSupportInfo) {
116
+ if (!fnSupportInfo && !sComponent && typeof vDetails === 'function') {
117
+ fnSupportInfo = vDetails;
118
+ vDetails = '';
119
+ }
120
+ if (!fnSupportInfo && typeof sComponent === 'function') {
121
+ fnSupportInfo = sComponent;
122
+ sComponent = '';
123
+ }
124
+ if (iLevel <= level(sComponent)) {
125
+ var fNow = now(), oNow = new Date(fNow), iMicroSeconds = Math.floor((fNow - Math.floor(fNow)) * 1000), oLogEntry = {
126
+ time: pad0(oNow.getHours(), 2) + ':' + pad0(oNow.getMinutes(), 2) + ':' + pad0(oNow.getSeconds(), 2) + '.' + pad0(oNow.getMilliseconds(), 3) + pad0(iMicroSeconds, 3),
127
+ date: pad0(oNow.getFullYear(), 4) + '-' + pad0(oNow.getMonth() + 1, 2) + '-' + pad0(oNow.getDate(), 2),
128
+ timestamp: fNow,
129
+ level: iLevel,
130
+ message: String(sMessage || ''),
131
+ details: String(vDetails || ''),
132
+ component: String(sComponent || '')
133
+ };
134
+ if (bLogSupportInfo && typeof fnSupportInfo === 'function') {
135
+ oLogEntry.supportInfo = fnSupportInfo();
136
+ }
137
+ if (iLogEntriesLimit) {
138
+ if (aLog.length >= iLogEntriesLimit) {
139
+ discardLogEntries();
140
+ }
141
+ aLog.push(oLogEntry);
142
+ }
143
+ if (oListener) {
144
+ oListener.onLogEntry(oLogEntry);
145
+ }
146
+ if (console) {
147
+ var isDetailsError = vDetails instanceof Error, logText = oLogEntry.date + ' ' + oLogEntry.time + ' ' + oLogEntry.message + ' - ' + oLogEntry.details + ' ' + oLogEntry.component;
148
+ switch (iLevel) {
149
+ case Log.Level.FATAL:
150
+ case Log.Level.ERROR:
151
+ isDetailsError ? console.error(logText, '\n', vDetails) : console.error(logText);
152
+ break;
153
+ case Log.Level.WARNING:
154
+ isDetailsError ? console.warn(logText, '\n', vDetails) : console.warn(logText);
155
+ break;
156
+ case Log.Level.INFO:
157
+ if (console.info) {
158
+ isDetailsError ? console.info(logText, '\n', vDetails) : console.info(logText);
159
+ } else {
160
+ isDetailsError ? console.log(logText, '\n', vDetails) : console.log(logText);
161
+ }
162
+ break;
163
+ case Log.Level.DEBUG:
164
+ isDetailsError ? console.debug(logText, '\n', vDetails) : console.debug(logText);
165
+ break;
166
+ case Log.Level.TRACE:
167
+ isDetailsError ? console.trace(logText, '\n', vDetails) : console.trace(logText);
168
+ break;
169
+ }
170
+ if (console.info && oLogEntry.supportInfo) {
171
+ console.info(oLogEntry.supportInfo);
172
+ }
173
+ }
174
+ return oLogEntry;
175
+ }
176
+ }
177
+ Log.getLogEntries = function () {
178
+ return aLog.slice();
179
+ };
180
+ Log.getLogEntriesLimit = function () {
181
+ return iLogEntriesLimit;
182
+ };
183
+ Log.setLogEntriesLimit = function (iLimit) {
184
+ if (iLimit < 0) {
185
+ throw new Error('The log entries limit needs to be greater than or equal to 0!');
186
+ }
187
+ iLogEntriesLimit = iLimit;
188
+ if (aLog.length >= iLogEntriesLimit) {
189
+ discardLogEntries();
190
+ }
191
+ };
192
+ Log.addLogListener = function (oListener) {
193
+ getLogEntryListenerInstance().attach(this, oListener);
194
+ };
195
+ Log.removeLogListener = function (oListener) {
196
+ getLogEntryListenerInstance().detach(this, oListener);
197
+ };
198
+ function Logger(sComponent) {
199
+ this.fatal = function (msg, detail, comp, support) {
200
+ Log.fatal(msg, detail, comp || sComponent, support);
201
+ return this;
202
+ };
203
+ this.error = function (msg, detail, comp, support) {
204
+ Log.error(msg, detail, comp || sComponent, support);
205
+ return this;
206
+ };
207
+ this.warning = function (msg, detail, comp, support) {
208
+ Log.warning(msg, detail, comp || sComponent, support);
209
+ return this;
210
+ };
211
+ this.info = function (msg, detail, comp, support) {
212
+ Log.info(msg, detail, comp || sComponent, support);
213
+ return this;
214
+ };
215
+ this.debug = function (msg, detail, comp, support) {
216
+ Log.debug(msg, detail, comp || sComponent, support);
217
+ return this;
218
+ };
219
+ this.trace = function (msg, detail, comp, support) {
220
+ Log.trace(msg, detail, comp || sComponent, support);
221
+ return this;
222
+ };
223
+ this.setLevel = function (level, comp) {
224
+ Log.setLevel(level, comp || sComponent);
225
+ return this;
226
+ };
227
+ this.getLevel = function (comp) {
228
+ return Log.getLevel(comp || sComponent);
229
+ };
230
+ this.isLoggable = function (level, comp) {
231
+ return Log.isLoggable(level, comp || sComponent);
232
+ };
233
+ }
234
+ Log.getLogger = function (sComponent, iDefaultLogLevel) {
235
+ if (!isNaN(iDefaultLogLevel) && mMaxLevel[sComponent] == null) {
236
+ mMaxLevel[sComponent] = iDefaultLogLevel;
237
+ }
238
+ return new Logger(sComponent);
239
+ };
240
+ export default Log;