@ui5/webcomponents-base 0.0.0-6ef02a35f → 0.0.0-7e7d9ea6f
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 -2
- package/CHANGELOG.md +225 -0
- package/README.md +53 -7
- package/bundle.esm.js +13 -11
- package/dist/Boot.js +34 -18
- package/dist/CSP.js +59 -0
- package/dist/CustomElementsRegistry.js +60 -4
- package/dist/CustomElementsScope.js +20 -98
- package/dist/CustomElementsScopeUtils.js +108 -0
- package/dist/Device.js +20 -1
- package/dist/EventProvider.js +19 -25
- package/dist/FeaturesRegistry.js +4 -1
- package/dist/FontFace.js +7 -95
- package/dist/InitialConfiguration.js +11 -7
- package/dist/Keys.js +56 -0
- package/dist/ManagedStyles.js +83 -0
- package/dist/Render.js +3 -1
- package/dist/Runtimes.js +107 -0
- package/dist/StaticAreaItem.js +15 -10
- package/dist/SystemCSSVars.js +4 -25
- package/dist/UI5Element.js +59 -60
- package/dist/UI5ElementMetadata.js +47 -6
- package/dist/asset-registries/Icons.js +22 -8
- package/dist/asset-registries/Illustrations.js +10 -3
- package/dist/asset-registries/LocaleData.js +18 -4
- package/dist/asset-registries/Themes.js +6 -2
- package/dist/asset-registries/i18n.js +3 -1
- package/dist/assets/bundle.esm.691f93f5.js +43 -0
- package/dist/assets-meta/IconCollectionsAlias.js +18 -0
- package/dist/config/Icons.js +52 -0
- package/dist/config/Theme.js +25 -0
- package/dist/css/BusyIndicator.css +80 -0
- package/dist/css/FontFace.css +75 -0
- package/dist/css/OverrideFontFace.css +32 -0
- package/dist/css/SystemCSSVars.css +17 -0
- package/dist/delegate/ItemNavigation.js +75 -4
- package/dist/features/F6Navigation.js +110 -0
- package/dist/features/OpenUI5Enablement.js +119 -0
- package/dist/generated/AssetParameters.js +1 -1
- package/dist/generated/VersionInfo.js +10 -0
- package/dist/generated/css/BusyIndicator.css.js +5 -0
- package/dist/generated/css/FontFace.css.js +5 -0
- package/dist/generated/css/OverrideFontFace.css.js +5 -0
- package/dist/generated/css/SystemCSSVars.css.js +5 -0
- package/dist/i18nBundle.js +33 -2
- package/dist/renderer/LitRenderer.js +33 -12
- package/dist/renderer/directives/style-map.js +72 -0
- package/dist/renderer/executeTemplate.js +19 -2
- package/dist/sap/base/Log.js +2 -10
- package/dist/sap/base/assert.js +1 -5
- package/dist/sap/base/security/encodeCSS.js +14 -0
- package/dist/sap/base/security/encodeXML.js +23 -0
- package/dist/sap/base/strings/toHex.js +8 -0
- package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
- package/dist/theming/CustomStyle.js +23 -3
- package/dist/theming/applyTheme.js +11 -10
- package/dist/theming/getEffectiveLinksHrefs.js +27 -0
- package/dist/theming/getEffectiveStyle.js +9 -0
- package/dist/theming/getStylesString.js +4 -2
- package/dist/theming/getThemeDesignerTheme.js +25 -5
- package/dist/theming/preloadLinks.js +23 -0
- package/dist/types/DataType.js +12 -0
- package/dist/types/Float.js +4 -0
- package/dist/types/Integer.js +4 -0
- package/dist/updateShadowRoot.js +9 -6
- package/dist/util/Caret.js +1 -14
- package/dist/util/ColorConversion.js +30 -2
- package/dist/util/FocusableElements.js +8 -6
- package/dist/util/InvisibleMessage.js +20 -9
- package/dist/util/TabbableElements.js +4 -0
- package/dist/util/createLinkInHead.js +19 -0
- package/dist/util/escapeRegex.js +10 -0
- package/dist/util/generateHighlightedMarkup.js +42 -0
- package/dist/util/getNormalizedTarget.js +16 -0
- package/dist/util/isDefaultSlotProvided.js +11 -0
- package/dist/util/isNodeHidden.js +1 -1
- package/hash.txt +1 -1
- package/lib/generate-asset-parameters/index.js +8 -5
- package/lib/generate-styles/index.js +26 -0
- package/lib/generate-version-info/index.js +32 -0
- package/package-scripts.js +25 -31
- package/package.json +11 -12
- package/src/Boot.js +34 -18
- package/src/CSP.js +59 -0
- package/src/CustomElementsRegistry.js +60 -4
- package/src/CustomElementsScope.js +20 -98
- package/src/CustomElementsScopeUtils.js +108 -0
- package/src/Device.js +20 -1
- package/src/EventProvider.js +19 -25
- package/src/FeaturesRegistry.js +4 -1
- package/src/FontFace.js +7 -95
- package/src/InitialConfiguration.js +11 -7
- package/src/Keys.js +56 -0
- package/src/ManagedStyles.js +83 -0
- package/src/Render.js +3 -1
- package/src/Runtimes.js +107 -0
- package/src/StaticAreaItem.js +15 -10
- package/src/SystemCSSVars.js +4 -25
- package/src/UI5Element.js +59 -60
- package/src/UI5ElementMetadata.js +47 -6
- package/src/asset-registries/Icons.js +22 -8
- package/src/asset-registries/Illustrations.js +10 -3
- package/src/asset-registries/LocaleData.js +18 -4
- package/src/asset-registries/Themes.js +6 -2
- package/src/asset-registries/i18n.js +3 -1
- package/src/assets-meta/IconCollectionsAlias.js +18 -0
- package/src/config/Icons.js +52 -0
- package/src/config/Theme.js +25 -0
- package/src/css/BusyIndicator.css +80 -0
- package/src/css/FontFace.css +75 -0
- package/src/css/OverrideFontFace.css +32 -0
- package/src/css/SystemCSSVars.css +17 -0
- package/src/delegate/ItemNavigation.js +75 -4
- package/src/features/F6Navigation.js +110 -0
- package/src/features/OpenUI5Enablement.js +119 -0
- package/src/i18nBundle.js +33 -2
- package/src/renderer/LitRenderer.js +33 -12
- package/src/renderer/directives/style-map.js +72 -0
- package/src/renderer/executeTemplate.js +19 -2
- package/src/theming/CustomStyle.js +23 -3
- package/src/theming/applyTheme.js +11 -10
- package/src/theming/getEffectiveLinksHrefs.js +27 -0
- package/src/theming/getEffectiveStyle.js +9 -0
- package/src/theming/getStylesString.js +4 -2
- package/src/theming/getThemeDesignerTheme.js +25 -5
- package/src/theming/preloadLinks.js +23 -0
- package/src/types/DataType.js +12 -0
- package/src/types/Float.js +4 -0
- package/src/types/Integer.js +4 -0
- package/src/updateShadowRoot.js +9 -6
- package/src/util/Caret.js +1 -14
- package/src/util/ColorConversion.js +30 -2
- package/src/util/FocusableElements.js +8 -6
- package/src/util/InvisibleMessage.js +20 -9
- package/src/util/TabbableElements.js +4 -0
- package/src/util/createLinkInHead.js +19 -0
- package/src/util/escapeRegex.js +10 -0
- package/src/util/generateHighlightedMarkup.js +42 -0
- package/src/util/getNormalizedTarget.js +16 -0
- package/src/util/isDefaultSlotProvided.js +11 -0
- package/src/util/isNodeHidden.js +1 -1
- package/used-modules.txt +4 -1
- package/config/.eslintrc.js +0 -3
- package/config/rollup.config.js +0 -1
- package/dist/config/AssetsPath.js +0 -17
- package/dist/isLegacyBrowser.js +0 -3
- package/dist/resources/bundle.esm.js +0 -26
- package/dist/resources/bundle.esm.js.map +0 -1
- package/dist/test-resources/assets/Themes.js +0 -17
- package/dist/test-resources/elements/Child.js +0 -35
- package/dist/test-resources/elements/Generic.js +0 -84
- package/dist/test-resources/elements/GenericExt.js +0 -26
- package/dist/test-resources/elements/NoShadowDOM.js +0 -13
- package/dist/test-resources/elements/Parent.js +0 -41
- package/dist/test-resources/elements/WithStaticArea.js +0 -76
- package/dist/test-resources/pages/AllTestElements.html +0 -39
- package/dist/test-resources/pages/Configuration.html +0 -18
- package/dist/test-resources/pages/ConfigurationScript.html +0 -34
- package/dist/test-resources/pages/assets/messagebundle_de.properties +0 -1
- package/dist/test-resources/pages/assets/messagebundle_en.properties +0 -1
- package/dist/test-resources/pages/assets/messagebundle_es.properties +0 -1
- package/dist/test-resources/pages/assets/messagebundle_fr.properties +0 -1
- package/dist/test-resources/pages/i18n.html +0 -35
- package/dist/test-resources/specs/ConfigurationChange.spec.js +0 -27
- package/dist/test-resources/specs/ConfigurationScript.spec.js +0 -63
- package/dist/test-resources/specs/ConfigurationURL.spec.js +0 -93
- package/dist/test-resources/specs/CustomTheme.spec.js +0 -27
- package/dist/test-resources/specs/StaticArea.spec.js +0 -36
- package/dist/test-resources/specs/Theming.spec.js +0 -33
- package/dist/test-resources/specs/UI5ElementInvalidation.js +0 -242
- package/dist/test-resources/specs/UI5ElementLifecycle.js +0 -98
- package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +0 -75
- package/dist/test-resources/specs/UI5ElementMetadataExt.js +0 -42
- package/dist/test-resources/specs/UI5ElementPropertyValidation.js +0 -14
- package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +0 -67
- package/dist/test-resources/specs/UI5ElementShadowDOM.js +0 -24
- package/dist/test-resources/specs/UI5ElementSlots.js +0 -36
- package/dist/theming/createThemePropertiesStyleTag.js +0 -20
- package/dist/util/encodeCSS.js +0 -24
- package/src/config/AssetsPath.js +0 -17
- package/src/isLegacyBrowser.js +0 -3
- package/src/theming/createThemePropertiesStyleTag.js +0 -20
- package/src/util/encodeCSS.js +0 -24
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import escapeRegex from "./escapeRegex.js";
|
|
2
|
+
import encodeXML from "../sap/base/security/encodeXML.js";
|
|
3
|
+
|
|
4
|
+
// utility to replace all occurances of a string
|
|
5
|
+
function replaceAll(text, find, replace, caseInsensitive) {
|
|
6
|
+
return text.replace(new RegExp(escapeRegex(find), `${caseInsensitive ? "i" : ""}g`), replace);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Generate markup for a raw string where a particular text is wrapped with some tag, by default `<b>` (bold) tag.
|
|
11
|
+
* All inputs to this function are considered literal text, and special characters will always be escaped.
|
|
12
|
+
* @param {string} text The text to add highlighting to
|
|
13
|
+
* @param {string} textToHighlight The text which should be highlighted
|
|
14
|
+
* @return {string} the markup HTML which contains all occurrances of the input text surrounded with a `<b>` tag.
|
|
15
|
+
*/
|
|
16
|
+
function generateHighlightedMarkup(text, textToHighlight) {
|
|
17
|
+
if (!text || !textToHighlight) {
|
|
18
|
+
return text;
|
|
19
|
+
}
|
|
20
|
+
// a token is some string that does not appear in either of the input strings
|
|
21
|
+
// repeat the token until it does not appear in the string
|
|
22
|
+
const makeToken = t => {
|
|
23
|
+
const [s, e] = t.split("");
|
|
24
|
+
while (text.indexOf(t) >= 0 || textToHighlight.indexOf(t) >= 0) {
|
|
25
|
+
t = `${s}${t}${e}`;
|
|
26
|
+
}
|
|
27
|
+
return t;
|
|
28
|
+
};
|
|
29
|
+
// It doesn't matter what characters are used as long as all 4 of them are unique
|
|
30
|
+
// And also that encodeXML will not change these characters
|
|
31
|
+
const openToken = makeToken("12");
|
|
32
|
+
const closeToken = makeToken("34");
|
|
33
|
+
// wrap every occurance of the textToHighlight using the open/close tokens (instead of markup at this point)
|
|
34
|
+
let result = encodeXML(replaceAll(text, textToHighlight, match => `${openToken}${match}${closeToken}`, true));
|
|
35
|
+
// now replace the open and close tokens with the markup that we expect
|
|
36
|
+
[[openToken, "<b>"], [closeToken, "</b>"]].forEach(([find, replace]) => {
|
|
37
|
+
result = replaceAll(result, find, replace);
|
|
38
|
+
});
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export default generateHighlightedMarkup;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the normalized event target in cases when it has shadow root.
|
|
3
|
+
* @param {Object} target The original event target
|
|
4
|
+
* @returns {Object} The normalized target
|
|
5
|
+
*/
|
|
6
|
+
const getNormalizedTarget = target => {
|
|
7
|
+
let element = target;
|
|
8
|
+
|
|
9
|
+
if (target.shadowRoot && target.shadowRoot.activeElement) {
|
|
10
|
+
element = target.shadowRoot.activeElement;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
return element;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export default getNormalizedTarget;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { getSlotName } from "./SlotsHelper.js";
|
|
2
|
+
|
|
3
|
+
const isDefaultSlotProvided = element => {
|
|
4
|
+
return Array.from(element.childNodes).filter(node => {
|
|
5
|
+
return node.nodeType !== Node.COMMENT_NODE
|
|
6
|
+
&& getSlotName(node) === "default"
|
|
7
|
+
&& (node.nodeType !== Node.TEXT_NODE || node.nodeValue.trim().length !== 0);
|
|
8
|
+
}).length > 0;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export default isDefaultSlotProvided;
|
package/src/util/isNodeHidden.js
CHANGED
|
@@ -3,7 +3,7 @@ const isNodeHidden = node => {
|
|
|
3
3
|
return false;
|
|
4
4
|
}
|
|
5
5
|
|
|
6
|
-
return (node.offsetWidth <= 0 && node.offsetHeight <= 0) || node.style.visibility === "hidden";
|
|
6
|
+
return (node.offsetWidth <= 0 && node.offsetHeight <= 0) || (node.style && node.style.visibility === "hidden");
|
|
7
7
|
};
|
|
8
8
|
|
|
9
9
|
export default isNodeHidden;
|
package/used-modules.txt
CHANGED
package/config/.eslintrc.js
DELETED
package/config/rollup.config.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("@ui5/webcomponents-tools/components-package/rollup.js");
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { getAssetsPath as getConfiguredAssetsPath } from "../InitialConfiguration.js";
|
|
2
|
-
|
|
3
|
-
let assetsPath;
|
|
4
|
-
|
|
5
|
-
const getAssetsPath = () => {
|
|
6
|
-
if (assetsPath === undefined) {
|
|
7
|
-
assetsPath = getConfiguredAssetsPath();
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
return assetsPath;
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
const setAssetsPath = newAssetsPath => {
|
|
14
|
-
assetsPath = newAssetsPath;
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
export { getAssetsPath, setAssetsPath }; // eslint-disable-line
|
package/dist/isLegacyBrowser.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
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"]}.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,h=c.call(Object),d=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)===h)},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,h=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&&(d(s)||(e=Array.isArray(s)))?(e?(e=!1,a=t&&Array.isArray(t)?t:[]):a=t&&d(t)?t:{},r[n]=p(c,arguments[1],a,s)):s!==h&&(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 y=!1,v={animationMode:"full",theme:e,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1,assetsPath:""};const w=new Map;w.set("true",!0),w.set("false",!1);const _=(t,e,s)=>{const n=e.toLowerCase(),i=t.split(`${s}-`)[1];w.has(e)&&(e=w.get(n)),v[i]=e},b=()=>{y||((()=>{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&&(v=g(v,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&&_(e,t,"sap")})),t.forEach(((t,e)=>{e.startsWith("sap-ui")&&_(e,t,"sap-ui")}))})(),(()=>{const t=m("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();v=g(v,e)})(),y=!0)};class S{constructor(){this._eventRegistry={}}attachEvent(t,e){const s=this._eventRegistry;let n=s[t];Array.isArray(n)||(s[t]=[],n=s[t]),n.push({function:e})}detachEvent(t,e){const s=this._eventRegistry;let n=s[t];n&&(n=n.filter((t=>t.function!==e)),0===n.length&&delete s[t])}fireEvent(t,e){const s=this._eventRegistry[t];return s?s.map((t=>t.function.call(this,e))):[]}fireEventAsync(t,e){return Promise.all(this.fireEvent(t,e))}isHandlerAttached(t,e){const s=this._eventRegistry[t];if(!s)return!1;for(let t=0;t<s.length;t++){if(s[t].function===e)return!0}return!1}hasListeners(t){return!!this._eventRegistry[t]}}const A=new S,C=t=>{A.attachEvent("languageChange",t)};const E=t=>{const e=[];return t.forEach((t=>{e.push(t)})),e},M=new Set,$=new Set;let O;const x=t=>{M.add(t)},P=()=>{console.warn(`The following tags have already been defined by a different UI5 Web Components version: ${E($).join(", ")}`),$.clear()},L=new Set,T=new Set,I=new S,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 R,k,N,j;const H=t=>{I.fireEvent("beforeComponentRender",t),T.add(t),t._render()},U=async()=>{j||(j=new Promise((t=>{window.requestAnimationFrame((()=>{D.process(H),j=null,t(),N||(N=setTimeout((()=>{N=void 0,D.isEmpty()&&Z()}),200))}))}))),await j},V=()=>{const t=E(M).map((t=>customElements.whenDefined(t)));return Promise.all(t)},B=async()=>{await V(),await(R||(R=new Promise((t=>{k=t,window.requestAnimationFrame((()=>{D.isEmpty()&&(R=void 0,t())}))})),R))},Z=()=>{D.isEmpty()&&k&&(k(),k=void 0,R=void 0)};let W,z;const q=()=>(void 0===W&&(b(),W=v.language),W),F=()=>{var t;return void 0===z&&(b(),t=v.fetchDefaultLanguage,z=t),z},G=/^((?:[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 J{constructor(t){const e=G.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 K=new Map,Y=t=>(K.has(t)||K.set(t,new J(t)),K.get(t)),X=t=>{try{if(t&&"string"==typeof t)return Y(t)}catch(t){}},Q=t=>t?X(t):q()?Y(q()):X(a()),tt=/^((?:[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,et=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,st={he:"iw",yi:"ji",id:"in",sr:"sh"},nt=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:""},it=new Set,at=new Set,rt=new Map,ot=new Map,lt=new Map,ct=(t,e)=>{rt.set(t,e)},ht=(t,e)=>{const s=`${t}/${e}`;return lt.has(s)},dt=async t=>{const e=Q().getLanguage(),i=Q().getRegion();let a=(t=>{let e;if(!t)return n;if("string"==typeof t&&(e=tt.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=st[t]||t,a&&(e=et.exec(a))||i&&(e=et.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&&!ht(t,a);)a=nt(a);const r=F();if(a!==s||r)if(ht(t,a))try{const e=await((t,e)=>{const s=`${t}/${e}`,n=lt.get(s);return ot.get(s)||ot.set(s,n(e)),ot.get(s)})(t,a);ct(t,e)}catch(t){at.has(t.message)||(at.add(t.message),console.error(t.message))}else(t=>{it.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.`),it.add(t))})(t);else ct(t,null)};C((()=>{const t=[...rt.keys()];return Promise.all(t.map(dt))}));const ut=new Map,pt=new Map,gt=new Map,ft=new Set;let mt=!1;const yt={iw:"he",ji:"yi",in:"id",sh:"sr"},vt=t=>{mt||(console.warn(`[LocaleData] Supported locale "${t}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),mt=!0)},wt=(t,e)=>{ut.set(t,e)},_t=async(t,e,s)=>{const a=((t,e,s)=>{"no"===(t=t&&yt[t]||t)&&(t="nb"),"zh"!==t||e||("Hans"===s?e="CN":"Hant"===s&&(e="TW"));let a=`${t}_${e}`;return i.includes(a)?pt.has(a)?a:(vt(a),n):(a=t,i.includes(a)?pt.has(a)?a:(vt(a),n):n)})(t,e,s),r=m("OpenUI5Support");if(r){const t=r.getLocaleDataObject();if(t)return void wt(a,t)}try{const t=await(t=>{const e=pt.get(t);return gt.get(t)||gt.set(t,e(t)),gt.get(t)})(a);wt(a,t)}catch(t){ft.has(t.message)||(ft.add(t.message),console.error(t.message))}};var bt,St;bt="en",St=async t=>(await fetch("https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json")).json(),pt.set(bt,St),C((()=>{const t=Q();return _t(t.getLanguage(),t.getRegion(),t.getScript())}));const At=new Map,Ct=new Map,Et=new Set,Mt=new Set,$t=(t,e,s)=>{Ct.set(`${t}/${e}`,s),Et.add(t),Mt.add(e)},Ot=async(t,s)=>{const n=At.get(`${t}_${s}`);if(void 0!==n)return n;if(!Mt.has(s)){const s=[...Mt.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${e}. Registered themes are: ${s}`),At.get(`${t}_${e}`)}const i=Ct.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 At.set(`${t}_${s}`,r),r},xt=()=>Et,Pt=(t,e=document.body)=>{let s=document.querySelector(t);return s||(s=document.createElement(t),e.insertBefore(s,e.firstChild))},Lt=(t,e)=>{const s=t.split(".");let n=Pt("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},Tt=new Map,It=Lt("SVGIcons.registry",new Map),Dt=Lt("SVGIcons.promises",new Map),Rt=(t,{pathData:e,ltr:s,accData:n,collection:i,packageName:a}={})=>{i||(i="SAP-icons");const r=`${i}/${t}`;It.set(r,{pathData:e,ltr:s,accData:n,packageName:a})},kt=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||"SAP-icons","SAP-icons-TNT"===e&&(e="tnt"),{name:t,collection:e,registryKey:`${e}/${t}`}})(t);let n="ICON_NOT_FOUND";try{n=await(async t=>{if(!Dt.has(t)){if(!Tt.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=Tt.get(t);Dt.set(t,e(t))}return Dt.get(t)})(e)}catch(t){console.error(t.message)}return"ICON_NOT_FOUND"===n?n:(It.has(s)||(t=>{Object.keys(t.data).forEach((e=>{const s=t.data[e];Rt(e,{pathData:s.path,ltr:s.ltr,accData:s.acc,collection:t.collection,packageName:t.packageName})}))})(n),It.get(s))},Nt=(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},jt=(t,e)=>{const s=document.head.querySelector(`style[data-ui5-theme-properties="${e}"]`);if(s)s.textContent=t||"";else{Nt(t,{"data-ui5-theme-properties":e})}},Ht=()=>{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;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))},Ut=new S,Vt="@ui5/webcomponents-theme-base",Bt=async t=>{if(!xt().has(Vt))return;const e=await Ot(Vt,t);jt(e,Vt)},Zt=async t=>{const e=(()=>{const t=Ht();if(t)return t;const e=m("OpenUI5Support");if(e&&e.cssVariablesLoaded())return{themeName:e.getConfigurationSettingsObject().theme}})();e&&t===e.themeName?(()=>{const t=document.head.querySelector(`style[data-ui5-theme-properties="${Vt}"]`);t&&t.parentElement.removeChild(t)})():await Bt(t);const s=(t=>Mt.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{xt().forEach((async e=>{if(e===Vt)return;const s=await Ot(e,t);jt(s,e)}))})(s),(t=>{Ut.fireEvent("themeLoaded",t)})(t)};let Wt;const zt=()=>(void 0===Wt&&(b(),Wt=v.theme),Wt),qt=async t=>{Wt!==t&&(Wt=t,await Zt(Wt))},Ft=Lt("PopupUtilsData",{});Ft.currentZIndex=Ft.currentZIndex||100;const Gt=()=>Ft.currentZIndex,Jt=()=>{const t=window.sap;return t&&t.ui&&"function"==typeof t.ui.getCore&&t.ui.getCore()};var Kt,Yt;Kt="OpenUI5Support",Yt={isLoaded:()=>!!Jt(),init:()=>{const t=Jt();return t?new Promise((e=>{t.attachInit((()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],((t,s)=>{s.setInitialZIndex(Gt()),e()}))}))})):Promise.resolve()},getConfigurationSettingsObject:()=>{const t=Jt();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=Jt();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()},attachListeners:()=>{Jt()&&(()=>{const t=Jt(),e=t.getConfiguration();t.attachThemeChanged((async()=>{await qt(e.getTheme())}))})()},cssVariablesLoaded:()=>{if(!Jt())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(!Jt())return;return window.sap.ui.require("sap/ui/core/Popup").getNextZIndex()},setInitialZIndex:()=>{if(!Jt())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(Gt())}},f.set(Kt,Yt);const Xt=()=>{document.querySelector("head>style[data-ui5-font-face]")||Nt('\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":""})},Qt=()=>{document.querySelector("head>style[data-ui5-font-face-override]")||Nt("\n\t@font-face {\n\t\tfont-family: '72override';\n\t\tunicode-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;\n\t\tsrc: local('Arial'), local('Helvetica'), local('sans-serif');\n\t}\n",{"data-ui5-font-face-override":""})};let te=!1;const ee=new S,se=async()=>{if(te)return;const t=m("OpenUI5Support");t&&await t.init(),await new Promise((t=>{document.body?t():document.addEventListener("DOMContentLoaded",(()=>{t()}))})),await Zt(zt()),t&&t.attachListeners(),(()=>{const t=m("OpenUI5Support");t&&t.isLoaded()||Xt(),Qt()})(),document.querySelector("head>style[data-ui5-system-css-vars]")||Nt('\n\t:root {\n\t\t--_ui5_content_density:cozy;\n\t}\n\t\n\t[data-ui5-compact-size],\n\t.ui5-content-density-compact,\n\t.sapUiSizeCompact {\n\t\t--_ui5_content_density:compact;\n\t}\n\t\n\t[dir="rtl"] {\n\t\t--_ui5_dir:rtl;\n\t}\n\t\n\t[dir="ltr"] {\n\t\t--_ui5_dir:ltr;\n\t}\n',{"data-ui5-system-css-vars":""}),await ee.fireEventAsync("boot"),te=!0};class ne{static isValid(t){}static generateTypeAccessors(t){Object.keys(t).forEach((e=>{Object.defineProperty(this,e,{get:()=>t[e]})}))}}const ie=new Map,ae=new Map,re=t=>{if(!ie.has(t)){const e=le(t.split("-"));ie.set(t,e)}return ie.get(t)},oe=t=>{if(!ae.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();ae.set(t,e)}return ae.get(t)},le=t=>t.map(((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase())).join(""),ce=t=>t&&t instanceof HTMLElement&&"slot"===t.localName,he=t=>ce(t)?t.assignedNodes({flatten:!0}).filter((t=>t instanceof HTMLElement)):[t];let de={include:[/^ui5-/],exclude:[]};const ue=new Map,pe=t=>{if(!ue.has(t)){const e=de.include.some((e=>t.match(e)))&&!de.exclude.some((e=>t.match(e)));ue.set(t,e)}return ue.get(t)},ge=t=>{pe(t)};class fe{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=>me(t,e))):me(t,e)}static validateSlotValue(t,e){return ye(t,e)}getPureTag(){return this.metadata.tag}getTag(){const t=this.metadata.tag,e=ge(t);return e?`${t}-${e}`:t}getAltTag(){const t=this.metadata.altTag;if(!t)return;const e=ge(t);return e?`${t}-${e}`:t}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(oe)}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}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 me=(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,ne)?s.isValid(t)?t:e.defaultValue:void 0},ye=(t,e)=>(t&&he(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 ve=new S,we=t=>{ve.attachEvent("CustomCSSChange",t)},_e={},be=t=>Array.isArray(t)?Se(t.filter((t=>!!t))).join(" "):t,Se=t=>t.reduce(((t,e)=>t.concat(Array.isArray(e)?Se(e):e)),[]),Ae=new Map;we((t=>{Ae.delete(`${t}_normal`)}));const Ce=(t,e=!1)=>{const s=t.getMetadata().getTag(),n=`${s}_${e?"static":"normal"}`;if(!Ae.has(n)){let i;if(e)i=be(t.staticAreaStyles);else{const e=(t=>_e[t]?_e[t].join(""):"")(s)||"";i=`${be(t.styles)} ${e}`}Ae.set(n,i)}return Ae.get(n)},Ee=new Map;we((t=>{Ee.delete(`${t}_normal`)}));const Me=()=>!!window.ShadyDOM,$e=(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(pe);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(!Ee.has(s)){const n=Ce(t,e),i=new CSSStyleSheet;i.replaceSync(n),Ee.set(s,[i])}return Ee.get(s)})(t.constructor,e):Me()||(s=Ce(t.constructor,e)),t.constructor.render(a,i,s,{host:t})};class Oe 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(),$e(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"))}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,$e(this.ownerElement,!0)),await B(),this.shadowRoot}getStableDomRef(t){return this.shadowRoot.querySelector(`[data-ui5-stable=${t}]`)}static getTag(){const t="ui5-static-area-item",e=ge(t);return e?`${t}-${e}`:t}static createInstance(){return customElements.get(Oe.getTag())||customElements.define(Oe.getTag(),Oe),document.createElement(this.getTag())}}const xe=new WeakMap;const Pe=(t,e,s)=>{const n=((t,e,s)=>{const n=new MutationObserver(e);return n.observe(t,s),n})(t,e,s);xe.set(t,n)},Le=["value-changed"];let Te;const Ie=()=>(void 0===Te&&(b(),Te=v.noConflict),Te),De=t=>{const e=Ie();return!(t=>Le.includes(t))(t)&&(!0===e||!(t=>{const e=Ie();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))};const Re={iw:"he",ji:"yi",in:"id",sh:"sr"},ke=(t=>{const e=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(t);return e&&e[2]?e[2].split(/,/):null})("$cldr-rtl-locales:ar,fa,he$")||[],Ne=()=>{const t=(b(),v.rtl);return null!==t?!!t:(t=>(t=t&&Re[t]||t,ke.indexOf(t)>=0))(q()||a())};class je extends ne{static isValid(t){return Number.isInteger(t)}}class He extends ne{static isValid(t){return Number(t)===t}}const Ue=["disabled","title","hidden","role","draggable"],Ve=t=>{if(Ue.includes(t)||t.startsWith("aria"))return!0;return![HTMLElement,Element,Node].some((e=>e.prototype.hasOwnProperty(t)))},Be=(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},Ze=(t,e)=>class extends t{constructor(){super(),e&&e()}};let We=0;const ze=new Map,qe=new Map;function Fe(t){this._suppressInvalidation||(this.onInvalidation(t),this._changedState.push(t),(async t=>{D.add(t),await U()})(this),this._eventProvider.fireEvent("change",{...t,target:this}))}class Ge 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 S,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_"+ ++We),this.__id}async connectedCallback(){this.setAttribute(this.constructor.getMetadata().getPureTag(),"");const t=this.constructor._needsShadowDOM(),e=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!0,e&&(this._startObservingDOMChildren(),await this._processChildren()),t&&!this.shadowRoot&&await Promise.resolve(),this._inDOM&&(H(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,"function"==typeof this.onEnterDOM&&this.onEnterDOM())}disconnectedCallback(){const t=this.constructor._needsShadowDOM(),e=this.constructor.getMetadata().slotsAreManaged();var s;this._inDOM=!1,e&&this._stopObservingDOMChildren(),t&&this._fullyConnected&&("function"==typeof this.onExitDOM&&this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),s=this,D.remove(s),T.delete(s)}_startObservingDOMChildren(){if(!this.constructor.getMetadata().hasSlots())return;const t=this.constructor.getMetadata().canSlotText(),e={childList:!0,subtree:t,characterData:t};Pe(this,this._processChildren.bind(this),e)}_stopObservingDOMChildren(){(t=>{const e=xe.get(t);e&&((t=>{t.disconnect()})(e),xe.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=ze.get(t);s||(s=new Promise((t=>setTimeout(t,1e3))),ze.set(t,s)),await Promise.race([e,s])}window.customElements.upgrade(e)}}(e=this.constructor.getMetadata().constructor.validateSlotValue(e,i)).isUI5Element&&i.invalidateOnChildChange&&e._attachChange(this._getChildChangeListener(n)),ce(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;Be(n.get(t),this._state[t])||(Fe.call(this,{type:"slot",name:i.get(t),reason:"children"}),l=!0)}l||Fe.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._detachChange(this._getChildChangeListener(t)),ce(e)&&this._detachSlotChange(e,t)})),this._state[s]=[]}_attachChange(t){this._eventProvider.attachEvent("change",t)}_detachChange(t){this._eventProvider.detachEvent("change",t)}_onChildChange(t,e){this.constructor.getMetadata().shouldInvalidateOnChildChange(t,e.type,e.name)&&Fe.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=re(i);if(n.hasOwnProperty(a)){const t=n[a].type;t===Boolean&&(s=null!==s),t===je&&(s=parseInt(s)),t===He&&(s=parseFloat(s)),this[a]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;if("object"==typeof e)return;const s=oe(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(){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){Fe.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()&&$e(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(this.shadowRoot&&0!==this.shadowRoot.children.length)return this._assertShadowRootStructure(),1===this.shadowRoot.children.length?this.shadowRoot.children[0]:this.shadowRoot.children[1]}_assertShadowRootStructure(){const t=document.adoptedStyleSheets||Me()?1:2;this.shadowRoot.children.length!==t&&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`)}getFocusDomRef(){const t=this.getDomRef();if(t){return t.querySelector("[data-sap-focus-ref]")||t}}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}getStableDomRef(t){return this.staticAreaItem&&this.staticAreaItem.getStableDomRef(t)||this.getDomRef().querySelector(`[data-ui5-stable=${t}]`)}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=re(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(De(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(he(e))),[])}get effectiveDir(){var t;return t=this.constructor,L.add(t),(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:Ne()?"rtl":void 0})(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=Oe.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||Pt("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(Ve(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?!Be(i,t):i!==t,s&&(this._state[e]=t,Fe.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)){Ve(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(!qe.has(this)){const t=this.dependencies.filter(((t,e,s)=>s.indexOf(t)===e));qe.set(this,t)}return qe.get(this)}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map((t=>t.define())))}static async onDefine(){return Promise.resolve()}static async define(){await se(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=this.getMetadata().getAltTag(),s=(t=>M.has(t))(t),n=customElements.get(t);return n&&!s?(t=>{$.add(t),O||(O=setTimeout((()=>{P(),O=void 0}),1e3))})(t):n||(this._generateAccessors(),x(t),window.customElements.define(t,this),e&&!customElements.get(e)&&(x(e),window.customElements.define(e,Ze(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!==Ge;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=g({},...t);return this._metadata=new fe(s),this._metadata}}
|
|
2
|
-
/**
|
|
3
|
-
* @license
|
|
4
|
-
* Copyright 2017 Google LLC
|
|
5
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
6
|
-
*/var Je,Ke,Ye,Xe;const Qe=globalThis.trustedTypes,ts=Qe?Qe.createPolicy("lit-html",{createHTML:t=>t}):void 0,es=`lit$${(Math.random()+"").slice(9)}$`,ss="?"+es,ns=`<${ss}>`,is=document,as=(t="")=>is.createComment(t),rs=t=>null===t||"object"!=typeof t&&"function"!=typeof t,os=Array.isArray,ls=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,cs=/-->/g,hs=/>/g,ds=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,us=/'/g,ps=/"/g,gs=/^(?:script|style|textarea)$/i,fs=(t=>(e,...s)=>({_$litType$:t,strings:e,values:s}))(1),ms=Symbol.for("lit-noChange"),ys=Symbol.for("lit-nothing"),vs=new WeakMap,ws=is.createTreeWalker(is,129,null,!1),_s=(t,e)=>{const s=t.length-1,n=[];let i,a=2===e?"<svg>":"",r=ls;for(let e=0;e<s;e++){const s=t[e];let o,l,c=-1,h=0;for(;h<s.length&&(r.lastIndex=h,l=r.exec(s),null!==l);)h=r.lastIndex,r===ls?"!--"===l[1]?r=cs:void 0!==l[1]?r=hs:void 0!==l[2]?(gs.test(l[2])&&(i=RegExp("</"+l[2],"g")),r=ds):void 0!==l[3]&&(r=ds):r===ds?">"===l[0]?(r=null!=i?i:ls,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,o=l[1],r=void 0===l[3]?ds:'"'===l[3]?ps:us):r===ps||r===us?r=ds:r===cs||r===hs?r=ls:(r=ds,i=void 0);const d=r===ds&&t[e+1].startsWith("/>")?" ":"";a+=r===ls?s+ns:c>=0?(n.push(o),s.slice(0,c)+"$lit$"+s.slice(c)+es+d):s+es+(-2===c?(n.push(void 0),e):d)}const o=a+(t[s]||"<?>")+(2===e?"</svg>":"");return[void 0!==ts?ts.createHTML(o):o,n]};class bs{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]=_s(t,e);if(this.el=bs.createElement(l,s),ws.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=ws.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(es)){const s=c[a++];if(t.push(e),void 0!==s){const t=n.getAttribute(s.toLowerCase()+"$lit$").split(es),e=/([.?@])?(.*)/.exec(s);o.push({type:1,index:i,name:e[2],strings:t,ctor:"."===e[1]?Ms:"?"===e[1]?$s:"@"===e[1]?Os:Es})}else o.push({type:6,index:i})}for(const e of t)n.removeAttribute(e)}if(gs.test(n.tagName)){const t=n.textContent.split(es),e=t.length-1;if(e>0){n.textContent=Qe?Qe.emptyScript:"";for(let s=0;s<e;s++)n.append(t[s],as()),ws.nextNode(),o.push({type:2,index:++i});n.append(t[e],as())}}}else if(8===n.nodeType)if(n.data===ss)o.push({type:2,index:i});else{let t=-1;for(;-1!==(t=n.data.indexOf(es,t+1));)o.push({type:7,index:i}),t+=es.length-1}i++}}static createElement(t,e){const s=is.createElement("template");return s.innerHTML=t,s}}function Ss(t,e,s=t,n){var i,a,r,o;if(e===ms)return e;let l=void 0!==n?null===(i=s.Σi)||void 0===i?void 0:i[n]:s.Σo;const c=rs(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(a=null==l?void 0:l.O)||void 0===a||a.call(l,!1),void 0===c?l=void 0:(l=new c(t),l.T(t,s,n)),void 0!==n?(null!==(r=(o=s).Σi)&&void 0!==r?r:o.Σi=[])[n]=l:s.Σo=l),void 0!==l&&(e=Ss(t,l.S(t,e.values),l,n)),e}class As{constructor(t,e){this.l=[],this.N=void 0,this.D=t,this.M=e}u(t){var e;const{el:{content:s},parts:n}=this.D,i=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:is).importNode(s,!0);ws.currentNode=i;let a=ws.nextNode(),r=0,o=0,l=n[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new Cs(a,a.nextSibling,this,t):1===l.type?e=new l.ctor(a,l.name,l.strings,this,t):6===l.type&&(e=new xs(a,this,t)),this.l.push(e),l=n[++o]}r!==(null==l?void 0:l.index)&&(a=ws.nextNode(),r++)}return i}v(t){let e=0;for(const s of this.l)void 0!==s&&(void 0!==s.strings?(s.I(t,s,e),e+=s.strings.length-2):s.I(t[e])),e++}}class Cs{constructor(t,e,s,n){this.type=2,this.N=void 0,this.A=t,this.B=e,this.M=s,this.options=n}setConnected(t){var e;null===(e=this.P)||void 0===e||e.call(this,t)}get parentNode(){return this.A.parentNode}get startNode(){return this.A}get endNode(){return this.B}I(t,e=this){t=Ss(this,t,e),rs(t)?t===ys||null==t||""===t?(this.H!==ys&&this.R(),this.H=ys):t!==this.H&&t!==ms&&this.m(t):void 0!==t._$litType$?this._(t):void 0!==t.nodeType?this.$(t):(t=>{var e;return os(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.g(t):this.m(t)}k(t,e=this.B){return this.A.parentNode.insertBefore(t,e)}$(t){this.H!==t&&(this.R(),this.H=this.k(t))}m(t){const e=this.A.nextSibling;null!==e&&3===e.nodeType&&(null===this.B?null===e.nextSibling:e===this.B.previousSibling)?e.data=t:this.$(is.createTextNode(t)),this.H=t}_(t){var e;const{values:s,_$litType$:n}=t,i="number"==typeof n?this.C(t):(void 0===n.el&&(n.el=bs.createElement(n.h,this.options)),n);if((null===(e=this.H)||void 0===e?void 0:e.D)===i)this.H.v(s);else{const t=new As(i,this),e=t.u(this.options);t.v(s),this.$(e),this.H=t}}C(t){let e=vs.get(t.strings);return void 0===e&&vs.set(t.strings,e=new bs(t)),e}g(t){os(this.H)||(this.H=[],this.R());const e=this.H;let s,n=0;for(const i of t)n===e.length?e.push(s=new Cs(this.k(as()),this.k(as()),this,this.options)):s=e[n],s.I(i),n++;n<e.length&&(this.R(s&&s.B.nextSibling,n),e.length=n)}R(t=this.A.nextSibling,e){var s;for(null===(s=this.P)||void 0===s||s.call(this,!1,!0,e);t&&t!==this.B;){const e=t.nextSibling;t.remove(),t=e}}}class Es{constructor(t,e,s,n,i){this.type=1,this.H=ys,this.N=void 0,this.V=void 0,this.element=t,this.name=e,this.M=n,this.options=i,s.length>2||""!==s[0]||""!==s[1]?(this.H=Array(s.length-1).fill(ys),this.strings=s):this.H=ys}get tagName(){return this.element.tagName}I(t,e=this,s,n){const i=this.strings;let a=!1;if(void 0===i)t=Ss(this,t,e,0),a=!rs(t)||t!==this.H&&t!==ms,a&&(this.H=t);else{const n=t;let r,o;for(t=i[0],r=0;r<i.length-1;r++)o=Ss(this,n[s+r],e,r),o===ms&&(o=this.H[r]),a||(a=!rs(o)||o!==this.H[r]),o===ys?t=ys:t!==ys&&(t+=(null!=o?o:"")+i[r+1]),this.H[r]=o}a&&!n&&this.W(t)}W(t){t===ys?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class Ms extends Es{constructor(){super(...arguments),this.type=3}W(t){this.element[this.name]=t===ys?void 0:t}}class $s extends Es{constructor(){super(...arguments),this.type=4}W(t){t&&t!==ys?this.element.setAttribute(this.name,""):this.element.removeAttribute(this.name)}}class Os extends Es{constructor(){super(...arguments),this.type=5}I(t,e=this){var s;if((t=null!==(s=Ss(this,t,e,0))&&void 0!==s?s:ys)===ms)return;const n=this.H,i=t===ys&&n!==ys||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,a=t!==ys&&(n===ys||i);i&&this.element.removeEventListener(this.name,this,n),a&&this.element.addEventListener(this.name,this,t),this.H=t}handleEvent(t){var e,s;"function"==typeof this.H?this.H.call(null!==(s=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==s?s:this.element,t):this.H.handleEvent(t)}}class xs{constructor(t,e,s){this.element=t,this.type=6,this.N=void 0,this.V=void 0,this.M=e,this.options=s}I(t){Ss(this,t)}}null===(Ke=(Je=globalThis).litHtmlPlatformSupport)||void 0===Ke||Ke.call(Je,bs,Cs),(null!==(Ye=(Xe=globalThis).litHtmlVersions)&&void 0!==Ye?Ye:Xe.litHtmlVersions=[]).push("2.0.0-rc.3");
|
|
7
|
-
/**
|
|
8
|
-
* @license
|
|
9
|
-
* Copyright 2020 Google LLC
|
|
10
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
11
|
-
*/
|
|
12
|
-
const Ps=new Map,Ls=(t=>(e,...s)=>{var n;const i=s.length;let a,r;const o=[],l=[];let c,h=0,d=!1;for(;h<i;){for(c=e[h];h<i&&void 0!==(r=s[h],a=null===(n=r)||void 0===n?void 0:n.It);)c+=a+e[++h],d=!0;l.push(r),o.push(c),h++}if(h===i&&o.push(e[i]),d){const t=o.join("$$lit$$");void 0===(e=Ps.get(t))&&Ps.set(t,e=o),s=l}return t(e,...s)})(fs),Ts=(t,e,s,{host:n}={})=>{s&&(t=Ls`<style>${s}</style>${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 Cs(e.insertBefore(as(),t),t,void 0,s)}r.I(t)})(t,e,{host:n})},Is={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 Ds extends Ge{static get metadata(){return Is}static get render(){return Ts}static get template(){return t=>Ls`<div><p>
|
|
13
|
-
<slot></slot>
|
|
14
|
-
<slot name="other"></slot>
|
|
15
|
-
<slot name="individual-1"></slot>
|
|
16
|
-
<slot name="individual-2"></slot>
|
|
17
|
-
</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(){}}Ds.define();const Rs={tag:"ui5-test-no-shadow"};(class extends Ge{static get metadata(){return Rs}}).define();const ks={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};(class extends Ge{static get metadata(){return ks}static get render(){return Ts}static get template(){return t=>Ls`<div>
|
|
18
|
-
<slot></slot>
|
|
19
|
-
</div>`}}).define();const Ns={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};(class extends Ge{static get metadata(){return Ns}static get render(){return Ts}static get template(){return t=>Ls`<div></div>`}}).define();const js={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};(class extends Ge{static get metadata(){return js}static get render(){return Ts}static get template(){return t=>Ls`
|
|
20
|
-
<div>
|
|
21
|
-
WithStaticArea works!
|
|
22
|
-
</div>`}static get staticAreaTemplate(){return t=>Ls`
|
|
23
|
-
<div class="ui5-with-static-area-content">
|
|
24
|
-
Static area content.
|
|
25
|
-
</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 Hs={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};(class extends Ds{static get metadata(){return Hs}}).define();$t("@ui5/webcomponents-base-test","sap_fiori_3",(()=>":root{ --var1: red; }")),$t("@ui5/webcomponents-base-test","sap_fiori_3_dark",(()=>":root{ --var1: green; }")),$t("@ui5/webcomponents-base-test","sap_belize",(()=>":root{ --var1: blue; }")),$t("@ui5/webcomponents-base-test","sap_belize_hcb",(()=>":root{ --var1: orange; }")),$t("@ui5/webcomponents-base-test","sap_belize_hcw",(()=>":root{ --var1: orange; }")),$t("@ui5/webcomponents-base-test","sap_fiori_3_hcb",(()=>":root{ --var1: yellow; }")),$t("@ui5/webcomponents-base-test","sap_fiori_3_hcw",(()=>":root{ --var1: yellow; }"));const Us=navigator.userAgent,Vs=/(msie|trident)/i.test(Us),Bs=!Vs&&/(Chrome|CriOS)/.test(Us);!Vs&&!Bs&&/(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(Us),!Vs&&/webkit/.test(Us);!(-1!==navigator.platform.indexOf("Win"))&&/Android/.test(Us)&&/(?=android)(?=.*mobile)/i.test(Us),/ipad/i.test(Us);const Zs=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,Ws=new Map;class zs{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,rt.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(Zs,((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 qs;const Fs={Gregorian:"Gregorian",Islamic:"Islamic",Japanese:"Japanese",Buddhist:"Buddhist",Persian:"Persian"};class Gs extends ne{static isValid(t){return!!Fs[t]}}let Js;Gs.generateTypeAccessors(Fs);let Ks;window.isIE=()=>Vs,window.registerThemePropertiesLoader=$t,window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:()=>(void 0===qs&&(b(),qs=v.animationMode),qs),getLanguage:q,getTheme:zt,setTheme:qt,getNoConflict:Ie,setNoConflict:t=>{Te=t},getCalendarType:()=>(void 0===Js&&(b(),Js=v.calendarType),Gs.isValid(Js)?Js:Gs.Gregorian),getRTL:Ne,getFirstDayOfWeek:()=>(void 0===Ks&&(b(),Ks=v.formatSettings),Ks.firstDayOfWeek)},getIconNames:async()=>(await kt("edit"),await kt("tnt/arrow"),Array.from(It.keys())),registerI18nLoader:(t,e,s)=>{const n=`${t}/${e}`;lt.set(n,s)},fetchI18nBundle:dt,getI18nBundle:t=>{if(Ws.has(t))return Ws.get(t);const e=new zs(t);return Ws.set(t,e),e},renderFinished:B};
|
|
26
|
-
//# sourceMappingURL=bundle.esm.js.map
|