@ui5/webcomponents-base 0.0.0-e463d2345 → 0.0.0-e818f286e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +4 -0
- package/CHANGELOG.md +437 -0
- package/README.md +53 -7
- package/bundle.esm.js +24 -20
- package/dist/AssetRegistry.js +8 -6
- package/dist/Boot.js +59 -0
- package/dist/CSP.js +59 -0
- package/dist/CustomElementsRegistry.js +95 -0
- package/dist/CustomElementsScope.js +30 -0
- package/dist/CustomElementsScopeUtils.js +108 -0
- package/dist/DOMObserver.js +65 -0
- package/dist/Device.js +71 -773
- package/dist/EventProvider.js +38 -26
- package/dist/FeaturesRegistry.js +4 -1
- package/dist/FontFace.js +20 -56
- package/dist/InitialConfiguration.js +64 -17
- package/dist/Keys.js +295 -0
- package/dist/ManagedStyles.js +83 -0
- package/dist/MediaRange.js +109 -0
- package/dist/PropertiesFileFormat.js +95 -0
- package/dist/Render.js +175 -0
- package/dist/RenderQueue.js +41 -17
- package/dist/RenderScheduler.js +24 -145
- package/dist/Runtimes.js +107 -0
- package/dist/StaticArea.js +2 -34
- package/dist/StaticAreaItem.js +69 -35
- package/dist/SystemCSSVars.js +10 -0
- package/dist/Theming.js +3 -44
- package/dist/UI5Element.js +497 -306
- package/dist/UI5ElementMetadata.js +198 -19
- package/dist/asset-registries/Icons.js +125 -14
- package/dist/asset-registries/Illustrations.js +30 -0
- package/dist/asset-registries/LocaleData.js +114 -51
- package/dist/asset-registries/Themes.js +37 -30
- package/dist/asset-registries/i18n.js +81 -33
- package/dist/assets/bundle.esm.81ba431e.js +43 -0
- package/dist/assets-meta/IconCollectionsAlias.js +18 -0
- package/dist/config/AnimationMode.js +16 -2
- package/dist/config/CalendarType.js +7 -7
- package/dist/config/FormatSettings.js +5 -1
- package/dist/config/Icons.js +52 -0
- package/dist/config/Language.js +62 -3
- package/dist/config/NoConflict.js +10 -3
- package/dist/config/Theme.js +32 -3
- package/dist/css/BusyIndicator.css +80 -0
- package/dist/css/FontFace.css +75 -0
- package/dist/css/OverrideFontFace.css +32 -0
- package/dist/css/SystemCSSVars.css +17 -0
- package/dist/delegate/ItemNavigation.js +249 -127
- package/dist/delegate/ResizeHandler.js +78 -38
- package/dist/delegate/ScrollEnablement.js +122 -14
- package/dist/features/F6Navigation.js +110 -0
- package/dist/features/OpenUI5Enablement.js +119 -0
- package/dist/features/OpenUI5Support.js +125 -0
- package/dist/generated/AssetParameters.js +13 -0
- package/dist/generated/VersionInfo.js +10 -0
- package/dist/generated/css/BusyIndicator.css.js +5 -0
- package/dist/generated/css/FontFace.css.js +5 -0
- package/dist/generated/css/OverrideFontFace.css.js +5 -0
- package/dist/generated/css/SystemCSSVars.css.js +5 -0
- package/dist/getSharedResource.js +30 -0
- package/dist/i18nBundle.js +62 -11
- package/{src → dist/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/dist/{util → locale}/normalizeLocale.js +8 -31
- package/dist/renderer/LitRenderer.js +44 -7
- package/dist/renderer/directives/style-map.js +72 -0
- package/dist/renderer/executeTemplate.js +34 -0
- 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/encodeCSS.js +14 -0
- package/dist/sap/base/security/encodeXML.js +23 -0
- package/dist/sap/base/security/sanitizeHTML.js +16 -0
- package/dist/sap/base/strings/toHex.js +8 -0
- package/dist/sap/base/util/now.js +7 -0
- package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
- package/dist/theming/CustomStyle.js +47 -6
- package/dist/theming/ThemeLoaded.js +22 -0
- package/dist/theming/applyTheme.js +79 -0
- package/dist/theming/getConstructableStyle.js +30 -0
- package/dist/theming/getEffectiveLinksHrefs.js +27 -0
- package/dist/theming/getEffectiveStyle.js +39 -0
- package/dist/theming/getStylesString.js +15 -0
- package/dist/theming/getThemeDesignerTheme.js +87 -0
- package/dist/theming/preloadLinks.js +23 -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/dist/{dates → 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 +29 -0
- package/dist/util/AriaLabelHelper.js +39 -0
- package/dist/util/Caret.js +32 -0
- package/dist/util/ColorConversion.js +398 -0
- package/dist/util/FocusableElements.js +30 -11
- package/dist/util/HTMLSanitizer.js +7 -0
- package/dist/util/InvisibleMessage.js +69 -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 +9 -2
- package/dist/util/arraysAreEqual.js +15 -0
- package/dist/util/clamp.js +12 -0
- package/dist/util/createLinkInHead.js +19 -0
- package/dist/util/debounce.js +17 -0
- package/dist/util/detectNavigatorLanguage.js +3 -1
- package/dist/util/escapeRegex.js +10 -0
- package/dist/util/generateHighlightedMarkup.js +42 -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/getNormalizedTarget.js +16 -0
- package/dist/util/getSingletonElementInstance.js +13 -0
- package/dist/util/isDefaultSlotProvided.js +11 -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 +25 -0
- package/lib/generate-styles/index.js +26 -0
- package/lib/generate-version-info/index.js +32 -0
- package/package-scripts.js +41 -27
- package/package.json +22 -14
- package/src/AssetRegistry.js +8 -6
- package/src/Boot.js +59 -0
- package/src/CSP.js +59 -0
- package/src/CustomElementsRegistry.js +95 -0
- package/src/CustomElementsScope.js +30 -0
- package/src/CustomElementsScopeUtils.js +108 -0
- package/src/DOMObserver.js +65 -0
- package/src/Device.js +71 -773
- package/src/EventProvider.js +38 -26
- package/src/FeaturesRegistry.js +4 -1
- package/src/FontFace.js +20 -56
- package/src/InitialConfiguration.js +64 -17
- package/src/Keys.js +295 -0
- package/src/ManagedStyles.js +83 -0
- package/src/MediaRange.js +109 -0
- package/src/PropertiesFileFormat.js +95 -0
- package/src/Render.js +175 -0
- package/src/RenderQueue.js +41 -17
- package/src/RenderScheduler.js +24 -145
- package/src/Runtimes.js +107 -0
- package/src/StaticArea.js +2 -34
- package/src/StaticAreaItem.js +69 -35
- package/src/SystemCSSVars.js +10 -0
- package/src/Theming.js +3 -44
- package/src/UI5Element.js +497 -306
- package/src/UI5ElementMetadata.js +198 -19
- package/src/asset-registries/Icons.js +125 -14
- package/src/asset-registries/Illustrations.js +30 -0
- package/src/asset-registries/LocaleData.js +114 -51
- package/src/asset-registries/Themes.js +37 -30
- package/src/asset-registries/i18n.js +81 -33
- package/src/assets-meta/IconCollectionsAlias.js +18 -0
- package/src/config/AnimationMode.js +16 -2
- package/src/config/CalendarType.js +7 -7
- package/src/config/FormatSettings.js +5 -1
- package/src/config/Icons.js +52 -0
- package/src/config/Language.js +62 -3
- package/src/config/NoConflict.js +10 -3
- package/src/config/Theme.js +32 -3
- package/src/css/BusyIndicator.css +80 -0
- package/src/css/FontFace.css +75 -0
- package/src/css/OverrideFontFace.css +32 -0
- package/src/css/SystemCSSVars.css +17 -0
- package/src/delegate/ItemNavigation.js +249 -127
- package/src/delegate/ResizeHandler.js +78 -38
- package/src/delegate/ScrollEnablement.js +122 -14
- package/src/features/F6Navigation.js +110 -0
- package/src/features/OpenUI5Enablement.js +119 -0
- package/src/features/OpenUI5Support.js +125 -0
- package/src/getSharedResource.js +30 -0
- package/src/i18nBundle.js +62 -11
- package/{dist → src/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/src/{util → locale}/normalizeLocale.js +8 -31
- package/src/renderer/LitRenderer.js +44 -7
- package/src/renderer/directives/style-map.js +72 -0
- package/src/renderer/executeTemplate.js +34 -0
- package/src/theming/CustomStyle.js +47 -6
- package/src/theming/ThemeLoaded.js +22 -0
- package/src/theming/applyTheme.js +79 -0
- package/src/theming/getConstructableStyle.js +30 -0
- package/src/theming/getEffectiveLinksHrefs.js +27 -0
- package/src/theming/getEffectiveStyle.js +39 -0
- package/src/theming/getStylesString.js +15 -0
- package/src/theming/getThemeDesignerTheme.js +87 -0
- package/src/theming/preloadLinks.js +23 -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/src/{dates → 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 +29 -0
- package/src/util/AriaLabelHelper.js +39 -0
- package/src/util/Caret.js +32 -0
- package/src/util/ColorConversion.js +398 -0
- package/src/util/FocusableElements.js +30 -11
- package/src/util/HTMLSanitizer.js +7 -0
- package/src/util/InvisibleMessage.js +69 -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 +9 -2
- package/src/util/arraysAreEqual.js +15 -0
- package/src/util/clamp.js +12 -0
- package/src/util/createLinkInHead.js +19 -0
- package/src/util/debounce.js +17 -0
- package/src/util/detectNavigatorLanguage.js +3 -1
- package/src/util/escapeRegex.js +10 -0
- package/src/util/generateHighlightedMarkup.js +42 -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/getNormalizedTarget.js +16 -0
- package/src/util/getSingletonElementInstance.js +13 -0
- package/src/util/isDefaultSlotProvided.js +11 -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 +10 -0
- package/bundle.es5.js +0 -28
- package/config/.eslintrc.js +0 -3
- package/config/rollup.config.js +0 -1
- 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 -25
- 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 -12643
- package/dist/resources/bundle.es5.js.map +0 -1
- package/dist/resources/bundle.esm.js +0 -7450
- package/dist/resources/bundle.esm.js.map +0 -1
- package/dist/shims/Core-shim.js +0 -52
- package/dist/shims/jquery-shim.js +0 -89
- package/dist/test-resources/assets/Themes.js +0 -11
- package/dist/test-resources/elements/Child.js +0 -35
- package/dist/test-resources/elements/Generic.js +0 -83
- package/dist/test-resources/elements/GenericExt.js +0 -26
- package/dist/test-resources/elements/NoShadowDOM.js +0 -13
- package/dist/test-resources/elements/Parent.js +0 -36
- package/dist/test-resources/pages/AllTestElements.html +0 -42
- package/dist/test-resources/pages/Configuration.html +0 -20
- package/dist/test-resources/pages/ConfigurationScript.html +0 -36
- package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -25
- package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -61
- package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -45
- package/dist/test-resources/specs/CustomTheme.spec.js +0 -25
- package/dist/test-resources/specs/Theming.spec.js +0 -31
- package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -258
- package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -93
- package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -101
- package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -40
- package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -12
- package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -65
- package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -22
- package/dist/test-resources/specs/UI5ElementSlots.js +0 -34
- 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 -25
- 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,185 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright (c) 2018 The Polymer Project Authors. All rights reserved.
|
|
4
|
-
* This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
|
|
5
|
-
* The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
|
|
6
|
-
* The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
|
|
7
|
-
* Code distributed by Google as part of the polymer project is also
|
|
8
|
-
* subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
(function() {
|
|
12
|
-
'use strict';
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Basic flow of the loader process
|
|
16
|
-
*
|
|
17
|
-
* There are 4 flows the loader can take when booting up
|
|
18
|
-
*
|
|
19
|
-
* - Synchronous script, no polyfills needed
|
|
20
|
-
* - wait for `DOMContentLoaded`
|
|
21
|
-
* - fire WCR event, as there could not be any callbacks passed to `waitFor`
|
|
22
|
-
*
|
|
23
|
-
* - Synchronous script, polyfills needed
|
|
24
|
-
* - document.write the polyfill bundle
|
|
25
|
-
* - wait on the `load` event of the bundle to batch Custom Element upgrades
|
|
26
|
-
* - wait for `DOMContentLoaded`
|
|
27
|
-
* - run callbacks passed to `waitFor`
|
|
28
|
-
* - fire WCR event
|
|
29
|
-
*
|
|
30
|
-
* - Asynchronous script, no polyfills needed
|
|
31
|
-
* - wait for `DOMContentLoaded`
|
|
32
|
-
* - run callbacks passed to `waitFor`
|
|
33
|
-
* - fire WCR event
|
|
34
|
-
*
|
|
35
|
-
* - Asynchronous script, polyfills needed
|
|
36
|
-
* - Append the polyfill bundle script
|
|
37
|
-
* - wait for `load` event of the bundle
|
|
38
|
-
* - batch Custom Element Upgrades
|
|
39
|
-
* - run callbacks pass to `waitFor`
|
|
40
|
-
* - fire WCR event
|
|
41
|
-
*/
|
|
42
|
-
|
|
43
|
-
var polyfillsLoaded = false;
|
|
44
|
-
var whenLoadedFns = [];
|
|
45
|
-
var allowUpgrades = false;
|
|
46
|
-
var flushFn;
|
|
47
|
-
|
|
48
|
-
function fireEvent() {
|
|
49
|
-
window.WebComponents.ready = true;
|
|
50
|
-
document.dispatchEvent(new CustomEvent('WebComponentsReady', { bubbles: true }));
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
function batchCustomElements() {
|
|
54
|
-
if (window.customElements && customElements.polyfillWrapFlushCallback) {
|
|
55
|
-
customElements.polyfillWrapFlushCallback(function (flushCallback) {
|
|
56
|
-
flushFn = flushCallback;
|
|
57
|
-
if (allowUpgrades) {
|
|
58
|
-
flushFn();
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
function asyncReady() {
|
|
65
|
-
batchCustomElements();
|
|
66
|
-
ready();
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
function ready() {
|
|
70
|
-
// bootstrap <template> elements before custom elements
|
|
71
|
-
if (window.HTMLTemplateElement && HTMLTemplateElement.bootstrap) {
|
|
72
|
-
HTMLTemplateElement.bootstrap(window.document);
|
|
73
|
-
}
|
|
74
|
-
polyfillsLoaded = true;
|
|
75
|
-
runWhenLoadedFns().then(fireEvent);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
function runWhenLoadedFns() {
|
|
79
|
-
allowUpgrades = false;
|
|
80
|
-
var fnsMap = whenLoadedFns.map(function(fn) {
|
|
81
|
-
return fn instanceof Function ? fn() : fn;
|
|
82
|
-
});
|
|
83
|
-
whenLoadedFns = [];
|
|
84
|
-
return Promise.all(fnsMap).then(function() {
|
|
85
|
-
allowUpgrades = true;
|
|
86
|
-
flushFn && flushFn();
|
|
87
|
-
}).catch(function(err) {
|
|
88
|
-
console.error(err);
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
window.WebComponents = window.WebComponents || {};
|
|
93
|
-
window.WebComponents.ready = window.WebComponents.ready || false;
|
|
94
|
-
window.WebComponents.waitFor = window.WebComponents.waitFor || function(waitFn) {
|
|
95
|
-
if (!waitFn) {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
whenLoadedFns.push(waitFn);
|
|
99
|
-
if (polyfillsLoaded) {
|
|
100
|
-
runWhenLoadedFns();
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
window.WebComponents._batchCustomElements = batchCustomElements;
|
|
104
|
-
|
|
105
|
-
var name = 'webcomponents-loader.js';
|
|
106
|
-
// Feature detect which polyfill needs to be imported.
|
|
107
|
-
var polyfills = [];
|
|
108
|
-
if (!('attachShadow' in Element.prototype && 'getRootNode' in Element.prototype) ||
|
|
109
|
-
(window.ShadyDOM && window.ShadyDOM.force)) {
|
|
110
|
-
polyfills.push('sd');
|
|
111
|
-
}
|
|
112
|
-
if (!window.customElements || window.customElements.forcePolyfill) {
|
|
113
|
-
polyfills.push('ce');
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
var needsTemplate = (function() {
|
|
117
|
-
// no real <template> because no `content` property (IE and older browsers)
|
|
118
|
-
var t = document.createElement('template');
|
|
119
|
-
if (!('content' in t)) {
|
|
120
|
-
return true;
|
|
121
|
-
}
|
|
122
|
-
// broken doc fragment (older Edge)
|
|
123
|
-
if (!(t.content.cloneNode() instanceof DocumentFragment)) {
|
|
124
|
-
return true;
|
|
125
|
-
}
|
|
126
|
-
// broken <template> cloning (Edge up to at least version 17)
|
|
127
|
-
var t2 = document.createElement('template');
|
|
128
|
-
t2.content.appendChild(document.createElement('div'));
|
|
129
|
-
t.content.appendChild(t2);
|
|
130
|
-
var clone = t.cloneNode(true);
|
|
131
|
-
return (clone.content.childNodes.length === 0 ||
|
|
132
|
-
clone.content.firstChild.content.childNodes.length === 0);
|
|
133
|
-
})();
|
|
134
|
-
|
|
135
|
-
// NOTE: any browser that does not have template or ES6 features
|
|
136
|
-
// must load the full suite of polyfills.
|
|
137
|
-
if (!window.Promise || !Array.from || !window.URL || !window.Symbol || needsTemplate) {
|
|
138
|
-
polyfills = ['sd-ce-pf'];
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
if (polyfills.length) {
|
|
142
|
-
var url;
|
|
143
|
-
var polyfillFile = 'bundles/webcomponents-' + polyfills.join('-') + '.js';
|
|
144
|
-
|
|
145
|
-
// Load it from the right place.
|
|
146
|
-
if (window.WebComponents.root) {
|
|
147
|
-
url = window.WebComponents.root + polyfillFile;
|
|
148
|
-
} else {
|
|
149
|
-
var script = document.querySelector('script[src*="' + name +'"]');
|
|
150
|
-
// Load it from the right place.
|
|
151
|
-
url = script.src.replace(name, polyfillFile);
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
var newScript = document.createElement('script');
|
|
155
|
-
newScript.src = url;
|
|
156
|
-
// if readyState is 'loading', this script is synchronous
|
|
157
|
-
if (document.readyState === 'loading') {
|
|
158
|
-
// make sure custom elements are batched whenever parser gets to the injected script
|
|
159
|
-
newScript.setAttribute('onload', 'window.WebComponents._batchCustomElements()');
|
|
160
|
-
document.write(newScript.outerHTML);
|
|
161
|
-
document.addEventListener('DOMContentLoaded', ready);
|
|
162
|
-
} else {
|
|
163
|
-
newScript.addEventListener('load', function () {
|
|
164
|
-
asyncReady();
|
|
165
|
-
});
|
|
166
|
-
newScript.addEventListener('error', function () {
|
|
167
|
-
throw new Error('Could not load polyfill bundle' + url);
|
|
168
|
-
});
|
|
169
|
-
document.head.appendChild(newScript);
|
|
170
|
-
}
|
|
171
|
-
} else {
|
|
172
|
-
// if readyState is 'complete', script is loaded imperatively on a spec-compliant browser, so just fire WCR
|
|
173
|
-
if (document.readyState === 'complete') {
|
|
174
|
-
polyfillsLoaded = true;
|
|
175
|
-
fireEvent();
|
|
176
|
-
} else {
|
|
177
|
-
// this script may come between DCL and load, so listen for both, and cancel load listener if DCL fires
|
|
178
|
-
window.addEventListener('load', ready);
|
|
179
|
-
window.addEventListener('DOMContentLoaded', function() {
|
|
180
|
-
window.removeEventListener('load', ready);
|
|
181
|
-
ready();
|
|
182
|
-
})
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
})();
|
package/src/Assets.js
DELETED
package/src/CSS.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { getEffectiveStyle } from "./Theming.js";
|
|
2
|
-
import { injectWebComponentStyle } from "./theming/StyleInjection.js";
|
|
3
|
-
import adaptCSSForIE from "./util/CSSTransformUtils.js";
|
|
4
|
-
|
|
5
|
-
const constructableStyleMap = new Map();
|
|
6
|
-
const IEStyleSet = new Set();
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Creates the needed CSS for a web component class in the head tag
|
|
10
|
-
* Note: IE11, Edge
|
|
11
|
-
* @param ElementClass
|
|
12
|
-
*/
|
|
13
|
-
const createHeadStyle = ElementClass => {
|
|
14
|
-
const tag = ElementClass.getMetadata().getTag();
|
|
15
|
-
if (IEStyleSet.has(tag)) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
let cssContent = getEffectiveStyle(ElementClass);
|
|
20
|
-
cssContent = adaptCSSForIE(cssContent, tag);
|
|
21
|
-
injectWebComponentStyle(tag, cssContent);
|
|
22
|
-
IEStyleSet.add(tag);
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Returns (and caches) a constructable style sheet for a web component class
|
|
27
|
-
* Note: Chrome
|
|
28
|
-
* @param ElementClass
|
|
29
|
-
* @returns {*}
|
|
30
|
-
*/
|
|
31
|
-
const getConstructableStyle = ElementClass => {
|
|
32
|
-
const tagName = ElementClass.getMetadata().getTag();
|
|
33
|
-
const styleContent = getEffectiveStyle(ElementClass);
|
|
34
|
-
if (constructableStyleMap.has(tagName)) {
|
|
35
|
-
return constructableStyleMap.get(tagName);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
const style = new CSSStyleSheet();
|
|
39
|
-
style.replaceSync(styleContent);
|
|
40
|
-
|
|
41
|
-
constructableStyleMap.set(tagName, style);
|
|
42
|
-
return style;
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
export {
|
|
46
|
-
createHeadStyle,
|
|
47
|
-
getConstructableStyle,
|
|
48
|
-
};
|
package/src/FormatSettings.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { getLocale } from "./LocaleProvider.js";
|
|
2
|
-
|
|
3
|
-
const mSettings = {};
|
|
4
|
-
|
|
5
|
-
const getFormatLocale = () => {
|
|
6
|
-
return getLocale();
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
const SETTINGS = {
|
|
10
|
-
configuration: null,
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
const setConfiguration = configuration => {
|
|
14
|
-
SETTINGS.configuration = configuration;
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
const getCustomLocaleData = () => {
|
|
18
|
-
return mSettings;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
// needed for compatibilty
|
|
22
|
-
const getLegacyDateFormat = () => {};
|
|
23
|
-
const getLegacyDateCalendarCustomizing = () => {};
|
|
24
|
-
|
|
25
|
-
export {
|
|
26
|
-
setConfiguration,
|
|
27
|
-
getFormatLocale,
|
|
28
|
-
getLegacyDateFormat,
|
|
29
|
-
getLegacyDateCalendarCustomizing,
|
|
30
|
-
getCustomLocaleData,
|
|
31
|
-
};
|
package/src/LocaleProvider.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import Locale from "./Locale.js";
|
|
2
|
-
import detectNavigatorLanguage from "./util/detectNavigatorLanguage.js";
|
|
3
|
-
import { getLanguage as getConfigLanguage } from "./config/Language.js";
|
|
4
|
-
|
|
5
|
-
const convertToLocaleOrNull = lang => {
|
|
6
|
-
try {
|
|
7
|
-
if (lang && typeof lang === "string") {
|
|
8
|
-
return new Locale(lang);
|
|
9
|
-
}
|
|
10
|
-
} catch (e) {
|
|
11
|
-
// ignore
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Returns the locale based on the configured language Configuration#getLanguage
|
|
17
|
-
* If no language has been configured - a new locale based on browser language is returned
|
|
18
|
-
*/
|
|
19
|
-
const getLocale = () => {
|
|
20
|
-
if (getConfigLanguage()) {
|
|
21
|
-
return new Locale(getConfigLanguage());
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return convertToLocaleOrNull(detectNavigatorLanguage());
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Returns the language of #getLocale return value
|
|
29
|
-
*/
|
|
30
|
-
const getLanguage = () => {
|
|
31
|
-
return getLocale().sLanguage;
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
export { getLocale, getLanguage };
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/* global sap */
|
|
2
|
-
|
|
3
|
-
const resources = new Map();
|
|
4
|
-
|
|
5
|
-
// date formatters from the core do not know about this new mechanism of fetching assets,
|
|
6
|
-
// but we can use the sap.ui.loader._.getModuleContent as a hook and provide the preloaded data,
|
|
7
|
-
// so that a sync request via jQuery is never triggered.
|
|
8
|
-
window.sap = window.sap || {};
|
|
9
|
-
window.sap.ui = window.sap.ui || {};
|
|
10
|
-
|
|
11
|
-
sap.ui.loader = sap.ui.loader || {};
|
|
12
|
-
sap.ui.loader._ = sap.ui.loader._ || {};
|
|
13
|
-
const getModuleContentOrig = sap.ui.loader._.getModuleContent;
|
|
14
|
-
|
|
15
|
-
sap.ui.loader._.getModuleContent = (moduleName, url) => {
|
|
16
|
-
const customContent = resources.get(moduleName) || resources.get(url);
|
|
17
|
-
|
|
18
|
-
if (customContent) {
|
|
19
|
-
return customContent;
|
|
20
|
-
}
|
|
21
|
-
if (getModuleContentOrig) {
|
|
22
|
-
return getModuleContentOrig(moduleName, url);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
const missingModule = moduleName.match(/sap\/ui\/core\/cldr\/(\w+)\.json/);
|
|
26
|
-
|
|
27
|
-
if (missingModule) {
|
|
28
|
-
throw new Error(`CLDR data for locale ${missingModule[1]} is not loaded!`);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return "";
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const registerModuleContent = (moduleName, content) => {
|
|
35
|
-
resources.set(moduleName, content);
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
export { registerModuleContent }; // eslint-disable-line
|
package/src/SVGIconRegistry.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
const registry = new Map();
|
|
2
|
-
const iconCollectionPromises = new Map();
|
|
3
|
-
|
|
4
|
-
const DEFAULT_COLLECTION = "SAP-icons";
|
|
5
|
-
|
|
6
|
-
const calcKey = (name, collection) => {
|
|
7
|
-
// silently support ui5-compatible URIs
|
|
8
|
-
if (name.startsWith("sap-icon://")) {
|
|
9
|
-
name = name.replace("sap-icon://", "");
|
|
10
|
-
[name, collection] = name.split("/").reverse();
|
|
11
|
-
}
|
|
12
|
-
collection = collection || DEFAULT_COLLECTION;
|
|
13
|
-
return `${collection}:${name}`;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
const registerIcon = (name, { pathData, accData, collection } = {}) => {
|
|
17
|
-
const key = calcKey(name, collection);
|
|
18
|
-
registry.set(key, { pathData, accData });
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
const getIconDataSync = (name, collection = DEFAULT_COLLECTION) => {
|
|
22
|
-
const key = calcKey(name, collection);
|
|
23
|
-
return registry.get(key);
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
const getIconData = async (name, collection = DEFAULT_COLLECTION) => {
|
|
27
|
-
const key = calcKey(name, collection);
|
|
28
|
-
|
|
29
|
-
if (!iconCollectionPromises.has(collection)) {
|
|
30
|
-
iconCollectionPromises.set(collection, Promise.reject());
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
await iconCollectionPromises.get(collection);
|
|
34
|
-
return registry.get(key);
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
const getRegisteredNames = async () => {
|
|
38
|
-
if (iconCollectionPromises.has(DEFAULT_COLLECTION)) {
|
|
39
|
-
await iconCollectionPromises.get(DEFAULT_COLLECTION);
|
|
40
|
-
}
|
|
41
|
-
return Array.from(registry.keys()).map(k => k.split(":")[1]);
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
const registerCollectionPromise = (collection, promise) => {
|
|
45
|
-
iconCollectionPromises.set(collection, promise);
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
export {
|
|
49
|
-
getIconData,
|
|
50
|
-
getIconDataSync,
|
|
51
|
-
registerIcon,
|
|
52
|
-
getRegisteredNames,
|
|
53
|
-
registerCollectionPromise,
|
|
54
|
-
};
|
package/src/boot.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import whenDOMReady from "./util/whenDOMReady.js";
|
|
2
|
-
import insertFontFace from "./FontFace.js";
|
|
3
|
-
import { getTheme } from "./config/Theme.js";
|
|
4
|
-
import { _applyTheme } from "./Theming.js";
|
|
5
|
-
import whenPolyfillLoaded from "./compatibility/whenPolyfillLoaded.js";
|
|
6
|
-
|
|
7
|
-
let bootPromise;
|
|
8
|
-
|
|
9
|
-
const boot = () => {
|
|
10
|
-
if (bootPromise) {
|
|
11
|
-
return bootPromise;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
bootPromise = new Promise(async resolve => {
|
|
15
|
-
await whenDOMReady();
|
|
16
|
-
await _applyTheme(getTheme());
|
|
17
|
-
insertFontFace();
|
|
18
|
-
await whenPolyfillLoaded();
|
|
19
|
-
resolve();
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
return bootPromise;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export default boot;
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
// Shorthands
|
|
2
|
-
const w = window;
|
|
3
|
-
|
|
4
|
-
// Map of observer objects per dom node
|
|
5
|
-
const observers = new WeakMap();
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Implements universal DOM node observation methods.
|
|
9
|
-
*/
|
|
10
|
-
class DOMObserver {
|
|
11
|
-
constructor() {
|
|
12
|
-
throw new Error("Static class");
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* This function abstracts out mutation observer usage inside shadow DOM.
|
|
17
|
-
* For native shadow DOM the native mutation observer is used.
|
|
18
|
-
* When the polyfill is used, the observeChildren ShadyDOM method is used instead.
|
|
19
|
-
*
|
|
20
|
-
* @throws Exception
|
|
21
|
-
* Note: does not allow several mutation observers per node. If there is a valid use-case, this behavior can be changed.
|
|
22
|
-
*
|
|
23
|
-
* @param node
|
|
24
|
-
* @param callback
|
|
25
|
-
* @param options - Only used for the native mutation observer
|
|
26
|
-
*/
|
|
27
|
-
static observeDOMNode(node, callback, options) {
|
|
28
|
-
let observerObject = observers.get(node);
|
|
29
|
-
if (observerObject) {
|
|
30
|
-
throw new Error("A mutation/ShadyDOM observer is already assigned to this node.");
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
if (w.ShadyDOM) {
|
|
34
|
-
observerObject = w.ShadyDOM.observeChildren(node, callback);
|
|
35
|
-
} else {
|
|
36
|
-
observerObject = new MutationObserver(callback);
|
|
37
|
-
observerObject.observe(node, options);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
observers.set(node, observerObject);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* De-registers the mutation observer, depending on its type
|
|
45
|
-
* @param node
|
|
46
|
-
*/
|
|
47
|
-
static unobserveDOMNode(node) {
|
|
48
|
-
const observerObject = observers.get(node);
|
|
49
|
-
if (!observerObject) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
if (observerObject instanceof MutationObserver) {
|
|
54
|
-
observerObject.disconnect();
|
|
55
|
-
} else {
|
|
56
|
-
w.ShadyDOM.unobserveChildren(observerObject);
|
|
57
|
-
}
|
|
58
|
-
observers.delete(node);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export default DOMObserver;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
const patchNodeValue = () => {
|
|
2
|
-
if (!window.ShadyDOM) {
|
|
3
|
-
return;
|
|
4
|
-
}
|
|
5
|
-
const nativeNodeValue = Object.getOwnPropertyDescriptor(Node.prototype, "nodeValue");
|
|
6
|
-
Object.defineProperty(Node.prototype, "nodeValue", {
|
|
7
|
-
get() {
|
|
8
|
-
return nativeNodeValue.get.apply(this);
|
|
9
|
-
},
|
|
10
|
-
set(text) {
|
|
11
|
-
nativeNodeValue.set.apply(this, arguments); // eslint-disable-line
|
|
12
|
-
|
|
13
|
-
// Call manually the mutation observer callback
|
|
14
|
-
const parentElement = this.parentNode;
|
|
15
|
-
if (parentElement instanceof HTMLElement && parentElement.isUI5Element) {
|
|
16
|
-
parentElement._processChildren();
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
patchNodeValue();
|
|
23
|
-
|
|
24
|
-
export default {};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
let polyfillLoadedPromise;
|
|
2
|
-
|
|
3
|
-
const whenPolyfillLoaded = () => {
|
|
4
|
-
if (polyfillLoadedPromise) {
|
|
5
|
-
return polyfillLoadedPromise;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
polyfillLoadedPromise = new Promise(resolve => {
|
|
9
|
-
if (window.WebComponents
|
|
10
|
-
&& !window.WebComponents.ready
|
|
11
|
-
&& window.WebComponents.waitFor) {
|
|
12
|
-
// the polyfill loader is present
|
|
13
|
-
window.WebComponents.waitFor(() => {
|
|
14
|
-
// the polyfills are loaded, safe to execute code depending on their APIs
|
|
15
|
-
resolve();
|
|
16
|
-
});
|
|
17
|
-
} else {
|
|
18
|
-
// polyfill loader missing, modern browsers only
|
|
19
|
-
resolve();
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
return polyfillLoadedPromise;
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
export default whenPolyfillLoaded;
|