@ui5/webcomponents-base 0.0.0-5f8ce9393 → 0.0.0-6cb3eb0db
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +3 -0
- package/CHANGELOG.md +196 -0
- package/README.md +26 -1
- package/bundle.esm.js +18 -12
- package/dist/AssetRegistry.js +8 -6
- package/dist/Boot.js +43 -0
- package/dist/CustomElementsRegistry.js +39 -0
- package/dist/CustomElementsScope.js +108 -0
- package/dist/DOMObserver.js +65 -0
- package/dist/Device.js +58 -779
- package/dist/EventProvider.js +38 -26
- package/dist/FontFace.js +52 -7
- package/dist/InitialConfiguration.js +35 -10
- package/dist/Keys.js +248 -0
- package/dist/MediaRange.js +109 -0
- package/dist/PropertiesFileFormat.js +95 -0
- package/dist/Render.js +173 -0
- package/dist/RenderQueue.js +41 -17
- package/dist/RenderScheduler.js +24 -145
- package/dist/StaticArea.js +1 -39
- package/dist/StaticAreaItem.js +67 -50
- package/dist/SystemCSSVars.js +31 -0
- package/dist/Theming.js +3 -54
- package/dist/UI5Element.js +486 -318
- package/dist/UI5ElementMetadata.js +182 -19
- package/dist/asset-registries/Icons.js +118 -14
- package/dist/asset-registries/Illustrations.js +30 -0
- package/dist/asset-registries/LocaleData.js +97 -55
- package/dist/asset-registries/Themes.js +35 -32
- package/dist/asset-registries/i18n.js +80 -34
- package/dist/config/AnimationMode.js +11 -1
- package/dist/config/CalendarType.js +3 -7
- package/dist/config/Language.js +58 -2
- package/dist/config/Theme.js +2 -2
- package/dist/delegate/ItemNavigation.js +245 -172
- package/dist/delegate/ResizeHandler.js +78 -38
- package/dist/delegate/ScrollEnablement.js +101 -19
- package/dist/features/OpenUI5Support.js +57 -8
- package/dist/generated/AssetParameters.js +13 -0
- package/dist/getSharedResource.js +30 -0
- package/dist/i18nBundle.js +31 -10
- package/dist/isLegacyBrowser.js +3 -0
- package/dist/{Locale.js → locale/Locale.js} +0 -10
- package/dist/locale/RTLAwareRegistry.js +14 -0
- package/dist/locale/applyDirection.js +17 -0
- package/dist/locale/directionChange.js +32 -0
- package/dist/locale/getEffectiveDir.js +28 -0
- package/dist/locale/getLocale.js +41 -0
- package/dist/locale/languageChange.js +22 -0
- package/dist/locale/nextFallbackLocale.js +28 -0
- package/{src/util → dist/locale}/normalizeLocale.js +8 -31
- package/dist/renderer/LitRenderer.js +21 -4
- package/dist/renderer/executeTemplate.js +17 -0
- package/dist/resources/bundle.esm.js +20 -106
- package/dist/resources/bundle.esm.js.map +1 -1
- package/dist/sap/base/Log.js +241 -0
- package/dist/sap/base/assert.js +8 -0
- package/dist/sap/base/security/URLListValidator.js +148 -0
- package/dist/sap/base/security/sanitizeHTML.js +16 -0
- package/dist/sap/base/util/now.js +7 -0
- package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
- package/dist/test-resources/assets/Themes.js +11 -5
- package/dist/test-resources/elements/Generic.js +1 -0
- package/dist/test-resources/elements/Parent.js +7 -2
- package/dist/test-resources/elements/WithStaticArea.js +77 -0
- package/dist/test-resources/pages/AllTestElements.html +5 -5
- package/dist/test-resources/pages/Configuration.html +0 -2
- package/dist/test-resources/pages/ConfigurationScript.html +1 -3
- package/dist/test-resources/pages/assets/messagebundle_de.properties +1 -0
- package/dist/test-resources/pages/assets/messagebundle_en.properties +1 -0
- package/dist/test-resources/pages/assets/messagebundle_es.properties +1 -0
- package/dist/test-resources/pages/assets/messagebundle_fr.properties +1 -0
- package/dist/test-resources/pages/i18n.html +35 -0
- package/dist/test-resources/specs/ConfigurationChange.spec.js +11 -9
- package/dist/test-resources/specs/ConfigurationScript.spec.js +25 -23
- package/dist/test-resources/specs/ConfigurationURL.spec.js +65 -17
- package/dist/test-resources/specs/CustomTheme.spec.js +7 -5
- package/dist/test-resources/specs/EventProvider.spec.js +63 -0
- package/dist/test-resources/specs/StaticArea.spec.js +78 -0
- package/dist/test-resources/specs/Theming.spec.js +9 -7
- package/dist/test-resources/specs/UI5ElementInvalidation.js +54 -70
- package/dist/test-resources/specs/UI5ElementLifecycle.js +19 -14
- package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +25 -51
- package/dist/test-resources/specs/UI5ElementMetadataExt.js +9 -7
- package/dist/test-resources/specs/UI5ElementPropertyValidation.js +7 -5
- package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +37 -35
- package/dist/test-resources/specs/UI5ElementShadowDOM.js +10 -8
- package/dist/test-resources/specs/UI5ElementSlots.js +10 -8
- package/dist/theming/CustomStyle.js +28 -7
- package/dist/theming/ThemeLoaded.js +22 -0
- package/dist/theming/applyTheme.js +78 -0
- package/dist/theming/createThemePropertiesStyleTag.js +20 -0
- package/dist/theming/getConstructableStyle.js +30 -0
- package/dist/theming/getEffectiveStyle.js +30 -0
- package/dist/theming/getStylesString.js +13 -0
- package/dist/theming/getThemeDesignerTheme.js +67 -0
- package/dist/thirdparty/_merge.js +32 -0
- package/dist/thirdparty/isPlainObject.js +18 -0
- package/dist/thirdparty/merge.js +10 -0
- package/dist/types/CSSColor.js +9 -0
- package/{src/dates → dist/types}/CalendarType.js +2 -2
- package/dist/types/DataType.js +13 -1
- package/dist/types/Float.js +14 -0
- package/dist/types/Integer.js +4 -0
- package/dist/types/InvisibleMessageMode.js +30 -0
- package/dist/types/ItemNavigationBehavior.js +2 -7
- package/dist/types/NavigationMode.js +1 -0
- package/dist/types/PopupState.js +1 -1
- package/dist/types/ValueState.js +2 -1
- package/dist/updateShadowRoot.js +26 -0
- package/dist/util/AriaLabelHelper.js +41 -0
- package/dist/util/Caret.js +45 -0
- package/dist/util/ColorConversion.js +370 -0
- package/dist/util/FocusableElements.js +25 -8
- package/dist/util/HTMLSanitizer.js +7 -0
- package/dist/util/InvisibleMessage.js +58 -0
- package/dist/util/PopupUtils.js +93 -0
- package/dist/util/SlotsHelper.js +43 -0
- package/dist/util/StringHelper.js +17 -2
- package/dist/util/TabbableElements.js +5 -2
- package/dist/util/arraysAreEqual.js +15 -0
- package/dist/util/clamp.js +12 -0
- package/dist/util/debounce.js +17 -0
- package/dist/util/detectNavigatorLanguage.js +3 -1
- package/dist/util/encodeCSS.js +24 -0
- package/dist/util/findNodeOwner.js +35 -0
- package/dist/util/getActiveElement.js +11 -0
- package/dist/util/getClassCopy.js +10 -0
- package/dist/util/getEffectiveContentDensity.js +5 -0
- package/dist/util/getFileExtension.js +21 -0
- package/dist/util/getSingletonElementInstance.js +13 -0
- package/dist/util/isElementInView.js +15 -0
- package/dist/util/isNodeHidden.js +1 -5
- package/dist/util/isNodeTabbable.js +4 -4
- package/dist/util/isValidPropertyName.js +11 -2
- package/dist/util/setToArray.js +10 -0
- package/hash.txt +1 -0
- package/index.js +1 -1
- package/lib/generate-asset-parameters/index.js +22 -0
- package/package-scripts.js +37 -17
- package/package.json +20 -12
- package/src/AssetRegistry.js +8 -6
- package/src/Boot.js +43 -0
- package/src/CustomElementsRegistry.js +39 -0
- package/src/CustomElementsScope.js +108 -0
- package/src/DOMObserver.js +65 -0
- package/src/Device.js +58 -779
- package/src/EventProvider.js +38 -26
- package/src/FontFace.js +52 -7
- package/src/InitialConfiguration.js +35 -10
- package/src/Keys.js +248 -0
- package/src/MediaRange.js +109 -0
- package/src/PropertiesFileFormat.js +95 -0
- package/src/Render.js +173 -0
- package/src/RenderQueue.js +41 -17
- package/src/RenderScheduler.js +24 -145
- package/src/StaticArea.js +1 -39
- package/src/StaticAreaItem.js +67 -50
- package/src/SystemCSSVars.js +31 -0
- package/src/Theming.js +3 -54
- package/src/UI5Element.js +486 -318
- package/src/UI5ElementMetadata.js +182 -19
- package/src/asset-registries/Icons.js +118 -14
- package/src/asset-registries/Illustrations.js +30 -0
- package/src/asset-registries/LocaleData.js +97 -55
- package/src/asset-registries/Themes.js +35 -32
- package/src/asset-registries/i18n.js +80 -34
- package/src/config/AnimationMode.js +11 -1
- package/src/config/CalendarType.js +3 -7
- package/src/config/Language.js +58 -2
- package/src/config/Theme.js +2 -2
- package/src/delegate/ItemNavigation.js +245 -172
- package/src/delegate/ResizeHandler.js +78 -38
- package/src/delegate/ScrollEnablement.js +101 -19
- package/src/features/OpenUI5Support.js +57 -8
- package/src/getSharedResource.js +30 -0
- package/src/i18nBundle.js +31 -10
- package/src/isLegacyBrowser.js +3 -0
- package/src/{Locale.js → locale/Locale.js} +0 -10
- package/src/locale/RTLAwareRegistry.js +14 -0
- package/src/locale/applyDirection.js +17 -0
- package/src/locale/directionChange.js +32 -0
- package/src/locale/getEffectiveDir.js +28 -0
- package/src/locale/getLocale.js +41 -0
- package/src/locale/languageChange.js +22 -0
- package/src/locale/nextFallbackLocale.js +28 -0
- package/{dist/util → src/locale}/normalizeLocale.js +8 -31
- package/src/renderer/LitRenderer.js +21 -4
- package/src/renderer/executeTemplate.js +17 -0
- package/src/theming/CustomStyle.js +28 -7
- package/src/theming/ThemeLoaded.js +22 -0
- package/src/theming/applyTheme.js +78 -0
- package/src/theming/createThemePropertiesStyleTag.js +20 -0
- package/src/theming/getConstructableStyle.js +30 -0
- package/src/theming/getEffectiveStyle.js +30 -0
- package/src/theming/getStylesString.js +13 -0
- package/src/theming/getThemeDesignerTheme.js +67 -0
- package/src/thirdparty/_merge.js +32 -0
- package/src/thirdparty/isPlainObject.js +18 -0
- package/src/thirdparty/merge.js +10 -0
- package/src/types/CSSColor.js +9 -0
- package/{dist/dates → src/types}/CalendarType.js +2 -2
- package/src/types/DataType.js +13 -1
- package/src/types/Float.js +14 -0
- package/src/types/Integer.js +4 -0
- package/src/types/InvisibleMessageMode.js +30 -0
- package/src/types/ItemNavigationBehavior.js +2 -7
- package/src/types/NavigationMode.js +1 -0
- package/src/types/PopupState.js +1 -1
- package/src/types/ValueState.js +2 -1
- package/src/updateShadowRoot.js +26 -0
- package/src/util/AriaLabelHelper.js +41 -0
- package/src/util/Caret.js +45 -0
- package/src/util/ColorConversion.js +370 -0
- package/src/util/FocusableElements.js +25 -8
- package/src/util/HTMLSanitizer.js +7 -0
- package/src/util/InvisibleMessage.js +58 -0
- package/src/util/PopupUtils.js +93 -0
- package/src/util/SlotsHelper.js +43 -0
- package/src/util/StringHelper.js +17 -2
- package/src/util/TabbableElements.js +5 -2
- package/src/util/arraysAreEqual.js +15 -0
- package/src/util/clamp.js +12 -0
- package/src/util/debounce.js +17 -0
- package/src/util/detectNavigatorLanguage.js +3 -1
- package/src/util/encodeCSS.js +24 -0
- package/src/util/findNodeOwner.js +35 -0
- package/src/util/getActiveElement.js +11 -0
- package/src/util/getClassCopy.js +10 -0
- package/src/util/getEffectiveContentDensity.js +5 -0
- package/src/util/getFileExtension.js +21 -0
- package/src/util/getSingletonElementInstance.js +13 -0
- package/src/util/isElementInView.js +15 -0
- package/src/util/isNodeHidden.js +1 -5
- package/src/util/isNodeTabbable.js +4 -4
- package/src/util/isValidPropertyName.js +11 -2
- package/src/util/setToArray.js +10 -0
- package/used-modules.txt +7 -0
- package/bundle.es5.js +0 -28
- package/dist/Assets.js +0 -2
- package/dist/CSS.js +0 -48
- package/dist/FormatSettings.js +0 -31
- package/dist/LocaleProvider.js +0 -34
- package/dist/ResourceLoaderOverrides.js +0 -38
- package/dist/SVGIconRegistry.js +0 -54
- package/dist/boot.js +0 -32
- package/dist/compatibility/DOMObserver.js +0 -62
- package/dist/compatibility/patchNodeValue.js +0 -24
- package/dist/compatibility/whenPolyfillLoaded.js +0 -26
- package/dist/dates/CalendarDate.js +0 -203
- package/dist/dates/CalendarUtils.js +0 -99
- package/dist/delegate/CustomResize.js +0 -78
- package/dist/delegate/NativeResize.js +0 -44
- package/dist/events/PseudoEvents.js +0 -58
- package/dist/features/browsersupport/Edge.js +0 -6
- package/dist/features/browsersupport/IE11.js +0 -41
- package/dist/features/calendar/Buddhist.js +0 -1
- package/dist/features/calendar/Islamic.js +0 -1
- package/dist/features/calendar/Japanese.js +0 -1
- package/dist/features/calendar/Persian.js +0 -1
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ar.json +0 -5598
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_EG.json +0 -5598
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ar_SA.json +0 -5598
- package/dist/generated/assets/cldr/sap/ui/core/cldr/bg.json +0 -4789
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ca.json +0 -4801
- package/dist/generated/assets/cldr/sap/ui/core/cldr/cs.json +0 -5245
- package/dist/generated/assets/cldr/sap/ui/core/cldr/da.json +0 -4696
- package/dist/generated/assets/cldr/sap/ui/core/cldr/de.json +0 -4797
- package/dist/generated/assets/cldr/sap/ui/core/cldr/de_AT.json +0 -4798
- package/dist/generated/assets/cldr/sap/ui/core/cldr/de_CH.json +0 -4796
- package/dist/generated/assets/cldr/sap/ui/core/cldr/el.json +0 -4694
- package/dist/generated/assets/cldr/sap/ui/core/cldr/el_CY.json +0 -4694
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en.json +0 -4777
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_AU.json +0 -4769
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_GB.json +0 -4778
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_HK.json +0 -4784
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IE.json +0 -4778
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_IN.json +0 -4779
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_NZ.json +0 -4778
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_PG.json +0 -4779
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_SG.json +0 -4780
- package/dist/generated/assets/cldr/sap/ui/core/cldr/en_ZA.json +0 -4779
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es.json +0 -4719
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_AR.json +0 -4721
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_BO.json +0 -4720
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CL.json +0 -4721
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_CO.json +0 -4721
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_MX.json +0 -4722
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_PE.json +0 -4720
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_UY.json +0 -4722
- package/dist/generated/assets/cldr/sap/ui/core/cldr/es_VE.json +0 -4721
- package/dist/generated/assets/cldr/sap/ui/core/cldr/et.json +0 -4776
- package/dist/generated/assets/cldr/sap/ui/core/cldr/fa.json +0 -4704
- package/dist/generated/assets/cldr/sap/ui/core/cldr/fi.json +0 -4816
- package/dist/generated/assets/cldr/sap/ui/core/cldr/fr.json +0 -4788
- package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_BE.json +0 -4788
- package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CA.json +0 -4782
- package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_CH.json +0 -4806
- package/dist/generated/assets/cldr/sap/ui/core/cldr/fr_LU.json +0 -4788
- package/dist/generated/assets/cldr/sap/ui/core/cldr/he.json +0 -5133
- package/dist/generated/assets/cldr/sap/ui/core/cldr/hi.json +0 -4680
- package/dist/generated/assets/cldr/sap/ui/core/cldr/hr.json +0 -4910
- package/dist/generated/assets/cldr/sap/ui/core/cldr/hu.json +0 -4664
- package/dist/generated/assets/cldr/sap/ui/core/cldr/id.json +0 -4500
- package/dist/generated/assets/cldr/sap/ui/core/cldr/it.json +0 -4757
- package/dist/generated/assets/cldr/sap/ui/core/cldr/it_CH.json +0 -4757
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ja.json +0 -4599
- package/dist/generated/assets/cldr/sap/ui/core/cldr/kk.json +0 -4537
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ko.json +0 -4574
- package/dist/generated/assets/cldr/sap/ui/core/cldr/lt.json +0 -5234
- package/dist/generated/assets/cldr/sap/ui/core/cldr/lv.json +0 -4902
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ms.json +0 -4352
- package/dist/generated/assets/cldr/sap/ui/core/cldr/nb.json +0 -4784
- package/dist/generated/assets/cldr/sap/ui/core/cldr/nl.json +0 -4790
- package/dist/generated/assets/cldr/sap/ui/core/cldr/nl_BE.json +0 -4790
- package/dist/generated/assets/cldr/sap/ui/core/cldr/pl.json +0 -5223
- package/dist/generated/assets/cldr/sap/ui/core/cldr/pt.json +0 -4703
- package/dist/generated/assets/cldr/sap/ui/core/cldr/pt_PT.json +0 -4753
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ro.json +0 -4881
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ru.json +0 -5157
- package/dist/generated/assets/cldr/sap/ui/core/cldr/ru_UA.json +0 -5157
- package/dist/generated/assets/cldr/sap/ui/core/cldr/sk.json +0 -5125
- package/dist/generated/assets/cldr/sap/ui/core/cldr/sl.json +0 -5105
- package/dist/generated/assets/cldr/sap/ui/core/cldr/sr.json +0 -4908
- package/dist/generated/assets/cldr/sap/ui/core/cldr/sv.json +0 -4818
- package/dist/generated/assets/cldr/sap/ui/core/cldr/th.json +0 -4633
- package/dist/generated/assets/cldr/sap/ui/core/cldr/tr.json +0 -4791
- package/dist/generated/assets/cldr/sap/ui/core/cldr/uk.json +0 -5126
- package/dist/generated/assets/cldr/sap/ui/core/cldr/vi.json +0 -4510
- package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_CN.json +0 -4469
- package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_HK.json +0 -4479
- package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_SG.json +0 -4479
- package/dist/generated/assets/cldr/sap/ui/core/cldr/zh_TW.json +0 -4565
- package/dist/json-imports/LocaleData.js +0 -171
- package/dist/renderer/ifDefined.js +0 -21
- package/dist/resources/bundle.es5.js +0 -212
- package/dist/resources/bundle.es5.js.map +0 -1
- package/dist/shims/Core-shim.js +0 -52
- package/dist/shims/jquery-shim.js +0 -89
- package/dist/test-resources/dev-helpers/ExternalThemePresent.js +0 -3
- package/dist/theming/StyleInjection.js +0 -67
- package/dist/thirdparty/Array.from.js +0 -16
- package/dist/thirdparty/Array.prototype.fill.js +0 -44
- package/dist/thirdparty/Array.prototype.find.js +0 -46
- package/dist/thirdparty/Array.prototype.includes.js +0 -51
- package/dist/thirdparty/Element.prototype.closest.js +0 -11
- package/dist/thirdparty/Element.prototype.matches.js +0 -6
- package/dist/thirdparty/Map.prototype.keys.js +0 -9
- package/dist/thirdparty/Number.isInteger.js +0 -5
- package/dist/thirdparty/Number.isNaN.js +0 -1
- package/dist/thirdparty/Number.parseInt.js +0 -1
- package/dist/thirdparty/Object.assign.js +0 -31
- package/dist/thirdparty/Object.entries.js +0 -11
- package/dist/thirdparty/Symbol.js +0 -2
- package/dist/thirdparty/WeakSet.js +0 -27
- package/dist/thirdparty/events-polyfills.js +0 -89
- package/dist/thirdparty/fetch.js +0 -1
- package/dist/thirdparty/template.js +0 -600
- package/dist/util/CSSTransformUtils.js +0 -90
- package/dist/webcomponentsjs/LICENSE.md +0 -19
- package/dist/webcomponentsjs/README.md +0 -229
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -297
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -208
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -166
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
- package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
- package/dist/webcomponentsjs/package.json +0 -46
- package/dist/webcomponentsjs/src/entrypoints/custom-elements-es5-adapter-index.js +0 -16
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-bundle-index.js +0 -53
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-ce-index.js +0 -17
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-index.js +0 -19
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-ce-pf-index.js +0 -28
- package/dist/webcomponentsjs/src/entrypoints/webcomponents-sd-index.js +0 -18
- package/dist/webcomponentsjs/webcomponents-bundle.js +0 -298
- package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
- package/dist/webcomponentsjs/webcomponents-loader.js +0 -185
- package/src/Assets.js +0 -2
- package/src/CSS.js +0 -48
- package/src/FormatSettings.js +0 -31
- package/src/LocaleProvider.js +0 -34
- package/src/ResourceLoaderOverrides.js +0 -38
- package/src/SVGIconRegistry.js +0 -54
- package/src/boot.js +0 -32
- package/src/compatibility/DOMObserver.js +0 -62
- package/src/compatibility/patchNodeValue.js +0 -24
- package/src/compatibility/whenPolyfillLoaded.js +0 -26
- package/src/dates/CalendarDate.js +0 -203
- package/src/dates/CalendarUtils.js +0 -99
- package/src/delegate/CustomResize.js +0 -78
- package/src/delegate/NativeResize.js +0 -44
- package/src/events/PseudoEvents.js +0 -58
- package/src/features/browsersupport/Edge.js +0 -6
- package/src/features/browsersupport/IE11.js +0 -41
- package/src/features/calendar/Buddhist.js +0 -1
- package/src/features/calendar/Islamic.js +0 -1
- package/src/features/calendar/Japanese.js +0 -1
- package/src/features/calendar/Persian.js +0 -1
- package/src/json-imports/LocaleData.js +0 -171
- package/src/renderer/ifDefined.js +0 -21
- package/src/shims/Core-shim.js +0 -52
- package/src/shims/jquery-shim.js +0 -89
- package/src/theming/StyleInjection.js +0 -67
- package/src/thirdparty/Array.from.js +0 -16
- package/src/thirdparty/Array.prototype.fill.js +0 -44
- package/src/thirdparty/Array.prototype.find.js +0 -46
- package/src/thirdparty/Array.prototype.includes.js +0 -51
- package/src/thirdparty/Element.prototype.closest.js +0 -11
- package/src/thirdparty/Element.prototype.matches.js +0 -6
- package/src/thirdparty/Map.prototype.keys.js +0 -9
- package/src/thirdparty/Number.isInteger.js +0 -5
- package/src/thirdparty/Number.isNaN.js +0 -1
- package/src/thirdparty/Number.parseInt.js +0 -1
- package/src/thirdparty/Object.assign.js +0 -31
- package/src/thirdparty/Object.entries.js +0 -11
- package/src/thirdparty/Symbol.js +0 -2
- package/src/thirdparty/WeakSet.js +0 -27
- package/src/thirdparty/events-polyfills.js +0 -89
- package/src/thirdparty/fetch.js +0 -1
- package/src/thirdparty/template.js +0 -600
- package/src/util/CSSTransformUtils.js +0 -90
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { DEFAULT_LOCALE } from "../generated/AssetParameters.js";
|
|
2
|
+
|
|
1
3
|
const localeRegEX = /^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;
|
|
2
4
|
const SAPSupportabilityLocales = /(?:^|-)(saptrc|sappsd)(?:-|$)/i;
|
|
3
5
|
|
|
@@ -12,11 +14,15 @@ const M_ISO639_NEW_TO_OLD = {
|
|
|
12
14
|
/**
|
|
13
15
|
* Normalizes the given locale in BCP-47 syntax.
|
|
14
16
|
* @param {string} locale locale to normalize
|
|
15
|
-
* @returns {string} Normalized locale
|
|
17
|
+
* @returns {string} Normalized locale, "undefined" if the locale can't be normalized or the default locale, if no locale provided.
|
|
16
18
|
*/
|
|
17
19
|
const normalizeLocale = locale => {
|
|
18
20
|
let m;
|
|
19
21
|
|
|
22
|
+
if (!locale) {
|
|
23
|
+
return DEFAULT_LOCALE;
|
|
24
|
+
}
|
|
25
|
+
|
|
20
26
|
if (typeof locale === "string" && (m = localeRegEX.exec(locale.replace(/_/g, "-")))) {/* eslint-disable-line */
|
|
21
27
|
let language = m[1].toLowerCase();
|
|
22
28
|
let region = m[3] ? m[3].toUpperCase() : undefined;
|
|
@@ -45,33 +51,4 @@ const normalizeLocale = locale => {
|
|
|
45
51
|
}
|
|
46
52
|
};
|
|
47
53
|
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Calculates the next fallback locale for the given locale.
|
|
51
|
-
*
|
|
52
|
-
* @param {string} locale Locale string in Java format (underscores) or null
|
|
53
|
-
* @returns {string|null} Next fallback Locale or null if there is no more fallback
|
|
54
|
-
*/
|
|
55
|
-
const nextFallbackLocale = locale => {
|
|
56
|
-
if (!locale) {
|
|
57
|
-
return null;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (locale === "zh_HK") {
|
|
61
|
-
return "zh_TW";
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
// if there are multiple segments (separated by underscores), remove the last one
|
|
65
|
-
const p = locale.lastIndexOf("_");
|
|
66
|
-
if (p >= 0) {
|
|
67
|
-
return locale.slice(0, p);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
// for any language but 'en', fallback to 'en' first before falling back to the 'raw' language (empty string)
|
|
71
|
-
return locale !== "en" ? "en" : "";
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
export {
|
|
75
|
-
normalizeLocale,
|
|
76
|
-
nextFallbackLocale,
|
|
77
|
-
};
|
|
54
|
+
export default normalizeLocale;
|
|
@@ -1,15 +1,32 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { render } from "lit-html";
|
|
2
|
+
import {
|
|
3
|
+
html,
|
|
4
|
+
svg,
|
|
5
|
+
unsafeStatic,
|
|
6
|
+
} from "lit-html/static.js";
|
|
2
7
|
|
|
3
|
-
const litRender = (templateResult, domNode, styles, {
|
|
8
|
+
const litRender = (templateResult, domNode, styles, { host } = {}) => {
|
|
4
9
|
if (styles) {
|
|
5
10
|
templateResult = html`<style>${styles}</style>${templateResult}`;
|
|
6
11
|
}
|
|
7
|
-
render(templateResult, domNode, {
|
|
12
|
+
render(templateResult, domNode, { host });
|
|
8
13
|
};
|
|
9
14
|
|
|
10
|
-
|
|
15
|
+
const scopeTag = (tag, tags, suffix) => {
|
|
16
|
+
const resultTag = suffix && (tags || []).includes(tag) ? `${tag}-${suffix}` : tag;
|
|
17
|
+
return unsafeStatic(resultTag);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export {
|
|
21
|
+
html,
|
|
22
|
+
svg,
|
|
23
|
+
unsafeStatic,
|
|
24
|
+
};
|
|
25
|
+
export { scopeTag };
|
|
11
26
|
export { repeat } from "lit-html/directives/repeat.js";
|
|
12
27
|
export { classMap } from "lit-html/directives/class-map.js";
|
|
13
28
|
export { styleMap } from "lit-html/directives/style-map.js";
|
|
29
|
+
export { ifDefined } from "lit-html/directives/if-defined.js";
|
|
30
|
+
export { unsafeHTML } from "lit-html/directives/unsafe-html.js";
|
|
14
31
|
|
|
15
32
|
export default litRender;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getCustomElementsScopingSuffix, shouldScopeCustomElement } from "../CustomElementsScope.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Runs a component's template with the component's current state, while also scoping HTML
|
|
5
|
+
*
|
|
6
|
+
* @param template - the template to execute
|
|
7
|
+
* @param component - the component
|
|
8
|
+
* @public
|
|
9
|
+
* @returns {*}
|
|
10
|
+
*/
|
|
11
|
+
const executeTemplate = (template, component) => {
|
|
12
|
+
const tagsToScope = component.constructor.getUniqueDependencies().map(dep => dep.getMetadata().getPureTag()).filter(shouldScopeCustomElement);
|
|
13
|
+
const scope = getCustomElementsScopingSuffix();
|
|
14
|
+
return template(component, tagsToScope, scope);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default executeTemplate;
|
|
@@ -1,19 +1,40 @@
|
|
|
1
|
-
|
|
1
|
+
import { reRenderAllUI5Elements } from "../Render.js";
|
|
2
|
+
import EventProvider from "../EventProvider.js";
|
|
2
3
|
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
const eventProvider = new EventProvider();
|
|
5
|
+
const CUSTOM_CSS_CHANGE = "CustomCSSChange";
|
|
6
|
+
|
|
7
|
+
const attachCustomCSSChange = listener => {
|
|
8
|
+
eventProvider.attachEvent(CUSTOM_CSS_CHANGE, listener);
|
|
9
|
+
};
|
|
7
10
|
|
|
11
|
+
const detachCustomCSSChange = listener => {
|
|
12
|
+
eventProvider.detachEvent(CUSTOM_CSS_CHANGE, listener);
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const fireCustomCSSChange = tag => {
|
|
16
|
+
return eventProvider.fireEvent(CUSTOM_CSS_CHANGE, tag);
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
const customCSSFor = {};
|
|
20
|
+
|
|
21
|
+
const addCustomCSS = (tag, css) => {
|
|
8
22
|
if (!customCSSFor[tag]) {
|
|
9
23
|
customCSSFor[tag] = [];
|
|
10
24
|
}
|
|
11
|
-
|
|
12
25
|
customCSSFor[tag].push(css);
|
|
26
|
+
fireCustomCSSChange(tag);
|
|
27
|
+
|
|
28
|
+
return reRenderAllUI5Elements({ tag });
|
|
13
29
|
};
|
|
14
30
|
|
|
15
31
|
const getCustomCSS = tag => {
|
|
16
32
|
return customCSSFor[tag] ? customCSSFor[tag].join("") : "";
|
|
17
33
|
};
|
|
18
34
|
|
|
19
|
-
export {
|
|
35
|
+
export {
|
|
36
|
+
addCustomCSS,
|
|
37
|
+
getCustomCSS,
|
|
38
|
+
attachCustomCSSChange,
|
|
39
|
+
detachCustomCSSChange,
|
|
40
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import EventProvider from "../EventProvider.js";
|
|
2
|
+
|
|
3
|
+
const eventProvider = new EventProvider();
|
|
4
|
+
const THEME_LOADED = "themeLoaded";
|
|
5
|
+
|
|
6
|
+
const attachThemeLoaded = listener => {
|
|
7
|
+
eventProvider.attachEvent(THEME_LOADED, listener);
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const detachThemeLoaded = listener => {
|
|
11
|
+
eventProvider.detachEvent(THEME_LOADED, listener);
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const fireThemeLoaded = theme => {
|
|
15
|
+
return eventProvider.fireEvent(THEME_LOADED, theme);
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export {
|
|
19
|
+
attachThemeLoaded,
|
|
20
|
+
detachThemeLoaded,
|
|
21
|
+
fireThemeLoaded,
|
|
22
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { getThemeProperties, getRegisteredPackages, isThemeRegistered } from "../asset-registries/Themes.js";
|
|
2
|
+
import createThemePropertiesStyleTag from "./createThemePropertiesStyleTag.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-theme-base";
|
|
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 cssText = await getThemeProperties(BASE_THEME_PACKAGE, theme);
|
|
20
|
+
createThemePropertiesStyleTag(cssText, BASE_THEME_PACKAGE);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const deleteThemeBase = () => {
|
|
24
|
+
const styleElement = document.head.querySelector(`style[data-ui5-theme-properties="${BASE_THEME_PACKAGE}"]`);
|
|
25
|
+
if (styleElement) {
|
|
26
|
+
styleElement.parentElement.removeChild(styleElement);
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
const loadComponentPackages = async theme => {
|
|
31
|
+
const registeredPackages = getRegisteredPackages();
|
|
32
|
+
registeredPackages.forEach(async packageName => {
|
|
33
|
+
if (packageName === BASE_THEME_PACKAGE) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const cssText = await getThemeProperties(packageName, theme);
|
|
38
|
+
createThemePropertiesStyleTag(cssText, packageName);
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
const detectExternalTheme = () => {
|
|
43
|
+
// If theme designer theme is detected, use this
|
|
44
|
+
const extTheme = getThemeDesignerTheme();
|
|
45
|
+
if (extTheme) {
|
|
46
|
+
return extTheme;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// If OpenUI5Support is enabled, try to find out if it loaded variables
|
|
50
|
+
const OpenUI5Support = getFeature("OpenUI5Support");
|
|
51
|
+
if (OpenUI5Support) {
|
|
52
|
+
const varsLoaded = OpenUI5Support.cssVariablesLoaded();
|
|
53
|
+
if (varsLoaded) {
|
|
54
|
+
return {
|
|
55
|
+
themeName: OpenUI5Support.getConfigurationSettingsObject().theme, // just themeName, baseThemeName is only relevant for custom themes
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
const applyTheme = async theme => {
|
|
62
|
+
const extTheme = detectExternalTheme();
|
|
63
|
+
|
|
64
|
+
// Only load theme_base properties if there is no externally loaded theme, or there is, but it is not being loaded
|
|
65
|
+
if (!extTheme || theme !== extTheme.themeName) {
|
|
66
|
+
await loadThemeBase(theme);
|
|
67
|
+
} else {
|
|
68
|
+
deleteThemeBase();
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// Always load component packages properties. For non-registered themes, try with the base theme, if any
|
|
72
|
+
const packagesTheme = isThemeRegistered(theme) ? theme : extTheme && extTheme.baseThemeName;
|
|
73
|
+
await loadComponentPackages(packagesTheme);
|
|
74
|
+
|
|
75
|
+
fireThemeLoaded(theme);
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export default applyTheme;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import createStyleInHead from "../util/createStyleInHead.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Creates/updates a style element holding all CSS Custom Properties
|
|
5
|
+
* @param cssText
|
|
6
|
+
* @param packageName
|
|
7
|
+
*/
|
|
8
|
+
const createThemePropertiesStyleTag = (cssText, packageName) => {
|
|
9
|
+
const styleElement = document.head.querySelector(`style[data-ui5-theme-properties="${packageName}"]`);
|
|
10
|
+
if (styleElement) {
|
|
11
|
+
styleElement.textContent = cssText || ""; // in case of undefined
|
|
12
|
+
} else {
|
|
13
|
+
const attributes = {
|
|
14
|
+
"data-ui5-theme-properties": packageName,
|
|
15
|
+
};
|
|
16
|
+
createStyleInHead(cssText, attributes);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export default createThemePropertiesStyleTag;
|
|
@@ -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,30 @@
|
|
|
1
|
+
import { getCustomCSS, attachCustomCSSChange } from "./CustomStyle.js";
|
|
2
|
+
import getStylesString from "./getStylesString.js";
|
|
3
|
+
|
|
4
|
+
const effectiveStyleMap = new Map();
|
|
5
|
+
|
|
6
|
+
attachCustomCSSChange(tag => {
|
|
7
|
+
effectiveStyleMap.delete(`${tag}_normal`); // there is custom CSS only for the component itself, not for its static area part
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
const getEffectiveStyle = (ElementClass, forStaticArea = false) => {
|
|
11
|
+
const tag = ElementClass.getMetadata().getTag();
|
|
12
|
+
const key = `${tag}_${forStaticArea ? "static" : "normal"}`;
|
|
13
|
+
|
|
14
|
+
if (!effectiveStyleMap.has(key)) {
|
|
15
|
+
let effectiveStyle;
|
|
16
|
+
|
|
17
|
+
if (forStaticArea) {
|
|
18
|
+
effectiveStyle = getStylesString(ElementClass.staticAreaStyles);
|
|
19
|
+
} else {
|
|
20
|
+
const customStyle = getCustomCSS(tag) || "";
|
|
21
|
+
const builtInStyles = getStylesString(ElementClass.styles);
|
|
22
|
+
effectiveStyle = `${builtInStyles} ${customStyle}`;
|
|
23
|
+
}
|
|
24
|
+
effectiveStyleMap.set(key, effectiveStyle);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return effectiveStyleMap.get(key);
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export default getEffectiveStyle;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const getStylesString = styles => {
|
|
2
|
+
if (Array.isArray(styles)) {
|
|
3
|
+
return flatten(styles.filter(style => !!style)).join(" ");
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
return styles;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
const flatten = arr => {
|
|
10
|
+
return arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatten(val) : val), []);
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export default getStylesString;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
const getThemeMetadata = () => {
|
|
2
|
+
// Check if the class was already applied, most commonly to the link/style tag with the CSS Variables
|
|
3
|
+
let el = document.querySelector(".sapThemeMetaData-Base-baseLib");
|
|
4
|
+
if (el) {
|
|
5
|
+
return getComputedStyle(el).backgroundImage;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
el = document.createElement("span");
|
|
9
|
+
el.style.display = "none";
|
|
10
|
+
el.classList.add("sapThemeMetaData-Base-baseLib");
|
|
11
|
+
document.body.appendChild(el);
|
|
12
|
+
const metadata = getComputedStyle(el).backgroundImage;
|
|
13
|
+
document.body.removeChild(el);
|
|
14
|
+
|
|
15
|
+
return metadata;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
const parseThemeMetadata = metadataString => {
|
|
19
|
+
const params = /\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(metadataString);
|
|
20
|
+
if (params && params.length >= 2) {
|
|
21
|
+
let paramsString = params[1];
|
|
22
|
+
paramsString = paramsString.replace(/\\"/g, `"`);
|
|
23
|
+
if (paramsString.charAt(0) !== "{" && paramsString.charAt(paramsString.length - 1) !== "}") {
|
|
24
|
+
try {
|
|
25
|
+
paramsString = decodeURIComponent(paramsString);
|
|
26
|
+
} catch (ex) {
|
|
27
|
+
console.warn("Malformed theme metadata string, unable to decodeURIComponent"); // eslint-disable-line
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
try {
|
|
32
|
+
return JSON.parse(paramsString);
|
|
33
|
+
} catch (ex) {
|
|
34
|
+
console.warn("Malformed theme metadata string, unable to parse JSON"); // eslint-disable-line
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const processThemeMetadata = metadata => {
|
|
40
|
+
let themeName;
|
|
41
|
+
let baseThemeName;
|
|
42
|
+
|
|
43
|
+
try {
|
|
44
|
+
themeName = metadata.Path.match(/\.([^.]+)\.css_variables$/)[1];
|
|
45
|
+
baseThemeName = metadata.Extends[0];
|
|
46
|
+
} catch (ex) {
|
|
47
|
+
console.warn("Malformed theme metadata Object", metadata); // eslint-disable-line
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
return {
|
|
52
|
+
themeName,
|
|
53
|
+
baseThemeName,
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
const getThemeDesignerTheme = () => {
|
|
58
|
+
const metadataString = getThemeMetadata();
|
|
59
|
+
if (!metadataString || metadataString === "none") {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const metadata = parseThemeMetadata(metadataString);
|
|
64
|
+
return processThemeMetadata(metadata);
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
export default getThemeDesignerTheme;
|
|
@@ -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,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 "
|
|
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.
|
|
20
|
+
CalendarType.generateTypeAccessors(CalendarTypes);
|
|
21
21
|
|
|
22
22
|
export default CalendarType;
|
package/src/types/DataType.js
CHANGED
|
@@ -11,7 +11,19 @@ class DataType {
|
|
|
11
11
|
static isValid(value) {
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
static
|
|
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;
|
package/src/types/Integer.js
CHANGED
|
@@ -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:
|
|
7
|
+
* Static behavior: navigations stops at the first or last item.
|
|
8
8
|
*/
|
|
9
9
|
Static: "Static",
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* Cycling behavior:
|
|
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;
|
package/src/types/PopupState.js
CHANGED
package/src/types/ValueState.js
CHANGED
|
@@ -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.
|
|
20
|
+
ValueState.generateTypeAccessors(ValueStates);
|
|
20
21
|
|
|
21
22
|
export default ValueState;
|