@ui5/webcomponents-base 0.0.0-e463d2345 → 0.0.0-e55c2cec6

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 (851) hide show
  1. package/.eslintignore +5 -0
  2. package/CHANGELOG.md +512 -0
  3. package/README.md +53 -7
  4. package/bundle.esm.js +29 -21
  5. package/dist/AssetRegistry.d.ts +5 -0
  6. package/dist/AssetRegistry.js +6 -9
  7. package/dist/AssetRegistry.js.map +1 -0
  8. package/dist/Boot.d.ts +8 -0
  9. package/dist/Boot.js +44 -0
  10. package/dist/Boot.js.map +1 -0
  11. package/dist/CSP.d.ts +30 -0
  12. package/dist/CSP.js +51 -0
  13. package/dist/CSP.js.map +1 -0
  14. package/dist/CustomElementsRegistry.d.ts +5 -0
  15. package/dist/CustomElementsRegistry.js +78 -0
  16. package/dist/CustomElementsRegistry.js.map +1 -0
  17. package/dist/CustomElementsScope.d.ts +7 -0
  18. package/dist/CustomElementsScope.js +11 -0
  19. package/dist/CustomElementsScope.js.map +1 -0
  20. package/dist/CustomElementsScopeUtils.d.ts +55 -0
  21. package/dist/CustomElementsScopeUtils.js +90 -0
  22. package/dist/CustomElementsScopeUtils.js.map +1 -0
  23. package/dist/DOMObserver.d.ts +11 -0
  24. package/dist/DOMObserver.js +23 -0
  25. package/dist/DOMObserver.js.map +1 -0
  26. package/dist/Device.d.ts +12 -0
  27. package/dist/Device.js +84 -816
  28. package/dist/Device.js.map +1 -0
  29. package/dist/EventProvider.d.ts +25 -0
  30. package/dist/EventProvider.js +67 -70
  31. package/dist/EventProvider.js.map +1 -0
  32. package/dist/FeaturesRegistry.d.ts +3 -0
  33. package/dist/FeaturesRegistry.js +5 -7
  34. package/dist/FeaturesRegistry.js.map +1 -0
  35. package/dist/FontFace.d.ts +2 -0
  36. package/dist/FontFace.js +22 -63
  37. package/dist/FontFace.js.map +1 -0
  38. package/dist/InitialConfiguration.d.ts +22 -0
  39. package/dist/InitialConfiguration.js +124 -96
  40. package/dist/InitialConfiguration.js.map +1 -0
  41. package/dist/Keys.d.ts +57 -0
  42. package/dist/Keys.js +178 -0
  43. package/dist/Keys.js.map +1 -0
  44. package/dist/ManagedStyles.d.ts +8 -0
  45. package/dist/ManagedStyles.js +77 -0
  46. package/dist/ManagedStyles.js.map +1 -0
  47. package/dist/MarkedEvents.d.ts +9 -0
  48. package/dist/MarkedEvents.js +15 -0
  49. package/dist/MarkedEvents.js.map +1 -0
  50. package/dist/MediaRange.d.ts +37 -0
  51. package/dist/MediaRange.js +98 -0
  52. package/dist/MediaRange.js.map +1 -0
  53. package/dist/PropertiesFileFormat.d.ts +8 -0
  54. package/dist/PropertiesFileFormat.js +85 -0
  55. package/dist/PropertiesFileFormat.js.map +1 -0
  56. package/dist/Render.d.ts +47 -0
  57. package/dist/Render.js +143 -0
  58. package/dist/Render.js.map +1 -0
  59. package/dist/RenderQueue.d.ts +19 -0
  60. package/dist/RenderQueue.js +53 -39
  61. package/dist/RenderQueue.js.map +1 -0
  62. package/dist/Runtimes.d.ts +27 -0
  63. package/dist/Runtimes.js +86 -0
  64. package/dist/Runtimes.js.map +1 -0
  65. package/dist/StaticArea.d.ts +0 -0
  66. package/dist/StaticArea.js +5 -34
  67. package/dist/StaticArea.js.map +1 -0
  68. package/dist/StaticAreaItem.d.ts +36 -0
  69. package/dist/StaticAreaItem.js +92 -60
  70. package/dist/StaticAreaItem.js.map +1 -0
  71. package/dist/SystemCSSVars.d.ts +2 -0
  72. package/dist/SystemCSSVars.js +9 -0
  73. package/dist/SystemCSSVars.js.map +1 -0
  74. package/dist/Theming.d.ts +3 -0
  75. package/dist/Theming.js +4 -45
  76. package/dist/Theming.js.map +1 -0
  77. package/dist/UI5Element.d.ts +373 -0
  78. package/dist/UI5Element.js +950 -825
  79. package/dist/UI5Element.js.map +1 -0
  80. package/dist/UI5ElementMetadata.d.ts +150 -0
  81. package/dist/UI5ElementMetadata.js +278 -135
  82. package/dist/UI5ElementMetadata.js.map +1 -0
  83. package/dist/animations/AnimationQueue.d.ts +8 -0
  84. package/dist/animations/AnimationQueue.js +31 -38
  85. package/dist/animations/AnimationQueue.js.map +1 -0
  86. package/dist/animations/animate.d.ts +14 -0
  87. package/dist/animations/animate.js +46 -51
  88. package/dist/animations/animate.js.map +1 -0
  89. package/dist/animations/scroll.d.ts +5 -0
  90. package/dist/animations/scroll.js +18 -27
  91. package/dist/animations/scroll.js.map +1 -0
  92. package/dist/animations/slideDown.d.ts +5 -0
  93. package/dist/animations/slideDown.js +53 -78
  94. package/dist/animations/slideDown.js.map +1 -0
  95. package/dist/animations/slideUp.d.ts +5 -0
  96. package/dist/animations/slideUp.js +49 -70
  97. package/dist/animations/slideUp.js.map +1 -0
  98. package/dist/api.json +1 -0
  99. package/dist/asset-registries/Icons.d.ts +30 -0
  100. package/dist/asset-registries/Icons.js +104 -24
  101. package/dist/asset-registries/Icons.js.map +1 -0
  102. package/dist/asset-registries/Illustrations.d.ts +17 -0
  103. package/dist/asset-registries/Illustrations.js +46 -0
  104. package/dist/asset-registries/Illustrations.js.map +1 -0
  105. package/dist/asset-registries/LocaleData.d.ts +7 -0
  106. package/dist/asset-registries/LocaleData.js +127 -92
  107. package/dist/asset-registries/LocaleData.js.map +1 -0
  108. package/dist/asset-registries/Themes.d.ts +10 -0
  109. package/dist/asset-registries/Themes.js +40 -65
  110. package/dist/asset-registries/Themes.js.map +1 -0
  111. package/dist/asset-registries/i18n.d.ts +23 -0
  112. package/dist/asset-registries/i18n.js +78 -58
  113. package/dist/asset-registries/i18n.js.map +1 -0
  114. package/dist/assets/bundle.esm.ffad994a.js +56 -0
  115. package/dist/assets-meta/IconCollectionsAlias.d.ts +17 -0
  116. package/dist/assets-meta/IconCollectionsAlias.js +18 -0
  117. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
  118. package/dist/config/AnimationMode.d.ts +14 -0
  119. package/dist/config/AnimationMode.js +23 -6
  120. package/dist/config/AnimationMode.js.map +1 -0
  121. package/dist/config/CalendarType.d.ts +8 -0
  122. package/dist/config/CalendarType.js +15 -14
  123. package/dist/config/CalendarType.js.map +1 -0
  124. package/dist/config/FormatSettings.d.ts +11 -0
  125. package/dist/config/FormatSettings.js +11 -5
  126. package/dist/config/FormatSettings.js.map +1 -0
  127. package/dist/config/Icons.d.ts +30 -0
  128. package/dist/config/Icons.js +48 -0
  129. package/dist/config/Icons.js.map +1 -0
  130. package/dist/config/Language.d.ts +31 -0
  131. package/dist/config/Language.js +54 -7
  132. package/dist/config/Language.js.map +1 -0
  133. package/dist/config/NoConflict.d.ts +20 -0
  134. package/dist/config/NoConflict.js +40 -34
  135. package/dist/config/NoConflict.js.map +1 -0
  136. package/dist/config/RTL.d.ts +7 -0
  137. package/dist/config/RTL.js +23 -20
  138. package/dist/config/RTL.js.map +1 -0
  139. package/dist/config/Theme.d.ts +28 -0
  140. package/dist/config/Theme.js +46 -19
  141. package/dist/config/Theme.js.map +1 -0
  142. package/dist/config/ThemeRoots.d.ts +4 -0
  143. package/dist/config/ThemeRoots.js +28 -0
  144. package/dist/config/ThemeRoots.js.map +1 -0
  145. package/dist/css/BusyIndicator.css +80 -0
  146. package/dist/css/FontFace.css +66 -0
  147. package/dist/css/OverrideFontFace.css +32 -0
  148. package/dist/css/SystemCSSVars.css +17 -0
  149. package/dist/decorators/customElement.d.ts +8 -0
  150. package/dist/decorators/customElement.js +16 -0
  151. package/dist/decorators/customElement.js.map +1 -0
  152. package/dist/decorators/event.d.ts +10 -0
  153. package/dist/decorators/event.js +24 -0
  154. package/dist/decorators/event.js.map +1 -0
  155. package/dist/decorators/fastNavigation.d.ts +7 -0
  156. package/dist/decorators/fastNavigation.js +13 -0
  157. package/dist/decorators/fastNavigation.js.map +1 -0
  158. package/dist/decorators/languageAware.d.ts +7 -0
  159. package/dist/decorators/languageAware.js +13 -0
  160. package/dist/decorators/languageAware.js.map +1 -0
  161. package/dist/decorators/property.d.ts +9 -0
  162. package/dist/decorators/property.js +24 -0
  163. package/dist/decorators/property.js.map +1 -0
  164. package/dist/decorators/slot.d.ts +9 -0
  165. package/dist/decorators/slot.js +37 -0
  166. package/dist/decorators/slot.js.map +1 -0
  167. package/dist/decorators/themeAware.d.ts +7 -0
  168. package/dist/decorators/themeAware.js +13 -0
  169. package/dist/decorators/themeAware.js.map +1 -0
  170. package/dist/delegate/ItemNavigation.d.ts +113 -0
  171. package/dist/delegate/ItemNavigation.js +312 -230
  172. package/dist/delegate/ItemNavigation.js.map +1 -0
  173. package/dist/delegate/ResizeHandler.d.ts +24 -0
  174. package/dist/delegate/ResizeHandler.js +80 -63
  175. package/dist/delegate/ResizeHandler.js.map +1 -0
  176. package/dist/delegate/ScrollEnablement.d.ts +48 -0
  177. package/dist/delegate/ScrollEnablement.js +159 -74
  178. package/dist/delegate/ScrollEnablement.js.map +1 -0
  179. package/dist/features/F6Navigation.d.ts +16 -0
  180. package/dist/features/F6Navigation.js +112 -0
  181. package/dist/features/F6Navigation.js.map +1 -0
  182. package/dist/features/OpenUI5Element.d.ts +9 -0
  183. package/dist/features/OpenUI5Element.js +5 -0
  184. package/dist/features/OpenUI5Element.js.map +1 -0
  185. package/dist/features/OpenUI5Enablement.d.ts +11 -0
  186. package/dist/features/OpenUI5Enablement.js +96 -0
  187. package/dist/features/OpenUI5Enablement.js.map +1 -0
  188. package/dist/features/OpenUI5Support.d.ts +23 -0
  189. package/dist/features/OpenUI5Support.js +97 -0
  190. package/dist/features/OpenUI5Support.js.map +1 -0
  191. package/dist/generated/AssetParameters.js +13 -0
  192. package/dist/generated/VersionInfo.js +10 -0
  193. package/dist/generated/css/BusyIndicator.css.js +5 -0
  194. package/dist/generated/css/FontFace.css.js +5 -0
  195. package/dist/generated/css/OverrideFontFace.css.js +5 -0
  196. package/dist/generated/css/SystemCSSVars.css.js +5 -0
  197. package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +11 -0
  198. package/dist/getSharedResource.d.ts +11 -0
  199. package/dist/getSharedResource.js +26 -0
  200. package/dist/getSharedResource.js.map +1 -0
  201. package/dist/i18nBundle.d.ts +43 -0
  202. package/dist/i18nBundle.js +73 -30
  203. package/dist/i18nBundle.js.map +1 -0
  204. package/dist/locale/Locale.d.ts +22 -0
  205. package/dist/locale/Locale.js +79 -0
  206. package/dist/locale/Locale.js.map +1 -0
  207. package/dist/locale/RTLAwareRegistry.d.ts +4 -0
  208. package/dist/locale/RTLAwareRegistry.js +9 -0
  209. package/dist/locale/RTLAwareRegistry.js.map +1 -0
  210. package/dist/locale/applyDirection.d.ts +10 -0
  211. package/dist/locale/applyDirection.js +17 -0
  212. package/dist/locale/applyDirection.js.map +1 -0
  213. package/dist/locale/directionChange.d.ts +15 -0
  214. package/dist/locale/directionChange.js +24 -0
  215. package/dist/locale/directionChange.js.map +1 -0
  216. package/dist/locale/getEffectiveDir.d.ts +2 -0
  217. package/dist/locale/getEffectiveDir.js +24 -0
  218. package/dist/locale/getEffectiveDir.js.map +1 -0
  219. package/dist/locale/getLocale.d.ts +7 -0
  220. package/dist/locale/getLocale.js +38 -0
  221. package/dist/locale/getLocale.js.map +1 -0
  222. package/dist/locale/languageChange.d.ts +5 -0
  223. package/dist/locale/languageChange.js +14 -0
  224. package/dist/locale/languageChange.js.map +1 -0
  225. package/dist/locale/nextFallbackLocale.d.ts +8 -0
  226. package/dist/locale/nextFallbackLocale.js +24 -0
  227. package/dist/locale/nextFallbackLocale.js.map +1 -0
  228. package/dist/locale/normalizeLocale.d.ts +7 -0
  229. package/dist/locale/normalizeLocale.js +47 -0
  230. package/dist/locale/normalizeLocale.js.map +1 -0
  231. package/dist/renderer/LitRenderer.d.ts +14 -0
  232. package/dist/renderer/LitRenderer.js +38 -12
  233. package/dist/renderer/LitRenderer.js.map +1 -0
  234. package/dist/renderer/directives/style-map.js +72 -0
  235. package/dist/renderer/executeTemplate.d.ts +13 -0
  236. package/dist/renderer/executeTemplate.js +30 -0
  237. package/dist/renderer/executeTemplate.js.map +1 -0
  238. package/dist/sap/base/Log.js +240 -0
  239. package/dist/sap/base/assert.js +7 -0
  240. package/dist/sap/base/security/URLListValidator.js +159 -0
  241. package/dist/sap/base/security/encodeCSS.js +14 -0
  242. package/dist/sap/base/security/encodeXML.js +23 -0
  243. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  244. package/dist/sap/base/strings/toHex.js +8 -0
  245. package/dist/sap/base/util/now.js +7 -0
  246. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  247. package/dist/theming/CustomStyle.d.ts +6 -0
  248. package/dist/theming/CustomStyle.js +44 -17
  249. package/dist/theming/CustomStyle.js.map +1 -0
  250. package/dist/theming/ThemeLoaded.d.ts +5 -0
  251. package/dist/theming/ThemeLoaded.js +14 -0
  252. package/dist/theming/ThemeLoaded.js.map +1 -0
  253. package/dist/theming/applyTheme.d.ts +2 -0
  254. package/dist/theming/applyTheme.js +75 -0
  255. package/dist/theming/applyTheme.js.map +1 -0
  256. package/dist/theming/getConstructableStyle.d.ts +9 -0
  257. package/dist/theming/getConstructableStyle.js +25 -0
  258. package/dist/theming/getConstructableStyle.js.map +1 -0
  259. package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
  260. package/dist/theming/getEffectiveLinksHrefs.js +17 -0
  261. package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
  262. package/dist/theming/getEffectiveStyle.d.ts +3 -0
  263. package/dist/theming/getEffectiveStyle.js +32 -0
  264. package/dist/theming/getEffectiveStyle.js.map +1 -0
  265. package/dist/theming/getStylesString.d.ts +3 -0
  266. package/dist/theming/getStylesString.js +11 -0
  267. package/dist/theming/getStylesString.js.map +1 -0
  268. package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
  269. package/dist/theming/getThemeDesignerTheme.js +80 -0
  270. package/dist/theming/getThemeDesignerTheme.js.map +1 -0
  271. package/dist/theming/preloadLinks.d.ts +3 -0
  272. package/dist/theming/preloadLinks.js +19 -0
  273. package/dist/theming/preloadLinks.js.map +1 -0
  274. package/dist/thirdparty/_merge.d.ts +2 -0
  275. package/dist/thirdparty/_merge.js +35 -0
  276. package/dist/thirdparty/_merge.js.map +1 -0
  277. package/dist/thirdparty/isPlainObject.d.ts +2 -0
  278. package/dist/thirdparty/isPlainObject.js +19 -0
  279. package/dist/thirdparty/isPlainObject.js.map +1 -0
  280. package/dist/thirdparty/merge.d.ts +2 -0
  281. package/dist/thirdparty/merge.js +6 -0
  282. package/dist/thirdparty/merge.js.map +1 -0
  283. package/dist/types/AnimationMode.d.ts +32 -0
  284. package/dist/types/AnimationMode.js +33 -6
  285. package/dist/types/AnimationMode.js.map +1 -0
  286. package/dist/types/CSSColor.d.ts +16 -0
  287. package/dist/types/CSSColor.js +19 -0
  288. package/dist/types/CSSColor.js.map +1 -0
  289. package/dist/types/CalendarType.d.ts +37 -0
  290. package/dist/types/CalendarType.js +39 -0
  291. package/dist/types/CalendarType.js.map +1 -0
  292. package/dist/types/DOMReference.d.ts +17 -0
  293. package/dist/types/DOMReference.js +25 -0
  294. package/dist/types/DOMReference.js.map +1 -0
  295. package/dist/types/DataType.d.ts +25 -0
  296. package/dist/types/DataType.js +33 -14
  297. package/dist/types/DataType.js.map +1 -0
  298. package/dist/types/Float.d.ts +18 -0
  299. package/dist/types/Float.js +22 -0
  300. package/dist/types/Float.js.map +1 -0
  301. package/dist/types/Integer.d.ts +18 -0
  302. package/dist/types/Integer.js +18 -5
  303. package/dist/types/Integer.js.map +1 -0
  304. package/dist/types/InvisibleMessageMode.d.ts +25 -0
  305. package/dist/types/InvisibleMessageMode.js +27 -0
  306. package/dist/types/InvisibleMessageMode.js.map +1 -0
  307. package/dist/types/ItemNavigationBehavior.d.ts +24 -0
  308. package/dist/types/ItemNavigationBehavior.js +22 -17
  309. package/dist/types/ItemNavigationBehavior.js.map +1 -0
  310. package/dist/types/NavigationMode.d.ts +32 -0
  311. package/dist/types/NavigationMode.js +33 -5
  312. package/dist/types/NavigationMode.js.map +1 -0
  313. package/dist/types/ValueState.d.ts +42 -0
  314. package/dist/types/ValueState.js +41 -18
  315. package/dist/types/ValueState.js.map +1 -0
  316. package/dist/types.d.ts +18 -0
  317. package/dist/types.js +2 -0
  318. package/dist/types.js.map +1 -0
  319. package/dist/updateShadowRoot.d.ts +8 -0
  320. package/dist/updateShadowRoot.js +34 -0
  321. package/dist/updateShadowRoot.js.map +1 -0
  322. package/dist/util/AriaLabelHelper.d.ts +6 -0
  323. package/dist/util/AriaLabelHelper.js +44 -0
  324. package/dist/util/AriaLabelHelper.js.map +1 -0
  325. package/dist/util/Caret.d.ts +7 -0
  326. package/dist/util/Caret.js +23 -0
  327. package/dist/util/Caret.js.map +1 -0
  328. package/dist/util/ColorConversion.d.ts +30 -0
  329. package/dist/util/ColorConversion.js +337 -0
  330. package/dist/util/ColorConversion.js.map +1 -0
  331. package/dist/util/FetchHelper.d.ts +3 -0
  332. package/dist/util/FetchHelper.js +19 -25
  333. package/dist/util/FetchHelper.js.map +1 -0
  334. package/dist/util/FocusableElements.d.ts +4 -0
  335. package/dist/util/FocusableElements.js +58 -56
  336. package/dist/util/FocusableElements.js.map +1 -0
  337. package/dist/util/HTMLSanitizer.d.ts +3 -0
  338. package/dist/util/HTMLSanitizer.js +6 -0
  339. package/dist/util/HTMLSanitizer.js.map +1 -0
  340. package/dist/util/InvisibleMessage.d.ts +10 -0
  341. package/dist/util/InvisibleMessage.js +56 -0
  342. package/dist/util/InvisibleMessage.js.map +1 -0
  343. package/dist/util/PopupUtils.d.ts +7 -0
  344. package/dist/util/PopupUtils.js +74 -0
  345. package/dist/util/PopupUtils.js.map +1 -0
  346. package/dist/util/SlotsHelper.d.ts +9 -0
  347. package/dist/util/SlotsHelper.js +30 -0
  348. package/dist/util/SlotsHelper.js.map +1 -0
  349. package/dist/util/StringHelper.d.ts +3 -0
  350. package/dist/util/StringHelper.js +21 -9
  351. package/dist/util/StringHelper.js.map +1 -0
  352. package/dist/util/TabbableElements.d.ts +17 -0
  353. package/dist/util/TabbableElements.js +53 -40
  354. package/dist/util/TabbableElements.js.map +1 -0
  355. package/dist/util/arraysAreEqual.d.ts +2 -0
  356. package/dist/util/arraysAreEqual.js +13 -0
  357. package/dist/util/arraysAreEqual.js.map +1 -0
  358. package/dist/util/clamp.d.ts +9 -0
  359. package/dist/util/clamp.js +12 -0
  360. package/dist/util/clamp.js.map +1 -0
  361. package/dist/util/createLinkInHead.d.ts +7 -0
  362. package/dist/util/createLinkInHead.js +21 -0
  363. package/dist/util/createLinkInHead.js.map +1 -0
  364. package/dist/util/createStyleInHead.d.ts +8 -0
  365. package/dist/util/createStyleInHead.js +10 -10
  366. package/dist/util/createStyleInHead.js.map +1 -0
  367. package/dist/util/debounce.d.ts +2 -0
  368. package/dist/util/debounce.js +15 -0
  369. package/dist/util/debounce.js.map +1 -0
  370. package/dist/util/detectNavigatorLanguage.d.ts +2 -0
  371. package/dist/util/detectNavigatorLanguage.js +8 -9
  372. package/dist/util/detectNavigatorLanguage.js.map +1 -0
  373. package/dist/util/escapeRegex.d.ts +8 -0
  374. package/dist/util/escapeRegex.js +11 -0
  375. package/dist/util/escapeRegex.js.map +1 -0
  376. package/dist/util/formatMessage.d.ts +2 -0
  377. package/dist/util/formatMessage.js +15 -19
  378. package/dist/util/formatMessage.js.map +1 -0
  379. package/dist/util/generateHighlightedMarkup.d.ts +9 -0
  380. package/dist/util/generateHighlightedMarkup.js +41 -0
  381. package/dist/util/generateHighlightedMarkup.js.map +1 -0
  382. package/dist/util/getActiveElement.d.ts +2 -0
  383. package/dist/util/getActiveElement.js +9 -0
  384. package/dist/util/getActiveElement.js.map +1 -0
  385. package/dist/util/getClassCopy.d.ts +400 -0
  386. package/dist/util/getClassCopy.js +10 -0
  387. package/dist/util/getClassCopy.js.map +1 -0
  388. package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
  389. package/dist/util/getDesigntimePropertyAsArray.js +4 -3
  390. package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
  391. package/dist/util/getEffectiveContentDensity.d.ts +2 -0
  392. package/dist/util/getEffectiveContentDensity.js +4 -0
  393. package/dist/util/getEffectiveContentDensity.js.map +1 -0
  394. package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
  395. package/dist/util/getEffectiveScrollbarStyle.js +4 -0
  396. package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
  397. package/dist/util/getFastNavigationGroups.d.ts +2 -0
  398. package/dist/util/getFastNavigationGroups.js +51 -0
  399. package/dist/util/getFastNavigationGroups.js.map +1 -0
  400. package/dist/util/getFileExtension.d.ts +12 -0
  401. package/dist/util/getFileExtension.js +19 -0
  402. package/dist/util/getFileExtension.js.map +1 -0
  403. package/dist/util/getNormalizedTarget.d.ts +7 -0
  404. package/dist/util/getNormalizedTarget.js +14 -0
  405. package/dist/util/getNormalizedTarget.js.map +1 -0
  406. package/dist/util/getSingletonElementInstance.d.ts +2 -0
  407. package/dist/util/getSingletonElementInstance.js +10 -0
  408. package/dist/util/getSingletonElementInstance.js.map +1 -0
  409. package/dist/util/isElementClickable.d.ts +2 -0
  410. package/dist/util/isElementClickable.js +16 -0
  411. package/dist/util/isElementClickable.js.map +1 -0
  412. package/dist/util/isElementHidden.d.ts +2 -0
  413. package/dist/util/isElementHidden.js +8 -0
  414. package/dist/util/isElementHidden.js.map +1 -0
  415. package/dist/util/isElementInView.d.ts +6 -0
  416. package/dist/util/isElementInView.js +12 -0
  417. package/dist/util/isElementInView.js.map +1 -0
  418. package/dist/util/isElementTabbable.d.ts +9 -0
  419. package/dist/util/isElementTabbable.js +30 -0
  420. package/dist/util/isElementTabbable.js.map +1 -0
  421. package/dist/util/isValidPropertyName.d.ts +8 -0
  422. package/dist/util/isValidPropertyName.js +20 -12
  423. package/dist/util/isValidPropertyName.js.map +1 -0
  424. package/dist/util/whenDOMReady.d.ts +2 -0
  425. package/dist/util/whenDOMReady.js +11 -10
  426. package/dist/util/whenDOMReady.js.map +1 -0
  427. package/dist/util/willShowContent.d.ts +2 -0
  428. package/dist/util/willShowContent.js +7 -0
  429. package/dist/util/willShowContent.js.map +1 -0
  430. package/dist/validateThemeRoot.d.ts +2 -0
  431. package/dist/validateThemeRoot.js +47 -0
  432. package/dist/validateThemeRoot.js.map +1 -0
  433. package/global.d.ts +44 -0
  434. package/index.js +1 -1
  435. package/lib/generate-asset-parameters/index.js +25 -0
  436. package/lib/generate-styles/index.js +26 -0
  437. package/lib/generate-version-info/index.js +32 -0
  438. package/package-scripts.js +52 -27
  439. package/package.json +22 -14
  440. package/src/AssetRegistry.ts +11 -0
  441. package/src/Boot.ts +61 -0
  442. package/src/CSP.ts +66 -0
  443. package/src/CustomElementsRegistry.ts +98 -0
  444. package/src/CustomElementsScope.ts +33 -0
  445. package/src/CustomElementsScopeUtils.ts +115 -0
  446. package/src/DOMObserver.ts +28 -0
  447. package/src/Device.ts +124 -0
  448. package/src/EventProvider.ts +87 -0
  449. package/src/FeaturesRegistry.ts +14 -0
  450. package/src/FontFace.ts +31 -0
  451. package/src/InitialConfiguration.ts +207 -0
  452. package/src/Keys.ts +295 -0
  453. package/src/ManagedStyles.ts +92 -0
  454. package/src/MarkedEvents.ts +20 -0
  455. package/src/MediaRange.ts +110 -0
  456. package/src/PropertiesFileFormat.ts +95 -0
  457. package/src/Render.ts +180 -0
  458. package/src/RenderQueue.ts +71 -0
  459. package/src/Runtimes.ts +114 -0
  460. package/src/StaticArea.ts +3 -0
  461. package/src/StaticAreaItem.ts +113 -0
  462. package/src/SystemCSSVars.ts +10 -0
  463. package/src/Theming.ts +4 -0
  464. package/src/UI5Element.ts +1155 -0
  465. package/src/UI5ElementMetadata.ts +389 -0
  466. package/src/animations/{AnimationQueue.js → AnimationQueue.ts} +8 -7
  467. package/src/animations/animate.ts +64 -0
  468. package/src/animations/scroll.ts +21 -0
  469. package/src/animations/{slideDown.js → slideDown.ts} +27 -34
  470. package/src/animations/{slideUp.js → slideUp.ts} +28 -32
  471. package/src/asset-registries/Icons.ts +162 -0
  472. package/src/asset-registries/Illustrations.ts +75 -0
  473. package/src/asset-registries/LocaleData.ts +172 -0
  474. package/src/asset-registries/Themes.ts +67 -0
  475. package/src/asset-registries/i18n.ts +118 -0
  476. package/src/assets-meta/IconCollectionsAlias.ts +18 -0
  477. package/src/config/AnimationMode.ts +33 -0
  478. package/src/config/CalendarType.ts +23 -0
  479. package/src/config/FormatSettings.ts +21 -0
  480. package/src/config/Icons.ts +59 -0
  481. package/src/config/Language.ts +72 -0
  482. package/src/config/NoConflict.ts +67 -0
  483. package/src/config/{RTL.js → RTL.ts} +14 -4
  484. package/src/config/Theme.ts +64 -0
  485. package/src/config/ThemeRoots.ts +41 -0
  486. package/src/css/BusyIndicator.css +80 -0
  487. package/src/css/FontFace.css +66 -0
  488. package/src/css/OverrideFontFace.css +32 -0
  489. package/src/css/SystemCSSVars.css +17 -0
  490. package/src/decorators/customElement.ts +17 -0
  491. package/src/decorators/event.ts +28 -0
  492. package/src/decorators/fastNavigation.ts +14 -0
  493. package/src/decorators/languageAware.ts +14 -0
  494. package/src/decorators/property.ts +30 -0
  495. package/src/decorators/slot.ts +49 -0
  496. package/src/decorators/themeAware.ts +14 -0
  497. package/src/delegate/ItemNavigation.ts +393 -0
  498. package/src/delegate/ResizeHandler.ts +95 -0
  499. package/src/delegate/ScrollEnablement.ts +221 -0
  500. package/src/features/F6Navigation.ts +141 -0
  501. package/src/features/OpenUI5Element.ts +11 -0
  502. package/src/features/OpenUI5Enablement.ts +117 -0
  503. package/src/features/OpenUI5Support.ts +148 -0
  504. package/src/getSharedResource.ts +30 -0
  505. package/src/i18nBundle.ts +108 -0
  506. package/{dist/Locale.js → src/locale/Locale.ts} +14 -14
  507. package/src/locale/RTLAwareRegistry.ts +16 -0
  508. package/src/locale/applyDirection.ts +18 -0
  509. package/src/locale/directionChange.ts +34 -0
  510. package/src/locale/getEffectiveDir.ts +28 -0
  511. package/src/locale/getLocale.ts +46 -0
  512. package/src/locale/languageChange.ts +24 -0
  513. package/src/locale/nextFallbackLocale.ts +28 -0
  514. package/{dist/util/normalizeLocale.js → src/locale/normalizeLocale.ts} +12 -33
  515. package/src/renderer/LitRenderer.ts +60 -0
  516. package/src/renderer/directives/style-map.js +72 -0
  517. package/src/renderer/executeTemplate.ts +40 -0
  518. package/src/theming/CustomStyle.ts +62 -0
  519. package/src/theming/ThemeLoaded.ts +24 -0
  520. package/src/theming/applyTheme.ts +90 -0
  521. package/src/theming/getConstructableStyle.ts +31 -0
  522. package/src/theming/getEffectiveLinksHrefs.ts +26 -0
  523. package/src/theming/getEffectiveStyle.ts +41 -0
  524. package/src/theming/getStylesString.ts +15 -0
  525. package/src/theming/getThemeDesignerTheme.ts +101 -0
  526. package/src/theming/preloadLinks.ts +24 -0
  527. package/src/thirdparty/_merge.ts +32 -0
  528. package/src/thirdparty/isPlainObject.ts +18 -0
  529. package/src/thirdparty/merge.ts +5 -0
  530. package/src/types/AnimationMode.ts +33 -0
  531. package/src/types/CSSColor.ts +20 -0
  532. package/src/types/CalendarType.ts +38 -0
  533. package/src/types/DOMReference.ts +28 -0
  534. package/src/types/DataType.ts +51 -0
  535. package/src/types/Float.ts +25 -0
  536. package/src/types/Integer.ts +25 -0
  537. package/src/types/InvisibleMessageMode.ts +27 -0
  538. package/src/types/ItemNavigationBehavior.ts +26 -0
  539. package/src/types/NavigationMode.ts +33 -0
  540. package/src/types/ValueState.ts +47 -0
  541. package/src/types.ts +30 -0
  542. package/src/updateShadowRoot.ts +37 -0
  543. package/src/util/AriaLabelHelper.ts +63 -0
  544. package/src/util/Caret.ts +28 -0
  545. package/src/util/ColorConversion.ts +399 -0
  546. package/src/util/{FetchHelper.js → FetchHelper.ts} +7 -7
  547. package/src/util/FocusableElements.ts +82 -0
  548. package/src/util/HTMLSanitizer.ts +9 -0
  549. package/src/util/InvisibleMessage.ts +69 -0
  550. package/src/util/PopupUtils.ts +114 -0
  551. package/src/util/SlotsHelper.ts +39 -0
  552. package/src/util/StringHelper.ts +26 -0
  553. package/src/util/TabbableElements.ts +70 -0
  554. package/src/util/arraysAreEqual.ts +15 -0
  555. package/src/util/clamp.ts +12 -0
  556. package/src/util/createLinkInHead.ts +25 -0
  557. package/src/util/{createStyleInHead.js → createStyleInHead.ts} +4 -2
  558. package/src/util/debounce.ts +18 -0
  559. package/src/util/{detectNavigatorLanguage.js → detectNavigatorLanguage.ts} +4 -2
  560. package/src/util/escapeRegex.ts +11 -0
  561. package/src/util/{formatMessage.js → formatMessage.ts} +4 -3
  562. package/src/util/generateHighlightedMarkup.ts +43 -0
  563. package/src/util/getActiveElement.ts +11 -0
  564. package/src/util/getClassCopy.ts +12 -0
  565. package/src/util/{getDesigntimePropertyAsArray.js → getDesigntimePropertyAsArray.ts} +1 -1
  566. package/src/util/getEffectiveContentDensity.ts +5 -0
  567. package/src/util/getEffectiveScrollbarStyle.ts +5 -0
  568. package/src/util/getFastNavigationGroups.ts +63 -0
  569. package/src/util/getFileExtension.ts +21 -0
  570. package/src/util/getNormalizedTarget.ts +16 -0
  571. package/src/util/getSingletonElementInstance.ts +13 -0
  572. package/src/util/isElementClickable.ts +19 -0
  573. package/src/util/isElementHidden.ts +9 -0
  574. package/src/util/isElementInView.ts +15 -0
  575. package/src/util/isElementTabbable.ts +37 -0
  576. package/src/util/{isValidPropertyName.js → isValidPropertyName.ts} +12 -3
  577. package/src/util/{whenDOMReady.js → whenDOMReady.ts} +1 -1
  578. package/src/util/willShowContent.ts +7 -0
  579. package/src/validateThemeRoot.ts +58 -0
  580. package/tsconfig.json +13 -0
  581. package/used-modules.txt +10 -0
  582. package/bundle.es5.js +0 -28
  583. package/config/.eslintrc.js +0 -3
  584. package/config/rollup.config.js +0 -1
  585. package/dist/Assets.js +0 -2
  586. package/dist/CSS.js +0 -48
  587. package/dist/FormatSettings.js +0 -31
  588. package/dist/LocaleProvider.js +0 -34
  589. package/dist/RenderScheduler.js +0 -165
  590. package/dist/ResourceLoaderOverrides.js +0 -38
  591. package/dist/SVGIconRegistry.js +0 -54
  592. package/dist/animations/config.js +0 -5
  593. package/dist/boot.js +0 -25
  594. package/dist/compatibility/DOMObserver.js +0 -62
  595. package/dist/compatibility/patchNodeValue.js +0 -24
  596. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  597. package/dist/dates/CalendarDate.js +0 -203
  598. package/dist/dates/CalendarType.js +0 -22
  599. package/dist/dates/CalendarUtils.js +0 -99
  600. package/dist/delegate/CustomResize.js +0 -78
  601. package/dist/delegate/NativeResize.js +0 -44
  602. package/dist/events/PseudoEvents.js +0 -58
  603. package/dist/features/browsersupport/Edge.js +0 -6
  604. package/dist/features/browsersupport/IE11.js +0 -41
  605. package/dist/features/calendar/Buddhist.js +0 -1
  606. package/dist/features/calendar/Islamic.js +0 -1
  607. package/dist/features/calendar/Japanese.js +0 -1
  608. package/dist/features/calendar/Persian.js +0 -1
  609. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5598
  610. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5598
  611. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5598
  612. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4789
  613. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4801
  614. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5245
  615. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4696
  616. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4797
  617. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4798
  618. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4796
  619. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4694
  620. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4694
  621. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4777
  622. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4769
  623. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4778
  624. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4784
  625. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4778
  626. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4779
  627. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4778
  628. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4779
  629. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4780
  630. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4779
  631. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4719
  632. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4721
  633. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4720
  634. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4721
  635. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4721
  636. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4722
  637. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4720
  638. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4722
  639. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4721
  640. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4776
  641. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4704
  642. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -4816
  643. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4788
  644. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4788
  645. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4782
  646. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4806
  647. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4788
  648. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5133
  649. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4680
  650. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4910
  651. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4664
  652. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4500
  653. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4757
  654. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4757
  655. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4599
  656. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4537
  657. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4574
  658. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5234
  659. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -4902
  660. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4352
  661. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4784
  662. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4790
  663. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4790
  664. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5223
  665. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4703
  666. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4753
  667. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -4881
  668. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5157
  669. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5157
  670. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5125
  671. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5105
  672. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -4908
  673. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -4818
  674. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4633
  675. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4791
  676. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5126
  677. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4510
  678. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4469
  679. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4479
  680. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4479
  681. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4565
  682. package/dist/json-imports/LocaleData.js +0 -171
  683. package/dist/renderer/ifDefined.js +0 -21
  684. package/dist/resources/bundle.es5.js +0 -12643
  685. package/dist/resources/bundle.es5.js.map +0 -1
  686. package/dist/resources/bundle.esm.js +0 -7450
  687. package/dist/resources/bundle.esm.js.map +0 -1
  688. package/dist/shims/Core-shim.js +0 -52
  689. package/dist/shims/jquery-shim.js +0 -89
  690. package/dist/test-resources/assets/Themes.js +0 -11
  691. package/dist/test-resources/elements/Child.js +0 -35
  692. package/dist/test-resources/elements/Generic.js +0 -83
  693. package/dist/test-resources/elements/GenericExt.js +0 -26
  694. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  695. package/dist/test-resources/elements/Parent.js +0 -36
  696. package/dist/test-resources/pages/AllTestElements.html +0 -42
  697. package/dist/test-resources/pages/Configuration.html +0 -20
  698. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  699. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  700. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  701. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  702. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  703. package/dist/test-resources/specs/Theming.spec.js +0 -31
  704. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  705. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  706. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  707. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  708. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  709. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  710. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  711. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  712. package/dist/theming/StyleInjection.js +0 -67
  713. package/dist/thirdparty/Array.from.js +0 -16
  714. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  715. package/dist/thirdparty/Array.prototype.find.js +0 -46
  716. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  717. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  718. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  719. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  720. package/dist/thirdparty/Number.isInteger.js +0 -5
  721. package/dist/thirdparty/Number.isNaN.js +0 -1
  722. package/dist/thirdparty/Number.parseInt.js +0 -1
  723. package/dist/thirdparty/Object.assign.js +0 -31
  724. package/dist/thirdparty/Object.entries.js +0 -11
  725. package/dist/thirdparty/Symbol.js +0 -2
  726. package/dist/thirdparty/WeakSet.js +0 -27
  727. package/dist/thirdparty/events-polyfills.js +0 -89
  728. package/dist/thirdparty/fetch.js +0 -1
  729. package/dist/thirdparty/template.js +0 -600
  730. package/dist/types/CSSSize.js +0 -9
  731. package/dist/types/PopupState.js +0 -37
  732. package/dist/util/CSSTransformUtils.js +0 -90
  733. package/dist/util/isDescendantOf.js +0 -15
  734. package/dist/util/isNodeClickable.js +0 -19
  735. package/dist/util/isNodeHidden.js +0 -13
  736. package/dist/util/isNodeTabbable.js +0 -28
  737. package/dist/webcomponentsjs/LICENSE.md +0 -19
  738. package/dist/webcomponentsjs/README.md +0 -229
  739. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  740. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  741. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  742. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  743. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  744. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  745. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  746. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  747. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  748. package/dist/webcomponentsjs/package.json +0 -46
  749. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  750. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  751. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  752. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  753. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  754. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  755. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  756. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  757. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  758. package/src/AssetRegistry.js +0 -9
  759. package/src/Assets.js +0 -2
  760. package/src/CSS.js +0 -48
  761. package/src/Device.js +0 -823
  762. package/src/EventProvider.js +0 -73
  763. package/src/FeaturesRegistry.js +0 -11
  764. package/src/FontFace.js +0 -66
  765. package/src/FormatSettings.js +0 -31
  766. package/src/InitialConfiguration.js +0 -119
  767. package/src/Locale.js +0 -101
  768. package/src/LocaleProvider.js +0 -34
  769. package/src/RenderQueue.js +0 -42
  770. package/src/RenderScheduler.js +0 -165
  771. package/src/ResourceLoaderOverrides.js +0 -38
  772. package/src/SVGIconRegistry.js +0 -54
  773. package/src/StaticArea.js +0 -35
  774. package/src/StaticAreaItem.js +0 -67
  775. package/src/Theming.js +0 -45
  776. package/src/UI5Element.js +0 -842
  777. package/src/UI5ElementMetadata.js +0 -148
  778. package/src/animations/animate.js +0 -53
  779. package/src/animations/config.js +0 -5
  780. package/src/animations/scroll.js +0 -28
  781. package/src/asset-registries/Icons.js +0 -24
  782. package/src/asset-registries/LocaleData.js +0 -101
  783. package/src/asset-registries/Themes.js +0 -75
  784. package/src/asset-registries/i18n.js +0 -75
  785. package/src/boot.js +0 -25
  786. package/src/compatibility/DOMObserver.js +0 -62
  787. package/src/compatibility/patchNodeValue.js +0 -24
  788. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  789. package/src/config/AnimationMode.js +0 -9
  790. package/src/config/CalendarType.js +0 -18
  791. package/src/config/FormatSettings.js +0 -9
  792. package/src/config/Language.js +0 -9
  793. package/src/config/NoConflict.js +0 -44
  794. package/src/config/Theme.js +0 -24
  795. package/src/dates/CalendarDate.js +0 -203
  796. package/src/dates/CalendarType.js +0 -22
  797. package/src/dates/CalendarUtils.js +0 -99
  798. package/src/delegate/CustomResize.js +0 -78
  799. package/src/delegate/ItemNavigation.js +0 -234
  800. package/src/delegate/NativeResize.js +0 -44
  801. package/src/delegate/ResizeHandler.js +0 -66
  802. package/src/delegate/ScrollEnablement.js +0 -80
  803. package/src/events/PseudoEvents.js +0 -58
  804. package/src/features/browsersupport/Edge.js +0 -6
  805. package/src/features/browsersupport/IE11.js +0 -41
  806. package/src/features/calendar/Buddhist.js +0 -1
  807. package/src/features/calendar/Islamic.js +0 -1
  808. package/src/features/calendar/Japanese.js +0 -1
  809. package/src/features/calendar/Persian.js +0 -1
  810. package/src/i18nBundle.js +0 -35
  811. package/src/json-imports/LocaleData.js +0 -171
  812. package/src/renderer/LitRenderer.js +0 -15
  813. package/src/renderer/ifDefined.js +0 -21
  814. package/src/shims/Core-shim.js +0 -52
  815. package/src/shims/jquery-shim.js +0 -89
  816. package/src/theming/CustomStyle.js +0 -19
  817. package/src/theming/StyleInjection.js +0 -67
  818. package/src/thirdparty/Array.from.js +0 -16
  819. package/src/thirdparty/Array.prototype.fill.js +0 -44
  820. package/src/thirdparty/Array.prototype.find.js +0 -46
  821. package/src/thirdparty/Array.prototype.includes.js +0 -51
  822. package/src/thirdparty/Element.prototype.closest.js +0 -11
  823. package/src/thirdparty/Element.prototype.matches.js +0 -6
  824. package/src/thirdparty/Map.prototype.keys.js +0 -9
  825. package/src/thirdparty/Number.isInteger.js +0 -5
  826. package/src/thirdparty/Number.isNaN.js +0 -1
  827. package/src/thirdparty/Number.parseInt.js +0 -1
  828. package/src/thirdparty/Object.assign.js +0 -31
  829. package/src/thirdparty/Object.entries.js +0 -11
  830. package/src/thirdparty/Symbol.js +0 -2
  831. package/src/thirdparty/WeakSet.js +0 -27
  832. package/src/thirdparty/events-polyfills.js +0 -89
  833. package/src/thirdparty/fetch.js +0 -1
  834. package/src/thirdparty/template.js +0 -600
  835. package/src/types/AnimationMode.js +0 -7
  836. package/src/types/CSSSize.js +0 -9
  837. package/src/types/DataType.js +0 -25
  838. package/src/types/Integer.js +0 -9
  839. package/src/types/ItemNavigationBehavior.js +0 -21
  840. package/src/types/NavigationMode.js +0 -6
  841. package/src/types/PopupState.js +0 -37
  842. package/src/types/ValueState.js +0 -21
  843. package/src/util/CSSTransformUtils.js +0 -90
  844. package/src/util/FocusableElements.js +0 -60
  845. package/src/util/StringHelper.js +0 -11
  846. package/src/util/TabbableElements.js +0 -44
  847. package/src/util/isDescendantOf.js +0 -15
  848. package/src/util/isNodeClickable.js +0 -19
  849. package/src/util/isNodeHidden.js +0 -13
  850. package/src/util/isNodeTabbable.js +0 -28
  851. package/src/util/normalizeLocale.js +0 -77
@@ -0,0 +1,389 @@
1
+ import DataType from "./types/DataType.js";
2
+ import { camelToKebabCase } from "./util/StringHelper.js";
3
+ import { getSlottedNodes } from "./util/SlotsHelper.js";
4
+ import { getEffectiveScopingSuffixForTag } from "./CustomElementsScopeUtils.js";
5
+
6
+ type SlotInvalidation = {
7
+ properties: boolean | Array<string>,
8
+ slots: boolean | Array<string>,
9
+ }
10
+
11
+ type Slot = {
12
+ type: typeof Node | typeof HTMLElement,
13
+ default?: boolean,
14
+ propertyName?: string,
15
+ individualSlots?: boolean,
16
+ invalidateOnChildChange?: boolean | SlotInvalidation,
17
+ };
18
+
19
+ type SlotValue = Node;
20
+
21
+ type Property = {
22
+ type?: BooleanConstructor | StringConstructor | ObjectConstructor | DataType
23
+ validator?: DataType,
24
+ defaultValue?: PropertyValue,
25
+ noAttribute?: boolean,
26
+ multiple?: boolean,
27
+ compareValues?: boolean,
28
+ }
29
+
30
+ type PropertyValue = boolean | number | string | object | undefined | null | DataType;
31
+
32
+ type EventData = Record<string, object>;
33
+
34
+ type Metadata = {
35
+ tag?: string,
36
+ managedSlots?: boolean,
37
+ properties?: Record<string, Property>,
38
+ slots?: Record<string, Slot>,
39
+ events?: EventData,
40
+ fastNavigation?: boolean,
41
+ themeAware?: boolean,
42
+ languageAware?: boolean,
43
+ };
44
+
45
+ type State = Record<string, PropertyValue | Array<SlotValue>>;
46
+
47
+ /**
48
+ *
49
+ * @class
50
+ * @public
51
+ */
52
+ class UI5ElementMetadata {
53
+ metadata: Metadata;
54
+ _initialState: State | undefined;
55
+
56
+ constructor(metadata: Metadata) {
57
+ this.metadata = metadata;
58
+ }
59
+
60
+ getInitialState() {
61
+ if (Object.prototype.hasOwnProperty.call(this, "_initialState")) {
62
+ return this._initialState!;
63
+ }
64
+ const initialState: State = {};
65
+ const slotsAreManaged = this.slotsAreManaged();
66
+
67
+ // Initialize properties
68
+ const props = this.getProperties();
69
+ for (const propName in props) { // eslint-disable-line
70
+ const propType = props[propName].type;
71
+ const propDefaultValue = props[propName].defaultValue;
72
+
73
+ if (propType === Boolean) {
74
+ initialState[propName] = false;
75
+
76
+ if (propDefaultValue !== undefined) {
77
+ console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default"); // eslint-disable-line
78
+ }
79
+ } else if (props[propName].multiple) {
80
+ initialState[propName] = [];
81
+ } else if (propType === Object) {
82
+ initialState[propName] = "defaultValue" in props[propName] ? props[propName].defaultValue : {};
83
+ } else if (propType === String) {
84
+ initialState[propName] = "defaultValue" in props[propName] ? props[propName].defaultValue : "";
85
+ } else {
86
+ initialState[propName] = propDefaultValue;
87
+ }
88
+ }
89
+
90
+ // Initialize slots
91
+ if (slotsAreManaged) {
92
+ const slots = this.getSlots();
93
+ for (const [slotName, slotData] of Object.entries<Slot>(slots)) { // eslint-disable-line
94
+ const propertyName = slotData.propertyName || slotName;
95
+ initialState[propertyName] = [];
96
+ }
97
+ }
98
+
99
+ this._initialState = initialState;
100
+ return initialState;
101
+ }
102
+
103
+ /**
104
+ * Validates the property's value and returns it if correct
105
+ * or returns the default value if not.
106
+ * <b>Note:</b> Only intended for use by UI5Element.js
107
+ * @public
108
+ */
109
+ static validatePropertyValue(value: PropertyValue, propData: Property) {
110
+ const isMultiple = propData.multiple;
111
+ if (isMultiple && value) {
112
+ return (value as Array<PropertyValue>).map((propValue: PropertyValue) => validateSingleProperty(propValue, propData));
113
+ }
114
+ return validateSingleProperty(value, propData);
115
+ }
116
+
117
+ /**
118
+ * Validates the slot's value and returns it if correct
119
+ * or throws an exception if not.
120
+ * <b>Note:</b> Only intended for use by UI5Element.js
121
+ * @pubic
122
+ */
123
+ static validateSlotValue(value: Node, slotData: Slot) {
124
+ return validateSingleSlot(value, slotData);
125
+ }
126
+
127
+ /**
128
+ * Returns the tag of the UI5 Element without the scope
129
+ * @public
130
+ */
131
+ getPureTag() {
132
+ return this.metadata.tag || "";
133
+ }
134
+
135
+ /**
136
+ * Returns the tag of the UI5 Element
137
+ * @public
138
+ */
139
+ getTag() {
140
+ const pureTag = this.metadata.tag;
141
+
142
+ if (!pureTag) {
143
+ return "";
144
+ }
145
+
146
+ const suffix = getEffectiveScopingSuffixForTag(pureTag);
147
+ if (!suffix) {
148
+ return pureTag;
149
+ }
150
+
151
+ return `${pureTag}-${suffix}`;
152
+ }
153
+
154
+ /**
155
+ * Determines whether a property should have an attribute counterpart
156
+ * @public
157
+ * @param propName
158
+ * @returns {boolean}
159
+ */
160
+ hasAttribute(propName: string) {
161
+ const propData = this.getProperties()[propName];
162
+ return propData.type !== Object && !propData.noAttribute && !propData.multiple;
163
+ }
164
+
165
+ /**
166
+ * Returns an array with the properties of the UI5 Element (in camelCase)
167
+ * @public
168
+ * @returns {string[]}
169
+ */
170
+ getPropertiesList() {
171
+ return Object.keys(this.getProperties());
172
+ }
173
+
174
+ /**
175
+ * Returns an array with the attributes of the UI5 Element (in kebab-case)
176
+ * @public
177
+ * @returns {string[]}
178
+ */
179
+ getAttributesList() {
180
+ return this.getPropertiesList().filter(this.hasAttribute.bind(this)).map(camelToKebabCase);
181
+ }
182
+
183
+ /**
184
+ * Determines whether this UI5 Element has a default slot of type Node, therefore can slot text
185
+ * @returns {boolean}
186
+ */
187
+ canSlotText() {
188
+ const defaultSlot = this.getSlots().default;
189
+ return defaultSlot && defaultSlot.type === Node;
190
+ }
191
+
192
+ /**
193
+ * Determines whether this UI5 Element supports any slots
194
+ * @public
195
+ */
196
+ hasSlots() {
197
+ return !!Object.entries(this.getSlots()).length;
198
+ }
199
+
200
+ /**
201
+ * Determines whether this UI5 Element supports any slots with "individualSlots: true"
202
+ * @public
203
+ */
204
+ hasIndividualSlots() {
205
+ return this.slotsAreManaged() && Object.values(this.getSlots()).some(slotData => slotData.individualSlots);
206
+ }
207
+
208
+ /**
209
+ * Determines whether this UI5 Element needs to invalidate if children are added/removed/changed
210
+ * @public
211
+ */
212
+ slotsAreManaged() {
213
+ return !!this.metadata.managedSlots;
214
+ }
215
+
216
+ /**
217
+ * Determines whether this control supports F6 fast navigation
218
+ * @public
219
+ */
220
+ supportsF6FastNavigation() {
221
+ return !!this.metadata.fastNavigation;
222
+ }
223
+
224
+ /**
225
+ * Returns an object with key-value pairs of properties and their metadata definitions
226
+ * @public
227
+ */
228
+ getProperties() {
229
+ if (!this.metadata.properties) {
230
+ this.metadata.properties = {};
231
+ }
232
+ return this.metadata.properties;
233
+ }
234
+
235
+ /**
236
+ * Returns an object with key-value pairs of events and their metadata definitions
237
+ * @public
238
+ */
239
+ getEvents() {
240
+ if (!this.metadata.events) {
241
+ this.metadata.events = {};
242
+ }
243
+ return this.metadata.events;
244
+ }
245
+
246
+ /**
247
+ * Returns an object with key-value pairs of slots and their metadata definitions
248
+ * @public
249
+ */
250
+ getSlots() {
251
+ if (!this.metadata.slots) {
252
+ this.metadata.slots = {};
253
+ }
254
+ return this.metadata.slots;
255
+ }
256
+
257
+ /**
258
+ * Determines whether this UI5 Element has any translatable texts (needs to be invalidated upon language change)
259
+ * @returns {boolean}
260
+ */
261
+ isLanguageAware() {
262
+ return !!this.metadata.languageAware;
263
+ }
264
+
265
+ /**
266
+ * Determines whether this UI5 Element has any theme dependant carachteristics.
267
+ * @returns {boolean}
268
+ */
269
+ isThemeAware() {
270
+ return !!this.metadata.themeAware;
271
+ }
272
+
273
+ /**
274
+ * Matches a changed entity (property/slot) with the given name against the "invalidateOnChildChange" configuration
275
+ * and determines whether this should cause and invalidation
276
+ *
277
+ * @param slotName the name of the slot in which a child was changed
278
+ * @param type the type of change in the child: "property" or "slot"
279
+ * @param name the name of the property/slot that changed
280
+ * @returns {boolean}
281
+ */
282
+ shouldInvalidateOnChildChange(slotName: string, type: "property" | "slot", name: string) {
283
+ const config = this.getSlots()[slotName].invalidateOnChildChange;
284
+
285
+ // invalidateOnChildChange was not set in the slot metadata - by default child changes do not affect the component
286
+ if (config === undefined) {
287
+ return false;
288
+ }
289
+
290
+ // The simple format was used: invalidateOnChildChange: true/false;
291
+ if (typeof config === "boolean") {
292
+ return config;
293
+ }
294
+
295
+ // The complex format was used: invalidateOnChildChange: { properties, slots }
296
+ if (typeof config === "object") {
297
+ // A property was changed
298
+ if (type === "property") {
299
+ // The config object does not have a properties field
300
+ if (config.properties === undefined) {
301
+ return false;
302
+ }
303
+
304
+ // The config object has the short format: properties: true/false
305
+ if (typeof config.properties === "boolean") {
306
+ return config.properties;
307
+ }
308
+
309
+ // The config object has the complex format: properties: [...]
310
+ if (Array.isArray(config.properties)) {
311
+ return config.properties.includes(name);
312
+ }
313
+
314
+ throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected");
315
+ }
316
+
317
+ // A slot was changed
318
+ if (type === "slot") {
319
+ // The config object does not have a slots field
320
+ if (config.slots === undefined) {
321
+ return false;
322
+ }
323
+
324
+ // The config object has the short format: slots: true/false
325
+ if (typeof config.slots === "boolean") {
326
+ return config.slots;
327
+ }
328
+
329
+ // The config object has the complex format: slots: [...]
330
+ if (Array.isArray(config.slots)) {
331
+ return config.slots.includes(name);
332
+ }
333
+
334
+ throw new Error("Wrong format for invalidateOnChildChange.slots: boolean or array is expected");
335
+ }
336
+ }
337
+
338
+ throw new Error("Wrong format for invalidateOnChildChange: boolean or object is expected");
339
+ }
340
+ }
341
+
342
+ const validateSingleProperty = (value: PropertyValue, propData: Property) => {
343
+ const propertyType = propData.type;
344
+ let propertyValidator = propData.validator;
345
+
346
+ if (propertyType && (propertyType as typeof DataType).isDataTypeClass) {
347
+ propertyValidator = propertyType as typeof DataType;
348
+ }
349
+
350
+ if (propertyValidator) {
351
+ return (propertyValidator as typeof DataType).isValid(value) ? value : propData.defaultValue;
352
+ }
353
+
354
+ if (!propertyType || propertyType === String) {
355
+ return (typeof value === "string" || typeof value === "undefined" || value === null) ? value : value.toString();
356
+ }
357
+
358
+ if (propertyType === Boolean) {
359
+ return typeof value === "boolean" ? value : false;
360
+ }
361
+
362
+ if (propertyType === Object) {
363
+ return typeof value === "object" ? value : propData.defaultValue;
364
+ }
365
+
366
+ // Check if "value" is part of the enum (propertyType) values and return the defaultValue if not found.
367
+ return value as string in propertyType ? value : propData.defaultValue;
368
+ };
369
+
370
+ const validateSingleSlot = (value: Node, slotData: Slot) => {
371
+ value && getSlottedNodes(value).forEach(el => {
372
+ if (!(el instanceof slotData.type)) {
373
+ throw new Error(`The element is not of type ${slotData.type.toString()}`);
374
+ }
375
+ });
376
+
377
+ return value;
378
+ };
379
+
380
+ export default UI5ElementMetadata;
381
+ export type {
382
+ Property,
383
+ PropertyValue,
384
+ Slot,
385
+ SlotValue,
386
+ EventData,
387
+ State,
388
+ Metadata,
389
+ };
@@ -1,19 +1,20 @@
1
- const tasks = new WeakMap();
1
+ type TaskType = () => Promise<void>;
2
+ const tasks = new WeakMap<HTMLElement, Array<TaskType>>();
2
3
 
3
4
  class AnimationQueue {
4
5
  static get tasks() {
5
6
  return tasks;
6
7
  }
7
8
 
8
- static enqueue(element, task) {
9
+ static enqueue(element: HTMLElement, task: TaskType) {
9
10
  if (!tasks.has(element)) {
10
11
  tasks.set(element, []);
11
12
  }
12
13
 
13
- tasks.get(element).push(task);
14
+ tasks.get(element)!.push(task);
14
15
  }
15
16
 
16
- static run(element, task) {
17
+ static run(element: HTMLElement, task: TaskType): Promise<void> {
17
18
  if (!tasks.has(element)) {
18
19
  tasks.set(element, []);
19
20
  }
@@ -21,14 +22,14 @@ class AnimationQueue {
21
22
  return task().then(() => {
22
23
  const elementTasks = tasks.get(element);
23
24
 
24
- if (elementTasks.length > 0) {
25
- return AnimationQueue.run(element, elementTasks.shift());
25
+ if (elementTasks!.length > 0) {
26
+ return AnimationQueue.run(element, elementTasks!.shift()!);
26
27
  }
27
28
  tasks.delete(element);
28
29
  });
29
30
  }
30
31
 
31
- static push(element, task) {
32
+ static push(element: HTMLElement, task: TaskType) {
32
33
  const elementTasks = tasks.get(element);
33
34
 
34
35
  if (elementTasks) {
@@ -0,0 +1,64 @@
1
+ import AnimationQueue from "./AnimationQueue.js";
2
+
3
+ type AnimateOptions = {
4
+ beforeStart?: () => void,
5
+ duration: number,
6
+ element: HTMLElement,
7
+ advance: (p: number) => void,
8
+ };
9
+
10
+ const animate = (options: AnimateOptions) => {
11
+ let start: number | null = null;
12
+ let stopped = false;
13
+ let animationFrame: number;
14
+ let stop: () => void;
15
+ let advanceAnimation: (timestamp: number) => void;
16
+
17
+ const promise = new Promise<void>((resolve, reject) => {
18
+ advanceAnimation = timestamp => {
19
+ start = start || timestamp;
20
+
21
+ const timeElapsed = timestamp - start;
22
+ const remaining = options.duration - timeElapsed;
23
+
24
+ if (timeElapsed <= options.duration) {
25
+ const currentAdvance = 1 - remaining / options.duration; // easing formula (currently linear)
26
+ options.advance(currentAdvance);
27
+ if (!stopped) {
28
+ animationFrame = requestAnimationFrame(advanceAnimation);
29
+ }
30
+ } else {
31
+ options.advance(1);
32
+ resolve();
33
+ }
34
+ };
35
+
36
+ stop = () => {
37
+ stopped = true;
38
+ cancelAnimationFrame(animationFrame);
39
+ reject(new Error("animation stopped"));
40
+ };
41
+ }).catch((reason: Error) => reason);
42
+
43
+ AnimationQueue.push(options.element, () => {
44
+ if (typeof options.beforeStart === "function") {
45
+ options.beforeStart();
46
+ }
47
+
48
+ requestAnimationFrame(advanceAnimation);
49
+
50
+ return new Promise(resolve => {
51
+ promise.then(() => resolve());
52
+ });
53
+ });
54
+
55
+ return {
56
+ promise: () => promise,
57
+ stop: () => stop,
58
+ };
59
+ };
60
+ const duration = 400;
61
+
62
+ export { duration };
63
+ export type { AnimateOptions };
64
+ export default animate;
@@ -0,0 +1,21 @@
1
+ import animate, { duration } from "./animate.js";
2
+
3
+ const scroll = (element: HTMLElement, dx: number, dy: number) => {
4
+ let scrollLeft: number;
5
+ let scrollTop: number;
6
+
7
+ return animate({
8
+ beforeStart: () => {
9
+ scrollLeft = element.scrollLeft;
10
+ scrollTop = element.scrollTop;
11
+ },
12
+ duration,
13
+ element,
14
+ advance: progress => {
15
+ element.scrollLeft = scrollLeft + (progress * dx); // easing - linear
16
+ element.scrollTop = scrollTop + (progress * dy); // easing - linear
17
+ },
18
+ });
19
+ };
20
+
21
+ export default scroll;
@@ -1,23 +1,18 @@
1
- import animationConfig from "./config.js";
2
- import animate from "./animate.js";
1
+ import animate, { duration } from "./animate.js";
3
2
 
4
- export default ({
5
- element = animationConfig.element,
6
- duration = animationConfig.defaultDuration,
7
- progress: progressCallback = animationConfig.identity,
8
- }) => {
9
- let computedStyles,
10
- paddingTop,
11
- paddingBottom,
12
- marginTop,
13
- marginBottom,
14
- height;
15
- let storedOverflow,
16
- storedPaddingTop,
17
- storedPaddingBottom,
18
- storedMarginTop,
19
- storedMarginBottom,
20
- storedHeight;
3
+ const slideDown = (element: HTMLElement) => {
4
+ let computedStyles: CSSStyleDeclaration,
5
+ paddingTop: number,
6
+ paddingBottom: number,
7
+ marginTop: number,
8
+ marginBottom: number,
9
+ height: number;
10
+ let storedOverflow: string,
11
+ storedPaddingTop: string,
12
+ storedPaddingBottom: string,
13
+ storedMarginTop: string,
14
+ storedMarginBottom: string,
15
+ storedHeight: string;
21
16
 
22
17
  const animation = animate({
23
18
  beforeStart: () => {
@@ -41,28 +36,24 @@ export default ({
41
36
  storedHeight = element.style.height;
42
37
 
43
38
  element.style.overflow = "hidden";
44
- element.style.paddingTop = 0;
45
- element.style.paddingBottom = 0;
46
- element.style.marginTop = 0;
47
- element.style.marginBottom = 0;
48
- element.style.height = 0;
39
+ element.style.paddingTop = "0";
40
+ element.style.paddingBottom = "0";
41
+ element.style.marginTop = "0";
42
+ element.style.marginBottom = "0";
43
+ element.style.height = "0";
49
44
  },
50
45
  duration,
51
46
  element,
52
- progress(progress) {
53
- progressCallback(progress);
54
-
47
+ advance: progress => {
55
48
  // WORKAROUND
56
49
  element.style.display = "block";
57
50
  // END OF WORKAROUND
58
51
 
59
- /* eslint-disable */
60
- element.style.paddingTop = 0 + (paddingTop * progress) + "px";
61
- element.style.paddingBottom = 0 + (paddingBottom * progress) + "px";
62
- element.style.marginTop = 0 + (marginTop * progress) + "px";
63
- element.style.marginBottom = 0 + (marginBottom * progress) + "px";
64
- element.style.height = 0 + (height * progress) + "px";
65
- /* eslint-enable */
52
+ element.style.paddingTop = `${(paddingTop * progress)}px`;
53
+ element.style.paddingBottom = `${(paddingBottom * progress)}px`;
54
+ element.style.marginTop = `${(marginTop * progress)}px`;
55
+ element.style.marginBottom = `${(marginBottom * progress)}px`;
56
+ element.style.height = `${(height * progress)}px`;
66
57
  },
67
58
  });
68
59
 
@@ -77,3 +68,5 @@ export default ({
77
68
 
78
69
  return animation;
79
70
  };
71
+
72
+ export default slideDown;
@@ -1,31 +1,27 @@
1
- import animationConfig from "./config.js";
2
- import animate from "./animate.js";
1
+ import animate, { duration } from "./animate.js";
3
2
 
4
- export default ({
5
- element = animationConfig.element,
6
- duration = animationConfig.defaultDuration,
7
- progress: progressCallback = animationConfig.identity,
8
- }) => {
3
+ const slideUp = (element: HTMLElement) => {
9
4
  // Get Computed styles
10
- let computedStyles,
11
- paddingTop,
12
- paddingBottom,
13
- marginTop,
14
- marginBottom,
15
- height;
5
+ let computedStyles: CSSStyleDeclaration,
6
+ paddingTop: number,
7
+ paddingBottom: number,
8
+ marginTop: number,
9
+ marginBottom: number,
10
+ height: number;
16
11
 
17
12
  // Store inline styles
18
- let storedOverflow,
19
- storedPaddingTop,
20
- storedPaddingBottom,
21
- storedMarginTop,
22
- storedMarginBottom,
23
- storedHeight;
13
+ let storedOverflow: string,
14
+ storedPaddingTop: string,
15
+ storedPaddingBottom: string,
16
+ storedMarginTop: string,
17
+ storedMarginBottom: string,
18
+ storedHeight: string;
24
19
 
25
20
  const animation = animate({
26
21
  beforeStart: () => {
27
22
  // Get Computed styles
28
- computedStyles = getComputedStyle(element);
23
+ const el = element;
24
+ computedStyles = getComputedStyle(el);
29
25
  paddingTop = parseFloat(computedStyles.paddingTop);
30
26
  paddingBottom = parseFloat(computedStyles.paddingBottom);
31
27
  marginTop = parseFloat(computedStyles.marginTop);
@@ -33,20 +29,18 @@ export default ({
33
29
  height = parseFloat(computedStyles.height);
34
30
 
35
31
  // Store inline styles
36
- storedOverflow = element.style.overflow;
37
- storedPaddingTop = element.style.paddingTop;
38
- storedPaddingBottom = element.style.paddingBottom;
39
- storedMarginTop = element.style.marginTop;
40
- storedMarginBottom = element.style.marginBottom;
41
- storedHeight = element.style.height;
32
+ storedOverflow = el.style.overflow;
33
+ storedPaddingTop = el.style.paddingTop;
34
+ storedPaddingBottom = el.style.paddingBottom;
35
+ storedMarginTop = el.style.marginTop;
36
+ storedMarginBottom = el.style.marginBottom;
37
+ storedHeight = el.style.height;
42
38
 
43
- element.style.overflow = "hidden";
39
+ el.style.overflow = "hidden";
44
40
  },
45
41
  duration,
46
42
  element,
47
- progress(progress) {
48
- progressCallback(progress);
49
-
43
+ advance: progress => {
50
44
  element.style.paddingTop = `${paddingTop - (paddingTop * progress)}px`;
51
45
  element.style.paddingBottom = `${paddingBottom - (paddingBottom * progress)}px`;
52
46
  element.style.marginTop = `${marginTop - (marginTop * progress)}px`;
@@ -55,8 +49,8 @@ export default ({
55
49
  },
56
50
  });
57
51
 
58
- animation.promise().then(oReason => {
59
- if (!(oReason instanceof Error)) {
52
+ animation.promise().then(reason => {
53
+ if (!(reason instanceof Error)) {
60
54
  element.style.overflow = storedOverflow;
61
55
  element.style.paddingTop = storedPaddingTop;
62
56
  element.style.paddingBottom = storedPaddingBottom;
@@ -69,3 +63,5 @@ export default ({
69
63
 
70
64
  return animation;
71
65
  };
66
+
67
+ export default slideUp;