@ui5/webcomponents-base 0.0.0-39bd3067f → 0.0.0-4180fe799
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +3 -0
- package/CHANGELOG.md +158 -0
- package/README.md +26 -2
- package/bundle.esm.js +16 -7
- package/dist/AssetRegistry.js +8 -6
- package/dist/Boot.js +43 -0
- package/dist/CSP.js +59 -0
- package/dist/CustomElementsRegistry.js +24 -8
- package/dist/CustomElementsScope.js +108 -0
- package/dist/DOMObserver.js +65 -0
- package/dist/Device.js +62 -778
- package/dist/EventProvider.js +38 -26
- package/dist/FontFace.js +19 -62
- package/dist/InitialConfiguration.js +43 -8
- package/dist/Keys.js +89 -2
- package/dist/ManagedStyles.js +83 -0
- package/dist/MediaRange.js +109 -0
- package/dist/PropertiesFileFormat.js +95 -0
- package/dist/Render.js +175 -0
- package/dist/RenderQueue.js +41 -17
- package/dist/RenderScheduler.js +24 -126
- package/dist/StaticArea.js +1 -39
- package/dist/StaticAreaItem.js +56 -63
- package/dist/SystemCSSVars.js +10 -0
- package/dist/Theming.js +2 -1
- package/dist/UI5Element.js +421 -301
- package/dist/UI5ElementMetadata.js +165 -19
- package/dist/asset-registries/Icons.js +129 -14
- package/dist/asset-registries/Illustrations.js +30 -0
- package/dist/asset-registries/LocaleData.js +99 -65
- package/dist/asset-registries/Themes.js +24 -33
- package/dist/asset-registries/i18n.js +72 -30
- package/dist/assets-meta/IconCollectionsAlias.js +18 -0
- package/dist/config/AnimationMode.js +11 -1
- package/dist/config/Language.js +58 -2
- package/dist/config/Theme.js +14 -0
- package/dist/css/FontFace.css +45 -0
- package/dist/css/OverrideFontFace.css +32 -0
- package/dist/css/SystemCSSVars.css +17 -0
- package/dist/delegate/ItemNavigation.js +244 -171
- package/dist/delegate/ResizeHandler.js +78 -38
- package/dist/delegate/ScrollEnablement.js +49 -20
- package/dist/features/OpenUI5Support.js +42 -7
- package/dist/generated/AssetParameters.js +1 -1
- package/dist/generated/css/FontFace.css.js +5 -0
- package/dist/generated/css/OverrideFontFace.css.js +5 -0
- package/dist/generated/css/SystemCSSVars.css.js +5 -0
- package/dist/getSharedResource.js +30 -0
- package/dist/i18nBundle.js +58 -5
- package/dist/isLegacyBrowser.js +3 -0
- package/dist/locale/RTLAwareRegistry.js +14 -0
- package/dist/locale/applyDirection.js +17 -0
- package/dist/locale/directionChange.js +32 -0
- package/dist/locale/getEffectiveDir.js +28 -0
- package/dist/locale/getLocale.js +12 -2
- package/dist/locale/languageChange.js +22 -0
- package/dist/renderer/LitRenderer.js +26 -7
- package/dist/renderer/directives/style-map.js +72 -0
- package/dist/renderer/executeTemplate.js +17 -0
- package/dist/resources/bundle.esm.js +17 -109
- package/dist/resources/bundle.esm.js.map +1 -1
- package/dist/sap/base/Log.js +241 -0
- package/dist/sap/base/assert.js +8 -0
- package/dist/sap/base/security/URLListValidator.js +148 -0
- package/dist/sap/base/security/sanitizeHTML.js +16 -0
- package/dist/sap/base/util/now.js +7 -0
- package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
- package/dist/test-resources/assets/Themes.js +10 -6
- package/dist/test-resources/elements/Parent.js +6 -2
- package/dist/test-resources/elements/WithStaticArea.js +2 -1
- package/dist/test-resources/pages/AllTestElements.html +3 -3
- package/dist/test-resources/pages/Configuration.html +0 -2
- package/dist/test-resources/pages/ConfigurationScript.html +1 -3
- package/dist/test-resources/pages/assets/messagebundle_de.properties +1 -0
- package/dist/test-resources/pages/assets/messagebundle_en.properties +1 -0
- package/dist/test-resources/pages/assets/messagebundle_es.properties +1 -0
- package/dist/test-resources/pages/assets/messagebundle_fr.properties +1 -0
- package/dist/test-resources/pages/i18n.html +33 -0
- package/dist/test-resources/specs/ConfigurationChange.spec.js +11 -9
- package/dist/test-resources/specs/ConfigurationScript.spec.js +25 -23
- package/dist/test-resources/specs/ConfigurationURL.spec.js +65 -17
- package/dist/test-resources/specs/CustomTheme.spec.js +9 -7
- package/dist/test-resources/specs/EventProvider.spec.js +63 -0
- package/dist/test-resources/specs/StaticArea.spec.js +56 -12
- package/dist/test-resources/specs/Theming.spec.js +12 -10
- package/dist/test-resources/specs/UI5ElementInvalidation.js +54 -70
- package/dist/test-resources/specs/UI5ElementLifecycle.js +19 -14
- package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +25 -51
- package/dist/test-resources/specs/UI5ElementMetadataExt.js +9 -7
- package/dist/test-resources/specs/UI5ElementPropertyValidation.js +7 -5
- package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +37 -35
- package/dist/test-resources/specs/UI5ElementShadowDOM.js +10 -8
- package/dist/test-resources/specs/UI5ElementSlots.js +10 -8
- package/dist/theming/CustomStyle.js +28 -7
- package/dist/theming/ThemeLoaded.js +22 -0
- package/dist/theming/applyTheme.js +7 -13
- package/dist/theming/getConstructableStyle.js +15 -10
- package/dist/theming/getEffectiveLinksHrefs.js +20 -0
- package/dist/theming/getEffectiveStyle.js +23 -8
- package/dist/theming/getStylesString.js +15 -0
- package/dist/theming/getThemeDesignerTheme.js +2 -1
- package/dist/theming/preloadLinks.js +23 -0
- package/dist/types/CSSColor.js +9 -0
- package/dist/types/CalendarType.js +1 -1
- package/dist/types/DataType.js +13 -1
- package/dist/types/Float.js +14 -0
- package/dist/types/Integer.js +4 -0
- package/dist/types/InvisibleMessageMode.js +30 -0
- package/dist/types/ItemNavigationBehavior.js +2 -7
- package/dist/types/NavigationMode.js +1 -0
- package/dist/types/PopupState.js +1 -1
- package/dist/types/ValueState.js +1 -1
- package/dist/updateShadowRoot.js +30 -0
- package/dist/util/AriaLabelHelper.js +41 -0
- package/dist/util/Caret.js +45 -0
- package/dist/util/ColorConversion.js +370 -0
- package/dist/util/FocusableElements.js +25 -8
- package/dist/util/HTMLSanitizer.js +7 -0
- package/dist/util/InvisibleMessage.js +58 -0
- package/dist/util/PopupUtils.js +93 -0
- package/dist/util/SlotsHelper.js +43 -0
- package/dist/util/TabbableElements.js +5 -1
- package/dist/util/arraysAreEqual.js +15 -0
- package/dist/util/clamp.js +12 -0
- package/dist/util/createLinkInHead.js +19 -0
- package/dist/util/debounce.js +17 -0
- package/dist/util/encodeCSS.js +24 -0
- package/dist/util/getActiveElement.js +11 -0
- package/dist/util/getClassCopy.js +10 -0
- package/dist/util/getEffectiveContentDensity.js +5 -0
- package/dist/util/getSingletonElementInstance.js +13 -0
- package/dist/util/isElementInView.js +15 -0
- package/dist/util/isNodeHidden.js +1 -5
- package/dist/util/isNodeTabbable.js +4 -4
- package/dist/util/isValidPropertyName.js +9 -3
- package/dist/util/setToArray.js +10 -0
- package/hash.txt +1 -0
- package/index.js +1 -1
- package/lib/generate-asset-parameters/index.js +0 -1
- package/lib/generate-styles/index.js +18 -0
- package/package-scripts.js +37 -19
- package/package.json +19 -12
- package/src/AssetRegistry.js +8 -6
- package/src/Boot.js +43 -0
- package/src/CSP.js +59 -0
- package/src/CustomElementsRegistry.js +24 -8
- package/src/CustomElementsScope.js +108 -0
- package/src/DOMObserver.js +65 -0
- package/src/Device.js +62 -778
- package/src/EventProvider.js +38 -26
- package/src/FontFace.js +19 -62
- package/src/InitialConfiguration.js +43 -8
- package/src/Keys.js +89 -2
- package/src/ManagedStyles.js +83 -0
- package/src/MediaRange.js +109 -0
- package/src/PropertiesFileFormat.js +95 -0
- package/src/Render.js +175 -0
- package/src/RenderQueue.js +41 -17
- package/src/RenderScheduler.js +24 -126
- package/src/StaticArea.js +1 -39
- package/src/StaticAreaItem.js +56 -63
- package/src/SystemCSSVars.js +10 -0
- package/src/Theming.js +2 -1
- package/src/UI5Element.js +421 -301
- package/src/UI5ElementMetadata.js +165 -19
- package/src/asset-registries/Icons.js +129 -14
- package/src/asset-registries/Illustrations.js +30 -0
- package/src/asset-registries/LocaleData.js +99 -65
- package/src/asset-registries/Themes.js +24 -33
- package/src/asset-registries/i18n.js +72 -30
- package/src/assets-meta/IconCollectionsAlias.js +18 -0
- package/src/config/AnimationMode.js +11 -1
- package/src/config/Language.js +58 -2
- package/src/config/Theme.js +14 -0
- package/src/css/FontFace.css +45 -0
- package/src/css/OverrideFontFace.css +32 -0
- package/src/css/SystemCSSVars.css +17 -0
- package/src/delegate/ItemNavigation.js +244 -171
- package/src/delegate/ResizeHandler.js +78 -38
- package/src/delegate/ScrollEnablement.js +49 -20
- package/src/features/OpenUI5Support.js +42 -7
- package/src/getSharedResource.js +30 -0
- package/src/i18nBundle.js +58 -5
- package/src/isLegacyBrowser.js +3 -0
- package/src/locale/RTLAwareRegistry.js +14 -0
- package/src/locale/applyDirection.js +17 -0
- package/src/locale/directionChange.js +32 -0
- package/src/locale/getEffectiveDir.js +28 -0
- package/src/locale/getLocale.js +12 -2
- package/src/locale/languageChange.js +22 -0
- package/src/renderer/LitRenderer.js +26 -7
- package/src/renderer/directives/style-map.js +72 -0
- package/src/renderer/executeTemplate.js +17 -0
- package/src/theming/CustomStyle.js +28 -7
- package/src/theming/ThemeLoaded.js +22 -0
- package/src/theming/applyTheme.js +7 -13
- package/src/theming/getConstructableStyle.js +15 -10
- package/src/theming/getEffectiveLinksHrefs.js +20 -0
- package/src/theming/getEffectiveStyle.js +23 -8
- package/src/theming/getStylesString.js +15 -0
- package/src/theming/getThemeDesignerTheme.js +2 -1
- package/src/theming/preloadLinks.js +23 -0
- package/src/types/CSSColor.js +9 -0
- package/src/types/CalendarType.js +1 -1
- package/src/types/DataType.js +13 -1
- package/src/types/Float.js +14 -0
- package/src/types/Integer.js +4 -0
- package/src/types/InvisibleMessageMode.js +30 -0
- package/src/types/ItemNavigationBehavior.js +2 -7
- package/src/types/NavigationMode.js +1 -0
- package/src/types/PopupState.js +1 -1
- package/src/types/ValueState.js +1 -1
- package/src/updateShadowRoot.js +30 -0
- package/src/util/AriaLabelHelper.js +41 -0
- package/src/util/Caret.js +45 -0
- package/src/util/ColorConversion.js +370 -0
- package/src/util/FocusableElements.js +25 -8
- package/src/util/HTMLSanitizer.js +7 -0
- package/src/util/InvisibleMessage.js +58 -0
- package/src/util/PopupUtils.js +93 -0
- package/src/util/SlotsHelper.js +43 -0
- package/src/util/TabbableElements.js +5 -1
- package/src/util/arraysAreEqual.js +15 -0
- package/src/util/clamp.js +12 -0
- package/src/util/createLinkInHead.js +19 -0
- package/src/util/debounce.js +17 -0
- package/src/util/encodeCSS.js +24 -0
- package/src/util/getActiveElement.js +11 -0
- package/src/util/getClassCopy.js +10 -0
- package/src/util/getEffectiveContentDensity.js +5 -0
- package/src/util/getSingletonElementInstance.js +13 -0
- package/src/util/isElementInView.js +15 -0
- package/src/util/isNodeHidden.js +1 -5
- package/src/util/isNodeTabbable.js +4 -4
- package/src/util/isValidPropertyName.js +9 -3
- package/src/util/setToArray.js +10 -0
- package/used-modules.txt +7 -0
- package/bundle.es5.js +0 -28
- package/dist/SVGIconRegistry.js +0 -60
- 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/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/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/SVGIconRegistry.js +0 -60
- 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/delegate/CustomResize.js +0 -78
- package/src/delegate/NativeResize.js +0 -44
- 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/renderer/ifDefined.js +0 -21
- package/src/theming/CSSVarsPonyfill.js +0 -24
- package/src/theming/adaptCSSForIE.js +0 -90
- package/src/theming/createComponentStyleTag.js +0 -49
- package/src/theming/createThemePropertiesStyleTag.js +0 -20
- 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/template.js +0 -600
- package/src/thirdparty/webcomponents-sd-ce-pf.js +0 -318
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2018 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* This is the original style-map.js directive from lit-html 2 with the only difference that "render" is not called even for the first rendering (update is used instead)
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { noChange } from 'lit-html';
|
|
12
|
+
import { directive, Directive, PartType, } from 'lit-html/directive.js';
|
|
13
|
+
class StyleMapDirective extends Directive {
|
|
14
|
+
constructor(partInfo) {
|
|
15
|
+
var _a;
|
|
16
|
+
super(partInfo);
|
|
17
|
+
if (partInfo.type !== PartType.ATTRIBUTE ||
|
|
18
|
+
partInfo.name !== 'style' ||
|
|
19
|
+
((_a = partInfo.strings) === null || _a === void 0 ? void 0 : _a.length) > 2) {
|
|
20
|
+
throw new Error('The `styleMap` directive must be used in the `style` attribute ' +
|
|
21
|
+
'and must be the only part in the attribute.');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
render(styleInfo) {
|
|
25
|
+
return "";
|
|
26
|
+
}
|
|
27
|
+
update(part, [styleInfo]) {
|
|
28
|
+
const { style } = part.element;
|
|
29
|
+
if (this._previousStyleProperties === undefined) {
|
|
30
|
+
this._previousStyleProperties = new Set();
|
|
31
|
+
for (const name in styleInfo) {
|
|
32
|
+
this._previousStyleProperties.add(name);
|
|
33
|
+
}
|
|
34
|
+
// return this.render(styleInfo);
|
|
35
|
+
}
|
|
36
|
+
// Remove old properties that no longer exist in styleInfo
|
|
37
|
+
// We use forEach() instead of for-of so that re don't require down-level
|
|
38
|
+
// iteration.
|
|
39
|
+
this._previousStyleProperties.forEach((name) => {
|
|
40
|
+
// If the name isn't in styleInfo or it's null/undefined
|
|
41
|
+
if (styleInfo[name] == null) {
|
|
42
|
+
this._previousStyleProperties.delete(name);
|
|
43
|
+
if (name.includes('-')) {
|
|
44
|
+
style.removeProperty(name);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
// Note reset using empty string (vs null) as IE11 does not always
|
|
48
|
+
// reset via null (https://developer.mozilla.org/en-US/docs/Web/API/ElementCSSInlineStyle/style#setting_styles)
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
50
|
+
style[name] = '';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
// Add or update properties
|
|
55
|
+
for (const name in styleInfo) {
|
|
56
|
+
const value = styleInfo[name];
|
|
57
|
+
if (value != null) {
|
|
58
|
+
this._previousStyleProperties.add(name);
|
|
59
|
+
if (name.includes('-')) {
|
|
60
|
+
style.setProperty(name, value);
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
64
|
+
style[name] = value;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return noChange;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export const styleMap = directive(StyleMapDirective);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { getCustomElementsScopingSuffix, shouldScopeCustomElement } from "../CustomElementsScope.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Runs a component's template with the component's current state, while also scoping HTML
|
|
5
|
+
*
|
|
6
|
+
* @param template - the template to execute
|
|
7
|
+
* @param component - the component
|
|
8
|
+
* @public
|
|
9
|
+
* @returns {*}
|
|
10
|
+
*/
|
|
11
|
+
const executeTemplate = (template, component) => {
|
|
12
|
+
const tagsToScope = component.constructor.getUniqueDependencies().map(dep => dep.getMetadata().getPureTag()).filter(shouldScopeCustomElement);
|
|
13
|
+
const scope = getCustomElementsScopingSuffix();
|
|
14
|
+
return template(component, tagsToScope, scope);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default executeTemplate;
|
|
@@ -1,129 +1,37 @@
|
|
|
1
|
-
const t={default:"sap_fiori_3",all:["sap_fiori_3","sap_fiori_3_dark","sap_belize","sap_belize_hcb","sap_belize_hcw"]}.default,e={default:"en",all:["ar","bg","ca","cs","da","de","el","en","es","et","fi","fr","hi","hr","hu","it","iw","ja","kk","ko","lt","lv","ms","nl","no","pl","pt","ro","ru","sh","sk","sl","sv","th","tr","uk","vi","zh_CN","zh_TW"]}.default;var s={},n=s.hasOwnProperty,i=s.toString,o=n.toString,r=o.call(Object),a=function(t){var e,s;return!(!t||"[object Object]"!==i.call(t))&&(!(e=Object.getPrototypeOf(t))||"function"==typeof(s=n.call(e,"constructor")&&e.constructor)&&o.call(s)===r)},l=Object.create(null),c=function(){var t,e,s,n,i,o,r=arguments[2]||{},d=3,u=arguments.length,h=arguments[0]||!1,p=arguments[1]?void 0:l;for("object"!=typeof r&&"function"!=typeof r&&(r={});d<u;d++)if(null!=(i=arguments[d]))for(n in i)t=r[n],s=i[n],"__proto__"!==n&&r!==s&&(h&&s&&(a(s)||(e=Array.isArray(s)))?(e?(e=!1,o=t&&Array.isArray(t)?t:[]):o=t&&a(t)?t:{},r[n]=c(h,arguments[1],o,s)):s!==p&&(r[n]=s));return r},d=function(){var t=[!0,!1];return t.push.apply(t,arguments),c.apply(null,t)};const u=new Map,h=t=>u.get(t);let p=!1,m={animationMode:"full",theme:t,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{}};const f=new Map;f.set("true",!0),f.set("false",!1);const g=()=>{p||((()=>{const t=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let e;if(t){try{e=JSON.parse(t.innerHTML)}catch(t){console.warn("Incorrect data-sap-ui-config format. Please use JSON")}e&&(m=d(m,e))}})(),new URLSearchParams(window.location.search).forEach((t,e)=>{if(!e.startsWith("sap-ui"))return;const s=t.toLowerCase(),n=e.split("sap-ui-")[1];f.has(t)&&(t=f.get(s)),m[n]=t}),(()=>{const t=h("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();m=d(m,e)})(),p=!0)};let w;const y=()=>(void 0===w&&(w=(()=>(g(),m.language))()),w),_=new Map,v=new Map,b=new Map,S=new Map,A=new Map,E=new Set,C=new Set,x=(t,e,s)=>{s._?A.set(`${t}_${e}`,s._):s.includes(":root")?A.set(`${t}_${e}`,s):S.set(`${t}_${e}`,s),E.add(t),C.add(e)},O=async(e,s)=>{const n=A.get(`${e}_${s}`);if(n)return n;if(!C.has(s)){const s=[...C.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${t}. Registered themes are: ${s}`),A.get(`${e}_${t}`)}const i=await M(e,s),o=i._||i;return A.set(`${e}_${s}`,o),o},M=async(t,e)=>{const s=S.get(`${t}_${e}`);if(!s)throw new Error(`You have to import the ${t}/dist/Assets.js module to switch to additional themes`);return".css"===(t=>{const e=t.lastIndexOf(".");return e<1?"":t.slice(e)})(s)?(async t=>{_.get(t)||_.set(t,fetch(t));const e=await _.get(t);return b.get(t)||b.set(t,e.text()),b.get(t)})(s):(async t=>{_.get(t)||_.set(t,fetch(t));const e=await _.get(t);return v.get(t)||v.set(t,e.json()),v.get(t)})(s)},P=()=>E;
|
|
2
|
-
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* @author Jerry Bendy <jerry@icewingcc.com>
|
|
6
|
-
* @licence MIT
|
|
7
|
-
*
|
|
8
|
-
*/
|
|
9
|
-
!function(t){var e,s=t.URLSearchParams&&t.URLSearchParams.prototype.get?t.URLSearchParams:null,n=s&&"a=1"===new s({a:1}).toString(),i=s&&"+"===new s("s=%2B").get("s"),o="__URLSearchParams__",r=!s||((e=new s).append("s"," &"),"s=+%26"===e.toString()),a=u.prototype,l=!(!t.Symbol||!t.Symbol.iterator);if(!(s&&n&&i&&r)){a.append=function(t,e){g(this[o],t,e)},a.delete=function(t){delete this[o][t]},a.get=function(t){var e=this[o];return t in e?e[t][0]:null},a.getAll=function(t){var e=this[o];return t in e?e[t].slice(0):[]},a.has=function(t){return t in this[o]},a.set=function(t,e){this[o][t]=[""+e]},a.toString=function(){var t,e,s,n,i=this[o],r=[];for(e in i)for(s=h(e),t=0,n=i[e];t<n.length;t++)r.push(s+"="+h(n[t]));return r.join("&")};var c=!!i&&s&&!n&&t.Proxy;Object.defineProperty(t,"URLSearchParams",{value:c?new Proxy(s,{construct:function(t,e){return new t(new u(e[0]).toString())}}):u});var d=t.URLSearchParams.prototype;d.polyfill=!0,d.forEach=d.forEach||function(t,e){var s=f(this.toString());Object.getOwnPropertyNames(s).forEach((function(n){s[n].forEach((function(s){t.call(e,s,n,this)}),this)}),this)},d.sort=d.sort||function(){var t,e,s,n=f(this.toString()),i=[];for(t in n)i.push(t);for(i.sort(),e=0;e<i.length;e++)this.delete(i[e]);for(e=0;e<i.length;e++){var o=i[e],r=n[o];for(s=0;s<r.length;s++)this.append(o,r[s])}},d.keys=d.keys||function(){var t=[];return this.forEach((function(e,s){t.push(s)})),m(t)},d.values=d.values||function(){var t=[];return this.forEach((function(e){t.push(e)})),m(t)},d.entries=d.entries||function(){var t=[];return this.forEach((function(e,s){t.push([s,e])})),m(t)},l&&(d[t.Symbol.iterator]=d[t.Symbol.iterator]||d.entries)}function u(t){((t=t||"")instanceof URLSearchParams||t instanceof u)&&(t=t.toString()),this[o]=f(t)}function h(t){var e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'\(\)~]|%20|%00/g,(function(t){return e[t]}))}function p(t){return decodeURIComponent(t.replace(/\+/g," "))}function m(e){var s={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return l&&(s[t.Symbol.iterator]=function(){return s}),s}function f(t){var e={};if("object"==typeof t)for(var s in t)t.hasOwnProperty(s)&&g(e,s,t[s]);else{0===t.indexOf("?")&&(t=t.slice(1));for(var n=t.split("&"),i=0;i<n.length;i++){var o=n[i],r=o.indexOf("=");-1<r?g(e,p(o.slice(0,r)),p(o.slice(r+1))):o&&g(e,p(o),"")}}return e}function g(t,e,s){var n="string"==typeof s?s:null!=s&&"function"==typeof s.toString?s.toString():JSON.stringify(s);e in t?t[e].push(n):t[e]=[n]}}("undefined"!=typeof global?global:window);(()=>{if(!window.ShadyDOM)return;const t=Object.getOwnPropertyDescriptor(Node.prototype,"nodeValue");Object.defineProperty(Node.prototype,"nodeValue",{get(){return t.get.apply(this)},set(e){t.set.apply(this,arguments);const s=this.parentNode;s instanceof HTMLElement&&s.isUI5Element&&s._processChildren()}})})();const R=(t,e={})=>{const s=document.createElement("style");return s.type="text/css",Object.entries(e).forEach(t=>s.setAttribute(...t)),s.textContent=t,document.head.appendChild(s),s},N=(t,e)=>{const s=document.head.querySelector(`style[data-ui5-theme-properties="${e}"]`);if(s)s.textContent=t||"";else{R(t,{"data-ui5-theme-properties":e})}},D=()=>{const t=(()=>{let t=document.querySelector(".sapThemeMetaData-Base-baseLib");if(t)return getComputedStyle(t).backgroundImage;t=document.createElement("span"),t.style.display="none",t.classList.add("sapThemeMetaData-Base-baseLib"),document.body.appendChild(t);const e=getComputedStyle(t).backgroundImage;return document.body.removeChild(t),e})();if(t&&"none"!==t)return(t=>{let e,s;try{e=t.Path.match(/\.([^.]+)\.css_variables$/)[1],s=t.Extends[0]}catch(e){return void console.warn("Malformed theme metadata Object",t)}return{themeName:e,baseThemeName:s}})((t=>{const e=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(t);if(e&&e.length>=2){let t=e[1];if(t=t.replace(/\\"/g,'"'),"{"!==t.charAt(0)&&"}"!==t.charAt(t.length-1))try{t=decodeURIComponent(t)}catch(t){return void console.warn("Malformed theme metadata string, unable to decodeURIComponent")}try{return JSON.parse(t)}catch(t){console.warn("Malformed theme metadata string, unable to parse JSON")}}})(t))};let T;const L=()=>!!window.CSSVarsPonyfill,I=()=>{T=void 0,window.CSSVarsPonyfill.cssVars({rootElement:document.head,silent:!0})},V="@ui5/webcomponents-theme-base",$=async t=>{if(!P().has(V))return;const e=await O(V,t);N(e,V)},k=async t=>{const e=(()=>{const t=D();if(t)return t;const e=h("OpenUI5Support");if(e){if(e.cssVariablesLoaded())return{themeName:e.getConfigurationSettingsObject().theme}}})();e&&t===e.themeName?(()=>{const t=document.head.querySelector(`style[data-ui5-theme-properties="${V}"]`);t&&t.parentElement.removeChild(t)})():await $(t);const s=(t=>C.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{P().forEach(async e=>{if(e===V)return;const s=await O(e,t);N(s,e)})})(s),L()&&I()};let j;const F=()=>(void 0===j&&(j=(()=>(g(),m.theme))()),j),U=async t=>{j!==t&&(j=t,await k(j))},B=window.sap,H=B&&B.ui&&"function"==typeof B.ui.getCore&&B.ui.getCore();var W,z;W="OpenUI5Support",z={isLoaded:()=>!!H,init:()=>H?new Promise(t=>{H.attachInit(()=>{B.ui.require(["sap/ui/core/LocaleData"],t)})}):Promise.resolve(),getConfigurationSettingsObject:()=>{if(!H)return;const t=H.getConfiguration(),e=B.ui.require("sap/ui/core/LocaleData");return{animationMode:t.getAnimationMode(),language:t.getLanguage(),theme:t.getTheme(),rtl:t.getRTL(),calendarType:t.getCalendarType(),formatSettings:{firstDayOfWeek:e?e.getInstance(t.getLocale()).getFirstDayOfWeek():void 0}}},getLocaleDataObject:()=>{if(!H)return;const t=H.getConfiguration();return B.ui.require("sap/ui/core/LocaleData").getInstance(t.getLocale())._get()},attachListeners:()=>{H&&(()=>{const t=H.getConfiguration();H.attachThemeChanged(async()=>{await U(t.getTheme())})})()},cssVariablesLoaded:()=>{if(!H)return;const t=[...document.head.children].find(t=>"sap-ui-theme-sap.ui.core"===t.id);return t?!!t.href.match(/\/css-variables\.css/):void 0}},u.set(W,z);let q;let J;const G=()=>J||(J=new Promise(async t=>{const e=h("OpenUI5Support");e&&await e.init(),await(()=>new Promise(t=>{document.body?t():document.addEventListener("DOMContentLoaded",()=>{t()})}))(),await k(F()),e&&e.attachListeners(),(()=>{if(document.querySelector("head>style[data-ui5-font-face]"))return;const t=h("OpenUI5Support");t&&t.isLoaded()||R('\n\t@font-face {\n\t\tfont-family: "72";\n\t\tfont-style: normal;\n\t\tfont-weight: 400;\n\t\tsrc: local("72"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff?ui5-webcomponents) format("woff");\n\t}\n\t\n\t@font-face {\n\t\tfont-family: "72full";\n\t\tfont-style: normal;\n\t\tfont-weight: 400;\n\t\tsrc: local(\'72-full\'),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff?ui5-webcomponents) format("woff");\n\t\t\n\t}\n\t\n\t@font-face {\n\t\tfont-family: "72";\n\t\tfont-style: normal;\n\t\tfont-weight: 700;\n\t\tsrc: local(\'72-Bold\'),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff?ui5-webcomponents) format("woff");\n\t}\n\t\n\t@font-face {\n\t\tfont-family: "72full";\n\t\tfont-style: normal;\n\t\tfont-weight: 700;\n\t\tsrc: local(\'72-Bold-full\'),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2"),\n\t\t\turl(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff?ui5-webcomponents) format("woff");\n\t}\n',{"data-ui5-font-face":""})})(),await(()=>q||(q=new Promise(t=>{window.WebComponents&&!window.WebComponents.ready&&window.WebComponents.waitFor?window.WebComponents.waitFor(()=>{t()}):t()}),q))(),t()}),J);class X{static isValid(t){}static generataTypeAcessors(t){Object.keys(t).forEach(e=>{Object.defineProperty(this,e,{get:()=>t[e]})})}}const Z=new Map,Y=new Map,K=t=>{if(!Z.has(t)){const e=tt(t.split("-"));Z.set(t,e)}return Z.get(t)},Q=t=>{if(!Y.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();Y.set(t,e)}return Y.get(t)},tt=t=>t.map((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join("");class et{constructor(t){this.metadata=t}static validatePropertyValue(t,e){return e.multiple?t.map(t=>st(t,e)):st(t,e)}static validateSlotValue(t,e){return nt(t,e)}getTag(){return this.metadata.tag}hasAttribute(t){const e=this.getProperties()[t];return e.type!==Object&&!e.noAttribute}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute,this).map(Q)}getSlots(){return this.metadata.slots||{}}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.entries(this.getSlots()).some(([t,e])=>e.individualSlots)}slotsAreManaged(){return!!this.metadata.managedSlots}getProperties(){return this.metadata.properties||{}}getEvents(){return this.metadata.events||{}}}const st=(t,e)=>{const s=e.type;return s===Boolean?"boolean"==typeof t&&t:s===String?"string"==typeof t||null==t?t:t.toString():s===Object?"object"==typeof t?t:e.defaultValue:((t,e,s=!1)=>{if("function"!=typeof t||"function"!=typeof e)return!1;if(s&&t===e)return!0;let n=t;do{n=Object.getPrototypeOf(n)}while(null!==n&&n!==e);return n===e})(s,X)?s.isValid(t)?t:e.defaultValue:void 0},nt=(t,e)=>{if(null===t)return t;return(t=>{return t instanceof HTMLElement&&"slot"===t.localName?t.assignedNodes({flatten:!0}).filter(t=>t instanceof HTMLElement):[t]})(t).forEach(t=>{if(!(t instanceof e.type))throw new Error(`${t} is not of type ${e.type}`)}),t},it=()=>{let t=document.querySelector("ui5-static-area");if(t)return t;const e=document.body;return t=document.createElement("ui5-static-area"),e.insertBefore(t,e.firstChild)},ot=()=>{it().destroy()};class rt extends HTMLElement{constructor(){super()}get isUI5Element(){return!0}destroy(){const t=document.querySelector(this.tagName.toLowerCase());t.parentElement.removeChild(t)}}customElements.get("ui5-static-area")||customElements.define("ui5-static-area",rt);const at=new Set,lt=t=>{at.add(t)},ct=t=>at.has(t),dt=()=>{const t=[];return at.forEach(e=>{t.push(e)}),t},ut=10;let ht;const pt=new class{constructor(){this.list=[],this.promises=new Map}add(t){if(this.promises.has(t))return this.promises.get(t);let e;const s=new Promise(t=>{e=t});return s._deferredResolve=e,this.list.push(t),this.promises.set(t,s),s}shift(){const t=this.list.shift();if(t){const e=this.promises.get(t);return this.promises.delete(t),{webComponent:t,promise:e}}}getList(){return this.list}isAdded(t){return this.promises.has(t)}};let mt,ft,gt,wt;class yt{constructor(){throw new Error("Static class")}static renderDeferred(t){const e=pt.add(t);return yt.scheduleRenderTask(),e}static renderImmediately(t){const e=pt.add(t);return yt.runRenderTask(),e}static scheduleRenderTask(){ht||(ht=window.requestAnimationFrame(yt.renderWebComponents))}static runRenderTask(){ht||(ht=1,yt.renderWebComponents())}static renderWebComponents(){let t,e,s;const n=new Map;for(;t=pt.shift();){e=t.webComponent,s=t.promise;const i=n.get(e)||0;if(i>ut)throw new Error(`Web component re-rendered too many times this task, max allowed is: ${ut}`);e._render(),s._deferredResolve(),n.set(e,i+1)}wt||(wt=setTimeout(()=>{wt=void 0,0===pt.getList().length&&yt._resolveTaskPromise()},200)),ht=void 0}static whenDOMUpdated(){return mt||(mt=new Promise(t=>{ft=t,window.requestAnimationFrame(()=>{0===pt.getList().length&&(mt=void 0,t())})}),mt)}static whenAllCustomElementsAreDefined(){const t=dt().map(t=>customElements.whenDefined(t));return Promise.all(t)}static async whenFinished(){await yt.whenAllCustomElementsAreDefined(),await yt.whenDOMUpdated()}static _resolveTaskPromise(){pt.getList().length>0||ft&&(ft.call(this,gt),ft=void 0,mt=void 0)}}class _t{constructor(t){this.ui5ElementContext=t,this._rendered=!1}isRendered(){return this._rendered}_updateFragment(){const t=this.ui5ElementContext.constructor.staticAreaTemplate(this.ui5ElementContext),e=!window.ShadyDOM&&this.ui5ElementContext.constructor.staticAreaStyles;this.staticAreaItemDomRef||(this.staticAreaItemDomRef=document.createElement("ui5-static-area-item"),this.staticAreaItemDomRef.attachShadow({mode:"open"}),this.staticAreaItemDomRef.classList.add(this.ui5ElementContext._id),it().appendChild(this.staticAreaItemDomRef),this._rendered=!0),this.ui5ElementContext.constructor.render(t,this.staticAreaItemDomRef.shadowRoot,e,{eventContext:this.ui5ElementContext})}_removeFragmentFromStaticArea(){if(!this.staticAreaItemDomRef)return;const t=it();t.removeChild(this.staticAreaItemDomRef),this.staticAreaItemDomRef=null,t.childElementCount<1&&ot()}_updateContentDensity(t){this.staticAreaItemDomRef&&(t?(this.staticAreaItemDomRef.classList.add("sapUiSizeCompact"),this.staticAreaItemDomRef.classList.add("ui5-content-density-compact")):(this.staticAreaItemDomRef.classList.remove("sapUiSizeCompact"),this.staticAreaItemDomRef.classList.remove("ui5-content-density-compact")))}async getDomRef(){return this._rendered&&this.staticAreaItemDomRef||this._updateFragment(),await yt.whenDOMUpdated(),this.staticAreaItemDomRef.shadowRoot}}class vt extends HTMLElement{constructor(){super()}get isUI5Element(){return!0}}customElements.get("ui5-static-area-item")||customElements.define("ui5-static-area-item",vt);const bt=window,St=new WeakMap;class At{constructor(){throw new Error("Static class")}static observeDOMNode(t,e,s){let n=St.get(t);if(n)throw new Error("A mutation/ShadyDOM observer is already assigned to this node.");bt.ShadyDOM?n=bt.ShadyDOM.observeChildren(t,e):(n=new MutationObserver(e),n.observe(t,s)),St.set(t,n)}static unobserveDOMNode(t){const e=St.get(t);e&&(e instanceof MutationObserver?e.disconnect():bt.ShadyDOM.unobserveChildren(e),St.delete(t))}}const Et=["value-changed"];let Ct;const xt=()=>(void 0===Ct&&(Ct=(()=>(g(),m.noConflict))()),Ct),Ot=t=>{const e=xt();return!(t=>Et.includes(t))(t)&&(!0===e||!(t=>{const e=xt();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))},Mt={},Pt=t=>{const e=(t=>Mt[t]?Mt[t].join(""):"")(t.getMetadata().getTag())||"";let s=t.styles;return Array.isArray(s)&&(s=s.join(" ")),`${s} ${e}`},Rt=new Map,Nt=t=>{const e=t.getMetadata().getTag(),s=Pt(t);if(Rt.has(e))return Rt.get(e);const n=new CSSStyleSheet;return n.replaceSync(s),Rt.set(e,n),n},Dt=(t,e,s,n)=>{const i=s+e.length,o=t.charAt(i),r=t.substring(0,s)+n;if("("===o){const e=((t,e)=>{let s=1;for(let n=e+1;n<t.length;n++){const e=t.charAt(n);if("("===e?s++:")"===e&&s--,0===s)return n}})(t,i);return r+t.substring(i+1,e)+t.substring(e+1)}return r+t.substring(i)},Tt=(t,e)=>(t=((t,e,s)=>{let n=t.indexOf(e);for(;-1!==n;)n=(t=Dt(t,e,n,s)).indexOf(e);return t})(t=t.trim(),"::slotted","")).startsWith(":host")?Dt(t,":host",0,e):t.match(/^[@0-9]/)||"to"===t||"to{"===t?t:t.match(new RegExp(`^${e}[^a-zA-Z0-9-]`))?t:`${e} ${t}`,Lt=(t,e)=>{t=(t=t.replace(/\n/g," ")).replace(/([{}])/g,"$1\n");let s="";return t.split("\n").forEach(t=>{if(t.match(/{$/)){const s=t.split(",");t=s.map(t=>Tt(t,e)).join(",")}s=`${s}${t}`}),s},It=new Set,Vt=t=>{const e=t.getMetadata().getTag();if(It.has(e))return;let s=Pt(t);s=Lt(s,e);let n=(t=>{let e=t.staticAreaStyles;return Array.isArray(e)&&(e=e.join(" ")),e})(t);n&&(n=Lt(n,"ui5-static-area-item"),s=`${s} ${n}`),R(s,{"data-ui5-element-styles":e,disabled:"disabled"}),L()&&(T||(T=window.setTimeout(I,0))),It.add(e)};class $t extends X{static isValid(t){return Number.isInteger(t)}}const kt=["disabled","ariaLabel"],jt=t=>{if(kt.includes(t))return!0;return![HTMLElement,Element,Node].some(e=>e.prototype.hasOwnProperty(t))},Ft={events:{_propertyChange:{}}};let Ut=0;const Bt=new Map,Ht="--_ui5_content_density";class Wt extends HTMLElement{constructor(){let t;super(),this._generateId(),this._initializeState(),this._upgradeAllProperties(),this._initializeContainers(),this._upToDate=!1,this._domRefReadyPromise=new Promise(e=>{t=e}),this._domRefReadyPromise._deferredResolve=t,this._monitoredChildProps=new Map,this._firePropertyChange=!1}_generateId(){this._id=`ui5wc_${++Ut}`}_initializeContainers(){const t=this.constructor._needsShadowDOM(),e=this.constructor._needsStaticArea();if(t&&(this.attachShadow({mode:"open"}),window.ShadyDOM&&Vt(this.constructor),document.adoptedStyleSheets)){const t=Nt(this.constructor);this.shadowRoot.adoptedStyleSheets=[t]}e&&(this.staticAreaItem=new _t(this))}async connectedCallback(){const t=this.constructor._needsShadowDOM(),e=this.constructor.getMetadata().slotsAreManaged();t&&(e&&(this._startObservingDOMChildren(),await this._processChildren()),this.shadowRoot||await Promise.resolve(),await yt.renderImmediately(this),this._domRefReadyPromise._deferredResolve(),"function"==typeof this.onEnterDOM&&this.onEnterDOM())}disconnectedCallback(){const t=this.constructor._needsShadowDOM(),e=this.constructor._needsStaticArea(),s=this.constructor.getMetadata().slotsAreManaged();t&&(s&&this._stopObservingDOMChildren(),"function"==typeof this.onExitDOM&&this.onExitDOM()),e&&this.staticAreaItem._removeFragmentFromStaticArea()}_startObservingDOMChildren(){if(!this.constructor.getMetadata().hasSlots())return;const t={childList:!0,subtree:this.constructor.getMetadata().canSlotText(),characterData:!0};At.observeDOMNode(this,this._processChildren.bind(this),t)}_stopObservingDOMChildren(){At.unobserveDOMNode(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor.getMetadata().getSlots(),e=this.constructor.getMetadata().canSlotText(),s=Array.from(e?this.childNodes:this.children);for(const[e,s]of Object.entries(t))this._clearSlot(e,s);const n=new Map,i=new Map,o=s.map(async(e,s)=>{const o=this.constructor._getSlotName(e),r=t[o];if(void 0===r){const s=Object.keys(t).join(", ");return void console.warn(`Unknown slotName: ${o}, ignoring`,e,`Valid values are: ${s}`)}if(r.individualSlots){const t=(n.get(o)||0)+1;n.set(o,t),e._individualSlot=`${o}-${t}`}if(e instanceof HTMLElement){const t=e.localName;if(t.includes("-")){if(!window.customElements.get(t)){const e=window.customElements.whenDefined(t);let s=Bt.get(t);s||(s=new Promise(t=>setTimeout(t,1e3)),Bt.set(t,s)),await Promise.race([e,s])}window.customElements.upgrade(e)}}(e=this.constructor.getMetadata().constructor.validateSlotValue(e,r)).isUI5Element&&r.listenFor&&this._attachChildPropertyUpdated(e,r.listenFor);const a=r.propertyName||o;i.has(a)?i.get(a).push({child:e,idx:s}):i.set(a,[{child:e,idx:s}])});await Promise.all(o),i.forEach((t,e)=>{this._state[e]=t.sort((t,e)=>t.idx-e.idx).map(t=>t.child)}),this._invalidate("slots")}_clearSlot(t,e){const s=e.propertyName||t;let n=this._state[s];Array.isArray(n)||(n=[n]),n.forEach(t=>{t&&t.isUI5Element&&this._detachChildPropertyUpdated(t)}),this._state[s]=[],this._invalidate(s,[])}attributeChangedCallback(t,e,s){const n=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),o=K(i);if(n.hasOwnProperty(o)){const t=n[o].type;t===Boolean&&(s=null!==s),t===$t&&(s=parseInt(s)),this[o]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;if("object"==typeof e)return;const s=Q(t),n=this.getAttribute(s);"boolean"==typeof e?!0===e&&null===n?this.setAttribute(s,""):!1===e&&null!==n&&this.removeAttribute(s):n!==e&&this.setAttribute(s,e)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const e=this[t];delete this[t],this[t]=e}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty,this)}_initializeState(){const t=this.constructor._getDefaultState();this._state=Object.assign({},t)}_attachChildPropertyUpdated(t,e){const s=t.constructor.getMetadata(),n=this.constructor._getSlotName(t),i=s.getProperties();let o=[],r=[];Array.isArray(e)?o=e:(o=Array.isArray(e.props)?e.props:Object.keys(i),r=Array.isArray(e.exclude)?e.exclude:[]),this._monitoredChildProps.has(n)||this._monitoredChildProps.set(n,{observedProps:o,notObservedProps:r}),t.addEventListener("_propertyChange",this._invalidateParentOnPropertyUpdate),t._firePropertyChange=!0}_detachChildPropertyUpdated(t){t.removeEventListener("_propertyChange",this._invalidateParentOnPropertyUpdate),t._firePropertyChange=!1}_propertyChange(t,e){this._updateAttribute(t,e),this._firePropertyChange&&this.dispatchEvent(new CustomEvent("_propertyChange",{detail:{name:t,newValue:e},composed:!1,bubbles:!0}))}_invalidateParentOnPropertyUpdate(t){const e=this.parentNode;if(!e)return;const s=e.constructor._getSlotName(this),n=e._monitoredChildProps.get(s);if(!n)return;const{observedProps:i,notObservedProps:o}=n;i.includes(t.detail.name)&&!o.includes(t.detail.name)&&e._invalidate("_parent_",this)}_invalidate(){this._upToDate&&this.getDomRef()&&!this._suppressInvalidation&&(this._upToDate=!1,yt.renderDeferred(this))}_render(){const t=this.constructor.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,"function"==typeof this.onBeforeRendering&&this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),delete this._suppressInvalidation,this._upToDate=!0,this._updateShadowRoot(),this._shouldUpdateFragment()&&this.staticAreaItem._updateFragment(this),t&&this._assignIndividualSlotsToChildren(),"function"==typeof this.onAfterRendering&&this.onAfterRendering()}_updateShadowRoot(){if(!this.constructor._needsShadowDOM())return;let t;const e=this.constructor.template(this);document.adoptedStyleSheets||window.ShadyDOM||(t=Pt(this.constructor)),this.constructor.render(e,this.shadowRoot,t,{eventContext:this})}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach(t=>{t._individualSlot&&t.setAttribute("slot",t._individualSlot)})}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if(this.shadowRoot&&0!==this.shadowRoot.children.length)return 1===this.shadowRoot.children.length?this.shadowRoot.children[0]:this.shadowRoot.children[1]}getFocusDomRef(){const t=this.getDomRef();if(t){return t.querySelector("[data-sap-focus-ref]")||t}}async focus(){await this._waitForDomRef();const t=this.getFocusDomRef();t&&"function"==typeof t.focus&&t.focus()}fireEvent(t,e,s){let n=!0;const i=new CustomEvent(`ui5-${t}`,{detail:e,composed:!1,bubbles:!0,cancelable:s});if(n=this.dispatchEvent(i),Ot(t))return n;const o=new CustomEvent(t,{detail:e,composed:!1,bubbles:!0,cancelable:s});return this.dispatchEvent(o)&&n}getSlottedNodes(t){return this[t].reduce((t,e)=>"slot"!==e.localName?t.concat([e]):t.concat(e.assignedNodes({flatten:!0}).filter(t=>t instanceof HTMLElement)),[])}get isCompact(){return"compact"===getComputedStyle(this).getPropertyValue(Ht)}updateStaticAreaItemContentDensity(){this.staticAreaItem&&this.staticAreaItem._updateContentDensity(this.isCompact)}get isUI5Element(){return!0}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _getSlotName(t){if(!(t instanceof HTMLElement))return"default";const e=t.getAttribute("slot");if(e){const t=e.match(/^(.+?)-\d+$/);return t?t[1]:e}return"default"}static _needsShadowDOM(){return!!this.template}_shouldUpdateFragment(){return this.constructor._needsStaticArea()&&this.staticAreaItem.isRendered()}static _needsStaticArea(){return"function"==typeof this.staticAreaTemplate}getStaticAreaItemDomRef(){return this.staticAreaItem.getDomRef()}static _getDefaultState(){if(this._defaultState)return this._defaultState;const t=this.getMetadata(),e={},s=t.slotsAreManaged(),n=t.getProperties();for(const t in n){const s=n[t].type,i=n[t].defaultValue;s===Boolean?(e[t]=!1,void 0!==i&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):n[t].multiple?e[t]=[]:e[t]=s===Object?"defaultValue"in n[t]?n[t].defaultValue:{}:s===String?"defaultValue"in n[t]?n[t].defaultValue:"":i}if(s){const s=t.getSlots();for(const[t,n]of Object.entries(s)){e[n.propertyName||t]=[]}}return this._defaultState=e,e}static _generateAccessors(){const t=this.prototype,e=this.getMetadata().slotsAreManaged(),s=this.getMetadata().getProperties();for(const[e,n]of Object.entries(s)){if(!jt(e))throw new Error(`"${e}" is not a valid property name. Use a name that does not collide with DOM APIs`);if(n.type===Boolean&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All booleans are false by default.`);if(n.type===Array)throw new Error(`Wrong type for property "${e}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(n.type===Object&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All properties of type "Object" are empty objects by default.`);if(n.multiple&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,e,{get(){if(void 0!==this._state[e])return this._state[e];const t=n.defaultValue;return n.type!==Boolean&&(n.type===String?t:n.multiple?[]:t)},set(t){t=this.constructor.getMetadata().constructor.validatePropertyValue(t,n),this._state[e]!==t&&(this._state[e]=t,this._invalidate(e,t),this._propertyChange(e,t))}})}if(e){const e=this.getMetadata().getSlots();for(const[s,n]of Object.entries(e)){if(!jt(s))throw new Error(`"${s}" is not a valid property name. Use a name that does not collide with DOM APIs`);const e=n.propertyName||s;Object.defineProperty(t,e,{get(){return void 0!==this._state[e]?this._state[e]:[]},set(){throw new Error("Cannot set slots directly, use the DOM APIs")}})}}}static get metadata(){return Ft}static get styles(){return""}static get staticAreaStyles(){return""}static async define(){await G(),this.onDefine&&await this.onDefine();const t=this.getMetadata().getTag(),e=ct(t),s=customElements.get(t);return s&&!e?console.warn(`Skipping definition of tag ${t}, because it was already defined by another instance of ui5-webcomponents.`):s||(this._generateAccessors(),lt(t),window.customElements.define(t,this)),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==Wt;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=d({},...t);return this._metadata=new et(s),this._metadata}}
|
|
1
|
+
const t={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","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]},e={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_exp"]}.default,s={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"]}.default,n=t.default,i=t.all;var a=()=>{const t=navigator.languages;return t&&t[0]||navigator.language||navigator.userLanguage||navigator.browserLanguage||s},r={},o=r.hasOwnProperty,l=r.toString,c=o.toString,d=c.call(Object),h=function(t){var e,s;return!(!t||"[object Object]"!==l.call(t))&&(!(e=Object.getPrototypeOf(t))||"function"==typeof(s=o.call(e,"constructor")&&e.constructor)&&c.call(s)===d)},u=Object.create(null),p=function(){var t,e,s,n,i,a,r=arguments[2]||{},o=3,l=arguments.length,c=arguments[0]||!1,d=arguments[1]?void 0:u;for("object"!=typeof r&&"function"!=typeof r&&(r={});o<l;o++)if(null!=(i=arguments[o]))for(n in i)t=r[n],s=i[n],"__proto__"!==n&&r!==s&&(c&&s&&(h(s)||(e=Array.isArray(s)))?(e?(e=!1,a=t&&Array.isArray(t)?t:[]):a=t&&h(t)?t:{},r[n]=p(c,arguments[1],a,s)):s!==d&&(r[n]=s));return r},g=function(){var t=[!0,!1];return t.push.apply(t,arguments),p.apply(null,t)};const f=new Map,m=t=>f.get(t);let _=!1,y={animationMode:"full",theme:e,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const v=new Map;v.set("true",!0),v.set("false",!1);const w=(t,e,s)=>{const n=e.toLowerCase(),i=t.split(`${s}-`)[1];v.has(e)&&(e=v.get(n)),e=((t,e)=>"theme"===t&&e.includes("@")?e.split("@")[0]:e)(i,e),y[i]=e},A=()=>{_||((()=>{const t=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let e;if(t){try{e=JSON.parse(t.innerHTML)}catch(t){console.warn("Incorrect data-sap-ui-config format. Please use JSON")}e&&(y=g(y,e))}})(),(()=>{const t=new URLSearchParams(window.location.search);t.forEach(((t,e)=>{const s=e.split("sap-").length;0!==s&&s!==e.split("sap-ui-").length&&w(e,t,"sap")})),t.forEach(((t,e)=>{e.startsWith("sap-ui")&&w(e,t,"sap-ui")}))})(),(()=>{const t=m("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();y=g(y,e)})(),_=!0)};class b{constructor(){this._eventRegistry=new Map}attachEvent(t,e){const s=this._eventRegistry,n=s.get(t);Array.isArray(n)?n.includes(e)||n.push(e):s.set(t,[e])}detachEvent(t,e){const s=this._eventRegistry,n=s.get(t);if(!n)return;const i=n.indexOf(e);-1!==i&&n.splice(i,1),0===n.length&&s.delete(t)}fireEvent(t,e){const s=this._eventRegistry.get(t);return s?s.map((t=>t.call(this,e))):[]}fireEventAsync(t,e){return Promise.all(this.fireEvent(t,e))}isHandlerAttached(t,e){const s=this._eventRegistry.get(t);return!!s&&s.includes(e)}hasListeners(t){return!!this._eventRegistry.get(t)}}const $=new b,S=t=>{$.attachEvent("languageChange",t)};const C=t=>{const e=[];return t.forEach((t=>{e.push(t)})),e},E=new Set,M=new Set;let O;const T=t=>{E.add(t)},x=()=>{console.warn(`The following tags have already been defined by a different UI5 Web Components version: ${C(M).join(", ")}`),M.clear()},P=new Set,L=new Set,I=new b,D=new class{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((e=>e!==t)),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return 0===this.list.length}isAdded(t){return this.lookup.has(t)}process(t){let e;const s=new Map;for(e=this.shift();e;){const n=s.get(e)||0;if(n>10)throw new Error("Web component processed too many times this task, max allowed is: 10");t(e),s.set(e,n+1),e=this.shift()}}};let k,N,R,U;const j=async t=>{D.add(t),await B()},H=t=>{I.fireEvent("beforeComponentRender",t),L.add(t),t._render()},B=async()=>{U||(U=new Promise((t=>{window.requestAnimationFrame((()=>{D.process(H),U=null,t(),R||(R=setTimeout((()=>{R=void 0,D.isEmpty()&&Z()}),200))}))}))),await U},V=()=>{const t=C(E).map((t=>customElements.whenDefined(t)));return Promise.all(t)},z=async()=>{await V(),await(k||(k=new Promise((t=>{N=t,window.requestAnimationFrame((()=>{D.isEmpty()&&(k=void 0,t())}))})),k))},Z=()=>{D.isEmpty()&&N&&(N(),N=void 0,k=void 0)},W=async t=>{L.forEach((e=>{const s=e.constructor.getMetadata().getTag(),n=(i=e.constructor,P.has(i));var i;const a=e.constructor.getMetadata().isLanguageAware(),r=e.constructor.getMetadata().isThemeAware();(!t||t.tag===s||t.rtlAware&&n||t.languageAware&&a||t.themeAware&&r)&&j(e)})),await z()};let F,q;const G=()=>(void 0===F&&(A(),F=y.language),F),J=()=>{var t;return void 0===q&&(A(),t=y.fetchDefaultLanguage,q=t),q},K=/^((?:[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 Y{constructor(t){const e=K.exec(t.replace(/_/g,"-"));if(null===e)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=e[1]||null,this.sScript=e[2]||null,this.sRegion=e[3]||null,this.sVariant=e[4]&&e[4].slice(1)||null,this.sExtension=e[5]&&e[5].slice(1)||null,this.sPrivateUse=e[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,(t=>t.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 X=new Map,Q=t=>(X.has(t)||X.set(t,new Y(t)),X.get(t)),tt=t=>{try{if(t&&"string"==typeof t)return Q(t)}catch(t){}},et=t=>t?tt(t):G()?Q(G()):tt(a()),st=/^((?:[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,nt=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,it={he:"iw",yi:"ji",id:"in",sr:"sh"},at=t=>{if(!t)return n;if("zh_HK"===t)return"zh_TW";const e=t.lastIndexOf("_");return e>=0?t.slice(0,e):t!==n?n:""},rt=new Set,ot=new Set,lt=new Map,ct=new Map,dt=new Map,ht=(t,e)=>{lt.set(t,e)},ut=(t,e)=>{const s=`${t}/${e}`;return dt.has(s)},pt=async t=>{const e=et().getLanguage(),i=et().getRegion();let a=(t=>{let e;if(!t)return n;if("string"==typeof t&&(e=st.exec(t.replace(/_/g,"-")))){let t=e[1].toLowerCase(),s=e[3]?e[3].toUpperCase():void 0;const n=e[2]?e[2].toLowerCase():void 0,i=e[4]?e[4].slice(1):void 0,a=e[6];return t=it[t]||t,a&&(e=nt.exec(a))||i&&(e=nt.exec(i))?`en_US_${e[1].toLowerCase()}`:("zh"!==t||s||("hans"===n?s="CN":"hant"===n&&(s="TW")),t+(s?"_"+s+(i?"_"+i.replace("-","_"):""):""))}})(e+(i?`-${i}`:""));for(;a!==s&&!ut(t,a);)a=at(a);const r=J();if(a!==s||r)if(ut(t,a))try{const e=await((t,e)=>{const s=`${t}/${e}`,n=dt.get(s);return ct.get(s)||ct.set(s,n(e)),ct.get(s)})(t,a);ht(t,e)}catch(t){ot.has(t.message)||(ot.add(t.message),console.error(t.message))}else(t=>{rt.has(t)||(console.warn(`[${t}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${t}/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.`),rt.add(t))})(t);else ht(t,null)};S((()=>{const t=[...lt.keys()];return Promise.all(t.map(pt))}));const gt=new Map,ft=new Map,mt=new Map,_t=new Set;let yt=!1;const vt={iw:"he",ji:"yi",in:"id",sh:"sr"},wt=t=>{yt||(console.warn(`[LocaleData] Supported locale "${t}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),yt=!0)},At=(t,e)=>{gt.set(t,e)},bt=async(t,e,s)=>{const a=((t,e,s)=>{"no"===(t=t&&vt[t]||t)&&(t="nb"),"zh"!==t||e||("Hans"===s?e="CN":"Hant"===s&&(e="TW"));let a=`${t}_${e}`;return i.includes(a)?ft.has(a)?a:(wt(a),n):(a=t,i.includes(a)?ft.has(a)?a:(wt(a),n):n)})(t,e,s),r=m("OpenUI5Support");if(r){const t=r.getLocaleDataObject();if(t)return void At(a,t)}try{const t=await(t=>{const e=ft.get(t);return mt.get(t)||mt.set(t,e(t)),mt.get(t)})(a);At(a,t)}catch(t){_t.has(t.message)||(_t.add(t.message),console.error(t.message))}};var $t,St;$t="en",St=async t=>(await fetch("https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json")).json(),ft.set($t,St),S((()=>{const t=et();return bt(t.getLanguage(),t.getRegion(),t.getScript())}));const Ct=new Map,Et=new Map,Mt=new Set,Ot=new Set,Tt=(t,e,s)=>{Et.set(`${t}/${e}`,s),Mt.add(t),Ot.add(e)},xt=async(t,s)=>{const n=Ct.get(`${t}_${s}`);if(void 0!==n)return n;if(!Ot.has(s)){const s=[...Ot.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${e}. Registered themes are: ${s}`),Ct.get(`${t}_${e}`)}const i=Et.get(`${t}/${s}`);if(!i)return void console.error(`Theme [${s}] not registered for package [${t}]`);let a;try{a=await i(s)}catch(e){return void console.error(t,e.message)}const r=a._||a;return Ct.set(`${t}_${s}`,r),r},Pt=()=>Mt,Lt=(t,e=document.body)=>{let s=document.querySelector(t);return s||(s=document.createElement(t),e.insertBefore(s,e.firstChild))},It=(t,e)=>{const s=t.split(".");let n=Lt("ui5-shared-resources",document.head);for(let t=0;t<s.length;t++){const i=s[t],a=t===s.length-1;Object.prototype.hasOwnProperty.call(n,i)||(n[i]=a?e:{}),n=n[i]}return n},Dt={"SAP-icons-TNT":"tnt",BusinessSuiteInAppSymbols:"business-suite",horizon:"SAP-icons-v5"},kt=(t,e)=>e?`${t}|${e}`:t,Nt=(t,e,s="")=>{const n="string"==typeof t?t:t.content;if(document.adoptedStyleSheets){const t=new CSSStyleSheet;t.replaceSync(n),t._ui5StyleId=kt(e,s),document.adoptedStyleSheets=[...document.adoptedStyleSheets,t]}else{const t={};t[e]=s,((t,e={})=>{const s=document.createElement("style");s.type="text/css",Object.entries(e).forEach((t=>s.setAttribute(...t))),s.textContent=t,document.head.appendChild(s)})(n,t)}},Rt=(t,e="")=>document.adoptedStyleSheets?!!document.adoptedStyleSheets.find((s=>s._ui5StyleId===kt(t,e))):!!document.querySelector(`head>style[${t}="${e}"]`),Ut=(t,e,s="")=>{Rt(e,s)?((t,e,s="")=>{const n="string"==typeof t?t:t.content;document.adoptedStyleSheets?document.adoptedStyleSheets.find((t=>t._ui5StyleId===kt(e,s))).replaceSync(n||""):document.querySelector(`head>style[${e}="${s}"]`).textContent=n||""})(t,e,s):Nt(t,e,s)},jt=()=>{const t=(()=>{let t=document.querySelector(".sapThemeMetaData-Base-baseLib")||document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");if(t)return getComputedStyle(t).backgroundImage;t=document.createElement("span"),t.style.display="none",t.classList.add("sapThemeMetaData-Base-baseLib"),t.classList.add("sapThemeMetaData-UI5-sap-ui-core"),document.body.appendChild(t);const e=getComputedStyle(t).backgroundImage;return document.body.removeChild(t),e})();if(!t||"none"===t)return;const e=(t=>{const e=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(t);if(e&&e.length>=2){let t=e[1];if(t=t.replace(/\\"/g,'"'),"{"!==t.charAt(0)&&"}"!==t.charAt(t.length-1))try{t=decodeURIComponent(t)}catch(t){return void console.warn("Malformed theme metadata string, unable to decodeURIComponent")}try{return JSON.parse(t)}catch(t){console.warn("Malformed theme metadata string, unable to parse JSON")}}})(t);return(t=>{let e,s;try{e=t.Path.match(/\.([^.]+)\.css_variables$/)[1],s=t.Extends[0]}catch(e){return void console.warn("Malformed theme metadata Object",t)}return{themeName:e,baseThemeName:s}})(e)},Ht=new b,Bt="@ui5/webcomponents-theming",Vt=async t=>{if(!Pt().has(Bt))return;const e=await xt(Bt,t);Ut(e,"data-ui5-theme-properties",Bt)},zt=()=>{((t,e="")=>{if(document.adoptedStyleSheets)document.adoptedStyleSheets=document.adoptedStyleSheets.filter((s=>s._ui5StyleId!==kt(t,e)));else{const s=document.querySelector(`head > style[${t}="${e}"]`);s&&s.parentElement.removeChild(s)}})("data-ui5-theme-properties",Bt)},Zt=async t=>{const e=(()=>{const t=jt();if(t)return t;const e=m("OpenUI5Support");if(e&&e.cssVariablesLoaded())return{themeName:e.getConfigurationSettingsObject().theme}})();e&&t===e.themeName?zt():await Vt(t);const s=(t=>Ot.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{Pt().forEach((async e=>{if(e===Bt)return;const s=await xt(e,t);Ut(s,"data-ui5-theme-properties",e)}))})(s),(t=>{Ht.fireEvent("themeLoaded",t)})(t)};let Wt;const Ft=()=>(void 0===Wt&&(A(),Wt=y.theme),Wt),qt=async t=>{Wt!==t&&(Wt=t,await Zt(Wt),await W({themeAware:!0}))},Gt=new Map,Jt=It("SVGIcons.registry",new Map),Kt=It("SVGIcons.promises",new Map),Yt=(t,{pathData:e,ltr:s,accData:n,collection:i,packageName:a}={})=>{i||(i=Qt());const r=`${i}/${t}`;Jt.set(r,{pathData:e,ltr:s,accData:n,packageName:a})},Xt=async t=>{const{collection:e,registryKey:s}=(t=>{let e;return t.startsWith("sap-icon://")&&(t=t.replace("sap-icon://","")),[t,e]=t.split("/").reverse(),e=e||Qt(),e=te(e),{name:t=t.replace("icon-",""),collection:e,registryKey:`${e}/${t}`}})(t);let n="ICON_NOT_FOUND";try{n=await(async t=>{if(!Kt.has(t)){if(!Gt.has(t))throw new Error(`No loader registered for the ${t} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const e=Gt.get(t);Kt.set(t,e(t))}return Kt.get(t)})(e)}catch(t){console.error(t.message)}return"ICON_NOT_FOUND"===n?n:(Jt.has(s)||(t=>{Object.keys(t.data).forEach((e=>{const s=t.data[e];Yt(e,{pathData:s.path,ltr:s.ltr,accData:s.acc,collection:t.collection,packageName:t.packageName})}))})(n),Jt.get(s))},Qt=()=>(t=>{const e=Ft();return e===t||e===`${t}_exp`})("sap_horizon")?"SAP-icons-v5":"SAP-icons",te=t=>Dt[t]?Dt[t]:t,ee=It("PopupUtilsData",{});ee.currentZIndex=ee.currentZIndex||100;const se=()=>ee.currentZIndex,ne=()=>{const t=window.sap;return t&&t.ui&&"function"==typeof t.ui.getCore&&t.ui.getCore()};var ie,ae;ie="OpenUI5Support",ae={isLoaded:()=>!!ne(),init:()=>{const t=ne();return t?new Promise((e=>{t.attachInit((()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],((t,s)=>{s.setInitialZIndex(se()),e()}))}))})):Promise.resolve()},getConfigurationSettingsObject:()=>{const t=ne();if(!t)return;const e=t.getConfiguration(),s=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:e.getAnimationMode(),language:e.getLanguage(),theme:e.getTheme(),rtl:e.getRTL(),calendarType:e.getCalendarType(),formatSettings:{firstDayOfWeek:s?s.getInstance(e.getLocale()).getFirstDayOfWeek():void 0}}},getLocaleDataObject:()=>{const t=ne();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()},attachListeners:()=>{ne()&&(()=>{const t=ne(),e=t.getConfiguration();t.attachThemeChanged((async()=>{await qt(e.getTheme())}))})()},cssVariablesLoaded:()=>{if(!ne())return;const t=[...document.head.children].find((t=>"sap-ui-theme-sap.ui.core"===t.id));return t?!!t.href.match(/\/css(-|_)variables\.css/):void 0},getNextZIndex:()=>{if(!ne())return;return window.sap.ui.require("sap/ui/core/Popup").getNextZIndex()},setInitialZIndex:()=>{if(!ne())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(se())}},f.set(ie,ae);var re={packageName:"@ui5/webcomponents-base",fileName:"FontFace.css",content:'@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local(\'72-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local(\'72-Bold\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local(\'72-Bold-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local(\'72Black\'),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2"),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff?ui5-webcomponents) format("woff")}'},oe={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')}"};const le=()=>{Rt("data-ui5-font-face")||Nt(re,"data-ui5-font-face")},ce=()=>{Rt("data-ui5-font-face-override")||Nt(oe,"data-ui5-font-face-override")};var de={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}"};let he=!1;const ue=new b,pe=async()=>{if(he)return;const t=m("OpenUI5Support");t&&await t.init(),await new Promise((t=>{document.body?t():document.addEventListener("DOMContentLoaded",(()=>{t()}))})),await Zt(Ft()),t&&t.attachListeners(),(()=>{const t=m("OpenUI5Support");t&&t.isLoaded()||le(),ce()})(),Rt("data-ui5-system-css-vars")||Nt(de,"data-ui5-system-css-vars"),await ue.fireEventAsync("boot"),he=!0};class ge{static isValid(t){}static attributeToProperty(t){return t}static propertyToAttribute(t){return`${t}`}static valuesAreEqual(t,e){return t===e}static generateTypeAccessors(t){Object.keys(t).forEach((e=>{Object.defineProperty(this,e,{get:()=>t[e]})}))}}const fe=(t,e,s=!1)=>{if("function"!=typeof t||"function"!=typeof e)return!1;if(s&&t===e)return!0;let n=t;do{n=Object.getPrototypeOf(n)}while(null!==n&&n!==e);return n===e},me=new Map,_e=new Map,ye=t=>{if(!me.has(t)){const e=we(t.split("-"));me.set(t,e)}return me.get(t)},ve=t=>{if(!_e.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();_e.set(t,e)}return _e.get(t)},we=t=>t.map(((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase())).join(""),Ae=t=>t&&t instanceof HTMLElement&&"slot"===t.localName,be=t=>Ae(t)?t.assignedNodes({flatten:!0}).filter((t=>t instanceof HTMLElement)):[t];let $e={include:[/^ui5-/],exclude:[]};const Se=new Map,Ce=t=>{if(!Se.has(t)){const e=$e.include.some((e=>t.match(e)))&&!$e.exclude.some((e=>t.match(e)));Se.set(t,e)}return Se.get(t)},Ee=t=>{Ce(t)};class Me{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},e=this.slotsAreManaged(),s=this.getProperties();for(const e in s){const n=s[e].type,i=s[e].defaultValue;n===Boolean?(t[e]=!1,void 0!==i&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):s[e].multiple?t[e]=[]:t[e]=n===Object?"defaultValue"in s[e]?s[e].defaultValue:{}:n===String?"defaultValue"in s[e]?s[e].defaultValue:"":i}if(e){const e=this.getSlots();for(const[s,n]of Object.entries(e)){t[n.propertyName||s]=[]}}return this._initialState=t,t}static validatePropertyValue(t,e){return e.multiple?t.map((t=>Oe(t,e))):Oe(t,e)}static validateSlotValue(t,e){return Te(t,e)}getPureTag(){return this.metadata.tag}getTag(){const t=this.metadata.tag,e=Ee(t);return e?`${t}-${e}`:t}getAltTag(){const t=this.metadata.altTag;if(!t)return;const e=Ee(t);return e?`${t}-${e}`:t}hasAttribute(t){const e=this.getProperties()[t];return e.type!==Object&&!e.noAttribute&&!e.multiple}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute,this).map(ve)}getSlots(){return this.metadata.slots||{}}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.entries(this.getSlots()).some((([t,e])=>e.individualSlots))}slotsAreManaged(){return!!this.metadata.managedSlots}getProperties(){return this.metadata.properties||{}}getEvents(){return this.metadata.events||{}}isLanguageAware(){return!!this.metadata.languageAware}isThemeAware(){return!!this.metadata.themeAware}shouldInvalidateOnChildChange(t,e,s){const n=this.getSlots()[t].invalidateOnChildChange;if(void 0===n)return!1;if("boolean"==typeof n)return n;if("object"==typeof n){if("property"===e){if(void 0===n.properties)return!1;if("boolean"==typeof n.properties)return n.properties;if(Array.isArray(n.properties))return n.properties.includes(s);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if("slot"===e){if(void 0===n.slots)return!1;if("boolean"==typeof n.slots)return n.slots;if(Array.isArray(n.slots))return n.slots.includes(s);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 Oe=(t,e)=>{const s=e.type;return s===Boolean?"boolean"==typeof t&&t:s===String?"string"==typeof t||null==t?t:t.toString():s===Object?"object"==typeof t?t:e.defaultValue:fe(s,ge)?s.isValid(t)?t:e.defaultValue:void 0},Te=(t,e)=>(t&&be(t).forEach((t=>{if(!(t instanceof e.type))throw new Error(`${t} is not of type ${e.type}`)})),t);customElements.get("ui5-static-area")||customElements.define("ui5-static-area",class extends HTMLElement{});const xe=new b,Pe=t=>{xe.attachEvent("CustomCSSChange",t)},Le={},Ie=t=>Array.isArray(t)?De(t.filter((t=>!!t))).map((t=>"string"==typeof t?t:t.content)).join(" "):"string"==typeof t?t:t.content,De=t=>t.reduce(((t,e)=>t.concat(Array.isArray(e)?De(e):e)),[]),ke=new Map;Pe((t=>{ke.delete(`${t}_normal`)}));const Ne=(t,e=!1)=>{const s=t.getMetadata().getTag(),n=`${s}_${e?"static":"normal"}`;if(!ke.has(n)){let i;if(e)i=Ie(t.staticAreaStyles);else{const e=(t=>Le[t]?Le[t].join(""):"")(s)||"";i=`${Ie(t.styles)} ${e}`}ke.set(n,i)}return ke.get(n)},Re=new Map;Pe((t=>{Re.delete(`${t}_normal`)}));const Ue=(t,e=!1)=>{let s;const n=e?"staticAreaTemplate":"template",i=e?t.staticAreaItem.shadowRoot:t.shadowRoot,a=((t,e)=>{const s=e.constructor.getUniqueDependencies().map((t=>t.getMetadata().getPureTag())).filter(Ce);return t(e,s,void 0)})(t.constructor[n],t);document.adoptedStyleSheets?i.adoptedStyleSheets=((t,e=!1)=>{const s=`${t.getMetadata().getTag()}_${e?"static":"normal"}`;if(!Re.has(s)){const n=Ne(t,e),i=new CSSStyleSheet;i.replaceSync(n),Re.set(s,[i])}return Re.get(s)})(t.constructor,e):window.ShadyDOM||(s=Ne(t.constructor,e)),t.constructor.render(a,i,s,{host:t})};const je={iw:"he",ji:"yi",in:"id",sh:"sr"},He=(t=>{const e=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(t);return e&&e[2]?e[2].split(/,/):null})("$cldr-rtl-locales:ar,fa,he$")||[],Be=()=>{const t=(A(),y.rtl);return null!==t?!!t:(t=>(t=t&&je[t]||t,He.indexOf(t)>=0))(G()||a())},Ve=t=>{const e=window.document,s=["ltr","rtl"],n=getComputedStyle(t).getPropertyValue("--_ui5_dir");return s.includes(n)?n:s.includes(t.dir)?t.dir:s.includes(e.documentElement.dir)?e.documentElement.dir:s.includes(e.body.dir)?e.body.dir:Be()?"rtl":void 0};class ze extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id)}update(){this._rendered&&(this._updateContentDensity(),this._updateDirection(),Ue(this.ownerElement,!0))}_updateContentDensity(){var t;"compact"===(t=this.ownerElement,getComputedStyle(t).getPropertyValue("--_ui5_content_density"))?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){const t=Ve(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,Ue(this.ownerElement,!0)),await z(),this.shadowRoot}static getTag(){const t="ui5-static-area-item",e=Ee(t);return e?`${t}-${e}`:t}static createInstance(){return customElements.get(ze.getTag())||customElements.define(ze.getTag(),ze),document.createElement(this.getTag())}}const Ze=new WeakMap;const We=(t,e,s)=>{const n=((t,e,s)=>{const n=new MutationObserver(e);return n.observe(t,s),n})(t,e,s);Ze.set(t,n)},Fe=["value-changed"];let qe;const Ge=()=>(void 0===qe&&(A(),qe=y.noConflict),qe),Je=t=>{const e=Ge();return!(t=>Fe.includes(t))(t)&&(!0===e||!(t=>{const e=Ge();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))},Ke=["disabled","title","hidden","role","draggable"],Ye=t=>{if(Ke.includes(t)||t.startsWith("aria"))return!0;return![HTMLElement,Element,Node].some((e=>e.prototype.hasOwnProperty(t)))},Xe=(t,e)=>{if(t.length!==e.length)return!1;for(let s=0;s<t.length;s++)if(t[s]!==e[s])return!1;return!0},Qe=(t,e)=>class extends t{constructor(){super(),e&&e()}};let ts=0;const es=new Map,ss=new Map;function ns(t){this._suppressInvalidation||(this.onInvalidation(t),this._changedState.push(t),j(this),this._eventProvider.fireEvent("invalidate",{...t,target:this}))}class is extends HTMLElement{constructor(){let t;super(),this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new b,this._domRefReadyPromise=new Promise((e=>{t=e})),this._domRefReadyPromise._deferredResolve=t,this._initializeState(),this._upgradeAllProperties(),this.constructor._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id="ui5wc_"+ ++ts),this.__id}async connectedCallback(){this.setAttribute(this.constructor.getMetadata().getPureTag(),"");const t=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!0,t&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&(H(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,"function"==typeof this.onEnterDOM&&this.onEnterDOM())}disconnectedCallback(){const t=this.constructor.getMetadata().slotsAreManaged();var e;this._inDOM=!1,t&&this._stopObservingDOMChildren(),this._fullyConnected&&("function"==typeof this.onExitDOM&&this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),e=this,D.remove(e),L.delete(e)}_startObservingDOMChildren(){if(!this.constructor.getMetadata().hasSlots())return;const t=this.constructor.getMetadata().canSlotText(),e={childList:!0,subtree:t,characterData:t};We(this,this._processChildren.bind(this),e)}_stopObservingDOMChildren(){(t=>{const e=Ze.get(t);e&&((t=>{t.disconnect()})(e),Ze.delete(t))})(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor.getMetadata().getSlots(),e=this.constructor.getMetadata().canSlotText(),s=Array.from(e?this.childNodes:this.children),n=new Map,i=new Map;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;i.set(t,e),n.set(t,[...this._state[t]]),this._clearSlot(e,s)}const a=new Map,r=new Map,o=s.map((async(e,s)=>{const n=(t=>{if(!(t instanceof HTMLElement))return"default";const e=t.getAttribute("slot");if(e){const t=e.match(/^(.+?)-\d+$/);return t?t[1]:e}return"default"})(e),i=t[n];if(void 0===i){const s=Object.keys(t).join(", ");return void console.warn(`Unknown slotName: ${n}, ignoring`,e,`Valid values are: ${s}`)}if(i.individualSlots){const t=(a.get(n)||0)+1;a.set(n,t),e._individualSlot=`${n}-${t}`}if(e instanceof HTMLElement){const t=e.localName;if(t.includes("-")){if(!window.customElements.get(t)){const e=window.customElements.whenDefined(t);let s=es.get(t);s||(s=new Promise((t=>setTimeout(t,1e3))),es.set(t,s)),await Promise.race([e,s])}window.customElements.upgrade(e)}}(e=this.constructor.getMetadata().constructor.validateSlotValue(e,i)).isUI5Element&&i.invalidateOnChildChange&&e.attachInvalidate(this._getChildChangeListener(n)),Ae(e)&&this._attachSlotChange(e,n);const o=i.propertyName||n;r.has(o)?r.get(o).push({child:e,idx:s}):r.set(o,[{child:e,idx:s}])}));await Promise.all(o),r.forEach(((t,e)=>{this._state[e]=t.sort(((t,e)=>t.idx-e.idx)).map((t=>t.child))}));let l=!1;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;Xe(n.get(t),this._state[t])||(ns.call(this,{type:"slot",name:i.get(t),reason:"children"}),l=!0)}l||ns.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,e){const s=e.propertyName||t;this._state[s].forEach((e=>{e&&e.isUI5Element&&e.detachInvalidate(this._getChildChangeListener(t)),Ae(e)&&this._detachSlotChange(e,t)})),this._state[s]=[]}attachInvalidate(t){this._eventProvider.attachEvent("invalidate",t)}detachInvalidate(t){this._eventProvider.detachEvent("invalidate",t)}_onChildChange(t,e){this.constructor.getMetadata().shouldInvalidateOnChildChange(t,e.type,e.name)&&ns.call(this,{type:"slot",name:t,reason:"childchange",child:e.target})}attributeChangedCallback(t,e,s){const n=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),a=ye(i);if(n.hasOwnProperty(a)){const t=n[a].type;t===Boolean?s=null!==s:fe(t,ge)&&(s=t.attributeToProperty(s)),this[a]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;const s=this.constructor.getMetadata().getProperties()[t].type,n=ve(t),i=this.getAttribute(n);s===Boolean?!0===e&&null===i?this.setAttribute(n,""):!1===e&&null!==i&&this.removeAttribute(n):fe(s,ge)?this.setAttribute(n,s.propertyToAttribute(e)):"object"!=typeof e&&i!==e&&this.setAttribute(n,e)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const e=this[t];delete this[t],this[t]=e}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty,this)}_initializeState(){this._state={...this.constructor.getMetadata().getInitialState()}}_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,e){t.addEventListener("slotchange",this._getSlotChangeListener(e))}_detachSlotChange(t,e){t.removeEventListener("slotchange",this._getSlotChangeListener(e))}_onSlotChange(t){ns.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,"function"==typeof this.onBeforeRendering&&this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],this.constructor._needsShadowDOM()&&Ue(this),this.staticAreaItem&&this.staticAreaItem.update(),t&&this._assignIndividualSlotsToChildren(),"function"==typeof this.onAfterRendering&&this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach((t=>{t._individualSlot&&t.setAttribute("slot",t._individualSlot)}))}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if("function"==typeof this._getRealDomRef)return this._getRealDomRef();if(!this.shadowRoot||0===this.shadowRoot.children.length)return;const t=[...this.shadowRoot.children].filter((t=>!["link","style"].includes(t.localName)));return 1!==t.length&&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(){await this._waitForDomRef();const t=this.getFocusDomRef();t&&"function"==typeof t.focus&&t.focus()}fireEvent(t,e,s=!1,n=!0){const i=this._fireEvent(t,e,s,n),a=ye(t);return a!==t?i&&this._fireEvent(a,e,s):i}_fireEvent(t,e,s=!1,n=!0){const i=new CustomEvent(`ui5-${t}`,{detail:e,composed:!1,bubbles:n,cancelable:s}),a=this.dispatchEvent(i);if(Je(t))return a;const r=new CustomEvent(t,{detail:e,composed:!1,bubbles:n,cancelable:s});return this.dispatchEvent(r)&&a}getSlottedNodes(t){return this[t].reduce(((t,e)=>t.concat(be(e))),[])}get effectiveDir(){var t;return t=this.constructor,P.add(t),Ve(this)}get isUI5Element(){return!0}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=ze.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||Lt("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,e=this.getMetadata().slotsAreManaged(),s=this.getMetadata().getProperties();for(const[e,n]of Object.entries(s)){if(Ye(e)||console.warn(`"${e}" is not a valid property name. Use a name that does not collide with DOM APIs`),n.type===Boolean&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All booleans are false by default.`);if(n.type===Array)throw new Error(`Wrong type for property "${e}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(n.type===Object&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All properties of type "Object" are empty objects by default.`);if(n.multiple&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,e,{get(){if(void 0!==this._state[e])return this._state[e];const t=n.defaultValue;return n.type!==Boolean&&(n.type===String?t:n.multiple?[]:t)},set(t){let s;t=this.constructor.getMetadata().constructor.validatePropertyValue(t,n);const i=this._state[e];s=n.multiple&&n.compareValues?!Xe(i,t):fe(n.type,ge)?!n.type.valuesAreEqual(i,t):i!==t,s&&(this._state[e]=t,ns.call(this,{type:"property",name:e,newValue:t,oldValue:i}),this._updateAttribute(e,t))}})}if(e){const e=this.getMetadata().getSlots();for(const[s,n]of Object.entries(e)){Ye(s)||console.warn(`"${s}" is not a valid property name. Use a name that does not collide with DOM APIs`);const e=n.propertyName||s;Object.defineProperty(t,e,{get(){return void 0!==this._state[e]?this._state[e]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get metadata(){return{}}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!ss.has(this)){const t=this.dependencies.filter(((t,e,s)=>s.indexOf(t)===e));ss.set(this,t)}return ss.get(this)}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map((t=>t.define())))}static async onDefine(){return Promise.resolve()}static async define(){await pe(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=this.getMetadata().getAltTag(),s=(t=>E.has(t))(t),n=customElements.get(t);return n&&!s?(t=>{M.add(t),O||(O=setTimeout((()=>{x(),O=void 0}),1e3))})(t):n||(this._generateAccessors(),T(t),window.customElements.define(t,this),e&&!customElements.get(e)&&(T(e),window.customElements.define(e,Qe(this,(()=>{console.log(`The ${e} tag is deprecated and will be removed in the next release, please use ${t} instead.`)}))))),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==is;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=g({},...t);return this._metadata=new Me(s),this._metadata}}
|
|
10
2
|
/**
|
|
11
3
|
* @license
|
|
12
|
-
* Copyright
|
|
13
|
-
*
|
|
14
|
-
|
|
15
|
-
* The complete set of authors may be found at
|
|
16
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
17
|
-
* The complete set of contributors may be found at
|
|
18
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
19
|
-
* Code distributed by Google as part of the polymer project is also
|
|
20
|
-
* subject to an additional IP rights grant found at
|
|
21
|
-
* http://polymer.github.io/PATENTS.txt
|
|
22
|
-
*/const zt=new WeakMap,qt=t=>"function"==typeof t&&zt.has(t),Jt=void 0!==window.customElements&&void 0!==window.customElements.polyfillWrapFlushCallback,Gt=(t,e,s=null)=>{for(;e!==s;){const s=e.nextSibling;t.removeChild(e),e=s}},Xt={},Zt={},Yt=`{{lit-${String(Math.random()).slice(2)}}}`,Kt=`\x3c!--${Yt}--\x3e`,Qt=new RegExp(`${Yt}|${Kt}`),te="$lit$";class ee{constructor(t,e){this.parts=[],this.element=e;const s=[],n=[],i=document.createTreeWalker(e.content,133,null,!1);let o=0,r=-1,a=0;const{strings:l,values:{length:c}}=t;for(;a<c;){const t=i.nextNode();if(null!==t){if(r++,1===t.nodeType){if(t.hasAttributes()){const e=t.attributes,{length:s}=e;let n=0;for(let t=0;t<s;t++)se(e[t].name,te)&&n++;for(;n-- >0;){const e=l[a],s=oe.exec(e)[2],n=s.toLowerCase()+te,i=t.getAttribute(n);t.removeAttribute(n);const o=i.split(Qt);this.parts.push({type:"attribute",index:r,name:s,strings:o}),a+=o.length-1}}"TEMPLATE"===t.tagName&&(n.push(t),i.currentNode=t.content)}else if(3===t.nodeType){const e=t.data;if(e.indexOf(Yt)>=0){const n=t.parentNode,i=e.split(Qt),o=i.length-1;for(let e=0;e<o;e++){let s,o=i[e];if(""===o)s=ie();else{const t=oe.exec(o);null!==t&&se(t[2],te)&&(o=o.slice(0,t.index)+t[1]+t[2].slice(0,-te.length)+t[3]),s=document.createTextNode(o)}n.insertBefore(s,t),this.parts.push({type:"node",index:++r})}""===i[o]?(n.insertBefore(ie(),t),s.push(t)):t.data=i[o],a+=o}}else if(8===t.nodeType)if(t.data===Yt){const e=t.parentNode;null!==t.previousSibling&&r!==o||(r++,e.insertBefore(ie(),t)),o=r,this.parts.push({type:"node",index:r}),null===t.nextSibling?t.data="":(s.push(t),r--),a++}else{let e=-1;for(;-1!==(e=t.data.indexOf(Yt,e+1));)this.parts.push({type:"node",index:-1}),a++}}else i.currentNode=n.pop()}for(const t of s)t.parentNode.removeChild(t)}}const se=(t,e)=>{const s=t.length-e.length;return s>=0&&t.slice(s)===e},ne=t=>-1!==t.index,ie=()=>document.createComment(""),oe=/([ \x09\x0a\x0c\x0d])([^\0-\x1F\x7F-\x9F "'>=/]+)([ \x09\x0a\x0c\x0d]*=[ \x09\x0a\x0c\x0d]*(?:[^ \x09\x0a\x0c\x0d"'`<>=]*|"[^"]*|'[^']*))$/;
|
|
4
|
+
* Copyright 2017 Google LLC
|
|
5
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
6
|
+
*/var as;const rs=globalThis.trustedTypes,os=rs?rs.createPolicy("lit-html",{createHTML:t=>t}):void 0,ls=`lit$${(Math.random()+"").slice(9)}$`,cs="?"+ls,ds=`<${cs}>`,hs=document,us=(t="")=>hs.createComment(t),ps=t=>null===t||"object"!=typeof t&&"function"!=typeof t,gs=Array.isArray,fs=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ms=/-->/g,_s=/>/g,ys=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,vs=/'/g,ws=/"/g,As=/^(?:script|style|textarea)$/i,bs=(t=>(e,...s)=>({_$litType$:t,strings:e,values:s}))(1),$s=Symbol.for("lit-noChange"),Ss=Symbol.for("lit-nothing"),Cs=new WeakMap,Es=hs.createTreeWalker(hs,129,null,!1),Ms=(t,e)=>{const s=t.length-1,n=[];let i,a=2===e?"<svg>":"",r=fs;for(let e=0;e<s;e++){const s=t[e];let o,l,c=-1,d=0;for(;d<s.length&&(r.lastIndex=d,l=r.exec(s),null!==l);)d=r.lastIndex,r===fs?"!--"===l[1]?r=ms:void 0!==l[1]?r=_s:void 0!==l[2]?(As.test(l[2])&&(i=RegExp("</"+l[2],"g")),r=ys):void 0!==l[3]&&(r=ys):r===ys?">"===l[0]?(r=null!=i?i:fs,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,o=l[1],r=void 0===l[3]?ys:'"'===l[3]?ws:vs):r===ws||r===vs?r=ys:r===ms||r===_s?r=fs:(r=ys,i=void 0);const h=r===ys&&t[e+1].startsWith("/>")?" ":"";a+=r===fs?s+ds:c>=0?(n.push(o),s.slice(0,c)+"$lit$"+s.slice(c)+ls+h):s+ls+(-2===c?(n.push(void 0),e):h)}const o=a+(t[s]||"<?>")+(2===e?"</svg>":"");return[void 0!==os?os.createHTML(o):o,n]};class Os{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let i=0,a=0;const r=t.length-1,o=this.parts,[l,c]=Ms(t,e);if(this.el=Os.createElement(l,s),Es.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=Es.nextNode())&&o.length<r;){if(1===n.nodeType){if(n.hasAttributes()){const t=[];for(const e of n.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(ls)){const s=c[a++];if(t.push(e),void 0!==s){const t=n.getAttribute(s.toLowerCase()+"$lit$").split(ls),e=/([.?@])?(.*)/.exec(s);o.push({type:1,index:i,name:e[2],strings:t,ctor:"."===e[1]?Is:"?"===e[1]?Ds:"@"===e[1]?ks:Ls})}else o.push({type:6,index:i})}for(const e of t)n.removeAttribute(e)}if(As.test(n.tagName)){const t=n.textContent.split(ls),e=t.length-1;if(e>0){n.textContent=rs?rs.emptyScript:"";for(let s=0;s<e;s++)n.append(t[s],us()),Es.nextNode(),o.push({type:2,index:++i});n.append(t[e],us())}}}else if(8===n.nodeType)if(n.data===cs)o.push({type:2,index:i});else{let t=-1;for(;-1!==(t=n.data.indexOf(ls,t+1));)o.push({type:7,index:i}),t+=ls.length-1}i++}}static createElement(t,e){const s=hs.createElement("template");return s.innerHTML=t,s}}function Ts(t,e,s=t,n){var i,a,r,o;if(e===$s)return e;let l=void 0!==n?null===(i=s._$Cl)||void 0===i?void 0:i[n]:s._$Cu;const c=ps(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(a=null==l?void 0:l._$AO)||void 0===a||a.call(l,!1),void 0===c?l=void 0:(l=new c(t),l._$AT(t,s,n)),void 0!==n?(null!==(r=(o=s)._$Cl)&&void 0!==r?r:o._$Cl=[])[n]=l:s._$Cu=l),void 0!==l&&(e=Ts(t,l._$AS(t,e.values),l,n)),e}class xs{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:s},parts:n}=this._$AD,i=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:hs).importNode(s,!0);Es.currentNode=i;let a=Es.nextNode(),r=0,o=0,l=n[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new Ps(a,a.nextSibling,this,t):1===l.type?e=new l.ctor(a,l.name,l.strings,this,t):6===l.type&&(e=new Ns(a,this,t)),this.v.push(e),l=n[++o]}r!==(null==l?void 0:l.index)&&(a=Es.nextNode(),r++)}return i}m(t){let e=0;for(const s of this.v)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}}class Ps{constructor(t,e,s,n){var i;this.type=2,this._$AH=Ss,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=n,this._$Cg=null===(i=null==n?void 0:n.isConnected)||void 0===i||i}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=Ts(this,t,e),ps(t)?t===Ss||null==t||""===t?(this._$AH!==Ss&&this._$AR(),this._$AH=Ss):t!==this._$AH&&t!==$s&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.S(t):(t=>{var e;return gs(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.M(t):this.$(t)}A(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}S(t){this._$AH!==t&&(this._$AR(),this._$AH=this.A(t))}$(t){this._$AH!==Ss&&ps(this._$AH)?this._$AA.nextSibling.data=t:this.S(hs.createTextNode(t)),this._$AH=t}T(t){var e;const{values:s,_$litType$:n}=t,i="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=Os.createElement(n.h,this.options)),n);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===i)this._$AH.m(s);else{const t=new xs(i,this),e=t.p(this.options);t.m(s),this.S(e),this._$AH=t}}_$AC(t){let e=Cs.get(t.strings);return void 0===e&&Cs.set(t.strings,e=new Os(t)),e}M(t){gs(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let s,n=0;for(const i of t)n===e.length?e.push(s=new Ps(this.A(us()),this.A(us()),this,this.options)):s=e[n],s._$AI(i),n++;n<e.length&&(this._$AR(s&&s._$AB.nextSibling,n),e.length=n)}_$AR(t=this._$AA.nextSibling,e){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class Ls{constructor(t,e,s,n,i){this.type=1,this._$AH=Ss,this._$AN=void 0,this.element=t,this.name=e,this._$AM=n,this.options=i,s.length>2||""!==s[0]||""!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=Ss}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,s,n){const i=this.strings;let a=!1;if(void 0===i)t=Ts(this,t,e,0),a=!ps(t)||t!==this._$AH&&t!==$s,a&&(this._$AH=t);else{const n=t;let r,o;for(t=i[0],r=0;r<i.length-1;r++)o=Ts(this,n[s+r],e,r),o===$s&&(o=this._$AH[r]),a||(a=!ps(o)||o!==this._$AH[r]),o===Ss?t=Ss:t!==Ss&&(t+=(null!=o?o:"")+i[r+1]),this._$AH[r]=o}a&&!n&&this.k(t)}k(t){t===Ss?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class Is extends Ls{constructor(){super(...arguments),this.type=3}k(t){this.element[this.name]=t===Ss?void 0:t}}class Ds extends Ls{constructor(){super(...arguments),this.type=4}k(t){t&&t!==Ss?this.element.setAttribute(this.name,""):this.element.removeAttribute(this.name)}}class ks extends Ls{constructor(t,e,s,n,i){super(t,e,s,n,i),this.type=5}_$AI(t,e=this){var s;if((t=null!==(s=Ts(this,t,e,0))&&void 0!==s?s:Ss)===$s)return;const n=this._$AH,i=t===Ss&&n!==Ss||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,a=t!==Ss&&(n===Ss||i);i&&this.element.removeEventListener(this.name,this,n),a&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,s;"function"==typeof this._$AH?this._$AH.call(null!==(s=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class Ns{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){Ts(this,t)}}const Rs=window.litHtmlPolyfillSupport;null==Rs||Rs(Os,Ps),(null!==(as=globalThis.litHtmlVersions)&&void 0!==as?as:globalThis.litHtmlVersions=[]).push("2.0.1");
|
|
23
7
|
/**
|
|
24
8
|
* @license
|
|
25
|
-
* Copyright
|
|
26
|
-
*
|
|
27
|
-
* http://polymer.github.io/LICENSE.txt
|
|
28
|
-
* The complete set of authors may be found at
|
|
29
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
30
|
-
* The complete set of contributors may be found at
|
|
31
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
32
|
-
* Code distributed by Google as part of the polymer project is also
|
|
33
|
-
* subject to an additional IP rights grant found at
|
|
34
|
-
* http://polymer.github.io/PATENTS.txt
|
|
9
|
+
* Copyright 2020 Google LLC
|
|
10
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
35
11
|
*/
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* @license
|
|
39
|
-
* Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
|
|
40
|
-
* This code may only be used under the BSD style license found at
|
|
41
|
-
* http://polymer.github.io/LICENSE.txt
|
|
42
|
-
* The complete set of authors may be found at
|
|
43
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
44
|
-
* The complete set of contributors may be found at
|
|
45
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
46
|
-
* Code distributed by Google as part of the polymer project is also
|
|
47
|
-
* subject to an additional IP rights grant found at
|
|
48
|
-
* http://polymer.github.io/PATENTS.txt
|
|
49
|
-
*/const ae=` ${Yt} `;class le{constructor(t,e,s,n){this.strings=t,this.values=e,this.type=s,this.processor=n}getHTML(){const t=this.strings.length-1;let e="",s=!1;for(let n=0;n<t;n++){const t=this.strings[n],i=t.lastIndexOf("\x3c!--");s=(i>-1||s)&&-1===t.indexOf("--\x3e",i+1);const o=oe.exec(t);e+=null===o?t+(s?ae:Kt):t.substr(0,o.index)+o[1]+o[2]+te+o[3]+Yt}return e+=this.strings[t],e}getTemplateElement(){const t=document.createElement("template");return t.innerHTML=this.getHTML(),t}}
|
|
50
|
-
/**
|
|
51
|
-
* @license
|
|
52
|
-
* Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
|
|
53
|
-
* This code may only be used under the BSD style license found at
|
|
54
|
-
* http://polymer.github.io/LICENSE.txt
|
|
55
|
-
* The complete set of authors may be found at
|
|
56
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
57
|
-
* The complete set of contributors may be found at
|
|
58
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
59
|
-
* Code distributed by Google as part of the polymer project is also
|
|
60
|
-
* subject to an additional IP rights grant found at
|
|
61
|
-
* http://polymer.github.io/PATENTS.txt
|
|
62
|
-
*/const ce=t=>null===t||!("object"==typeof t||"function"==typeof t),de=t=>Array.isArray(t)||!(!t||!t[Symbol.iterator]);class ue{constructor(t,e,s){this.dirty=!0,this.element=t,this.name=e,this.strings=s,this.parts=[];for(let t=0;t<s.length-1;t++)this.parts[t]=this._createPart()}_createPart(){return new he(this)}_getValue(){const t=this.strings,e=t.length-1;let s="";for(let n=0;n<e;n++){s+=t[n];const e=this.parts[n];if(void 0!==e){const t=e.value;if(ce(t)||!de(t))s+="string"==typeof t?t:String(t);else for(const e of t)s+="string"==typeof e?e:String(e)}}return s+=t[e],s}commit(){this.dirty&&(this.dirty=!1,this.element.setAttribute(this.name,this._getValue()))}}class he{constructor(t){this.value=void 0,this.committer=t}setValue(t){t===Xt||ce(t)&&t===this.value||(this.value=t,qt(t)||(this.committer.dirty=!0))}commit(){for(;qt(this.value);){const t=this.value;this.value=Xt,t(this)}this.value!==Xt&&this.committer.commit()}}class pe{constructor(t){this.value=void 0,this.__pendingValue=void 0,this.options=t}appendInto(t){this.startNode=t.appendChild(ie()),this.endNode=t.appendChild(ie())}insertAfterNode(t){this.startNode=t,this.endNode=t.nextSibling}appendIntoPart(t){t.__insert(this.startNode=ie()),t.__insert(this.endNode=ie())}insertAfterPart(t){t.__insert(this.startNode=ie()),this.endNode=t.endNode,t.endNode=this.startNode}setValue(t){this.__pendingValue=t}commit(){for(;qt(this.__pendingValue);){const t=this.__pendingValue;this.__pendingValue=Xt,t(this)}const t=this.__pendingValue;t!==Xt&&(ce(t)?t!==this.value&&this.__commitText(t):t instanceof le?this.__commitTemplateResult(t):t instanceof Node?this.__commitNode(t):de(t)?this.__commitIterable(t):t===Zt?(this.value=Zt,this.clear()):this.__commitText(t))}__insert(t){this.endNode.parentNode.insertBefore(t,this.endNode)}__commitNode(t){this.value!==t&&(this.clear(),this.__insert(t),this.value=t)}__commitText(t){const e=this.startNode.nextSibling,s="string"==typeof(t=null==t?"":t)?t:String(t);e===this.endNode.previousSibling&&3===e.nodeType?e.data=s:this.__commitNode(document.createTextNode(s)),this.value=t}__commitTemplateResult(t){const e=this.options.templateFactory(t);if(this.value instanceof re&&this.value.template===e)this.value.update(t.values);else{const s=new re(e,t.processor,this.options),n=s._clone();s.update(t.values),this.__commitNode(n),this.value=s}}__commitIterable(t){Array.isArray(this.value)||(this.value=[],this.clear());const e=this.value;let s,n=0;for(const i of t)s=e[n],void 0===s&&(s=new pe(this.options),e.push(s),0===n?s.appendIntoPart(this):s.insertAfterPart(e[n-1])),s.setValue(i),s.commit(),n++;n<e.length&&(e.length=n,this.clear(s&&s.endNode))}clear(t=this.startNode){Gt(this.startNode.parentNode,t.nextSibling,this.endNode)}}class me{constructor(t,e,s){if(this.value=void 0,this.__pendingValue=void 0,2!==s.length||""!==s[0]||""!==s[1])throw new Error("Boolean attributes can only contain a single expression");this.element=t,this.name=e,this.strings=s}setValue(t){this.__pendingValue=t}commit(){for(;qt(this.__pendingValue);){const t=this.__pendingValue;this.__pendingValue=Xt,t(this)}if(this.__pendingValue===Xt)return;const t=!!this.__pendingValue;this.value!==t&&(t?this.element.setAttribute(this.name,""):this.element.removeAttribute(this.name),this.value=t),this.__pendingValue=Xt}}class fe extends ue{constructor(t,e,s){super(t,e,s),this.single=2===s.length&&""===s[0]&&""===s[1]}_createPart(){return new ge(this)}_getValue(){return this.single?this.parts[0].value:super._getValue()}commit(){this.dirty&&(this.dirty=!1,this.element[this.name]=this._getValue())}}class ge extends he{}let we=!1;try{const t={get capture(){return we=!0,!1}};window.addEventListener("test",t,t),window.removeEventListener("test",t,t)}catch(t){}class ye{constructor(t,e,s){this.value=void 0,this.__pendingValue=void 0,this.element=t,this.eventName=e,this.eventContext=s,this.__boundHandleEvent=t=>this.handleEvent(t)}setValue(t){this.__pendingValue=t}commit(){for(;qt(this.__pendingValue);){const t=this.__pendingValue;this.__pendingValue=Xt,t(this)}if(this.__pendingValue===Xt)return;const t=this.__pendingValue,e=this.value,s=null==t||null!=e&&(t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive),n=null!=t&&(null==e||s);s&&this.element.removeEventListener(this.eventName,this.__boundHandleEvent,this.__options),n&&(this.__options=_e(t),this.element.addEventListener(this.eventName,this.__boundHandleEvent,this.__options)),this.value=t,this.__pendingValue=Xt}handleEvent(t){"function"==typeof this.value?this.value.call(this.eventContext||this.element,t):this.value.handleEvent(t)}}const _e=t=>t&&(we?{capture:t.capture,passive:t.passive,once:t.once}:t.capture);
|
|
63
|
-
/**
|
|
64
|
-
* @license
|
|
65
|
-
* Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
|
|
66
|
-
* This code may only be used under the BSD style license found at
|
|
67
|
-
* http://polymer.github.io/LICENSE.txt
|
|
68
|
-
* The complete set of authors may be found at
|
|
69
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
70
|
-
* The complete set of contributors may be found at
|
|
71
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
72
|
-
* Code distributed by Google as part of the polymer project is also
|
|
73
|
-
* subject to an additional IP rights grant found at
|
|
74
|
-
* http://polymer.github.io/PATENTS.txt
|
|
75
|
-
*/const ve=new class{handleAttributeExpressions(t,e,s,n){const i=e[0];if("."===i){return new fe(t,e.slice(1),s).parts}return"@"===i?[new ye(t,e.slice(1),n.eventContext)]:"?"===i?[new me(t,e.slice(1),s)]:new ue(t,e,s).parts}handleTextExpression(t){return new pe(t)}};
|
|
76
|
-
/**
|
|
77
|
-
* @license
|
|
78
|
-
* Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
|
|
79
|
-
* This code may only be used under the BSD style license found at
|
|
80
|
-
* http://polymer.github.io/LICENSE.txt
|
|
81
|
-
* The complete set of authors may be found at
|
|
82
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
83
|
-
* The complete set of contributors may be found at
|
|
84
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
85
|
-
* Code distributed by Google as part of the polymer project is also
|
|
86
|
-
* subject to an additional IP rights grant found at
|
|
87
|
-
* http://polymer.github.io/PATENTS.txt
|
|
88
|
-
*/function be(t){let e=Se.get(t.type);void 0===e&&(e={stringsArray:new WeakMap,keyString:new Map},Se.set(t.type,e));let s=e.stringsArray.get(t.strings);if(void 0!==s)return s;const n=t.strings.join(Yt);return s=e.keyString.get(n),void 0===s&&(s=new ee(t,t.getTemplateElement()),e.keyString.set(n,s)),e.stringsArray.set(t.strings,s),s}const Se=new Map,Ae=new WeakMap;
|
|
12
|
+
const Us=new Map,js=(t=>(e,...s)=>{var n;const i=s.length;let a,r;const o=[],l=[];let c,d=0,h=!1;for(;d<i;){for(c=e[d];d<i&&void 0!==(r=s[d],a=null===(n=r)||void 0===n?void 0:n._$litStatic$);)c+=a+e[++d],h=!0;l.push(r),o.push(c),d++}if(d===i&&o.push(e[i]),h){const t=o.join("$$lit$$");void 0===(e=Us.get(t))&&Us.set(t,e=o),s=l}return t(e,...s)})(bs),Hs=2;
|
|
89
13
|
/**
|
|
90
14
|
* @license
|
|
91
|
-
* Copyright
|
|
92
|
-
*
|
|
93
|
-
* http://polymer.github.io/LICENSE.txt
|
|
94
|
-
* The complete set of authors may be found at
|
|
95
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
96
|
-
* The complete set of contributors may be found at
|
|
97
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
98
|
-
* Code distributed by Google as part of the polymer project is also
|
|
99
|
-
* subject to an additional IP rights grant found at
|
|
100
|
-
* http://polymer.github.io/PATENTS.txt
|
|
15
|
+
* Copyright 2017 Google LLC
|
|
16
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
101
17
|
*/
|
|
102
18
|
/**
|
|
103
19
|
* @license
|
|
104
|
-
* Copyright
|
|
105
|
-
*
|
|
106
|
-
* http://polymer.github.io/LICENSE.txt
|
|
107
|
-
* The complete set of authors may be found at
|
|
108
|
-
* http://polymer.github.io/AUTHORS.txt
|
|
109
|
-
* The complete set of contributors may be found at
|
|
110
|
-
* http://polymer.github.io/CONTRIBUTORS.txt
|
|
111
|
-
* Code distributed by Google as part of the polymer project is also
|
|
112
|
-
* subject to an additional IP rights grant found at
|
|
113
|
-
* http://polymer.github.io/PATENTS.txt
|
|
20
|
+
* Copyright 2017 Google LLC
|
|
21
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
114
22
|
*/
|
|
115
|
-
(
|
|
23
|
+
class Bs extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){if(super(t),this.it=Ss,t.type!==Hs)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===Ss||null==t)return this.vt=void 0,this.it=t;if(t===$s)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.vt;this.it=t;const e=[t];return e.raw=e,this.vt={_$litType$:this.constructor.resultType,strings:e,values:[]}}}Bs.directiveName="unsafeHTML",Bs.resultType=1;const Vs=(t,e,s,{host:n}={})=>{"string"==typeof s?t=js`<style>${s}</style>${t}`:Array.isArray(s)&&s.length&&(t=js`${s.map((t=>js`<link type="text/css" rel="stylesheet" href="${t}">`))}${t}`),((t,e,s)=>{var n,i;const a=null!==(n=null==s?void 0:s.renderBefore)&&void 0!==n?n:e;let r=a._$litPart$;if(void 0===r){const t=null!==(i=null==s?void 0:s.renderBefore)&&void 0!==i?i:null;a._$litPart$=r=new Ps(e.insertBefore(us(),t),t,void 0,null!=s?s:{})}r._$AI(t)})(t,e,{host:n})},zs={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 Zs extends is{static get metadata(){return zs}static get render(){return Vs}static get template(){return t=>js`<div><p>
|
|
116
24
|
<slot></slot>
|
|
117
25
|
<slot name="other"></slot>
|
|
118
26
|
<slot name="individual-1"></slot>
|
|
119
27
|
<slot name="individual-2"></slot>
|
|
120
|
-
</p></div>`}static get styles(){return":host {\n display: inline-block;\n border: 1px solid black;\n color: var(--var1);\n }"}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}
|
|
28
|
+
</p></div>`}static get styles(){return":host {\n display: inline-block;\n border: 1px solid black;\n color: var(--var1);\n }"}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}Zs.define();const Ws={tag:"ui5-test-no-shadow"};(class extends is{static get metadata(){return Ws}}).define();const Fs={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};(class extends is{static get metadata(){return Fs}static get render(){return Vs}static get template(){return t=>js`<div>
|
|
121
29
|
<slot></slot>
|
|
122
|
-
</div>`}}).define();const
|
|
123
|
-
<div>
|
|
30
|
+
</div>`}}).define();const qs={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};(class extends is{static get metadata(){return qs}static get render(){return Vs}static get template(){return t=>js`<div></div>`}}).define();const Gs={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};(class extends is{static get metadata(){return Gs}static get render(){return Vs}static get template(){return t=>js`
|
|
31
|
+
<div dir=${t.effectiveDir}>
|
|
124
32
|
WithStaticArea works!
|
|
125
|
-
</div>`}static get staticAreaTemplate(){return t=>
|
|
33
|
+
</div>`}static get staticAreaTemplate(){return t=>js`
|
|
126
34
|
<div class="ui5-with-static-area-content">
|
|
127
35
|
Static area content.
|
|
128
|
-
</div>`}static get styles(){return"\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tborder: 1px solid black;\n\t\t\t\tcolor: red;\n\t\t\t}"}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(){}}).define();const
|
|
36
|
+
</div>`}static get styles(){return"\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tborder: 1px solid black;\n\t\t\t\tcolor: red;\n\t\t\t}"}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(){}}).define();const Js={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};(class extends Zs{static get metadata(){return Js}}).define();Tt("@ui5/webcomponents-base-test","sap_fiori_3",(()=>":root{ --var1: red; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_dark",(()=>":root{ --var1: green; }")),Tt("@ui5/webcomponents-base-test","sap_belize",(()=>":root{ --var1: blue; }")),Tt("@ui5/webcomponents-base-test","sap_belize_hcb",(()=>":root{ --var1: orange; }")),Tt("@ui5/webcomponents-base-test","sap_belize_hcw",(()=>":root{ --var1: orange; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_hcb",(()=>":root{ --var1: yellow; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_hcw",(()=>":root{ --var1: yellow; }"));const Ks=navigator.userAgent,Ys=/(msie|trident)/i.test(Ks),Xs=!Ys&&/(Chrome|CriOS)/.test(Ks);!Ys&&!Xs&&/(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(Ks),!Ys&&/webkit/.test(Ks);!(-1!==navigator.platform.indexOf("Win"))&&/Android/.test(Ks)&&/(?=android)(?=.*mobile)/i.test(Ks),/ipad/i.test(Ks);const Qs=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,tn=new Map;class en{constructor(t){this.packageName=t}getText(t,...e){if("string"==typeof t&&(t={key:t,defaultText:t}),!t||!t.key)return"";const s=(n=this.packageName,lt.get(n));var n;s&&!s[t.key]&&console.warn(`Key ${t.key} not found in the i18n bundle, the default text will be used`);const i=s&&s[t.key]?s[t.key]:t.defaultText||t.key;return a=(a=e)||[],i.replace(Qs,((t,e,s,n,i)=>{if(e)return"'";if(s)return s.replace(/''/g,"'");if(n)return String(a[parseInt(n)]);throw new Error(`[i18n]: pattern syntax error at pos ${i}`)}));var a}}let sn;const nn={Gregorian:"Gregorian",Islamic:"Islamic",Japanese:"Japanese",Buddhist:"Buddhist",Persian:"Persian"};class an extends ge{static isValid(t){return!!nn[t]}}let rn;an.generateTypeAccessors(nn);let on;const ln=new b;window.isIE=()=>Ys,window.registerThemePropertiesLoader=Tt,window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:()=>(void 0===sn&&(A(),sn=y.animationMode),sn),getLanguage:G,getTheme:Ft,setTheme:qt,getNoConflict:Ge,setNoConflict:t=>{qe=t},getCalendarType:()=>(void 0===rn&&(A(),rn=y.calendarType),an.isValid(rn)?rn:an.Gregorian),getRTL:Be,getFirstDayOfWeek:()=>(void 0===on&&(A(),on=y.formatSettings),on.firstDayOfWeek)},getIconNames:async()=>(await Xt("edit"),await Xt("tnt/arrow"),await Xt("business-suite/3d"),Array.from(Jt.keys())),registerI18nLoader:(t,e,s)=>{const n=`${t}/${e}`;dt.set(n,s)},getI18nBundle:async t=>(await pt(t),(t=>{if(tn.has(t))return tn.get(t);const e=new en(t);return tn.set(t,e),e})(t)),renderFinished:z,applyDirection:async()=>{const t=ln.fireEvent("directionChange");await Promise.all(t),await W({rtlAware:!0})},EventProvider:b};
|
|
129
37
|
//# sourceMappingURL=bundle.esm.js.map
|