@ui5/webcomponents-base 0.0.0-389bdbabc → 0.0.0-453158269

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 (473) hide show
  1. package/.eslintignore +4 -0
  2. package/CHANGELOG.md +407 -0
  3. package/README.md +26 -2
  4. package/bundle.esm.js +18 -12
  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 +80 -34
  36. package/dist/assets-meta/IconCollectionsAlias.js +18 -0
  37. package/dist/config/AnimationMode.js +16 -2
  38. package/dist/config/CalendarType.js +7 -7
  39. package/dist/config/FormatSettings.js +5 -1
  40. package/dist/config/Icons.js +52 -0
  41. package/dist/config/Language.js +62 -3
  42. package/dist/config/NoConflict.js +10 -3
  43. package/dist/config/Theme.js +32 -3
  44. package/dist/css/BusyIndicator.css +80 -0
  45. package/dist/css/FontFace.css +75 -0
  46. package/dist/css/OverrideFontFace.css +32 -0
  47. package/dist/css/SystemCSSVars.css +17 -0
  48. package/dist/delegate/ItemNavigation.js +245 -168
  49. package/dist/delegate/ResizeHandler.js +78 -38
  50. package/dist/delegate/ScrollEnablement.js +122 -14
  51. package/dist/features/F6Navigation.js +106 -0
  52. package/dist/features/OpenUI5Enablement.js +119 -0
  53. package/dist/features/OpenUI5Support.js +125 -0
  54. package/dist/generated/AssetParameters.js +13 -0
  55. package/dist/generated/VersionInfo.js +10 -0
  56. package/dist/generated/css/BusyIndicator.css.js +5 -0
  57. package/dist/generated/css/FontFace.css.js +5 -0
  58. package/dist/generated/css/OverrideFontFace.css.js +5 -0
  59. package/dist/generated/css/SystemCSSVars.css.js +5 -0
  60. package/dist/getSharedResource.js +30 -0
  61. package/dist/i18nBundle.js +62 -11
  62. package/dist/isLegacyBrowser.js +3 -0
  63. package/dist/{Locale.js → 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/{src/util → dist/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/resources/bundle.esm.js +18 -7436
  76. package/dist/resources/bundle.esm.js.map +1 -1
  77. package/dist/sap/base/Log.js +241 -0
  78. package/dist/sap/base/assert.js +8 -0
  79. package/dist/sap/base/security/URLListValidator.js +148 -0
  80. package/dist/sap/base/security/encodeCSS.js +14 -0
  81. package/dist/sap/base/security/encodeXML.js +23 -0
  82. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  83. package/dist/sap/base/strings/toHex.js +8 -0
  84. package/dist/sap/base/util/now.js +7 -0
  85. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  86. package/dist/test-resources/assets/Themes.js +11 -5
  87. package/dist/test-resources/elements/Generic.js +1 -0
  88. package/dist/test-resources/elements/Parent.js +7 -2
  89. package/dist/test-resources/elements/WithStaticArea.js +77 -0
  90. package/dist/test-resources/pages/AllTestElements.html +5 -5
  91. package/dist/test-resources/pages/Configuration.html +0 -2
  92. package/dist/test-resources/pages/ConfigurationScript.html +1 -3
  93. package/dist/test-resources/pages/assets/messagebundle_de.properties +1 -0
  94. package/dist/test-resources/pages/assets/messagebundle_en.properties +1 -0
  95. package/dist/test-resources/pages/assets/messagebundle_es.properties +1 -0
  96. package/dist/test-resources/pages/assets/messagebundle_fr.properties +1 -0
  97. package/dist/test-resources/pages/i18n.html +33 -0
  98. package/dist/test-resources/specs/ConfigurationChange.spec.js +11 -9
  99. package/dist/test-resources/specs/ConfigurationScript.spec.js +25 -23
  100. package/dist/test-resources/specs/ConfigurationURL.spec.js +65 -17
  101. package/dist/test-resources/specs/CustomTheme.spec.js +9 -7
  102. package/dist/test-resources/specs/EventProvider.spec.js +63 -0
  103. package/dist/test-resources/specs/StaticArea.spec.js +78 -0
  104. package/dist/test-resources/specs/Theming.spec.js +23 -10
  105. package/dist/test-resources/specs/UI5ElementInvalidation.js +54 -70
  106. package/dist/test-resources/specs/UI5ElementLifecycle.js +19 -14
  107. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +25 -51
  108. package/dist/test-resources/specs/UI5ElementMetadataExt.js +9 -7
  109. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +7 -5
  110. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +37 -35
  111. package/dist/test-resources/specs/UI5ElementShadowDOM.js +10 -8
  112. package/dist/test-resources/specs/UI5ElementSlots.js +10 -8
  113. package/dist/theming/CustomStyle.js +47 -6
  114. package/dist/theming/ThemeLoaded.js +22 -0
  115. package/dist/theming/applyTheme.js +79 -0
  116. package/dist/theming/getConstructableStyle.js +30 -0
  117. package/dist/theming/getEffectiveLinksHrefs.js +27 -0
  118. package/dist/theming/getEffectiveStyle.js +39 -0
  119. package/dist/theming/getStylesString.js +15 -0
  120. package/dist/theming/getThemeDesignerTheme.js +87 -0
  121. package/dist/theming/preloadLinks.js +23 -0
  122. package/dist/thirdparty/_merge.js +32 -0
  123. package/dist/thirdparty/isPlainObject.js +18 -0
  124. package/dist/thirdparty/merge.js +10 -0
  125. package/dist/types/CSSColor.js +9 -0
  126. package/{src/dates → dist/types}/CalendarType.js +2 -2
  127. package/dist/types/DataType.js +13 -1
  128. package/dist/types/Float.js +14 -0
  129. package/dist/types/Integer.js +4 -0
  130. package/dist/types/InvisibleMessageMode.js +30 -0
  131. package/dist/types/ItemNavigationBehavior.js +2 -7
  132. package/dist/types/NavigationMode.js +1 -0
  133. package/dist/types/PopupState.js +1 -1
  134. package/dist/types/ValueState.js +2 -1
  135. package/dist/updateShadowRoot.js +30 -0
  136. package/dist/util/AriaLabelHelper.js +41 -0
  137. package/dist/util/Caret.js +45 -0
  138. package/dist/util/ColorConversion.js +370 -0
  139. package/dist/util/FocusableElements.js +30 -11
  140. package/dist/util/HTMLSanitizer.js +7 -0
  141. package/dist/util/InvisibleMessage.js +60 -0
  142. package/dist/util/PopupUtils.js +93 -0
  143. package/dist/util/SlotsHelper.js +43 -0
  144. package/dist/util/StringHelper.js +17 -2
  145. package/dist/util/TabbableElements.js +9 -2
  146. package/dist/util/arraysAreEqual.js +15 -0
  147. package/dist/util/clamp.js +12 -0
  148. package/dist/util/createLinkInHead.js +19 -0
  149. package/dist/util/debounce.js +17 -0
  150. package/dist/util/detectNavigatorLanguage.js +3 -1
  151. package/dist/util/escapeRegex.js +10 -0
  152. package/dist/util/findNodeOwner.js +35 -0
  153. package/dist/util/generateHighlightedMarkup.js +42 -0
  154. package/dist/util/getActiveElement.js +11 -0
  155. package/dist/util/getClassCopy.js +10 -0
  156. package/dist/util/getEffectiveContentDensity.js +5 -0
  157. package/dist/util/getFileExtension.js +21 -0
  158. package/dist/util/getNormalizedTarget.js +16 -0
  159. package/dist/util/getSingletonElementInstance.js +13 -0
  160. package/dist/util/isElementInView.js +15 -0
  161. package/dist/util/isNodeHidden.js +1 -5
  162. package/dist/util/isNodeTabbable.js +4 -4
  163. package/dist/util/isValidPropertyName.js +11 -2
  164. package/dist/util/setToArray.js +10 -0
  165. package/hash.txt +1 -0
  166. package/index.js +1 -1
  167. package/lib/generate-asset-parameters/index.js +25 -0
  168. package/lib/generate-styles/index.js +26 -0
  169. package/lib/generate-version-info/index.js +32 -0
  170. package/package-scripts.js +34 -18
  171. package/package.json +21 -14
  172. package/src/AssetRegistry.js +8 -6
  173. package/src/Boot.js +59 -0
  174. package/src/CSP.js +59 -0
  175. package/src/CustomElementsRegistry.js +95 -0
  176. package/src/CustomElementsScope.js +30 -0
  177. package/src/CustomElementsScopeUtils.js +108 -0
  178. package/src/DOMObserver.js +65 -0
  179. package/src/Device.js +71 -773
  180. package/src/EventProvider.js +38 -26
  181. package/src/FeaturesRegistry.js +4 -1
  182. package/src/FontFace.js +20 -56
  183. package/src/InitialConfiguration.js +64 -17
  184. package/src/Keys.js +295 -0
  185. package/src/ManagedStyles.js +83 -0
  186. package/src/MediaRange.js +109 -0
  187. package/src/PropertiesFileFormat.js +95 -0
  188. package/src/Render.js +175 -0
  189. package/src/RenderQueue.js +41 -17
  190. package/src/RenderScheduler.js +24 -145
  191. package/src/Runtimes.js +107 -0
  192. package/src/StaticArea.js +1 -39
  193. package/src/StaticAreaItem.js +67 -39
  194. package/src/SystemCSSVars.js +10 -0
  195. package/src/Theming.js +3 -44
  196. package/src/UI5Element.js +497 -306
  197. package/src/UI5ElementMetadata.js +198 -19
  198. package/src/asset-registries/Icons.js +125 -14
  199. package/src/asset-registries/Illustrations.js +30 -0
  200. package/src/asset-registries/LocaleData.js +114 -51
  201. package/src/asset-registries/Themes.js +37 -30
  202. package/src/asset-registries/i18n.js +80 -34
  203. package/src/assets-meta/IconCollectionsAlias.js +18 -0
  204. package/src/config/AnimationMode.js +16 -2
  205. package/src/config/CalendarType.js +7 -7
  206. package/src/config/FormatSettings.js +5 -1
  207. package/src/config/Icons.js +52 -0
  208. package/src/config/Language.js +62 -3
  209. package/src/config/NoConflict.js +10 -3
  210. package/src/config/Theme.js +32 -3
  211. package/src/css/BusyIndicator.css +80 -0
  212. package/src/css/FontFace.css +75 -0
  213. package/src/css/OverrideFontFace.css +32 -0
  214. package/src/css/SystemCSSVars.css +17 -0
  215. package/src/delegate/ItemNavigation.js +245 -168
  216. package/src/delegate/ResizeHandler.js +78 -38
  217. package/src/delegate/ScrollEnablement.js +122 -14
  218. package/src/features/F6Navigation.js +106 -0
  219. package/src/features/OpenUI5Enablement.js +119 -0
  220. package/src/features/OpenUI5Support.js +125 -0
  221. package/src/getSharedResource.js +30 -0
  222. package/src/i18nBundle.js +62 -11
  223. package/src/isLegacyBrowser.js +3 -0
  224. package/src/{Locale.js → locale/Locale.js} +0 -10
  225. package/src/locale/RTLAwareRegistry.js +14 -0
  226. package/src/locale/applyDirection.js +17 -0
  227. package/src/locale/directionChange.js +32 -0
  228. package/src/locale/getEffectiveDir.js +28 -0
  229. package/src/locale/getLocale.js +41 -0
  230. package/src/locale/languageChange.js +22 -0
  231. package/src/locale/nextFallbackLocale.js +28 -0
  232. package/{dist/util → src/locale}/normalizeLocale.js +8 -31
  233. package/src/renderer/LitRenderer.js +44 -7
  234. package/src/renderer/directives/style-map.js +72 -0
  235. package/src/renderer/executeTemplate.js +34 -0
  236. package/src/theming/CustomStyle.js +47 -6
  237. package/src/theming/ThemeLoaded.js +22 -0
  238. package/src/theming/applyTheme.js +79 -0
  239. package/src/theming/getConstructableStyle.js +30 -0
  240. package/src/theming/getEffectiveLinksHrefs.js +27 -0
  241. package/src/theming/getEffectiveStyle.js +39 -0
  242. package/src/theming/getStylesString.js +15 -0
  243. package/src/theming/getThemeDesignerTheme.js +87 -0
  244. package/src/theming/preloadLinks.js +23 -0
  245. package/src/thirdparty/_merge.js +32 -0
  246. package/src/thirdparty/isPlainObject.js +18 -0
  247. package/src/thirdparty/merge.js +10 -0
  248. package/src/types/CSSColor.js +9 -0
  249. package/{dist/dates → src/types}/CalendarType.js +2 -2
  250. package/src/types/DataType.js +13 -1
  251. package/src/types/Float.js +14 -0
  252. package/src/types/Integer.js +4 -0
  253. package/src/types/InvisibleMessageMode.js +30 -0
  254. package/src/types/ItemNavigationBehavior.js +2 -7
  255. package/src/types/NavigationMode.js +1 -0
  256. package/src/types/PopupState.js +1 -1
  257. package/src/types/ValueState.js +2 -1
  258. package/src/updateShadowRoot.js +30 -0
  259. package/src/util/AriaLabelHelper.js +41 -0
  260. package/src/util/Caret.js +45 -0
  261. package/src/util/ColorConversion.js +370 -0
  262. package/src/util/FocusableElements.js +30 -11
  263. package/src/util/HTMLSanitizer.js +7 -0
  264. package/src/util/InvisibleMessage.js +60 -0
  265. package/src/util/PopupUtils.js +93 -0
  266. package/src/util/SlotsHelper.js +43 -0
  267. package/src/util/StringHelper.js +17 -2
  268. package/src/util/TabbableElements.js +9 -2
  269. package/src/util/arraysAreEqual.js +15 -0
  270. package/src/util/clamp.js +12 -0
  271. package/src/util/createLinkInHead.js +19 -0
  272. package/src/util/debounce.js +17 -0
  273. package/src/util/detectNavigatorLanguage.js +3 -1
  274. package/src/util/escapeRegex.js +10 -0
  275. package/src/util/findNodeOwner.js +35 -0
  276. package/src/util/generateHighlightedMarkup.js +42 -0
  277. package/src/util/getActiveElement.js +11 -0
  278. package/src/util/getClassCopy.js +10 -0
  279. package/src/util/getEffectiveContentDensity.js +5 -0
  280. package/src/util/getFileExtension.js +21 -0
  281. package/src/util/getNormalizedTarget.js +16 -0
  282. package/src/util/getSingletonElementInstance.js +13 -0
  283. package/src/util/isElementInView.js +15 -0
  284. package/src/util/isNodeHidden.js +1 -5
  285. package/src/util/isNodeTabbable.js +4 -4
  286. package/src/util/isValidPropertyName.js +11 -2
  287. package/src/util/setToArray.js +10 -0
  288. package/used-modules.txt +10 -0
  289. package/bundle.es5.js +0 -28
  290. package/dist/Assets.js +0 -2
  291. package/dist/CSS.js +0 -48
  292. package/dist/FormatSettings.js +0 -31
  293. package/dist/LocaleProvider.js +0 -34
  294. package/dist/ResourceLoaderOverrides.js +0 -38
  295. package/dist/SVGIconRegistry.js +0 -54
  296. package/dist/boot.js +0 -25
  297. package/dist/compatibility/DOMObserver.js +0 -62
  298. package/dist/compatibility/patchNodeValue.js +0 -24
  299. package/dist/compatibility/whenPolyfillLoaded.js +0 -26
  300. package/dist/dates/CalendarDate.js +0 -203
  301. package/dist/dates/CalendarUtils.js +0 -99
  302. package/dist/delegate/CustomResize.js +0 -78
  303. package/dist/delegate/NativeResize.js +0 -44
  304. package/dist/events/PseudoEvents.js +0 -58
  305. package/dist/features/browsersupport/Edge.js +0 -6
  306. package/dist/features/browsersupport/IE11.js +0 -41
  307. package/dist/features/calendar/Buddhist.js +0 -1
  308. package/dist/features/calendar/Islamic.js +0 -1
  309. package/dist/features/calendar/Japanese.js +0 -1
  310. package/dist/features/calendar/Persian.js +0 -1
  311. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5598
  312. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5598
  313. package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5598
  314. package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4789
  315. package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4801
  316. package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5245
  317. package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4696
  318. package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4797
  319. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4798
  320. package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4796
  321. package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4694
  322. package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4694
  323. package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4777
  324. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4769
  325. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4778
  326. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4784
  327. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4778
  328. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4779
  329. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4778
  330. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4779
  331. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4780
  332. package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4779
  333. package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4719
  334. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4721
  335. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4720
  336. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4721
  337. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4721
  338. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4722
  339. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4720
  340. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4722
  341. package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4721
  342. package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4776
  343. package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4704
  344. package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -4816
  345. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4788
  346. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4788
  347. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4782
  348. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4806
  349. package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4788
  350. package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5133
  351. package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4680
  352. package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4910
  353. package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4664
  354. package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4500
  355. package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4757
  356. package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4757
  357. package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4599
  358. package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4537
  359. package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4574
  360. package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5234
  361. package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -4902
  362. package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4352
  363. package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4784
  364. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4790
  365. package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4790
  366. package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5223
  367. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4703
  368. package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4753
  369. package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -4881
  370. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5157
  371. package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5157
  372. package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5125
  373. package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5105
  374. package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -4908
  375. package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -4818
  376. package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4633
  377. package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4791
  378. package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5126
  379. package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4510
  380. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4469
  381. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4479
  382. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4479
  383. package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4565
  384. package/dist/json-imports/LocaleData.js +0 -171
  385. package/dist/renderer/ifDefined.js +0 -21
  386. package/dist/resources/bundle.es5.js +0 -12643
  387. package/dist/resources/bundle.es5.js.map +0 -1
  388. package/dist/shims/Core-shim.js +0 -52
  389. package/dist/shims/jquery-shim.js +0 -89
  390. package/dist/theming/StyleInjection.js +0 -67
  391. package/dist/thirdparty/Array.from.js +0 -16
  392. package/dist/thirdparty/Array.prototype.fill.js +0 -44
  393. package/dist/thirdparty/Array.prototype.find.js +0 -46
  394. package/dist/thirdparty/Array.prototype.includes.js +0 -51
  395. package/dist/thirdparty/Element.prototype.closest.js +0 -11
  396. package/dist/thirdparty/Element.prototype.matches.js +0 -6
  397. package/dist/thirdparty/Map.prototype.keys.js +0 -9
  398. package/dist/thirdparty/Number.isInteger.js +0 -5
  399. package/dist/thirdparty/Number.isNaN.js +0 -1
  400. package/dist/thirdparty/Number.parseInt.js +0 -1
  401. package/dist/thirdparty/Object.assign.js +0 -31
  402. package/dist/thirdparty/Object.entries.js +0 -11
  403. package/dist/thirdparty/Symbol.js +0 -2
  404. package/dist/thirdparty/WeakSet.js +0 -27
  405. package/dist/thirdparty/events-polyfills.js +0 -89
  406. package/dist/thirdparty/fetch.js +0 -1
  407. package/dist/thirdparty/template.js +0 -600
  408. package/dist/util/CSSTransformUtils.js +0 -90
  409. package/dist/webcomponentsjs/LICENSE.md +0 -19
  410. package/dist/webcomponentsjs/README.md +0 -229
  411. package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
  412. package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
  413. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
  414. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
  415. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
  416. package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
  417. package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
  418. package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
  419. package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
  420. package/dist/webcomponentsjs/package.json +0 -46
  421. package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
  422. package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
  423. package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
  424. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
  425. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
  426. package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
  427. package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
  428. package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
  429. package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
  430. package/src/Assets.js +0 -2
  431. package/src/CSS.js +0 -48
  432. package/src/FormatSettings.js +0 -31
  433. package/src/LocaleProvider.js +0 -34
  434. package/src/ResourceLoaderOverrides.js +0 -38
  435. package/src/SVGIconRegistry.js +0 -54
  436. package/src/boot.js +0 -25
  437. package/src/compatibility/DOMObserver.js +0 -62
  438. package/src/compatibility/patchNodeValue.js +0 -24
  439. package/src/compatibility/whenPolyfillLoaded.js +0 -26
  440. package/src/dates/CalendarDate.js +0 -203
  441. package/src/dates/CalendarUtils.js +0 -99
  442. package/src/delegate/CustomResize.js +0 -78
  443. package/src/delegate/NativeResize.js +0 -44
  444. package/src/events/PseudoEvents.js +0 -58
  445. package/src/features/browsersupport/Edge.js +0 -6
  446. package/src/features/browsersupport/IE11.js +0 -41
  447. package/src/features/calendar/Buddhist.js +0 -1
  448. package/src/features/calendar/Islamic.js +0 -1
  449. package/src/features/calendar/Japanese.js +0 -1
  450. package/src/features/calendar/Persian.js +0 -1
  451. package/src/json-imports/LocaleData.js +0 -171
  452. package/src/renderer/ifDefined.js +0 -21
  453. package/src/shims/Core-shim.js +0 -52
  454. package/src/shims/jquery-shim.js +0 -89
  455. package/src/theming/StyleInjection.js +0 -67
  456. package/src/thirdparty/Array.from.js +0 -16
  457. package/src/thirdparty/Array.prototype.fill.js +0 -44
  458. package/src/thirdparty/Array.prototype.find.js +0 -46
  459. package/src/thirdparty/Array.prototype.includes.js +0 -51
  460. package/src/thirdparty/Element.prototype.closest.js +0 -11
  461. package/src/thirdparty/Element.prototype.matches.js +0 -6
  462. package/src/thirdparty/Map.prototype.keys.js +0 -9
  463. package/src/thirdparty/Number.isInteger.js +0 -5
  464. package/src/thirdparty/Number.isNaN.js +0 -1
  465. package/src/thirdparty/Number.parseInt.js +0 -1
  466. package/src/thirdparty/Object.assign.js +0 -31
  467. package/src/thirdparty/Object.entries.js +0 -11
  468. package/src/thirdparty/Symbol.js +0 -2
  469. package/src/thirdparty/WeakSet.js +0 -27
  470. package/src/thirdparty/events-polyfills.js +0 -89
  471. package/src/thirdparty/fetch.js +0 -1
  472. package/src/thirdparty/template.js +0 -600
  473. package/src/util/CSSTransformUtils.js +0 -90
@@ -0,0 +1,79 @@
1
+ import { getThemeProperties, getRegisteredPackages, isThemeRegistered } from "../asset-registries/Themes.js";
2
+ import { removeStyle, createOrUpdateStyle } from "../ManagedStyles.js";
3
+ import getThemeDesignerTheme from "./getThemeDesignerTheme.js";
4
+ import { fireThemeLoaded } from "./ThemeLoaded.js";
5
+ import { getFeature } from "../FeaturesRegistry.js";
6
+
7
+ const BASE_THEME_PACKAGE = "@ui5/webcomponents-theming";
8
+
9
+ const isThemeBaseRegistered = () => {
10
+ const registeredPackages = getRegisteredPackages();
11
+ return registeredPackages.has(BASE_THEME_PACKAGE);
12
+ };
13
+
14
+ const loadThemeBase = async theme => {
15
+ if (!isThemeBaseRegistered()) {
16
+ return;
17
+ }
18
+
19
+ const cssData = await getThemeProperties(BASE_THEME_PACKAGE, theme);
20
+ if (cssData) {
21
+ createOrUpdateStyle(cssData, "data-ui5-theme-properties", BASE_THEME_PACKAGE);
22
+ }
23
+ };
24
+
25
+ const deleteThemeBase = () => {
26
+ removeStyle("data-ui5-theme-properties", BASE_THEME_PACKAGE);
27
+ };
28
+
29
+ const loadComponentPackages = async theme => {
30
+ const registeredPackages = getRegisteredPackages();
31
+ registeredPackages.forEach(async packageName => {
32
+ if (packageName === BASE_THEME_PACKAGE) {
33
+ return;
34
+ }
35
+
36
+ const cssData = await getThemeProperties(packageName, theme);
37
+ if (cssData) {
38
+ createOrUpdateStyle(cssData, "data-ui5-theme-properties", packageName);
39
+ }
40
+ });
41
+ };
42
+
43
+ const detectExternalTheme = () => {
44
+ // If theme designer theme is detected, use this
45
+ const extTheme = getThemeDesignerTheme();
46
+ if (extTheme) {
47
+ return extTheme;
48
+ }
49
+
50
+ // If OpenUI5Support is enabled, try to find out if it loaded variables
51
+ const OpenUI5Support = getFeature("OpenUI5Support");
52
+ if (OpenUI5Support) {
53
+ const varsLoaded = OpenUI5Support.cssVariablesLoaded();
54
+ if (varsLoaded) {
55
+ return {
56
+ themeName: OpenUI5Support.getConfigurationSettingsObject().theme, // just themeName, baseThemeName is only relevant for custom themes
57
+ };
58
+ }
59
+ }
60
+ };
61
+
62
+ const applyTheme = async theme => {
63
+ const extTheme = detectExternalTheme();
64
+
65
+ // Only load theme_base properties if there is no externally loaded theme, or there is, but it is not being loaded
66
+ if (!extTheme || theme !== extTheme.themeName) {
67
+ await loadThemeBase(theme);
68
+ } else {
69
+ deleteThemeBase();
70
+ }
71
+
72
+ // Always load component packages properties. For non-registered themes, try with the base theme, if any
73
+ const packagesTheme = isThemeRegistered(theme) ? theme : extTheme && extTheme.baseThemeName;
74
+ await loadComponentPackages(packagesTheme);
75
+
76
+ fireThemeLoaded(theme);
77
+ };
78
+
79
+ export default applyTheme;
@@ -0,0 +1,30 @@
1
+ import getEffectiveStyle from "./getEffectiveStyle.js";
2
+ import { attachCustomCSSChange } from "./CustomStyle.js";
3
+
4
+ const constructableStyleMap = new Map();
5
+
6
+ attachCustomCSSChange(tag => {
7
+ constructableStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part
8
+ });
9
+
10
+ /**
11
+ * Returns (and caches) a constructable style sheet for a web component class
12
+ * Note: Chrome
13
+ * @param ElementClass
14
+ * @returns {*}
15
+ */
16
+ const getConstructableStyle = (ElementClass, forStaticArea = false) => {
17
+ const tag = ElementClass.getMetadata().getTag();
18
+ const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
19
+
20
+ if (!constructableStyleMap.has(key)) {
21
+ const styleContent = getEffectiveStyle(ElementClass, forStaticArea);
22
+ const style = new CSSStyleSheet();
23
+ style.replaceSync(styleContent);
24
+ constructableStyleMap.set(key, [style]);
25
+ }
26
+
27
+ return constructableStyleMap.get(key);
28
+ };
29
+
30
+ export default getConstructableStyle;
@@ -0,0 +1,27 @@
1
+ import { getUrl } from "../CSP.js";
2
+ import { getFeature } from "../FeaturesRegistry.js";
3
+
4
+ const flatten = arr => {
5
+ return arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatten(val) : val), []);
6
+ };
7
+
8
+ const getEffectiveLinksHrefs = (ElementClass, forStaticArea = false) => {
9
+ let stylesData = ElementClass[forStaticArea ? "staticAreaStyles" : "styles"];
10
+ const OpenUI5Enablement = getFeature("OpenUI5Enablement");
11
+
12
+ if (!stylesData) {
13
+ return;
14
+ }
15
+
16
+ if (!Array.isArray(stylesData)) {
17
+ stylesData = [stylesData];
18
+ }
19
+
20
+ if (OpenUI5Enablement) {
21
+ stylesData.push(OpenUI5Enablement.getBusyIndicatorStyles());
22
+ }
23
+
24
+ return flatten(stylesData).filter(data => !!data).map(data => getUrl(data.packageName, data.fileName));
25
+ };
26
+
27
+ export default getEffectiveLinksHrefs;
@@ -0,0 +1,39 @@
1
+ import { getCustomCSS, attachCustomCSSChange } from "./CustomStyle.js";
2
+ import getStylesString from "./getStylesString.js";
3
+ import { getFeature } from "../FeaturesRegistry.js";
4
+
5
+ const effectiveStyleMap = new Map();
6
+
7
+ attachCustomCSSChange(tag => {
8
+ effectiveStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part
9
+ });
10
+
11
+ const getEffectiveStyle = (ElementClass, forStaticArea = false) => {
12
+ const tag = ElementClass.getMetadata().getTag();
13
+ const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
14
+ const OpenUI5Enablement = getFeature("OpenUI5Enablement");
15
+
16
+ if (!effectiveStyleMap.has(key)) {
17
+ let effectiveStyle;
18
+ let busyIndicatorStyles = "";
19
+
20
+ if (OpenUI5Enablement) {
21
+ busyIndicatorStyles = getStylesString(OpenUI5Enablement.getBusyIndicatorStyles());
22
+ }
23
+
24
+ if (forStaticArea) {
25
+ effectiveStyle = getStylesString(ElementClass.staticAreaStyles);
26
+ } else {
27
+ const customStyle = getCustomCSS(tag) || "";
28
+ const builtInStyles = getStylesString(ElementClass.styles);
29
+ effectiveStyle = `${builtInStyles} ${customStyle}`;
30
+ }
31
+
32
+ effectiveStyle = `${effectiveStyle} ${busyIndicatorStyles}`;
33
+ effectiveStyleMap.set(key, effectiveStyle);
34
+ }
35
+
36
+ return effectiveStyleMap.get(key);
37
+ };
38
+
39
+ export default getEffectiveStyle;
@@ -0,0 +1,15 @@
1
+ const getStylesString = styles => {
2
+ if (Array.isArray(styles)) {
3
+ return flatten(styles.filter(style => !!style)).map(style => {
4
+ return typeof style === "string" ? style : style.content;
5
+ }).join(" ");
6
+ }
7
+
8
+ return typeof styles === "string" ? styles : styles.content;
9
+ };
10
+
11
+ const flatten = arr => {
12
+ return arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatten(val) : val), []);
13
+ };
14
+
15
+ export default getStylesString;
@@ -0,0 +1,87 @@
1
+ const warnings = new Set();
2
+
3
+ const getThemeMetadata = () => {
4
+ // Check if the class was already applied, most commonly to the link/style tag with the CSS Variables
5
+ let el = document.querySelector(".sapThemeMetaData-Base-baseLib") || document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");
6
+ if (el) {
7
+ return getComputedStyle(el).backgroundImage;
8
+ }
9
+
10
+ el = document.createElement("span");
11
+ el.style.display = "none";
12
+
13
+ // Try with sapThemeMetaData-Base-baseLib first
14
+ el.classList.add("sapThemeMetaData-Base-baseLib");
15
+ document.body.appendChild(el);
16
+ let metadata = getComputedStyle(el).backgroundImage;
17
+
18
+ // Try with sapThemeMetaData-UI5-sap-ui-core only if the previous selector was not found
19
+ if (metadata === "none") {
20
+ el.classList.add("sapThemeMetaData-UI5-sap-ui-core");
21
+ metadata = getComputedStyle(el).backgroundImage;
22
+ }
23
+
24
+ document.body.removeChild(el);
25
+
26
+ return metadata;
27
+ };
28
+
29
+ const parseThemeMetadata = metadataString => {
30
+ const params = /\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(metadataString);
31
+ if (params && params.length >= 2) {
32
+ let paramsString = params[1];
33
+ paramsString = paramsString.replace(/\\"/g, `"`);
34
+ if (paramsString.charAt(0) !== "{" && paramsString.charAt(paramsString.length - 1) !== "}") {
35
+ try {
36
+ paramsString = decodeURIComponent(paramsString);
37
+ } catch (ex) {
38
+ if (!warnings.has("decode")) {
39
+ console.warn("Malformed theme metadata string, unable to decodeURIComponent"); // eslint-disable-line
40
+ warnings.add("decode");
41
+ }
42
+ return;
43
+ }
44
+ }
45
+ try {
46
+ return JSON.parse(paramsString);
47
+ } catch (ex) {
48
+ if (!warnings.has("parse")) {
49
+ console.warn("Malformed theme metadata string, unable to parse JSON"); // eslint-disable-line
50
+ warnings.add("parse");
51
+ }
52
+ }
53
+ }
54
+ };
55
+
56
+ const processThemeMetadata = metadata => {
57
+ let themeName;
58
+ let baseThemeName;
59
+
60
+ try {
61
+ themeName = metadata.Path.match(/\.([^.]+)\.css_variables$/)[1];
62
+ baseThemeName = metadata.Extends[0];
63
+ } catch (ex) {
64
+ if (!warnings.has("object")) {
65
+ console.warn("Malformed theme metadata Object", metadata); // eslint-disable-line
66
+ warnings.add("object");
67
+ }
68
+ return;
69
+ }
70
+
71
+ return {
72
+ themeName,
73
+ baseThemeName,
74
+ };
75
+ };
76
+
77
+ const getThemeDesignerTheme = () => {
78
+ const metadataString = getThemeMetadata();
79
+ if (!metadataString || metadataString === "none") {
80
+ return;
81
+ }
82
+
83
+ const metadata = parseThemeMetadata(metadataString);
84
+ return processThemeMetadata(metadata);
85
+ };
86
+
87
+ export default getThemeDesignerTheme;
@@ -0,0 +1,23 @@
1
+ import getEffectiveLinksHrefs from "./getEffectiveLinksHrefs.js";
2
+ import createLinkInHead from "../util/createLinkInHead.js";
3
+ import { shouldUseLinks, shouldPreloadLinks } from "../CSP.js";
4
+
5
+ const preloaded = new Set();
6
+
7
+ const preloadLinks = ElementClass => {
8
+ if (!shouldUseLinks() || !shouldPreloadLinks()) {
9
+ return;
10
+ }
11
+
12
+ const linksHrefs = getEffectiveLinksHrefs(ElementClass, false) || [];
13
+ const staticAreaLinksHrefs = getEffectiveLinksHrefs(ElementClass, true) || [];
14
+
15
+ [...linksHrefs, ...staticAreaLinksHrefs].forEach(href => {
16
+ if (!preloaded.has(href)) {
17
+ createLinkInHead(href, { rel: "preload", as: "style" });
18
+ preloaded.add(href);
19
+ }
20
+ });
21
+ };
22
+
23
+ export default preloadLinks;
@@ -0,0 +1,32 @@
1
+ import isPlainObject from './isPlainObject.js';
2
+ var oToken = Object.create(null);
3
+ var fnMerge = function () {
4
+ var src, copyIsArray, copy, name, options, clone, target = arguments[2] || {}, i = 3, length = arguments.length, deep = arguments[0] || false, skipToken = arguments[1] ? undefined : oToken;
5
+ if (typeof target !== 'object' && typeof target !== 'function') {
6
+ target = {};
7
+ }
8
+ for (; i < length; i++) {
9
+ if ((options = arguments[i]) != null) {
10
+ for (name in options) {
11
+ src = target[name];
12
+ copy = options[name];
13
+ if (name === '__proto__' || target === copy) {
14
+ continue;
15
+ }
16
+ if (deep && copy && (isPlainObject(copy) || (copyIsArray = Array.isArray(copy)))) {
17
+ if (copyIsArray) {
18
+ copyIsArray = false;
19
+ clone = src && Array.isArray(src) ? src : [];
20
+ } else {
21
+ clone = src && isPlainObject(src) ? src : {};
22
+ }
23
+ target[name] = fnMerge(deep, arguments[1], clone, copy);
24
+ } else if (copy !== skipToken) {
25
+ target[name] = copy;
26
+ }
27
+ }
28
+ }
29
+ }
30
+ return target;
31
+ };
32
+ export default fnMerge;
@@ -0,0 +1,18 @@
1
+ var class2type = {};
2
+ var hasOwn = class2type.hasOwnProperty;
3
+ var toString = class2type.toString;
4
+ var fnToString = hasOwn.toString;
5
+ var ObjectFunctionString = fnToString.call(Object);
6
+ var fnIsPlainObject = function (obj) {
7
+ var proto, Ctor;
8
+ if (!obj || toString.call(obj) !== "[object Object]") {
9
+ return false;
10
+ }
11
+ proto = Object.getPrototypeOf(obj);
12
+ if (!proto) {
13
+ return true;
14
+ }
15
+ Ctor = hasOwn.call(proto, "constructor") && proto.constructor;
16
+ return typeof Ctor === "function" && fnToString.call(Ctor) === ObjectFunctionString;
17
+ };
18
+ export default fnIsPlainObject;
@@ -0,0 +1,10 @@
1
+ import _merge from './_merge.js';
2
+ var fnMerge = function () {
3
+ var args = [
4
+ true,
5
+ false
6
+ ];
7
+ args.push.apply(args, arguments);
8
+ return _merge.apply(null, args);
9
+ };
10
+ export default fnMerge;
@@ -0,0 +1,9 @@
1
+ import DataType from "./DataType.js";
2
+
3
+ class CSSColor extends DataType {
4
+ static isValid(value) {
5
+ return /^(#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})|rgb\(\s*((1?[0-9]?[0-9]|2([0-4][0-9]|5[0-5]))|([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*(,\s*((1?[0-9]?[0-9]|2([0-4][0-9]|5[0-5]))|([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*){2}\)|rgba\((\s*((1?[0-9]?[0-9]|2([0-4][0-9]|5[0-5]))|([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*,){3}\s*(0(\.[0-9]+)?|1(\.0+)?)\s*\)|hsl\(\s*([0-2]?[0-9]?[0-9]|3([0-5][0-9]|60))\s*(,\s*(([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*){2}\)|hsla\(\s*([0-2]?[0-9]?[0-9]|3([0-5][0-9]|60))\s*,(\s*(([0-9]?[0-9](\.[0-9]+)?|100(\.0+)?)%)\s*,){2}\s*(0(\.[0-9]+)?|1(\.0+)?)\s*\)|aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgrey|darkgreen|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|grey|green|greenyellow|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgrey|lightgreen|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silverskyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen|transparent|inherit|)$/.test(value ); // eslint-disable-line
6
+ }
7
+ }
8
+
9
+ export default CSSColor;
@@ -1,4 +1,4 @@
1
- import DataType from "../types/DataType.js";
1
+ import DataType from "./DataType.js";
2
2
 
3
3
  /**
4
4
  * Different calendar types.
@@ -17,6 +17,6 @@ class CalendarType extends DataType {
17
17
  }
18
18
  }
19
19
 
20
- CalendarType.generataTypeAcessors(CalendarTypes);
20
+ CalendarType.generateTypeAccessors(CalendarTypes);
21
21
 
22
22
  export default CalendarType;
@@ -11,7 +11,19 @@ class DataType {
11
11
  static isValid(value) {
12
12
  }
13
13
 
14
- static generataTypeAcessors(types) {
14
+ static attributeToProperty(attributeValue) {
15
+ return attributeValue;
16
+ }
17
+
18
+ static propertyToAttribute(propertyValue) {
19
+ return `${propertyValue}`;
20
+ }
21
+
22
+ static valuesAreEqual(value1, value2) {
23
+ return value1 === value2;
24
+ }
25
+
26
+ static generateTypeAccessors(types) {
15
27
  Object.keys(types).forEach(type => {
16
28
  Object.defineProperty(this, type, {
17
29
  get() {
@@ -0,0 +1,14 @@
1
+ import DataType from "./DataType.js";
2
+
3
+ class Float extends DataType {
4
+ static isValid(value) {
5
+ // Assuming that integers are floats as well!
6
+ return Number(value) === value;
7
+ }
8
+
9
+ static attributeToProperty(attributeValue) {
10
+ return parseFloat(attributeValue);
11
+ }
12
+ }
13
+
14
+ export default Float;
@@ -4,6 +4,10 @@ class Integer extends DataType {
4
4
  static isValid(value) {
5
5
  return Number.isInteger(value);
6
6
  }
7
+
8
+ static attributeToProperty(attributeValue) {
9
+ return parseInt(attributeValue);
10
+ }
7
11
  }
8
12
 
9
13
  export default Integer;
@@ -0,0 +1,30 @@
1
+ import DataType from "./DataType.js";
2
+
3
+ /**
4
+ * Enumeration for different mode behaviors of the <code>InvisibleMessage</code>.
5
+ * @private
6
+ */
7
+ const InvisibleMessageModes = {
8
+
9
+ /**
10
+ * Indicates that updates to the region should be presented at the next graceful opportunity,
11
+ * such as at the end of reading the current sentence, or when the user pauses typing.
12
+ */
13
+ Polite: "Polite",
14
+
15
+ /**
16
+ * Indicates that updates to the region have the highest priority and should be presented to the user immediately.
17
+ */
18
+ Assertive: "Assertive",
19
+
20
+ };
21
+
22
+ class InvisibleMessageMode extends DataType {
23
+ static isValid(value) {
24
+ return !!InvisibleMessageModes[value];
25
+ }
26
+ }
27
+
28
+ InvisibleMessageMode.generateTypeAccessors(InvisibleMessageModes);
29
+
30
+ export default InvisibleMessageModes;
@@ -4,18 +4,13 @@
4
4
  */
5
5
  const ItemNavigationBehavior = {
6
6
  /**
7
- * Static behavior: when border of the items is reached, you can't go out of the cage.
7
+ * Static behavior: navigations stops at the first or last item.
8
8
  */
9
9
  Static: "Static",
10
10
 
11
11
  /**
12
- * Cycling behavior: when border of the items is reached, you can cycle through the items.
12
+ * Cycling behavior: navigating past the last item continues with the first and vice versa.
13
13
  */
14
14
  Cyclic: "Cyclic",
15
-
16
- /**
17
- * Paging behavior: when border of the items is reached, tou can go up/down based on the rowsize(e.g. DayPicker)
18
- */
19
- Paging: "Paging",
20
15
  };
21
16
  export default ItemNavigationBehavior;
@@ -2,5 +2,6 @@ const NavigationMode = {
2
2
  Auto: "Auto",
3
3
  Vertical: "Vertical",
4
4
  Horizontal: "Horizontal",
5
+ Paging: "Paging",
5
6
  };
6
7
  export default NavigationMode;
@@ -32,6 +32,6 @@ class PopupState extends DataType {
32
32
  }
33
33
  }
34
34
 
35
- PopupState.generataTypeAcessors(PopupStates);
35
+ PopupState.generateTypeAccessors(PopupStates);
36
36
 
37
37
  export default PopupState;
@@ -8,6 +8,7 @@ const ValueStates = {
8
8
  Success: "Success",
9
9
  Warning: "Warning",
10
10
  Error: "Error",
11
+ Information: "Information",
11
12
  };
12
13
 
13
14
  class ValueState extends DataType {
@@ -16,6 +17,6 @@ class ValueState extends DataType {
16
17
  }
17
18
  }
18
19
 
19
- ValueState.generataTypeAcessors(ValueStates);
20
+ ValueState.generateTypeAccessors(ValueStates);
20
21
 
21
22
  export default ValueState;
@@ -0,0 +1,30 @@
1
+ import executeTemplate from "./renderer/executeTemplate.js";
2
+ import getConstructableStyle from "./theming/getConstructableStyle.js";
3
+ import getEffectiveStyle from "./theming/getEffectiveStyle.js";
4
+ import getEffectiveLinksHrefs from "./theming/getEffectiveLinksHrefs.js";
5
+ import isLegacyBrowser from "./isLegacyBrowser.js";
6
+ import { shouldUseLinks } from "./CSP.js";
7
+
8
+ /**
9
+ * Updates the shadow root of a UI5Element or its static area item
10
+ * @param element
11
+ * @param forStaticArea
12
+ */
13
+ const updateShadowRoot = (element, forStaticArea = false) => {
14
+ let styleStrOrHrefsArr;
15
+ const template = forStaticArea ? "staticAreaTemplate" : "template";
16
+ const shadowRoot = forStaticArea ? element.staticAreaItem.shadowRoot : element.shadowRoot;
17
+ const renderResult = executeTemplate(element.constructor[template], element);
18
+
19
+ if (shouldUseLinks()) {
20
+ styleStrOrHrefsArr = getEffectiveLinksHrefs(element.constructor, forStaticArea);
21
+ } else if (document.adoptedStyleSheets) { // Chrome
22
+ shadowRoot.adoptedStyleSheets = getConstructableStyle(element.constructor, forStaticArea);
23
+ } else if (!isLegacyBrowser()) { // FF, Safari
24
+ styleStrOrHrefsArr = getEffectiveStyle(element.constructor, forStaticArea);
25
+ }
26
+
27
+ element.constructor.render(renderResult, shadowRoot, styleStrOrHrefsArr, forStaticArea, { host: element });
28
+ };
29
+
30
+ export default updateShadowRoot;
@@ -0,0 +1,41 @@
1
+ import findNodeOwner from "./findNodeOwner.js";
2
+
3
+ const getEffectiveAriaLabelText = el => {
4
+ if (!el.accessibleNameRef) {
5
+ if (el.accessibleName) {
6
+ return el.accessibleName;
7
+ }
8
+
9
+ return undefined;
10
+ }
11
+
12
+ return getAriaLabelledByTexts(el);
13
+ };
14
+
15
+ /**
16
+ *
17
+ * @param {HTMLElement} el Defines the HTMLElement, for which you need to get all related texts
18
+ * @param {HTMLElement} ownerDocument (Optional) Defines the HTMLElement(might document or custom element) where the you want to search for the texts.
19
+ * @param {String} readyIds (Optional) Defines a string of elements ids. The text of these elements will be returned. If used you should provide either el or ownerDocument
20
+ */
21
+ const getAriaLabelledByTexts = (el, ownerDocument, readyIds = "") => {
22
+ const ids = (readyIds && readyIds.split(" ")) || el.accessibleNameRef.split(" ");
23
+ const owner = ownerDocument || findNodeOwner(el);
24
+ let result = "";
25
+
26
+ ids.forEach((elementId, index) => {
27
+ const element = owner.querySelector(`[id='${elementId}']`);
28
+ result += `${element ? element.textContent : ""}`;
29
+
30
+ if (index < ids.length - 1) {
31
+ result += " ";
32
+ }
33
+ });
34
+
35
+ return result;
36
+ };
37
+
38
+ export {
39
+ getEffectiveAriaLabelText,
40
+ getAriaLabelledByTexts,
41
+ };
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Returns the caret (cursor) position of the specified text field (field).
3
+ * Return value range is 0-field.value.length.
4
+ */
5
+ const getCaretPosition = field => {
6
+ // Initialize
7
+ let caretPos = 0;
8
+
9
+ // IE Support
10
+ if (document.selection) {
11
+ // Set focus on the element
12
+ field.focus();
13
+
14
+ // To get cursor position, get empty selection range
15
+ const selection = document.selection.createRange();
16
+
17
+ // Move selection start to 0 position
18
+ selection.moveStart("character", -field.value.length);
19
+
20
+ // The caret position is selection length
21
+ caretPos = selection.text.length;
22
+ } else if (field.selectionStart || field.selectionStart === "0") { // Firefox support
23
+ caretPos = field.selectionDirection === "backward" ? field.selectionStart : field.selectionEnd;
24
+ }
25
+
26
+ return caretPos;
27
+ };
28
+
29
+ const setCaretPosition = (field, caretPos) => {
30
+ if (field.createTextRange) {
31
+ const range = field.createTextRange();
32
+ range.move("character", caretPos);
33
+ range.select();
34
+ } else if (field.selectionStart) {
35
+ field.focus();
36
+ field.setSelectionRange(caretPos, caretPos);
37
+ } else {
38
+ field.focus();
39
+ }
40
+ };
41
+
42
+ export {
43
+ getCaretPosition,
44
+ setCaretPosition,
45
+ };