@ui5/webcomponents-base 1.9.3 → 1.10.0
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 +1 -0
- package/CHANGELOG.md +0 -8
- package/bundle.esm.js +4 -1
- package/dist/AssetRegistry.d.ts +5 -0
- package/dist/AssetRegistry.js +2 -7
- package/dist/AssetRegistry.js.map +1 -0
- package/dist/Boot.d.ts +8 -0
- package/dist/Boot.js +29 -48
- package/dist/Boot.js.map +1 -0
- package/dist/CSP.d.ts +30 -0
- package/dist/CSP.js +16 -24
- package/dist/CSP.js.map +1 -0
- package/dist/CustomElementsRegistry.d.ts +5 -0
- package/dist/CustomElementsRegistry.js +66 -83
- package/dist/CustomElementsRegistry.js.map +1 -0
- package/dist/CustomElementsScope.d.ts +7 -0
- package/dist/CustomElementsScope.js +10 -29
- package/dist/CustomElementsScope.js.map +1 -0
- package/dist/CustomElementsScopeUtils.d.ts +55 -0
- package/dist/CustomElementsScopeUtils.js +34 -52
- package/dist/CustomElementsScopeUtils.js.map +1 -0
- package/dist/DOMObserver.d.ts +11 -0
- package/dist/DOMObserver.js +12 -54
- package/dist/DOMObserver.js.map +1 -0
- package/dist/Device.d.ts +12 -0
- package/dist/Device.js +53 -83
- package/dist/Device.js.map +1 -0
- package/dist/EventProvider.d.ts +25 -0
- package/dist/EventProvider.js +67 -82
- package/dist/EventProvider.js.map +1 -0
- package/dist/FeaturesRegistry.d.ts +3 -0
- package/dist/FeaturesRegistry.js +5 -10
- package/dist/FeaturesRegistry.js.map +1 -0
- package/dist/FontFace.d.ts +2 -0
- package/dist/FontFace.js +14 -19
- package/dist/FontFace.js.map +1 -0
- package/dist/InitialConfiguration.d.ts +22 -0
- package/dist/InitialConfiguration.js +107 -146
- package/dist/InitialConfiguration.js.map +1 -0
- package/dist/Keys.d.ts +57 -0
- package/dist/Keys.js +174 -291
- package/dist/Keys.js.map +1 -0
- package/dist/ManagedStyles.d.ts +8 -0
- package/dist/ManagedStyles.js +62 -68
- package/dist/ManagedStyles.js.map +1 -0
- package/dist/MarkedEvents.d.ts +9 -0
- package/dist/MarkedEvents.js +15 -0
- package/dist/MarkedEvents.js.map +1 -0
- package/dist/MediaRange.d.ts +37 -0
- package/dist/MediaRange.js +54 -65
- package/dist/MediaRange.js.map +1 -0
- package/dist/PropertiesFileFormat.d.ts +8 -0
- package/dist/PropertiesFileFormat.js +72 -82
- package/dist/PropertiesFileFormat.js.map +1 -0
- package/dist/Render.d.ts +47 -0
- package/dist/Render.js +81 -113
- package/dist/Render.js.map +1 -0
- package/dist/RenderQueue.d.ts +19 -0
- package/dist/RenderQueue.js +52 -62
- package/dist/RenderQueue.js.map +1 -0
- package/dist/Runtimes.d.ts +27 -0
- package/dist/Runtimes.js +49 -70
- package/dist/Runtimes.js.map +1 -0
- package/dist/StaticArea.d.ts +0 -0
- package/dist/StaticArea.js +4 -1
- package/dist/StaticArea.js.map +1 -0
- package/dist/StaticAreaItem.d.ts +36 -0
- package/dist/StaticAreaItem.js +84 -94
- package/dist/StaticAreaItem.js.map +1 -0
- package/dist/SystemCSSVars.d.ts +2 -0
- package/dist/SystemCSSVars.js +4 -5
- package/dist/SystemCSSVars.js.map +1 -0
- package/dist/Theming.d.ts +3 -0
- package/dist/Theming.js +1 -1
- package/dist/Theming.js.map +1 -0
- package/dist/UI5Element.d.ts +373 -0
- package/dist/UI5Element.js +928 -1006
- package/dist/UI5Element.js.map +1 -0
- package/dist/UI5ElementMetadata.d.ts +150 -0
- package/dist/UI5ElementMetadata.js +277 -313
- package/dist/UI5ElementMetadata.js.map +1 -0
- package/dist/animations/AnimationQueue.d.ts +8 -0
- package/dist/animations/AnimationQueue.js +31 -38
- package/dist/animations/AnimationQueue.js.map +1 -0
- package/dist/animations/animate.d.ts +14 -0
- package/dist/animations/animate.js +46 -51
- package/dist/animations/animate.js.map +1 -0
- package/dist/animations/scroll.d.ts +5 -0
- package/dist/animations/scroll.js +18 -27
- package/dist/animations/scroll.js.map +1 -0
- package/dist/animations/slideDown.d.ts +5 -0
- package/dist/animations/slideDown.js +53 -78
- package/dist/animations/slideDown.js.map +1 -0
- package/dist/animations/slideUp.d.ts +5 -0
- package/dist/animations/slideUp.js +49 -70
- package/dist/animations/slideUp.js.map +1 -0
- package/dist/api.json +1 -1
- package/dist/asset-registries/Icons.d.ts +30 -0
- package/dist/asset-registries/Icons.js +85 -118
- package/dist/asset-registries/Icons.js.map +1 -0
- package/dist/asset-registries/Illustrations.d.ts +17 -0
- package/dist/asset-registries/Illustrations.js +37 -50
- package/dist/asset-registries/Illustrations.js.map +1 -0
- package/dist/asset-registries/LocaleData.d.ts +7 -0
- package/dist/asset-registries/LocaleData.js +104 -126
- package/dist/asset-registries/LocaleData.js.map +1 -0
- package/dist/asset-registries/Themes.d.ts +10 -0
- package/dist/asset-registries/Themes.js +36 -68
- package/dist/asset-registries/Themes.js.map +1 -0
- package/dist/asset-registries/i18n.d.ts +23 -0
- package/dist/asset-registries/i18n.js +52 -80
- package/dist/asset-registries/i18n.js.map +1 -0
- package/dist/assets/bundle.esm.3d967c4e.js +56 -0
- package/dist/assets-meta/IconCollectionsAlias.d.ts +17 -0
- package/dist/assets-meta/IconCollectionsAlias.js +4 -4
- package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
- package/dist/config/AnimationMode.d.ts +14 -0
- package/dist/config/AnimationMode.js +21 -18
- package/dist/config/AnimationMode.js.map +1 -0
- package/dist/config/CalendarType.d.ts +8 -0
- package/dist/config/CalendarType.js +13 -12
- package/dist/config/CalendarType.js.map +1 -0
- package/dist/config/FormatSettings.d.ts +11 -0
- package/dist/config/FormatSettings.js +10 -8
- package/dist/config/FormatSettings.js.map +1 -0
- package/dist/config/Icons.d.ts +30 -0
- package/dist/config/Icons.js +28 -32
- package/dist/config/Icons.js.map +1 -0
- package/dist/config/Language.d.ts +31 -0
- package/dist/config/Language.js +31 -43
- package/dist/config/Language.js.map +1 -0
- package/dist/config/NoConflict.d.ts +20 -0
- package/dist/config/NoConflict.js +40 -41
- package/dist/config/NoConflict.js.map +1 -0
- package/dist/config/RTL.d.ts +7 -0
- package/dist/config/RTL.js +23 -20
- package/dist/config/RTL.js.map +1 -0
- package/dist/config/Theme.d.ts +28 -0
- package/dist/config/Theme.js +34 -36
- package/dist/config/Theme.js.map +1 -0
- package/dist/config/ThemeRoots.d.ts +4 -0
- package/dist/config/ThemeRoots.js +18 -29
- package/dist/config/ThemeRoots.js.map +1 -0
- package/dist/decorators/customElement.d.ts +8 -0
- package/dist/decorators/customElement.js +16 -0
- package/dist/decorators/customElement.js.map +1 -0
- package/dist/decorators/event.d.ts +10 -0
- package/dist/decorators/event.js +24 -0
- package/dist/decorators/event.js.map +1 -0
- package/dist/decorators/fastNavigation.d.ts +7 -0
- package/dist/decorators/fastNavigation.js +13 -0
- package/dist/decorators/fastNavigation.js.map +1 -0
- package/dist/decorators/languageAware.d.ts +7 -0
- package/dist/decorators/languageAware.js +13 -0
- package/dist/decorators/languageAware.js.map +1 -0
- package/dist/decorators/property.d.ts +9 -0
- package/dist/decorators/property.js +24 -0
- package/dist/decorators/property.js.map +1 -0
- package/dist/decorators/slot.d.ts +9 -0
- package/dist/decorators/slot.js +37 -0
- package/dist/decorators/slot.js.map +1 -0
- package/dist/decorators/themeAware.d.ts +7 -0
- package/dist/decorators/themeAware.js +13 -0
- package/dist/decorators/themeAware.js.map +1 -0
- package/dist/delegate/ItemNavigation.d.ts +113 -0
- package/dist/delegate/ItemNavigation.js +277 -317
- package/dist/delegate/ItemNavigation.js.map +1 -0
- package/dist/delegate/ResizeHandler.d.ts +24 -0
- package/dist/delegate/ResizeHandler.js +68 -91
- package/dist/delegate/ResizeHandler.js.map +1 -0
- package/dist/delegate/ScrollEnablement.d.ts +48 -0
- package/dist/delegate/ScrollEnablement.js +157 -180
- package/dist/delegate/ScrollEnablement.js.map +1 -0
- package/dist/features/F6Navigation.d.ts +16 -0
- package/dist/features/F6Navigation.js +105 -109
- package/dist/features/F6Navigation.js.map +1 -0
- package/dist/features/OpenUI5Element.d.ts +9 -0
- package/dist/features/OpenUI5Element.js +5 -0
- package/dist/features/OpenUI5Element.js.map +1 -0
- package/dist/features/OpenUI5Enablement.d.ts +11 -0
- package/dist/features/OpenUI5Enablement.js +89 -112
- package/dist/features/OpenUI5Enablement.js.map +1 -0
- package/dist/features/OpenUI5Support.d.ts +23 -0
- package/dist/features/OpenUI5Support.js +91 -120
- package/dist/features/OpenUI5Support.js.map +1 -0
- package/dist/generated/VersionInfo.js +4 -4
- package/dist/getSharedResource.d.ts +11 -0
- package/dist/getSharedResource.js +12 -16
- package/dist/getSharedResource.js.map +1 -0
- package/dist/i18nBundle.d.ts +43 -0
- package/dist/i18nBundle.js +56 -64
- package/dist/i18nBundle.js.map +1 -0
- package/dist/locale/Locale.d.ts +22 -0
- package/dist/locale/Locale.js +75 -87
- package/dist/locale/Locale.js.map +1 -0
- package/dist/locale/RTLAwareRegistry.d.ts +4 -0
- package/dist/locale/RTLAwareRegistry.js +6 -11
- package/dist/locale/RTLAwareRegistry.js.map +1 -0
- package/dist/locale/applyDirection.d.ts +10 -0
- package/dist/locale/applyDirection.js +7 -7
- package/dist/locale/applyDirection.js.map +1 -0
- package/dist/locale/directionChange.d.ts +15 -0
- package/dist/locale/directionChange.js +7 -15
- package/dist/locale/directionChange.js.map +1 -0
- package/dist/locale/getEffectiveDir.d.ts +2 -0
- package/dist/locale/getEffectiveDir.js +20 -24
- package/dist/locale/getEffectiveDir.js.map +1 -0
- package/dist/locale/getLocale.d.ts +7 -0
- package/dist/locale/getLocale.js +26 -29
- package/dist/locale/getLocale.js.map +1 -0
- package/dist/locale/languageChange.d.ts +5 -0
- package/dist/locale/languageChange.js +8 -16
- package/dist/locale/languageChange.js.map +1 -0
- package/dist/locale/nextFallbackLocale.d.ts +8 -0
- package/dist/locale/nextFallbackLocale.js +15 -19
- package/dist/locale/nextFallbackLocale.js.map +1 -0
- package/dist/locale/normalizeLocale.d.ts +7 -0
- package/dist/locale/normalizeLocale.js +34 -41
- package/dist/locale/normalizeLocale.js.map +1 -0
- package/dist/renderer/LitRenderer.d.ts +14 -0
- package/dist/renderer/LitRenderer.js +28 -39
- package/dist/renderer/LitRenderer.js.map +1 -0
- package/dist/renderer/executeTemplate.d.ts +13 -0
- package/dist/renderer/executeTemplate.js +12 -16
- package/dist/renderer/executeTemplate.js.map +1 -0
- package/dist/sap/base/Log.js +28 -29
- package/dist/sap/base/assert.js +5 -6
- package/dist/sap/base/security/URLListValidator.js +13 -2
- package/dist/theming/CustomStyle.d.ts +6 -0
- package/dist/theming/CustomStyle.js +29 -43
- package/dist/theming/CustomStyle.js.map +1 -0
- package/dist/theming/ThemeLoaded.d.ts +5 -0
- package/dist/theming/ThemeLoaded.js +8 -16
- package/dist/theming/ThemeLoaded.js.map +1 -0
- package/dist/theming/applyTheme.d.ts +2 -0
- package/dist/theming/applyTheme.js +59 -68
- package/dist/theming/applyTheme.js.map +1 -0
- package/dist/theming/getConstructableStyle.d.ts +9 -0
- package/dist/theming/getConstructableStyle.js +12 -17
- package/dist/theming/getConstructableStyle.js.map +1 -0
- package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
- package/dist/theming/getEffectiveLinksHrefs.js +12 -22
- package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
- package/dist/theming/getEffectiveStyle.d.ts +3 -0
- package/dist/theming/getEffectiveStyle.js +24 -31
- package/dist/theming/getEffectiveStyle.js.map +1 -0
- package/dist/theming/getStylesString.d.ts +3 -0
- package/dist/theming/getStylesString.js +9 -13
- package/dist/theming/getStylesString.js.map +1 -0
- package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
- package/dist/theming/getThemeDesignerTheme.js +72 -79
- package/dist/theming/getThemeDesignerTheme.js.map +1 -0
- package/dist/theming/preloadLinks.d.ts +3 -0
- package/dist/theming/preloadLinks.js +13 -17
- package/dist/theming/preloadLinks.js.map +1 -0
- package/dist/thirdparty/_merge.d.ts +2 -0
- package/dist/thirdparty/_merge.js +7 -4
- package/dist/thirdparty/_merge.js.map +1 -0
- package/dist/thirdparty/isPlainObject.d.ts +2 -0
- package/dist/thirdparty/isPlainObject.js +11 -10
- package/dist/thirdparty/isPlainObject.js.map +1 -0
- package/dist/thirdparty/merge.d.ts +2 -0
- package/dist/thirdparty/merge.js +4 -8
- package/dist/thirdparty/merge.js.map +1 -0
- package/dist/types/AnimationMode.d.ts +32 -0
- package/dist/types/AnimationMode.js +33 -6
- package/dist/types/AnimationMode.js.map +1 -0
- package/dist/types/CSSColor.d.ts +16 -0
- package/dist/types/CSSColor.js +6 -7
- package/dist/types/CSSColor.js.map +1 -0
- package/dist/types/CalendarType.d.ts +37 -0
- package/dist/types/CalendarType.js +33 -53
- package/dist/types/CalendarType.js.map +1 -0
- package/dist/types/DOMReference.d.ts +17 -0
- package/dist/types/DOMReference.js +12 -15
- package/dist/types/DOMReference.js.map +1 -0
- package/dist/types/DataType.d.ts +25 -0
- package/dist/types/DataType.js +33 -32
- package/dist/types/DataType.js.map +1 -0
- package/dist/types/Float.d.ts +18 -0
- package/dist/types/Float.js +9 -12
- package/dist/types/Float.js.map +1 -0
- package/dist/types/Integer.d.ts +18 -0
- package/dist/types/Integer.js +9 -11
- package/dist/types/Integer.js.map +1 -0
- package/dist/types/InvisibleMessageMode.d.ts +25 -0
- package/dist/types/InvisibleMessageMode.js +19 -38
- package/dist/types/InvisibleMessageMode.js.map +1 -0
- package/dist/types/ItemNavigationBehavior.d.ts +24 -0
- package/dist/types/ItemNavigationBehavior.js +22 -12
- package/dist/types/ItemNavigationBehavior.js.map +1 -0
- package/dist/types/NavigationMode.d.ts +32 -0
- package/dist/types/NavigationMode.js +33 -6
- package/dist/types/NavigationMode.js.map +1 -0
- package/dist/types/ValueState.d.ts +42 -0
- package/dist/types/ValueState.js +38 -58
- package/dist/types/ValueState.js.map +1 -0
- package/dist/types.d.ts +18 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/updateShadowRoot.d.ts +8 -0
- package/dist/updateShadowRoot.js +21 -16
- package/dist/updateShadowRoot.js.map +1 -0
- package/dist/util/AriaLabelHelper.d.ts +6 -0
- package/dist/util/AriaLabelHelper.js +34 -46
- package/dist/util/AriaLabelHelper.js.map +1 -0
- package/dist/util/Caret.d.ts +7 -0
- package/dist/util/Caret.js +16 -25
- package/dist/util/Caret.js.map +1 -0
- package/dist/util/ColorConversion.d.ts +30 -0
- package/dist/util/ColorConversion.js +311 -372
- package/dist/util/ColorConversion.js.map +1 -0
- package/dist/util/FetchHelper.d.ts +3 -0
- package/dist/util/FetchHelper.js +19 -25
- package/dist/util/FetchHelper.js.map +1 -0
- package/dist/util/FocusableElements.d.ts +4 -0
- package/dist/util/FocusableElements.js +54 -71
- package/dist/util/FocusableElements.js.map +1 -0
- package/dist/util/HTMLSanitizer.d.ts +3 -0
- package/dist/util/HTMLSanitizer.js +4 -5
- package/dist/util/HTMLSanitizer.js.map +1 -0
- package/dist/util/InvisibleMessage.d.ts +10 -0
- package/dist/util/InvisibleMessage.js +40 -53
- package/dist/util/InvisibleMessage.js.map +1 -0
- package/dist/util/PopupUtils.d.ts +7 -0
- package/dist/util/PopupUtils.js +58 -77
- package/dist/util/PopupUtils.js.map +1 -0
- package/dist/util/SlotsHelper.d.ts +9 -0
- package/dist/util/SlotsHelper.js +22 -35
- package/dist/util/SlotsHelper.js.map +1 -0
- package/dist/util/StringHelper.d.ts +3 -0
- package/dist/util/StringHelper.js +17 -20
- package/dist/util/StringHelper.js.map +1 -0
- package/dist/util/TabbableElements.d.ts +17 -0
- package/dist/util/TabbableElements.js +53 -47
- package/dist/util/TabbableElements.js.map +1 -0
- package/dist/util/arraysAreEqual.d.ts +2 -0
- package/dist/util/arraysAreEqual.js +10 -12
- package/dist/util/arraysAreEqual.js.map +1 -0
- package/dist/util/clamp.d.ts +9 -0
- package/dist/util/clamp.js +2 -2
- package/dist/util/clamp.js.map +1 -0
- package/dist/util/createLinkInHead.d.ts +7 -0
- package/dist/util/createLinkInHead.js +14 -17
- package/dist/util/createLinkInHead.js.map +1 -0
- package/dist/util/createStyleInHead.d.ts +8 -0
- package/dist/util/createStyleInHead.js +10 -10
- package/dist/util/createStyleInHead.js.map +1 -0
- package/dist/util/debounce.d.ts +2 -0
- package/dist/util/debounce.js +6 -8
- package/dist/util/debounce.js.map +1 -0
- package/dist/util/detectNavigatorLanguage.d.ts +2 -0
- package/dist/util/detectNavigatorLanguage.js +7 -10
- package/dist/util/detectNavigatorLanguage.js.map +1 -0
- package/dist/util/escapeRegex.d.ts +8 -0
- package/dist/util/escapeRegex.js +8 -7
- package/dist/util/escapeRegex.js.map +1 -0
- package/dist/util/formatMessage.d.ts +2 -0
- package/dist/util/formatMessage.js +15 -19
- package/dist/util/formatMessage.js.map +1 -0
- package/dist/util/generateHighlightedMarkup.d.ts +9 -0
- package/dist/util/generateHighlightedMarkup.js +26 -27
- package/dist/util/generateHighlightedMarkup.js.map +1 -0
- package/dist/util/getActiveElement.d.ts +2 -0
- package/dist/util/getActiveElement.js +6 -8
- package/dist/util/getActiveElement.js.map +1 -0
- package/dist/util/getClassCopy.d.ts +400 -0
- package/dist/util/getClassCopy.js +7 -7
- package/dist/util/getClassCopy.js.map +1 -0
- package/dist/util/getDesigntimePropertyAsArray.d.ts +2 -0
- package/dist/util/getDesigntimePropertyAsArray.js +4 -3
- package/dist/util/getDesigntimePropertyAsArray.js.map +1 -0
- package/dist/util/getEffectiveContentDensity.d.ts +2 -0
- package/dist/util/getEffectiveContentDensity.js +2 -3
- package/dist/util/getEffectiveContentDensity.js.map +1 -0
- package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
- package/dist/util/getEffectiveScrollbarStyle.js +1 -2
- package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
- package/dist/util/getFastNavigationGroups.d.ts +2 -0
- package/dist/util/getFastNavigationGroups.js +44 -56
- package/dist/util/getFastNavigationGroups.js.map +1 -0
- package/dist/util/getFileExtension.d.ts +12 -0
- package/dist/util/getFileExtension.js +9 -11
- package/dist/util/getFileExtension.js.map +1 -0
- package/dist/util/getNormalizedTarget.d.ts +7 -0
- package/dist/util/getNormalizedTarget.js +7 -9
- package/dist/util/getNormalizedTarget.js.map +1 -0
- package/dist/util/getSingletonElementInstance.d.ts +2 -0
- package/dist/util/getSingletonElementInstance.js +7 -10
- package/dist/util/getSingletonElementInstance.js.map +1 -0
- package/dist/util/isElementClickable.d.ts +2 -0
- package/dist/util/isElementClickable.js +16 -0
- package/dist/util/isElementClickable.js.map +1 -0
- package/dist/util/isElementHidden.d.ts +2 -0
- package/dist/util/isElementHidden.js +8 -0
- package/dist/util/isElementHidden.js.map +1 -0
- package/dist/util/isElementInView.d.ts +6 -0
- package/dist/util/isElementInView.js +6 -9
- package/dist/util/isElementInView.js.map +1 -0
- package/dist/util/isElementTabbable.d.ts +9 -0
- package/dist/util/isElementTabbable.js +30 -0
- package/dist/util/isElementTabbable.js.map +1 -0
- package/dist/util/isValidPropertyName.d.ts +8 -0
- package/dist/util/isValidPropertyName.js +16 -17
- package/dist/util/isValidPropertyName.js.map +1 -0
- package/dist/util/whenDOMReady.d.ts +2 -0
- package/dist/util/whenDOMReady.js +11 -10
- package/dist/util/whenDOMReady.js.map +1 -0
- package/dist/util/willShowContent.d.ts +2 -0
- package/dist/util/willShowContent.js +7 -0
- package/dist/util/willShowContent.js.map +1 -0
- package/dist/validateThemeRoot.d.ts +2 -0
- package/dist/validateThemeRoot.js +41 -52
- package/dist/validateThemeRoot.js.map +1 -0
- package/global.d.ts +44 -0
- package/package-scripts.js +14 -5
- package/package.json +4 -4
- package/src/{AssetRegistry.js → AssetRegistry.ts} +0 -0
- package/src/Boot.ts +61 -0
- package/src/{CSP.js → CSP.ts} +14 -7
- package/src/{CustomElementsRegistry.js → CustomElementsRegistry.ts} +19 -16
- package/src/{CustomElementsScope.js → CustomElementsScope.ts} +8 -5
- package/src/{CustomElementsScopeUtils.js → CustomElementsScopeUtils.ts} +14 -7
- package/src/DOMObserver.ts +28 -0
- package/src/{Device.js → Device.ts} +17 -14
- package/src/{EventProvider.js → EventProvider.ts} +9 -7
- package/src/FeaturesRegistry.ts +14 -0
- package/src/{FontFace.js → FontFace.ts} +3 -2
- package/src/{InitialConfiguration.js → InitialConfiguration.ts} +33 -12
- package/src/Keys.ts +295 -0
- package/src/ManagedStyles.ts +92 -0
- package/src/MarkedEvents.ts +20 -0
- package/src/{MediaRange.js → MediaRange.ts} +54 -53
- package/src/{PropertiesFileFormat.js → PropertiesFileFormat.ts} +8 -8
- package/src/{Render.js → Render.ts} +25 -20
- package/src/{RenderQueue.js → RenderQueue.ts} +10 -5
- package/src/{Runtimes.js → Runtimes.ts} +15 -8
- package/src/{StaticArea.js → StaticArea.ts} +0 -0
- package/src/{StaticAreaItem.js → StaticAreaItem.ts} +26 -22
- package/src/{SystemCSSVars.js → SystemCSSVars.ts} +0 -0
- package/src/{Theming.js → Theming.ts} +0 -0
- package/src/{UI5Element.js → UI5Element.ts} +263 -153
- package/src/{UI5ElementMetadata.js → UI5ElementMetadata.ts} +120 -58
- package/src/animations/{AnimationQueue.js → AnimationQueue.ts} +8 -7
- package/src/animations/animate.ts +64 -0
- package/src/animations/scroll.ts +21 -0
- package/src/animations/{slideDown.js → slideDown.ts} +27 -34
- package/src/animations/{slideUp.js → slideUp.ts} +28 -32
- package/src/asset-registries/{Icons.js → Icons.ts} +63 -38
- package/src/asset-registries/Illustrations.ts +75 -0
- package/src/asset-registries/{LocaleData.js → LocaleData.ts} +35 -21
- package/src/asset-registries/{Themes.js → Themes.ts} +14 -29
- package/src/asset-registries/{i18n.js → i18n.ts} +18 -23
- package/src/assets-meta/{IconCollectionsAlias.js → IconCollectionsAlias.ts} +0 -0
- package/src/config/AnimationMode.ts +33 -0
- package/src/config/{CalendarType.js → CalendarType.ts} +8 -3
- package/src/config/FormatSettings.ts +21 -0
- package/src/config/{Icons.js → Icons.ts} +19 -12
- package/src/config/{Language.js → Language.ts} +22 -18
- package/src/config/NoConflict.ts +67 -0
- package/src/config/{RTL.js → RTL.ts} +14 -4
- package/src/config/Theme.ts +64 -0
- package/src/config/{ThemeRoots.js → ThemeRoots.ts} +9 -7
- package/src/decorators/customElement.ts +17 -0
- package/src/decorators/event.ts +28 -0
- package/src/decorators/fastNavigation.ts +14 -0
- package/src/decorators/languageAware.ts +14 -0
- package/src/decorators/property.ts +30 -0
- package/src/decorators/slot.ts +49 -0
- package/src/decorators/themeAware.ts +14 -0
- package/src/delegate/{ItemNavigation.js → ItemNavigation.ts} +56 -19
- package/src/delegate/{ResizeHandler.js → ResizeHandler.ts} +25 -36
- package/src/delegate/ScrollEnablement.ts +221 -0
- package/src/features/{F6Navigation.js → F6Navigation.ts} +50 -25
- package/src/features/OpenUI5Element.ts +11 -0
- package/src/features/OpenUI5Enablement.ts +117 -0
- package/src/features/OpenUI5Support.ts +148 -0
- package/src/{getSharedResource.js → getSharedResource.ts} +3 -3
- package/src/{i18nBundle.js → i18nBundle.ts} +45 -23
- package/src/locale/{Locale.js → Locale.ts} +15 -5
- package/src/locale/RTLAwareRegistry.ts +16 -0
- package/src/locale/{applyDirection.js → applyDirection.ts} +4 -3
- package/src/locale/{directionChange.js → directionChange.ts} +6 -4
- package/src/locale/{getEffectiveDir.js → getEffectiveDir.ts} +1 -1
- package/src/locale/{getLocale.js → getLocale.ts} +12 -7
- package/src/locale/languageChange.ts +24 -0
- package/src/locale/{nextFallbackLocale.js → nextFallbackLocale.ts} +1 -1
- package/src/locale/{normalizeLocale.js → normalizeLocale.ts} +5 -3
- package/src/renderer/LitRenderer.ts +60 -0
- package/src/renderer/{executeTemplate.js → executeTemplate.ts} +11 -5
- package/src/theming/{CustomStyle.js → CustomStyle.ts} +11 -9
- package/src/theming/{ThemeLoaded.js → ThemeLoaded.ts} +6 -4
- package/src/theming/{applyTheme.js → applyTheme.ts} +16 -10
- package/src/theming/{getConstructableStyle.js → getConstructableStyle.ts} +5 -4
- package/src/theming/getEffectiveLinksHrefs.ts +26 -0
- package/src/theming/{getEffectiveStyle.js → getEffectiveStyle.ts} +9 -7
- package/src/theming/getStylesString.ts +15 -0
- package/src/theming/{getThemeDesignerTheme.js → getThemeDesignerTheme.ts} +22 -8
- package/src/theming/{preloadLinks.js → preloadLinks.ts} +3 -2
- package/src/thirdparty/{_merge.js → _merge.ts} +2 -2
- package/src/thirdparty/{isPlainObject.js → isPlainObject.ts} +1 -1
- package/src/thirdparty/merge.ts +5 -0
- package/src/types/AnimationMode.ts +33 -0
- package/src/types/{CSSColor.js → CSSColor.ts} +3 -3
- package/src/types/CalendarType.ts +38 -0
- package/src/types/{DOMReference.js → DOMReference.ts} +4 -4
- package/src/types/DataType.ts +51 -0
- package/src/types/{Float.js → Float.ts} +5 -5
- package/src/types/{Integer.js → Integer.ts} +5 -4
- package/src/types/InvisibleMessageMode.ts +27 -0
- package/src/types/ItemNavigationBehavior.ts +26 -0
- package/src/types/NavigationMode.ts +33 -0
- package/src/types/ValueState.ts +47 -0
- package/src/types.ts +30 -0
- package/src/updateShadowRoot.ts +37 -0
- package/src/util/AriaLabelHelper.ts +63 -0
- package/src/util/{Caret.js → Caret.ts} +5 -9
- package/src/util/{ColorConversion.js → ColorConversion.ts} +183 -182
- package/src/util/{FetchHelper.js → FetchHelper.ts} +7 -7
- package/src/util/FocusableElements.ts +82 -0
- package/src/util/{HTMLSanitizer.js → HTMLSanitizer.ts} +2 -0
- package/src/util/{InvisibleMessage.js → InvisibleMessage.ts} +6 -6
- package/src/util/PopupUtils.ts +112 -0
- package/src/util/{SlotsHelper.js → SlotsHelper.ts} +9 -13
- package/src/util/{StringHelper.js → StringHelper.ts} +7 -7
- package/src/util/TabbableElements.ts +70 -0
- package/src/util/{arraysAreEqual.js → arraysAreEqual.ts} +1 -1
- package/src/util/{clamp.js → clamp.ts} +1 -1
- package/src/util/{createLinkInHead.js → createLinkInHead.ts} +6 -5
- package/src/util/{createStyleInHead.js → createStyleInHead.ts} +4 -2
- package/src/util/{debounce.js → debounce.ts} +5 -4
- package/src/util/{detectNavigatorLanguage.js → detectNavigatorLanguage.ts} +1 -1
- package/src/util/escapeRegex.ts +11 -0
- package/src/util/{formatMessage.js → formatMessage.ts} +4 -3
- package/src/util/{generateHighlightedMarkup.js → generateHighlightedMarkup.ts} +7 -6
- package/src/util/{getActiveElement.js → getActiveElement.ts} +0 -0
- package/src/util/{getClassCopy.js → getClassCopy.ts} +3 -1
- package/src/util/{getDesigntimePropertyAsArray.js → getDesigntimePropertyAsArray.ts} +1 -1
- package/src/util/getEffectiveContentDensity.ts +5 -0
- package/src/util/{getEffectiveScrollbarStyle.js → getEffectiveScrollbarStyle.ts} +0 -0
- package/src/util/{getFastNavigationGroups.js → getFastNavigationGroups.ts} +10 -10
- package/src/util/{getFileExtension.js → getFileExtension.ts} +3 -3
- package/src/util/{getNormalizedTarget.js → getNormalizedTarget.ts} +2 -2
- package/src/util/{getSingletonElementInstance.js → getSingletonElementInstance.ts} +1 -1
- package/src/util/isElementClickable.ts +19 -0
- package/src/util/isElementHidden.ts +9 -0
- package/src/util/{isElementInView.js → isElementInView.ts} +1 -1
- package/src/util/isElementTabbable.ts +37 -0
- package/src/util/{isValidPropertyName.js → isValidPropertyName.ts} +1 -1
- package/src/util/{whenDOMReady.js → whenDOMReady.ts} +1 -1
- package/src/util/willShowContent.ts +7 -0
- package/src/{validateThemeRoot.js → validateThemeRoot.ts} +4 -4
- package/tsconfig.json +13 -0
- package/dist/RenderScheduler.js +0 -44
- package/dist/animations/config.js +0 -5
- package/dist/assets/bundle.esm.e2bd78ba.js +0 -55
- package/dist/types/CSSSize.js +0 -20
- package/dist/types/PopupState.js +0 -57
- package/dist/util/isDefaultSlotProvided.js +0 -11
- package/dist/util/isDescendantOf.js +0 -15
- package/dist/util/isNodeClickable.js +0 -19
- package/dist/util/isNodeHidden.js +0 -9
- package/dist/util/isNodeTabbable.js +0 -28
- package/dist/util/setToArray.js +0 -10
- package/src/Boot.js +0 -63
- package/src/DOMObserver.js +0 -65
- package/src/FeaturesRegistry.js +0 -14
- package/src/Keys.js +0 -295
- package/src/ManagedStyles.js +0 -83
- package/src/RenderScheduler.js +0 -44
- package/src/animations/animate.js +0 -53
- package/src/animations/config.js +0 -5
- package/src/animations/scroll.js +0 -28
- package/src/asset-registries/Illustrations.js +0 -59
- package/src/config/AnimationMode.js +0 -23
- package/src/config/FormatSettings.js +0 -13
- package/src/config/NoConflict.js +0 -51
- package/src/config/Theme.js +0 -53
- package/src/delegate/ScrollEnablement.js +0 -188
- package/src/features/OpenUI5Enablement.js +0 -119
- package/src/features/OpenUI5Support.js +0 -126
- package/src/locale/RTLAwareRegistry.js +0 -14
- package/src/locale/languageChange.js +0 -22
- package/src/renderer/LitRenderer.js +0 -52
- package/src/theming/getEffectiveLinksHrefs.js +0 -27
- package/src/theming/getStylesString.js +0 -15
- package/src/thirdparty/merge.js +0 -10
- package/src/types/AnimationMode.js +0 -7
- package/src/types/CSSSize.js +0 -20
- package/src/types/CalendarType.js +0 -59
- package/src/types/DataType.js +0 -43
- package/src/types/InvisibleMessageMode.js +0 -46
- package/src/types/ItemNavigationBehavior.js +0 -16
- package/src/types/NavigationMode.js +0 -7
- package/src/types/PopupState.js +0 -57
- package/src/types/ValueState.js +0 -64
- package/src/updateShadowRoot.js +0 -29
- package/src/util/AriaLabelHelper.js +0 -56
- package/src/util/FocusableElements.js +0 -79
- package/src/util/PopupUtils.js +0 -93
- package/src/util/TabbableElements.js +0 -51
- package/src/util/escapeRegex.js +0 -10
- package/src/util/getEffectiveContentDensity.js +0 -5
- package/src/util/isDefaultSlotProvided.js +0 -11
- package/src/util/isDescendantOf.js +0 -15
- package/src/util/isNodeClickable.js +0 -19
- package/src/util/isNodeHidden.js +0 -9
- package/src/util/isNodeTabbable.js +0 -28
- package/src/util/setToArray.js +0 -10
|
@@ -3,14 +3,12 @@
|
|
|
3
3
|
* @param {Object} target The original event target
|
|
4
4
|
* @returns {Object} The normalized target
|
|
5
5
|
*/
|
|
6
|
-
const getNormalizedTarget = target => {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return element;
|
|
6
|
+
const getNormalizedTarget = (target) => {
|
|
7
|
+
let element = target;
|
|
8
|
+
if (target.shadowRoot && target.shadowRoot.activeElement) {
|
|
9
|
+
element = target.shadowRoot.activeElement;
|
|
10
|
+
}
|
|
11
|
+
return element;
|
|
14
12
|
};
|
|
15
|
-
|
|
16
13
|
export default getNormalizedTarget;
|
|
14
|
+
//# sourceMappingURL=getNormalizedTarget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getNormalizedTarget.js","sourceRoot":"","sources":["../../src/util/getNormalizedTarget.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,MAAmB,EAAE,EAAE;IACnD,IAAI,OAAO,GAAG,MAAM,CAAC;IAErB,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE;QACzD,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,aAA4B,CAAC;KACzD;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
const getSingletonElementInstance = (tag, parentElement = document.body) => {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
el = document.createElement(tag);
|
|
9
|
-
|
|
10
|
-
return parentElement.insertBefore(el, parentElement.firstChild);
|
|
2
|
+
let el = document.querySelector(tag);
|
|
3
|
+
if (el) {
|
|
4
|
+
return el;
|
|
5
|
+
}
|
|
6
|
+
el = document.createElement(tag);
|
|
7
|
+
return parentElement.insertBefore(el, parentElement.firstChild);
|
|
11
8
|
};
|
|
12
|
-
|
|
13
9
|
export default getSingletonElementInstance;
|
|
10
|
+
//# sourceMappingURL=getSingletonElementInstance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getSingletonElementInstance.js","sourceRoot":"","sources":["../../src/util/getSingletonElementInstance.ts"],"names":[],"mappings":"AAAA,MAAM,2BAA2B,GAAG,CAAC,GAAW,EAAE,gBAA6B,QAAQ,CAAC,IAAI,EAAE,EAAE;IAC/F,IAAI,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAErC,IAAI,EAAE,EAAE;QACP,OAAO,EAAE,CAAC;KACV;IAED,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAEjC,OAAO,aAAa,CAAC,YAAY,CAAC,EAAE,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const rClickable = /^(?:a|area)$/i;
|
|
2
|
+
const rFocusable = /^(?:input|select|textarea|button)$/i;
|
|
3
|
+
const isElementClickable = (el) => {
|
|
4
|
+
if (el.disabled) {
|
|
5
|
+
return false;
|
|
6
|
+
}
|
|
7
|
+
const tabIndex = el.getAttribute("tabindex");
|
|
8
|
+
if (tabIndex !== null && tabIndex !== undefined) {
|
|
9
|
+
return parseInt(tabIndex) >= 0;
|
|
10
|
+
}
|
|
11
|
+
return rFocusable.test(el.nodeName)
|
|
12
|
+
|| (rClickable.test(el.nodeName)
|
|
13
|
+
&& !!el.href);
|
|
14
|
+
};
|
|
15
|
+
export default isElementClickable;
|
|
16
|
+
//# sourceMappingURL=isElementClickable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isElementClickable.js","sourceRoot":"","sources":["../../src/util/isElementClickable.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,eAAe,CAAC;AACnC,MAAM,UAAU,GAAG,qCAAqC,CAAC;AAEzD,MAAM,kBAAkB,GAAG,CAAC,EAAe,EAAW,EAAE;IACvD,IAAK,EAAwB,CAAC,QAAQ,EAAE;QACvC,OAAO,KAAK,CAAC;KACb;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE;QAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC/B;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;WAC/B,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;eAC7B,CAAC,CAAE,EAAsB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
const isElementHidden = (el) => {
|
|
2
|
+
if (el.nodeName === "SLOT") {
|
|
3
|
+
return false;
|
|
4
|
+
}
|
|
5
|
+
return (el.offsetWidth <= 0 && el.offsetHeight <= 0) || (el.style && el.style.visibility === "hidden");
|
|
6
|
+
};
|
|
7
|
+
export default isElementHidden;
|
|
8
|
+
//# sourceMappingURL=isElementHidden.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isElementHidden.js","sourceRoot":"","sources":["../../src/util/isElementHidden.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,EAAE;IAC3C,IAAI,EAAE,CAAC,QAAQ,KAAK,MAAM,EAAE;QAC3B,OAAO,KAAK,CAAC;KACb;IAED,OAAO,CAAC,EAAE,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC;AACxG,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -2,14 +2,11 @@
|
|
|
2
2
|
* Determines if the element is within the viewport.
|
|
3
3
|
* @param el {HTMLElement}
|
|
4
4
|
*/
|
|
5
|
-
const isElementInView = el => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
&& rect.bottom <= (window.innerHeight || document.documentElement.clientHeight)
|
|
11
|
-
&& rect.right <= (window.innerWidth || document.documentElement.clientWidth)
|
|
12
|
-
);
|
|
5
|
+
const isElementInView = (el) => {
|
|
6
|
+
const rect = el.getBoundingClientRect();
|
|
7
|
+
return (rect.top >= 0 && rect.left >= 0
|
|
8
|
+
&& rect.bottom <= (window.innerHeight || document.documentElement.clientHeight)
|
|
9
|
+
&& rect.right <= (window.innerWidth || document.documentElement.clientWidth));
|
|
13
10
|
};
|
|
14
|
-
|
|
15
11
|
export default isElementInView;
|
|
12
|
+
//# sourceMappingURL=isElementInView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isElementInView.js","sourceRoot":"","sources":["../../src/util/isElementInView.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,EAAE;IAC3C,MAAM,IAAI,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC;IAExC,OAAO,CACN,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC;WAC3B,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC;WAC5E,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC,CAC7E,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns if the HTMLElement is tabbable.
|
|
3
|
+
*
|
|
4
|
+
* @public
|
|
5
|
+
* @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
|
|
6
|
+
* @returns { boolean } true if the element is tabbable or false - if not
|
|
7
|
+
*/
|
|
8
|
+
declare const isElementTabbable: (el: HTMLElement) => boolean;
|
|
9
|
+
export default isElementTabbable;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import isElementHidden from "./isElementHidden.js";
|
|
2
|
+
/**
|
|
3
|
+
* Returns if the HTMLElement is tabbable.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
* @param { HTMLElement } el the component to operate on (component that slots or contains within its shadow root the items the user navigates among)
|
|
7
|
+
* @returns { boolean } true if the element is tabbable or false - if not
|
|
8
|
+
*/
|
|
9
|
+
const isElementTabbable = (el) => {
|
|
10
|
+
if (!el) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const nodeName = el.nodeName.toLowerCase();
|
|
14
|
+
if (el.hasAttribute("data-sap-no-tab-ref")) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
if (isElementHidden(el)) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
const tabIndex = el.getAttribute("tabindex");
|
|
21
|
+
if (tabIndex !== null && tabIndex !== undefined) {
|
|
22
|
+
return parseInt(tabIndex) >= 0;
|
|
23
|
+
}
|
|
24
|
+
if (nodeName === "a" || /input|select|textarea|button|object/.test(nodeName)) {
|
|
25
|
+
return !el.disabled;
|
|
26
|
+
}
|
|
27
|
+
return false;
|
|
28
|
+
};
|
|
29
|
+
export default isElementTabbable;
|
|
30
|
+
//# sourceMappingURL=isElementTabbable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isElementTabbable.js","sourceRoot":"","sources":["../../src/util/isElementTabbable.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,sBAAsB,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,iBAAiB,GAAG,CAAC,EAAe,EAAW,EAAE;IACtD,IAAI,CAAC,EAAE,EAAE;QACR,OAAO,KAAK,CAAC;KACb;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAE3C,IAAI,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE;QAC3C,OAAO,KAAK,CAAC;KACb;IAED,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC;KACb;IAED,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE;QAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC/B;IAED,IAAI,QAAQ,KAAK,GAAG,IAAI,qCAAqC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QAC7E,OAAO,CAAE,EAAsB,CAAC,QAAQ,CAAC;KACzC;IAED,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,29 +1,28 @@
|
|
|
1
1
|
// Note: disabled is present in IE so we explicitly allow it here.
|
|
2
2
|
// Others, such as title/hidden, we explicitly override, so valid too
|
|
3
3
|
const allowList = [
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
"disabled",
|
|
5
|
+
"title",
|
|
6
|
+
"hidden",
|
|
7
|
+
"role",
|
|
8
|
+
"draggable",
|
|
9
9
|
];
|
|
10
|
-
|
|
11
10
|
/**
|
|
12
11
|
* Checks whether a property name is valid (does not collide with existing DOM API properties)
|
|
13
12
|
*
|
|
14
13
|
* @param name
|
|
15
14
|
* @returns {boolean}
|
|
16
15
|
*/
|
|
17
|
-
const isValidPropertyName = name => {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
16
|
+
const isValidPropertyName = (name) => {
|
|
17
|
+
if (allowList.includes(name) || name.startsWith("aria")) {
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
const classes = [
|
|
21
|
+
HTMLElement,
|
|
22
|
+
Element,
|
|
23
|
+
Node,
|
|
24
|
+
];
|
|
25
|
+
return !classes.some(klass => klass.prototype.hasOwnProperty(name)); // eslint-disable-line
|
|
27
26
|
};
|
|
28
|
-
|
|
29
27
|
export default isValidPropertyName;
|
|
28
|
+
//# sourceMappingURL=isValidPropertyName.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isValidPropertyName.js","sourceRoot":"","sources":["../../src/util/isValidPropertyName.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,qEAAqE;AACrE,MAAM,SAAS,GAAG;IACjB,UAAU;IACV,OAAO;IACP,QAAQ;IACR,MAAM;IACN,WAAW;CACX,CAAC;AAEF;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC5C,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACxD,OAAO,IAAI,CAAC;KACZ;IACD,MAAM,OAAO,GAAG;QACf,WAAW;QACX,OAAO;QACP,IAAI;KACJ,CAAC;IACF,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,sBAAsB;AAC5F,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
const whenDOMReady = () => {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
return new Promise(resolve => {
|
|
3
|
+
if (document.body) {
|
|
4
|
+
resolve();
|
|
5
|
+
}
|
|
6
|
+
else {
|
|
7
|
+
document.addEventListener("DOMContentLoaded", () => {
|
|
8
|
+
resolve();
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
});
|
|
11
12
|
};
|
|
12
|
-
|
|
13
13
|
export default whenDOMReady;
|
|
14
|
+
//# sourceMappingURL=whenDOMReady.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"whenDOMReady.js","sourceRoot":"","sources":["../../src/util/whenDOMReady.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,GAAG,EAAE;IACzB,OAAO,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;QAClC,IAAI,QAAQ,CAAC,IAAI,EAAE;YAClB,OAAO,EAAE,CAAC;SACV;aAAM;YACN,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;gBAClD,OAAO,EAAE,CAAC;YACX,CAAC,CAAC,CAAC;SACH;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const willShowContent = (childNodes) => {
|
|
2
|
+
return Array.from(childNodes).filter(node => {
|
|
3
|
+
return node.nodeType !== Node.COMMENT_NODE && (node.nodeType !== Node.TEXT_NODE || (node.nodeValue || "").trim().length !== 0);
|
|
4
|
+
}).length > 0;
|
|
5
|
+
};
|
|
6
|
+
export default willShowContent;
|
|
7
|
+
//# sourceMappingURL=willShowContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"willShowContent.js","sourceRoot":"","sources":["../../src/util/willShowContent.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,UAAuB,EAAE,EAAE;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC3C,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAChI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACf,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -1,58 +1,47 @@
|
|
|
1
|
-
const getMetaTagValue = metaTagName => {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
return metaTagContent;
|
|
1
|
+
const getMetaTagValue = (metaTagName) => {
|
|
2
|
+
const metaTag = document.querySelector(`META[name="${metaTagName}"]`), metaTagContent = metaTag && metaTag.getAttribute("content");
|
|
3
|
+
return metaTagContent;
|
|
6
4
|
};
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
return allowedOrigin === "*" || origin === allowedOrigin.trim();
|
|
13
|
-
});
|
|
5
|
+
const validateThemeOrigin = (origin) => {
|
|
6
|
+
const allowedOrigins = getMetaTagValue("sap-allowedThemeOrigins");
|
|
7
|
+
return allowedOrigins && allowedOrigins.split(",").some(allowedOrigin => {
|
|
8
|
+
return allowedOrigin === "*" || origin === allowedOrigin.trim();
|
|
9
|
+
});
|
|
14
10
|
};
|
|
15
|
-
|
|
16
11
|
const buildCorrectUrl = (oldUrl, newOrigin) => {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
return new URL(oldUrlPath, newOrigin).toString();
|
|
12
|
+
const oldUrlPath = new URL(oldUrl).pathname;
|
|
13
|
+
return new URL(oldUrlPath, newOrigin).toString();
|
|
20
14
|
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
return `${resultUrl}UI5/`;
|
|
53
|
-
} catch (e) {
|
|
54
|
-
// Catch if URL is not correct
|
|
55
|
-
}
|
|
15
|
+
const validateThemeRoot = (themeRoot) => {
|
|
16
|
+
let themeRootURL, resultUrl;
|
|
17
|
+
try {
|
|
18
|
+
themeRootURL = new URL(themeRoot);
|
|
19
|
+
const origin = themeRootURL.origin;
|
|
20
|
+
themeRootURL = themeRootURL.toString();
|
|
21
|
+
if (themeRootURL.startsWith(".") || themeRootURL.startsWith("/")) {
|
|
22
|
+
// Handle relative url
|
|
23
|
+
// new URL("/newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
|
|
24
|
+
// new URL("./newExmPath", "http://example.com/exmPath") => http://example.com/exmPath/newExmPath
|
|
25
|
+
// new URL("../newExmPath", "http://example.com/exmPath") => http://example.com/newExmPath
|
|
26
|
+
resultUrl = new URL(themeRootURL, window.location.href).toString();
|
|
27
|
+
}
|
|
28
|
+
else if (origin && validateThemeOrigin(origin)) {
|
|
29
|
+
// If origin is allowed, use it
|
|
30
|
+
resultUrl = themeRootURL.toString();
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
// If origin is not allow and the URL is not relative, we have to replace the origin
|
|
34
|
+
// with current location
|
|
35
|
+
resultUrl = buildCorrectUrl(themeRootURL, window.location.href);
|
|
36
|
+
}
|
|
37
|
+
if (!resultUrl.endsWith("/")) {
|
|
38
|
+
resultUrl = `${resultUrl}/`;
|
|
39
|
+
}
|
|
40
|
+
return `${resultUrl}UI5/`;
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
// Catch if URL is not correct
|
|
44
|
+
}
|
|
56
45
|
};
|
|
57
|
-
|
|
58
46
|
export default validateThemeRoot;
|
|
47
|
+
//# sourceMappingURL=validateThemeRoot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateThemeRoot.js","sourceRoot":"","sources":["../src/validateThemeRoot.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,WAAmB,EAAE,EAAE;IAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,cAAc,WAAW,IAAI,CAAC,EACpE,cAAc,GAAG,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAE7D,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC9C,MAAM,cAAc,GAAG,eAAe,CAAC,yBAAyB,CAAC,CAAC;IAElE,OAAO,cAAc,IAAI,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;QACvE,OAAO,aAAa,KAAK,GAAG,IAAI,MAAM,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,SAAiB,EAAE,EAAE;IAC7D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;IAE5C,OAAO,IAAI,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAE,EAAE;IAC/C,IAAI,YAAY,EACf,SAAS,CAAC;IAEX,IAAI;QACH,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QAEnC,YAAY,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;QAEvC,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACjE,sBAAsB;YACtB,wFAAwF;YACxF,iGAAiG;YACjG,0FAA0F;YAC1F,SAAS,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;SACnE;aAAM,IAAI,MAAM,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;YACjD,+BAA+B;YAC/B,SAAS,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;SACpC;aAAM;YACN,oFAAoF;YACpF,wBAAwB;YACxB,SAAS,GAAG,eAAe,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAChE;QAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC7B,SAAS,GAAG,GAAG,SAAS,GAAG,CAAC;SAC5B;QAED,OAAO,GAAG,SAAS,MAAM,CAAC;KAC1B;IAAC,OAAO,CAAC,EAAE;QACX,8BAA8B;KAC9B;AACF,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
package/global.d.ts
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { StyleData } from "./src/types.js";
|
|
2
|
+
|
|
3
|
+
export {};
|
|
4
|
+
|
|
5
|
+
declare global {
|
|
6
|
+
|
|
7
|
+
type VersionInfo = {
|
|
8
|
+
version: string,
|
|
9
|
+
major: number,
|
|
10
|
+
minor: number,
|
|
11
|
+
patch: number,
|
|
12
|
+
suffix: string,
|
|
13
|
+
isNext: boolean,
|
|
14
|
+
buildTime: number,
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
interface Window {
|
|
18
|
+
sap: any;
|
|
19
|
+
chrome: any;
|
|
20
|
+
v8: any;
|
|
21
|
+
}
|
|
22
|
+
module "*.css.js" {
|
|
23
|
+
const content: StyleData;
|
|
24
|
+
export default content;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
module "*generated/AssetParameters.js" {
|
|
28
|
+
const DEFAULT_THEME: string;
|
|
29
|
+
const DEFAULT_LANGUAGE: string;
|
|
30
|
+
const DEFAULT_LOCALE: string;
|
|
31
|
+
const SUPPORTED_LOCALES: Array<string>;
|
|
32
|
+
export {
|
|
33
|
+
DEFAULT_THEME,
|
|
34
|
+
DEFAULT_LANGUAGE,
|
|
35
|
+
DEFAULT_LOCALE,
|
|
36
|
+
SUPPORTED_LOCALES,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
module "*generated/VersionInfo.js" {
|
|
41
|
+
const content: VersionInfo;
|
|
42
|
+
export default content;
|
|
43
|
+
}
|
|
44
|
+
}
|
package/package-scripts.js
CHANGED
|
@@ -6,6 +6,7 @@ const stylesScript = resolve.sync("@ui5/webcomponents-base/lib/generate-styles/i
|
|
|
6
6
|
const versionScript = resolve.sync("@ui5/webcomponents-base/lib/generate-version-info/index.js");
|
|
7
7
|
const copyUsedModules = resolve.sync("@ui5/webcomponents-tools/lib/copy-list/index.js");
|
|
8
8
|
const esmAbsToRel = resolve.sync("@ui5/webcomponents-tools/lib/esm-abs-to-rel/index.js");
|
|
9
|
+
const preprocessJSDocScript = resolve.sync("@ui5/webcomponents-tools/lib/jsdoc/preprocess.js");
|
|
9
10
|
|
|
10
11
|
const LIB = path.join(__dirname, `../tools/lib/`);
|
|
11
12
|
|
|
@@ -13,9 +14,10 @@ const viteConfig = `-c "${require.resolve("@ui5/webcomponents-tools/components-p
|
|
|
13
14
|
const eslintConfig = `--config ${require.resolve("@ui5/webcomponents-tools/components-package/eslint.js")}`;
|
|
14
15
|
|
|
15
16
|
const scripts = {
|
|
16
|
-
clean: "rimraf dist && rimraf .port",
|
|
17
|
+
clean: "rimraf jsdoc-dist && rimraf dist && rimraf .port",
|
|
17
18
|
lint: `eslint . ${eslintConfig}`,
|
|
18
|
-
prepare: "nps clean integrate copy generateAssetParameters generateVersionInfo generateStyles generateTemplates generateAPI",
|
|
19
|
+
prepare: "nps clean integrate copy typescript generateAssetParameters generateVersionInfo generateStyles generateTemplates generateAPI",
|
|
20
|
+
typescript: "tsc",
|
|
19
21
|
integrate: {
|
|
20
22
|
default: "nps integrate.copy-used-modules integrate.replace-amd integrate.amd-to-es6 integrate.esm-abs-to-rel integrate.third-party",
|
|
21
23
|
"copy-used-modules": `node "${copyUsedModules}" ./used-modules.txt dist/`,
|
|
@@ -40,11 +42,18 @@ const scripts = {
|
|
|
40
42
|
generateVersionInfo: `node "${versionScript}"`,
|
|
41
43
|
generateStyles: `node "${stylesScript}"`,
|
|
42
44
|
generateTemplates: `mkdirp dist/generated/templates && node "${LIB}/hbs2ui5/index.js" -d test/elements -o dist/generated/templates`,
|
|
43
|
-
generateAPI:
|
|
45
|
+
generateAPI: {
|
|
46
|
+
default: "nps generateAPI.prepare generateAPI.preprocess generateAPI.jsdoc generateAPI.cleanup",
|
|
47
|
+
prepare: `copy-and-watch "dist/**/*.js" jsdoc-dist/`,
|
|
48
|
+
preprocess: `node "${preprocessJSDocScript}" jsdoc-dist/`,
|
|
49
|
+
jsdoc: `jsdoc -c "${LIB}/jsdoc/configTypescript.json"`,
|
|
50
|
+
cleanup: "rimraf jsdoc-dist/"
|
|
51
|
+
},
|
|
44
52
|
watch: {
|
|
45
|
-
default: 'concurrently "nps watch.src" "nps watch.styles"',
|
|
46
|
-
withBundle: 'concurrently "nps watch.src" "nps watch.bundle" "nps watch.styles"',
|
|
53
|
+
default: 'concurrently "nps watch.src" "nps watch.styles" "nps watch.typescript"',
|
|
54
|
+
withBundle: 'concurrently "nps watch.src" "nps watch.bundle" "nps watch.styles" "nps watch.typescript"',
|
|
47
55
|
src: 'nps "copy.src --watch --skip-initial-copy"',
|
|
56
|
+
typescript: 'tsc --watch',
|
|
48
57
|
bundle: `node ${LIB}/dev-server/dev-server.js ${viteConfig}`,
|
|
49
58
|
styles: 'chokidar "src/css/*.css" -c "nps generateStyles"'
|
|
50
59
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ui5/webcomponents-base",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.10.0",
|
|
4
4
|
"description": "UI5 Web Components: webcomponents.base",
|
|
5
5
|
"author": "SAP SE (https://www.sap.com)",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@buxlabs/amd-to-es6": "0.16.1",
|
|
38
|
-
"@openui5/sap.ui.core": "1.
|
|
39
|
-
"@ui5/webcomponents-tools": "1.
|
|
40
|
-
"chromedriver": "
|
|
38
|
+
"@openui5/sap.ui.core": "1.109.0",
|
|
39
|
+
"@ui5/webcomponents-tools": "1.10.0",
|
|
40
|
+
"chromedriver": "108.0.0",
|
|
41
41
|
"clean-css": "^5.2.2",
|
|
42
42
|
"copy-and-watch": "^0.1.5",
|
|
43
43
|
"cross-env": "^7.0.3",
|
|
File without changes
|
package/src/Boot.ts
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import whenDOMReady from "./util/whenDOMReady.js";
|
|
2
|
+
import insertFontFace from "./FontFace.js";
|
|
3
|
+
import insertSystemCSSVars from "./SystemCSSVars.js";
|
|
4
|
+
import { getTheme } from "./config/Theme.js";
|
|
5
|
+
import applyTheme from "./theming/applyTheme.js";
|
|
6
|
+
import { registerCurrentRuntime } from "./Runtimes.js";
|
|
7
|
+
import { getFeature } from "./FeaturesRegistry.js";
|
|
8
|
+
import type OpenUI5Support from "./features/OpenUI5Support.js";
|
|
9
|
+
import type F6Navigation from "./features/F6Navigation.js";
|
|
10
|
+
import { PromiseResolve } from "./types.js";
|
|
11
|
+
|
|
12
|
+
let bootPromise: Promise<void>;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Attach a callback that will be executed on boot
|
|
16
|
+
* @public
|
|
17
|
+
* @param listener
|
|
18
|
+
*/
|
|
19
|
+
const attachBoot = async (listener: () => void) => {
|
|
20
|
+
await boot();
|
|
21
|
+
listener();
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
const boot = async (): Promise<void> => {
|
|
25
|
+
if (bootPromise !== undefined) {
|
|
26
|
+
return bootPromise;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
const bootExecutor = async (resolve: PromiseResolve) => {
|
|
30
|
+
registerCurrentRuntime();
|
|
31
|
+
|
|
32
|
+
const openUI5Support = getFeature<typeof OpenUI5Support>("OpenUI5Support");
|
|
33
|
+
const isOpenUI5Loaded = openUI5Support ? openUI5Support.isLoaded() : false;
|
|
34
|
+
const f6Navigation = getFeature<typeof F6Navigation>("F6Navigation");
|
|
35
|
+
|
|
36
|
+
if (openUI5Support) {
|
|
37
|
+
await openUI5Support.init();
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if (f6Navigation && !isOpenUI5Loaded) {
|
|
41
|
+
f6Navigation.init();
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
await whenDOMReady();
|
|
45
|
+
await applyTheme(getTheme());
|
|
46
|
+
openUI5Support && openUI5Support.attachListeners();
|
|
47
|
+
insertFontFace();
|
|
48
|
+
insertSystemCSSVars();
|
|
49
|
+
|
|
50
|
+
resolve();
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
bootPromise = new Promise(bootExecutor as (resolve: PromiseResolve) => void);
|
|
54
|
+
|
|
55
|
+
return bootPromise;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export {
|
|
59
|
+
boot,
|
|
60
|
+
attachBoot,
|
|
61
|
+
};
|
package/src/{CSP.js → CSP.ts}
RENAMED
|
@@ -1,20 +1,27 @@
|
|
|
1
|
-
const roots = new Map();
|
|
1
|
+
const roots = new Map<string, string>();
|
|
2
2
|
let useLinks = false;
|
|
3
3
|
let preloadLinks = true;
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
* Use this function to provide the path to the directory where the css resources for the given package will be served from
|
|
6
|
+
* Use this function to provide the path to the directory where the css resources for the given package will be served from.
|
|
7
7
|
*
|
|
8
8
|
* @public
|
|
9
9
|
* @param packageName name of the package that is being configured
|
|
10
10
|
* @param root path, accessible by the server that will serve the css resources
|
|
11
11
|
*/
|
|
12
|
-
const setPackageCSSRoot = (packageName, root) => {
|
|
12
|
+
const setPackageCSSRoot = (packageName: string, root: string) => {
|
|
13
13
|
roots.set(packageName, root);
|
|
14
14
|
};
|
|
15
15
|
|
|
16
|
-
const getUrl = (packageName, path) => {
|
|
17
|
-
|
|
16
|
+
const getUrl = (packageName: string, path: string) => {
|
|
17
|
+
const packageCSSRoot = roots.get(packageName);
|
|
18
|
+
|
|
19
|
+
if (!packageCSSRoot) {
|
|
20
|
+
console.warn(`Root path to the CSS resources ${packageName} not provided - use "setPackageCSSRoot" to provide the root.`); // eslint-disable-line
|
|
21
|
+
return "";
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return `${packageCSSRoot}${path}`;
|
|
18
25
|
};
|
|
19
26
|
|
|
20
27
|
/**
|
|
@@ -25,7 +32,7 @@ const getUrl = (packageName, path) => {
|
|
|
25
32
|
* @public
|
|
26
33
|
* @param use whether links will be used
|
|
27
34
|
*/
|
|
28
|
-
const setUseLinks = use => {
|
|
35
|
+
const setUseLinks = (use: boolean) => {
|
|
29
36
|
useLinks = use;
|
|
30
37
|
};
|
|
31
38
|
|
|
@@ -37,7 +44,7 @@ const setUseLinks = use => {
|
|
|
37
44
|
* @public
|
|
38
45
|
* @param preload
|
|
39
46
|
*/
|
|
40
|
-
const setPreloadLinks = preload => {
|
|
47
|
+
const setPreloadLinks = (preload: boolean) => {
|
|
41
48
|
preloadLinks = preload;
|
|
42
49
|
};
|
|
43
50
|
|