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

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 (469) hide show
  1. package/.eslintignore +4 -0
  2. package/CHANGELOG.md +437 -0
  3. package/README.md +53 -7
  4. package/bundle.esm.js +24 -20
  5. package/dist/AssetRegistry.js +8 -6
  6. package/dist/Boot.js +59 -0
  7. package/dist/CSP.js +59 -0
  8. package/dist/CustomElementsRegistry.js +95 -0
  9. package/dist/CustomElementsScope.js +30 -0
  10. package/dist/CustomElementsScopeUtils.js +108 -0
  11. package/dist/DOMObserver.js +65 -0
  12. package/dist/Device.js +71 -773
  13. package/dist/EventProvider.js +38 -26
  14. package/dist/FeaturesRegistry.js +4 -1
  15. package/dist/FontFace.js +20 -56
  16. package/dist/InitialConfiguration.js +64 -17
  17. package/dist/Keys.js +295 -0
  18. package/dist/ManagedStyles.js +83 -0
  19. package/dist/MediaRange.js +109 -0
  20. package/dist/PropertiesFileFormat.js +95 -0
  21. package/dist/Render.js +175 -0
  22. package/dist/RenderQueue.js +41 -17
  23. package/dist/RenderScheduler.js +24 -145
  24. package/dist/Runtimes.js +107 -0
  25. package/dist/StaticArea.js +2 -34
  26. package/dist/StaticAreaItem.js +69 -35
  27. package/dist/SystemCSSVars.js +10 -0
  28. package/dist/Theming.js +3 -44
  29. package/dist/UI5Element.js +497 -306
  30. package/dist/UI5ElementMetadata.js +198 -19
  31. package/dist/asset-registries/Icons.js +125 -14
  32. package/dist/asset-registries/Illustrations.js +30 -0
  33. package/dist/asset-registries/LocaleData.js +114 -51
  34. package/dist/asset-registries/Themes.js +37 -30
  35. package/dist/asset-registries/i18n.js +81 -33
  36. package/dist/assets/bundle.esm.81ba431e.js +43 -0
  37. package/dist/assets-meta/IconCollectionsAlias.js +18 -0
  38. package/dist/config/AnimationMode.js +16 -2
  39. package/dist/config/CalendarType.js +7 -7
  40. package/dist/config/FormatSettings.js +5 -1
  41. package/dist/config/Icons.js +52 -0
  42. package/dist/config/Language.js +62 -3
  43. package/dist/config/NoConflict.js +10 -3
  44. package/dist/config/Theme.js +32 -3
  45. package/dist/css/BusyIndicator.css +80 -0
  46. package/dist/css/FontFace.css +75 -0
  47. package/dist/css/OverrideFontFace.css +32 -0
  48. package/dist/css/SystemCSSVars.css +17 -0
  49. package/dist/delegate/ItemNavigation.js +249 -127
  50. package/dist/delegate/ResizeHandler.js +78 -38
  51. package/dist/delegate/ScrollEnablement.js +122 -14
  52. package/dist/features/F6Navigation.js +110 -0
  53. package/dist/features/OpenUI5Enablement.js +119 -0
  54. package/dist/features/OpenUI5Support.js +125 -0
  55. package/dist/generated/AssetParameters.js +13 -0
  56. package/dist/generated/VersionInfo.js +10 -0
  57. package/dist/generated/css/BusyIndicator.css.js +5 -0
  58. package/dist/generated/css/FontFace.css.js +5 -0
  59. package/dist/generated/css/OverrideFontFace.css.js +5 -0
  60. package/dist/generated/css/SystemCSSVars.css.js +5 -0
  61. package/dist/getSharedResource.js +30 -0
  62. package/dist/i18nBundle.js +62 -11
  63. package/{src → dist/locale}/Locale.js +0 -10
  64. package/dist/locale/RTLAwareRegistry.js +14 -0
  65. package/dist/locale/applyDirection.js +17 -0
  66. package/dist/locale/directionChange.js +32 -0
  67. package/dist/locale/getEffectiveDir.js +28 -0
  68. package/dist/locale/getLocale.js +41 -0
  69. package/dist/locale/languageChange.js +22 -0
  70. package/dist/locale/nextFallbackLocale.js +28 -0
  71. package/dist/{util → locale}/normalizeLocale.js +8 -31
  72. package/dist/renderer/LitRenderer.js +44 -7
  73. package/dist/renderer/directives/style-map.js +72 -0
  74. package/dist/renderer/executeTemplate.js +34 -0
  75. package/dist/sap/base/Log.js +241 -0
  76. package/dist/sap/base/assert.js +8 -0
  77. package/dist/sap/base/security/URLListValidator.js +148 -0
  78. package/dist/sap/base/security/encodeCSS.js +14 -0
  79. package/dist/sap/base/security/encodeXML.js +23 -0
  80. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  81. package/dist/sap/base/strings/toHex.js +8 -0
  82. package/dist/sap/base/util/now.js +7 -0
  83. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  84. package/dist/theming/CustomStyle.js +47 -6
  85. package/dist/theming/ThemeLoaded.js +22 -0
  86. package/dist/theming/applyTheme.js +79 -0
  87. package/dist/theming/getConstructableStyle.js +30 -0
  88. package/dist/theming/getEffectiveLinksHrefs.js +27 -0
  89. package/dist/theming/getEffectiveStyle.js +39 -0
  90. package/dist/theming/getStylesString.js +15 -0
  91. package/dist/theming/getThemeDesignerTheme.js +87 -0
  92. package/dist/theming/preloadLinks.js +23 -0
  93. package/dist/thirdparty/_merge.js +32 -0
  94. package/dist/thirdparty/isPlainObject.js +18 -0
  95. package/dist/thirdparty/merge.js +10 -0
  96. package/dist/types/CSSColor.js +9 -0
  97. package/dist/{dates → types}/CalendarType.js +2 -2
  98. package/dist/types/DataType.js +13 -1
  99. package/dist/types/Float.js +14 -0
  100. package/dist/types/Integer.js +4 -0
  101. package/dist/types/InvisibleMessageMode.js +30 -0
  102. package/dist/types/ItemNavigationBehavior.js +2 -7
  103. package/dist/types/NavigationMode.js +1 -0
  104. package/dist/types/PopupState.js +1 -1
  105. package/dist/types/ValueState.js +2 -1
  106. package/dist/updateShadowRoot.js +29 -0
  107. package/dist/util/AriaLabelHelper.js +39 -0
  108. package/dist/util/Caret.js +32 -0
  109. package/dist/util/ColorConversion.js +398 -0
  110. package/dist/util/FocusableElements.js +30 -11
  111. package/dist/util/HTMLSanitizer.js +7 -0
  112. package/dist/util/InvisibleMessage.js +69 -0
  113. package/dist/util/PopupUtils.js +93 -0
  114. package/dist/util/SlotsHelper.js +43 -0
  115. package/dist/util/StringHelper.js +17 -2
  116. package/dist/util/TabbableElements.js +9 -2
  117. package/dist/util/arraysAreEqual.js +15 -0
  118. package/dist/util/clamp.js +12 -0
  119. package/dist/util/createLinkInHead.js +19 -0
  120. package/dist/util/debounce.js +17 -0
  121. package/dist/util/detectNavigatorLanguage.js +3 -1
  122. package/dist/util/escapeRegex.js +10 -0
  123. package/dist/util/generateHighlightedMarkup.js +42 -0
  124. package/dist/util/getActiveElement.js +11 -0
  125. package/dist/util/getClassCopy.js +10 -0
  126. package/dist/util/getEffectiveContentDensity.js +5 -0
  127. package/dist/util/getFileExtension.js +21 -0
  128. package/dist/util/getNormalizedTarget.js +16 -0
  129. package/dist/util/getSingletonElementInstance.js +13 -0
  130. package/dist/util/isDefaultSlotProvided.js +11 -0
  131. package/dist/util/isElementInView.js +15 -0
  132. package/dist/util/isNodeHidden.js +1 -5
  133. package/dist/util/isNodeTabbable.js +4 -4
  134. package/dist/util/isValidPropertyName.js +11 -2
  135. package/dist/util/setToArray.js +10 -0
  136. package/hash.txt +1 -0
  137. package/index.js +1 -1
  138. package/lib/generate-asset-parameters/index.js +25 -0
  139. package/lib/generate-styles/index.js +26 -0
  140. package/lib/generate-version-info/index.js +32 -0
  141. package/package-scripts.js +41 -27
  142. package/package.json +22 -14
  143. package/src/AssetRegistry.js +8 -6
  144. package/src/Boot.js +59 -0
  145. package/src/CSP.js +59 -0
  146. package/src/CustomElementsRegistry.js +95 -0
  147. package/src/CustomElementsScope.js +30 -0
  148. package/src/CustomElementsScopeUtils.js +108 -0
  149. package/src/DOMObserver.js +65 -0
  150. package/src/Device.js +71 -773
  151. package/src/EventProvider.js +38 -26
  152. package/src/FeaturesRegistry.js +4 -1
  153. package/src/FontFace.js +20 -56
  154. package/src/InitialConfiguration.js +64 -17
  155. package/src/Keys.js +295 -0
  156. package/src/ManagedStyles.js +83 -0
  157. package/src/MediaRange.js +109 -0
  158. package/src/PropertiesFileFormat.js +95 -0
  159. package/src/Render.js +175 -0
  160. package/src/RenderQueue.js +41 -17
  161. package/src/RenderScheduler.js +24 -145
  162. package/src/Runtimes.js +107 -0
  163. package/src/StaticArea.js +2 -34
  164. package/src/StaticAreaItem.js +69 -35
  165. package/src/SystemCSSVars.js +10 -0
  166. package/src/Theming.js +3 -44
  167. package/src/UI5Element.js +497 -306
  168. package/src/UI5ElementMetadata.js +198 -19
  169. package/src/asset-registries/Icons.js +125 -14
  170. package/src/asset-registries/Illustrations.js +30 -0
  171. package/src/asset-registries/LocaleData.js +114 -51
  172. package/src/asset-registries/Themes.js +37 -30
  173. package/src/asset-registries/i18n.js +81 -33
  174. package/src/assets-meta/IconCollectionsAlias.js +18 -0
  175. package/src/config/AnimationMode.js +16 -2
  176. package/src/config/CalendarType.js +7 -7
  177. package/src/config/FormatSettings.js +5 -1
  178. package/src/config/Icons.js +52 -0
  179. package/src/config/Language.js +62 -3
  180. package/src/config/NoConflict.js +10 -3
  181. package/src/config/Theme.js +32 -3
  182. package/src/css/BusyIndicator.css +80 -0
  183. package/src/css/FontFace.css +75 -0
  184. package/src/css/OverrideFontFace.css +32 -0
  185. package/src/css/SystemCSSVars.css +17 -0
  186. package/src/delegate/ItemNavigation.js +249 -127
  187. package/src/delegate/ResizeHandler.js +78 -38
  188. package/src/delegate/ScrollEnablement.js +122 -14
  189. package/src/features/F6Navigation.js +110 -0
  190. package/src/features/OpenUI5Enablement.js +119 -0
  191. package/src/features/OpenUI5Support.js +125 -0
  192. package/src/getSharedResource.js +30 -0
  193. package/src/i18nBundle.js +62 -11
  194. package/{dist → src/locale}/Locale.js +0 -10
  195. package/src/locale/RTLAwareRegistry.js +14 -0
  196. package/src/locale/applyDirection.js +17 -0
  197. package/src/locale/directionChange.js +32 -0
  198. package/src/locale/getEffectiveDir.js +28 -0
  199. package/src/locale/getLocale.js +41 -0
  200. package/src/locale/languageChange.js +22 -0
  201. package/src/locale/nextFallbackLocale.js +28 -0
  202. package/src/{util → locale}/normalizeLocale.js +8 -31
  203. package/src/renderer/LitRenderer.js +44 -7
  204. package/src/renderer/directives/style-map.js +72 -0
  205. package/src/renderer/executeTemplate.js +34 -0
  206. package/src/theming/CustomStyle.js +47 -6
  207. package/src/theming/ThemeLoaded.js +22 -0
  208. package/src/theming/applyTheme.js +79 -0
  209. package/src/theming/getConstructableStyle.js +30 -0
  210. package/src/theming/getEffectiveLinksHrefs.js +27 -0
  211. package/src/theming/getEffectiveStyle.js +39 -0
  212. package/src/theming/getStylesString.js +15 -0
  213. package/src/theming/getThemeDesignerTheme.js +87 -0
  214. package/src/theming/preloadLinks.js +23 -0
  215. package/src/thirdparty/_merge.js +32 -0
  216. package/src/thirdparty/isPlainObject.js +18 -0
  217. package/src/thirdparty/merge.js +10 -0
  218. package/src/types/CSSColor.js +9 -0
  219. package/src/{dates → types}/CalendarType.js +2 -2
  220. package/src/types/DataType.js +13 -1
  221. package/src/types/Float.js +14 -0
  222. package/src/types/Integer.js +4 -0
  223. package/src/types/InvisibleMessageMode.js +30 -0
  224. package/src/types/ItemNavigationBehavior.js +2 -7
  225. package/src/types/NavigationMode.js +1 -0
  226. package/src/types/PopupState.js +1 -1
  227. package/src/types/ValueState.js +2 -1
  228. package/src/updateShadowRoot.js +29 -0
  229. package/src/util/AriaLabelHelper.js +39 -0
  230. package/src/util/Caret.js +32 -0
  231. package/src/util/ColorConversion.js +398 -0
  232. package/src/util/FocusableElements.js +30 -11
  233. package/src/util/HTMLSanitizer.js +7 -0
  234. package/src/util/InvisibleMessage.js +69 -0
  235. package/src/util/PopupUtils.js +93 -0
  236. package/src/util/SlotsHelper.js +43 -0
  237. package/src/util/StringHelper.js +17 -2
  238. package/src/util/TabbableElements.js +9 -2
  239. package/src/util/arraysAreEqual.js +15 -0
  240. package/src/util/clamp.js +12 -0
  241. package/src/util/createLinkInHead.js +19 -0
  242. package/src/util/debounce.js +17 -0
  243. package/src/util/detectNavigatorLanguage.js +3 -1
  244. package/src/util/escapeRegex.js +10 -0
  245. package/src/util/generateHighlightedMarkup.js +42 -0
  246. package/src/util/getActiveElement.js +11 -0
  247. package/src/util/getClassCopy.js +10 -0
  248. package/src/util/getEffectiveContentDensity.js +5 -0
  249. package/src/util/getFileExtension.js +21 -0
  250. package/src/util/getNormalizedTarget.js +16 -0
  251. package/src/util/getSingletonElementInstance.js +13 -0
  252. package/src/util/isDefaultSlotProvided.js +11 -0
  253. package/src/util/isElementInView.js +15 -0
  254. package/src/util/isNodeHidden.js +1 -5
  255. package/src/util/isNodeTabbable.js +4 -4
  256. package/src/util/isValidPropertyName.js +11 -2
  257. package/src/util/setToArray.js +10 -0
  258. package/used-modules.txt +10 -0
  259. package/bundle.es5.js +0 -28
  260. package/config/.eslintrc.js +0 -3
  261. package/config/rollup.config.js +0 -1
  262. package/dist/Assets.js +0 -2
  263. package/dist/CSS.js +0 -48
  264. package/dist/FormatSettings.js +0 -31
  265. package/dist/LocaleProvider.js +0 -34
  266. package/dist/ResourceLoaderOverrides.js +0 -38
  267. package/dist/SVGIconRegistry.js +0 -54
  268. package/dist/boot.js +0 -25
  269. package/dist/compatibility/DOMObserver.js +0 -62
  270. package/dist/compatibility/patchNodeValue.js +0 -24
  271. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  272. package/dist/dates/CalendarDate.js +0 -203
  273. package/dist/dates/CalendarUtils.js +0 -99
  274. package/dist/delegate/CustomResize.js +0 -78
  275. package/dist/delegate/NativeResize.js +0 -44
  276. package/dist/events/PseudoEvents.js +0 -58
  277. package/dist/features/browsersupport/Edge.js +0 -6
  278. package/dist/features/browsersupport/IE11.js +0 -41
  279. package/dist/features/calendar/Buddhist.js +0 -1
  280. package/dist/features/calendar/Islamic.js +0 -1
  281. package/dist/features/calendar/Japanese.js +0 -1
  282. package/dist/features/calendar/Persian.js +0 -1
  283. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5598
  284. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5598
  285. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5598
  286. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4789
  287. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4801
  288. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5245
  289. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4696
  290. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4797
  291. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4798
  292. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4796
  293. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4694
  294. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4694
  295. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4777
  296. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4769
  297. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4778
  298. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4784
  299. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4778
  300. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4779
  301. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4778
  302. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4779
  303. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4780
  304. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4779
  305. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4719
  306. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4721
  307. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4720
  308. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4721
  309. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4721
  310. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4722
  311. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4720
  312. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4722
  313. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4721
  314. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4776
  315. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4704
  316. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -4816
  317. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4788
  318. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4788
  319. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4782
  320. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4806
  321. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4788
  322. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5133
  323. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4680
  324. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4910
  325. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4664
  326. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4500
  327. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4757
  328. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4757
  329. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4599
  330. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4537
  331. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4574
  332. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5234
  333. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -4902
  334. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4352
  335. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4784
  336. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4790
  337. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4790
  338. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5223
  339. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4703
  340. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4753
  341. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -4881
  342. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5157
  343. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5157
  344. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5125
  345. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5105
  346. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -4908
  347. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -4818
  348. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4633
  349. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4791
  350. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5126
  351. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4510
  352. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4469
  353. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4479
  354. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4479
  355. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4565
  356. package/dist/json-imports/LocaleData.js +0 -171
  357. package/dist/renderer/ifDefined.js +0 -21
  358. package/dist/resources/bundle.es5.js +0 -12643
  359. package/dist/resources/bundle.es5.js.map +0 -1
  360. package/dist/resources/bundle.esm.js +0 -7450
  361. package/dist/resources/bundle.esm.js.map +0 -1
  362. package/dist/shims/Core-shim.js +0 -52
  363. package/dist/shims/jquery-shim.js +0 -89
  364. package/dist/test-resources/assets/Themes.js +0 -11
  365. package/dist/test-resources/elements/Child.js +0 -35
  366. package/dist/test-resources/elements/Generic.js +0 -83
  367. package/dist/test-resources/elements/GenericExt.js +0 -26
  368. package/dist/test-resources/elements/NoShadowDOM.js +0 -13
  369. package/dist/test-resources/elements/Parent.js +0 -36
  370. package/dist/test-resources/pages/AllTestElements.html +0 -42
  371. package/dist/test-resources/pages/Configuration.html +0 -20
  372. package/dist/test-resources/pages/ConfigurationScript.html +0 -36
  373. package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
  374. package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
  375. package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
  376. package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
  377. package/dist/test-resources/specs/Theming.spec.js +0 -31
  378. package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
  379. package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
  380. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
  381. package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
  382. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
  383. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
  384. package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
  385. package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
  386. package/dist/theming/StyleInjection.js +0 -67
  387. package/dist/thirdparty/Array.from.js +0 -16
  388. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  389. package/dist/thirdparty/Array.prototype.find.js +0 -46
  390. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  391. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  392. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  393. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  394. package/dist/thirdparty/Number.isInteger.js +0 -5
  395. package/dist/thirdparty/Number.isNaN.js +0 -1
  396. package/dist/thirdparty/Number.parseInt.js +0 -1
  397. package/dist/thirdparty/Object.assign.js +0 -31
  398. package/dist/thirdparty/Object.entries.js +0 -11
  399. package/dist/thirdparty/Symbol.js +0 -2
  400. package/dist/thirdparty/WeakSet.js +0 -27
  401. package/dist/thirdparty/events-polyfills.js +0 -89
  402. package/dist/thirdparty/fetch.js +0 -1
  403. package/dist/thirdparty/template.js +0 -600
  404. package/dist/util/CSSTransformUtils.js +0 -90
  405. package/dist/webcomponentsjs/LICENSE.md +0 -19
  406. package/dist/webcomponentsjs/README.md +0 -229
  407. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  408. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  409. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  410. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  411. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  412. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  413. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  414. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  415. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  416. package/dist/webcomponentsjs/package.json +0 -46
  417. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  418. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  419. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  420. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  421. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  422. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  423. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  424. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  425. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  426. package/src/Assets.js +0 -2
  427. package/src/CSS.js +0 -48
  428. package/src/FormatSettings.js +0 -31
  429. package/src/LocaleProvider.js +0 -34
  430. package/src/ResourceLoaderOverrides.js +0 -38
  431. package/src/SVGIconRegistry.js +0 -54
  432. package/src/boot.js +0 -25
  433. package/src/compatibility/DOMObserver.js +0 -62
  434. package/src/compatibility/patchNodeValue.js +0 -24
  435. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  436. package/src/dates/CalendarDate.js +0 -203
  437. package/src/dates/CalendarUtils.js +0 -99
  438. package/src/delegate/CustomResize.js +0 -78
  439. package/src/delegate/NativeResize.js +0 -44
  440. package/src/events/PseudoEvents.js +0 -58
  441. package/src/features/browsersupport/Edge.js +0 -6
  442. package/src/features/browsersupport/IE11.js +0 -41
  443. package/src/features/calendar/Buddhist.js +0 -1
  444. package/src/features/calendar/Islamic.js +0 -1
  445. package/src/features/calendar/Japanese.js +0 -1
  446. package/src/features/calendar/Persian.js +0 -1
  447. package/src/json-imports/LocaleData.js +0 -171
  448. package/src/renderer/ifDefined.js +0 -21
  449. package/src/shims/Core-shim.js +0 -52
  450. package/src/shims/jquery-shim.js +0 -89
  451. package/src/theming/StyleInjection.js +0 -67
  452. package/src/thirdparty/Array.from.js +0 -16
  453. package/src/thirdparty/Array.prototype.fill.js +0 -44
  454. package/src/thirdparty/Array.prototype.find.js +0 -46
  455. package/src/thirdparty/Array.prototype.includes.js +0 -51
  456. package/src/thirdparty/Element.prototype.closest.js +0 -11
  457. package/src/thirdparty/Element.prototype.matches.js +0 -6
  458. package/src/thirdparty/Map.prototype.keys.js +0 -9
  459. package/src/thirdparty/Number.isInteger.js +0 -5
  460. package/src/thirdparty/Number.isNaN.js +0 -1
  461. package/src/thirdparty/Number.parseInt.js +0 -1
  462. package/src/thirdparty/Object.assign.js +0 -31
  463. package/src/thirdparty/Object.entries.js +0 -11
  464. package/src/thirdparty/Symbol.js +0 -2
  465. package/src/thirdparty/WeakSet.js +0 -27
  466. package/src/thirdparty/events-polyfills.js +0 -89
  467. package/src/thirdparty/fetch.js +0 -1
  468. package/src/thirdparty/template.js +0 -600
  469. package/src/util/CSSTransformUtils.js +0 -90
@@ -1,258 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("Invalidation works", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("Tests that changing a property invalidates", () => {
7
-
8
- const res = browser.executeAsync( async (done) => {
9
-
10
- const el = document.getElementById("gen");
11
-
12
- // Exactly 1 invalidation for each property change
13
- let invalidations = 0;
14
-
15
- const original = el._invalidate;
16
- el._invalidate = () => {
17
- original.apply(el, arguments);
18
- invalidations++;
19
- };
20
-
21
- el.strProp = "new value";
22
- el.boolProp = true;
23
-
24
- await window.RenderScheduler.whenFinished();
25
-
26
- return done(invalidations);
27
- });
28
-
29
- assert.strictEqual(res, 2, "Invalidated 2 times");
30
- });
31
-
32
- it("Tests that setting a property to the same value does not invalidate", () => {
33
-
34
- const res = browser.executeAsync( async (done) => {
35
- const text = "some value";
36
-
37
- const el = document.getElementById("gen");
38
- el.strProp = text;
39
- await window.RenderScheduler.whenFinished();
40
-
41
- let invalidations = 0;
42
-
43
- const original = el._invalidate;
44
- el._invalidate = () => {
45
- original.apply(el, arguments);
46
- invalidations++;
47
- };
48
-
49
- el.strProp = text;
50
-
51
- await window.RenderScheduler.whenFinished();
52
-
53
- return done(invalidations);
54
- });
55
-
56
- assert.strictEqual(res, 0, "Not invalidated");
57
- });
58
-
59
- it("Tests that setting a property of type Object always invalidates", () => {
60
-
61
- const res = browser.executeAsync( async (done) => {
62
- const obj = {};
63
- const otherObj = {};
64
-
65
- const el = document.getElementById("gen");
66
- el.objectProp = obj;
67
- await window.RenderScheduler.whenFinished();
68
-
69
- let invalidations = 0;
70
-
71
- const original = el._invalidate;
72
- el._invalidate = () => {
73
- original.apply(el, arguments);
74
- invalidations++;
75
- };
76
-
77
- el.objectProp = otherObj;
78
-
79
- await window.RenderScheduler.whenFinished();
80
-
81
- return done(invalidations);
82
- });
83
-
84
- assert.strictEqual(res, 1, "Invalidated");
85
- });
86
-
87
- it("Tests that setting an array property always invalidates", () => {
88
-
89
- const res = browser.executeAsync( async (done) => {
90
- const arr = [];
91
- const otherArr = [];
92
-
93
- const el = document.getElementById("gen");
94
- el.multiProp = arr;
95
- await window.RenderScheduler.whenFinished();
96
-
97
- let invalidations = 0;
98
-
99
- const original = el._invalidate;
100
- el._invalidate = () => {
101
- original.apply(el, arguments);
102
- invalidations++;
103
- };
104
-
105
- el.multiProp = otherArr;
106
-
107
- await window.RenderScheduler.whenFinished();
108
-
109
- return done(invalidations);
110
- });
111
-
112
- assert.strictEqual(res, 1, "Invalidated");
113
- });
114
-
115
- it("Tests that adding a child invalidates", () => {
116
-
117
- const res = browser.executeAsync( async (done) => {
118
-
119
- const el = document.getElementById("gen");
120
-
121
- // Number of invalidations may vary with children/slots count, so just check for invalidation
122
- let invalidated = false;
123
-
124
- const original = el._invalidate;
125
- el._invalidate = () => {
126
- original.apply(el, arguments);
127
- invalidated = true;
128
- };
129
-
130
- const div = document.createElement("div");
131
- el.appendChild(div);
132
-
133
- await window.RenderScheduler.whenFinished();
134
-
135
- return done(invalidated);
136
- });
137
-
138
- assert.strictEqual(res, true, "Invalidated");
139
- });
140
-
141
- it("Tests that removing a child invalidates", () => {
142
-
143
- const res = browser.executeAsync( async (done) => {
144
-
145
- const el = document.getElementById("gen");
146
- const div = document.createElement("div");
147
- el.appendChild(div);
148
-
149
- await window.RenderScheduler.whenFinished();
150
-
151
- let invalidated = false;
152
-
153
- const original = el._invalidate;
154
- el._invalidate = () => {
155
- original.apply(el, arguments);
156
- invalidated = true;
157
- };
158
-
159
- el.removeChild(div);
160
-
161
- await window.RenderScheduler.whenFinished();
162
-
163
- return done(invalidated);
164
- });
165
-
166
- assert.strictEqual(res, true, "Invalidated");
167
- });
168
-
169
- it("Tests that modifying textContent invalidates", () => {
170
-
171
- const res = browser.executeAsync( async (done) => {
172
-
173
- const el = document.getElementById("gen");
174
- el.textContent = "test";
175
- await window.RenderScheduler.whenFinished();
176
-
177
- // Number of invalidations may vary with children/slots count, so just check for invalidation
178
- let invalidated = false;
179
-
180
- const original = el._invalidate;
181
- el._invalidate = () => {
182
- original.apply(el, arguments);
183
- invalidated = true;
184
- };
185
-
186
- el.textContent = "test2";
187
-
188
- await window.RenderScheduler.whenFinished();
189
-
190
- return done(invalidated);
191
- });
192
-
193
- assert.strictEqual(res, true, "Invalidated");
194
- });
195
-
196
- it("Tests that modifying nodeValue invalidates", () => {
197
-
198
- const res = browser.executeAsync( async (done) => {
199
-
200
- const el = document.getElementById("gen");
201
- el.textContent = "test";
202
- await window.RenderScheduler.whenFinished();
203
-
204
- // Number of invalidations may vary with children/slots count, so just check for invalidation
205
- let invalidated = false;
206
-
207
- const original = el._invalidate;
208
- el._invalidate = () => {
209
- original.apply(el, arguments);
210
- invalidated = true;
211
- };
212
-
213
- el.childNodes[0].nodeValue = "test2";
214
-
215
- await window.RenderScheduler.whenFinished();
216
-
217
- return done(invalidated);
218
- });
219
-
220
- assert.strictEqual(res, true, "Invalidated");
221
- });
222
-
223
- it("Tests that multiple invalidations result in a single rendering", () => {
224
-
225
- const res = browser.executeAsync( async (done) => {
226
-
227
- const el = document.getElementById("gen");
228
-
229
- const operations = {
230
- invalidation: 0,
231
- rendering: 0,
232
- };
233
-
234
- const originalInvalidate = el._invalidate;
235
- el._invalidate = () => {
236
- originalInvalidate.apply(el, arguments);
237
- operations.invalidation++;
238
- };
239
-
240
- const originalRender = el._render;
241
- el._render = () => {
242
- originalRender.apply(el, arguments);
243
- operations.rendering++;
244
- };
245
-
246
- el.strProp = "new";
247
- el.strProp = "newer";
248
-
249
- await window.RenderScheduler.whenFinished();
250
-
251
- return done(operations);
252
- });
253
-
254
- assert.strictEqual(res.invalidation, 2, "Invalidated 2 times");
255
- assert.strictEqual(res.rendering, 1, "Rendered once");
256
- });
257
-
258
- });
@@ -1,93 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("Lifecycle works", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("Tests element creation callbacks", () => {
7
-
8
- const res = browser.executeAsync( async (done) => {
9
- const creationCallbacks = ["onBeforeRendering", "onAfterRendering", "onEnterDOM"];
10
- const calledCallbacks = [];
11
-
12
- const el = document.createElement("ui5-test-generic");
13
-
14
- creationCallbacks.forEach(callback => {
15
- const original = el[callback];
16
- el[callback] = () => {
17
- calledCallbacks.push(callback);
18
- original.call(el);
19
- };
20
- });
21
-
22
- document.body.appendChild(el);
23
- await window.RenderScheduler.whenFinished();
24
-
25
- return done(calledCallbacks);
26
- });
27
-
28
- assert.strictEqual(res.length, 3, "All 3 callbacks called");
29
- assert.strictEqual(res[0], "onBeforeRendering", "onBeforeRendering called first");
30
- assert.strictEqual(res[1], "onAfterRendering", "onAfterRendering called second");
31
- assert.strictEqual(res[2], "onEnterDOM", "onEnterDOM called third");
32
- });
33
-
34
- it("Tests element invalidation callbacks", () => {
35
-
36
- const res = browser.executeAsync( async (done) => {
37
- const invalidationCallbacks = ["onBeforeRendering", "onAfterRendering"];
38
- const calledCallbacks = [];
39
-
40
- const el = document.createElement("ui5-test-generic");
41
- document.body.appendChild(el);
42
-
43
- await window.RenderScheduler.whenFinished();
44
-
45
- el.strProp = "some string";
46
-
47
- invalidationCallbacks.forEach(callback => {
48
- const original = el[callback];
49
- el[callback] = () => {
50
- calledCallbacks.push(callback);
51
- original.call(el);
52
- };
53
- });
54
-
55
- await window.RenderScheduler.whenFinished();
56
-
57
- return done(calledCallbacks);
58
- });
59
-
60
- assert.strictEqual(res.length, 2, "All 2 callbacks called");
61
- assert.strictEqual(res[0], "onBeforeRendering", "onBeforeRendering called first");
62
- assert.strictEqual(res[1], "onAfterRendering", "onAfterRendering called second");
63
- });
64
-
65
- it("Tests element destruction callback", () => {
66
-
67
- const res = browser.executeAsync( async (done) => {
68
- const destructionCallbacks = ["onExitDOM"];
69
- const calledCallbacks = [];
70
-
71
- const el = document.createElement("ui5-test-generic");
72
-
73
- destructionCallbacks.forEach(callback => {
74
- const original = el[callback];
75
- el[callback] = () => {
76
- calledCallbacks.push(callback);
77
- original.call(el);
78
- };
79
- });
80
-
81
- document.body.appendChild(el);
82
- document.body.removeChild(el);
83
-
84
- await window.RenderScheduler.whenFinished();
85
-
86
- return done(calledCallbacks);
87
- });
88
-
89
- assert.strictEqual(res.length, 1, "Only 1 callback was called");
90
- assert.strictEqual(res[0], "onExitDOM", "onExitDOM called");
91
- });
92
-
93
- });
@@ -1,101 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("Metadata slot listenFor works", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("Tests that changing a listenFor property of a child invalidates the parent", () => {
7
-
8
- const res = browser.executeAsync( async (done) => {
9
- const parent = document.getElementById("parent");
10
- const child = document.getElementById("child1");
11
-
12
- const parentInvalidate = parent._invalidate;
13
- let parentInvalidated = false;
14
-
15
- parent._invalidate = () => {
16
- parentInvalidate.apply(parent, arguments);
17
- parentInvalidated = true;
18
- };
19
-
20
- child.prop1 = "a"; // child1(default slot) prop1 -> invalidates
21
-
22
- await window.RenderScheduler.whenFinished();
23
-
24
- return done(parentInvalidated);
25
- });
26
-
27
- assert.strictEqual(res, true, "Parent invalidated");
28
- });
29
-
30
- it("Tests that changing a non-listenFor property of a child does not invalidate the parent", () => {
31
-
32
- const res = browser.executeAsync( async (done) => {
33
- const parent = document.getElementById("parent");
34
- const child = document.getElementById("child1");
35
-
36
- const parentInvalidate = parent._invalidate;
37
- let parentInvalidated = false;
38
-
39
- parent._invalidate = () => {
40
- parentInvalidate.apply(parent, arguments);
41
- parentInvalidated = true;
42
- };
43
-
44
- child.prop2 = "b"; // child1(default slot) prop 2 -> does not
45
-
46
- await window.RenderScheduler.whenFinished();
47
-
48
- return done(parentInvalidated);
49
- });
50
-
51
- assert.strictEqual(res, false, "Parent not invalidated");
52
- });
53
-
54
- it("Tests that listenFor include works", () => {
55
-
56
- const res = browser.executeAsync( async (done) => {
57
- const parent = document.getElementById("parent");
58
- const child = document.getElementById("child2");
59
-
60
- const parentInvalidate = parent._invalidate;
61
- let parentInvalidated = false;
62
-
63
- parent._invalidate = () => {
64
- parentInvalidate.apply(parent, arguments);
65
- parentInvalidated = true;
66
- };
67
-
68
- child.prop1 = "c"; // child2(items slot) prop1 invalidates
69
-
70
- await window.RenderScheduler.whenFinished();
71
-
72
- return done(parentInvalidated);
73
- });
74
-
75
- assert.strictEqual(res, true, "Parent invalidated");
76
- });
77
-
78
- it("Tests that listenFor exclude works", () => {
79
-
80
- const res = browser.executeAsync( async (done) => {
81
- const parent = document.getElementById("parent");
82
- const child = document.getElementById("child2");
83
-
84
- const parentInvalidate = parent._invalidate;
85
- let parentInvalidated = false;
86
-
87
- parent._invalidate = () => {
88
- parentInvalidate.apply(parent, arguments);
89
- parentInvalidated = true;
90
- };
91
-
92
- child.prop3 = "d"; //child2(items slot) prop3 does not
93
-
94
- await window.RenderScheduler.whenFinished();
95
-
96
- return done(parentInvalidated);
97
- });
98
-
99
- assert.strictEqual(res, false, "Parent not invalidated");
100
- });
101
- });
@@ -1,40 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("Metadata can be extended", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("When extending metadata, both own and extended entities exist in the resulting metadata", () => {
7
-
8
- const res = browser.execute( () => {
9
-
10
- const el = document.getElementById("genExt");
11
- const m = el.constructor.getMetadata();
12
-
13
- const ok = !!m.getProperties().strProp &&
14
- !!m.getProperties().extProp &&
15
- !!m.getSlots().default &&
16
- !!m.getSlots().extSlot;
17
-
18
- return ok;
19
- });
20
-
21
- assert.strictEqual(res, true, "Metadata properly extended");
22
- });
23
-
24
- it("When extending metadata, property defaultValue can be modified", () => {
25
-
26
- const res = browser.execute( () => {
27
-
28
- const el = document.getElementById("genExt");
29
- const m = el.constructor.getMetadata();
30
-
31
- const ok = !!m.getProperties().strProp &&
32
- m.getProperties().strProp.defaultValue === "Ext";
33
-
34
- return ok;
35
- });
36
-
37
- assert.strictEqual(res, true, "Property defaultValue changed");
38
- });
39
-
40
- });
@@ -1,12 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("Properties can only have values, restricted to their types", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("String property enforced to string", () => {
7
- const el = browser.$("#gen");
8
- el.setProperty("strProp", 5);
9
- assert.strictEqual(el.getProperty("strProp"), "5", "String property is string");
10
- });
11
-
12
- });
@@ -1,65 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("Properties and attributes convert to each other", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("Tests that properties with default values are initialized with the default value", () => {
7
- const el = browser.$("#gen");
8
-
9
- assert.strictEqual(el.getProperty("defaultValueProp"), "Hello", "defaultValueProp is properly initialized");
10
- });
11
-
12
- it("Tests that prop-attr conversion works for string properties", () => {
13
- const el = browser.$("#gen");
14
-
15
- el.setProperty("strProp", "test1");
16
- assert.strictEqual(el.getAttribute("str-prop"), "test1", "Attribute affected by property change");
17
-
18
- el.setAttribute("str-prop", "test2");
19
- assert.strictEqual(el.getProperty("strProp"), "test2", "Property affected by attribute change");
20
- });
21
-
22
- it("Tests that prop-attr conversion works for boolean properties", () => {
23
- const el = browser.$("#gen");
24
-
25
- el.setProperty("boolProp", true);
26
- assert.strictEqual(el.getAttribute("bool-prop"), "", "Attribute affected by property change");
27
-
28
- el.setProperty("boolProp", false);
29
- assert.strictEqual(el.getAttribute("bool-prop"), null, "Attribute affected by property change");
30
-
31
- el.setAttribute("bool-prop", "");
32
- assert.strictEqual(el.getProperty("boolProp"), true, "Property affected by attribute change");
33
-
34
- el.removeAttribute("bool-prop");
35
- assert.strictEqual(el.getProperty("boolProp"), false, "Property affected by attribute change");
36
- });
37
-
38
- it("Tests that object properties have no attributes", () => {
39
- const el = browser.$("#gen");
40
-
41
- el.setProperty("objectProp", {});
42
- assert.strictEqual(el.getAttribute("object-prop"), null, "Attribute not there");
43
- });
44
-
45
- it("Tests that array properties have no attributes", () => {
46
- const el = browser.$("#gen");
47
-
48
- el.setProperty("multiProp", ["a", "b"]);
49
- assert.strictEqual(el.getAttribute("multi-prop"), null, "Attribute not there");
50
- });
51
-
52
- it("Tests that noAttribute properties have no attributes", () => {
53
- const el = browser.$("#gen");
54
-
55
- el.setProperty("noAttributeProp", "some value");
56
- assert.strictEqual(el.getAttribute("no-attribute-prop"), null, "Attribute not there");
57
- });
58
-
59
- it("Tests that properties with default values do not automatically set attributes", () => {
60
- const el = browser.$("#gen");
61
-
62
- assert.strictEqual(el.getAttribute("default-value-prop"), null, "Attribute not there for defaultValueProp");
63
- });
64
-
65
- });
@@ -1,22 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("The framework can define web components", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("Tests that element's Shadow DOM is rendered if it has a template", () => {
7
- const res = browser.execute(() => {
8
- return document.getElementById("gen").shadowRoot;
9
- });
10
-
11
- assert.strictEqual(!!res, true, "Shadow root created");
12
- assert.strictEqual(browser.$("#gen").shadow$("div>p").isExisting(), true, "Shadow root content created");
13
- });
14
-
15
- it("Tests that element's Shadow DOM is not rendered if it has no template", () => {
16
- const res = browser.execute(() => {
17
- return document.getElementById("noShadow").shadowRoot;
18
- });
19
-
20
- assert.strictEqual(!!res, false, "Shadow root not created");
21
- });
22
- });
@@ -1,34 +0,0 @@
1
- const assert = require("chai").assert;
2
-
3
- describe("Slots work properly", () => {
4
- browser.url("http://localhost:9191/test-resources/pages/AllTestElements.html");
5
-
6
- it("Tests that properties exist on the element for each slot", () => {
7
- const res = browser.execute(() => {
8
- const expectedValues = {};
9
-
10
- const el = document.getElementById("withContent");
11
-
12
- expectedValues.default = el.default.length > 0;
13
- expectedValues.other = el.other.length === 2;
14
- expectedValues.individual = el.individual.length === 2;
15
- expectedValues.items = el.items.length === 2;
16
- expectedValues.named = el.named === undefined;
17
-
18
- return expectedValues;
19
- });
20
-
21
- assert.strictEqual(res.default, true, "There are elements in the default property");
22
- assert.strictEqual(res.other, true, "There are 2 elements in the other property");
23
- assert.strictEqual(res.individual, true, "There are 2 elements in the individual property");
24
- assert.strictEqual(res.items, true, "There are 2 elements in the items property");
25
- assert.strictEqual(res.named, true, "There is no named property as propertyName changed it to items");
26
- });
27
-
28
- it("Tests that individualSlots modifies the slot property of slotted children", () => {
29
- assert.strictEqual(browser.$$("#withContent>[slot=individual]").length, 0, "There are no children with slot=individual");
30
- assert.strictEqual(browser.$$("#withContent>[slot=individual-1]").length, 1, "The slot of the first child became individual-1");
31
- assert.strictEqual(browser.$$("#withContent>[slot=individual-2]").length, 1, "The slot of the second child became individual-2");
32
- });
33
-
34
- });
@@ -1,67 +0,0 @@
1
- import createStyleInHead from "../util/createStyleInHead.js";
2
-
3
- let ponyfillTimer;
4
-
5
- const ponyfillNeeded = () => !!window.CSSVarsPonyfill;
6
-
7
- const runPonyfill = () => {
8
- ponyfillTimer = undefined;
9
-
10
- window.CSSVarsPonyfill.cssVars({
11
- rootElement: document.head,
12
- include: "style[data-ui5-theme-properties],style[data-ui5-element-styles]",
13
- silent: true,
14
- });
15
- };
16
-
17
- const schedulePonyfill = () => {
18
- if (!ponyfillTimer) {
19
- ponyfillTimer = window.setTimeout(runPonyfill, 0);
20
- }
21
- };
22
-
23
- /**
24
- * Creates/updates a style element holding all CSS Custom Properties
25
- * @param cssText
26
- * @param packageName
27
- */
28
- const injectThemeProperties = (cssText, packageName) => {
29
- // Needed for all browsers
30
- const styleElement = document.head.querySelector(`style[data-ui5-theme-properties="${packageName}"]`);
31
- if (styleElement) {
32
- styleElement.textContent = cssText || ""; // in case of undefined
33
- } else {
34
- const attributes = {
35
- "data-ui5-theme-properties": packageName,
36
- };
37
- createStyleInHead(cssText, attributes);
38
- }
39
-
40
- // When changing the theme, run the ponyfill immediately
41
- if (ponyfillNeeded()) {
42
- runPonyfill();
43
- }
44
- };
45
-
46
- /**
47
- * Creates a style element holding the CSS for a web component (and resolves CSS Custom Properties for IE)
48
- * @param tagName
49
- * @param cssText
50
- */
51
- const injectWebComponentStyle = (tagName, cssText) => {
52
- // Edge and IE
53
- createStyleInHead(cssText, {
54
- "data-ui5-element-styles": tagName,
55
- "disabled": "disabled",
56
- });
57
-
58
- // When injecting component styles, more might come in the same tick, so run the ponyfill async (to avoid double work)
59
- if (ponyfillNeeded()) {
60
- schedulePonyfill();
61
- }
62
- };
63
-
64
- export {
65
- injectThemeProperties,
66
- injectWebComponentStyle,
67
- };