@ui5/webcomponents-base 0.0.0-c6d8872f3 → 0.0.0-c8721b8d2

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 (680) hide show
  1. package/.eslintignore +9 -3
  2. package/.npsrc.json +3 -0
  3. package/CHANGELOG.md +1219 -0
  4. package/README.md +58 -7
  5. package/bundle.esm.js +36 -17
  6. package/config/wdio.conf.cjs +400 -0
  7. package/dist/.tsbuildinfo +1 -0
  8. package/dist/AssetRegistry.d.ts +5 -0
  9. package/dist/AssetRegistry.js +6 -9
  10. package/dist/AssetRegistry.js.map +1 -0
  11. package/dist/Boot.d.ts +9 -0
  12. package/dist/Boot.js +71 -0
  13. package/dist/Boot.js.map +1 -0
  14. package/dist/CSP.d.ts +30 -0
  15. package/dist/CSP.js +51 -0
  16. package/dist/CSP.js.map +1 -0
  17. package/dist/CustomElementsRegistry.d.ts +5 -0
  18. package/dist/CustomElementsRegistry.js +78 -0
  19. package/dist/CustomElementsRegistry.js.map +1 -0
  20. package/dist/CustomElementsScope.d.ts +7 -0
  21. package/dist/CustomElementsScope.js +11 -0
  22. package/dist/CustomElementsScope.js.map +1 -0
  23. package/dist/CustomElementsScopeUtils.d.ts +62 -0
  24. package/dist/CustomElementsScopeUtils.js +102 -0
  25. package/dist/CustomElementsScopeUtils.js.map +1 -0
  26. package/dist/DOMObserver.d.ts +11 -0
  27. package/dist/DOMObserver.js +23 -0
  28. package/dist/DOMObserver.js.map +1 -0
  29. package/dist/Device.d.ts +13 -0
  30. package/dist/Device.js +167 -815
  31. package/dist/Device.js.map +1 -0
  32. package/dist/EventProvider.d.ts +25 -0
  33. package/dist/EventProvider.js +67 -70
  34. package/dist/EventProvider.js.map +1 -0
  35. package/dist/FeaturesRegistry.d.ts +3 -0
  36. package/dist/FeaturesRegistry.js +5 -7
  37. package/dist/FeaturesRegistry.js.map +1 -0
  38. package/dist/FontFace.d.ts +2 -0
  39. package/dist/FontFace.js +21 -69
  40. package/dist/FontFace.js.map +1 -0
  41. package/dist/IgnoreCustomElements.d.ts +27 -0
  42. package/dist/IgnoreCustomElements.js +39 -0
  43. package/dist/IgnoreCustomElements.js.map +1 -0
  44. package/dist/InitialConfiguration.d.ts +28 -0
  45. package/dist/InitialConfiguration.js +134 -103
  46. package/dist/InitialConfiguration.js.map +1 -0
  47. package/dist/Keys.d.ts +61 -0
  48. package/dist/Keys.js +177 -157
  49. package/dist/Keys.js.map +1 -0
  50. package/dist/ManagedStyles.d.ts +9 -0
  51. package/dist/ManagedStyles.js +153 -0
  52. package/dist/ManagedStyles.js.map +1 -0
  53. package/dist/MarkedEvents.d.ts +9 -0
  54. package/dist/MarkedEvents.js +15 -0
  55. package/dist/MarkedEvents.js.map +1 -0
  56. package/dist/MediaRange.d.ts +37 -0
  57. package/dist/MediaRange.js +98 -0
  58. package/dist/MediaRange.js.map +1 -0
  59. package/dist/PropertiesFileFormat.d.ts +8 -0
  60. package/dist/PropertiesFileFormat.js +85 -0
  61. package/dist/PropertiesFileFormat.js.map +1 -0
  62. package/dist/Render.d.ts +47 -0
  63. package/dist/Render.js +143 -0
  64. package/dist/Render.js.map +1 -0
  65. package/dist/RenderQueue.d.ts +19 -0
  66. package/dist/RenderQueue.js +53 -39
  67. package/dist/RenderQueue.js.map +1 -0
  68. package/dist/Runtimes.d.ts +27 -0
  69. package/dist/Runtimes.js +86 -0
  70. package/dist/Runtimes.js.map +1 -0
  71. package/dist/StaticArea.d.ts +3 -0
  72. package/dist/StaticArea.js +4 -38
  73. package/dist/StaticArea.js.map +1 -0
  74. package/dist/StaticAreaItem.d.ts +37 -0
  75. package/dist/StaticAreaItem.js +95 -83
  76. package/dist/StaticAreaItem.js.map +1 -0
  77. package/dist/SystemCSSVars.d.ts +2 -0
  78. package/dist/SystemCSSVars.js +9 -0
  79. package/dist/SystemCSSVars.js.map +1 -0
  80. package/dist/Theming.d.ts +3 -0
  81. package/dist/Theming.js +3 -6
  82. package/dist/Theming.js.map +1 -0
  83. package/dist/UI5Element.d.ts +394 -0
  84. package/dist/UI5Element.js +964 -852
  85. package/dist/UI5Element.js.map +1 -0
  86. package/dist/UI5ElementMetadata.d.ts +151 -0
  87. package/dist/UI5ElementMetadata.js +278 -160
  88. package/dist/UI5ElementMetadata.js.map +1 -0
  89. package/dist/animations/AnimationQueue.d.ts +8 -0
  90. package/dist/animations/AnimationQueue.js +31 -38
  91. package/dist/animations/AnimationQueue.js.map +1 -0
  92. package/dist/animations/animate.d.ts +14 -0
  93. package/dist/animations/animate.js +46 -51
  94. package/dist/animations/animate.js.map +1 -0
  95. package/dist/animations/scroll.d.ts +5 -0
  96. package/dist/animations/scroll.js +18 -27
  97. package/dist/animations/scroll.js.map +1 -0
  98. package/dist/animations/slideDown.d.ts +5 -0
  99. package/dist/animations/slideDown.js +53 -78
  100. package/dist/animations/slideDown.js.map +1 -0
  101. package/dist/animations/slideUp.d.ts +5 -0
  102. package/dist/animations/slideUp.js +49 -70
  103. package/dist/animations/slideUp.js.map +1 -0
  104. package/dist/api.json +1 -0
  105. package/dist/asset-registries/Icons.d.ts +39 -0
  106. package/dist/asset-registries/Icons.js +136 -24
  107. package/dist/asset-registries/Icons.js.map +1 -0
  108. package/dist/asset-registries/Illustrations.d.ts +18 -0
  109. package/dist/asset-registries/Illustrations.js +84 -0
  110. package/dist/asset-registries/Illustrations.js.map +1 -0
  111. package/dist/asset-registries/LocaleData.d.ts +7 -0
  112. package/dist/asset-registries/LocaleData.js +125 -116
  113. package/dist/asset-registries/LocaleData.js.map +1 -0
  114. package/dist/asset-registries/Themes.d.ts +12 -0
  115. package/dist/asset-registries/Themes.js +59 -66
  116. package/dist/asset-registries/Themes.js.map +1 -0
  117. package/dist/asset-registries/i18n.d.ts +23 -0
  118. package/dist/asset-registries/i18n.js +82 -54
  119. package/dist/asset-registries/i18n.js.map +1 -0
  120. package/dist/asset-registries/util/IconCollectionsAlias.d.ts +30 -0
  121. package/dist/asset-registries/util/IconCollectionsAlias.js +37 -0
  122. package/dist/asset-registries/util/IconCollectionsAlias.js.map +1 -0
  123. package/dist/asset-registries/util/IconCollectionsByTheme.d.ts +20 -0
  124. package/dist/asset-registries/util/IconCollectionsByTheme.js +42 -0
  125. package/dist/asset-registries/util/IconCollectionsByTheme.js.map +1 -0
  126. package/dist/asset-registries/util/getIconCollectionByTheme.d.ts +13 -0
  127. package/dist/asset-registries/util/getIconCollectionByTheme.js +29 -0
  128. package/dist/asset-registries/util/getIconCollectionByTheme.js.map +1 -0
  129. package/dist/config/AnimationMode.d.ts +14 -0
  130. package/dist/config/AnimationMode.js +23 -10
  131. package/dist/config/AnimationMode.js.map +1 -0
  132. package/dist/config/CalendarType.d.ts +15 -0
  133. package/dist/config/CalendarType.js +31 -14
  134. package/dist/config/CalendarType.js.map +1 -0
  135. package/dist/config/FormatSettings.d.ts +15 -0
  136. package/dist/config/FormatSettings.js +15 -9
  137. package/dist/config/FormatSettings.js.map +1 -0
  138. package/dist/config/Icons.d.ts +40 -0
  139. package/dist/config/Icons.js +44 -0
  140. package/dist/config/Icons.js.map +1 -0
  141. package/dist/config/Language.d.ts +40 -0
  142. package/dist/config/Language.js +66 -10
  143. package/dist/config/Language.js.map +1 -0
  144. package/dist/config/NoConflict.d.ts +20 -0
  145. package/dist/config/NoConflict.js +41 -41
  146. package/dist/config/NoConflict.js.map +1 -0
  147. package/dist/config/RTL.d.ts +7 -0
  148. package/dist/config/RTL.js +26 -20
  149. package/dist/config/RTL.js.map +1 -0
  150. package/dist/config/Theme.d.ts +38 -0
  151. package/dist/config/Theme.js +64 -22
  152. package/dist/config/Theme.js.map +1 -0
  153. package/dist/config/ThemeRoot.d.ts +29 -0
  154. package/dist/config/ThemeRoot.js +59 -0
  155. package/dist/config/ThemeRoot.js.map +1 -0
  156. package/dist/config/Timezone.d.ts +17 -0
  157. package/dist/config/Timezone.js +30 -0
  158. package/dist/config/Timezone.js.map +1 -0
  159. package/dist/connectToComponent.d.ts +9 -0
  160. package/dist/connectToComponent.js +59 -0
  161. package/dist/connectToComponent.js.map +1 -0
  162. package/dist/css/BusyIndicator.css +80 -0
  163. package/dist/css/FontFace.css +96 -0
  164. package/dist/css/OverrideFontFace.css +32 -0
  165. package/dist/css/SystemCSSVars.css +17 -0
  166. package/dist/decorators/customElement.d.ts +23 -0
  167. package/dist/decorators/customElement.js +37 -0
  168. package/dist/decorators/customElement.js.map +1 -0
  169. package/dist/decorators/event.d.ts +10 -0
  170. package/dist/decorators/event.js +24 -0
  171. package/dist/decorators/event.js.map +1 -0
  172. package/dist/decorators/property.d.ts +9 -0
  173. package/dist/decorators/property.js +24 -0
  174. package/dist/decorators/property.js.map +1 -0
  175. package/dist/decorators/slot.d.ts +9 -0
  176. package/dist/decorators/slot.js +37 -0
  177. package/dist/decorators/slot.js.map +1 -0
  178. package/dist/delegate/ItemNavigation.d.ts +114 -0
  179. package/dist/delegate/ItemNavigation.js +311 -274
  180. package/dist/delegate/ItemNavigation.js.map +1 -0
  181. package/dist/delegate/ResizeHandler.d.ts +25 -0
  182. package/dist/delegate/ResizeHandler.js +84 -63
  183. package/dist/delegate/ResizeHandler.js.map +1 -0
  184. package/dist/delegate/ScrollEnablement.d.ts +49 -0
  185. package/dist/delegate/ScrollEnablement.js +159 -100
  186. package/dist/delegate/ScrollEnablement.js.map +1 -0
  187. package/dist/features/F6Navigation.d.ts +19 -0
  188. package/dist/features/F6Navigation.js +151 -0
  189. package/dist/features/F6Navigation.js.map +1 -0
  190. package/dist/features/LegacyDateFormats.d.ts +18 -0
  191. package/dist/features/LegacyDateFormats.js +20 -0
  192. package/dist/features/LegacyDateFormats.js.map +1 -0
  193. package/dist/features/OpenUI5Element.d.ts +9 -0
  194. package/dist/features/OpenUI5Element.js +5 -0
  195. package/dist/features/OpenUI5Element.js.map +1 -0
  196. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  197. package/dist/features/OpenUI5Enablement.js +96 -0
  198. package/dist/features/OpenUI5Enablement.js.map +1 -0
  199. package/dist/features/OpenUI5Support.d.ts +36 -0
  200. package/dist/features/OpenUI5Support.js +152 -73
  201. package/dist/features/OpenUI5Support.js.map +1 -0
  202. package/dist/generated/AssetParameters.d.ts +6 -0
  203. package/dist/generated/AssetParameters.js +8 -0
  204. package/dist/generated/AssetParameters.js.map +1 -0
  205. package/dist/generated/VersionInfo.d.ts +10 -0
  206. package/dist/generated/VersionInfo.js +11 -0
  207. package/dist/generated/VersionInfo.js.map +1 -0
  208. package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
  209. package/dist/generated/css/BusyIndicator.css.js +7 -0
  210. package/dist/generated/css/BusyIndicator.css.js.map +1 -0
  211. package/dist/generated/css/FontFace.css.d.ts +3 -0
  212. package/dist/generated/css/FontFace.css.js +7 -0
  213. package/dist/generated/css/FontFace.css.js.map +1 -0
  214. package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
  215. package/dist/generated/css/OverrideFontFace.css.js +7 -0
  216. package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
  217. package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
  218. package/dist/generated/css/SystemCSSVars.css.js +7 -0
  219. package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
  220. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.d.ts +4 -0
  221. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +9 -0
  222. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js.map +1 -0
  223. package/dist/getSharedResource.d.ts +11 -0
  224. package/dist/getSharedResource.js +40 -0
  225. package/dist/getSharedResource.js.map +1 -0
  226. package/dist/global.d.ts +40 -0
  227. package/dist/i18nBundle.d.ts +43 -0
  228. package/dist/i18nBundle.js +74 -30
  229. package/dist/i18nBundle.js.map +1 -0
  230. package/dist/locale/Locale.d.ts +22 -0
  231. package/dist/locale/Locale.js +75 -87
  232. package/dist/locale/Locale.js.map +1 -0
  233. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  234. package/dist/locale/RTLAwareRegistry.js +9 -0
  235. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  236. package/dist/locale/applyDirection.d.ts +10 -0
  237. package/dist/locale/applyDirection.js +17 -0
  238. package/dist/locale/applyDirection.js.map +1 -0
  239. package/dist/locale/directionChange.d.ts +15 -0
  240. package/dist/locale/directionChange.js +24 -0
  241. package/dist/locale/directionChange.js.map +1 -0
  242. package/dist/locale/getEffectiveDir.d.ts +2 -0
  243. package/dist/locale/getEffectiveDir.js +24 -0
  244. package/dist/locale/getEffectiveDir.js.map +1 -0
  245. package/dist/locale/getLocale.d.ts +7 -0
  246. package/dist/locale/getLocale.js +28 -21
  247. package/dist/locale/getLocale.js.map +1 -0
  248. package/dist/locale/languageChange.d.ts +5 -0
  249. package/dist/locale/languageChange.js +14 -0
  250. package/dist/locale/languageChange.js.map +1 -0
  251. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  252. package/dist/locale/nextFallbackLocale.js +17 -19
  253. package/dist/locale/nextFallbackLocale.js.map +1 -0
  254. package/dist/locale/normalizeLocale.d.ts +7 -0
  255. package/dist/locale/normalizeLocale.js +36 -37
  256. package/dist/locale/normalizeLocale.js.map +1 -0
  257. package/dist/renderer/LitRenderer.d.ts +14 -0
  258. package/dist/renderer/LitRenderer.js +38 -12
  259. package/dist/renderer/LitRenderer.js.map +1 -0
  260. package/dist/renderer/directives/style-map.js +72 -0
  261. package/dist/renderer/executeTemplate.d.ts +13 -0
  262. package/dist/renderer/executeTemplate.js +30 -0
  263. package/dist/renderer/executeTemplate.js.map +1 -0
  264. package/dist/sap/base/Log.js +240 -0
  265. package/dist/sap/base/assert.js +7 -0
  266. package/dist/sap/base/security/URLListValidator.js +159 -0
  267. package/dist/sap/base/security/encodeCSS.js +14 -0
  268. package/dist/sap/base/security/encodeXML.js +23 -0
  269. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  270. package/dist/sap/base/strings/toHex.js +8 -0
  271. package/dist/sap/base/util/now.js +7 -0
  272. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3600 -0
  273. package/dist/theming/CustomStyle.d.ts +6 -0
  274. package/dist/theming/CustomStyle.js +46 -17
  275. package/dist/theming/CustomStyle.js.map +1 -0
  276. package/dist/theming/ThemeLoaded.d.ts +5 -0
  277. package/dist/theming/ThemeLoaded.js +14 -0
  278. package/dist/theming/ThemeLoaded.js.map +1 -0
  279. package/dist/theming/ThemeRegistered.d.ts +4 -0
  280. package/dist/theming/ThemeRegistered.js +11 -0
  281. package/dist/theming/ThemeRegistered.js.map +1 -0
  282. package/dist/theming/applyTheme.d.ts +2 -0
  283. package/dist/theming/applyTheme.js +74 -17
  284. package/dist/theming/applyTheme.js.map +1 -0
  285. package/dist/theming/getConstructableStyle.d.ts +9 -0
  286. package/dist/theming/getConstructableStyle.js +15 -15
  287. package/dist/theming/getConstructableStyle.js.map +1 -0
  288. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  289. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  290. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  291. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  292. package/dist/theming/getEffectiveStyle.js +30 -13
  293. package/dist/theming/getEffectiveStyle.js.map +1 -0
  294. package/dist/theming/getStylesString.d.ts +3 -0
  295. package/dist/theming/getStylesString.js +11 -0
  296. package/dist/theming/getStylesString.js.map +1 -0
  297. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  298. package/dist/theming/getThemeDesignerTheme.js +80 -0
  299. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  300. package/dist/theming/preloadLinks.d.ts +3 -0
  301. package/dist/theming/preloadLinks.js +19 -0
  302. package/dist/theming/preloadLinks.js.map +1 -0
  303. package/dist/thirdparty/_merge.d.ts +2 -0
  304. package/dist/thirdparty/_merge.js +7 -4
  305. package/dist/thirdparty/_merge.js.map +1 -0
  306. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  307. package/dist/thirdparty/isPlainObject.js +11 -10
  308. package/dist/thirdparty/isPlainObject.js.map +1 -0
  309. package/dist/thirdparty/merge.d.ts +2 -0
  310. package/dist/thirdparty/merge.js +4 -8
  311. package/dist/thirdparty/merge.js.map +1 -0
  312. package/dist/types/AnimationMode.d.ts +32 -0
  313. package/dist/types/AnimationMode.js +33 -6
  314. package/dist/types/AnimationMode.js.map +1 -0
  315. package/dist/types/CSSColor.d.ts +15 -0
  316. package/dist/types/CSSColor.js +18 -0
  317. package/dist/types/CSSColor.js.map +1 -0
  318. package/dist/types/CSSSize.d.ts +15 -0
  319. package/dist/types/CSSSize.js +14 -5
  320. package/dist/types/CSSSize.js.map +1 -0
  321. package/dist/types/CalendarType.d.ts +37 -0
  322. package/dist/types/CalendarType.js +35 -18
  323. package/dist/types/CalendarType.js.map +1 -0
  324. package/dist/types/DOMReference.d.ts +17 -0
  325. package/dist/types/DOMReference.js +25 -0
  326. package/dist/types/DOMReference.js.map +1 -0
  327. package/dist/types/DataType.d.ts +25 -0
  328. package/dist/types/DataType.js +33 -14
  329. package/dist/types/DataType.js.map +1 -0
  330. package/dist/types/Float.d.ts +17 -0
  331. package/dist/types/Float.js +21 -0
  332. package/dist/types/Float.js.map +1 -0
  333. package/dist/types/Integer.d.ts +17 -0
  334. package/dist/types/Integer.js +17 -5
  335. package/dist/types/Integer.js.map +1 -0
  336. package/dist/types/InvisibleMessageMode.d.ts +26 -0
  337. package/dist/types/InvisibleMessageMode.js +26 -0
  338. package/dist/types/InvisibleMessageMode.js.map +1 -0
  339. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  340. package/dist/types/ItemNavigationBehavior.js +22 -17
  341. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  342. package/dist/types/NavigationMode.d.ts +32 -0
  343. package/dist/types/NavigationMode.js +33 -5
  344. package/dist/types/NavigationMode.js.map +1 -0
  345. package/dist/types/ValueState.d.ts +42 -0
  346. package/dist/types/ValueState.js +41 -19
  347. package/dist/types/ValueState.js.map +1 -0
  348. package/dist/types.d.ts +18 -0
  349. package/dist/types.js +2 -0
  350. package/dist/types.js.map +1 -0
  351. package/dist/updateShadowRoot.d.ts +8 -0
  352. package/dist/updateShadowRoot.js +42 -0
  353. package/dist/updateShadowRoot.js.map +1 -0
  354. package/dist/util/AriaLabelHelper.d.ts +15 -0
  355. package/dist/util/AriaLabelHelper.js +171 -0
  356. package/dist/util/AriaLabelHelper.js.map +1 -0
  357. package/dist/util/Caret.d.ts +7 -0
  358. package/dist/util/Caret.js +23 -0
  359. package/dist/util/Caret.js.map +1 -0
  360. package/dist/util/ColorConversion.d.ts +30 -0
  361. package/dist/util/ColorConversion.js +342 -0
  362. package/dist/util/ColorConversion.js.map +1 -0
  363. package/dist/util/FetchHelper.d.ts +3 -0
  364. package/dist/util/FetchHelper.js +19 -25
  365. package/dist/util/FetchHelper.js.map +1 -0
  366. package/dist/util/FocusableElements.d.ts +4 -0
  367. package/dist/util/FocusableElements.js +68 -56
  368. package/dist/util/FocusableElements.js.map +1 -0
  369. package/dist/util/HTMLSanitizer.d.ts +3 -0
  370. package/dist/util/HTMLSanitizer.js +6 -0
  371. package/dist/util/HTMLSanitizer.js.map +1 -0
  372. package/dist/util/InvisibleMessage.d.ts +10 -0
  373. package/dist/util/InvisibleMessage.js +56 -0
  374. package/dist/util/InvisibleMessage.js.map +1 -0
  375. package/dist/util/PopupUtils.d.ts +7 -0
  376. package/dist/util/PopupUtils.js +74 -0
  377. package/dist/util/PopupUtils.js.map +1 -0
  378. package/dist/util/SlotsHelper.d.ts +9 -0
  379. package/dist/util/SlotsHelper.js +30 -0
  380. package/dist/util/SlotsHelper.js.map +1 -0
  381. package/dist/util/StringHelper.d.ts +3 -0
  382. package/dist/util/StringHelper.js +17 -20
  383. package/dist/util/StringHelper.js.map +1 -0
  384. package/dist/util/TabbableElements.d.ts +17 -0
  385. package/dist/util/TabbableElements.js +53 -39
  386. package/dist/util/TabbableElements.js.map +1 -0
  387. package/dist/util/arraysAreEqual.d.ts +2 -0
  388. package/dist/util/arraysAreEqual.js +13 -0
  389. package/dist/util/arraysAreEqual.js.map +1 -0
  390. package/dist/util/clamp.d.ts +9 -0
  391. package/dist/util/clamp.js +12 -0
  392. package/dist/util/clamp.js.map +1 -0
  393. package/dist/util/createLinkInHead.d.ts +7 -0
  394. package/dist/util/createLinkInHead.js +21 -0
  395. package/dist/util/createLinkInHead.js.map +1 -0
  396. package/dist/util/createStyleInHead.d.ts +8 -0
  397. package/dist/util/createStyleInHead.js +10 -10
  398. package/dist/util/createStyleInHead.js.map +1 -0
  399. package/dist/util/debounce.d.ts +2 -0
  400. package/dist/util/debounce.js +15 -0
  401. package/dist/util/debounce.js.map +1 -0
  402. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  403. package/dist/util/detectNavigatorLanguage.js +8 -9
  404. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  405. package/dist/util/escapeRegex.d.ts +8 -0
  406. package/dist/util/escapeRegex.js +11 -0
  407. package/dist/util/escapeRegex.js.map +1 -0
  408. package/dist/util/formatMessage.d.ts +2 -0
  409. package/dist/util/formatMessage.js +15 -19
  410. package/dist/util/formatMessage.js.map +1 -0
  411. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  412. package/dist/util/generateHighlightedMarkup.js +41 -0
  413. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  414. package/dist/util/getActiveElement.d.ts +2 -0
  415. package/dist/util/getActiveElement.js +9 -0
  416. package/dist/util/getActiveElement.js.map +1 -0
  417. package/dist/util/getClassCopy.d.ts +416 -0
  418. package/dist/util/getClassCopy.js +10 -0
  419. package/dist/util/getClassCopy.js.map +1 -0
  420. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  421. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  422. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  423. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  424. package/dist/util/getEffectiveContentDensity.js +4 -0
  425. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  426. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  427. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  428. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  429. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  430. package/dist/util/getFastNavigationGroups.js +51 -0
  431. package/dist/util/getFastNavigationGroups.js.map +1 -0
  432. package/dist/util/getFileExtension.d.ts +12 -0
  433. package/dist/util/getFileExtension.js +19 -0
  434. package/dist/util/getFileExtension.js.map +1 -0
  435. package/dist/util/getNormalizedTarget.d.ts +7 -0
  436. package/dist/util/getNormalizedTarget.js +14 -0
  437. package/dist/util/getNormalizedTarget.js.map +1 -0
  438. package/dist/util/getParentElement.d.ts +2 -0
  439. package/dist/util/getParentElement.js +5 -0
  440. package/dist/util/getParentElement.js.map +1 -0
  441. package/dist/util/getSingletonElementInstance.d.ts +11 -0
  442. package/dist/util/getSingletonElementInstance.js +19 -0
  443. package/dist/util/getSingletonElementInstance.js.map +1 -0
  444. package/dist/util/isElementClickable.d.ts +2 -0
  445. package/dist/util/isElementClickable.js +16 -0
  446. package/dist/util/isElementClickable.js.map +1 -0
  447. package/dist/util/isElementContainingBlock.d.ts +2 -0
  448. package/dist/util/isElementContainingBlock.js +11 -0
  449. package/dist/util/isElementContainingBlock.js.map +1 -0
  450. package/dist/util/isElementHidden.d.ts +2 -0
  451. package/dist/util/isElementHidden.js +8 -0
  452. package/dist/util/isElementHidden.js.map +1 -0
  453. package/dist/util/isElementInView.d.ts +6 -0
  454. package/dist/util/isElementInView.js +12 -0
  455. package/dist/util/isElementInView.js.map +1 -0
  456. package/dist/util/isElementTabbable.d.ts +9 -0
  457. package/dist/util/isElementTabbable.js +30 -0
  458. package/dist/util/isElementTabbable.js.map +1 -0
  459. package/dist/util/isValidPropertyName.d.ts +8 -0
  460. package/dist/util/isValidPropertyName.js +20 -12
  461. package/dist/util/isValidPropertyName.js.map +1 -0
  462. package/dist/util/whenDOMReady.d.ts +2 -0
  463. package/dist/util/whenDOMReady.js +11 -10
  464. package/dist/util/whenDOMReady.js.map +1 -0
  465. package/dist/util/willShowContent.d.ts +2 -0
  466. package/dist/util/willShowContent.js +7 -0
  467. package/dist/util/willShowContent.js.map +1 -0
  468. package/dist/validateThemeRoot.d.ts +2 -0
  469. package/dist/validateThemeRoot.js +48 -0
  470. package/dist/validateThemeRoot.js.map +1 -0
  471. package/index.js +228 -2
  472. package/lib/generate-asset-parameters/index.js +27 -0
  473. package/lib/generate-styles/index.js +31 -0
  474. package/lib/generate-version-info/index.js +32 -0
  475. package/package-scripts.cjs +70 -0
  476. package/package.json +25 -13
  477. package/src/css/BusyIndicator.css +80 -0
  478. package/src/css/FontFace.css +96 -0
  479. package/src/css/OverrideFontFace.css +32 -0
  480. package/src/css/SystemCSSVars.css +17 -0
  481. package/src/renderer/directives/style-map.js +72 -0
  482. package/tsconfig.json +17 -0
  483. package/used-modules.txt +10 -0
  484. package/bundle.es5.js +0 -28
  485. package/config/rollup.config.js +0 -1
  486. package/config/wdio.conf.js +0 -1
  487. package/dist/RenderScheduler.js +0 -165
  488. package/dist/SVGIconRegistry.js +0 -60
  489. package/dist/animations/config.js +0 -5
  490. package/dist/boot.js +0 -32
  491. package/dist/compatibility/DOMObserver.js +0 -62
  492. package/dist/compatibility/patchNodeValue.js +0 -24
  493. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  494. package/dist/delegate/CustomResize.js +0 -78
  495. package/dist/delegate/NativeResize.js +0 -44
  496. package/dist/features/browsersupport/Edge.js +0 -6
  497. package/dist/features/browsersupport/IE11.js +0 -41
  498. package/dist/renderer/ifDefined.js +0 -21
  499. package/dist/resources/bundle.es5.js +0 -212
  500. package/dist/resources/bundle.es5.js.map +0 -1
  501. package/dist/resources/bundle.esm.js +0 -123
  502. package/dist/resources/bundle.esm.js.map +0 -1
  503. package/dist/test-resources/assets/Themes.js +0 -13
  504. package/dist/test-resources/dev-helpers/ExternalThemePresent.js +0 -3
  505. package/dist/test-resources/elements/Child.js +0 -35
  506. package/dist/test-resources/elements/Generic.js +0 -84
  507. package/dist/test-resources/elements/GenericExt.js +0 -26
  508. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  509. package/dist/test-resources/elements/Parent.js +0 -37
  510. package/dist/test-resources/pages/AllTestElements.html +0 -40
  511. package/dist/test-resources/pages/Configuration.html +0 -20
  512. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  513. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  514. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  515. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  516. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  517. package/dist/test-resources/specs/Theming.spec.js +0 -31
  518. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  519. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  520. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  521. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  522. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  523. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  524. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  525. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  526. package/dist/theming/CSSVarsPonyfill.js +0 -25
  527. package/dist/theming/ExternalThemePresent.js +0 -12
  528. package/dist/theming/adaptCSSForIE.js +0 -90
  529. package/dist/theming/createComponentStyleTag.js +0 -32
  530. package/dist/theming/createThemePropertiesStyleTag.js +0 -27
  531. package/dist/thirdparty/Array.from.js +0 -16
  532. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  533. package/dist/thirdparty/Array.prototype.find.js +0 -46
  534. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  535. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  536. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  537. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  538. package/dist/thirdparty/Number.isInteger.js +0 -5
  539. package/dist/thirdparty/Number.isNaN.js +0 -1
  540. package/dist/thirdparty/Number.parseInt.js +0 -1
  541. package/dist/thirdparty/Object.assign.js +0 -31
  542. package/dist/thirdparty/Object.entries.js +0 -11
  543. package/dist/thirdparty/Symbol.js +0 -2
  544. package/dist/thirdparty/WeakSet.js +0 -27
  545. package/dist/thirdparty/es6-string-methods.js +0 -182
  546. package/dist/thirdparty/events-polyfills.js +0 -89
  547. package/dist/thirdparty/fetch.js +0 -1
  548. package/dist/thirdparty/template.js +0 -600
  549. package/dist/types/PopupState.js +0 -37
  550. package/dist/util/isDescendantOf.js +0 -15
  551. package/dist/util/isNodeClickable.js +0 -19
  552. package/dist/util/isNodeHidden.js +0 -13
  553. package/dist/util/isNodeTabbable.js +0 -28
  554. package/dist/webcomponentsjs/LICENSE.md +0 -19
  555. package/dist/webcomponentsjs/README.md +0 -229
  556. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  557. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  558. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  559. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  560. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  561. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  562. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  563. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  564. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  565. package/dist/webcomponentsjs/package.json +0 -46
  566. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  567. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  568. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  569. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  570. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  571. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  572. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  573. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  574. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  575. package/package-scripts.js +0 -41
  576. package/src/AssetRegistry.js +0 -9
  577. package/src/Device.js +0 -823
  578. package/src/EventProvider.js +0 -73
  579. package/src/FeaturesRegistry.js +0 -11
  580. package/src/FontFace.js +0 -73
  581. package/src/InitialConfiguration.js +0 -130
  582. package/src/Keys.js +0 -161
  583. package/src/RenderQueue.js +0 -42
  584. package/src/RenderScheduler.js +0 -165
  585. package/src/SVGIconRegistry.js +0 -60
  586. package/src/StaticArea.js +0 -41
  587. package/src/StaticAreaItem.js +0 -90
  588. package/src/Theming.js +0 -7
  589. package/src/UI5Element.js +0 -872
  590. package/src/UI5ElementMetadata.js +0 -173
  591. package/src/animations/AnimationQueue.js +0 -42
  592. package/src/animations/animate.js +0 -53
  593. package/src/animations/config.js +0 -5
  594. package/src/animations/scroll.js +0 -28
  595. package/src/animations/slideDown.js +0 -79
  596. package/src/animations/slideUp.js +0 -71
  597. package/src/asset-registries/Icons.js +0 -24
  598. package/src/asset-registries/LocaleData.js +0 -127
  599. package/src/asset-registries/Themes.js +0 -75
  600. package/src/asset-registries/i18n.js +0 -74
  601. package/src/boot.js +0 -32
  602. package/src/compatibility/DOMObserver.js +0 -62
  603. package/src/compatibility/patchNodeValue.js +0 -24
  604. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  605. package/src/config/AnimationMode.js +0 -13
  606. package/src/config/CalendarType.js +0 -18
  607. package/src/config/FormatSettings.js +0 -13
  608. package/src/config/Language.js +0 -12
  609. package/src/config/NoConflict.js +0 -51
  610. package/src/config/RTL.js +0 -31
  611. package/src/config/Theme.js +0 -28
  612. package/src/delegate/CustomResize.js +0 -78
  613. package/src/delegate/ItemNavigation.js +0 -278
  614. package/src/delegate/NativeResize.js +0 -44
  615. package/src/delegate/ResizeHandler.js +0 -66
  616. package/src/delegate/ScrollEnablement.js +0 -106
  617. package/src/features/OpenUI5Support.js +0 -76
  618. package/src/features/browsersupport/Edge.js +0 -6
  619. package/src/features/browsersupport/IE11.js +0 -41
  620. package/src/i18nBundle.js +0 -35
  621. package/src/locale/Locale.js +0 -91
  622. package/src/locale/getLocale.js +0 -31
  623. package/src/locale/nextFallbackLocale.js +0 -26
  624. package/src/locale/normalizeLocale.js +0 -48
  625. package/src/renderer/LitRenderer.js +0 -15
  626. package/src/renderer/ifDefined.js +0 -21
  627. package/src/theming/CSSVarsPonyfill.js +0 -25
  628. package/src/theming/CustomStyle.js +0 -19
  629. package/src/theming/ExternalThemePresent.js +0 -12
  630. package/src/theming/adaptCSSForIE.js +0 -90
  631. package/src/theming/applyTheme.js +0 -19
  632. package/src/theming/createComponentStyleTag.js +0 -32
  633. package/src/theming/createThemePropertiesStyleTag.js +0 -27
  634. package/src/theming/getConstructableStyle.js +0 -25
  635. package/src/theming/getEffectiveStyle.js +0 -15
  636. package/src/thirdparty/Array.from.js +0 -16
  637. package/src/thirdparty/Array.prototype.fill.js +0 -44
  638. package/src/thirdparty/Array.prototype.find.js +0 -46
  639. package/src/thirdparty/Array.prototype.includes.js +0 -51
  640. package/src/thirdparty/Element.prototype.closest.js +0 -11
  641. package/src/thirdparty/Element.prototype.matches.js +0 -6
  642. package/src/thirdparty/Map.prototype.keys.js +0 -9
  643. package/src/thirdparty/Number.isInteger.js +0 -5
  644. package/src/thirdparty/Number.isNaN.js +0 -1
  645. package/src/thirdparty/Number.parseInt.js +0 -1
  646. package/src/thirdparty/Object.assign.js +0 -31
  647. package/src/thirdparty/Object.entries.js +0 -11
  648. package/src/thirdparty/Symbol.js +0 -2
  649. package/src/thirdparty/WeakSet.js +0 -27
  650. package/src/thirdparty/_merge.js +0 -32
  651. package/src/thirdparty/es6-string-methods.js +0 -182
  652. package/src/thirdparty/events-polyfills.js +0 -89
  653. package/src/thirdparty/fetch.js +0 -1
  654. package/src/thirdparty/isPlainObject.js +0 -18
  655. package/src/thirdparty/merge.js +0 -10
  656. package/src/thirdparty/template.js +0 -600
  657. package/src/types/AnimationMode.js +0 -7
  658. package/src/types/CSSSize.js +0 -9
  659. package/src/types/CalendarType.js +0 -22
  660. package/src/types/DataType.js +0 -25
  661. package/src/types/Integer.js +0 -9
  662. package/src/types/ItemNavigationBehavior.js +0 -21
  663. package/src/types/NavigationMode.js +0 -6
  664. package/src/types/PopupState.js +0 -37
  665. package/src/types/ValueState.js +0 -22
  666. package/src/util/FetchHelper.js +0 -31
  667. package/src/util/FocusableElements.js +0 -60
  668. package/src/util/StringHelper.js +0 -26
  669. package/src/util/TabbableElements.js +0 -43
  670. package/src/util/createStyleInHead.js +0 -18
  671. package/src/util/detectNavigatorLanguage.js +0 -11
  672. package/src/util/formatMessage.js +0 -23
  673. package/src/util/getDesigntimePropertyAsArray.js +0 -4
  674. package/src/util/isDescendantOf.js +0 -15
  675. package/src/util/isNodeClickable.js +0 -19
  676. package/src/util/isNodeHidden.js +0 -13
  677. package/src/util/isNodeTabbable.js +0 -28
  678. package/src/util/isValidPropertyName.js +0 -20
  679. package/src/util/whenDOMReady.js +0 -13
  680. /package/{config/.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -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);
package/tsconfig.json ADDED
@@ -0,0 +1,17 @@
1
+ {
2
+ "include": ["src/**/*", "src/global.d.ts"],
3
+ "compilerOptions": {
4
+ "target": "ES2021",
5
+ // Generate d.ts files
6
+ "declaration": true,
7
+ "outDir": "dist",
8
+ "skipLibCheck": true,
9
+ "sourceMap": true,
10
+ "inlineSources": true,
11
+ "strict": true,
12
+ "moduleResolution": "node",
13
+ "composite": true,
14
+ "rootDir": "src",
15
+ "tsBuildInfoFile": "dist/.tsbuildinfo",
16
+ },
17
+ }
@@ -0,0 +1,10 @@
1
+ # Needed files from OpenUI5
2
+
3
+ sap/base/util/now.js
4
+ sap/base/Log.js
5
+ sap/base/assert.js
6
+ sap/base/security/URLListValidator.js
7
+ sap/base/security/sanitizeHTML.js
8
+ sap/base/strings/toHex.js
9
+ sap/base/security/encodeXML.js
10
+ sap/base/security/encodeCSS.js
package/bundle.es5.js DELETED
@@ -1,28 +0,0 @@
1
- // ES5 bundle targets IE11 only
2
- import "./dist/features/browsersupport/IE11.js";
3
-
4
- import "./bundle.esm.js";
5
-
6
- import { getAnimationMode } from "./dist/config/AnimationMode.js";
7
- import { getLanguage } from "./dist/config/Language.js";
8
- import { getCalendarType } from "./dist/config/CalendarType.js";
9
- import { getTheme, setTheme } from "./dist/config/Theme.js";
10
- import { getNoConflict, setNoConflict } from "./dist/config/NoConflict.js";
11
- import { getRTL } from "./dist/config/RTL.js";
12
- import { getFirstDayOfWeek } from "./dist/config/FormatSettings.js";
13
- import { getRegisteredNames as getIconNames } from "./dist/SVGIconRegistry.js"
14
- const configuration = {
15
- getAnimationMode,
16
- getLanguage,
17
- getTheme,
18
- setTheme,
19
- getNoConflict,
20
- setNoConflict,
21
- getCalendarType,
22
- getRTL,
23
- getFirstDayOfWeek,
24
- };
25
- export {
26
- configuration,
27
- getIconNames,
28
- };
@@ -1 +0,0 @@
1
- module.exports = require("@ui5/webcomponents-tools/components-package/rollup.js");
@@ -1 +0,0 @@
1
- module.exports = require("@ui5/webcomponents-tools/components-package/wdio.js");
@@ -1,165 +0,0 @@
1
- import RenderQueue from "./RenderQueue.js";
2
-
3
- const MAX_RERENDER_COUNT = 10;
4
-
5
- // Tells whether a render task is currently scheduled
6
- let renderTaskId;
7
-
8
- // Queue for invalidated web components
9
- const invalidatedWebComponents = new RenderQueue();
10
-
11
- let renderTaskPromise,
12
- renderTaskPromiseResolve,
13
- taskResult;
14
-
15
- let mutationObserverTimer;
16
-
17
- /**
18
- * Class that manages the rendering/re-rendering of web components
19
- * This is always asynchronous
20
- */
21
- class RenderScheduler {
22
- constructor() {
23
- throw new Error("Static class");
24
- }
25
-
26
- /**
27
- * Queues a web component for re-rendering
28
- * @param webComponent
29
- */
30
- static renderDeferred(webComponent) {
31
- // Enqueue the web component
32
- const res = invalidatedWebComponents.add(webComponent);
33
-
34
- // Schedule a rendering task
35
- RenderScheduler.scheduleRenderTask();
36
- return res;
37
- }
38
-
39
- static renderImmediately(webComponent) {
40
- // Enqueue the web component
41
- const res = invalidatedWebComponents.add(webComponent);
42
-
43
- // Immediately start a render task
44
- RenderScheduler.runRenderTask();
45
- return res;
46
- }
47
-
48
- /**
49
- * Schedules a rendering task, if not scheduled already
50
- */
51
- static scheduleRenderTask() {
52
- if (!renderTaskId) {
53
- // renderTaskId = window.setTimeout(RenderScheduler.renderWebComponents, 3000); // Task
54
- // renderTaskId = Promise.resolve().then(RenderScheduler.renderWebComponents); // Micro task
55
- renderTaskId = window.requestAnimationFrame(RenderScheduler.renderWebComponents); // AF
56
- }
57
- }
58
-
59
- static runRenderTask() {
60
- if (!renderTaskId) {
61
- renderTaskId = 1; // prevent another rendering task from being scheduled, all web components should use this task
62
- RenderScheduler.renderWebComponents();
63
- }
64
- }
65
-
66
- static renderWebComponents() {
67
- // console.log("------------- NEW RENDER TASK ---------------");
68
-
69
- let webComponentInfo,
70
- webComponent,
71
- promise;
72
- const renderStats = new Map();
73
- while (webComponentInfo = invalidatedWebComponents.shift()) { // eslint-disable-line
74
- webComponent = webComponentInfo.webComponent;
75
- promise = webComponentInfo.promise;
76
-
77
- const timesRerendered = renderStats.get(webComponent) || 0;
78
- if (timesRerendered > MAX_RERENDER_COUNT) {
79
- // console.warn("WARNING RERENDER", webComponent);
80
- throw new Error(`Web component re-rendered too many times this task, max allowed is: ${MAX_RERENDER_COUNT}`);
81
- }
82
- webComponent._render();
83
- promise._deferredResolve();
84
- renderStats.set(webComponent, timesRerendered + 1);
85
- }
86
-
87
- // wait for Mutation observer just in case
88
- if (!mutationObserverTimer) {
89
- mutationObserverTimer = setTimeout(() => {
90
- mutationObserverTimer = undefined;
91
- if (invalidatedWebComponents.getList().length === 0) {
92
- RenderScheduler._resolveTaskPromise();
93
- }
94
- }, 200);
95
- }
96
-
97
- renderTaskId = undefined;
98
- }
99
-
100
- /**
101
- * return a promise that will be resolved once all invalidated web components are rendered
102
- */
103
- static whenDOMUpdated() {
104
- if (renderTaskPromise) {
105
- return renderTaskPromise;
106
- }
107
-
108
- renderTaskPromise = new Promise(resolve => {
109
- renderTaskPromiseResolve = resolve;
110
- window.requestAnimationFrame(() => {
111
- if (invalidatedWebComponents.getList().length === 0) {
112
- renderTaskPromise = undefined;
113
- resolve();
114
- }
115
- });
116
- });
117
-
118
- return renderTaskPromise;
119
- }
120
-
121
- static getNotDefinedComponents() {
122
- return Array.from(document.querySelectorAll("*")).filter(el => el.localName.startsWith("ui5-") && !el.isUI5Element);
123
- }
124
-
125
- /**
126
- * return a promise that will be resolved once all ui5 webcomponents on the page have their shadow root ready
127
- */
128
- static async whenShadowDOMReady() {
129
- const undefinedElements = this.getNotDefinedComponents();
130
-
131
- const definedPromises = undefinedElements.map(
132
- el => customElements.whenDefined(el.localName)
133
- );
134
- const timeoutPromise = new Promise(resolve => setTimeout(resolve, 5000));
135
-
136
- await Promise.race([Promise.all(definedPromises), timeoutPromise]);
137
- const stillUndefined = this.getNotDefinedComponents();
138
- if (stillUndefined.length) {
139
- // eslint-disable-next-line
140
- console.warn("undefined elements after 5 seconds are: " + [...stillUndefined].map(el => el.localName).join(" ; "));
141
- }
142
-
143
- return Promise.resolve();
144
- }
145
-
146
- static async whenFinished() {
147
- await RenderScheduler.whenShadowDOMReady();
148
- await RenderScheduler.whenDOMUpdated();
149
- }
150
-
151
- static _resolveTaskPromise() {
152
- if (invalidatedWebComponents.getList().length > 0) {
153
- // More updates are pending. Resolve will be called again
154
- return;
155
- }
156
-
157
- if (renderTaskPromiseResolve) {
158
- renderTaskPromiseResolve.call(this, taskResult);
159
- renderTaskPromiseResolve = undefined;
160
- renderTaskPromise = undefined;
161
- }
162
- }
163
- }
164
-
165
- export default RenderScheduler;
@@ -1,60 +0,0 @@
1
- const registry = new Map();
2
- const iconCollectionPromises = new Map();
3
-
4
- const ICON_NOT_FOUND = "ICON_NOT_FOUND";
5
- const DEFAULT_COLLECTION = "SAP-icons";
6
-
7
- const calcKey = (name, collection) => {
8
- // silently support ui5-compatible URIs
9
- if (name.startsWith("sap-icon://")) {
10
- name = name.replace("sap-icon://", "");
11
- [name, collection] = name.split("/").reverse();
12
- }
13
- collection = collection || DEFAULT_COLLECTION;
14
- return `${collection}:${name}`;
15
- };
16
-
17
- const registerIcon = (name, { pathData, accData, collection } = {}) => {
18
- const key = calcKey(name, collection);
19
- registry.set(key, { pathData, accData });
20
- };
21
-
22
- const getIconDataSync = (name, collection = DEFAULT_COLLECTION) => {
23
- const key = calcKey(name, collection);
24
- return registry.get(key);
25
- };
26
-
27
- const getIconData = async (name, collection = DEFAULT_COLLECTION) => {
28
- const key = calcKey(name, collection);
29
-
30
- if (!iconCollectionPromises.has(collection)) {
31
- iconCollectionPromises.set(collection, Promise.resolve(ICON_NOT_FOUND));
32
- }
33
-
34
- const iconData = await iconCollectionPromises.get(collection);
35
-
36
- if (iconData === ICON_NOT_FOUND) {
37
- return iconData;
38
- }
39
-
40
- return registry.get(key);
41
- };
42
-
43
- const getRegisteredNames = async () => {
44
- if (iconCollectionPromises.has(DEFAULT_COLLECTION)) {
45
- await iconCollectionPromises.get(DEFAULT_COLLECTION);
46
- }
47
- return Array.from(registry.keys()).map(k => k.split(":")[1]);
48
- };
49
-
50
- const registerCollectionPromise = (collection, promise) => {
51
- iconCollectionPromises.set(collection, promise);
52
- };
53
-
54
- export {
55
- getIconData,
56
- getIconDataSync,
57
- registerIcon,
58
- getRegisteredNames,
59
- registerCollectionPromise,
60
- };
@@ -1,5 +0,0 @@
1
- export default {
2
- defaultDuration: 400,
3
- element: document.createElement("DIV"),
4
- identity: () => {},
5
- };
package/dist/boot.js DELETED
@@ -1,32 +0,0 @@
1
- import whenDOMReady from "./util/whenDOMReady.js";
2
- import insertFontFace from "./FontFace.js";
3
- import { getTheme } from "./config/Theme.js";
4
- import applyTheme from "./theming/applyTheme.js";
5
- import whenPolyfillLoaded from "./compatibility/whenPolyfillLoaded.js";
6
- import { getFeature } from "./FeaturesRegistry.js";
7
-
8
- let bootPromise;
9
- const OpenUI5Support = getFeature("OpenUI5Support");
10
-
11
- const boot = () => {
12
- if (bootPromise) {
13
- return bootPromise;
14
- }
15
-
16
- bootPromise = new Promise(async resolve => {
17
- if (OpenUI5Support) {
18
- await OpenUI5Support.init();
19
- }
20
-
21
- await whenDOMReady();
22
- await applyTheme(getTheme());
23
- OpenUI5Support && OpenUI5Support.attachListeners();
24
- insertFontFace();
25
- await whenPolyfillLoaded();
26
- resolve();
27
- });
28
-
29
- return bootPromise;
30
- };
31
-
32
- export default boot;
@@ -1,62 +0,0 @@
1
- // Shorthands
2
- const w = window;
3
-
4
- // Map of observer objects per dom node
5
- const observers = new WeakMap();
6
-
7
- /**
8
- * Implements universal DOM node observation methods.
9
- */
10
- class DOMObserver {
11
- constructor() {
12
- throw new Error("Static class");
13
- }
14
-
15
- /**
16
- * This function abstracts out mutation observer usage inside shadow DOM.
17
- * For native shadow DOM the native mutation observer is used.
18
- * When the polyfill is used, the observeChildren ShadyDOM method is used instead.
19
- *
20
- * @throws Exception
21
- * Note: does not allow several mutation observers per node. If there is a valid use-case, this behavior can be changed.
22
- *
23
- * @param node
24
- * @param callback
25
- * @param options - Only used for the native mutation observer
26
- */
27
- static observeDOMNode(node, callback, options) {
28
- let observerObject = observers.get(node);
29
- if (observerObject) {
30
- throw new Error("A mutation/ShadyDOM observer is already assigned to this node.");
31
- }
32
-
33
- if (w.ShadyDOM) {
34
- observerObject = w.ShadyDOM.observeChildren(node, callback);
35
- } else {
36
- observerObject = new MutationObserver(callback);
37
- observerObject.observe(node, options);
38
- }
39
-
40
- observers.set(node, observerObject);
41
- }
42
-
43
- /**
44
- * De-registers the mutation observer, depending on its type
45
- * @param node
46
- */
47
- static unobserveDOMNode(node) {
48
- const observerObject = observers.get(node);
49
- if (!observerObject) {
50
- return;
51
- }
52
-
53
- if (observerObject instanceof MutationObserver) {
54
- observerObject.disconnect();
55
- } else {
56
- w.ShadyDOM.unobserveChildren(observerObject);
57
- }
58
- observers.delete(node);
59
- }
60
- }
61
-
62
- export default DOMObserver;
@@ -1,24 +0,0 @@
1
- const patchNodeValue = () => {
2
- if (!window.ShadyDOM) {
3
- return;
4
- }
5
- const nativeNodeValue = Object.getOwnPropertyDescriptor(Node.prototype, "nodeValue");
6
- Object.defineProperty(Node.prototype, "nodeValue", {
7
- get() {
8
- return nativeNodeValue.get.apply(this);
9
- },
10
- set(text) {
11
- nativeNodeValue.set.apply(this, arguments); // eslint-disable-line
12
-
13
- // Call manually the mutation observer callback
14
- const parentElement = this.parentNode;
15
- if (parentElement instanceof HTMLElement && parentElement.isUI5Element) {
16
- parentElement._processChildren();
17
- }
18
- },
19
- });
20
- };
21
-
22
- patchNodeValue();
23
-
24
- export default {};
@@ -1,26 +0,0 @@
1
- let polyfillLoadedPromise;
2
-
3
- const whenPolyfillLoaded = () => {
4
- if (polyfillLoadedPromise) {
5
- return polyfillLoadedPromise;
6
- }
7
-
8
- polyfillLoadedPromise = new Promise(resolve => {
9
- if (window.WebComponents
10
- && !window.WebComponents.ready
11
- && window.WebComponents.waitFor) {
12
- // the polyfill loader is present
13
- window.WebComponents.waitFor(() => {
14
- // the polyfills are loaded, safe to execute code depending on their APIs
15
- resolve();
16
- });
17
- } else {
18
- // polyfill loader missing, modern browsers only
19
- resolve();
20
- }
21
- });
22
-
23
- return polyfillLoadedPromise;
24
- };
25
-
26
- export default whenPolyfillLoaded;
@@ -1,78 +0,0 @@
1
- const INTERVAL = 300;
2
-
3
- class CustomResize {
4
- static initialize() {
5
- CustomResize.initialized = false;
6
- CustomResize.resizeInterval = undefined;
7
- CustomResize.resizeListeners = new Map();
8
- }
9
-
10
- static attachListener(ref, callback) {
11
- const observedObject = CustomResize.resizeListeners.get(ref);
12
- const existingCallbacks = observedObject ? observedObject.callbacks : [];
13
-
14
- CustomResize.resizeListeners.set(ref, {
15
- width: ref ? ref.offsetWidth : 0,
16
- height: ref ? ref.offsetHeight : 0,
17
- callbacks: existingCallbacks.concat(callback),
18
- });
19
-
20
- CustomResize.initListener();
21
- }
22
-
23
- static initListener() {
24
- if (CustomResize.resizeListeners.size > 0 && !CustomResize.initialized) {
25
- CustomResize.resizeInterval = setInterval(CustomResize.checkListeners.bind(CustomResize), INTERVAL);
26
- }
27
- }
28
-
29
- static checkListeners() {
30
- CustomResize.resizeListeners.forEach((entry, ref) => {
31
- const changed = CustomResize.checkSizes(entry, ref);
32
-
33
- if (changed || (entry && !entry._hasBeenRendered)) {
34
- CustomResize.updateSizes(entry, ref.offsetWidth, ref.offsetHeight);
35
- entry.callbacks.forEach(el => el());
36
- entry._hasBeenRendered = true;
37
- }
38
- });
39
- }
40
-
41
- static updateSizes(sizes, newWidth, newHeight) {
42
- sizes.width = newWidth;
43
- sizes.height = newHeight;
44
- }
45
-
46
- static checkSizes(entry, ref) {
47
- const oldHeight = entry.height;
48
- const oldWidth = entry.width;
49
- const newHeight = ref.offsetHeight;
50
- const newWidth = ref.offsetWidth;
51
-
52
- return ((oldHeight !== newHeight) || oldWidth !== newWidth);
53
- }
54
-
55
- static detachListener(ref, callback) {
56
- const listenerObject = CustomResize.resizeListeners.get(ref);
57
- const callbacks = listenerObject ? listenerObject.callbacks : [];
58
- const filteredCallbacks = callbacks.filter(fn => fn !== callback);
59
-
60
- if (!listenerObject || (callbacks.length === filteredCallbacks.length && callbacks.length !== 0)) {
61
- return;
62
- }
63
-
64
- CustomResize.resizeListeners.set(ref, Object.assign(listenerObject, { callbacks: filteredCallbacks }));
65
-
66
- if (!filteredCallbacks.length) {
67
- listenerObject.callbacks = null;
68
- CustomResize.resizeListeners.delete(ref);
69
- }
70
-
71
- if (CustomResize.resizeListeners.size === 0) {
72
- CustomResize.initialized = false;
73
- clearInterval(CustomResize.resizeInterval);
74
- }
75
- }
76
- }
77
-
78
- export default CustomResize;
@@ -1,44 +0,0 @@
1
- class NativeResize {
2
- static initialize() {
3
- NativeResize.resizeObserver = new window.ResizeObserver(entries => {
4
- // call attached callbacks
5
- entries.forEach(entry => {
6
- const callbacks = NativeResize.observedObjects.get(entry.target);
7
-
8
- callbacks.forEach(el => el());
9
- });
10
- });
11
-
12
- NativeResize.observedObjects = new Map();
13
- }
14
-
15
- static attachListener(ref, callback) {
16
- const observedDOMs = NativeResize.observedObjects;
17
- const callbacks = observedDOMs.get(ref) || [];
18
-
19
- // if no callbacks has been added for this ref - start observing it
20
- if (!callbacks.length) {
21
- NativeResize.resizeObserver.observe(ref);
22
- }
23
-
24
- // save the callbacks in an array
25
- observedDOMs.set(ref, [...callbacks, callback]);
26
- }
27
-
28
- static detachListener(ref, callback) {
29
- const callbacks = NativeResize.observedObjects.get(ref) || [];
30
- const filteredCallbacks = callbacks.filter(fn => fn !== callback);
31
-
32
- if (!callbacks.length || (callbacks.length === filteredCallbacks.length && callbacks.length !== 0)) {
33
- return;
34
- }
35
-
36
- NativeResize.observedObjects.set(ref, filteredCallbacks);
37
-
38
- if (!filteredCallbacks.length) {
39
- NativeResize.resizeObserver.unobserve(ref);
40
- }
41
- }
42
- }
43
-
44
- export default NativeResize;
@@ -1,6 +0,0 @@
1
- // URLSearchParams
2
- import "url-search-params-polyfill/index.js";
3
-
4
-
5
- // "pseudo mutation observer" fix for nodeValue
6
- import "../../compatibility/patchNodeValue.js";
@@ -1,41 +0,0 @@
1
- // CSS Custom Properties
2
- import cssVars from "css-vars-ponyfill/dist/css-vars-ponyfill.esm.js";
3
-
4
- // String
5
- import "../../thirdparty/es6-string-methods.js";
6
-
7
- // Object
8
- import "../../thirdparty/Object.entries.js";
9
-
10
- // Array
11
- import "../../thirdparty/Array.prototype.fill.js";
12
- import "../../thirdparty/Array.prototype.find.js";
13
- import "../../thirdparty/Array.prototype.includes.js";
14
-
15
- // Map
16
- import "../../thirdparty/Map.prototype.keys.js";
17
-
18
- // Number
19
- import "../../thirdparty/Number.isInteger.js";
20
- import "../../thirdparty/Number.isNaN.js";
21
- import "../../thirdparty/Number.parseInt.js";
22
-
23
- // Element
24
- import "../../thirdparty/Element.prototype.matches.js";
25
- import "../../thirdparty/Element.prototype.closest.js";
26
-
27
- // WeakSet
28
- import "../../thirdparty/WeakSet.js";
29
-
30
- // fetch
31
- import "../../thirdparty/fetch.js";
32
-
33
- // async - await
34
- import "regenerator-runtime/runtime.js";
35
-
36
- // Plus all polyfills needed for Edge are also needed for IE11
37
- import "./Edge.js";
38
-
39
- window.CSSVarsPonyfill = {
40
- cssVars,
41
- };