@ui5/webcomponents-base 0.0.0-934b4df24 → 0.0.0-974b11d82
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 +5 -0
- package/CHANGELOG.md +563 -0
- package/README.md +53 -7
- package/bundle.esm.js +31 -18
- package/dist/AssetRegistry.d.ts +5 -0
- package/dist/AssetRegistry.js +6 -10
- package/dist/AssetRegistry.js.map +1 -0
- package/dist/Boot.d.ts +8 -0
- package/dist/Boot.js +48 -0
- package/dist/Boot.js.map +1 -0
- package/dist/CSP.d.ts +30 -0
- package/dist/CSP.js +51 -0
- package/dist/CSP.js.map +1 -0
- package/dist/CustomElementsRegistry.d.ts +5 -0
- package/dist/CustomElementsRegistry.js +73 -18
- package/dist/CustomElementsRegistry.js.map +1 -0
- package/dist/CustomElementsScope.d.ts +7 -0
- package/dist/CustomElementsScope.js +11 -0
- package/dist/CustomElementsScope.js.map +1 -0
- package/dist/CustomElementsScopeUtils.d.ts +55 -0
- package/dist/CustomElementsScopeUtils.js +90 -0
- package/dist/CustomElementsScopeUtils.js.map +1 -0
- package/dist/DOMObserver.d.ts +11 -0
- package/dist/DOMObserver.js +23 -0
- package/dist/DOMObserver.js.map +1 -0
- package/dist/Device.d.ts +12 -0
- package/dist/Device.js +159 -816
- package/dist/Device.js.map +1 -0
- package/dist/EventProvider.d.ts +25 -0
- package/dist/EventProvider.js +67 -70
- package/dist/EventProvider.js.map +1 -0
- package/dist/FeaturesRegistry.d.ts +3 -0
- package/dist/FeaturesRegistry.js +5 -7
- package/dist/FeaturesRegistry.js.map +1 -0
- package/dist/FontFace.d.ts +2 -0
- package/dist/FontFace.js +21 -69
- package/dist/FontFace.js.map +1 -0
- package/dist/InitialConfiguration.d.ts +22 -0
- package/dist/InitialConfiguration.js +119 -103
- package/dist/InitialConfiguration.js.map +1 -0
- package/dist/Keys.d.ts +57 -0
- package/dist/Keys.js +175 -158
- package/dist/Keys.js.map +1 -0
- package/dist/ManagedStyles.d.ts +8 -0
- package/dist/ManagedStyles.js +77 -0
- 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 +98 -0
- package/dist/MediaRange.js.map +1 -0
- package/dist/PropertiesFileFormat.d.ts +8 -0
- package/dist/PropertiesFileFormat.js +85 -0
- package/dist/PropertiesFileFormat.js.map +1 -0
- package/dist/Render.d.ts +47 -0
- package/dist/Render.js +143 -0
- package/dist/Render.js.map +1 -0
- package/dist/RenderQueue.d.ts +19 -0
- package/dist/RenderQueue.js +53 -39
- package/dist/RenderQueue.js.map +1 -0
- package/dist/Runtimes.d.ts +27 -0
- package/dist/Runtimes.js +86 -0
- package/dist/Runtimes.js.map +1 -0
- package/dist/StaticArea.d.ts +0 -0
- package/dist/StaticArea.js +4 -39
- package/dist/StaticArea.js.map +1 -0
- package/dist/StaticAreaItem.d.ts +36 -0
- package/dist/StaticAreaItem.js +92 -98
- package/dist/StaticAreaItem.js.map +1 -0
- package/dist/SystemCSSVars.d.ts +2 -0
- package/dist/SystemCSSVars.js +9 -0
- package/dist/SystemCSSVars.js.map +1 -0
- package/dist/Theming.d.ts +3 -0
- package/dist/Theming.js +3 -2
- package/dist/Theming.js.map +1 -0
- package/dist/UI5Element.d.ts +384 -0
- package/dist/UI5Element.js +948 -906
- package/dist/UI5Element.js.map +1 -0
- package/dist/UI5ElementMetadata.d.ts +150 -0
- package/dist/UI5ElementMetadata.js +278 -158
- 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 -0
- package/dist/asset-registries/Icons.d.ts +30 -0
- package/dist/asset-registries/Icons.js +104 -24
- package/dist/asset-registries/Icons.js.map +1 -0
- package/dist/asset-registries/Illustrations.d.ts +17 -0
- package/dist/asset-registries/Illustrations.js +46 -0
- package/dist/asset-registries/Illustrations.js.map +1 -0
- package/dist/asset-registries/LocaleData.d.ts +7 -0
- package/dist/asset-registries/LocaleData.js +125 -114
- package/dist/asset-registries/LocaleData.js.map +1 -0
- package/dist/asset-registries/Themes.d.ts +11 -0
- package/dist/asset-registries/Themes.js +39 -76
- package/dist/asset-registries/Themes.js.map +1 -0
- package/dist/asset-registries/i18n.d.ts +23 -0
- package/dist/asset-registries/i18n.js +74 -58
- package/dist/asset-registries/i18n.js.map +1 -0
- package/dist/assets/bundle.esm.ea2cc5c5.js +60 -0
- package/dist/assets-meta/IconCollectionsAlias.d.ts +31 -0
- package/dist/assets-meta/IconCollectionsAlias.js +38 -0
- package/dist/assets-meta/IconCollectionsAlias.js.map +1 -0
- package/dist/config/AnimationMode.d.ts +14 -0
- package/dist/config/AnimationMode.js +23 -10
- 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 +15 -0
- package/dist/config/FormatSettings.js +15 -9
- package/dist/config/FormatSettings.js.map +1 -0
- package/dist/config/Icons.d.ts +55 -0
- package/dist/config/Icons.js +103 -0
- package/dist/config/Icons.js.map +1 -0
- package/dist/config/Language.d.ts +31 -0
- package/dist/config/Language.js +54 -10
- 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 +26 -20
- package/dist/config/RTL.js.map +1 -0
- package/dist/config/Theme.d.ts +28 -0
- package/dist/config/Theme.js +45 -22
- package/dist/config/Theme.js.map +1 -0
- package/dist/config/ThemeRoots.d.ts +4 -0
- package/dist/config/ThemeRoots.js +28 -0
- package/dist/config/ThemeRoots.js.map +1 -0
- package/dist/css/BusyIndicator.css +80 -0
- package/dist/css/FontFace.css +66 -0
- package/dist/css/OverrideFontFace.css +32 -0
- package/dist/css/SystemCSSVars.css +17 -0
- package/dist/decorators/customElement.d.ts +23 -0
- package/dist/decorators/customElement.js +31 -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 +312 -274
- package/dist/delegate/ItemNavigation.js.map +1 -0
- package/dist/delegate/ResizeHandler.d.ts +25 -0
- package/dist/delegate/ResizeHandler.js +82 -63
- package/dist/delegate/ResizeHandler.js.map +1 -0
- package/dist/delegate/ScrollEnablement.d.ts +49 -0
- package/dist/delegate/ScrollEnablement.js +159 -153
- package/dist/delegate/ScrollEnablement.js.map +1 -0
- package/dist/features/F6Navigation.d.ts +19 -0
- package/dist/features/F6Navigation.js +151 -0
- package/dist/features/F6Navigation.js.map +1 -0
- package/dist/features/LegacyDateFormats.d.ts +18 -0
- package/dist/features/LegacyDateFormats.js +20 -0
- package/dist/features/LegacyDateFormats.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 +96 -0
- package/dist/features/OpenUI5Enablement.js.map +1 -0
- package/dist/features/OpenUI5Support.d.ts +25 -0
- package/dist/features/OpenUI5Support.js +94 -86
- package/dist/features/OpenUI5Support.js.map +1 -0
- package/dist/generated/AssetParameters.js +1 -1
- package/dist/generated/VersionInfo.js +10 -0
- package/dist/generated/css/BusyIndicator.css.d.ts +3 -0
- package/dist/generated/css/BusyIndicator.css.js +7 -0
- package/dist/generated/css/BusyIndicator.css.js.map +1 -0
- package/dist/generated/css/FontFace.css.d.ts +3 -0
- package/dist/generated/css/FontFace.css.js +7 -0
- package/dist/generated/css/FontFace.css.js.map +1 -0
- package/dist/generated/css/OverrideFontFace.css.d.ts +3 -0
- package/dist/generated/css/OverrideFontFace.css.js +7 -0
- package/dist/generated/css/OverrideFontFace.css.js.map +1 -0
- package/dist/generated/css/SystemCSSVars.css.d.ts +3 -0
- package/dist/generated/css/SystemCSSVars.css.js +7 -0
- package/dist/generated/css/SystemCSSVars.css.js.map +1 -0
- package/dist/generated/templates/elements/WithComplexTemplateTemplate.lit.js +11 -0
- package/dist/getSharedResource.d.ts +11 -0
- package/dist/getSharedResource.js +34 -0
- package/dist/getSharedResource.js.map +1 -0
- package/dist/global.d.ts +38 -0
- package/dist/i18nBundle.d.ts +43 -0
- package/dist/i18nBundle.js +73 -28
- 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 +9 -0
- package/dist/locale/RTLAwareRegistry.js.map +1 -0
- package/dist/locale/applyDirection.d.ts +10 -0
- package/dist/locale/applyDirection.js +17 -0
- package/dist/locale/applyDirection.js.map +1 -0
- package/dist/locale/directionChange.d.ts +15 -0
- package/dist/locale/directionChange.js +24 -0
- package/dist/locale/directionChange.js.map +1 -0
- package/dist/locale/getEffectiveDir.d.ts +2 -0
- package/dist/locale/getEffectiveDir.js +24 -0
- package/dist/locale/getEffectiveDir.js.map +1 -0
- package/dist/locale/getLocale.d.ts +7 -0
- package/dist/locale/getLocale.js +28 -21
- package/dist/locale/getLocale.js.map +1 -0
- package/dist/locale/languageChange.d.ts +5 -0
- package/dist/locale/languageChange.js +14 -0
- 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 +38 -12
- package/dist/renderer/LitRenderer.js.map +1 -0
- package/dist/renderer/directives/style-map.js +72 -0
- package/dist/renderer/executeTemplate.d.ts +13 -0
- package/dist/renderer/executeTemplate.js +30 -0
- package/dist/renderer/executeTemplate.js.map +1 -0
- package/dist/sap/base/Log.js +240 -0
- package/dist/sap/base/assert.js +7 -0
- package/dist/sap/base/security/URLListValidator.js +159 -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.d.ts +6 -0
- package/dist/theming/CustomStyle.js +46 -17
- package/dist/theming/CustomStyle.js.map +1 -0
- package/dist/theming/ThemeLoaded.d.ts +5 -0
- package/dist/theming/ThemeLoaded.js +14 -0
- package/dist/theming/ThemeLoaded.js.map +1 -0
- package/dist/theming/applyTheme.d.ts +2 -0
- package/dist/theming/applyTheme.js +63 -69
- package/dist/theming/applyTheme.js.map +1 -0
- package/dist/theming/getConstructableStyle.d.ts +9 -0
- package/dist/theming/getConstructableStyle.js +15 -15
- package/dist/theming/getConstructableStyle.js.map +1 -0
- package/dist/theming/getEffectiveLinksHrefs.d.ts +3 -0
- package/dist/theming/getEffectiveLinksHrefs.js +17 -0
- package/dist/theming/getEffectiveLinksHrefs.js.map +1 -0
- package/dist/theming/getEffectiveStyle.d.ts +3 -0
- package/dist/theming/getEffectiveStyle.js +30 -13
- package/dist/theming/getEffectiveStyle.js.map +1 -0
- package/dist/theming/getStylesString.d.ts +3 -0
- package/dist/theming/getStylesString.js +11 -0
- package/dist/theming/getStylesString.js.map +1 -0
- package/dist/theming/getThemeDesignerTheme.d.ts +7 -0
- package/dist/theming/getThemeDesignerTheme.js +73 -60
- package/dist/theming/getThemeDesignerTheme.js.map +1 -0
- package/dist/theming/preloadLinks.d.ts +3 -0
- package/dist/theming/preloadLinks.js +19 -0
- 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 +19 -0
- package/dist/types/CSSColor.js.map +1 -0
- package/dist/types/CalendarType.d.ts +37 -0
- package/dist/types/CalendarType.js +35 -18
- package/dist/types/CalendarType.js.map +1 -0
- package/dist/types/DOMReference.d.ts +17 -0
- package/dist/types/DOMReference.js +25 -0
- package/dist/types/DOMReference.js.map +1 -0
- package/dist/types/DataType.d.ts +25 -0
- package/dist/types/DataType.js +33 -14
- package/dist/types/DataType.js.map +1 -0
- package/dist/types/Float.d.ts +18 -0
- package/dist/types/Float.js +22 -0
- package/dist/types/Float.js.map +1 -0
- package/dist/types/Integer.d.ts +18 -0
- package/dist/types/Integer.js +18 -5
- package/dist/types/Integer.js.map +1 -0
- package/dist/types/InvisibleMessageMode.d.ts +25 -0
- package/dist/types/InvisibleMessageMode.js +27 -0
- package/dist/types/InvisibleMessageMode.js.map +1 -0
- package/dist/types/ItemNavigationBehavior.d.ts +24 -0
- package/dist/types/ItemNavigationBehavior.js +22 -17
- package/dist/types/ItemNavigationBehavior.js.map +1 -0
- package/dist/types/NavigationMode.d.ts +32 -0
- package/dist/types/NavigationMode.js +33 -5
- package/dist/types/NavigationMode.js.map +1 -0
- package/dist/types/ValueState.d.ts +42 -0
- package/dist/types/ValueState.js +41 -19
- 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 +38 -0
- package/dist/updateShadowRoot.js.map +1 -0
- package/dist/util/AriaLabelHelper.d.ts +15 -0
- package/dist/util/AriaLabelHelper.js +171 -0
- package/dist/util/AriaLabelHelper.js.map +1 -0
- package/dist/util/Caret.d.ts +7 -0
- package/dist/util/Caret.js +23 -0
- package/dist/util/Caret.js.map +1 -0
- package/dist/util/ColorConversion.d.ts +30 -0
- package/dist/util/ColorConversion.js +337 -0
- 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 +67 -56
- package/dist/util/FocusableElements.js.map +1 -0
- package/dist/util/HTMLSanitizer.d.ts +3 -0
- package/dist/util/HTMLSanitizer.js +6 -0
- package/dist/util/HTMLSanitizer.js.map +1 -0
- package/dist/util/InvisibleMessage.d.ts +10 -0
- package/dist/util/InvisibleMessage.js +56 -0
- package/dist/util/InvisibleMessage.js.map +1 -0
- package/dist/util/PopupUtils.d.ts +7 -0
- package/dist/util/PopupUtils.js +74 -0
- package/dist/util/PopupUtils.js.map +1 -0
- package/dist/util/SlotsHelper.d.ts +9 -0
- package/dist/util/SlotsHelper.js +30 -0
- 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 -43
- package/dist/util/TabbableElements.js.map +1 -0
- package/dist/util/arraysAreEqual.d.ts +2 -0
- package/dist/util/arraysAreEqual.js +13 -0
- package/dist/util/arraysAreEqual.js.map +1 -0
- package/dist/util/clamp.d.ts +9 -0
- package/dist/util/clamp.js +12 -0
- package/dist/util/clamp.js.map +1 -0
- package/dist/util/createLinkInHead.d.ts +7 -0
- package/dist/util/createLinkInHead.js +21 -0
- 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 +15 -0
- 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 +11 -0
- 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 +41 -0
- package/dist/util/generateHighlightedMarkup.js.map +1 -0
- package/dist/util/getActiveElement.d.ts +2 -0
- package/dist/util/getActiveElement.js +9 -0
- package/dist/util/getActiveElement.js.map +1 -0
- package/dist/util/getClassCopy.d.ts +399 -0
- package/dist/util/getClassCopy.js +10 -0
- 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 +4 -0
- package/dist/util/getEffectiveContentDensity.js.map +1 -0
- package/dist/util/getEffectiveScrollbarStyle.d.ts +2 -0
- package/dist/util/getEffectiveScrollbarStyle.js +4 -0
- package/dist/util/getEffectiveScrollbarStyle.js.map +1 -0
- package/dist/util/getFastNavigationGroups.d.ts +2 -0
- package/dist/util/getFastNavigationGroups.js +51 -0
- 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 +14 -0
- package/dist/util/getNormalizedTarget.js.map +1 -0
- package/dist/util/getSingletonElementInstance.d.ts +2 -0
- package/dist/util/getSingletonElementInstance.js +10 -0
- 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 +12 -0
- 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 +19 -14
- 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 +47 -0
- package/dist/validateThemeRoot.js.map +1 -0
- package/index.js +1 -1
- package/lib/generate-asset-parameters/index.js +8 -5
- package/lib/generate-styles/index.js +31 -0
- package/lib/generate-version-info/index.js +32 -0
- package/package-scripts.js +50 -26
- package/package.json +20 -13
- package/src/AssetRegistry.ts +11 -0
- package/src/Boot.ts +65 -0
- package/src/CSP.ts +66 -0
- package/src/CustomElementsRegistry.ts +98 -0
- package/src/CustomElementsScope.ts +33 -0
- package/src/CustomElementsScopeUtils.ts +115 -0
- package/src/DOMObserver.ts +28 -0
- package/src/Device.ts +203 -0
- package/src/EventProvider.ts +87 -0
- package/src/FeaturesRegistry.ts +14 -0
- package/src/FontFace.ts +31 -0
- package/src/InitialConfiguration.ts +207 -0
- package/src/Keys.ts +295 -0
- package/src/ManagedStyles.ts +92 -0
- package/src/MarkedEvents.ts +20 -0
- package/src/MediaRange.ts +110 -0
- package/src/PropertiesFileFormat.ts +95 -0
- package/src/Render.ts +180 -0
- package/src/RenderQueue.ts +71 -0
- package/src/Runtimes.ts +114 -0
- package/src/StaticArea.ts +3 -0
- package/src/StaticAreaItem.ts +113 -0
- package/src/SystemCSSVars.ts +10 -0
- package/src/Theming.ts +4 -0
- package/src/UI5Element.ts +1175 -0
- package/src/UI5ElementMetadata.ts +389 -0
- 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.ts +161 -0
- package/src/asset-registries/Illustrations.ts +75 -0
- package/src/asset-registries/LocaleData.ts +172 -0
- package/src/asset-registries/Themes.ts +72 -0
- package/src/asset-registries/i18n.ts +118 -0
- package/src/assets-meta/IconCollectionsAlias.ts +41 -0
- package/src/config/AnimationMode.ts +33 -0
- package/src/config/{CalendarType.js → CalendarType.ts} +8 -3
- package/src/config/FormatSettings.ts +35 -0
- package/src/config/Icons.ts +126 -0
- package/src/config/Language.ts +72 -0
- package/src/config/NoConflict.ts +67 -0
- package/src/config/{RTL.js → RTL.ts} +18 -4
- package/src/config/Theme.ts +64 -0
- package/src/config/ThemeRoots.ts +41 -0
- package/src/css/BusyIndicator.css +80 -0
- package/src/css/FontFace.css +66 -0
- package/src/css/OverrideFontFace.css +32 -0
- package/src/css/SystemCSSVars.css +17 -0
- package/src/decorators/customElement.ts +57 -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.ts +393 -0
- package/src/delegate/ResizeHandler.ts +100 -0
- package/src/delegate/ScrollEnablement.ts +224 -0
- package/src/features/F6Navigation.ts +195 -0
- package/src/features/LegacyDateFormats.ts +40 -0
- package/src/features/OpenUI5Element.ts +11 -0
- package/src/features/OpenUI5Enablement.ts +117 -0
- package/src/features/OpenUI5Support.ts +153 -0
- package/src/generated/css/BusyIndicator.css.ts +9 -0
- package/src/generated/css/FontFace.css.ts +9 -0
- package/src/generated/css/OverrideFontFace.css.ts +9 -0
- package/src/generated/css/SystemCSSVars.css.ts +9 -0
- package/src/getSharedResource.ts +39 -0
- package/src/global.d.ts +38 -0
- package/src/i18nBundle.ts +108 -0
- package/src/locale/{Locale.js → Locale.ts} +15 -5
- package/src/locale/RTLAwareRegistry.ts +16 -0
- package/src/locale/applyDirection.ts +18 -0
- package/src/locale/directionChange.ts +34 -0
- package/src/locale/getEffectiveDir.ts +28 -0
- package/src/locale/{getLocale.js → getLocale.ts} +20 -5
- 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/directives/style-map.js +72 -0
- package/src/renderer/executeTemplate.ts +40 -0
- package/src/theming/CustomStyle.ts +64 -0
- package/src/theming/ThemeLoaded.ts +24 -0
- package/src/theming/applyTheme.ts +90 -0
- package/src/theming/getConstructableStyle.ts +31 -0
- package/src/theming/getEffectiveLinksHrefs.ts +26 -0
- package/src/theming/getEffectiveStyle.ts +41 -0
- package/src/theming/getStylesString.ts +15 -0
- package/src/theming/getThemeDesignerTheme.ts +101 -0
- package/src/theming/preloadLinks.ts +24 -0
- 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.ts +20 -0
- package/src/types/CalendarType.ts +38 -0
- package/src/types/DOMReference.ts +28 -0
- package/src/types/DataType.ts +51 -0
- package/src/types/Float.ts +25 -0
- package/src/types/Integer.ts +25 -0
- 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 +42 -0
- package/src/util/AriaLabelHelper.ts +218 -0
- package/src/util/Caret.ts +28 -0
- package/src/util/ColorConversion.ts +399 -0
- package/src/util/{FetchHelper.js → FetchHelper.ts} +7 -7
- package/src/util/FocusableElements.ts +92 -0
- package/src/util/HTMLSanitizer.ts +9 -0
- package/src/util/InvisibleMessage.ts +69 -0
- package/src/util/PopupUtils.ts +112 -0
- package/src/util/SlotsHelper.ts +39 -0
- package/src/util/{StringHelper.js → StringHelper.ts} +7 -7
- package/src/util/TabbableElements.ts +70 -0
- package/src/util/arraysAreEqual.ts +15 -0
- package/src/util/clamp.ts +12 -0
- package/src/util/createLinkInHead.ts +25 -0
- package/src/util/{createStyleInHead.js → createStyleInHead.ts} +4 -2
- package/src/util/debounce.ts +18 -0
- 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.ts +43 -0
- package/src/util/getActiveElement.ts +11 -0
- package/src/util/getClassCopy.ts +12 -0
- package/src/util/{getDesigntimePropertyAsArray.js → getDesigntimePropertyAsArray.ts} +1 -1
- package/src/util/getEffectiveContentDensity.ts +5 -0
- package/src/util/getEffectiveScrollbarStyle.ts +5 -0
- package/src/util/getFastNavigationGroups.ts +63 -0
- package/src/util/{getFileExtension.js → getFileExtension.ts} +3 -3
- package/src/util/getNormalizedTarget.ts +16 -0
- package/src/util/getSingletonElementInstance.ts +13 -0
- package/src/util/isElementClickable.ts +19 -0
- package/src/util/isElementHidden.ts +9 -0
- package/src/util/isElementInView.ts +15 -0
- package/src/util/isElementTabbable.ts +37 -0
- package/src/util/{isValidPropertyName.js → isValidPropertyName.ts} +10 -4
- package/src/util/{whenDOMReady.js → whenDOMReady.ts} +1 -1
- package/src/util/willShowContent.ts +7 -0
- package/src/validateThemeRoot.ts +58 -0
- package/tsconfig.json +13 -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/RenderScheduler.js +0 -146
- package/dist/SVGIconRegistry.js +0 -60
- package/dist/animations/config.js +0 -5
- package/dist/boot.js +0 -32
- package/dist/compatibility/DOMObserver.js +0 -62
- package/dist/compatibility/patchNodeValue.js +0 -24
- package/dist/compatibility/whenPolyfillLoaded.js +0 -26
- package/dist/delegate/CustomResize.js +0 -78
- package/dist/delegate/NativeResize.js +0 -44
- package/dist/features/browsersupport/Edge.js +0 -6
- package/dist/features/browsersupport/IE11.js +0 -41
- package/dist/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
- package/dist/renderer/ifDefined.js +0 -21
- package/dist/resources/bundle.es5.js +0 -212
- package/dist/resources/bundle.es5.js.map +0 -1
- package/dist/resources/bundle.esm.js +0 -129
- package/dist/resources/bundle.esm.js.map +0 -1
- package/dist/test-resources/assets/Themes.js +0 -13
- package/dist/test-resources/elements/Child.js +0 -35
- package/dist/test-resources/elements/Generic.js +0 -84
- 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 -37
- package/dist/test-resources/elements/WithStaticArea.js +0 -76
- 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/StaticArea.spec.js +0 -34
- 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/CSSVarsPonyfill.js +0 -24
- package/dist/theming/adaptCSSForIE.js +0 -90
- package/dist/theming/createComponentStyleTag.js +0 -49
- package/dist/theming/createThemePropertiesStyleTag.js +0 -20
- 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/es6-string-methods.js +0 -182
- package/dist/thirdparty/events-polyfills.js +0 -89
- package/dist/thirdparty/fetch.js +0 -1
- package/dist/thirdparty/template.js +0 -600
- package/dist/thirdparty/webcomponents-sd-ce-pf.js +0 -318
- package/dist/types/CSSSize.js +0 -9
- package/dist/types/PopupState.js +0 -37
- package/dist/util/findNodeOwner.js +0 -35
- package/dist/util/isDescendantOf.js +0 -15
- package/dist/util/isNodeClickable.js +0 -19
- package/dist/util/isNodeHidden.js +0 -13
- package/dist/util/isNodeTabbable.js +0 -28
- package/dist/util/isSlot.js +0 -3
- 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/AssetRegistry.js +0 -10
- package/src/CustomElementsRegistry.js +0 -23
- package/src/Device.js +0 -823
- package/src/EventProvider.js +0 -73
- package/src/FeaturesRegistry.js +0 -11
- package/src/FontFace.js +0 -73
- package/src/InitialConfiguration.js +0 -131
- package/src/Keys.js +0 -161
- package/src/RenderQueue.js +0 -42
- package/src/RenderScheduler.js +0 -146
- package/src/SVGIconRegistry.js +0 -60
- package/src/StaticArea.js +0 -41
- package/src/StaticAreaItem.js +0 -105
- package/src/Theming.js +0 -3
- package/src/UI5Element.js +0 -926
- package/src/UI5ElementMetadata.js +0 -171
- 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/Icons.js +0 -24
- package/src/asset-registries/LocaleData.js +0 -125
- package/src/asset-registries/Themes.js +0 -87
- package/src/asset-registries/i18n.js +0 -79
- package/src/boot.js +0 -32
- package/src/compatibility/DOMObserver.js +0 -62
- package/src/compatibility/patchNodeValue.js +0 -24
- package/src/compatibility/whenPolyfillLoaded.js +0 -26
- package/src/config/AnimationMode.js +0 -13
- package/src/config/FormatSettings.js +0 -13
- package/src/config/Language.js +0 -12
- package/src/config/NoConflict.js +0 -51
- package/src/config/Theme.js +0 -28
- package/src/delegate/CustomResize.js +0 -78
- package/src/delegate/ItemNavigation.js +0 -278
- package/src/delegate/NativeResize.js +0 -44
- package/src/delegate/ResizeHandler.js +0 -66
- package/src/delegate/ScrollEnablement.js +0 -159
- package/src/features/OpenUI5Support.js +0 -90
- package/src/features/browsersupport/Edge.js +0 -6
- package/src/features/browsersupport/IE11.js +0 -41
- package/src/features/browsersupport/IE11WithWebComponentsPolyfill.js +0 -5
- package/src/i18nBundle.js +0 -33
- package/src/renderer/LitRenderer.js +0 -15
- package/src/renderer/ifDefined.js +0 -21
- package/src/theming/CSSVarsPonyfill.js +0 -24
- package/src/theming/CustomStyle.js +0 -19
- package/src/theming/adaptCSSForIE.js +0 -90
- package/src/theming/applyTheme.js +0 -81
- package/src/theming/createComponentStyleTag.js +0 -49
- package/src/theming/createThemePropertiesStyleTag.js +0 -20
- package/src/theming/getConstructableStyle.js +0 -25
- package/src/theming/getEffectiveStyle.js +0 -15
- package/src/theming/getThemeDesignerTheme.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/es6-string-methods.js +0 -182
- package/src/thirdparty/events-polyfills.js +0 -89
- package/src/thirdparty/fetch.js +0 -1
- package/src/thirdparty/merge.js +0 -10
- package/src/thirdparty/template.js +0 -600
- package/src/thirdparty/webcomponents-sd-ce-pf.js +0 -318
- package/src/types/AnimationMode.js +0 -7
- package/src/types/CSSSize.js +0 -9
- package/src/types/CalendarType.js +0 -22
- package/src/types/DataType.js +0 -25
- package/src/types/Integer.js +0 -9
- package/src/types/ItemNavigationBehavior.js +0 -21
- package/src/types/NavigationMode.js +0 -6
- package/src/types/PopupState.js +0 -37
- package/src/types/ValueState.js +0 -22
- package/src/util/FocusableElements.js +0 -60
- package/src/util/TabbableElements.js +0 -47
- package/src/util/findNodeOwner.js +0 -35
- package/src/util/isDescendantOf.js +0 -15
- package/src/util/isNodeClickable.js +0 -19
- package/src/util/isNodeHidden.js +0 -13
- package/src/util/isNodeTabbable.js +0 -28
- package/src/util/isSlot.js +0 -3
|
@@ -1,87 +1,50 @@
|
|
|
1
|
-
import { fetchJsonOnce, fetchTextOnce } from "../util/FetchHelper.js";
|
|
2
1
|
import { DEFAULT_THEME } from "../generated/AssetParameters.js";
|
|
3
|
-
import getFileExtension from "../util/getFileExtension.js";
|
|
4
|
-
|
|
5
|
-
const themeURLs = new Map();
|
|
6
2
|
const themeStyles = new Map();
|
|
3
|
+
const loaders = new Map();
|
|
7
4
|
const registeredPackages = new Set();
|
|
8
5
|
const registeredThemes = new Set();
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
* This URL must point to a JSON file, containing a "_" property.
|
|
14
|
-
*
|
|
15
|
-
* Example usage:
|
|
16
|
-
* 1) Pass the CSS Vars as a string directly.
|
|
17
|
-
* registerThemeProperties("my-package", "my_theme", ":root{--var1: red;}");
|
|
18
|
-
* 2) Pass the CSS Vars as an object directly
|
|
19
|
-
* registerThemeProperties("my-package", "my_theme", {"_": ":root{--var1: red;}"});
|
|
20
|
-
* 3) Pass a URL to a CSS file, containing the CSS Vars. Will be fetched on demand, not upon registration.
|
|
21
|
-
* registerThemeProperties("my-package", "my_theme", "http://url/to/my/theme.css");
|
|
22
|
-
* 4) Pass a URL to a JSON file, containing the CSS Vars in its "_" property. Will be fetched on demand, not upon registration.
|
|
23
|
-
* registerThemeProperties("my-package", "my_theme", "http://url/to/my/theme.json");
|
|
24
|
-
*
|
|
25
|
-
* @public
|
|
26
|
-
* @param packageName - the NPM package for which CSS Vars are registered
|
|
27
|
-
* @param themeName - the theme which the CSS Vars implement
|
|
28
|
-
* @param style - can be one of four options: a string, an object with a "_" property, URL to a CSS file, or URL to a JSON file with a "_" property
|
|
29
|
-
*/
|
|
30
|
-
const registerThemeProperties = (packageName, themeName, style) => {
|
|
31
|
-
if (style._) {
|
|
32
|
-
// JSON object like ({"_": ":root"})
|
|
33
|
-
themeStyles.set(`${packageName}_${themeName}`, style._);
|
|
34
|
-
} else if (style.includes(":root") || style === "") {
|
|
35
|
-
// pure string, including empty string
|
|
36
|
-
themeStyles.set(`${packageName}_${themeName}`, style);
|
|
37
|
-
} else {
|
|
38
|
-
// url for fetching
|
|
39
|
-
themeURLs.set(`${packageName}_${themeName}`, style);
|
|
40
|
-
}
|
|
41
|
-
registeredPackages.add(packageName);
|
|
42
|
-
registeredThemes.add(themeName);
|
|
6
|
+
const registerThemePropertiesLoader = (packageName, themeName, loader) => {
|
|
7
|
+
loaders.set(`${packageName}/${themeName}`, loader);
|
|
8
|
+
registeredPackages.add(packageName);
|
|
9
|
+
registeredThemes.add(themeName);
|
|
43
10
|
};
|
|
44
|
-
|
|
45
11
|
const getThemeProperties = async (packageName, themeName) => {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const data = await fetchThemeProperties(packageName, themeName);
|
|
58
|
-
const themeProps = data._ || data;
|
|
59
|
-
|
|
60
|
-
themeStyles.set(`${packageName}_${themeName}`, themeProps);
|
|
61
|
-
return themeProps;
|
|
12
|
+
const style = themeStyles.get(`${packageName}_${themeName}`);
|
|
13
|
+
if (style !== undefined) { // it's valid for style to be an empty string
|
|
14
|
+
return style;
|
|
15
|
+
}
|
|
16
|
+
if (!registeredThemes.has(themeName)) {
|
|
17
|
+
const regThemesStr = [...registeredThemes.values()].join(", ");
|
|
18
|
+
console.warn(`You have requested a non-registered theme ${themeName} - falling back to ${DEFAULT_THEME}. Registered themes are: ${regThemesStr}`); /* eslint-disable-line */
|
|
19
|
+
return _getThemeProperties(packageName, DEFAULT_THEME);
|
|
20
|
+
}
|
|
21
|
+
return _getThemeProperties(packageName, themeName);
|
|
62
22
|
};
|
|
63
|
-
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
23
|
+
const _getThemeProperties = async (packageName, themeName) => {
|
|
24
|
+
const loader = loaders.get(`${packageName}/${themeName}`);
|
|
25
|
+
if (!loader) {
|
|
26
|
+
// no themes for package
|
|
27
|
+
console.error(`Theme [${themeName}] not registered for package [${packageName}]`); /* eslint-disable-line */
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
let data;
|
|
31
|
+
try {
|
|
32
|
+
data = await loader(themeName);
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
const e = error;
|
|
36
|
+
console.error(packageName, e.message); /* eslint-disable-line */
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const themeProps = data._ || data; // Refactor: remove _ everywhere
|
|
40
|
+
themeStyles.set(`${packageName}_${themeName}`, themeProps);
|
|
41
|
+
return themeProps;
|
|
72
42
|
};
|
|
73
|
-
|
|
74
43
|
const getRegisteredPackages = () => {
|
|
75
|
-
|
|
44
|
+
return registeredPackages;
|
|
76
45
|
};
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
return registeredThemes.has(theme);
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
export {
|
|
83
|
-
registerThemeProperties,
|
|
84
|
-
getThemeProperties,
|
|
85
|
-
getRegisteredPackages,
|
|
86
|
-
isThemeRegistered,
|
|
46
|
+
const isThemeRegistered = (theme) => {
|
|
47
|
+
return registeredThemes.has(theme);
|
|
87
48
|
};
|
|
49
|
+
export { registerThemePropertiesLoader, getThemeProperties, getRegisteredPackages, isThemeRegistered, };
|
|
50
|
+
//# sourceMappingURL=Themes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Themes.js","sourceRoot":"","sources":["../../src/asset-registries/Themes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAMhE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;AACjD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;AAC/C,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAC;AAC7C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE3C,MAAM,6BAA6B,GAAG,CAAC,WAAmB,EAAE,SAAiB,EAAE,MAAmB,EAAE,EAAE;IACrG,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC;IACnD,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACpC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,KAAK,EAAE,WAAmB,EAAE,SAAiB,EAAE,EAAE;IAC3E,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,SAAS,EAAE,CAAC,CAAC;IAC7D,IAAI,KAAK,KAAK,SAAS,EAAE,EAAE,6CAA6C;QACvE,OAAO,KAAK,CAAC;KACb;IAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;QACrC,MAAM,YAAY,GAAG,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,6CAA6C,SAAS,sBAAsB,aAAa,4BAA4B,YAAY,EAAE,CAAC,CAAC,CAAC,yBAAyB;QAC5K,OAAO,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;KACvD;IAED,OAAO,mBAAmB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,KAAK,EAAE,WAAmB,EAAE,SAAiB,EAAE,EAAE;IAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,SAAS,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE;QACZ,wBAAwB;QACxB,OAAO,CAAC,KAAK,CAAC,UAAU,SAAS,iCAAiC,WAAW,GAAG,CAAC,CAAC,CAAC,yBAAyB;QAC5G,OAAO;KACP;IACD,IAAI,IAAI,CAAC;IACT,IAAI;QACH,IAAI,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;KAC/B;IAAC,OAAO,KAAc,EAAE;QACxB,MAAM,CAAC,GAAG,KAAc,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB;QAChE,OAAO;KACP;IACD,MAAM,UAAU,GAAI,IAA0B,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,gCAAgC;IAE1F,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,IAAI,SAAS,EAAE,EAAE,UAAU,CAAC,CAAC;IAC3D,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,GAAG,EAAE;IAClC,OAAO,kBAAkB,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,EAAE;IAC3C,OAAO,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,OAAO,EACN,6BAA6B,EAC7B,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,GACjB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
type I18nLoader = (localeId: string) => Promise<I18nData>;
|
|
2
|
+
type I18nData = Record<string, string>;
|
|
3
|
+
/**
|
|
4
|
+
* Registers i18n loader function for given package and locale.
|
|
5
|
+
*
|
|
6
|
+
* @public
|
|
7
|
+
* @param {string} packageName for which package this loader can fetch data
|
|
8
|
+
* @param {string} localeId locale that this loader can handle
|
|
9
|
+
* @param {function} loader async function that will be passed a localeId and should return a JSON object
|
|
10
|
+
*/
|
|
11
|
+
declare const registerI18nLoader: (packageName: string, localeId: string, loader: I18nLoader) => void;
|
|
12
|
+
declare const getI18nBundleData: (packageName: string) => I18nData | null | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* This method preforms the asynchronous task of fetching the actual text resources. It will fetch
|
|
15
|
+
* each text resource over the network once (even for multiple calls to the same method).
|
|
16
|
+
* It should be fully finished before the i18nBundle class is created in the webcomponents.
|
|
17
|
+
* This method uses the bundle URLs that are populated by the <code>registerI18nBundle</code> method.
|
|
18
|
+
* To simplify the usage, the synchronization of both methods happens internally for the same <code>bundleId</code>
|
|
19
|
+
* @param {packageName} packageName the NPM package name
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
declare const fetchI18nBundle: (packageName: string) => Promise<void>;
|
|
23
|
+
export { registerI18nLoader, fetchI18nBundle, getI18nBundleData, };
|
|
@@ -1,36 +1,53 @@
|
|
|
1
1
|
import getLocale from "../locale/getLocale.js";
|
|
2
|
-
import {
|
|
2
|
+
import { attachLanguageChange } from "../locale/languageChange.js";
|
|
3
3
|
import normalizeLocale from "../locale/normalizeLocale.js";
|
|
4
4
|
import nextFallbackLocale from "../locale/nextFallbackLocale.js";
|
|
5
5
|
import { DEFAULT_LANGUAGE } from "../generated/AssetParameters.js";
|
|
6
|
-
|
|
6
|
+
import { getFetchDefaultLanguage } from "../config/Language.js";
|
|
7
|
+
// contains package names for which the warning has been shown
|
|
8
|
+
const warningShown = new Set();
|
|
9
|
+
const reportedErrors = new Set();
|
|
7
10
|
const bundleData = new Map();
|
|
8
|
-
const
|
|
9
|
-
|
|
11
|
+
const bundlePromises = new Map();
|
|
12
|
+
const loaders = new Map();
|
|
10
13
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* @param {Object} data an object with string locales as keys and text translataions as values
|
|
14
|
+
* Registers i18n loader function for given package and locale.
|
|
15
|
+
*
|
|
14
16
|
* @public
|
|
17
|
+
* @param {string} packageName for which package this loader can fetch data
|
|
18
|
+
* @param {string} localeId locale that this loader can handle
|
|
19
|
+
* @param {function} loader async function that will be passed a localeId and should return a JSON object
|
|
15
20
|
*/
|
|
16
|
-
const
|
|
17
|
-
|
|
21
|
+
const registerI18nLoader = (packageName, localeId, loader) => {
|
|
22
|
+
// register loader by key
|
|
23
|
+
const bundleKey = `${packageName}/${localeId}`;
|
|
24
|
+
loaders.set(bundleKey, loader);
|
|
18
25
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
return bundleData.get(packageName);
|
|
26
|
+
const _setI18nBundleData = (packageName, data) => {
|
|
27
|
+
bundleData.set(packageName, data);
|
|
22
28
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
const getI18nBundleData = (packageName) => {
|
|
30
|
+
return bundleData.get(packageName);
|
|
31
|
+
};
|
|
32
|
+
const _hasLoader = (packageName, localeId) => {
|
|
33
|
+
const bundleKey = `${packageName}/${localeId}`;
|
|
34
|
+
return loaders.has(bundleKey);
|
|
35
|
+
};
|
|
36
|
+
// load bundle over the network once
|
|
37
|
+
const _loadMessageBundleOnce = (packageName, localeId) => {
|
|
38
|
+
const bundleKey = `${packageName}/${localeId}`;
|
|
39
|
+
const loadMessageBundle = loaders.get(bundleKey);
|
|
40
|
+
if (loadMessageBundle && !bundlePromises.get(bundleKey)) {
|
|
41
|
+
bundlePromises.set(bundleKey, loadMessageBundle(localeId));
|
|
42
|
+
}
|
|
43
|
+
return bundlePromises.get(bundleKey); // Investigate if i18n loader exists and this won't return undefined.
|
|
44
|
+
};
|
|
45
|
+
const _showAssetsWarningOnce = (packageName) => {
|
|
46
|
+
if (!warningShown.has(packageName)) {
|
|
47
|
+
console.warn(`[${packageName}]: Message bundle assets are not configured. Falling back to English texts.`, /* eslint-disable-line */ ` Add \`import "${packageName}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`); /* eslint-disable-line */
|
|
48
|
+
warningShown.add(packageName);
|
|
49
|
+
}
|
|
32
50
|
};
|
|
33
|
-
|
|
34
51
|
/**
|
|
35
52
|
* This method preforms the asynchronous task of fetching the actual text resources. It will fetch
|
|
36
53
|
* each text resource over the network once (even for multiple calls to the same method).
|
|
@@ -40,40 +57,39 @@ const registerI18nBundle = (packageName, bundle) => {
|
|
|
40
57
|
* @param {packageName} packageName the NPM package name
|
|
41
58
|
* @public
|
|
42
59
|
*/
|
|
43
|
-
const fetchI18nBundle = async packageName => {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
setI18nBundleData(packageName, data);
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
export {
|
|
75
|
-
fetchI18nBundle,
|
|
76
|
-
registerI18nBundle,
|
|
77
|
-
setI18nBundleData,
|
|
78
|
-
getI18nBundleData,
|
|
60
|
+
const fetchI18nBundle = async (packageName) => {
|
|
61
|
+
const language = getLocale().getLanguage();
|
|
62
|
+
const region = getLocale().getRegion();
|
|
63
|
+
let localeId = normalizeLocale(language + (region ? `-${region}` : ``));
|
|
64
|
+
while (localeId !== DEFAULT_LANGUAGE && !_hasLoader(packageName, localeId)) {
|
|
65
|
+
localeId = nextFallbackLocale(localeId);
|
|
66
|
+
}
|
|
67
|
+
// use default language unless configured to always fetch it from the network
|
|
68
|
+
const fetchDefaultLanguage = getFetchDefaultLanguage();
|
|
69
|
+
if (localeId === DEFAULT_LANGUAGE && !fetchDefaultLanguage) {
|
|
70
|
+
_setI18nBundleData(packageName, null); // reset for the default language (if data was set for a previous language)
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (!_hasLoader(packageName, localeId)) {
|
|
74
|
+
_showAssetsWarningOnce(packageName);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
try {
|
|
78
|
+
const data = await _loadMessageBundleOnce(packageName, localeId);
|
|
79
|
+
_setI18nBundleData(packageName, data);
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
const e = error;
|
|
83
|
+
if (!reportedErrors.has(e.message)) {
|
|
84
|
+
reportedErrors.add(e.message);
|
|
85
|
+
console.error(e.message); /* eslint-disable-line */
|
|
86
|
+
}
|
|
87
|
+
}
|
|
79
88
|
};
|
|
89
|
+
// When the language changes dynamically (the user calls setLanguage), re-fetch all previously fetched bundles
|
|
90
|
+
attachLanguageChange((lang /* eslint-disable-line */) => {
|
|
91
|
+
const allPackages = [...bundleData.keys()];
|
|
92
|
+
return Promise.all(allPackages.map(fetchI18nBundle));
|
|
93
|
+
});
|
|
94
|
+
export { registerI18nLoader, fetchI18nBundle, getI18nBundleData, };
|
|
95
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/asset-registries/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAKhE,8DAA8D;AAC9D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;AAC/B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;AAEjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2B,CAAC;AACtD,MAAM,cAAc,GAAG,IAAI,GAAG,EAA6B,CAAC;AAC5D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,kBAAkB,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAE,MAAkB,EAAE,EAAE;IACxF,yBAAyB;IACzB,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,WAAmB,EAAE,IAAqB,EAAE,EAAE;IACzE,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,WAAmB,EAAE,EAAE;IACjD,OAAO,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAE,EAAE;IAC5D,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAC;IAC/C,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,oCAAoC;AACpC,MAAM,sBAAsB,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAE,EAAE;IACxE,MAAM,SAAS,GAAG,GAAG,WAAW,IAAI,QAAQ,EAAE,CAAC;IAC/C,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEjD,IAAI,iBAAiB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;QACxD,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;KAC3D;IAED,OAAO,cAAc,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,CAAC,qEAAqE;AAC7G,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,WAAmB,EAAE,EAAE;IACtD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;QACnC,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,6EAA6E,EAAE,yBAAyB,CACpI,kBAAkB,WAAW,4KAA4K,CAAC,CAAC,CAAC,yBAAyB;QACrO,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;KAC9B;AACF,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,eAAe,GAAG,KAAK,EAAE,WAAmB,EAAE,EAAE;IACrD,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC,SAAS,EAAE,CAAC;IACvC,IAAI,QAAQ,GAAG,eAAe,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAExE,OAAO,QAAQ,KAAK,gBAAgB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE;QAC3E,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;KACxC;IAED,6EAA6E;IAC7E,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAC;IACvD,IAAI,QAAQ,KAAK,gBAAgB,IAAI,CAAC,oBAAoB,EAAE;QAC3D,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,2EAA2E;QAClH,OAAO;KACP;IAED,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE;QACvC,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACpC,OAAO;KACP;IAED,IAAI;QACH,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACjE,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;KACtC;IAAC,OAAO,KAAc,EAAE;QACxB,MAAM,CAAC,GAAG,KAAc,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;YACnC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB;SACnD;KACD;AACF,CAAC,CAAC;AAEF,8GAA8G;AAC9G,oBAAoB,CAAC,CAAC,IAAY,CAAC,yBAAyB,EAAE,EAAE;IAC/D,MAAM,WAAW,GAAG,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AAEH,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,iBAAiB,GACjB,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&n(i)}).observe(document,{childList:!0,subtree:!0});function s(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerpolicy&&(o.referrerPolicy=r.referrerpolicy),r.crossorigin==="use-credentials"?o.credentials="include":r.crossorigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(r){if(r.ep)return;r.ep=!0;const o=s(r);fetch(r.href,o)}})();const At={themes:{default:"sap_fiori_3",all:["sap_fiori_3","sap_fiori_3_dark","sap_belize","sap_belize_hcb","sap_belize_hcw","sap_fiori_3_hcb","sap_fiori_3_hcw","sap_horizon","sap_horizon_dark","sap_horizon_hcb","sap_horizon_hcw","sap_horizon_exp"]},languages:{default:"en",all:["ar","bg","ca","cs","cy","da","de","el","en","en_GB","en_US_sappsd","en_US_saprigi","en_US_saptrc","es","es_MX","et","fi","fr","fr_CA","hi","hr","hu","in","it","iw","ja","kk","ko","lt","lv","ms","nl","no","pl","pt_PT","pt","ro","ru","sh","sk","sl","sv","th","tr","uk","vi","zh_CN","zh_TW"]},locales:{default:"en",all:["ar","ar_EG","ar_SA","bg","ca","cs","da","de","de_AT","de_CH","el","el_CY","en","en_AU","en_GB","en_HK","en_IE","en_IN","en_NZ","en_PG","en_SG","en_ZA","es","es_AR","es_BO","es_CL","es_CO","es_MX","es_PE","es_UY","es_VE","et","fa","fi","fr","fr_BE","fr_CA","fr_CH","fr_LU","he","hi","hr","hu","id","it","it_CH","ja","kk","ko","lt","lv","ms","nb","nl","nl_BE","pl","pt","pt_PT","ro","ru","ru_UA","sk","sl","sr","sr_Latn","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]}},ft=At.themes.default,pt=At.languages.default,b=At.locales.default,he=At.locales.all,Xe=()=>{const e=navigator.languages,t=()=>navigator.language;return e&&e[0]||t()||pt};var Ye={},Qe=Ye.hasOwnProperty,Xs=Ye.toString,ts=Qe.toString,Ys=ts.call(Object),fe=function(e){var t,s;return!e||Xs.call(e)!=="[object Object]"?!1:(t=Object.getPrototypeOf(e),t?(s=Qe.call(t,"constructor")&&t.constructor,typeof s=="function"&&ts.call(s)===Ys):!0)},Qs=Object.create(null),es=function(e,t,s,n){var r,o,i,c,a,l,f=arguments[2]||{},u=3,d=arguments.length,h=arguments[0]||!1,p=arguments[1]?void 0:Qs;for(typeof f!="object"&&typeof f!="function"&&(f={});u<d;u++)if((a=arguments[u])!=null)for(c in a)r=f[c],i=a[c],!(c==="__proto__"||f===i)&&(h&&i&&(fe(i)||(o=Array.isArray(i)))?(o?(o=!1,l=r&&Array.isArray(r)?r:[]):l=r&&fe(r)?r:{},f[c]=es(h,arguments[1],l,i)):i!==p&&(f[c]=i));return f};const ee=function(e,t){return es(!0,!1,...arguments)},ss=new Map,ns=(e,t)=>{ss.set(e,t)},A=e=>ss.get(e),tn=e=>{const t=document.querySelector(`META[name="${e}"]`);return t&&t.getAttribute("content")},en=e=>{const t=tn("sap-allowedThemeOrigins");return t&&t.split(",").some(s=>s==="*"||e===s.trim())},sn=(e,t)=>{const s=new URL(e).pathname;return new URL(s,t).toString()},nn=e=>{let t,s;try{t=new URL(e);const n=t.origin;return t=t.toString(),t.startsWith(".")||t.startsWith("/")?s=new URL(t,window.location.href).toString():n&&en(n)?s=t.toString():s=sn(t,window.location.href),s.endsWith("/")||(s=`${s}/`),`${s}UI5/`}catch{}};var Gt;(function(e){e.Full="full",e.Basic="basic",e.Minimal="minimal",e.None="none"})(Gt||(Gt={}));const rn=Gt;let pe=!1,_={animationMode:rn.Full,theme:ft,themeRoot:void 0,rtl:void 0,language:void 0,calendarType:void 0,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const on=()=>(C(),_.animationMode),an=()=>(C(),_.theme),cn=()=>(C(),_.themeRoot),ln=()=>(C(),_.rtl),un=()=>(C(),_.language),dn=()=>(C(),_.fetchDefaultLanguage),hn=()=>(C(),_.noConflict),fn=()=>(C(),_.calendarType),rs=()=>(C(),_.formatSettings),gt=new Map;gt.set("true",!0);gt.set("false",!1);const pn=()=>{const e=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let t;if(e){try{t=JSON.parse(e.innerHTML)}catch{console.warn("Incorrect data-sap-ui-config format. Please use JSON")}t&&(_=ee(_,t))}},gn=()=>{const e=new URLSearchParams(window.location.search);e.forEach((t,s)=>{const n=s.split("sap-").length;n===0||n===s.split("sap-ui-").length||ge(s,t,"sap")}),e.forEach((t,s)=>{!s.startsWith("sap-ui")||ge(s,t,"sap-ui")})},mn=e=>{const t=e.split("@")[1];return nn(t)},yn=(e,t)=>e==="theme"&&t.includes("@")?t.split("@")[0]:t,ge=(e,t,s)=>{const n=t.toLowerCase(),r=e.split(`${s}-`)[1];gt.has(t)&&(t=gt.get(n)),r==="theme"?(_.theme=yn(r,t),t&&t.includes("@")&&(_.themeRoot=mn(t))):_[r]=t},_n=()=>{const e=A("OpenUI5Support");if(!e||!e.isLoaded())return;const t=e.getConfigurationSettingsObject();_=ee(_,t)},C=()=>{typeof document>"u"||pe||(pn(),gn(),_n(),pe=!0)};class D{constructor(){this._eventRegistry=new Map}attachEvent(t,s){const n=this._eventRegistry,r=n.get(t);if(!Array.isArray(r)){n.set(t,[s]);return}r.includes(s)||r.push(s)}detachEvent(t,s){const n=this._eventRegistry,r=n.get(t);if(!r)return;const o=r.indexOf(s);o!==-1&&r.splice(o,1),r.length===0&&n.delete(t)}fireEvent(t,s){const r=this._eventRegistry.get(t);return r?r.map(o=>o.call(this,s)):[]}fireEventAsync(t,s){return Promise.all(this.fireEvent(t,s))}isHandlerAttached(t,s){const r=this._eventRegistry.get(t);return r?r.includes(s):!1}hasListeners(t){return!!this._eventRegistry.get(t)}}const os=new D,is="languageChange",as=e=>{os.attachEvent(is,e)},wn=e=>os.fireEventAsync(is,e),me=10;class vn{constructor(){this.list=[],this.lookup=new Set}add(t){this.lookup.has(t)||(this.list.push(t),this.lookup.add(t))}remove(t){!this.lookup.has(t)||(this.list=this.list.filter(s=>s!==t),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return this.list.length===0}isAdded(t){return this.lookup.has(t)}process(t){let s;const n=new Map;for(s=this.shift();s;){const r=n.get(s)||0;if(r>me)throw new Error(`Web component processed too many times this task, max allowed is: ${me}`);t(s),n.set(s,r+1),s=this.shift()}}}const cs=(e,t=document.body)=>{let s=document.querySelector(e);return s||(s=document.createElement(e),t.insertBefore(s,t.firstChild))},An=()=>typeof document>"u"?null:cs("ui5-shared-resources",document.head),R=(e,t)=>{const s=e.split(".");let n=An();if(!n)return t;for(let r=0;r<s.length;r++){const o=s[r],i=r===s.length-1;Object.prototype.hasOwnProperty.call(n,o)||(n[o]=i?t:{}),n=n[o]}return n},Sn={version:"0.0.0-974b11d82",major:0,minor:0,patch:0,suffix:"-974b11d82",isNext:!0,buildTime:1677687114};let ct,$n="";const Lt=new Map,J=R("Runtimes",[]),bn=()=>{if(ct===void 0){ct=J.length;const e=Sn;J.push({...e,alias:$n,description:`Runtime ${ct} - ver ${e.version}`})}},ls=()=>ct,Cn=(e,t)=>{const s=`${e},${t}`;if(Lt.has(s))return Lt.get(s);const n=J[e],r=J[t];if(!n||!r)throw new Error("Invalid runtime index supplied");if(n.isNext||r.isNext)return n.buildTime-r.buildTime;const o=n.major-r.major;if(o)return o;const i=n.minor-r.minor;if(i)return i;const c=n.patch-r.patch;if(c)return c;const l=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare(n.suffix,r.suffix);return Lt.set(s,l),l},Tn=()=>J,us=R("Tags",new Map),se=new Set;let I=new Map,Mt;const ds=-1,En=e=>{se.add(e),us.set(e,ls())},Ln=e=>se.has(e),Mn=()=>[...se.values()],Pn=e=>{let t=us.get(e);t===void 0&&(t=ds),I.has(t)||I.set(t,new Set),I.get(t).add(e),Mt||(Mt=setTimeout(()=>{In(),I=new Map,Mt=void 0},1e3))},In=()=>{const e=Tn(),t=ls(),s=e[t];let n="Multiple UI5 Web Components instances detected.";e.length>1&&(n=`${n}
|
|
2
|
+
Loading order (versions before 1.1.0 not listed): ${e.map(r=>`
|
|
3
|
+
${r.description}`).join("")}`),[...I.keys()].forEach(r=>{let o,i;r===ds?(o=1,i={description:"Older unknown runtime"}):(o=Cn(t,r),i=e[r]);let c;o>0?c="an older":o<0?c="a newer":c="the same",n=`${n}
|
|
4
|
+
|
|
5
|
+
"${s.description}" failed to define ${I.get(r).size} tag(s) as they were defined by a runtime of ${c} version "${i.description}": ${[...I.get(r)].sort().join(", ")}.`,o>0?n=`${n}
|
|
6
|
+
WARNING! If your code uses features of the above web components, unavailable in ${i.description}, it might not work as expected!`:n=`${n}
|
|
7
|
+
Since the above web components were defined by the same or newer version runtime, they should be compatible with your code.`}),n=`${n}
|
|
8
|
+
|
|
9
|
+
To prevent other runtimes from defining tags that you use, consider using scoping or have third-party libraries use scoping: https://github.com/SAP/ui5-webcomponents/blob/main/docs/2-advanced/03-scoping.md.`,console.warn(n)},hs=new Set,xn=e=>{hs.add(e)},On=e=>hs.has(e),ne=new Set,Dn=new D,H=new vn;let N,lt,Pt,ot;const fs=async e=>{H.add(e),await Nn()},ps=e=>{Dn.fireEvent("beforeComponentRender",e),ne.add(e),e._render()},Rn=e=>{H.remove(e),ne.delete(e)},Nn=async()=>{ot||(ot=new Promise(e=>{window.requestAnimationFrame(()=>{H.process(ps),ot=null,e(),Pt||(Pt=setTimeout(()=>{Pt=void 0,H.isEmpty()&&Bn()},200))})})),await ot},kn=()=>N||(N=new Promise(e=>{lt=e,window.requestAnimationFrame(()=>{H.isEmpty()&&(N=void 0,e())})}),N),Un=()=>{const e=Mn().map(t=>customElements.whenDefined(t));return Promise.all(e)},re=async()=>{await Un(),await kn()},Bn=()=>{!H.isEmpty()||lt&&(lt(),lt=void 0,N=void 0)},St=async e=>{ne.forEach(t=>{const s=t.constructor,n=s.getMetadata().getTag(),r=On(s),o=s.getMetadata().isLanguageAware(),i=s.getMetadata().isThemeAware();(!e||e.tag===n||e.rtlAware&&r||e.languageAware&&o||e.themeAware&&i)&&fs(t)}),await re()};let G,Kt;const oe=()=>(G===void 0&&(G=un()),G),Hn=async e=>{G!==e&&(G=e,await wn(e),await St({languageAware:!0}))},Vn=e=>{Kt=e},Fn=()=>(Kt===void 0&&Vn(dn()),Kt),jn=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;class gs{constructor(t){const s=jn.exec(t.replace(/_/g,"-"));if(s===null)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=s[1]||pt,this.sScript=s[2]||"",this.sRegion=s[3]||"",this.sVariant=s[4]&&s[4].slice(1)||null,this.sExtension=s[5]&&s[5].slice(1)||null,this.sPrivateUse=s[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,n=>n.toUpperCase())),this.sRegion&&(this.sRegion=this.sRegion.toUpperCase())}getLanguage(){return this.sLanguage}getScript(){return this.sScript}getRegion(){return this.sRegion}getVariant(){return this.sVariant}getVariantSubtags(){return this.sVariant?this.sVariant.split("-"):[]}getExtension(){return this.sExtension}getExtensionSubtags(){return this.sExtension?this.sExtension.slice(2).split("-"):[]}getPrivateUse(){return this.sPrivateUse}getPrivateUseSubtags(){return this.sPrivateUse?this.sPrivateUse.slice(2).split("-"):[]}hasPrivateUseSubtag(t){return this.getPrivateUseSubtags().indexOf(t)>=0}toString(){const t=[this.sLanguage];return this.sScript&&t.push(this.sScript),this.sRegion&&t.push(this.sRegion),this.sVariant&&t.push(this.sVariant),this.sExtension&&t.push(this.sExtension),this.sPrivateUse&&t.push(this.sPrivateUse),t.join("-")}}const It=new Map,ms=e=>(It.has(e)||It.set(e,new gs(e)),It.get(e)),ye=e=>{try{if(e&&typeof e=="string")return ms(e)}catch{}return new gs(b)},Jt=e=>{if(e)return ye(e);const t=oe();return t?ms(t):ye(Xe())},zn=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i,_e=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,Wn={he:"iw",yi:"ji",nb:"no",sr:"sh"},Zn=e=>{let t;if(!e)return b;if(typeof e=="string"&&(t=zn.exec(e.replace(/_/g,"-")))){let s=t[1].toLowerCase(),n=t[3]?t[3].toUpperCase():void 0;const r=t[2]?t[2].toLowerCase():void 0,o=t[4]?t[4].slice(1):void 0,i=t[6];return s=Wn[s]||s,i&&(t=_e.exec(i))||o&&(t=_e.exec(o))?`en_US_${t[1].toLowerCase()}`:(s==="zh"&&!n&&(r==="hans"?n="CN":r==="hant"&&(n="TW")),s+(n?"_"+n+(o?"_"+o.replace("-","_"):""):""))}return b},qn=e=>{if(!e)return b;if(e==="zh_HK")return"zh_TW";const t=e.lastIndexOf("_");return t>=0?e.slice(0,t):e!==b?b:""},we=new Set,ve=new Set,ie=new Map,xt=new Map,ae=new Map,Gn=(e,t,s)=>{const n=`${e}/${t}`;ae.set(n,s)},Ae=(e,t)=>{ie.set(e,t)},Kn=e=>ie.get(e),Se=(e,t)=>{const s=`${e}/${t}`;return ae.has(s)},Jn=(e,t)=>{const s=`${e}/${t}`,n=ae.get(s);return n&&!xt.get(s)&&xt.set(s,n(t)),xt.get(s)},Xn=e=>{we.has(e)||(console.warn(`[${e}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${e}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`),we.add(e))},ys=async e=>{const t=Jt().getLanguage(),s=Jt().getRegion();let n=Zn(t+(s?`-${s}`:""));for(;n!==pt&&!Se(e,n);)n=qn(n);const r=Fn();if(n===pt&&!r){Ae(e,null);return}if(!Se(e,n)){Xn(e);return}try{const o=await Jn(e,n);Ae(e,o)}catch(o){const i=o;ve.has(i.message)||(ve.add(i.message),console.error(i.message))}};as(e=>{const t=[...ie.keys()];return Promise.all(t.map(ys))});const Yn=new Map,mt=new Map,Ot=new Map,$e=new Set;let be=!1;const Qn={iw:"he",ji:"yi",in:"id"},Ce=e=>{be||(console.warn(`[LocaleData] Supported locale "${e}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),be=!0)},tr=(e,t,s)=>{e=e&&Qn[e]||e,e==="no"&&(e="nb"),e==="zh"&&!t&&(s==="Hans"?t="CN":s==="Hant"&&(t="TW")),(e==="sh"||e==="sr"&&s==="Latn")&&(e="sr",t="Latn");let n=`${e}_${t}`;return he.includes(n)||(n=e,he.includes(n))?mt.has(n)?n:(Ce(n),b):b},Te=(e,t)=>{Yn.set(e,t)},er=e=>{if(!Ot.get(e)){const t=mt.get(e);if(!t)throw new Error(`CLDR data for locale ${e} is not loaded!`);Ot.set(e,t(e))}return Ot.get(e)},sr=async(e,t,s)=>{const n=tr(e,t,s),r=A("OpenUI5Support");if(r){const o=r.getLocaleDataObject();if(o){Te(n,o);return}}try{const o=await er(n);Te(n,o)}catch(o){const i=o;$e.has(i.message)||($e.add(i.message),console.error(i.message))}},nr=(e,t)=>{mt.set(e,t)};nr("en",async()=>(await fetch("https://sdk.openui5.org/1.103.0/resources/sap/ui/core/cldr/en.json")).json());as(()=>{const e=Jt();return sr(e.getLanguage(),e.getRegion(),e.getScript())});const _s=new Map,ws=new Map,vs=new Set,yt=new Set,L=(e,t,s)=>{ws.set(`${e}/${t}`,s),vs.add(e),yt.add(t)},As=async(e,t)=>{const s=_s.get(`${e}_${t}`);if(s!==void 0)return s;if(!yt.has(t)){const n=[...yt.values()].join(", ");return console.warn(`You have requested a non-registered theme ${t} - falling back to ${ft}. Registered themes are: ${n}`),Ee(e,ft)}return Ee(e,t)},Ee=async(e,t)=>{const s=ws.get(`${e}/${t}`);if(!s){console.error(`Theme [${t}] not registered for package [${e}]`);return}let n;try{n=await s(t)}catch(o){console.error(e,o.message);return}const r=n._||n;return _s.set(`${e}_${t}`,r),r},Ss=()=>vs,rr=e=>yt.has(e);var _t;(function(e){e["SAP-icons"]="SAP-icons-v4",e.horizon="SAP-icons-v5",e["SAP-icons-TNT"]="tnt",e.BusinessSuiteInAppSymbols="business-suite"})(_t||(_t={}));const $s=e=>_t[e]?_t[e]:e,or=(e,t)=>{const s=document.createElement("style");return s.type="text/css",t&&Object.entries(t).forEach(n=>s.setAttribute(...n)),s.textContent=e,document.head.appendChild(s),s},ir=(e,t)=>{const s=document.createElement("link");return s.type="text/css",s.rel="stylesheet",t&&Object.entries(t).forEach(n=>s.setAttribute(...n)),s.href=e,document.head.appendChild(s),new Promise(n=>{s.addEventListener("load",n),s.addEventListener("error",n)})},$t=(e,t)=>t?`${e}|${t}`:e,bt=(e,t,s="")=>{const n=typeof e=="string"?e:e.content;if(document.adoptedStyleSheets){const r=new CSSStyleSheet;r.replaceSync(n),r._ui5StyleId=$t(t,s),document.adoptedStyleSheets=[...document.adoptedStyleSheets,r]}else{const r={};r[t]=s,or(n,r)}},ar=(e,t,s="")=>{const n=typeof e=="string"?e:e.content;if(document.adoptedStyleSheets){const r=document.adoptedStyleSheets.find(o=>o._ui5StyleId===$t(t,s));r&&r.replaceSync(n||"")}else{const r=document.querySelector(`head>style[${t}="${s}"]`);r&&(r.textContent=n||"")}},Ct=(e,t="")=>document.adoptedStyleSheets?!!document.adoptedStyleSheets.find(s=>s._ui5StyleId===$t(e,t)):!!document.querySelector(`head>style[${e}="${t}"]`),cr=(e,t="")=>{var s;if(document.adoptedStyleSheets)document.adoptedStyleSheets=document.adoptedStyleSheets.filter(n=>n._ui5StyleId!==$t(e,t));else{const n=document.querySelector(`head > style[${e}="${t}"]`);(s=n==null?void 0:n.parentElement)==null||s.removeChild(n)}},bs=(e,t,s="")=>{Ct(t,s)?ar(e,t,s):bt(e,t,s)},k=new Set,lr=()=>{let e=document.querySelector(".sapThemeMetaData-Base-baseLib")||document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");if(e)return getComputedStyle(e).backgroundImage;e=document.createElement("span"),e.style.display="none",e.classList.add("sapThemeMetaData-Base-baseLib"),document.body.appendChild(e);let t=getComputedStyle(e).backgroundImage;return t==="none"&&(e.classList.add("sapThemeMetaData-UI5-sap-ui-core"),t=getComputedStyle(e).backgroundImage),document.body.removeChild(e),t},ur=e=>{const t=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(e);if(t&&t.length>=2){let s=t[1];if(s=s.replace(/\\"/g,'"'),s.charAt(0)!=="{"&&s.charAt(s.length-1)!=="}")try{s=decodeURIComponent(s)}catch{k.has("decode")||(console.warn("Malformed theme metadata string, unable to decodeURIComponent"),k.add("decode"));return}try{return JSON.parse(s)}catch{k.has("parse")||(console.warn("Malformed theme metadata string, unable to parse JSON"),k.add("parse"))}}},dr=e=>{let t,s;try{t=e.Path.match(/\.([^.]+)\.css_variables$/)[1],s=e.Extends[0]}catch{k.has("object")||(console.warn("Malformed theme metadata Object",e),k.add("object"));return}return{themeName:t,baseThemeName:s}},Le=()=>{const e=lr();if(!e||e==="none")return;const t=ur(e);if(t)return dr(t)},hr=new D,fr="themeLoaded",pr=e=>hr.fireEvent(fr,e);let Dt;const Cs=()=>(Dt===void 0&&(Dt=cn()),Dt),gr=e=>`${Cs()}Base/baseLib/${e}/css_variables.css`,mr=async e=>{const t=document.querySelector(`[sap-ui-webcomponents-theme="${e}"]`);t&&document.head.removeChild(t),await ir(gr(e),{"sap-ui-webcomponents-theme":e})},X="@ui5/webcomponents-theming",yr=()=>Ss().has(X),_r=async e=>{if(!yr())return;const t=await As(X,e);t&&bs(t,"data-ui5-theme-properties",X)},wr=()=>{cr("data-ui5-theme-properties",X)},vr=async e=>{const s=[...Ss()].map(async n=>{if(n===X)return;const r=await As(n,e);r&&bs(r,"data-ui5-theme-properties",n)});return Promise.all(s)},Ar=async e=>{var n;const t=Le();if(t)return t;const s=A("OpenUI5Support");if(s){if(s.cssVariablesLoaded())return{themeName:(n=s.getConfigurationSettingsObject())==null?void 0:n.theme,baseThemeName:""}}else if(Cs())return await mr(e),Le()},Ts=async e=>{const t=await Ar(e);!t||e!==t.themeName?await _r(e):wr();const s=rr(e)?e:t&&t.baseThemeName;await vr(s||ft),pr(e)};let U;const Tt=()=>(U===void 0&&(U=an()),U),Es=async e=>{U!==e&&(U=e,await Ts(U),await St({themeAware:!0}))},Sr=e=>Tt().startsWith(e),$r=new Map;var E;(function(e){e.SAPIconsV4="SAP-icons-v4",e.SAPIconsV5="SAP-icons-v5",e.SAPIconsTNTV2="tnt-v2",e.SAPIconsTNTV3="tnt-v3",e.SAPBSIconsV1="business-suite-v1",e.SAPBSIconsV2="business-suite-v2"})(E||(E={}));const br=e=>{const t=Tt(),s=$r.get(t);return!e&&s?$s(s):Cr(e)},Cr=e=>{const t=Sr("sap_horizon");return e?e==="tnt"?t?E.SAPIconsTNTV3:E.SAPIconsTNTV2:e==="business-suite"?t?E.SAPBSIconsV2:E.SAPBSIconsV1:e:t?E.SAPIconsV5:E.SAPIconsV4},Me=new Map,wt=R("SVGIcons.registry",new Map),Rt=R("SVGIcons.promises",new Map),Pe="ICON_NOT_FOUND",Tr=async e=>{if(!Rt.has(e)){if(!Me.has(e))throw new Error(`No loader registered for the ${e} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const t=Me.get(e);Rt.set(e,t(e))}return Rt.get(e)},Er=e=>{Object.keys(e.data).forEach(t=>{const s=e.data[t];Lr(t,{pathData:s.path||s.paths,ltr:s.ltr,accData:s.acc,collection:e.collection,packageName:e.packageName})})},Lr=(e,t)=>{const s=`${t.collection}/${e}`;wt.set(s,{pathData:t.pathData,ltr:t.ltr,accData:t.accData,packageName:t.packageName,customTemplate:t.customTemplate,viewBox:t.viewBox,collection:t.collection})},Mr=e=>{e.startsWith("sap-icon://")&&(e=e.replace("sap-icon://",""));let t;[e,t]=e.split("/").reverse(),e=e.replace("icon-",""),t&&(t=$s(t)),t=br(t);const s=`${t}/${e}`;return{name:e,collection:t,registryKey:s}},Nt=async e=>{const{collection:t,registryKey:s}=Mr(e);let n=Pe;try{n=await Tr(t)}catch(r){console.error(r.message)}return n===Pe?n:(wt.has(s)||Er(n),wt.get(s))},Pr=async()=>(await Nt("edit"),await Nt("tnt/arrow"),await Nt("business-suite/3d"),Array.from(wt.keys())),Ir=R("PopupUtilsData",{currentZIndex:100}),Ie=()=>Ir.currentZIndex,S=()=>{var e,t,s;return(s=(t=(e=window.sap)==null?void 0:e.ui)==null?void 0:t.getCore)==null?void 0:s.call(t)};class ce{static isLoaded(){return!!S()}static init(){const t=S();return t?new Promise(s=>{t.attachInit(()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],(n,r)=>{r.setInitialZIndex(Ie()),s()})})}):Promise.resolve()}static getConfigurationSettingsObject(){const t=S();if(!t)return;const s=t.getConfiguration(),n=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:s.getAnimationMode(),language:s.getLanguage(),theme:s.getTheme(),themeRoot:s.getThemeRoot(),rtl:s.getRTL(),calendarType:s.getCalendarType(),formatSettings:{firstDayOfWeek:n?n.getInstance(s.getLocale()).getFirstDayOfWeek():void 0,legacyDateCalendarCustomizing:s.getFormatSettings().getLegacyDateCalendarCustomizing()}}}static getLocaleDataObject(){const t=S();if(!t)return;const s=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(s.getLocale())._get()}static _listenForThemeChange(){const t=S(),s=t.getConfiguration();t.attachThemeChanged(async()=>{await Es(s.getTheme())})}static attachListeners(){!S()||ce._listenForThemeChange()}static cssVariablesLoaded(){if(!S())return;const s=[...document.head.children].find(n=>n.id==="sap-ui-theme-sap.ui.core");if(!!s)return!!s.href.match(/\/css(-|_)variables\.css/)}static getNextZIndex(){return S()?window.sap.ui.require("sap/ui/core/Popup").getNextZIndex():void 0}static setInitialZIndex(){if(!S())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(Ie())}}ns("OpenUI5Support",ce);const xr=()=>new Promise(e=>{document.body?e():document.addEventListener("DOMContentLoaded",()=>{e()})}),Or={packageName:"@ui5/webcomponents-base",fileName:"FontFace.css",content:`@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local('72-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local('72-Bold-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Bold';font-style:normal;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Boldfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Light';font-style:normal;src:local('72-Light'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Lightfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local('72Black'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2")}`},Dr={packageName:"@ui5/webcomponents-base",fileName:"OverrideFontFace.css",content:"@font-face{font-family:'72override';unicode-range:U+0102-0103,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EB7,U+1EB8-1EC7,U+1EC8-1ECB,U+1ECC-1EE3,U+1EE4-1EF1,U+1EF4-1EF7;src:local('Arial'),local('Helvetica'),local('sans-serif')}"},Rr=()=>{const e=A("OpenUI5Support");(!e||!e.isLoaded())&&Nr(),kr()},Nr=()=>{Ct("data-ui5-font-face")||bt(Or,"data-ui5-font-face")},kr=()=>{Ct("data-ui5-font-face-override")||bt(Dr,"data-ui5-font-face-override")},Ur={packageName:"@ui5/webcomponents-base",fileName:"SystemCSSVars.css",content:":root{--_ui5_content_density:cozy}.sapUiSizeCompact,.ui5-content-density-compact,[data-ui5-compact-size]{--_ui5_content_density:compact}[dir=rtl]{--_ui5_dir:rtl}[dir=ltr]{--_ui5_dir:ltr}"},Br=()=>{Ct("data-ui5-system-css-vars")||bt(Ur,"data-ui5-system-css-vars")};let it;const Hr=async()=>{if(it!==void 0)return it;const e=async t=>{if(typeof document>"u"){t();return}bn();const s=A("OpenUI5Support"),n=s?s.isLoaded():!1,r=A("F6Navigation");s&&await s.init(),r&&!n&&r.init(),await xr(),await Ts(Tt()),s&&s.attachListeners(),Rr(),Br(),t()};return it=new Promise(e),it},kt=new Map,Ut=new Map,xe=e=>{if(!kt.has(e)){const t=Vr(e.split("-"));kt.set(e,t)}return kt.get(e)},Ls=e=>{if(!Ut.has(e)){const t=e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();Ut.set(e,t)}return Ut.get(e)},Vr=e=>e.map((t,s)=>s===0?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join(""),Fr=e=>{if(!(e instanceof HTMLElement))return"default";const t=e.getAttribute("slot");if(t){const s=t.match(/^(.+?)-\d+$/);return s?s[1]:t}return"default"},Ms=e=>e instanceof HTMLSlotElement?e.assignedNodes({flatten:!0}).filter(t=>t instanceof HTMLElement):[e],jr=e=>e.reduce((t,s)=>t.concat(Ms(s)),[]);let zr,Oe={include:[/^ui5-/],exclude:[]};const Bt=new Map,Ps=()=>zr,Xt=e=>{if(!Bt.has(e)){const t=Oe.include.some(s=>e.match(s))&&!Oe.exclude.some(s=>e.match(s));Bt.set(e,t)}return Bt.get(e)},Is=e=>{if(Xt(e))return Ps()};class Wr{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},s=this.slotsAreManaged(),n=this.getProperties();for(const r in n){const o=n[r].type,i=n[r].defaultValue;o===Boolean?(t[r]=!1,i!==void 0&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):n[r].multiple?t[r]=[]:o===Object?t[r]="defaultValue"in n[r]?n[r].defaultValue:{}:o===String?t[r]="defaultValue"in n[r]?n[r].defaultValue:"":t[r]=i}if(s){const r=this.getSlots();for(const[o,i]of Object.entries(r)){const c=i.propertyName||o;t[c]=[]}}return this._initialState=t,t}static validatePropertyValue(t,s){return s.multiple&&t?t.map(r=>De(r,s)):De(t,s)}static validateSlotValue(t,s){return Zr(t,s)}getPureTag(){return this.metadata.tag||""}getTag(){const t=this.metadata.tag;if(!t)return"";const s=Is(t);return s?`${t}-${s}`:t}hasAttribute(t){const s=this.getProperties()[t];return s.type!==Object&&!s.noAttribute&&!s.multiple}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute.bind(this)).map(Ls)}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.values(this.getSlots()).some(t=>t.individualSlots)}slotsAreManaged(){return!!this.metadata.managedSlots}supportsF6FastNavigation(){return!!this.metadata.fastNavigation}getProperties(){return this.metadata.properties||(this.metadata.properties={}),this.metadata.properties}getEvents(){return this.metadata.events||(this.metadata.events={}),this.metadata.events}getSlots(){return this.metadata.slots||(this.metadata.slots={}),this.metadata.slots}isLanguageAware(){return!!this.metadata.languageAware}isThemeAware(){return!!this.metadata.themeAware}shouldInvalidateOnChildChange(t,s,n){const r=this.getSlots()[t].invalidateOnChildChange;if(r===void 0)return!1;if(typeof r=="boolean")return r;if(typeof r=="object"){if(s==="property"){if(r.properties===void 0)return!1;if(typeof r.properties=="boolean")return r.properties;if(Array.isArray(r.properties))return r.properties.includes(n);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if(s==="slot"){if(r.slots===void 0)return!1;if(typeof r.slots=="boolean")return r.slots;if(Array.isArray(r.slots))return r.slots.includes(n);throw new Error("Wrong format for invalidateOnChildChange.slots: boolean or array is expected")}}throw new Error("Wrong format for invalidateOnChildChange: boolean or object is expected")}}const De=(e,t)=>{const s=t.type;let n=t.validator;return s&&s.isDataTypeClass&&(n=s),n?n.isValid(e)?e:t.defaultValue:!s||s===String?typeof e=="string"||typeof e>"u"||e===null?e:e.toString():s===Boolean?typeof e=="boolean"?e:!1:s===Object?typeof e=="object"?e:t.defaultValue:e in s?e:t.defaultValue},Zr=(e,t)=>(e&&Ms(e).forEach(s=>{if(!(s instanceof t.type))throw new Error(`The element is not of type ${t.type.toString()}`)}),e);customElements.get("ui5-static-area")||customElements.define("ui5-static-area",class extends HTMLElement{});const qr=(e,t)=>{const s=Gr(t),n=Ps();return e(t,s,n)},Gr=e=>{const t=e.constructor,s=t.getMetadata().getPureTag(),n=t.getUniqueDependencies().map(r=>r.getMetadata().getPureTag()).filter(Xt);return Xt(s)&&n.push(s),n},Kr=()=>R("CustomStyle.eventProvider",new D),Jr="CustomCSSChange",le=e=>{Kr().attachEvent(Jr,e)},Xr=()=>R("CustomStyle.customCSSFor",{});le(e=>{St({tag:e})});const Yr=e=>{const t=Xr();return t[e]?t[e].join(""):""},Qr=10,Ht=e=>Array.isArray(e)?e.filter(t=>!!t).flat(Qr).map(t=>typeof t=="string"?t:t.content).join(" "):typeof e=="string"?e:e.content,ut=new Map;le(e=>{ut.delete(`${e}_normal`)});const xs=(e,t=!1)=>{const s=e.getMetadata().getTag(),n=`${s}_${t?"static":"normal"}`,r=A("OpenUI5Enablement");if(!ut.has(n)){let o,i="";if(r&&(i=Ht(r.getBusyIndicatorStyles())),t)o=Ht(e.staticAreaStyles);else{const c=Yr(s)||"";o=`${Ht(e.styles)} ${c}`}o=`${o} ${i}`,ut.set(n,o)}return ut.get(n)},dt=new Map;le(e=>{dt.delete(`${e}_normal`)});const to=(e,t=!1)=>{const n=`${e.getMetadata().getTag()}_${t?"static":"normal"}`;if(!dt.has(n)){const r=xs(e,t),o=new CSSStyleSheet;o.replaceSync(r),dt.set(n,[o])}return dt.get(n)},Yt=(e,t=!1)=>{let s;const n=e.constructor,o=n[t?"staticAreaTemplate":"template"],i=t?e.staticAreaItem.shadowRoot:e.shadowRoot,c=qr(o,e);if(!i){console.warn("There is no shadow root to update");return}if(document.adoptedStyleSheets?i.adoptedStyleSheets=to(n,t):s=xs(n,t),n.renderer){n.renderer(c,i,s,t,{host:e});return}n.render(c,i,s,t,{host:e})},eo="--_ui5_content_density",so=e=>getComputedStyle(e).getPropertyValue(eo),no=e=>{const t=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(e);return t&&t[2]?t[2].split(/,/):null},ro={iw:"he",ji:"yi",in:"id",sh:"sr"},oo=no("$cldr-rtl-locales:ar,fa,he$")||[],io=e=>(e=e&&ro[e]||e,oo.indexOf(e)>=0),Os=()=>{if(typeof document>"u")return!1;const e=ln();return e!==void 0?!!e:io(oe()||Xe())},ao="--_ui5_dir",Ds=e=>{const t=window.document,s=["ltr","rtl"],n=getComputedStyle(e).getPropertyValue(ao);return s.includes(n)?n:s.includes(e.dir)?e.dir:s.includes(t.documentElement.dir)?t.documentElement.dir:s.includes(t.body.dir)?t.body.dir:Os()?"rtl":void 0},at="ui5-static-area-item",co="data-sap-ui-integration-popup-content";class K extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id),this.ownerElement.hasAttribute("data-ui5-static-stable")&&this.setAttribute("data-ui5-stable",this.ownerElement.getAttribute("data-ui5-static-stable"))}update(){this._rendered&&(this._updateAdditionalAttrs(),this._updateContentDensity(),this._updateDirection(),Yt(this.ownerElement,!0))}_updateContentDensity(){so(this.ownerElement)==="compact"?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){if(this.ownerElement){const t=Ds(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}}_updateAdditionalAttrs(){this.setAttribute(at,""),this.setAttribute(co,"")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,Yt(this.ownerElement,!0)),await re(),this.shadowRoot}static getTag(){const t=Is(at);return t?`${at}-${t}`:at}static createInstance(){return customElements.get(K.getTag())||customElements.define(K.getTag(),K),document.createElement(this.getTag())}}const Qt=new WeakMap,lo=(e,t,s)=>{const n=new MutationObserver(t);Qt.set(e,n),n.observe(e,s)},uo=e=>{const t=Qt.get(e);t&&(t.disconnect(),Qt.delete(e))},ho=["value-changed"];let ht;const fo=e=>ho.includes(e),po=e=>{const t=ue();return!(typeof t!="boolean"&&t.events&&t.events.includes&&t.events.includes(e))},ue=()=>(ht===void 0&&(ht=hn()),ht),go=e=>{ht=e},mo=e=>{const t=ue();return fo(e)?!1:t===!0?!0:!po(e)},yo=["disabled","title","hidden","role","draggable"],Re=e=>yo.includes(e)||e.startsWith("aria")?!0:![HTMLElement,Element,Node].some(s=>s.prototype.hasOwnProperty(e)),Ne=(e,t)=>{if(e.length!==t.length)return!1;for(let s=0;s<e.length;s++)if(e[s]!==t[s])return!1;return!0};let _o=0;const ke=new Map,Vt=new Map;function z(e){this._suppressInvalidation||(this.onInvalidation(e),this._changedState.push(e),fs(this),this._eventProvider.fireEvent("invalidate",{...e,target:this}))}let Ue={};class T extends HTMLElement{constructor(){super();const t=this.constructor;this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new D;let s;this._domRefReadyPromise=new Promise(n=>{s=n}),this._domRefReadyPromise._deferredResolve=s,this._doNotSyncAttributes=new Set,this._state={...t.getMetadata().getInitialState()},this._upgradeAllProperties(),t._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id=`ui5wc_${++_o}`),this.__id}async connectedCallback(){const t=this.constructor;this.setAttribute(t.getMetadata().getPureTag(),""),t.getMetadata().supportsF6FastNavigation()&&this.setAttribute("data-sap-ui-fastnavgroup","true");const s=t.getMetadata().slotsAreManaged();this._inDOM=!0,s&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&(ps(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,this.onEnterDOM())}disconnectedCallback(){const s=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!1,s&&this._stopObservingDOMChildren(),this._fullyConnected&&(this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),Rn(this)}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}_startObservingDOMChildren(){const t=this.constructor;if(!t.getMetadata().hasSlots())return;const n=t.getMetadata().canSlotText(),r={childList:!0,subtree:n,characterData:n};lo(this,this._processChildren.bind(this),r)}_stopObservingDOMChildren(){uo(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor,s=t.getMetadata().getSlots(),n=t.getMetadata().canSlotText(),r=Array.from(n?this.childNodes:this.children),o=new Map,i=new Map;for(const[u,d]of Object.entries(s)){const h=d.propertyName||u;i.set(h,u),o.set(h,[...this._state[h]]),this._clearSlot(u,d)}const c=new Map,a=new Map,l=r.map(async(u,d)=>{const h=Fr(u),p=s[h];if(p===void 0){if(h!=="default"){const g=Object.keys(s).join(", ");console.warn(`Unknown slotName: ${h}, ignoring`,u,`Valid values are: ${g}`)}return}if(p.individualSlots){const g=(c.get(h)||0)+1;c.set(h,g),u._individualSlot=`${h}-${g}`}if(u instanceof HTMLElement){const g=u.localName;if(g.includes("-")){if(!window.customElements.get(g)){const Ks=window.customElements.whenDefined(g);let rt=ke.get(g);rt||(rt=new Promise(Js=>setTimeout(Js,1e3)),ke.set(g,rt)),await Promise.race([Ks,rt])}window.customElements.upgrade(u)}}if(u=t.getMetadata().constructor.validateSlotValue(u,p),Be(u)&&p.invalidateOnChildChange){const g=this._getChildChangeListener(h);g&&u.attachInvalidate.call(u,g)}u instanceof HTMLSlotElement&&this._attachSlotChange(u,h);const m=p.propertyName||h;a.has(m)?a.get(m).push({child:u,idx:d}):a.set(m,[{child:u,idx:d}])});await Promise.all(l),a.forEach((u,d)=>{this._state[d]=u.sort((h,p)=>h.idx-p.idx).map(h=>h.child)});let f=!1;for(const[u,d]of Object.entries(s)){const h=d.propertyName||u;Ne(o.get(h),this._state[h])||(z.call(this,{type:"slot",name:i.get(h),reason:"children"}),f=!0)}f||z.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,s){const n=s.propertyName||t;this._state[n].forEach(o=>{if(Be(o)){const i=this._getChildChangeListener(t);i&&o.detachInvalidate.call(o,i)}o instanceof HTMLSlotElement&&this._detachSlotChange(o,t)}),this._state[n]=[]}attachInvalidate(t){this._eventProvider.attachEvent("invalidate",t)}detachInvalidate(t){this._eventProvider.detachEvent("invalidate",t)}_onChildChange(t,s){!this.constructor.getMetadata().shouldInvalidateOnChildChange(t,s.type,s.name)||z.call(this,{type:"slot",name:t,reason:"childchange",child:s.target})}attributeChangedCallback(t,s,n){let r;if(this._doNotSyncAttributes.has(t))return;const o=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),c=xe(i);if(o.hasOwnProperty(c)){const a=o[c],l=a.type;let f=a.validator;l&&l.isDataTypeClass&&(f=l),f?r=f.attributeToProperty(n):l===Boolean?r=n!==null:r=n,this[c]=r}}_updateAttribute(t,s){const n=this.constructor;if(!n.getMetadata().hasAttribute(t))return;const o=n.getMetadata().getProperties()[t],i=o.type;let c=o.validator;const a=Ls(t),l=this.getAttribute(a);if(i&&i.isDataTypeClass&&(c=i),c){const f=c.propertyToAttribute(s);f===null?(this._doNotSyncAttributes.add(a),this.removeAttribute(a),this._doNotSyncAttributes.delete(a)):this.setAttribute(a,f)}else i===Boolean?s===!0&&l===null?this.setAttribute(a,""):s===!1&&l!==null&&this.removeAttribute(a):typeof s!="object"&&l!==s&&this.setAttribute(a,s)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const s=this[t];delete this[t],this[t]=s}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty.bind(this))}_getChildChangeListener(t){return this._childChangeListeners.has(t)||this._childChangeListeners.set(t,this._onChildChange.bind(this,t)),this._childChangeListeners.get(t)}_getSlotChangeListener(t){return this._slotChangeListeners.has(t)||this._slotChangeListeners.set(t,this._onSlotChange.bind(this,t)),this._slotChangeListeners.get(t)}_attachSlotChange(t,s){const n=this._getSlotChangeListener(s);n&&t.addEventListener("slotchange",n)}_detachSlotChange(t,s){t.removeEventListener("slotchange",this._getSlotChangeListener(s))}_onSlotChange(t){z.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor,s=t.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],t._needsShadowDOM()&&Yt(this),this.staticAreaItem&&this.staticAreaItem.update(),s&&this._assignIndividualSlotsToChildren(),this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach(s=>{s._individualSlot&&s.setAttribute("slot",s._individualSlot)})}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if(typeof this._getRealDomRef=="function")return this._getRealDomRef();if(!this.shadowRoot||this.shadowRoot.children.length===0)return;const t=[...this.shadowRoot.children].filter(s=>!["link","style"].includes(s.localName));return t.length!==1&&console.warn(`The shadow DOM for ${this.constructor.getMetadata().getTag()} does not have a top level element, the getDomRef() method might not work as expected`),t[0]}getFocusDomRef(){const t=this.getDomRef();if(t)return t.querySelector("[data-sap-focus-ref]")||t}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}async focus(t){await this._waitForDomRef();const s=this.getFocusDomRef();s&&typeof s.focus=="function"&&s.focus(t)}fireEvent(t,s,n=!1,r=!0){const o=this._fireEvent(t,s,n,r),i=xe(t);return i!==t?o&&this._fireEvent(i,s,n):o}_fireEvent(t,s,n=!1,r=!0){const o=new CustomEvent(`ui5-${t}`,{detail:s,composed:!1,bubbles:r,cancelable:n}),i=this.dispatchEvent(o);if(mo(t))return i;const c=new CustomEvent(t,{detail:s,composed:!1,bubbles:r,cancelable:n});return this.dispatchEvent(c)&&i}getSlottedNodes(t){return jr(this[t])}get effectiveDir(){return xn(this.constructor),Ds(this)}get isUI5Element(){return!0}get classes(){return{}}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _needsShadowDOM(){return!!this.template}static _needsStaticArea(){return!!this.staticAreaTemplate}getStaticAreaItemDomRef(){if(!this.constructor._needsStaticArea())throw new Error("This component does not use the static area");return this.staticAreaItem||(this.staticAreaItem=K.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||cs("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,s=this.getMetadata().slotsAreManaged(),n=this.getMetadata().getProperties();for(const[r,o]of Object.entries(n)){if(Re(r)||console.warn(`"${r}" is not a valid property name. Use a name that does not collide with DOM APIs`),o.type===Boolean&&o.defaultValue)throw new Error(`Cannot set a default value for property "${r}". All booleans are false by default.`);if(o.type===Array)throw new Error(`Wrong type for property "${r}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(o.type===Object&&o.defaultValue)throw new Error(`Cannot set a default value for property "${r}". All properties of type "Object" are empty objects by default.`);if(o.multiple&&o.defaultValue)throw new Error(`Cannot set a default value for property "${r}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,r,{get(){if(this._state[r]!==void 0)return this._state[r];const i=o.defaultValue;return o.type===Boolean?!1:o.type===String?i:o.multiple?[]:i},set(i){let c;i=this.constructor.getMetadata().constructor.validatePropertyValue(i,o);const f=o.type;let u=o.validator;const d=this._state[r];f&&f.isDataTypeClass&&(u=f),u?c=!u.valuesAreEqual(d,i):Array.isArray(d)&&Array.isArray(i)&&o.multiple&&o.compareValues?c=!Ne(d,i):c=d!==i,c&&(this._state[r]=i,z.call(this,{type:"property",name:r,newValue:i,oldValue:d}),this._updateAttribute(r,i))}})}if(s){const r=this.getMetadata().getSlots();for(const[o,i]of Object.entries(r)){Re(o)||console.warn(`"${o}" is not a valid property name. Use a name that does not collide with DOM APIs`);const c=i.propertyName||o;Object.defineProperty(t,c,{get(){return this._state[c]!==void 0?this._state[c]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get metadata(){return Ue}static set metadata(t){Ue=t}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!Vt.has(this)){const t=this.dependencies.filter((s,n,r)=>r.indexOf(s)===n);Vt.set(this,t)}return Vt.get(this)||[]}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map(t=>t.define()))}static async onDefine(){return Promise.resolve()}static async define(){await Hr(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),s=Ln(t),n=customElements.get(t);return n&&!s?Pn(t):n||(this._generateAccessors(),En(t),window.customElements.define(t,this)),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const s=[Object.keys(this.metadata).length?this.metadata:this.decoratorMetadata];let n=this;for(;n!==T;){n=Object.getPrototypeOf(n);const o=Object.keys(n.metadata).length?n.metadata:n.decoratorMetadata;s.unshift(o)}const r=ee({},...s);return this._metadata=new Wr(r),this._metadata}}T.decoratorMetadata={};const Be=e=>"isUI5Element"in e;/**
|
|
10
|
+
* @license
|
|
11
|
+
* Copyright 2017 Google LLC
|
|
12
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
13
|
+
*/var Ft;const vt=window,V=vt.trustedTypes,He=V?V.createPolicy("lit-html",{createHTML:e=>e}):void 0,$=`lit$${(Math.random()+"").slice(9)}$`,de="?"+$,wo=`<${de}>`,F=document,Y=(e="")=>F.createComment(e),Q=e=>e===null||typeof e!="object"&&typeof e!="function",Rs=Array.isArray,Ns=e=>Rs(e)||typeof(e==null?void 0:e[Symbol.iterator])=="function",W=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Ve=/-->/g,Fe=/>/g,M=RegExp(`>|[
|
|
14
|
+
\f\r](?:([^\\s"'>=/]+)([
|
|
15
|
+
\f\r]*=[
|
|
16
|
+
\f\r]*(?:[^
|
|
17
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),je=/'/g,ze=/"/g,ks=/^(?:script|style|textarea|title)$/i,vo=e=>(t,...s)=>({_$litType$:e,strings:t,values:s}),Ao=vo(1),x=Symbol.for("lit-noChange"),y=Symbol.for("lit-nothing"),We=new WeakMap,B=F.createTreeWalker(F,129,null,!1),Us=(e,t)=>{const s=e.length-1,n=[];let r,o=t===2?"<svg>":"",i=W;for(let a=0;a<s;a++){const l=e[a];let f,u,d=-1,h=0;for(;h<l.length&&(i.lastIndex=h,u=i.exec(l),u!==null);)h=i.lastIndex,i===W?u[1]==="!--"?i=Ve:u[1]!==void 0?i=Fe:u[2]!==void 0?(ks.test(u[2])&&(r=RegExp("</"+u[2],"g")),i=M):u[3]!==void 0&&(i=M):i===M?u[0]===">"?(i=r!=null?r:W,d=-1):u[1]===void 0?d=-2:(d=i.lastIndex-u[2].length,f=u[1],i=u[3]===void 0?M:u[3]==='"'?ze:je):i===ze||i===je?i=M:i===Ve||i===Fe?i=W:(i=M,r=void 0);const p=i===M&&e[a+1].startsWith("/>")?" ":"";o+=i===W?l+wo:d>=0?(n.push(f),l.slice(0,d)+"$lit$"+l.slice(d)+$+p):l+$+(d===-2?(n.push(void 0),a):p)}const c=o+(e[s]||"<?>")+(t===2?"</svg>":"");if(!Array.isArray(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return[He!==void 0?He.createHTML(c):c,n]};class tt{constructor({strings:t,_$litType$:s},n){let r;this.parts=[];let o=0,i=0;const c=t.length-1,a=this.parts,[l,f]=Us(t,s);if(this.el=tt.createElement(l,n),B.currentNode=this.el.content,s===2){const u=this.el.content,d=u.firstChild;d.remove(),u.append(...d.childNodes)}for(;(r=B.nextNode())!==null&&a.length<c;){if(r.nodeType===1){if(r.hasAttributes()){const u=[];for(const d of r.getAttributeNames())if(d.endsWith("$lit$")||d.startsWith($)){const h=f[i++];if(u.push(d),h!==void 0){const p=r.getAttribute(h.toLowerCase()+"$lit$").split($),m=/([.?@])?(.*)/.exec(h);a.push({type:1,index:o,name:m[2],strings:p,ctor:m[1]==="."?Hs:m[1]==="?"?Vs:m[1]==="@"?Fs:et})}else a.push({type:6,index:o})}for(const d of u)r.removeAttribute(d)}if(ks.test(r.tagName)){const u=r.textContent.split($),d=u.length-1;if(d>0){r.textContent=V?V.emptyScript:"";for(let h=0;h<d;h++)r.append(u[h],Y()),B.nextNode(),a.push({type:2,index:++o});r.append(u[d],Y())}}}else if(r.nodeType===8)if(r.data===de)a.push({type:2,index:o});else{let u=-1;for(;(u=r.data.indexOf($,u+1))!==-1;)a.push({type:7,index:o}),u+=$.length-1}o++}}static createElement(t,s){const n=F.createElement("template");return n.innerHTML=t,n}}function O(e,t,s=e,n){var r,o,i,c;if(t===x)return t;let a=n!==void 0?(r=s._$Co)===null||r===void 0?void 0:r[n]:s._$Cl;const l=Q(t)?void 0:t._$litDirective$;return(a==null?void 0:a.constructor)!==l&&((o=a==null?void 0:a._$AO)===null||o===void 0||o.call(a,!1),l===void 0?a=void 0:(a=new l(e),a._$AT(e,s,n)),n!==void 0?((i=(c=s)._$Co)!==null&&i!==void 0?i:c._$Co=[])[n]=a:s._$Cl=a),a!==void 0&&(t=O(e,a._$AS(e,t.values),a,n)),t}class Bs{constructor(t,s){this.u=[],this._$AN=void 0,this._$AD=t,this._$AM=s}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}v(t){var s;const{el:{content:n},parts:r}=this._$AD,o=((s=t==null?void 0:t.creationScope)!==null&&s!==void 0?s:F).importNode(n,!0);B.currentNode=o;let i=B.nextNode(),c=0,a=0,l=r[0];for(;l!==void 0;){if(c===l.index){let f;l.type===2?f=new j(i,i.nextSibling,this,t):l.type===1?f=new l.ctor(i,l.name,l.strings,this,t):l.type===6&&(f=new js(i,this,t)),this.u.push(f),l=r[++a]}c!==(l==null?void 0:l.index)&&(i=B.nextNode(),c++)}return o}p(t){let s=0;for(const n of this.u)n!==void 0&&(n.strings!==void 0?(n._$AI(t,n,s),s+=n.strings.length-2):n._$AI(t[s])),s++}}class j{constructor(t,s,n,r){var o;this.type=2,this._$AH=y,this._$AN=void 0,this._$AA=t,this._$AB=s,this._$AM=n,this.options=r,this._$Cm=(o=r==null?void 0:r.isConnected)===null||o===void 0||o}get _$AU(){var t,s;return(s=(t=this._$AM)===null||t===void 0?void 0:t._$AU)!==null&&s!==void 0?s:this._$Cm}get parentNode(){let t=this._$AA.parentNode;const s=this._$AM;return s!==void 0&&t.nodeType===11&&(t=s.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,s=this){t=O(this,t,s),Q(t)?t===y||t==null||t===""?(this._$AH!==y&&this._$AR(),this._$AH=y):t!==this._$AH&&t!==x&&this.g(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):Ns(t)?this.k(t):this.g(t)}O(t,s=this._$AB){return this._$AA.parentNode.insertBefore(t,s)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}g(t){this._$AH!==y&&Q(this._$AH)?this._$AA.nextSibling.data=t:this.T(F.createTextNode(t)),this._$AH=t}$(t){var s;const{values:n,_$litType$:r}=t,o=typeof r=="number"?this._$AC(t):(r.el===void 0&&(r.el=tt.createElement(r.h,this.options)),r);if(((s=this._$AH)===null||s===void 0?void 0:s._$AD)===o)this._$AH.p(n);else{const i=new Bs(o,this),c=i.v(this.options);i.p(n),this.T(c),this._$AH=i}}_$AC(t){let s=We.get(t.strings);return s===void 0&&We.set(t.strings,s=new tt(t)),s}k(t){Rs(this._$AH)||(this._$AH=[],this._$AR());const s=this._$AH;let n,r=0;for(const o of t)r===s.length?s.push(n=new j(this.O(Y()),this.O(Y()),this,this.options)):n=s[r],n._$AI(o),r++;r<s.length&&(this._$AR(n&&n._$AB.nextSibling,r),s.length=r)}_$AR(t=this._$AA.nextSibling,s){var n;for((n=this._$AP)===null||n===void 0||n.call(this,!1,!0,s);t&&t!==this._$AB;){const r=t.nextSibling;t.remove(),t=r}}setConnected(t){var s;this._$AM===void 0&&(this._$Cm=t,(s=this._$AP)===null||s===void 0||s.call(this,t))}}class et{constructor(t,s,n,r,o){this.type=1,this._$AH=y,this._$AN=void 0,this.element=t,this.name=s,this._$AM=r,this.options=o,n.length>2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=y}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,s=this,n,r){const o=this.strings;let i=!1;if(o===void 0)t=O(this,t,s,0),i=!Q(t)||t!==this._$AH&&t!==x,i&&(this._$AH=t);else{const c=t;let a,l;for(t=o[0],a=0;a<o.length-1;a++)l=O(this,c[n+a],s,a),l===x&&(l=this._$AH[a]),i||(i=!Q(l)||l!==this._$AH[a]),l===y?t=y:t!==y&&(t+=(l!=null?l:"")+o[a+1]),this._$AH[a]=l}i&&!r&&this.j(t)}j(t){t===y?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t!=null?t:"")}}class Hs extends et{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===y?void 0:t}}const So=V?V.emptyScript:"";class Vs extends et{constructor(){super(...arguments),this.type=4}j(t){t&&t!==y?this.element.setAttribute(this.name,So):this.element.removeAttribute(this.name)}}class Fs extends et{constructor(t,s,n,r,o){super(t,s,n,r,o),this.type=5}_$AI(t,s=this){var n;if((t=(n=O(this,t,s,0))!==null&&n!==void 0?n:y)===x)return;const r=this._$AH,o=t===y&&r!==y||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,i=t!==y&&(r===y||o);o&&this.element.removeEventListener(this.name,this,r),i&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var s,n;typeof this._$AH=="function"?this._$AH.call((n=(s=this.options)===null||s===void 0?void 0:s.host)!==null&&n!==void 0?n:this.element,t):this._$AH.handleEvent(t)}}class js{constructor(t,s,n){this.element=t,this.type=6,this._$AN=void 0,this._$AM=s,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(t){O(this,t)}}const $o={P:"$lit$",A:$,M:de,C:1,L:Us,R:Bs,D:Ns,V:O,I:j,H:et,N:Vs,U:Fs,B:Hs,F:js},Ze=vt.litHtmlPolyfillSupport;Ze==null||Ze(tt,j),((Ft=vt.litHtmlVersions)!==null&&Ft!==void 0?Ft:vt.litHtmlVersions=[]).push("2.6.0");const bo=(e,t,s)=>{var n,r;const o=(n=s==null?void 0:s.renderBefore)!==null&&n!==void 0?n:t;let i=o._$litPart$;if(i===void 0){const c=(r=s==null?void 0:s.renderBefore)!==null&&r!==void 0?r:null;o._$litPart$=i=new j(t.insertBefore(Y(),c),c,void 0,s!=null?s:{})}return i._$AI(e),i};/**
|
|
18
|
+
* @license
|
|
19
|
+
* Copyright 2017 Google LLC
|
|
20
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
21
|
+
*/const zs={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Co=e=>(...t)=>({_$litDirective$:e,values:t});class Ws{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,s,n){this._$Ct=t,this._$AM=s,this._$Ci=n}_$AS(t,s){return this.update(t,s)}update(t,s){return this.render(...s)}}/**
|
|
22
|
+
* @license
|
|
23
|
+
* Copyright 2020 Google LLC
|
|
24
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
25
|
+
*/const{I:To}=$o,qe=()=>document.createComment(""),Z=(e,t,s)=>{var n;const r=e._$AA.parentNode,o=t===void 0?e._$AB:t._$AA;if(s===void 0){const i=r.insertBefore(qe(),o),c=r.insertBefore(qe(),o);s=new To(i,c,e,e.options)}else{const i=s._$AB.nextSibling,c=s._$AM,a=c!==e;if(a){let l;(n=s._$AQ)===null||n===void 0||n.call(s,e),s._$AM=e,s._$AP!==void 0&&(l=e._$AU)!==c._$AU&&s._$AP(l)}if(i!==o||a){let l=s._$AA;for(;l!==i;){const f=l.nextSibling;r.insertBefore(l,o),l=f}}}return s},P=(e,t,s=e)=>(e._$AI(t,s),e),Eo={},Lo=(e,t=Eo)=>e._$AH=t,Mo=e=>e._$AH,jt=e=>{var t;(t=e._$AP)===null||t===void 0||t.call(e,!1,!0);let s=e._$AA;const n=e._$AB.nextSibling;for(;s!==n;){const r=s.nextSibling;s.remove(),s=r}};/**
|
|
26
|
+
* @license
|
|
27
|
+
* Copyright 2017 Google LLC
|
|
28
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
29
|
+
*/const Ge=(e,t,s)=>{const n=new Map;for(let r=t;r<=s;r++)n.set(e[r],r);return n},Zs=Co(class extends Ws{constructor(e){if(super(e),e.type!==zs.CHILD)throw Error("repeat() can only be used in text expressions")}ht(e,t,s){let n;s===void 0?s=t:t!==void 0&&(n=t);const r=[],o=[];let i=0;for(const c of e)r[i]=n?n(c,i):i,o[i]=s(c,i),i++;return{values:o,keys:r}}render(e,t,s){return this.ht(e,t,s).values}update(e,[t,s,n]){var r;const o=Mo(e),{values:i,keys:c}=this.ht(t,s,n);if(!Array.isArray(o))return this.ut=c,i;const a=(r=this.ut)!==null&&r!==void 0?r:this.ut=[],l=[];let f,u,d=0,h=o.length-1,p=0,m=i.length-1;for(;d<=h&&p<=m;)if(o[d]===null)d++;else if(o[h]===null)h--;else if(a[d]===c[p])l[p]=P(o[d],i[p]),d++,p++;else if(a[h]===c[m])l[m]=P(o[h],i[m]),h--,m--;else if(a[d]===c[m])l[m]=P(o[d],i[m]),Z(e,l[m+1],o[d]),d++,m--;else if(a[h]===c[p])l[p]=P(o[h],i[p]),Z(e,o[d],o[h]),h--,p++;else if(f===void 0&&(f=Ge(c,p,m),u=Ge(a,d,h)),f.has(a[d]))if(f.has(a[h])){const g=u.get(c[p]),nt=g!==void 0?o[g]:null;if(nt===null){const Et=Z(e,o[d]);P(Et,i[p]),l[p]=Et}else l[p]=P(nt,i[p]),Z(e,o[d],nt),o[g]=null;p++}else jt(o[h]),h--;else jt(o[d]),d++;for(;p<=m;){const g=Z(e,l[m+1]);P(g,i[p]),l[p++]=g}for(;d<=h;){const g=o[d++];g!==null&&jt(g)}return this.ut=c,Lo(e,l),x}});/**
|
|
30
|
+
* @license
|
|
31
|
+
* Copyright 2018 Google LLC
|
|
32
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
33
|
+
*/const v=e=>e!=null?e:y;/**
|
|
34
|
+
* @license
|
|
35
|
+
* Copyright 2017 Google LLC
|
|
36
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
37
|
+
*/class Ke extends Ws{constructor(t){if(super(t),this.it=y,t.type!==zs.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===y||t==null)return this._t=void 0,this.it=t;if(t===x)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;const s=[t];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}Ke.directiveName="unsafeHTML",Ke.resultType=1;const w=(e,...t)=>{const s=A("LitStatic");return(s?s.html:Ao)(e,...t)},st=(e,t,s,n,r)=>{const o=A("OpenUI5Enablement");o&&!n&&(e=o.wrapTemplateResultInBusyMarkup(w,r.host,e)),typeof s=="string"?e=w`<style>${s}</style>${e}`:Array.isArray(s)&&s.length&&(e=w`${s.map(i=>w`<link type="text/css" rel="stylesheet" href="${i}">`)}${e}`),bo(e,t,r)},Po={tag:"ui5-test-generic",properties:{strProp:{type:String},boolProp:{type:Boolean},objectProp:{type:Object},noAttributeProp:{type:String,noAttribute:!0},multiProp:{type:String,multiple:!0},defaultValueProp:{type:String,defaultValue:"Hello"}},managedSlots:!0,slots:{default:{type:Node},other:{type:HTMLElement},individual:{type:HTMLElement,individualSlots:!0},named:{type:HTMLElement,propertyName:"items"}}};class qs extends T{static get metadata(){return Po}static get render(){return st}static get template(){return t=>w`<div><p>
|
|
38
|
+
<slot></slot>
|
|
39
|
+
<slot name="other"></slot>
|
|
40
|
+
<slot name="individual-1"></slot>
|
|
41
|
+
<slot name="individual-2"></slot>
|
|
42
|
+
</p></div>`}static get styles(){return`:host {
|
|
43
|
+
display: inline-block;
|
|
44
|
+
border: 1px solid black;
|
|
45
|
+
color: var(--var1);
|
|
46
|
+
}`}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}qs.define();const Io={tag:"ui5-test-no-shadow"};class xo extends T{static get metadata(){return Io}}xo.define();const Oo={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};class Do extends T{static get metadata(){return Oo}static get render(){return st}static get template(){return t=>w`<div>
|
|
47
|
+
<slot></slot>
|
|
48
|
+
</div>`}}Do.define();const Ro={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};class No extends T{static get metadata(){return Ro}static get render(){return st}static get template(){return t=>w`<div></div>`}}No.define();const ko={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};class Uo extends T{static get metadata(){return ko}static get render(){return st}static get template(){return t=>w`
|
|
49
|
+
<div dir=${t.effectiveDir}>
|
|
50
|
+
WithStaticArea works!
|
|
51
|
+
</div>`}static get staticAreaTemplate(){return t=>w`
|
|
52
|
+
<div class="ui5-with-static-area-content">
|
|
53
|
+
Static area content.
|
|
54
|
+
</div>`}static get styles(){return`
|
|
55
|
+
:host {
|
|
56
|
+
display: inline-block;
|
|
57
|
+
border: 1px solid black;
|
|
58
|
+
color: red;
|
|
59
|
+
}`}async addStaticArea(){if(!this.staticContent)return;const t=await this.getStaticAreaItemDomRef();return this.responsivePopover=t.querySelector(".ui5-with-static-area-content"),this.responsivePopover}onBeforeRendering(){this.addStaticArea()}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}Uo.define();const Bo=(e,t,s)=>w`<div>Root text: ${v(e.text)}${Zs(e.items,(n,r)=>n._id||r,(n,r)=>Ho(n,r,e))} Root text: ${v(e.text)}</div>`,Ho=(e,t,s,n,r)=>w`<h3>Item-${t}</h3>${e.text?Vo(e,t,s):void 0}<ul>${Zs(e.words,(o,i)=>o._id||i,(o,i)=>Fo(o,i,s))}</ul>${e.text?jo(e,t,s):void 0}`,Vo=(e,t,s,n,r)=>w`<div class="before-each-content--start--${t}">Root text: ${v(s.text)}, Item text: ${v(e.text)}</div>`,Fo=(e,t,s,n,r)=>w`<li><h3>Word-${t}</h3><div class="nested-each-content--${t}--0">Root Text: ${v(s.text)}, Word text: ${v(e.text)}</div><div class="nested-each-content--${t}--1">Root Text: ${v(s.text)}, Word text: ${v(e.text)}</div></li>`,jo=(e,t,s,n,r)=>w`<div class="after-each-content--end--${t}">Root text: ${v(s.text)}, Item text: ${v(e.text)}</div>`;class zo extends T{static get metadata(){return{tag:"ui5-test-complex-template"}}static get render(){return st}static get template(){return Bo}get text(){return"root"}get items(){return[{text:"positives",words:[{text:"word1_good"},{text:"word2_nice"},{text:"word3_kind"}]},{text:"negatives",words:[{text:"word4_bad"},{text:"word5_rude"},{text:"word6_unpolite"}]}]}}zo.define();const Wo={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};class Zo extends qs{static get metadata(){return Wo}}Zo.define();const qo={content:":root{ --var1: red; }",packageName:"",fileName:""},Go={content:":root{ --var1: green; }",packageName:"",fileName:""},Ko={content:":root{ --var1: blue; }",packageName:"",fileName:""},Jo={content:":root{ --var1: orange; }",packageName:"",fileName:""},Xo={content:":root{ --var1: orange; }",packageName:"",fileName:""},Yo={content:":root{ --var1: yellow; }",packageName:"",fileName:""},Qo={content:":root{ --var1: yellow; }",packageName:"",fileName:""};L("@ui5/webcomponents-base-test","sap_fiori_3",()=>qo);L("@ui5/webcomponents-base-test","sap_fiori_3_dark",()=>Go);L("@ui5/webcomponents-base-test","sap_belize",()=>Ko);L("@ui5/webcomponents-base-test","sap_belize_hcb",()=>Jo);L("@ui5/webcomponents-base-test","sap_belize_hcw",()=>Xo);L("@ui5/webcomponents-base-test","sap_fiori_3_hcb",()=>Yo);L("@ui5/webcomponents-base-test","sap_fiori_3_hcw",()=>Qo);const ti=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,ei=(e,t)=>(t=t||[],e.replace(ti,(s,n,r,o,i)=>{if(n)return"'";if(r)return r.replace(/''/g,"'");if(o){const c=typeof o=="string"?parseInt(o):o;return String(t[c])}throw new Error(`[i18n]: pattern syntax error at pos ${i}`)})),zt=new Map;class si{constructor(t){this.packageName=t}getText(t,...s){if(typeof t=="string"&&(t={key:t,defaultText:t}),!t||!t.key)return"";const n=Kn(this.packageName);n&&!n[t.key]&&console.warn(`Key ${t.key} not found in the i18n bundle, the default text will be used`);const r=n&&n[t.key]?n[t.key]:t.defaultText||t.key;return ei(r,s)}}const ni=e=>{if(zt.has(e))return zt.get(e);const t=new si(e);return zt.set(e,t),t},ri=async e=>(await ys(e),ni(e)),oi=typeof window.chrome=="object"||typeof window.v8=="object"?(e,t)=>(t>2&&40*t>e.length,e):e=>e,ii=/(?:\r\n|\r|\n|^)[ \t\f]*/,ai=/(\\u[0-9a-fA-F]{0,4})|(\\.)|(\\$)|([ \t\f]*[ \t\f:=][ \t\f]*)/g,ci=/(\\u[0-9a-fA-F]{0,4})|(\\.)|(\\$)/g,li={"\\f":"\f","\\n":`
|
|
60
|
+
`,"\\r":"\r","\\t":" "},ui=e=>{const t={},s=e.split(ii);let n,r,o,i,c,a,l,f;const u=d=>{i?(i=`${i}${d}`,f++):(i=d,f=0)};for(c=0;c<s.length;c++)if(n=s[c],!(n===""||n.charAt(0)==="#"||n.charAt(0)==="!")){for(r=ai,l=0,r.lastIndex=l,o=null,i="",a=r.exec(n);a!==null;){if(l<a.index&&u(n.slice(l,a.index)),l=r.lastIndex,a[1]){if(a[1].length!==6)throw new Error(`Incomplete Unicode Escape '${a[1]}'`);u(String.fromCharCode(parseInt(a[1].slice(2),16)))}else a[2]?u(li[a[2]]||a[2].slice(1)):a[3]?(n=s[++c],l=0,r.lastIndex=l):a[4]&&(o=i,i="",r=ci,r.lastIndex=l);a=r.exec(n)}l<n.length&&u(n.slice(l)),o==null&&(o=i,i=""),t[o]=oi(i,i?f:0)}return t};let Wt;const di=()=>(Wt===void 0&&(Wt=on()),Wt);var te;(function(e){e.Gregorian="Gregorian",e.Islamic="Islamic",e.Japanese="Japanese",e.Buddhist="Buddhist",e.Persian="Persian"})(te||(te={}));const Je=te;let q;const hi=()=>(q===void 0&&(q=fn()),q&&q in Je?q:Je.Gregorian);let Zt;class Gs{static getLegacyDateCalendarCustomizing(){return Zt===void 0&&(Zt=rs()),Zt.legacyDateCalendarCustomizing||[]}}ns("LegacyDateFormats",Gs);let qt;const fi=()=>(qt===void 0&&(qt=rs()),qt.firstDayOfWeek),pi=A("LegacyDateFormats"),gi=pi?Gs.getLegacyDateCalendarCustomizing:()=>[],mi=new D,yi="directionChange",_i=()=>mi.fireEvent(yi,void 0),wi=async()=>{const e=_i();await Promise.all(e),await St({rtlAware:!0})};window.registerThemePropertiesLoader=L;window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:di,getLanguage:oe,setLanguage:Hn,getTheme:Tt,setTheme:Es,getNoConflict:ue,setNoConflict:go,getCalendarType:hi,getRTL:Os,getFirstDayOfWeek:fi,getLegacyDateCalendarCustomizing:gi},getIconNames:Pr,parseProperties:ui,registerI18nLoader:Gn,getI18nBundle:ri,renderFinished:re,applyDirection:wi,EventProvider:D};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported icon collection aliases.
|
|
3
|
+
*
|
|
4
|
+
* Users might specify a collection, using both the key and the value in the following key-value pairs,
|
|
5
|
+
* e.g the following pairs are completely exchangeable:
|
|
6
|
+
*
|
|
7
|
+
* - "SAP-icons/accept" and "SAP-icons-v4/accept"
|
|
8
|
+
* - "horizon/accept" and "SAP-icons-v5/accept"
|
|
9
|
+
* - "SAP-icons-TNT/actor" and "tnt/actor"
|
|
10
|
+
* - "BusinessSuiteInAppSymbols/3d" and "business-suite/3d"
|
|
11
|
+
*/
|
|
12
|
+
declare enum IconCollectionsAlias {
|
|
13
|
+
"SAP-icons" = "SAP-icons-v4",
|
|
14
|
+
"horizon" = "SAP-icons-v5",
|
|
15
|
+
"SAP-icons-TNT" = "tnt",
|
|
16
|
+
"BusinessSuiteInAppSymbols" = "business-suite"
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Returns the mapped collection name for a given alias.
|
|
20
|
+
*
|
|
21
|
+
* <b>For example</b>:
|
|
22
|
+
* - "SAP-icons-TNT"resolves to "tnt"
|
|
23
|
+
* - "BusinessSuiteInAppSymbols" resolves to "business-suite"
|
|
24
|
+
* - "horizon" resolves to "SAP-icons-v5"
|
|
25
|
+
*
|
|
26
|
+
* @param { string } collectionName
|
|
27
|
+
* @return { string } the normalized collection name
|
|
28
|
+
*/
|
|
29
|
+
declare const getIconCollectionByAlias: (collectionName: string) => string;
|
|
30
|
+
export default IconCollectionsAlias;
|
|
31
|
+
export { getIconCollectionByAlias, };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported icon collection aliases.
|
|
3
|
+
*
|
|
4
|
+
* Users might specify a collection, using both the key and the value in the following key-value pairs,
|
|
5
|
+
* e.g the following pairs are completely exchangeable:
|
|
6
|
+
*
|
|
7
|
+
* - "SAP-icons/accept" and "SAP-icons-v4/accept"
|
|
8
|
+
* - "horizon/accept" and "SAP-icons-v5/accept"
|
|
9
|
+
* - "SAP-icons-TNT/actor" and "tnt/actor"
|
|
10
|
+
* - "BusinessSuiteInAppSymbols/3d" and "business-suite/3d"
|
|
11
|
+
*/
|
|
12
|
+
var IconCollectionsAlias;
|
|
13
|
+
(function (IconCollectionsAlias) {
|
|
14
|
+
IconCollectionsAlias["SAP-icons"] = "SAP-icons-v4";
|
|
15
|
+
IconCollectionsAlias["horizon"] = "SAP-icons-v5";
|
|
16
|
+
IconCollectionsAlias["SAP-icons-TNT"] = "tnt";
|
|
17
|
+
IconCollectionsAlias["BusinessSuiteInAppSymbols"] = "business-suite";
|
|
18
|
+
})(IconCollectionsAlias || (IconCollectionsAlias = {}));
|
|
19
|
+
/**
|
|
20
|
+
* Returns the mapped collection name for a given alias.
|
|
21
|
+
*
|
|
22
|
+
* <b>For example</b>:
|
|
23
|
+
* - "SAP-icons-TNT"resolves to "tnt"
|
|
24
|
+
* - "BusinessSuiteInAppSymbols" resolves to "business-suite"
|
|
25
|
+
* - "horizon" resolves to "SAP-icons-v5"
|
|
26
|
+
*
|
|
27
|
+
* @param { string } collectionName
|
|
28
|
+
* @return { string } the normalized collection name
|
|
29
|
+
*/
|
|
30
|
+
const getIconCollectionByAlias = (collectionName) => {
|
|
31
|
+
if (IconCollectionsAlias[collectionName]) {
|
|
32
|
+
return IconCollectionsAlias[collectionName];
|
|
33
|
+
}
|
|
34
|
+
return collectionName;
|
|
35
|
+
};
|
|
36
|
+
export default IconCollectionsAlias;
|
|
37
|
+
export { getIconCollectionByAlias, };
|
|
38
|
+
//# sourceMappingURL=IconCollectionsAlias.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconCollectionsAlias.js","sourceRoot":"","sources":["../../src/assets-meta/IconCollectionsAlias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,IAAK,oBAKJ;AALD,WAAK,oBAAoB;IACxB,kDAA4B,CAAA;IAC5B,gDAA0B,CAAA;IAC1B,6CAAuB,CAAA;IACvB,oEAA8C,CAAA;AAC/C,CAAC,EALI,oBAAoB,KAApB,oBAAoB,QAKxB;AAED;;;;;;;;;;GAUG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC3D,IAAI,oBAAoB,CAAC,cAAmD,CAAC,EAAE;QAC9E,OAAO,oBAAoB,CAAC,cAAmD,CAAC,CAAC;KACjF;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC;AACpC,OAAO,EACN,wBAAwB,GACxB,CAAC"}
|