@ui5/webcomponents-base 0.0.0-5f8ce9393 → 0.0.0-6cb3eb0db

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 (424) hide show
  1. package/.eslintignore +3 -0
  2. package/CHANGELOG.md +196 -0
  3. package/README.md +26 -1
  4. package/bundle.esm.js +18 -12
  5. package/dist/AssetRegistry.js +8 -6
  6. package/dist/Boot.js +43 -0
  7. package/dist/CustomElementsRegistry.js +39 -0
  8. package/dist/CustomElementsScope.js +108 -0
  9. package/dist/DOMObserver.js +65 -0
  10. package/dist/Device.js +58 -779
  11. package/dist/EventProvider.js +38 -26
  12. package/dist/FontFace.js +52 -7
  13. package/dist/InitialConfiguration.js +35 -10
  14. package/dist/Keys.js +248 -0
  15. package/dist/MediaRange.js +109 -0
  16. package/dist/PropertiesFileFormat.js +95 -0
  17. package/dist/Render.js +173 -0
  18. package/dist/RenderQueue.js +41 -17
  19. package/dist/RenderScheduler.js +24 -145
  20. package/dist/StaticArea.js +1 -39
  21. package/dist/StaticAreaItem.js +67 -50
  22. package/dist/SystemCSSVars.js +31 -0
  23. package/dist/Theming.js +3 -54
  24. package/dist/UI5Element.js +486 -318
  25. package/dist/UI5ElementMetadata.js +182 -19
  26. package/dist/asset-registries/Icons.js +118 -14
  27. package/dist/asset-registries/Illustrations.js +30 -0
  28. package/dist/asset-registries/LocaleData.js +97 -55
  29. package/dist/asset-registries/Themes.js +35 -32
  30. package/dist/asset-registries/i18n.js +80 -34
  31. package/dist/config/AnimationMode.js +11 -1
  32. package/dist/config/CalendarType.js +3 -7
  33. package/dist/config/Language.js +58 -2
  34. package/dist/config/Theme.js +2 -2
  35. package/dist/delegate/ItemNavigation.js +245 -172
  36. package/dist/delegate/ResizeHandler.js +78 -38
  37. package/dist/delegate/ScrollEnablement.js +101 -19
  38. package/dist/features/OpenUI5Support.js +57 -8
  39. package/dist/generated/AssetParameters.js +13 -0
  40. package/dist/getSharedResource.js +30 -0
  41. package/dist/i18nBundle.js +31 -10
  42. package/dist/isLegacyBrowser.js +3 -0
  43. package/dist/{Locale.js → locale/Locale.js} +0 -10
  44. package/dist/locale/RTLAwareRegistry.js +14 -0
  45. package/dist/locale/applyDirection.js +17 -0
  46. package/dist/locale/directionChange.js +32 -0
  47. package/dist/locale/getEffectiveDir.js +28 -0
  48. package/dist/locale/getLocale.js +41 -0
  49. package/dist/locale/languageChange.js +22 -0
  50. package/dist/locale/nextFallbackLocale.js +28 -0
  51. package/{src/util → dist/locale}/normalizeLocale.js +8 -31
  52. package/dist/renderer/LitRenderer.js +21 -4
  53. package/dist/renderer/executeTemplate.js +17 -0
  54. package/dist/resources/bundle.esm.js +20 -106
  55. package/dist/resources/bundle.esm.js.map +1 -1
  56. package/dist/sap/base/Log.js +241 -0
  57. package/dist/sap/base/assert.js +8 -0
  58. package/dist/sap/base/security/URLListValidator.js +148 -0
  59. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  60. package/dist/sap/base/util/now.js +7 -0
  61. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  62. package/dist/test-resources/assets/Themes.js +11 -5
  63. package/dist/test-resources/elements/Generic.js +1 -0
  64. package/dist/test-resources/elements/Parent.js +7 -2
  65. package/dist/test-resources/elements/WithStaticArea.js +77 -0
  66. package/dist/test-resources/pages/AllTestElements.html +5 -5
  67. package/dist/test-resources/pages/Configuration.html +0 -2
  68. package/dist/test-resources/pages/ConfigurationScript.html +1 -3
  69. package/dist/test-resources/pages/assets/messagebundle_de.properties +1 -0
  70. package/dist/test-resources/pages/assets/messagebundle_en.properties +1 -0
  71. package/dist/test-resources/pages/assets/messagebundle_es.properties +1 -0
  72. package/dist/test-resources/pages/assets/messagebundle_fr.properties +1 -0
  73. package/dist/test-resources/pages/i18n.html +35 -0
  74. package/dist/test-resources/specs/ConfigurationChange.spec.js +11 -9
  75. package/dist/test-resources/specs/ConfigurationScript.spec.js +25 -23
  76. package/dist/test-resources/specs/ConfigurationURL.spec.js +65 -17
  77. package/dist/test-resources/specs/CustomTheme.spec.js +7 -5
  78. package/dist/test-resources/specs/EventProvider.spec.js +63 -0
  79. package/dist/test-resources/specs/StaticArea.spec.js +78 -0
  80. package/dist/test-resources/specs/Theming.spec.js +9 -7
  81. package/dist/test-resources/specs/UI5ElementInvalidation.js +54 -70
  82. package/dist/test-resources/specs/UI5ElementLifecycle.js +19 -14
  83. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +25 -51
  84. package/dist/test-resources/specs/UI5ElementMetadataExt.js +9 -7
  85. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +7 -5
  86. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +37 -35
  87. package/dist/test-resources/specs/UI5ElementShadowDOM.js +10 -8
  88. package/dist/test-resources/specs/UI5ElementSlots.js +10 -8
  89. package/dist/theming/CustomStyle.js +28 -7
  90. package/dist/theming/ThemeLoaded.js +22 -0
  91. package/dist/theming/applyTheme.js +78 -0
  92. package/dist/theming/createThemePropertiesStyleTag.js +20 -0
  93. package/dist/theming/getConstructableStyle.js +30 -0
  94. package/dist/theming/getEffectiveStyle.js +30 -0
  95. package/dist/theming/getStylesString.js +13 -0
  96. package/dist/theming/getThemeDesignerTheme.js +67 -0
  97. package/dist/thirdparty/_merge.js +32 -0
  98. package/dist/thirdparty/isPlainObject.js +18 -0
  99. package/dist/thirdparty/merge.js +10 -0
  100. package/dist/types/CSSColor.js +9 -0
  101. package/{src/dates → dist/types}/CalendarType.js +2 -2
  102. package/dist/types/DataType.js +13 -1
  103. package/dist/types/Float.js +14 -0
  104. package/dist/types/Integer.js +4 -0
  105. package/dist/types/InvisibleMessageMode.js +30 -0
  106. package/dist/types/ItemNavigationBehavior.js +2 -7
  107. package/dist/types/NavigationMode.js +1 -0
  108. package/dist/types/PopupState.js +1 -1
  109. package/dist/types/ValueState.js +2 -1
  110. package/dist/updateShadowRoot.js +26 -0
  111. package/dist/util/AriaLabelHelper.js +41 -0
  112. package/dist/util/Caret.js +45 -0
  113. package/dist/util/ColorConversion.js +370 -0
  114. package/dist/util/FocusableElements.js +25 -8
  115. package/dist/util/HTMLSanitizer.js +7 -0
  116. package/dist/util/InvisibleMessage.js +58 -0
  117. package/dist/util/PopupUtils.js +93 -0
  118. package/dist/util/SlotsHelper.js +43 -0
  119. package/dist/util/StringHelper.js +17 -2
  120. package/dist/util/TabbableElements.js +5 -2
  121. package/dist/util/arraysAreEqual.js +15 -0
  122. package/dist/util/clamp.js +12 -0
  123. package/dist/util/debounce.js +17 -0
  124. package/dist/util/detectNavigatorLanguage.js +3 -1
  125. package/dist/util/encodeCSS.js +24 -0
  126. package/dist/util/findNodeOwner.js +35 -0
  127. package/dist/util/getActiveElement.js +11 -0
  128. package/dist/util/getClassCopy.js +10 -0
  129. package/dist/util/getEffectiveContentDensity.js +5 -0
  130. package/dist/util/getFileExtension.js +21 -0
  131. package/dist/util/getSingletonElementInstance.js +13 -0
  132. package/dist/util/isElementInView.js +15 -0
  133. package/dist/util/isNodeHidden.js +1 -5
  134. package/dist/util/isNodeTabbable.js +4 -4
  135. package/dist/util/isValidPropertyName.js +11 -2
  136. package/dist/util/setToArray.js +10 -0
  137. package/hash.txt +1 -0
  138. package/index.js +1 -1
  139. package/lib/generate-asset-parameters/index.js +22 -0
  140. package/package-scripts.js +37 -17
  141. package/package.json +20 -12
  142. package/src/AssetRegistry.js +8 -6
  143. package/src/Boot.js +43 -0
  144. package/src/CustomElementsRegistry.js +39 -0
  145. package/src/CustomElementsScope.js +108 -0
  146. package/src/DOMObserver.js +65 -0
  147. package/src/Device.js +58 -779
  148. package/src/EventProvider.js +38 -26
  149. package/src/FontFace.js +52 -7
  150. package/src/InitialConfiguration.js +35 -10
  151. package/src/Keys.js +248 -0
  152. package/src/MediaRange.js +109 -0
  153. package/src/PropertiesFileFormat.js +95 -0
  154. package/src/Render.js +173 -0
  155. package/src/RenderQueue.js +41 -17
  156. package/src/RenderScheduler.js +24 -145
  157. package/src/StaticArea.js +1 -39
  158. package/src/StaticAreaItem.js +67 -50
  159. package/src/SystemCSSVars.js +31 -0
  160. package/src/Theming.js +3 -54
  161. package/src/UI5Element.js +486 -318
  162. package/src/UI5ElementMetadata.js +182 -19
  163. package/src/asset-registries/Icons.js +118 -14
  164. package/src/asset-registries/Illustrations.js +30 -0
  165. package/src/asset-registries/LocaleData.js +97 -55
  166. package/src/asset-registries/Themes.js +35 -32
  167. package/src/asset-registries/i18n.js +80 -34
  168. package/src/config/AnimationMode.js +11 -1
  169. package/src/config/CalendarType.js +3 -7
  170. package/src/config/Language.js +58 -2
  171. package/src/config/Theme.js +2 -2
  172. package/src/delegate/ItemNavigation.js +245 -172
  173. package/src/delegate/ResizeHandler.js +78 -38
  174. package/src/delegate/ScrollEnablement.js +101 -19
  175. package/src/features/OpenUI5Support.js +57 -8
  176. package/src/getSharedResource.js +30 -0
  177. package/src/i18nBundle.js +31 -10
  178. package/src/isLegacyBrowser.js +3 -0
  179. package/src/{Locale.js → locale/Locale.js} +0 -10
  180. package/src/locale/RTLAwareRegistry.js +14 -0
  181. package/src/locale/applyDirection.js +17 -0
  182. package/src/locale/directionChange.js +32 -0
  183. package/src/locale/getEffectiveDir.js +28 -0
  184. package/src/locale/getLocale.js +41 -0
  185. package/src/locale/languageChange.js +22 -0
  186. package/src/locale/nextFallbackLocale.js +28 -0
  187. package/{dist/util → src/locale}/normalizeLocale.js +8 -31
  188. package/src/renderer/LitRenderer.js +21 -4
  189. package/src/renderer/executeTemplate.js +17 -0
  190. package/src/theming/CustomStyle.js +28 -7
  191. package/src/theming/ThemeLoaded.js +22 -0
  192. package/src/theming/applyTheme.js +78 -0
  193. package/src/theming/createThemePropertiesStyleTag.js +20 -0
  194. package/src/theming/getConstructableStyle.js +30 -0
  195. package/src/theming/getEffectiveStyle.js +30 -0
  196. package/src/theming/getStylesString.js +13 -0
  197. package/src/theming/getThemeDesignerTheme.js +67 -0
  198. package/src/thirdparty/_merge.js +32 -0
  199. package/src/thirdparty/isPlainObject.js +18 -0
  200. package/src/thirdparty/merge.js +10 -0
  201. package/src/types/CSSColor.js +9 -0
  202. package/{dist/dates → src/types}/CalendarType.js +2 -2
  203. package/src/types/DataType.js +13 -1
  204. package/src/types/Float.js +14 -0
  205. package/src/types/Integer.js +4 -0
  206. package/src/types/InvisibleMessageMode.js +30 -0
  207. package/src/types/ItemNavigationBehavior.js +2 -7
  208. package/src/types/NavigationMode.js +1 -0
  209. package/src/types/PopupState.js +1 -1
  210. package/src/types/ValueState.js +2 -1
  211. package/src/updateShadowRoot.js +26 -0
  212. package/src/util/AriaLabelHelper.js +41 -0
  213. package/src/util/Caret.js +45 -0
  214. package/src/util/ColorConversion.js +370 -0
  215. package/src/util/FocusableElements.js +25 -8
  216. package/src/util/HTMLSanitizer.js +7 -0
  217. package/src/util/InvisibleMessage.js +58 -0
  218. package/src/util/PopupUtils.js +93 -0
  219. package/src/util/SlotsHelper.js +43 -0
  220. package/src/util/StringHelper.js +17 -2
  221. package/src/util/TabbableElements.js +5 -2
  222. package/src/util/arraysAreEqual.js +15 -0
  223. package/src/util/clamp.js +12 -0
  224. package/src/util/debounce.js +17 -0
  225. package/src/util/detectNavigatorLanguage.js +3 -1
  226. package/src/util/encodeCSS.js +24 -0
  227. package/src/util/findNodeOwner.js +35 -0
  228. package/src/util/getActiveElement.js +11 -0
  229. package/src/util/getClassCopy.js +10 -0
  230. package/src/util/getEffectiveContentDensity.js +5 -0
  231. package/src/util/getFileExtension.js +21 -0
  232. package/src/util/getSingletonElementInstance.js +13 -0
  233. package/src/util/isElementInView.js +15 -0
  234. package/src/util/isNodeHidden.js +1 -5
  235. package/src/util/isNodeTabbable.js +4 -4
  236. package/src/util/isValidPropertyName.js +11 -2
  237. package/src/util/setToArray.js +10 -0
  238. package/used-modules.txt +7 -0
  239. package/bundle.es5.js +0 -28
  240. package/dist/Assets.js +0 -2
  241. package/dist/CSS.js +0 -48
  242. package/dist/FormatSettings.js +0 -31
  243. package/dist/LocaleProvider.js +0 -34
  244. package/dist/ResourceLoaderOverrides.js +0 -38
  245. package/dist/SVGIconRegistry.js +0 -54
  246. package/dist/boot.js +0 -32
  247. package/dist/compatibility/DOMObserver.js +0 -62
  248. package/dist/compatibility/patchNodeValue.js +0 -24
  249. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  250. package/dist/dates/CalendarDate.js +0 -203
  251. package/dist/dates/CalendarUtils.js +0 -99
  252. package/dist/delegate/CustomResize.js +0 -78
  253. package/dist/delegate/NativeResize.js +0 -44
  254. package/dist/events/PseudoEvents.js +0 -58
  255. package/dist/features/browsersupport/Edge.js +0 -6
  256. package/dist/features/browsersupport/IE11.js +0 -41
  257. package/dist/features/calendar/Buddhist.js +0 -1
  258. package/dist/features/calendar/Islamic.js +0 -1
  259. package/dist/features/calendar/Japanese.js +0 -1
  260. package/dist/features/calendar/Persian.js +0 -1
  261. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5598
  262. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5598
  263. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5598
  264. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4789
  265. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4801
  266. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5245
  267. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4696
  268. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4797
  269. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4798
  270. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4796
  271. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4694
  272. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4694
  273. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4777
  274. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4769
  275. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4778
  276. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4784
  277. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4778
  278. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4779
  279. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4778
  280. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4779
  281. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4780
  282. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4779
  283. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4719
  284. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4721
  285. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4720
  286. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4721
  287. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4721
  288. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4722
  289. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4720
  290. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4722
  291. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4721
  292. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4776
  293. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4704
  294. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -4816
  295. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4788
  296. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4788
  297. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4782
  298. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4806
  299. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4788
  300. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5133
  301. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4680
  302. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4910
  303. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4664
  304. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4500
  305. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4757
  306. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4757
  307. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4599
  308. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4537
  309. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4574
  310. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5234
  311. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -4902
  312. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4352
  313. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4784
  314. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4790
  315. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4790
  316. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5223
  317. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4703
  318. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4753
  319. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -4881
  320. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5157
  321. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5157
  322. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5125
  323. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5105
  324. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -4908
  325. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -4818
  326. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4633
  327. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4791
  328. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5126
  329. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4510
  330. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4469
  331. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4479
  332. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4479
  333. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4565
  334. package/dist/json-imports/LocaleData.js +0 -171
  335. package/dist/renderer/ifDefined.js +0 -21
  336. package/dist/resources/bundle.es5.js +0 -212
  337. package/dist/resources/bundle.es5.js.map +0 -1
  338. package/dist/shims/Core-shim.js +0 -52
  339. package/dist/shims/jquery-shim.js +0 -89
  340. package/dist/test-resources/dev-helpers/ExternalThemePresent.js +0 -3
  341. package/dist/theming/StyleInjection.js +0 -67
  342. package/dist/thirdparty/Array.from.js +0 -16
  343. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  344. package/dist/thirdparty/Array.prototype.find.js +0 -46
  345. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  346. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  347. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  348. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  349. package/dist/thirdparty/Number.isInteger.js +0 -5
  350. package/dist/thirdparty/Number.isNaN.js +0 -1
  351. package/dist/thirdparty/Number.parseInt.js +0 -1
  352. package/dist/thirdparty/Object.assign.js +0 -31
  353. package/dist/thirdparty/Object.entries.js +0 -11
  354. package/dist/thirdparty/Symbol.js +0 -2
  355. package/dist/thirdparty/WeakSet.js +0 -27
  356. package/dist/thirdparty/events-polyfills.js +0 -89
  357. package/dist/thirdparty/fetch.js +0 -1
  358. package/dist/thirdparty/template.js +0 -600
  359. package/dist/util/CSSTransformUtils.js +0 -90
  360. package/dist/webcomponentsjs/LICENSE.md +0 -19
  361. package/dist/webcomponentsjs/README.md +0 -229
  362. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  363. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  364. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  365. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  366. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  367. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  368. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  369. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  370. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  371. package/dist/webcomponentsjs/package.json +0 -46
  372. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  373. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  374. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  375. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  376. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  377. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  378. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  379. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  380. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  381. package/src/Assets.js +0 -2
  382. package/src/CSS.js +0 -48
  383. package/src/FormatSettings.js +0 -31
  384. package/src/LocaleProvider.js +0 -34
  385. package/src/ResourceLoaderOverrides.js +0 -38
  386. package/src/SVGIconRegistry.js +0 -54
  387. package/src/boot.js +0 -32
  388. package/src/compatibility/DOMObserver.js +0 -62
  389. package/src/compatibility/patchNodeValue.js +0 -24
  390. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  391. package/src/dates/CalendarDate.js +0 -203
  392. package/src/dates/CalendarUtils.js +0 -99
  393. package/src/delegate/CustomResize.js +0 -78
  394. package/src/delegate/NativeResize.js +0 -44
  395. package/src/events/PseudoEvents.js +0 -58
  396. package/src/features/browsersupport/Edge.js +0 -6
  397. package/src/features/browsersupport/IE11.js +0 -41
  398. package/src/features/calendar/Buddhist.js +0 -1
  399. package/src/features/calendar/Islamic.js +0 -1
  400. package/src/features/calendar/Japanese.js +0 -1
  401. package/src/features/calendar/Persian.js +0 -1
  402. package/src/json-imports/LocaleData.js +0 -171
  403. package/src/renderer/ifDefined.js +0 -21
  404. package/src/shims/Core-shim.js +0 -52
  405. package/src/shims/jquery-shim.js +0 -89
  406. package/src/theming/StyleInjection.js +0 -67
  407. package/src/thirdparty/Array.from.js +0 -16
  408. package/src/thirdparty/Array.prototype.fill.js +0 -44
  409. package/src/thirdparty/Array.prototype.find.js +0 -46
  410. package/src/thirdparty/Array.prototype.includes.js +0 -51
  411. package/src/thirdparty/Element.prototype.closest.js +0 -11
  412. package/src/thirdparty/Element.prototype.matches.js +0 -6
  413. package/src/thirdparty/Map.prototype.keys.js +0 -9
  414. package/src/thirdparty/Number.isInteger.js +0 -5
  415. package/src/thirdparty/Number.isNaN.js +0 -1
  416. package/src/thirdparty/Number.parseInt.js +0 -1
  417. package/src/thirdparty/Object.assign.js +0 -31
  418. package/src/thirdparty/Object.entries.js +0 -11
  419. package/src/thirdparty/Symbol.js +0 -2
  420. package/src/thirdparty/WeakSet.js +0 -27
  421. package/src/thirdparty/events-polyfills.js +0 -89
  422. package/src/thirdparty/fetch.js +0 -1
  423. package/src/thirdparty/template.js +0 -600
  424. package/src/util/CSSTransformUtils.js +0 -90
package/.eslintignore CHANGED
@@ -1,5 +1,7 @@
1
1
  # Note: Changes to this file also must be applied to the top level .eslintignore file.
2
2
  test
3
+ lib
4
+ overlay
3
5
  dist
4
6
  src/thirdparty
5
7
  bundle.esm.js
@@ -8,3 +10,4 @@ rollup.config*.js
8
10
  wdio.conf.js
9
11
  postcss.config.js
10
12
  package-scripts.js
13
+ .eslintrc.js
package/CHANGELOG.md CHANGED
@@ -3,6 +3,202 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.0.0-rc.15](https://github.com/SAP/ui5-webcomponents/compare/v1.0.0-rc.14...v1.0.0-rc.15) (2021-07-23)
7
+
8
+
9
+ ### Features
10
+
11
+ * **framework:** expose dist paths as root paths via package.json export field ([#3274](https://github.com/SAP/ui5-webcomponents/issues/3274)) ([bd34a5e](https://github.com/SAP/ui5-webcomponents/commit/bd34a5e))
12
+ * **framework:** support sap-* config URL params ([#3138](https://github.com/SAP/ui5-webcomponents/issues/3138)) ([5d9cdb9](https://github.com/SAP/ui5-webcomponents/commit/5d9cdb9)), closes [#3114](https://github.com/SAP/ui5-webcomponents/issues/3114)
13
+ * **framework:** introduce InvisibleMessage util ([#3192](https://github.com/SAP/ui5-webcomponents/issues/3192)) ([0a33c40](https://github.com/SAP/ui5-webcomponents/commit/0a33c40))
14
+
15
+
16
+ # [1.0.0-rc.13](https://github.com/SAP/ui5-webcomponents/compare/v1.0.0-rc.12...v1.0.0-rc.13) (2021-03-26)
17
+
18
+
19
+ ### Bug Fixes
20
+
21
+ * **framework:** adapt ie11 package for usage in modern browsers ([#2878](https://github.com/SAP/ui5-webcomponents/issues/2878)) ([70bbfbb](https://github.com/SAP/ui5-webcomponents/commit/70bbfbb))
22
+ * **framework:** add fallback for CLDR dev use case ([#2844](https://github.com/SAP/ui5-webcomponents/issues/2844)) ([deb173a](https://github.com/SAP/ui5-webcomponents/commit/deb173a))
23
+
24
+
25
+ ### Features
26
+
27
+ * **framework:** Create attachDirectionChange function ([#2646](https://github.com/SAP/ui5-webcomponents/issues/2646)) ([b4f836a](https://github.com/SAP/ui5-webcomponents/commit/b4f836a))
28
+ * **framework:** ItemNavigation cyclic behavior implemented for multiple rows ([#2780](https://github.com/SAP/ui5-webcomponents/issues/2780)) ([b7ad1ea](https://github.com/SAP/ui5-webcomponents/commit/b7ad1ea))
29
+ * **framework:** Maintain a common z-index for all UI5 Web Components instances and OpenUI5 ([#2980](https://github.com/SAP/ui5-webcomponents/issues/2980)) ([13bdc02](https://github.com/SAP/ui5-webcomponents/commit/13bdc02))
30
+ * **ui5-color-palette:** initial implementation ([#2731](https://github.com/SAP/ui5-webcomponents/issues/2731)) ([772424e](https://github.com/SAP/ui5-webcomponents/commit/772424e))
31
+ * **ui5-color-picker:** initial implementation ([#2769](https://github.com/SAP/ui5-webcomponents/issues/2769)) ([6a70e5a](https://github.com/SAP/ui5-webcomponents/commit/6a70e5a))
32
+ * **ui5-list:** introduce "growing" property ([#2950](https://github.com/SAP/ui5-webcomponents/issues/2950)) ([6fbbb21](https://github.com/SAP/ui5-webcomponents/commit/6fbbb21)), closes [#2882](https://github.com/SAP/ui5-webcomponents/issues/2882) [#2882](https://github.com/SAP/ui5-webcomponents/issues/2882)
33
+ * **ui5-step-input:** inintial implementation ([#2804](https://github.com/SAP/ui5-webcomponents/issues/2804)) ([d80420e](https://github.com/SAP/ui5-webcomponents/commit/d80420e)), closes [#2640](https://github.com/SAP/ui5-webcomponents/issues/2640)
34
+ * **ui5-tabcontainer:** support responsive paddings ([#2775](https://github.com/SAP/ui5-webcomponents/issues/2775)) ([19392ff](https://github.com/SAP/ui5-webcomponents/commit/19392ff)), closes [#2539](https://github.com/SAP/ui5-webcomponents/issues/2539)
35
+ * add dynamic imports for .json assets ([#2740](https://github.com/SAP/ui5-webcomponents/issues/2740)) ([46e38fb](https://github.com/SAP/ui5-webcomponents/commit/46e38fb))
36
+ * **ui5-table:** add growing on scroll ([#2593](https://github.com/SAP/ui5-webcomponents/issues/2593)) ([87520c2](https://github.com/SAP/ui5-webcomponents/commit/87520c2)), closes [#2589](https://github.com/SAP/ui5-webcomponents/issues/2589) [#2570](https://github.com/SAP/ui5-webcomponents/issues/2570)
37
+ * create @ui5/webcomponents-ie11 package ([#2686](https://github.com/SAP/ui5-webcomponents/issues/2686)) ([1d3b37e](https://github.com/SAP/ui5-webcomponents/commit/1d3b37e))
38
+ * **ui5-slider:** focus and keyboard handling implementation ([#2614](https://github.com/SAP/ui5-webcomponents/issues/2614)) ([7b78c16](https://github.com/SAP/ui5-webcomponents/commit/7b78c16))
39
+ * refactoring and new features for pickers ([#2598](https://github.com/SAP/ui5-webcomponents/issues/2598)) ([3e684b4](https://github.com/SAP/ui5-webcomponents/commit/3e684b4))
40
+
41
+
42
+
43
+
44
+
45
+ # [1.0.0-rc.12](https://github.com/SAP/ui5-webcomponents/compare/v1.0.0-rc.11...v1.0.0-rc.12) (2021-02-18)
46
+
47
+
48
+ ### Bug Fixes
49
+
50
+ * **theming:** fix error message ([#2818](https://github.com/SAP/ui5-webcomponents/issues/2818)) ([7a0732a](https://github.com/SAP/ui5-webcomponents/commit/7a0732a))
51
+ * **i18n:** ui5-icon i18n works for all packages ([#2816](https://github.com/SAP/ui5-webcomponents/issues/2816)) ([91e16a1](https://github.com/SAP/ui5-webcomponents/commit/91e16a1))
52
+
53
+ ### Features
54
+
55
+ * **framework:** add dynamic imports for .json assets ([#2740](https://github.com/SAP/ui5-webcomponents/issues/2740)) ([46e38fb](https://github.com/SAP/ui5-webcomponents/commit/46e38fb))
56
+ * **framework:** Create attachDirectionChange function ([#2646](https://github.com/SAP/ui5-webcomponents/issues/2646)) ([b4f836a](https://github.com/SAP/ui5-webcomponents/commit/b4f836a))
57
+ * **framework:** ItemNavigation cyclic behavior implemented for multiple rows ([#2780](https://github.com/SAP/ui5-webcomponents/issues/2780)) ([b7ad1ea](https://github.com/SAP/ui5-webcomponents/commit/b7ad1ea))
58
+
59
+
60
+
61
+
62
+ # [1.0.0-rc.11](https://github.com/SAP/ui5-webcomponents/compare/v1.0.0-rc.10...v1.0.0-rc.11) (2020-12-21)
63
+
64
+
65
+ ### Bug Fixes
66
+
67
+ * **ui5-dialog:** apply initial focus after rendering ([#2551](https://github.com/SAP/ui5-webcomponents/issues/2551)) ([dba0265](https://github.com/SAP/ui5-webcomponents/commit/dba0265)), closes [#2537](https://github.com/SAP/ui5-webcomponents/issues/2537)
68
+
69
+
70
+ ### Features
71
+
72
+ * **framework:** Change child-parent invalidation API ([#2541](https://github.com/SAP/ui5-webcomponents/issues/2541)) ([a1a3f80](https://github.com/SAP/ui5-webcomponents/commit/a1a3f80))
73
+ * **ui5-calendar:** introduce new component. ([#2424](https://github.com/SAP/ui5-webcomponents/issues/2424)) ([5470e23](https://github.com/SAP/ui5-webcomponents/commit/5470e23)), closes [#1730](https://github.com/SAP/ui5-webcomponents/issues/1730)
74
+
75
+
76
+
77
+
78
+
79
+ # [1.0.0-rc.10](https://github.com/SAP/ui5-webcomponents/compare/v1.0.0-rc.9...v1.0.0-rc.10) (2020-11-12)
80
+
81
+
82
+ ### Bug Fixes
83
+
84
+ * **framework:** fix JS error on setLanguage call ([#2328](https://github.com/SAP/ui5-webcomponents/issues/2328)) ([f9b9ead](https://github.com/SAP/ui5-webcomponents/commit/f9b9ead))
85
+
86
+ ### Features
87
+
88
+ * **framework:** make getStableDomRef search in the static area item … ([#2363](https://github.com/SAP/ui5-webcomponents/issues/2363)) ([a68dfbb](https://github.com/SAP/ui5-webcomponents/commit/a68dfbb))
89
+
90
+ # [1.0.0-rc.9](https://github.com/SAP/ui5-webcomponents/compare/v1.0.0-rc.8...v1.0.0-rc.9) (2020-10-08)
91
+
92
+
93
+ ### Bug Fixes
94
+
95
+ * **components:** fix setting contentDensity styles ([#2094](https://github.com/SAP/ui5-webcomponents/issues/2094)) ([9454ab7](https://github.com/SAP/ui5-webcomponents/commit/9454ab7)), closes [#2093](https://github.com/SAP/ui5-webcomponents/issues/2093)
96
+ * **framework:** Allow role as a property name ([#2290](https://github.com/SAP/ui5-webcomponents/issues/2290)) ([a816cef](https://github.com/SAP/ui5-webcomponents/commit/a816cef))
97
+ * **framework:** Do not create IE styles with disabled ([#2284](https://github.com/SAP/ui5-webcomponents/issues/2284)) ([5ecc51e](https://github.com/SAP/ui5-webcomponents/commit/5ecc51e))
98
+
99
+
100
+ ### Features
101
+
102
+ * **framework:** Add API to subscribe/unsubscribe for theme loaded ([#2303](https://github.com/SAP/ui5-webcomponents/issues/2303)) ([c8ffb38](https://github.com/SAP/ui5-webcomponents/commit/c8ffb38))
103
+ * **framework:** dynamic custom elements scoping ([#2091](https://github.com/SAP/ui5-webcomponents/issues/2091)) ([3588542](https://github.com/SAP/ui5-webcomponents/commit/3588542))
104
+ * **framework:** Limited support for campact size on IE ([#2230](https://github.com/SAP/ui5-webcomponents/issues/2230)) ([4128216](https://github.com/SAP/ui5-webcomponents/commit/4128216))
105
+ * **framework:** Make _property-change publicly available ([#2201](https://github.com/SAP/ui5-webcomponents/issues/2201)) ([0be4e10](https://github.com/SAP/ui5-webcomponents/commit/0be4e10))
106
+ * **framework:** Make addCustomCSS dynamic ([#2083](https://github.com/SAP/ui5-webcomponents/issues/2083)) ([7b54b9b](https://github.com/SAP/ui5-webcomponents/commit/7b54b9b))
107
+ * **framework:** make assets path configurable ([#2214](https://github.com/SAP/ui5-webcomponents/issues/2214)) ([16c46da](https://github.com/SAP/ui5-webcomponents/commit/16c46da))
108
+ * **framework:** styles and staticAreaStyles may now be nested arrays ([#2058](https://github.com/SAP/ui5-webcomponents/issues/2058)) ([bb87e65](https://github.com/SAP/ui5-webcomponents/commit/bb87e65))
109
+ * **framework:** Support custom dynamic asset paths ([#2305](https://github.com/SAP/ui5-webcomponents/issues/2305)) ([ff245fa](https://github.com/SAP/ui5-webcomponents/commit/ff245fa))
110
+
111
+
112
+
113
+
114
+
115
+ # [1.0.0-rc.8](https://github.com/SAP/ui5-webcomponents/compare/v1.0.0-rc.7...v1.0.0-rc.8) (2020-07-30)
116
+
117
+
118
+ ### Bug Fixes
119
+
120
+ * **framework:** Allow for empty theme files ([#1639](https://github.com/SAP/ui5-webcomponents/issues/1639)) ([0cef140](https://github.com/SAP/ui5-webcomponents/commit/0cef140))
121
+ * **framework:** Allow users to override default language translations ([#1716](https://github.com/SAP/ui5-webcomponents/issues/1716)) ([4b10f4f](https://github.com/SAP/ui5-webcomponents/commit/4b10f4f))
122
+ * **framework:** Slotted children now invalidate parent upon slotchange ([#1649](https://github.com/SAP/ui5-webcomponents/issues/1649)) ([3ca4ae1](https://github.com/SAP/ui5-webcomponents/commit/3ca4ae1))
123
+ * **framework:** Fix openui5 css varaibles detection ([#1933](https://github.com/SAP/ui5-webcomponents/issues/1933)) ([bb5b724](https://github.com/SAP/ui5-webcomponents/commit/bb5b724)), closes [#1932](https://github.com/SAP/ui5-webcomponents/issues/1932)
124
+ * **framework:** Make renderImmediately sync ([#1929](https://github.com/SAP/ui5-webcomponents/issues/1929)) ([9141300](https://github.com/SAP/ui5-webcomponents/commit/9141300))
125
+ * **framework:** Update managedSlots effect ([#1952](https://github.com/SAP/ui5-webcomponents/issues/1952)) ([4a1be70](https://github.com/SAP/ui5-webcomponents/commit/4a1be70))
126
+ * **framework:** Remove ES6 code in IE polyfill ([#1923](https://github.com/SAP/ui5-webcomponents/issues/1923)) ([0a2ff88](https://github.com/SAP/ui5-webcomponents/commit/0a2ff88))
127
+ * **framework:** Take region into account for i18n assets ([#1985](https://github.com/SAP/ui5-webcomponents/issues/1985)) ([3b614ad](https://github.com/SAP/ui5-webcomponents/commit/3b614ad))
128
+ * **ui5-button:** Apply aria-expanded to inner button tag ([#1781](https://github.com/SAP/ui5-webcomponents/issues/1781)) ([df9e4e9](https://github.com/SAP/ui5-webcomponents/commit/df9e4e9))
129
+
130
+
131
+ ### Features
132
+
133
+ * **framework:** Add dynamic language change and on-demand rerendering ([#1746](https://github.com/SAP/ui5-webcomponents/issues/1746)) ([1b568f2](https://github.com/SAP/ui5-webcomponents/commit/1b568f2))
134
+ * **framework:** CLDR location can now be specified ([#1687](https://github.com/SAP/ui5-webcomponents/issues/1687)) ([168e505](https://github.com/SAP/ui5-webcomponents/commit/168e505))
135
+ * **framework:** Create a global shared resources repo, share SVG Icons ([#1869](https://github.com/SAP/ui5-webcomponents/issues/1869)) ([7f5a198](https://github.com/SAP/ui5-webcomponents/commit/7f5a198))
136
+ * **framework:** Implement invalidateParent ([#1964](https://github.com/SAP/ui5-webcomponents/issues/1964)) ([104abcc](https://github.com/SAP/ui5-webcomponents/commit/104abcc))
137
+ * **framework:** Implement stable DOM Ref functionality ([#1868](https://github.com/SAP/ui5-webcomponents/issues/1868)) ([cfd4fa3](https://github.com/SAP/ui5-webcomponents/commit/cfd4fa3))
138
+ * **framework:** Make icons RTL aware ([#1833](https://github.com/SAP/ui5-webcomponents/issues/1833)) ([29a991f](https://github.com/SAP/ui5-webcomponents/commit/29a991f)), closes [#1831](https://github.com/SAP/ui5-webcomponents/issues/1831)
139
+ * **framework:** Support properties message bundles for i18n ([#1728](https://github.com/SAP/ui5-webcomponents/issues/1728)) ([d78d136](https://github.com/SAP/ui5-webcomponents/commit/d78d136))
140
+ * **framework:** Support several runtimes simultaneously ([#1691](https://github.com/SAP/ui5-webcomponents/issues/1691)) ([7a3261c](https://github.com/SAP/ui5-webcomponents/commit/7a3261c))
141
+
142
+
143
+ # [0.20.0](https://github.com/SAP/ui5-webcomponents/compare/v0.19.0...v0.20.0) (2020-04-30)
144
+
145
+
146
+ ### Bug Fixes
147
+
148
+ * **framework:** allow the creation of components with static area content only ([#1450](https://github.com/SAP/ui5-webcomponents/issues/1450)) ([b0505ce](https://github.com/SAP/ui5-webcomponents/commit/b0505ce))
149
+ * **framework:** apply CSS Vars in Static Styles on IE11 ([#1440](https://github.com/SAP/ui5-webcomponents/issues/1440)) ([b8ae60e](https://github.com/SAP/ui5-webcomponents/commit/b8ae60e))
150
+ * **framework:** rendering is no longer delayed ([#1552](https://github.com/SAP/ui5-webcomponents/issues/1552)) ([c26e8aa](https://github.com/SAP/ui5-webcomponents/commit/c26e8aa))
151
+ * **scroll enablement:** fix scrolling issue on scroll & mobile ([#1557](https://github.com/SAP/ui5-webcomponents/issues/1557)) ([e79482a](https://github.com/SAP/ui5-webcomponents/commit/e79482a))
152
+ * **scroll enablement:** fix scrolling on android devices ([#1491](https://github.com/SAP/ui5-webcomponents/issues/1491)) ([df19ede](https://github.com/SAP/ui5-webcomponents/commit/df19ede))
153
+
154
+
155
+
156
+ ### Features
157
+
158
+ * **framework:** enable external themes support ([#1463](https://github.com/SAP/ui5-webcomponents/issues/1463)) ([b031782](https://github.com/SAP/ui5-webcomponents/commit/b031782))
159
+ * **framework:** register theme variables via CSS file ([#1451](https://github.com/SAP/ui5-webcomponents/issues/1451)) ([3173fb9](https://github.com/SAP/ui5-webcomponents/commit/3173fb9))
160
+
161
+
162
+
163
+
164
+ # [0.19.0](https://github.com/SAP/ui5-webcomponents/compare/v0.18.0...v0.19.0) (2020-03-27)
165
+
166
+
167
+ ### Bug Fixes
168
+
169
+ * **framework:** fix travis build ([#1212](https://github.com/SAP/ui5-webcomponents/issues/1212)) ([7f30cf3](https://github.com/SAP/ui5-webcomponents/commit/7f30cf3))
170
+ * **framework:** openUI5 cldr support re-added ([#1207](https://github.com/SAP/ui5-webcomponents/issues/1207)) ([6bf40a2](https://github.com/SAP/ui5-webcomponents/commit/6bf40a2))
171
+ * **framework:** Provide a workaround for Firefox 74 shadow root bug ([#1347](https://github.com/SAP/ui5-webcomponents/issues/1347)) ([7cc67a7](https://github.com/SAP/ui5-webcomponents/commit/7cc67a7))
172
+ * **framework:** StaticArea and StaticAreaElement identify as UI5Element ([#1168](https://github.com/SAP/ui5-webcomponents/issues/1168)) ([28f827a](https://github.com/SAP/ui5-webcomponents/commit/28f827a))
173
+ * **framework:** prevent infinite loop when fetching i18n bundles ([#1333](https://github.com/SAP/ui5-webcomponents/issues/1333)) ([f605566](https://github.com/SAP/ui5-webcomponents/commit/f605566))
174
+ * **framework:** prevent error when deleting static area item ([#1335](https://github.com/SAP/ui5-webcomponents/issues/1335)) ([5a99536](https://github.com/SAP/ui5-webcomponents/commit/5a99536))
175
+ * **framework:** apply size "compact" for StaticArea items ([#1204](https://github.com/SAP/ui5-webcomponents/issues/1204)) ([c411774](https://github.com/SAP/ui5-webcomponents/commit/c411774))
176
+ * **framework:** merge metadata properly ([#1092](https://github.com/SAP/ui5-webcomponents/issues/1092)) ([6a29872](https://github.com/SAP/ui5-webcomponents/commit/6a29872))
177
+ * **framework:** create font face style tag only once ([#1090](https://github.com/SAP/ui5-webcomponents/issues/1090)) ([1a09e13](https://github.com/SAP/ui5-webcomponents/commit/1a09e13))
178
+
179
+
180
+ ### Code Refactoring
181
+
182
+ * **framework:** propagate compact size when ui5-content-density-compact class is set ([#1136](https://github.com/SAP/ui5-webcomponents/issues/1136)) ([2db62ba](https://github.com/SAP/ui5-webcomponents/commit/2db62ba))
183
+
184
+
185
+ ### Features
186
+
187
+ * **framework:** Allow the registration of custom themes ([#1109](https://github.com/SAP/ui5-webcomponents/issues/1109)) ([6a69521](https://github.com/SAP/ui5-webcomponents/commit/6a69521))
188
+ * **framework:** create getLocaleData API ([#1269](https://github.com/SAP/ui5-webcomponents/issues/1269)) ([c9253a6](https://github.com/SAP/ui5-webcomponents/commit/c9253a6))
189
+ * **framework:** OpenUI5 integration ([#1138](https://github.com/SAP/ui5-webcomponents/issues/1138)) ([5527990](https://github.com/SAP/ui5-webcomponents/commit/5527990))
190
+ * **Itemnavigation:** add paging behaviour ([#1116](https://github.com/SAP/ui5-webcomponents/issues/1116)) ([1cb0832](https://github.com/SAP/ui5-webcomponents/commit/1cb0832))
191
+ * **ScrollEnablement:** enhance implementation to work on desktop ([#1374](https://github.com/SAP/ui5-webcomponents/issues/1374)) ([2567bea](https://github.com/SAP/ui5-webcomponents/commit/2567bea))
192
+
193
+
194
+ ### BREAKING CHANGES
195
+
196
+ * **framework:** remove `set/get` for compact size, use CSS class `ui5-content-density-compact` as a replacement.
197
+
198
+
199
+
200
+
201
+
6
202
  # [0.18.0](https://github.com/SAP/ui5-webcomponents/compare/v0.17.0...v0.18.0) (2019-12-02)
7
203
 
8
204
 
package/README.md CHANGED
@@ -7,7 +7,32 @@
7
7
 
8
8
  Contains the base files for all Web Components, most notably `@ui5/webcomponents-base/dist/UI5Element.js`.
9
9
 
10
- For a complete list of all app development related public module imports from the `base` package, click [here](../../docs/Public%20Module%20Imports.md#base):
10
+ ## Provided APIs for applications
11
+
12
+ ### `Boot.js`
13
+
14
+ - `attachBoot`
15
+
16
+ ### `CustomElementsScope.js`
17
+
18
+ - `setCustomElementsScopingSuffix`
19
+ - `getCustomElementsScopingSuffix`
20
+ - `setCustomElementsScopingRules`
21
+ - `getCustomElementsScopingRules`
22
+
23
+ ### `i18nBundle.js`
24
+
25
+ - `registerI18nLoader`
26
+ - `fetchI18nBundle`
27
+ - `getI18nBundleData`
28
+
29
+ ### `PropertiesFileFormat.js`
30
+
31
+ - `parseProperties`
32
+
33
+ ### `Render.js`
34
+
35
+ - `renderFinished`
11
36
 
12
37
  ## Resources
13
38
  - [UI5 Web Components - README.md](https://github.com/SAP/ui5-webcomponents/blob/master/README.md)
package/bundle.esm.js CHANGED
@@ -1,12 +1,7 @@
1
- import { registerThemeProperties } from "./dist/AssetRegistry.js";
1
+ import { registerThemePropertiesLoader } from "./dist/AssetRegistry.js";
2
+ import EventProvider from "./dist/EventProvider.js";
2
3
 
3
- import "./dist/features/calendar/Buddhist.js";
4
- import "./dist/features/calendar/Islamic.js";
5
- import "./dist/features/calendar/Japanese.js";
6
- import "./dist/features/calendar/Persian.js";
7
-
8
- // ESM bundle targets Edge + browsers with native support
9
- import "./dist/features/browsersupport/Edge.js";
4
+ // ESM bundle targets browsers with native support
10
5
  import "./dist/features/OpenUI5Support.js";
11
6
 
12
7
  // Test components
@@ -14,19 +9,22 @@ import "./dist/test-resources/elements/Generic.js";
14
9
  import "./dist/test-resources/elements/NoShadowDOM.js";
15
10
  import "./dist/test-resources/elements/Parent.js";
16
11
  import "./dist/test-resources/elements/Child.js";
12
+ import "./dist/test-resources/elements/WithStaticArea.js";
17
13
  import "./dist/test-resources/elements/GenericExt.js";
18
14
 
19
15
  // Test themes - CSS Vars for the sap_fiori_3, sap_fiori_3_dark, sap_belize and sap_belize_hcb themes
20
16
  import "./dist/test-resources/assets/Themes.js";
21
17
 
22
18
  // used in test pages
23
- import RenderScheduler from "./dist/RenderScheduler.js";
24
- window.RenderScheduler = RenderScheduler;
19
+ import { renderFinished } from "./dist/Render.js";
25
20
  import { isIE } from "./dist/Device.js";
26
21
  window.isIE = isIE; // attached to the window object for testing purposes
27
22
 
28
23
  // used for tests - to register a custom theme
29
- window.registerThemeProperties = registerThemeProperties;
24
+ window.registerThemePropertiesLoader = registerThemePropertiesLoader;
25
+
26
+ // i18n
27
+ import { registerI18nLoader, fetchI18nBundle, getI18nBundle } from "./dist/i18nBundle.js";
30
28
 
31
29
  // Note: keep in sync with rollup.config value for IIFE
32
30
  import { getAnimationMode } from "./dist/config/AnimationMode.js";
@@ -36,7 +34,9 @@ import { getTheme, setTheme } from "./dist/config/Theme.js";
36
34
  import { getNoConflict, setNoConflict } from "./dist/config/NoConflict.js";
37
35
  import { getRTL } from "./dist/config/RTL.js";
38
36
  import { getFirstDayOfWeek } from "./dist/config/FormatSettings.js";
39
- import { getRegisteredNames as getIconNames } from "./dist/SVGIconRegistry.js"
37
+ import { _getRegisteredNames as getIconNames } from "./dist/asset-registries/Icons.js"
38
+ import applyDirection from "./dist/locale/applyDirection.js";
39
+
40
40
  window["sap-ui-webcomponents-bundle"] = {
41
41
  configuration : {
42
42
  getAnimationMode,
@@ -50,4 +50,10 @@ window["sap-ui-webcomponents-bundle"] = {
50
50
  getFirstDayOfWeek,
51
51
  },
52
52
  getIconNames,
53
+ registerI18nLoader,
54
+ fetchI18nBundle,
55
+ getI18nBundle,
56
+ renderFinished,
57
+ applyDirection,
58
+ EventProvider,
53
59
  };
@@ -1,9 +1,11 @@
1
- import { registerI18nBundle } from "./asset-registries/i18n.js";
2
- import { registerCldr } from "./asset-registries/LocaleData.js";
3
- import { registerThemeProperties } from "./asset-registries/Themes.js";
1
+ import { registerI18nLoader } from "./asset-registries/i18n.js";
2
+ import { registerLocaleDataLoader } from "./asset-registries/LocaleData.js";
3
+ import { registerThemePropertiesLoader } from "./asset-registries/Themes.js";
4
+ import { registerIconLoader } from "./asset-registries/Icons.js";
4
5
 
5
6
  export {
6
- registerCldr,
7
- registerThemeProperties,
8
- registerI18nBundle,
7
+ registerI18nLoader,
8
+ registerLocaleDataLoader,
9
+ registerThemePropertiesLoader,
10
+ registerIconLoader,
9
11
  };
package/dist/Boot.js ADDED
@@ -0,0 +1,43 @@
1
+ import EventProvider from "./EventProvider.js";
2
+ import whenDOMReady from "./util/whenDOMReady.js";
3
+ import insertFontFace from "./FontFace.js";
4
+ import insertSystemCSSVars from "./SystemCSSVars.js";
5
+ import { getTheme } from "./config/Theme.js";
6
+ import applyTheme from "./theming/applyTheme.js";
7
+ import { getFeature } from "./FeaturesRegistry.js";
8
+
9
+ let booted = false;
10
+ const eventProvider = new EventProvider();
11
+
12
+ /**
13
+ * Attach a callback that will be executed on boot
14
+ * @public
15
+ * @param listener
16
+ */
17
+ const attachBoot = listener => {
18
+ eventProvider.attachEvent("boot", listener);
19
+ };
20
+
21
+ const boot = async () => {
22
+ if (booted) {
23
+ return;
24
+ }
25
+
26
+ const OpenUI5Support = getFeature("OpenUI5Support");
27
+ if (OpenUI5Support) {
28
+ await OpenUI5Support.init();
29
+ }
30
+
31
+ await whenDOMReady();
32
+ await applyTheme(getTheme());
33
+ OpenUI5Support && OpenUI5Support.attachListeners();
34
+ insertFontFace();
35
+ insertSystemCSSVars();
36
+ await eventProvider.fireEventAsync("boot");
37
+ booted = true;
38
+ };
39
+
40
+ export {
41
+ boot,
42
+ attachBoot,
43
+ };
@@ -0,0 +1,39 @@
1
+ import setToArray from "./util/setToArray.js";
2
+
3
+ const Definitions = new Set();
4
+ const Failures = new Set();
5
+ let failureTimeout;
6
+
7
+ const registerTag = tag => {
8
+ Definitions.add(tag);
9
+ };
10
+
11
+ const isTagRegistered = tag => {
12
+ return Definitions.has(tag);
13
+ };
14
+
15
+ const getAllRegisteredTags = () => {
16
+ return setToArray(Definitions);
17
+ };
18
+
19
+ const recordTagRegistrationFailure = tag => {
20
+ Failures.add(tag);
21
+ if (!failureTimeout) {
22
+ failureTimeout = setTimeout(() => {
23
+ displayFailedRegistrations();
24
+ failureTimeout = undefined;
25
+ }, 1000);
26
+ }
27
+ };
28
+
29
+ const displayFailedRegistrations = () => {
30
+ console.warn(`The following tags have already been defined by a different UI5 Web Components version: ${setToArray(Failures).join(", ")}`); // eslint-disable-line
31
+ Failures.clear();
32
+ };
33
+
34
+ export {
35
+ registerTag,
36
+ isTagRegistered,
37
+ getAllRegisteredTags,
38
+ recordTagRegistrationFailure,
39
+ };
@@ -0,0 +1,108 @@
1
+ let suf;
2
+ let rulesObj = {
3
+ include: [/^ui5-/],
4
+ exclude: [],
5
+ };
6
+ const tagsCache = new Map(); // true/false means the tag should/should not be cached, undefined means not known yet.
7
+
8
+ /**
9
+ * Sets the suffix to be used for custom elements scoping, f.e. pass "demo" to get tags such as "ui5-button-demo".
10
+ * Note: by default all tags starting with "ui5-" will be scoped, unless you change this by calling "setCustomElementsScopingRules"
11
+ *
12
+ * @public
13
+ * @param suffix The scoping suffix
14
+ */
15
+ const setCustomElementsScopingSuffix = suffix => {
16
+ if (!suffix.match(/^[a-zA-Z0-9_-]+$/)) {
17
+ throw new Error("Only alphanumeric characters and dashes allowed for the scoping suffix");
18
+ }
19
+
20
+ suf = suffix;
21
+ };
22
+
23
+ /**
24
+ * Returns the currently set scoping suffix, or undefined if not set.
25
+ *
26
+ * @public
27
+ * @returns {String|undefined}
28
+ */
29
+ const getCustomElementsScopingSuffix = () => {
30
+ return suf;
31
+ };
32
+
33
+ /**
34
+ * Sets the rules, governing which custom element tags to scope and which not, f.e.
35
+ * setCustomElementsScopingRules({include: [/^ui5-/]}, exclude: [/^ui5-mylib-/, /^ui5-carousel$/]);
36
+ * will scope all elements starting with "ui5-" but not the ones starting with "ui5-mylib-" and not "ui5-carousel".
37
+ *
38
+ * @public
39
+ * @param rules Object with "include" and "exclude" properties, both arrays of regular expressions. Note that "include"
40
+ * rules are applied first and "exclude" rules second.
41
+ */
42
+ const setCustomElementsScopingRules = rules => {
43
+ if (!rules || !rules.include) {
44
+ throw new Error(`"rules" must be an object with at least an "include" property`);
45
+ }
46
+
47
+ if (!Array.isArray(rules.include) || rules.include.some(rule => !(rule instanceof RegExp))) {
48
+ throw new Error(`"rules.include" must be an array of regular expressions`);
49
+ }
50
+
51
+ if (rules.exclude && (!Array.isArray(rules.exclude) || rules.exclude.some(rule => !(rule instanceof RegExp)))) {
52
+ throw new Error(`"rules.exclude" must be an array of regular expressions`);
53
+ }
54
+
55
+ rules.exclude = rules.exclude || [];
56
+ rulesObj = rules;
57
+ tagsCache.clear(); // reset the cache upon setting new rules
58
+ };
59
+
60
+ /**
61
+ * Returns the rules, governing which custom element tags to scope and which not. By default, all elements
62
+ * starting with "ui5-" are scoped. The default rules are: {include: [/^ui5-/]}.
63
+ *
64
+ * @public
65
+ * @returns {Object}
66
+ */
67
+ const getCustomElementsScopingRules = () => {
68
+ return rulesObj;
69
+ };
70
+
71
+ /**
72
+ * Determines whether custom elements with the given tag should be scoped or not.
73
+ * The tag is first matched against the "include" rules and then against the "exclude" rules and the
74
+ * result is cached until new rules are set.
75
+ *
76
+ * @public
77
+ * @param tag
78
+ */
79
+ const shouldScopeCustomElement = tag => {
80
+ if (!tagsCache.has(tag)) {
81
+ const result = rulesObj.include.some(rule => tag.match(rule)) && !rulesObj.exclude.some(rule => tag.match(rule));
82
+ tagsCache.set(tag, result);
83
+ }
84
+
85
+ return tagsCache.get(tag);
86
+ };
87
+
88
+ /**
89
+ * Returns the currently set scoping suffix, if any and if the tag should be scoped, or undefined otherwise.
90
+ *
91
+ * @public
92
+ * @param tag
93
+ * @returns {String}
94
+ */
95
+ const getEffectiveScopingSuffixForTag = tag => {
96
+ if (shouldScopeCustomElement(tag)) {
97
+ return getCustomElementsScopingSuffix();
98
+ }
99
+ };
100
+
101
+ export {
102
+ setCustomElementsScopingSuffix,
103
+ getCustomElementsScopingSuffix,
104
+ setCustomElementsScopingRules,
105
+ getCustomElementsScopingRules,
106
+ shouldScopeCustomElement,
107
+ getEffectiveScopingSuffixForTag,
108
+ };
@@ -0,0 +1,65 @@
1
+ const observers = new WeakMap(); // We want just one observer per node, store them here -> DOM nodes are keys
2
+
3
+ /**
4
+ * Default implementation with MutationObserver for browsers with native support
5
+ */
6
+ let _createObserver = (node, callback, options) => {
7
+ const observer = new MutationObserver(callback);
8
+ observer.observe(node, options);
9
+ return observer;
10
+ };
11
+
12
+ /**
13
+ * Default implementation with MutationObserver for browsers with native support
14
+ */
15
+ let _destroyObserver = observer => {
16
+ observer.disconnect();
17
+ };
18
+
19
+ /**
20
+ * Allows to create an alternative DOM observer implementation
21
+ * @param createFn
22
+ */
23
+ const setCreateObserverCallback = createFn => {
24
+ if (typeof createFn === "function") {
25
+ _createObserver = createFn;
26
+ }
27
+ };
28
+
29
+ /**
30
+ * Allows to create an alternative DOM observer implementation
31
+ * @param destroyFn
32
+ */
33
+ const setDestroyObserverCallback = destroyFn => {
34
+ if (typeof destroyFn === "function") {
35
+ _destroyObserver = destroyFn;
36
+ }
37
+ };
38
+
39
+ /**
40
+ * @param node
41
+ * @param callback
42
+ * @param options
43
+ */
44
+ const observeDOMNode = (node, callback, options) => {
45
+ const observer = _createObserver(node, callback, options);
46
+ observers.set(node, observer);
47
+ };
48
+
49
+ /**
50
+ * @param node
51
+ */
52
+ const unobserveDOMNode = node => {
53
+ const observer = observers.get(node);
54
+ if (observer) {
55
+ _destroyObserver(observer);
56
+ observers.delete(node);
57
+ }
58
+ };
59
+
60
+ export {
61
+ setCreateObserverCallback,
62
+ setDestroyObserverCallback,
63
+ observeDOMNode,
64
+ unobserveDOMNode,
65
+ };