@ui5/webcomponents-base 1.11.0-rc.1 → 1.11.0-rc.2

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.
Files changed (33) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/asset-registries/Icons.d.ts +1 -1
  3. package/dist/asset-registries/Icons.js +21 -21
  4. package/dist/asset-registries/Icons.js.map +1 -1
  5. package/dist/assets/bundle.esm.2d0cb31f.js +56 -0
  6. package/dist/assets/test/pages/{i18n.html.4b1c0bdb.js → i18n.html.cd6e3cfc.js} +1 -1
  7. package/dist/assets/test/pages/{i18n_texts.html.e98a417d.js → i18n_texts.html.7beb72ee.js} +1 -1
  8. package/dist/assets-meta/IconCollectionsAlias.d.ts +24 -10
  9. package/dist/assets-meta/IconCollectionsAlias.js +29 -9
  10. package/dist/assets-meta/IconCollectionsAlias.js.map +1 -1
  11. package/dist/config/Icons.d.ts +42 -18
  12. package/dist/config/Icons.js +74 -25
  13. package/dist/config/Icons.js.map +1 -1
  14. package/dist/config/RTL.js +3 -0
  15. package/dist/config/RTL.js.map +1 -1
  16. package/dist/generated/VersionInfo.js +3 -3
  17. package/dist/test/pages/AllTestElements.html +1 -1
  18. package/dist/test/pages/Configuration.html +1 -1
  19. package/dist/test/pages/ConfigurationScript.html +1 -1
  20. package/dist/test/pages/WithComplexTemplate.html +1 -1
  21. package/dist/test/pages/i18n.html +2 -2
  22. package/dist/test/pages/i18n_texts.html +2 -2
  23. package/dist/util/AriaLabelHelper.d.ts +10 -1
  24. package/dist/util/AriaLabelHelper.js +135 -8
  25. package/dist/util/AriaLabelHelper.js.map +1 -1
  26. package/package-scripts.js +1 -1
  27. package/package.json +3 -3
  28. package/src/asset-registries/Icons.ts +26 -27
  29. package/src/assets-meta/IconCollectionsAlias.ts +32 -9
  30. package/src/config/Icons.ts +85 -25
  31. package/src/config/RTL.ts +4 -0
  32. package/src/util/AriaLabelHelper.ts +167 -12
  33. package/dist/assets/bundle.esm.25073731.js +0 -56
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.11.0-rc.2](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0-rc.1...v1.11.0-rc.2) (2023-02-16)
7
+
8
+
9
+ ### Features
10
+
11
+ * **ui5-input:** reflect dynamic changes of labels ([#6364](https://github.com/SAP/ui5-webcomponents/issues/6364)) ([b75e958](https://github.com/SAP/ui5-webcomponents/commit/b75e958fdc651b60913310bf1645f05e6df726ec))
12
+
13
+
14
+
15
+
16
+
6
17
  # [1.11.0-rc.1](https://github.com/SAP/ui5-webcomponents/compare/v1.11.0-rc.0...v1.11.0-rc.1) (2023-02-09)
7
18
 
8
19
 
@@ -13,7 +13,7 @@ type CollectionData = {
13
13
  }>;
14
14
  };
15
15
  type IconData = {
16
- collection?: string;
16
+ collection: string;
17
17
  packageName: string;
18
18
  pathData: string | Array<string>;
19
19
  ltr: boolean;
@@ -1,6 +1,6 @@
1
1
  import getSharedResource from "../getSharedResource.js";
2
- import IconCollectionsAlias from "../assets-meta/IconCollectionsAlias.js";
3
- import { getEffectiveDefaultIconCollection } from "../config/Icons.js";
2
+ import { getIconCollectionByAlias } from "../assets-meta/IconCollectionsAlias.js";
3
+ import { getEffectiveIconCollection } from "../config/Icons.js";
4
4
  const loaders = new Map();
5
5
  const registry = getSharedResource("SVGIcons.registry", new Map());
6
6
  const iconCollectionPromises = getSharedResource("SVGIcons.promises", new Map());
@@ -32,9 +32,6 @@ const _fillRegistry = (bundleData) => {
32
32
  };
33
33
  // set
34
34
  const registerIcon = (name, iconData) => {
35
- if (!iconData.collection) {
36
- iconData.collection = getEffectiveDefaultIconCollection();
37
- }
38
35
  const key = `${iconData.collection}/${name}`;
39
36
  registry.set(key, {
40
37
  pathData: iconData.pathData,
@@ -43,32 +40,41 @@ const registerIcon = (name, iconData) => {
43
40
  packageName: iconData.packageName,
44
41
  customTemplate: iconData.customTemplate,
45
42
  viewBox: iconData.viewBox,
43
+ collection: iconData.collection,
46
44
  });
47
45
  };
48
- const _parseName = (name) => {
46
+ /**
47
+ * Processes the full icon name and splits it into - "name", "collection"
48
+ * to form the proper registry key ("collection/name") under which the icon is registered:
49
+ *
50
+ * - removes legacy protocol ("sap-icon://")
51
+ * - resolves aliases (f.e "SAP-icons-TNT/actor" => "tnt/actor")
52
+ * - determines theme dependant icon collection (f.e "home" => "SAP-icons-v4/home" in Quartz | "SAP-icons-v5/home" in Horizon)
53
+ *
54
+ * @param { string } name
55
+ * @return { object }
56
+ */
57
+ const processName = (name) => {
49
58
  // silently support ui5-compatible URIs
50
59
  if (name.startsWith("sap-icon://")) {
51
60
  name = name.replace("sap-icon://", "");
52
61
  }
53
62
  let collection;
54
63
  [name, collection] = name.split("/").reverse();
55
- collection = collection || getEffectiveDefaultIconCollection();
56
- // Normalize collection name.
57
- // - resolve `SAP-icons-TNT` to `tnt`.
58
- // - resolve `BusinessSuiteInAppSymbols` to `business-suite`.
59
- // - resolve `horizon` to `SAP-icons-v5`,
60
- // Note: aliases can be made as a feature, if more collections need it or more aliases are needed.
61
- collection = _normalizeCollection(collection);
62
64
  name = name.replace("icon-", "");
65
+ if (collection) {
66
+ collection = getIconCollectionByAlias(collection);
67
+ }
68
+ collection = getEffectiveIconCollection(collection);
63
69
  const registryKey = `${collection}/${name}`;
64
70
  return { name, collection, registryKey };
65
71
  };
66
72
  const getIconDataSync = (name) => {
67
- const { registryKey } = _parseName(name);
73
+ const { registryKey } = processName(name);
68
74
  return registry.get(registryKey);
69
75
  };
70
76
  const getIconData = async (name) => {
71
- const { collection, registryKey } = _parseName(name);
77
+ const { collection, registryKey } = processName(name);
72
78
  let iconData = ICON_NOT_FOUND;
73
79
  try {
74
80
  iconData = (await _loadIconCollectionOnce(collection));
@@ -94,11 +100,5 @@ const _getRegisteredNames = async () => {
94
100
  await getIconData("business-suite/3d");
95
101
  return Array.from(registry.keys());
96
102
  };
97
- const _normalizeCollection = (collectionName) => {
98
- if (IconCollectionsAlias[collectionName]) {
99
- return IconCollectionsAlias[collectionName];
100
- }
101
- return collectionName;
102
- };
103
103
  export { registerIconLoader, getIconData, getIconDataSync, registerIcon, _getRegisteredNames, };
104
104
  //# sourceMappingURL=Icons.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../../src/asset-registries/Icons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Icons.js","sourceRoot":"","sources":["../../src/asset-registries/Icons.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ const Zs=function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&n(i)}).observe(document,{childList:!0,subtree:!0});function s(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerpolicy&&(o.referrerPolicy=r.referrerpolicy),r.crossorigin==="use-credentials"?o.credentials="include":r.crossorigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(r){if(r.ep)return;r.ep=!0;const o=s(r);fetch(r.href,o)}};Zs();const vt={themes:{default:"sap_fiori_3",all:["sap_fiori_3","sap_fiori_3_dark","sap_belize","sap_belize_hcb","sap_belize_hcw","sap_fiori_3_hcb","sap_fiori_3_hcw","sap_horizon","sap_horizon_dark","sap_horizon_hcb","sap_horizon_hcw","sap_horizon_exp"]},languages:{default:"en",all:["ar","bg","ca","cs","cy","da","de","el","en","en_GB","en_US_sappsd","en_US_saprigi","en_US_saptrc","es","es_MX","et","fi","fr","fr_CA","hi","hr","hu","in","it","iw","ja","kk","ko","lt","lv","ms","nl","no","pl","pt_PT","pt","ro","ru","sh","sk","sl","sv","th","tr","uk","vi","zh_CN","zh_TW"]},locales:{default:"en",all:["ar","ar_EG","ar_SA","bg","ca","cs","da","de","de_AT","de_CH","el","el_CY","en","en_AU","en_GB","en_HK","en_IE","en_IN","en_NZ","en_PG","en_SG","en_ZA","es","es_AR","es_BO","es_CL","es_CO","es_MX","es_PE","es_UY","es_VE","et","fa","fi","fr","fr_BE","fr_CA","fr_CH","fr_LU","he","hi","hr","hu","id","it","it_CH","ja","kk","ko","lt","lv","ms","nb","nl","nl_BE","pl","pt","pt_PT","ro","ru","ru_UA","sk","sl","sr","sr_Latn","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]}},ft=vt.themes.default,pt=vt.languages.default,$=vt.locales.default,ue=vt.locales.all;var Ke=()=>{const e=navigator.languages,t=()=>navigator.language;return e&&e[0]||t()||pt},Je={},Xe=Je.hasOwnProperty,qs=Je.toString,Ye=Xe.toString,Gs=Ye.call(Object),de=function(e){var t,s;return!e||qs.call(e)!=="[object Object]"?!1:(t=Object.getPrototypeOf(e),t?(s=Xe.call(t,"constructor")&&t.constructor,typeof s=="function"&&Ye.call(s)===Gs):!0)},Ks=Object.create(null),Qe=function(e,t,s,n){var r,o,i,c,a,l,f=arguments[2]||{},u=3,d=arguments.length,h=arguments[0]||!1,p=arguments[1]?void 0:Ks;for(typeof f!="object"&&typeof f!="function"&&(f={});u<d;u++)if((a=arguments[u])!=null)for(c in a)r=f[c],i=a[c],!(c==="__proto__"||f===i)&&(h&&i&&(de(i)||(o=Array.isArray(i)))?(o?(o=!1,l=r&&Array.isArray(r)?r:[]):l=r&&de(r)?r:{},f[c]=Qe(h,arguments[1],l,i)):i!==p&&(f[c]=i));return f};const Qt=function(e,t){return Qe(!0,!1,...arguments)},ts=new Map,Js=(e,t)=>{ts.set(e,t)},b=e=>ts.get(e),Xs=e=>{const t=document.querySelector(`META[name="${e}"]`);return t&&t.getAttribute("content")},Ys=e=>{const t=Xs("sap-allowedThemeOrigins");return t&&t.split(",").some(s=>s==="*"||e===s.trim())},Qs=(e,t)=>{const s=new URL(e).pathname;return new URL(s,t).toString()},tn=e=>{let t,s;try{t=new URL(e);const n=t.origin;return t=t.toString(),t.startsWith(".")||t.startsWith("/")?s=new URL(t,window.location.href).toString():n&&Ys(n)?s=t.toString():s=Qs(t,window.location.href),s.endsWith("/")||(s=`${s}/`),`${s}UI5/`}catch{}};var Zt;(function(e){e.Full="full",e.Basic="basic",e.Minimal="minimal",e.None="none"})(Zt||(Zt={}));var en=Zt;let he=!1,_={animationMode:en.Full,theme:ft,themeRoot:void 0,rtl:void 0,language:void 0,calendarType:void 0,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const sn=()=>(C(),_.animationMode),nn=()=>(C(),_.theme),rn=()=>(C(),_.themeRoot),on=()=>(C(),_.rtl),an=()=>(C(),_.language),cn=()=>(C(),_.fetchDefaultLanguage),ln=()=>(C(),_.noConflict),un=()=>(C(),_.calendarType),dn=()=>(C(),_.formatSettings),gt=new Map;gt.set("true",!0);gt.set("false",!1);const hn=()=>{const e=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let t;if(e){try{t=JSON.parse(e.innerHTML)}catch{console.warn("Incorrect data-sap-ui-config format. Please use JSON")}t&&(_=Qt(_,t))}},fn=()=>{const e=new URLSearchParams(window.location.search);e.forEach((t,s)=>{const n=s.split("sap-").length;n===0||n===s.split("sap-ui-").length||fe(s,t,"sap")}),e.forEach((t,s)=>{!s.startsWith("sap-ui")||fe(s,t,"sap-ui")})},pn=e=>{const t=e.split("@")[1];return tn(t)},gn=(e,t)=>e==="theme"&&t.includes("@")?t.split("@")[0]:t,fe=(e,t,s)=>{const n=t.toLowerCase(),r=e.split(`${s}-`)[1];gt.has(t)&&(t=gt.get(n)),r==="theme"?(_.theme=gn(r,t),t&&t.includes("@")&&(_.themeRoot=pn(t))):_[r]=t},mn=()=>{const e=b("OpenUI5Support");if(!e||!e.isLoaded())return;const t=e.getConfigurationSettingsObject();_=Qt(_,t)},C=()=>{typeof document=="undefined"||he||(hn(),fn(),mn(),he=!0)};class O{constructor(){this._eventRegistry=new Map}attachEvent(t,s){const n=this._eventRegistry,r=n.get(t);if(!Array.isArray(r)){n.set(t,[s]);return}r.includes(s)||r.push(s)}detachEvent(t,s){const n=this._eventRegistry,r=n.get(t);if(!r)return;const o=r.indexOf(s);o!==-1&&r.splice(o,1),r.length===0&&n.delete(t)}fireEvent(t,s){const r=this._eventRegistry.get(t);return r?r.map(o=>o.call(this,s)):[]}fireEventAsync(t,s){return Promise.all(this.fireEvent(t,s))}isHandlerAttached(t,s){const r=this._eventRegistry.get(t);return r?r.includes(s):!1}hasListeners(t){return!!this._eventRegistry.get(t)}}const es=new O,ss="languageChange",ns=e=>{es.attachEvent(ss,e)},yn=e=>es.fireEventAsync(ss,e),pe=10;class _n{constructor(){this.list=[],this.lookup=new Set}add(t){this.lookup.has(t)||(this.list.push(t),this.lookup.add(t))}remove(t){!this.lookup.has(t)||(this.list=this.list.filter(s=>s!==t),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return this.list.length===0}isAdded(t){return this.lookup.has(t)}process(t){let s;const n=new Map;for(s=this.shift();s;){const r=n.get(s)||0;if(r>pe)throw new Error(`Web component processed too many times this task, max allowed is: ${pe}`);t(s),n.set(s,r+1),s=this.shift()}}}const rs=(e,t=document.body)=>{let s=document.querySelector(e);return s||(s=document.createElement(e),t.insertBefore(s,t.firstChild))},wn=()=>typeof document=="undefined"?null:rs("ui5-shared-resources",document.head),R=(e,t)=>{const s=e.split(".");let n=wn();if(!n)return t;for(let r=0;r<s.length;r++){const o=s[r],i=r===s.length-1;Object.prototype.hasOwnProperty.call(n,o)||(n[o]=i?t:{}),n=n[o]}return n},vn={version:"1.11.0-rc.2",major:1,minor:11,patch:0,suffix:"-rc.2",isNext:!1,buildTime:1676535002};let ct,An="";const Et=new Map,J=R("Runtimes",[]),Sn=()=>{if(ct===void 0){ct=J.length;const e=vn;J.push({...e,alias:An,description:`Runtime ${ct} - ver ${e.version}`})}},os=()=>ct,$n=(e,t)=>{const s=`${e},${t}`;if(Et.has(s))return Et.get(s);const n=J[e],r=J[t];if(!n||!r)throw new Error("Invalid runtime index supplied");if(n.isNext||r.isNext)return n.buildTime-r.buildTime;const o=n.major-r.major;if(o)return o;const i=n.minor-r.minor;if(i)return i;const c=n.patch-r.patch;if(c)return c;const l=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"}).compare(n.suffix,r.suffix);return Et.set(s,l),l},bn=()=>J,is=R("Tags",new Map),te=new Set;let P=new Map,Lt;const as=-1,Cn=e=>{te.add(e),is.set(e,os())},Tn=e=>te.has(e),En=()=>[...te.values()],Ln=e=>{let t=is.get(e);t===void 0&&(t=as),P.has(t)||P.set(t,new Set),P.get(t).add(e),Lt||(Lt=setTimeout(()=>{Mn(),P=new Map,Lt=void 0},1e3))},Mn=()=>{const e=bn(),t=os(),s=e[t];let n="Multiple UI5 Web Components instances detected.";e.length>1&&(n=`${n}
2
+ Loading order (versions before 1.1.0 not listed): ${e.map(r=>`
3
+ ${r.description}`).join("")}`),[...P.keys()].forEach(r=>{let o,i;r===as?(o=1,i={description:"Older unknown runtime"}):(o=$n(t,r),i=e[r]);let c;o>0?c="an older":o<0?c="a newer":c="the same",n=`${n}
4
+
5
+ "${s.description}" failed to define ${P.get(r).size} tag(s) as they were defined by a runtime of ${c} version "${i.description}": ${[...P.get(r)].sort().join(", ")}.`,o>0?n=`${n}
6
+ WARNING! If your code uses features of the above web components, unavailable in ${i.description}, it might not work as expected!`:n=`${n}
7
+ Since the above web components were defined by the same or newer version runtime, they should be compatible with your code.`}),n=`${n}
8
+
9
+ To prevent other runtimes from defining tags that you use, consider using scoping or have third-party libraries use scoping: https://github.com/SAP/ui5-webcomponents/blob/main/docs/2-advanced/03-scoping.md.`,console.warn(n)},cs=new Set,Pn=e=>{cs.add(e)},In=e=>cs.has(e),ee=new Set,xn=new O,H=new _n;let D,lt,Mt,ot;const ls=async e=>{H.add(e),await Rn()},us=e=>{xn.fireEvent("beforeComponentRender",e),ee.add(e),e._render()},On=e=>{H.remove(e),ee.delete(e)},Rn=async()=>{ot||(ot=new Promise(e=>{window.requestAnimationFrame(()=>{H.process(us),ot=null,e(),Mt||(Mt=setTimeout(()=>{Mt=void 0,H.isEmpty()&&kn()},200))})})),await ot},Dn=()=>D||(D=new Promise(e=>{lt=e,window.requestAnimationFrame(()=>{H.isEmpty()&&(D=void 0,e())})}),D),Nn=()=>{const e=En().map(t=>customElements.whenDefined(t));return Promise.all(e)},se=async()=>{await Nn(),await Dn()},kn=()=>{!H.isEmpty()||lt&&(lt(),lt=void 0,D=void 0)},At=async e=>{ee.forEach(t=>{const s=t.constructor,n=s.getMetadata().getTag(),r=In(s),o=s.getMetadata().isLanguageAware(),i=s.getMetadata().isThemeAware();(!e||e.tag===n||e.rtlAware&&r||e.languageAware&&o||e.themeAware&&i)&&ls(t)}),await se()};let G,qt;const ne=()=>(G===void 0&&(G=an()),G),Un=async e=>{G!==e&&(G=e,await yn(e),await At({languageAware:!0}))},Bn=e=>{qt=e},Hn=()=>(qt===void 0&&Bn(cn()),qt),Vn=/^((?:[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 ds{constructor(t){const s=Vn.exec(t.replace(/_/g,"-"));if(s===null)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=s[1]||pt,this.sScript=s[2]||"",this.sRegion=s[3]||"",this.sVariant=s[4]&&s[4].slice(1)||null,this.sExtension=s[5]&&s[5].slice(1)||null,this.sPrivateUse=s[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,n=>n.toUpperCase())),this.sRegion&&(this.sRegion=this.sRegion.toUpperCase())}getLanguage(){return this.sLanguage}getScript(){return this.sScript}getRegion(){return this.sRegion}getVariant(){return this.sVariant}getVariantSubtags(){return this.sVariant?this.sVariant.split("-"):[]}getExtension(){return this.sExtension}getExtensionSubtags(){return this.sExtension?this.sExtension.slice(2).split("-"):[]}getPrivateUse(){return this.sPrivateUse}getPrivateUseSubtags(){return this.sPrivateUse?this.sPrivateUse.slice(2).split("-"):[]}hasPrivateUseSubtag(t){return this.getPrivateUseSubtags().indexOf(t)>=0}toString(){const t=[this.sLanguage];return this.sScript&&t.push(this.sScript),this.sRegion&&t.push(this.sRegion),this.sVariant&&t.push(this.sVariant),this.sExtension&&t.push(this.sExtension),this.sPrivateUse&&t.push(this.sPrivateUse),t.join("-")}}const Pt=new Map,hs=e=>(Pt.has(e)||Pt.set(e,new ds(e)),Pt.get(e)),ge=e=>{try{if(e&&typeof e=="string")return hs(e)}catch{}return new ds($)},Gt=e=>{if(e)return ge(e);const t=ne();return t?hs(t):ge(Ke())},Fn=/^((?:[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,me=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,jn={he:"iw",yi:"ji",nb:"no",sr:"sh"},zn=e=>{let t;if(!e)return $;if(typeof e=="string"&&(t=Fn.exec(e.replace(/_/g,"-")))){let s=t[1].toLowerCase(),n=t[3]?t[3].toUpperCase():void 0;const r=t[2]?t[2].toLowerCase():void 0,o=t[4]?t[4].slice(1):void 0,i=t[6];return s=jn[s]||s,i&&(t=me.exec(i))||o&&(t=me.exec(o))?`en_US_${t[1].toLowerCase()}`:(s==="zh"&&!n&&(r==="hans"?n="CN":r==="hant"&&(n="TW")),s+(n?"_"+n+(o?"_"+o.replace("-","_"):""):""))}return $},Wn=e=>{if(!e)return $;if(e==="zh_HK")return"zh_TW";const t=e.lastIndexOf("_");return t>=0?e.slice(0,t):e!==$?$:""},ye=new Set,_e=new Set,re=new Map,It=new Map,oe=new Map,Zn=(e,t,s)=>{const n=`${e}/${t}`;oe.set(n,s)},we=(e,t)=>{re.set(e,t)},qn=e=>re.get(e),ve=(e,t)=>{const s=`${e}/${t}`;return oe.has(s)},Gn=(e,t)=>{const s=`${e}/${t}`,n=oe.get(s);return n&&!It.get(s)&&It.set(s,n(t)),It.get(s)},Kn=e=>{ye.has(e)||(console.warn(`[${e}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${e}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`),ye.add(e))},fs=async e=>{const t=Gt().getLanguage(),s=Gt().getRegion();let n=zn(t+(s?`-${s}`:""));for(;n!==pt&&!ve(e,n);)n=Wn(n);const r=Hn();if(n===pt&&!r){we(e,null);return}if(!ve(e,n)){Kn(e);return}try{const o=await Gn(e,n);we(e,o)}catch(o){const i=o;_e.has(i.message)||(_e.add(i.message),console.error(i.message))}};ns(e=>{const t=[...re.keys()];return Promise.all(t.map(fs))});const Jn=new Map,mt=new Map,xt=new Map,Ae=new Set;let Se=!1;const Xn={iw:"he",ji:"yi",in:"id"},$e=e=>{Se||(console.warn(`[LocaleData] Supported locale "${e}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),Se=!0)},Yn=(e,t,s)=>{e=e&&Xn[e]||e,e==="no"&&(e="nb"),e==="zh"&&!t&&(s==="Hans"?t="CN":s==="Hant"&&(t="TW")),(e==="sh"||e==="sr"&&s==="Latn")&&(e="sr",t="Latn");let n=`${e}_${t}`;return ue.includes(n)||(n=e,ue.includes(n))?mt.has(n)?n:($e(n),$):$},be=(e,t)=>{Jn.set(e,t)},Qn=e=>{if(!xt.get(e)){const t=mt.get(e);if(!t)throw new Error(`CLDR data for locale ${e} is not loaded!`);xt.set(e,t(e))}return xt.get(e)},tr=async(e,t,s)=>{const n=Yn(e,t,s),r=b("OpenUI5Support");if(r){const o=r.getLocaleDataObject();if(o){be(n,o);return}}try{const o=await Qn(n);be(n,o)}catch(o){const i=o;Ae.has(i.message)||(Ae.add(i.message),console.error(i.message))}},er=(e,t)=>{mt.set(e,t)};er("en",async()=>(await fetch("https://sdk.openui5.org/1.103.0/resources/sap/ui/core/cldr/en.json")).json());ns(()=>{const e=Gt();return tr(e.getLanguage(),e.getRegion(),e.getScript())});const ps=new Map,gs=new Map,ms=new Set,yt=new Set,E=(e,t,s)=>{gs.set(`${e}/${t}`,s),ms.add(e),yt.add(t)},ys=async(e,t)=>{const s=ps.get(`${e}_${t}`);if(s!==void 0)return s;if(!yt.has(t)){const n=[...yt.values()].join(", ");return console.warn(`You have requested a non-registered theme ${t} - falling back to ${ft}. Registered themes are: ${n}`),Ce(e,ft)}return Ce(e,t)},Ce=async(e,t)=>{const s=gs.get(`${e}/${t}`);if(!s){console.error(`Theme [${t}] not registered for package [${e}]`);return}let n;try{n=await s(t)}catch(o){console.error(e,o.message);return}const r=n._||n;return ps.set(`${e}_${t}`,r),r},_s=()=>ms,sr=e=>yt.has(e);var _t;(function(e){e["SAP-icons"]="SAP-icons-v4",e.horizon="SAP-icons-v5",e["SAP-icons-TNT"]="tnt",e.BusinessSuiteInAppSymbols="business-suite"})(_t||(_t={}));const ws=e=>_t[e]?_t[e]:e,nr=(e,t)=>{const s=document.createElement("style");return s.type="text/css",t&&Object.entries(t).forEach(n=>s.setAttribute(...n)),s.textContent=e,document.head.appendChild(s),s},rr=(e,t)=>{const s=document.createElement("link");return s.type="text/css",s.rel="stylesheet",t&&Object.entries(t).forEach(n=>s.setAttribute(...n)),s.href=e,document.head.appendChild(s),new Promise(n=>{s.addEventListener("load",n),s.addEventListener("error",n)})},St=(e,t)=>t?`${e}|${t}`:e,$t=(e,t,s="")=>{const n=typeof e=="string"?e:e.content;if(document.adoptedStyleSheets){const r=new CSSStyleSheet;r.replaceSync(n),r._ui5StyleId=St(t,s),document.adoptedStyleSheets=[...document.adoptedStyleSheets,r]}else{const r={};r[t]=s,nr(n,r)}},or=(e,t,s="")=>{const n=typeof e=="string"?e:e.content;if(document.adoptedStyleSheets){const r=document.adoptedStyleSheets.find(o=>o._ui5StyleId===St(t,s));r&&r.replaceSync(n||"")}else{const r=document.querySelector(`head>style[${t}="${s}"]`);r&&(r.textContent=n||"")}},bt=(e,t="")=>document.adoptedStyleSheets?!!document.adoptedStyleSheets.find(s=>s._ui5StyleId===St(e,t)):!!document.querySelector(`head>style[${e}="${t}"]`),ir=(e,t="")=>{var s;if(document.adoptedStyleSheets)document.adoptedStyleSheets=document.adoptedStyleSheets.filter(n=>n._ui5StyleId!==St(e,t));else{const n=document.querySelector(`head > style[${e}="${t}"]`);(s=n==null?void 0:n.parentElement)==null||s.removeChild(n)}},vs=(e,t,s="")=>{bt(t,s)?or(e,t,s):$t(e,t,s)},N=new Set,ar=()=>{let e=document.querySelector(".sapThemeMetaData-Base-baseLib")||document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");if(e)return getComputedStyle(e).backgroundImage;e=document.createElement("span"),e.style.display="none",e.classList.add("sapThemeMetaData-Base-baseLib"),document.body.appendChild(e);let t=getComputedStyle(e).backgroundImage;return t==="none"&&(e.classList.add("sapThemeMetaData-UI5-sap-ui-core"),t=getComputedStyle(e).backgroundImage),document.body.removeChild(e),t},cr=e=>{const t=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(e);if(t&&t.length>=2){let s=t[1];if(s=s.replace(/\\"/g,'"'),s.charAt(0)!=="{"&&s.charAt(s.length-1)!=="}")try{s=decodeURIComponent(s)}catch{N.has("decode")||(console.warn("Malformed theme metadata string, unable to decodeURIComponent"),N.add("decode"));return}try{return JSON.parse(s)}catch{N.has("parse")||(console.warn("Malformed theme metadata string, unable to parse JSON"),N.add("parse"))}}},lr=e=>{let t,s;try{t=e.Path.match(/\.([^.]+)\.css_variables$/)[1],s=e.Extends[0]}catch{N.has("object")||(console.warn("Malformed theme metadata Object",e),N.add("object"));return}return{themeName:t,baseThemeName:s}},Te=()=>{const e=ar();if(!e||e==="none")return;const t=cr(e);if(t)return lr(t)},ur=new O,dr="themeLoaded",hr=e=>ur.fireEvent(dr,e);let Ot;const As=()=>(Ot===void 0&&(Ot=rn()),Ot),fr=e=>`${As()}Base/baseLib/${e}/css_variables.css`,pr=async e=>{const t=document.querySelector(`[sap-ui-webcomponents-theme="${e}"]`);t&&document.head.removeChild(t),await rr(fr(e),{"sap-ui-webcomponents-theme":e})},X="@ui5/webcomponents-theming",gr=()=>_s().has(X),mr=async e=>{if(!gr())return;const t=await ys(X,e);t&&vs(t,"data-ui5-theme-properties",X)},yr=()=>{ir("data-ui5-theme-properties",X)},_r=async e=>{const s=[..._s()].map(async n=>{if(n===X)return;const r=await ys(n,e);r&&vs(r,"data-ui5-theme-properties",n)});return Promise.all(s)},wr=async e=>{var n;const t=Te();if(t)return t;const s=b("OpenUI5Support");if(s){if(s.cssVariablesLoaded())return{themeName:(n=s.getConfigurationSettingsObject())==null?void 0:n.theme,baseThemeName:""}}else if(As())return await pr(e),Te()},Ss=async e=>{const t=await wr(e);!t||e!==t.themeName?await mr(e):yr();const s=sr(e)?e:t&&t.baseThemeName;await _r(s||ft),hr(e)};let U;const Ct=()=>(U===void 0&&(U=nn()),U),$s=async e=>{U!==e&&(U=e,await Ss(U),await At({themeAware:!0}))},vr=e=>Ct().startsWith(e),Ar=new Map;var k;(function(e){e.SAPIconsV4="SAP-icons-v4",e.SAPIconsV5="SAP-icons-v5",e.SAPIconsTNTV2="tnt-v2",e.SAPIconsTNTV3="tnt-v3",e.SAPBSIcons="business-suite"})(k||(k={}));const Sr=e=>{const t=Ct(),s=Ar.get(t);return!e&&s?ws(s):$r(e)},$r=e=>{const t=vr("sap_horizon");return e?e==="tnt"?t?k.SAPIconsTNTV3:k.SAPIconsTNTV2:e:t?k.SAPIconsV5:k.SAPIconsV4},Ee=new Map,wt=R("SVGIcons.registry",new Map),Rt=R("SVGIcons.promises",new Map),Le="ICON_NOT_FOUND",br=async e=>{if(!Rt.has(e)){if(!Ee.has(e))throw new Error(`No loader registered for the ${e} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const t=Ee.get(e);Rt.set(e,t(e))}return Rt.get(e)},Cr=e=>{Object.keys(e.data).forEach(t=>{const s=e.data[t];Tr(t,{pathData:s.path||s.paths,ltr:s.ltr,accData:s.acc,collection:e.collection,packageName:e.packageName})})},Tr=(e,t)=>{const s=`${t.collection}/${e}`;wt.set(s,{pathData:t.pathData,ltr:t.ltr,accData:t.accData,packageName:t.packageName,customTemplate:t.customTemplate,viewBox:t.viewBox,collection:t.collection})},Er=e=>{e.startsWith("sap-icon://")&&(e=e.replace("sap-icon://",""));let t;[e,t]=e.split("/").reverse(),e=e.replace("icon-",""),t&&(t=ws(t)),t=Sr(t);const s=`${t}/${e}`;return{name:e,collection:t,registryKey:s}},Dt=async e=>{const{collection:t,registryKey:s}=Er(e);let n=Le;try{n=await br(t)}catch(r){console.error(r.message)}return n===Le?n:(wt.has(s)||Cr(n),wt.get(s))},Lr=async()=>(await Dt("edit"),await Dt("tnt/arrow"),await Dt("business-suite/3d"),Array.from(wt.keys())),Mr=R("PopupUtilsData",{currentZIndex:100}),Me=()=>Mr.currentZIndex,A=()=>{var e,t,s;return(s=(t=(e=window.sap)==null?void 0:e.ui)==null?void 0:t.getCore)==null?void 0:s.call(t)};class ie{static isLoaded(){return!!A()}static init(){const t=A();return t?new Promise(s=>{t.attachInit(()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],(n,r)=>{r.setInitialZIndex(Me()),s()})})}):Promise.resolve()}static getConfigurationSettingsObject(){const t=A();if(!t)return;const s=t.getConfiguration(),n=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:s.getAnimationMode(),language:s.getLanguage(),theme:s.getTheme(),themeRoot:s.getThemeRoot(),rtl:s.getRTL(),calendarType:s.getCalendarType(),formatSettings:{firstDayOfWeek:n?n.getInstance(s.getLocale()).getFirstDayOfWeek():void 0}}}static getLocaleDataObject(){const t=A();if(!t)return;const s=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(s.getLocale())._get()}static _listenForThemeChange(){const t=A(),s=t.getConfiguration();t.attachThemeChanged(async()=>{await $s(s.getTheme())})}static attachListeners(){!A()||ie._listenForThemeChange()}static cssVariablesLoaded(){if(!A())return;const s=[...document.head.children].find(n=>n.id==="sap-ui-theme-sap.ui.core");if(!!s)return!!s.href.match(/\/css(-|_)variables\.css/)}static getNextZIndex(){return A()?window.sap.ui.require("sap/ui/core/Popup").getNextZIndex():void 0}static setInitialZIndex(){if(!A())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(Me())}}Js("OpenUI5Support",ie);const Pr=()=>new Promise(e=>{document.body?e():document.addEventListener("DOMContentLoaded",()=>{e()})}),Ir={packageName:"@ui5/webcomponents-base",fileName:"FontFace.css",content:`@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local('72-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local('72-Bold-full'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Bold';font-style:normal;src:local('72-Bold'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Boldfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Light';font-style:normal;src:local('72-Light'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:'72-Lightfull';font-style:normal;src:url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Light-full.woff2?ui5-webcomponents) format("woff2")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local('72Black'),url(https://sdk.openui5.org/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2")}`},xr={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')}"},Or=()=>{const e=b("OpenUI5Support");(!e||!e.isLoaded())&&Rr(),Dr()},Rr=()=>{bt("data-ui5-font-face")||$t(Ir,"data-ui5-font-face")},Dr=()=>{bt("data-ui5-font-face-override")||$t(xr,"data-ui5-font-face-override")},Nr={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}"},kr=()=>{bt("data-ui5-system-css-vars")||$t(Nr,"data-ui5-system-css-vars")};let it;const Ur=async()=>{if(it!==void 0)return it;const e=async t=>{if(typeof document=="undefined"){t();return}Sn();const s=b("OpenUI5Support"),n=s?s.isLoaded():!1,r=b("F6Navigation");s&&await s.init(),r&&!n&&r.init(),await Pr(),await Ss(Ct()),s&&s.attachListeners(),Or(),kr(),t()};return it=new Promise(e),it},Nt=new Map,kt=new Map,Pe=e=>{if(!Nt.has(e)){const t=Br(e.split("-"));Nt.set(e,t)}return Nt.get(e)},bs=e=>{if(!kt.has(e)){const t=e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();kt.set(e,t)}return kt.get(e)},Br=e=>e.map((t,s)=>s===0?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join(""),Hr=e=>{if(!(e instanceof HTMLElement))return"default";const t=e.getAttribute("slot");if(t){const s=t.match(/^(.+?)-\d+$/);return s?s[1]:t}return"default"},Cs=e=>e instanceof HTMLSlotElement?e.assignedNodes({flatten:!0}).filter(t=>t instanceof HTMLElement):[e],Vr=e=>e.reduce((t,s)=>t.concat(Cs(s)),[]);let Fr,Ie={include:[/^ui5-/],exclude:[]};const Ut=new Map,Ts=()=>Fr,Kt=e=>{if(!Ut.has(e)){const t=Ie.include.some(s=>e.match(s))&&!Ie.exclude.some(s=>e.match(s));Ut.set(e,t)}return Ut.get(e)},Es=e=>{if(Kt(e))return Ts()};class jr{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},s=this.slotsAreManaged(),n=this.getProperties();for(const r in n){const o=n[r].type,i=n[r].defaultValue;o===Boolean?(t[r]=!1,i!==void 0&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):n[r].multiple?t[r]=[]:o===Object?t[r]="defaultValue"in n[r]?n[r].defaultValue:{}:o===String?t[r]="defaultValue"in n[r]?n[r].defaultValue:"":t[r]=i}if(s){const r=this.getSlots();for(const[o,i]of Object.entries(r)){const c=i.propertyName||o;t[c]=[]}}return this._initialState=t,t}static validatePropertyValue(t,s){return s.multiple&&t?t.map(r=>xe(r,s)):xe(t,s)}static validateSlotValue(t,s){return zr(t,s)}getPureTag(){return this.metadata.tag||""}getTag(){const t=this.metadata.tag;if(!t)return"";const s=Es(t);return s?`${t}-${s}`:t}hasAttribute(t){const s=this.getProperties()[t];return s.type!==Object&&!s.noAttribute&&!s.multiple}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute.bind(this)).map(bs)}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.values(this.getSlots()).some(t=>t.individualSlots)}slotsAreManaged(){return!!this.metadata.managedSlots}supportsF6FastNavigation(){return!!this.metadata.fastNavigation}getProperties(){return this.metadata.properties||(this.metadata.properties={}),this.metadata.properties}getEvents(){return this.metadata.events||(this.metadata.events={}),this.metadata.events}getSlots(){return this.metadata.slots||(this.metadata.slots={}),this.metadata.slots}isLanguageAware(){return!!this.metadata.languageAware}isThemeAware(){return!!this.metadata.themeAware}shouldInvalidateOnChildChange(t,s,n){const r=this.getSlots()[t].invalidateOnChildChange;if(r===void 0)return!1;if(typeof r=="boolean")return r;if(typeof r=="object"){if(s==="property"){if(r.properties===void 0)return!1;if(typeof r.properties=="boolean")return r.properties;if(Array.isArray(r.properties))return r.properties.includes(n);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if(s==="slot"){if(r.slots===void 0)return!1;if(typeof r.slots=="boolean")return r.slots;if(Array.isArray(r.slots))return r.slots.includes(n);throw new Error("Wrong format for invalidateOnChildChange.slots: boolean or array is expected")}}throw new Error("Wrong format for invalidateOnChildChange: boolean or object is expected")}}const xe=(e,t)=>{const s=t.type;let n=t.validator;return s&&s.isDataTypeClass&&(n=s),n?n.isValid(e)?e:t.defaultValue:!s||s===String?typeof e=="string"||typeof e=="undefined"||e===null?e:e.toString():s===Boolean?typeof e=="boolean"?e:!1:s===Object?typeof e=="object"?e:t.defaultValue:e in s?e:t.defaultValue},zr=(e,t)=>(e&&Cs(e).forEach(s=>{if(!(s instanceof t.type))throw new Error(`The element is not of type ${t.type.toString()}`)}),e);customElements.get("ui5-static-area")||customElements.define("ui5-static-area",class extends HTMLElement{});const Wr=(e,t)=>{const s=Zr(t),n=Ts();return e(t,s,n)},Zr=e=>{const t=e.constructor,s=t.getMetadata().getPureTag(),n=t.getUniqueDependencies().map(r=>r.getMetadata().getPureTag()).filter(Kt);return Kt(s)&&n.push(s),n},qr=()=>R("CustomStyle.eventProvider",new O),Gr="CustomCSSChange",ae=e=>{qr().attachEvent(Gr,e)},Kr=()=>R("CustomStyle.customCSSFor",{});ae(e=>{At({tag:e})});const Jr=e=>{const t=Kr();return t[e]?t[e].join(""):""},Xr=10,Bt=e=>Array.isArray(e)?e.filter(t=>!!t).flat(Xr).map(t=>typeof t=="string"?t:t.content).join(" "):typeof e=="string"?e:e.content,ut=new Map;ae(e=>{ut.delete(`${e}_normal`)});const Ls=(e,t=!1)=>{const s=e.getMetadata().getTag(),n=`${s}_${t?"static":"normal"}`,r=b("OpenUI5Enablement");if(!ut.has(n)){let o,i="";if(r&&(i=Bt(r.getBusyIndicatorStyles())),t)o=Bt(e.staticAreaStyles);else{const c=Jr(s)||"";o=`${Bt(e.styles)} ${c}`}o=`${o} ${i}`,ut.set(n,o)}return ut.get(n)},dt=new Map;ae(e=>{dt.delete(`${e}_normal`)});const Yr=(e,t=!1)=>{const n=`${e.getMetadata().getTag()}_${t?"static":"normal"}`;if(!dt.has(n)){const r=Ls(e,t),o=new CSSStyleSheet;o.replaceSync(r),dt.set(n,[o])}return dt.get(n)},Jt=(e,t=!1)=>{let s;const n=e.constructor,o=n[t?"staticAreaTemplate":"template"],i=t?e.staticAreaItem.shadowRoot:e.shadowRoot,c=Wr(o,e);if(!i){console.warn("There is no shadow root to update");return}document.adoptedStyleSheets?i.adoptedStyleSheets=Yr(n,t):s=Ls(n,t),n.render(c,i,s,t,{host:e})},Qr="--_ui5_content_density",to=e=>getComputedStyle(e).getPropertyValue(Qr);var eo=e=>{const t=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(e);return t&&t[2]?t[2].split(/,/):null};const so={iw:"he",ji:"yi",in:"id",sh:"sr"},no=eo("$cldr-rtl-locales:ar,fa,he$")||[],ro=e=>(e=e&&so[e]||e,no.indexOf(e)>=0),Ms=()=>{if(typeof document=="undefined")return!1;const e=on();return e!==void 0?!!e:ro(ne()||Ke())},oo="--_ui5_dir",Ps=e=>{const t=window.document,s=["ltr","rtl"],n=getComputedStyle(e).getPropertyValue(oo);return s.includes(n)?n:s.includes(e.dir)?e.dir:s.includes(t.documentElement.dir)?t.documentElement.dir:s.includes(t.body.dir)?t.body.dir:Ms()?"rtl":void 0},at="ui5-static-area-item",io="data-sap-ui-integration-popup-content";class K extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id),this.ownerElement.hasAttribute("data-ui5-static-stable")&&this.setAttribute("data-ui5-stable",this.ownerElement.getAttribute("data-ui5-static-stable"))}update(){this._rendered&&(this._updateAdditionalAttrs(),this._updateContentDensity(),this._updateDirection(),Jt(this.ownerElement,!0))}_updateContentDensity(){to(this.ownerElement)==="compact"?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){if(this.ownerElement){const t=Ps(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}}_updateAdditionalAttrs(){this.setAttribute(at,""),this.setAttribute(io,"")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,Jt(this.ownerElement,!0)),await se(),this.shadowRoot}static getTag(){const t=Es(at);return t?`${at}-${t}`:at}static createInstance(){return customElements.get(K.getTag())||customElements.define(K.getTag(),K),document.createElement(this.getTag())}}const Xt=new WeakMap,ao=(e,t,s)=>{const n=new MutationObserver(t);Xt.set(e,n),n.observe(e,s)},co=e=>{const t=Xt.get(e);t&&(t.disconnect(),Xt.delete(e))},lo=["value-changed"];let ht;const uo=e=>lo.includes(e),ho=e=>{const t=ce();return!(typeof t!="boolean"&&t.events&&t.events.includes&&t.events.includes(e))},ce=()=>(ht===void 0&&(ht=ln()),ht),fo=e=>{ht=e},po=e=>{const t=ce();return uo(e)?!1:t===!0?!0:!ho(e)},go=["disabled","title","hidden","role","draggable"],Oe=e=>go.includes(e)||e.startsWith("aria")?!0:![HTMLElement,Element,Node].some(s=>s.prototype.hasOwnProperty(e)),Re=(e,t)=>{if(e.length!==t.length)return!1;for(let s=0;s<e.length;s++)if(e[s]!==t[s])return!1;return!0};let mo=0;const De=new Map,Ht=new Map;function z(e){this._suppressInvalidation||(this.onInvalidation(e),this._changedState.push(e),ls(this),this._eventProvider.fireEvent("invalidate",{...e,target:this}))}let Ne={};class T extends HTMLElement{constructor(){super();const t=this.constructor;this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new O;let s;this._domRefReadyPromise=new Promise(n=>{s=n}),this._domRefReadyPromise._deferredResolve=s,this._doNotSyncAttributes=new Set,this._state={...t.getMetadata().getInitialState()},this._upgradeAllProperties(),t._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id=`ui5wc_${++mo}`),this.__id}async connectedCallback(){const t=this.constructor;this.setAttribute(t.getMetadata().getPureTag(),""),t.getMetadata().supportsF6FastNavigation()&&this.setAttribute("data-sap-ui-fastnavgroup","true");const s=t.getMetadata().slotsAreManaged();this._inDOM=!0,s&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&(us(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,this.onEnterDOM())}disconnectedCallback(){const s=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!1,s&&this._stopObservingDOMChildren(),this._fullyConnected&&(this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),On(this)}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}_startObservingDOMChildren(){const t=this.constructor;if(!t.getMetadata().hasSlots())return;const n=t.getMetadata().canSlotText(),r={childList:!0,subtree:n,characterData:n};ao(this,this._processChildren.bind(this),r)}_stopObservingDOMChildren(){co(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor,s=t.getMetadata().getSlots(),n=t.getMetadata().canSlotText(),r=Array.from(n?this.childNodes:this.children),o=new Map,i=new Map;for(const[u,d]of Object.entries(s)){const h=d.propertyName||u;i.set(h,u),o.set(h,[...this._state[h]]),this._clearSlot(u,d)}const c=new Map,a=new Map,l=r.map(async(u,d)=>{const h=Hr(u),p=s[h];if(p===void 0){if(h!=="default"){const g=Object.keys(s).join(", ");console.warn(`Unknown slotName: ${h}, ignoring`,u,`Valid values are: ${g}`)}return}if(p.individualSlots){const g=(c.get(h)||0)+1;c.set(h,g),u._individualSlot=`${h}-${g}`}if(u instanceof HTMLElement){const g=u.localName;if(g.includes("-")){if(!window.customElements.get(g)){const zs=window.customElements.whenDefined(g);let rt=De.get(g);rt||(rt=new Promise(Ws=>setTimeout(Ws,1e3)),De.set(g,rt)),await Promise.race([zs,rt])}window.customElements.upgrade(u)}}if(u=t.getMetadata().constructor.validateSlotValue(u,p),ke(u)&&p.invalidateOnChildChange){const g=this._getChildChangeListener(h);g&&u.attachInvalidate.call(u,g)}u instanceof HTMLSlotElement&&this._attachSlotChange(u,h);const m=p.propertyName||h;a.has(m)?a.get(m).push({child:u,idx:d}):a.set(m,[{child:u,idx:d}])});await Promise.all(l),a.forEach((u,d)=>{this._state[d]=u.sort((h,p)=>h.idx-p.idx).map(h=>h.child)});let f=!1;for(const[u,d]of Object.entries(s)){const h=d.propertyName||u;Re(o.get(h),this._state[h])||(z.call(this,{type:"slot",name:i.get(h),reason:"children"}),f=!0)}f||z.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,s){const n=s.propertyName||t;this._state[n].forEach(o=>{if(ke(o)){const i=this._getChildChangeListener(t);i&&o.detachInvalidate.call(o,i)}o instanceof HTMLSlotElement&&this._detachSlotChange(o,t)}),this._state[n]=[]}attachInvalidate(t){this._eventProvider.attachEvent("invalidate",t)}detachInvalidate(t){this._eventProvider.detachEvent("invalidate",t)}_onChildChange(t,s){!this.constructor.getMetadata().shouldInvalidateOnChildChange(t,s.type,s.name)||z.call(this,{type:"slot",name:t,reason:"childchange",child:s.target})}attributeChangedCallback(t,s,n){let r;if(this._doNotSyncAttributes.has(t))return;const o=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),c=Pe(i);if(o.hasOwnProperty(c)){const a=o[c],l=a.type;let f=a.validator;l&&l.isDataTypeClass&&(f=l),f?r=f.attributeToProperty(n):l===Boolean?r=n!==null:r=n,this[c]=r}}_updateAttribute(t,s){const n=this.constructor;if(!n.getMetadata().hasAttribute(t))return;const o=n.getMetadata().getProperties()[t],i=o.type;let c=o.validator;const a=bs(t),l=this.getAttribute(a);if(i&&i.isDataTypeClass&&(c=i),c){const f=c.propertyToAttribute(s);f===null?(this._doNotSyncAttributes.add(a),this.removeAttribute(a),this._doNotSyncAttributes.delete(a)):this.setAttribute(a,f)}else i===Boolean?s===!0&&l===null?this.setAttribute(a,""):s===!1&&l!==null&&this.removeAttribute(a):typeof s!="object"&&l!==s&&this.setAttribute(a,s)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const s=this[t];delete this[t],this[t]=s}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty.bind(this))}_getChildChangeListener(t){return this._childChangeListeners.has(t)||this._childChangeListeners.set(t,this._onChildChange.bind(this,t)),this._childChangeListeners.get(t)}_getSlotChangeListener(t){return this._slotChangeListeners.has(t)||this._slotChangeListeners.set(t,this._onSlotChange.bind(this,t)),this._slotChangeListeners.get(t)}_attachSlotChange(t,s){const n=this._getSlotChangeListener(s);n&&t.addEventListener("slotchange",n)}_detachSlotChange(t,s){t.removeEventListener("slotchange",this._getSlotChangeListener(s))}_onSlotChange(t){z.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor,s=t.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],t._needsShadowDOM()&&Jt(this),this.staticAreaItem&&this.staticAreaItem.update(),s&&this._assignIndividualSlotsToChildren(),this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach(s=>{s._individualSlot&&s.setAttribute("slot",s._individualSlot)})}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if(typeof this._getRealDomRef=="function")return this._getRealDomRef();if(!this.shadowRoot||this.shadowRoot.children.length===0)return;const t=[...this.shadowRoot.children].filter(s=>!["link","style"].includes(s.localName));return t.length!==1&&console.warn(`The shadow DOM for ${this.constructor.getMetadata().getTag()} does not have a top level element, the getDomRef() method might not work as expected`),t[0]}getFocusDomRef(){const t=this.getDomRef();if(t)return t.querySelector("[data-sap-focus-ref]")||t}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}async focus(t){await this._waitForDomRef();const s=this.getFocusDomRef();s&&typeof s.focus=="function"&&s.focus(t)}fireEvent(t,s,n=!1,r=!0){const o=this._fireEvent(t,s,n,r),i=Pe(t);return i!==t?o&&this._fireEvent(i,s,n):o}_fireEvent(t,s,n=!1,r=!0){const o=new CustomEvent(`ui5-${t}`,{detail:s,composed:!1,bubbles:r,cancelable:n}),i=this.dispatchEvent(o);if(po(t))return i;const c=new CustomEvent(t,{detail:s,composed:!1,bubbles:r,cancelable:n});return this.dispatchEvent(c)&&i}getSlottedNodes(t){return Vr(this[t])}get effectiveDir(){return Pn(this.constructor),Ps(this)}get isUI5Element(){return!0}get classes(){return{}}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _needsShadowDOM(){return!!this.template}static _needsStaticArea(){return!!this.staticAreaTemplate}getStaticAreaItemDomRef(){if(!this.constructor._needsStaticArea())throw new Error("This component does not use the static area");return this.staticAreaItem||(this.staticAreaItem=K.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||rs("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,s=this.getMetadata().slotsAreManaged(),n=this.getMetadata().getProperties();for(const[r,o]of Object.entries(n)){if(Oe(r)||console.warn(`"${r}" is not a valid property name. Use a name that does not collide with DOM APIs`),o.type===Boolean&&o.defaultValue)throw new Error(`Cannot set a default value for property "${r}". All booleans are false by default.`);if(o.type===Array)throw new Error(`Wrong type for property "${r}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(o.type===Object&&o.defaultValue)throw new Error(`Cannot set a default value for property "${r}". All properties of type "Object" are empty objects by default.`);if(o.multiple&&o.defaultValue)throw new Error(`Cannot set a default value for property "${r}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,r,{get(){if(this._state[r]!==void 0)return this._state[r];const i=o.defaultValue;return o.type===Boolean?!1:o.type===String?i:o.multiple?[]:i},set(i){let c;i=this.constructor.getMetadata().constructor.validatePropertyValue(i,o);const f=o.type;let u=o.validator;const d=this._state[r];f&&f.isDataTypeClass&&(u=f),u?c=!u.valuesAreEqual(d,i):Array.isArray(d)&&Array.isArray(i)&&o.multiple&&o.compareValues?c=!Re(d,i):c=d!==i,c&&(this._state[r]=i,z.call(this,{type:"property",name:r,newValue:i,oldValue:d}),this._updateAttribute(r,i))}})}if(s){const r=this.getMetadata().getSlots();for(const[o,i]of Object.entries(r)){Oe(o)||console.warn(`"${o}" is not a valid property name. Use a name that does not collide with DOM APIs`);const c=i.propertyName||o;Object.defineProperty(t,c,{get(){return this._state[c]!==void 0?this._state[c]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get metadata(){return Ne}static set metadata(t){Ne=t}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!Ht.has(this)){const t=this.dependencies.filter((s,n,r)=>r.indexOf(s)===n);Ht.set(this,t)}return Ht.get(this)||[]}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map(t=>t.define()))}static async onDefine(){return Promise.resolve()}static async define(){await Ur(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),s=Tn(t),n=customElements.get(t);return n&&!s?Ln(t):n||(this._generateAccessors(),Cn(t),window.customElements.define(t,this)),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const s=[Object.keys(this.metadata).length?this.metadata:this.decoratorMetadata];let n=this;for(;n!==T;){n=Object.getPrototypeOf(n);const o=Object.keys(n.metadata).length?n.metadata:n.decoratorMetadata;s.unshift(o)}const r=Qt({},...s);return this._metadata=new jr(r),this._metadata}}T.decoratorMetadata={};const ke=e=>"isUI5Element"in e;/**
10
+ * @license
11
+ * Copyright 2017 Google LLC
12
+ * SPDX-License-Identifier: BSD-3-Clause
13
+ */var Vt;const V=globalThis.trustedTypes,Ue=V?V.createPolicy("lit-html",{createHTML:e=>e}):void 0,S=`lit$${(Math.random()+"").slice(9)}$`,le="?"+S,yo=`<${le}>`,F=document,Y=(e="")=>F.createComment(e),Q=e=>e===null||typeof e!="object"&&typeof e!="function",Is=Array.isArray,xs=e=>{var t;return Is(e)||typeof((t=e)===null||t===void 0?void 0:t[Symbol.iterator])=="function"},W=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Be=/-->/g,He=/>/g,L=/>|[ \n \r](?:([^\s"'>=/]+)([ \n \r]*=[ \n \r]*(?:[^ \n \r"'`<>=]|("|')|))|$)/g,Ve=/'/g,Fe=/"/g,Os=/^(?:script|style|textarea|title)$/i,_o=e=>(t,...s)=>({_$litType$:e,strings:t,values:s}),wo=_o(1),I=Symbol.for("lit-noChange"),y=Symbol.for("lit-nothing"),je=new WeakMap,vo=(e,t,s)=>{var n,r;const o=(n=s==null?void 0:s.renderBefore)!==null&&n!==void 0?n:t;let i=o._$litPart$;if(i===void 0){const c=(r=s==null?void 0:s.renderBefore)!==null&&r!==void 0?r:null;o._$litPart$=i=new j(t.insertBefore(Y(),c),c,void 0,s!=null?s:{})}return i._$AI(e),i},B=F.createTreeWalker(F,129,null,!1),Rs=(e,t)=>{const s=e.length-1,n=[];let r,o=t===2?"<svg>":"",i=W;for(let a=0;a<s;a++){const l=e[a];let f,u,d=-1,h=0;for(;h<l.length&&(i.lastIndex=h,u=i.exec(l),u!==null);)h=i.lastIndex,i===W?u[1]==="!--"?i=Be:u[1]!==void 0?i=He:u[2]!==void 0?(Os.test(u[2])&&(r=RegExp("</"+u[2],"g")),i=L):u[3]!==void 0&&(i=L):i===L?u[0]===">"?(i=r!=null?r:W,d=-1):u[1]===void 0?d=-2:(d=i.lastIndex-u[2].length,f=u[1],i=u[3]===void 0?L:u[3]==='"'?Fe:Ve):i===Fe||i===Ve?i=L:i===Be||i===He?i=W:(i=L,r=void 0);const p=i===L&&e[a+1].startsWith("/>")?" ":"";o+=i===W?l+yo:d>=0?(n.push(f),l.slice(0,d)+"$lit$"+l.slice(d)+S+p):l+S+(d===-2?(n.push(void 0),a):p)}const c=o+(e[s]||"<?>")+(t===2?"</svg>":"");if(!Array.isArray(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return[Ue!==void 0?Ue.createHTML(c):c,n]};class tt{constructor({strings:t,_$litType$:s},n){let r;this.parts=[];let o=0,i=0;const c=t.length-1,a=this.parts,[l,f]=Rs(t,s);if(this.el=tt.createElement(l,n),B.currentNode=this.el.content,s===2){const u=this.el.content,d=u.firstChild;d.remove(),u.append(...d.childNodes)}for(;(r=B.nextNode())!==null&&a.length<c;){if(r.nodeType===1){if(r.hasAttributes()){const u=[];for(const d of r.getAttributeNames())if(d.endsWith("$lit$")||d.startsWith(S)){const h=f[i++];if(u.push(d),h!==void 0){const p=r.getAttribute(h.toLowerCase()+"$lit$").split(S),m=/([.?@])?(.*)/.exec(h);a.push({type:1,index:o,name:m[2],strings:p,ctor:m[1]==="."?Ns:m[1]==="?"?ks:m[1]==="@"?Us:et})}else a.push({type:6,index:o})}for(const d of u)r.removeAttribute(d)}if(Os.test(r.tagName)){const u=r.textContent.split(S),d=u.length-1;if(d>0){r.textContent=V?V.emptyScript:"";for(let h=0;h<d;h++)r.append(u[h],Y()),B.nextNode(),a.push({type:2,index:++o});r.append(u[d],Y())}}}else if(r.nodeType===8)if(r.data===le)a.push({type:2,index:o});else{let u=-1;for(;(u=r.data.indexOf(S,u+1))!==-1;)a.push({type:7,index:o}),u+=S.length-1}o++}}static createElement(t,s){const n=F.createElement("template");return n.innerHTML=t,n}}function x(e,t,s=e,n){var r,o,i,c;if(t===I)return t;let a=n!==void 0?(r=s._$Cl)===null||r===void 0?void 0:r[n]:s._$Cu;const l=Q(t)?void 0:t._$litDirective$;return(a==null?void 0:a.constructor)!==l&&((o=a==null?void 0:a._$AO)===null||o===void 0||o.call(a,!1),l===void 0?a=void 0:(a=new l(e),a._$AT(e,s,n)),n!==void 0?((i=(c=s)._$Cl)!==null&&i!==void 0?i:c._$Cl=[])[n]=a:s._$Cu=a),a!==void 0&&(t=x(e,a._$AS(e,t.values),a,n)),t}class Ds{constructor(t,s){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=s}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var s;const{el:{content:n},parts:r}=this._$AD,o=((s=t==null?void 0:t.creationScope)!==null&&s!==void 0?s:F).importNode(n,!0);B.currentNode=o;let i=B.nextNode(),c=0,a=0,l=r[0];for(;l!==void 0;){if(c===l.index){let f;l.type===2?f=new j(i,i.nextSibling,this,t):l.type===1?f=new l.ctor(i,l.name,l.strings,this,t):l.type===6&&(f=new Bs(i,this,t)),this.v.push(f),l=r[++a]}c!==(l==null?void 0:l.index)&&(i=B.nextNode(),c++)}return o}m(t){let s=0;for(const n of this.v)n!==void 0&&(n.strings!==void 0?(n._$AI(t,n,s),s+=n.strings.length-2):n._$AI(t[s])),s++}}class j{constructor(t,s,n,r){var o;this.type=2,this._$AH=y,this._$AN=void 0,this._$AA=t,this._$AB=s,this._$AM=n,this.options=r,this._$Cg=(o=r==null?void 0:r.isConnected)===null||o===void 0||o}get _$AU(){var t,s;return(s=(t=this._$AM)===null||t===void 0?void 0:t._$AU)!==null&&s!==void 0?s:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const s=this._$AM;return s!==void 0&&t.nodeType===11&&(t=s.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,s=this){t=x(this,t,s),Q(t)?t===y||t==null||t===""?(this._$AH!==y&&this._$AR(),this._$AH=y):t!==this._$AH&&t!==I&&this.$(t):t._$litType$!==void 0?this.T(t):t.nodeType!==void 0?this.k(t):xs(t)?this.S(t):this.$(t)}M(t,s=this._$AB){return this._$AA.parentNode.insertBefore(t,s)}k(t){this._$AH!==t&&(this._$AR(),this._$AH=this.M(t))}$(t){this._$AH!==y&&Q(this._$AH)?this._$AA.nextSibling.data=t:this.k(F.createTextNode(t)),this._$AH=t}T(t){var s;const{values:n,_$litType$:r}=t,o=typeof r=="number"?this._$AC(t):(r.el===void 0&&(r.el=tt.createElement(r.h,this.options)),r);if(((s=this._$AH)===null||s===void 0?void 0:s._$AD)===o)this._$AH.m(n);else{const i=new Ds(o,this),c=i.p(this.options);i.m(n),this.k(c),this._$AH=i}}_$AC(t){let s=je.get(t.strings);return s===void 0&&je.set(t.strings,s=new tt(t)),s}S(t){Is(this._$AH)||(this._$AH=[],this._$AR());const s=this._$AH;let n,r=0;for(const o of t)r===s.length?s.push(n=new j(this.M(Y()),this.M(Y()),this,this.options)):n=s[r],n._$AI(o),r++;r<s.length&&(this._$AR(n&&n._$AB.nextSibling,r),s.length=r)}_$AR(t=this._$AA.nextSibling,s){var n;for((n=this._$AP)===null||n===void 0||n.call(this,!1,!0,s);t&&t!==this._$AB;){const r=t.nextSibling;t.remove(),t=r}}setConnected(t){var s;this._$AM===void 0&&(this._$Cg=t,(s=this._$AP)===null||s===void 0||s.call(this,t))}}class et{constructor(t,s,n,r,o){this.type=1,this._$AH=y,this._$AN=void 0,this.element=t,this.name=s,this._$AM=r,this.options=o,n.length>2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=y}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,s=this,n,r){const o=this.strings;let i=!1;if(o===void 0)t=x(this,t,s,0),i=!Q(t)||t!==this._$AH&&t!==I,i&&(this._$AH=t);else{const c=t;let a,l;for(t=o[0],a=0;a<o.length-1;a++)l=x(this,c[n+a],s,a),l===I&&(l=this._$AH[a]),i||(i=!Q(l)||l!==this._$AH[a]),l===y?t=y:t!==y&&(t+=(l!=null?l:"")+o[a+1]),this._$AH[a]=l}i&&!r&&this.C(t)}C(t){t===y?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t!=null?t:"")}}class Ns extends et{constructor(){super(...arguments),this.type=3}C(t){this.element[this.name]=t===y?void 0:t}}const Ao=V?V.emptyScript:"";class ks extends et{constructor(){super(...arguments),this.type=4}C(t){t&&t!==y?this.element.setAttribute(this.name,Ao):this.element.removeAttribute(this.name)}}class Us extends et{constructor(t,s,n,r,o){super(t,s,n,r,o),this.type=5}_$AI(t,s=this){var n;if((t=(n=x(this,t,s,0))!==null&&n!==void 0?n:y)===I)return;const r=this._$AH,o=t===y&&r!==y||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,i=t!==y&&(r===y||o);o&&this.element.removeEventListener(this.name,this,r),i&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var s,n;typeof this._$AH=="function"?this._$AH.call((n=(s=this.options)===null||s===void 0?void 0:s.host)!==null&&n!==void 0?n:this.element,t):this._$AH.handleEvent(t)}}class Bs{constructor(t,s,n){this.element=t,this.type=6,this._$AN=void 0,this._$AM=s,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(t){x(this,t)}}const So={L:"$lit$",P:S,V:le,I:1,N:Rs,R:Ds,j:xs,D:x,H:j,F:et,O:ks,W:Us,B:Ns,Z:Bs},ze=window.litHtmlPolyfillSupport;ze==null||ze(tt,j),((Vt=globalThis.litHtmlVersions)!==null&&Vt!==void 0?Vt:globalThis.litHtmlVersions=[]).push("2.2.2");/**
14
+ * @license
15
+ * Copyright 2017 Google LLC
16
+ * SPDX-License-Identifier: BSD-3-Clause
17
+ */const Hs={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},$o=e=>(...t)=>({_$litDirective$:e,values:t});class Vs{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,s,n){this._$Ct=t,this._$AM=s,this._$Ci=n}_$AS(t,s){return this.update(t,s)}update(t,s){return this.render(...s)}}/**
18
+ * @license
19
+ * Copyright 2020 Google LLC
20
+ * SPDX-License-Identifier: BSD-3-Clause
21
+ */const{H:bo}=So,We=()=>document.createComment(""),Z=(e,t,s)=>{var n;const r=e._$AA.parentNode,o=t===void 0?e._$AB:t._$AA;if(s===void 0){const i=r.insertBefore(We(),o),c=r.insertBefore(We(),o);s=new bo(i,c,e,e.options)}else{const i=s._$AB.nextSibling,c=s._$AM,a=c!==e;if(a){let l;(n=s._$AQ)===null||n===void 0||n.call(s,e),s._$AM=e,s._$AP!==void 0&&(l=e._$AU)!==c._$AU&&s._$AP(l)}if(i!==o||a){let l=s._$AA;for(;l!==i;){const f=l.nextSibling;r.insertBefore(l,o),l=f}}}return s},M=(e,t,s=e)=>(e._$AI(t,s),e),Co={},To=(e,t=Co)=>e._$AH=t,Eo=e=>e._$AH,Ft=e=>{var t;(t=e._$AP)===null||t===void 0||t.call(e,!1,!0);let s=e._$AA;const n=e._$AB.nextSibling;for(;s!==n;){const r=s.nextSibling;s.remove(),s=r}};/**
22
+ * @license
23
+ * Copyright 2017 Google LLC
24
+ * SPDX-License-Identifier: BSD-3-Clause
25
+ */const Ze=(e,t,s)=>{const n=new Map;for(let r=t;r<=s;r++)n.set(e[r],r);return n},Fs=$o(class extends Vs{constructor(e){if(super(e),e.type!==Hs.CHILD)throw Error("repeat() can only be used in text expressions")}dt(e,t,s){let n;s===void 0?s=t:t!==void 0&&(n=t);const r=[],o=[];let i=0;for(const c of e)r[i]=n?n(c,i):i,o[i]=s(c,i),i++;return{values:o,keys:r}}render(e,t,s){return this.dt(e,t,s).values}update(e,[t,s,n]){var r;const o=Eo(e),{values:i,keys:c}=this.dt(t,s,n);if(!Array.isArray(o))return this.ut=c,i;const a=(r=this.ut)!==null&&r!==void 0?r:this.ut=[],l=[];let f,u,d=0,h=o.length-1,p=0,m=i.length-1;for(;d<=h&&p<=m;)if(o[d]===null)d++;else if(o[h]===null)h--;else if(a[d]===c[p])l[p]=M(o[d],i[p]),d++,p++;else if(a[h]===c[m])l[m]=M(o[h],i[m]),h--,m--;else if(a[d]===c[m])l[m]=M(o[d],i[m]),Z(e,l[m+1],o[d]),d++,m--;else if(a[h]===c[p])l[p]=M(o[h],i[p]),Z(e,o[d],o[h]),h--,p++;else if(f===void 0&&(f=Ze(c,p,m),u=Ze(a,d,h)),f.has(a[d]))if(f.has(a[h])){const g=u.get(c[p]),nt=g!==void 0?o[g]:null;if(nt===null){const Tt=Z(e,o[d]);M(Tt,i[p]),l[p]=Tt}else l[p]=M(nt,i[p]),Z(e,o[d],nt),o[g]=null;p++}else Ft(o[h]),h--;else Ft(o[d]),d++;for(;p<=m;){const g=Z(e,l[m+1]);M(g,i[p]),l[p++]=g}for(;d<=h;){const g=o[d++];g!==null&&Ft(g)}return this.ut=c,To(e,l),I}});/**
26
+ * @license
27
+ * Copyright 2018 Google LLC
28
+ * SPDX-License-Identifier: BSD-3-Clause
29
+ */const v=e=>e!=null?e:y;/**
30
+ * @license
31
+ * Copyright 2017 Google LLC
32
+ * SPDX-License-Identifier: BSD-3-Clause
33
+ */class qe extends Vs{constructor(t){if(super(t),this.it=y,t.type!==Hs.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===y||t==null)return this.ft=void 0,this.it=t;if(t===I)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.ft;this.it=t;const s=[t];return s.raw=s,this.ft={_$litType$:this.constructor.resultType,strings:s,values:[]}}}qe.directiveName="unsafeHTML",qe.resultType=1;const w=(e,...t)=>{const s=b("LitStatic");return(s?s.html:wo)(e,...t)},st=(e,t,s,n,r)=>{const o=b("OpenUI5Enablement");o&&!n&&(e=o.wrapTemplateResultInBusyMarkup(w,r.host,e)),typeof s=="string"?e=w`<style>${s}</style>${e}`:Array.isArray(s)&&s.length&&(e=w`${s.map(i=>w`<link type="text/css" rel="stylesheet" href="${i}">`)}${e}`),vo(e,t,r)},Lo={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 js extends T{static get metadata(){return Lo}static get render(){return st}static get template(){return t=>w`<div><p>
34
+ <slot></slot>
35
+ <slot name="other"></slot>
36
+ <slot name="individual-1"></slot>
37
+ <slot name="individual-2"></slot>
38
+ </p></div>`}static get styles(){return`:host {
39
+ display: inline-block;
40
+ border: 1px solid black;
41
+ color: var(--var1);
42
+ }`}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}js.define();const Mo={tag:"ui5-test-no-shadow"};class Po extends T{static get metadata(){return Mo}}Po.define();const Io={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};class xo extends T{static get metadata(){return Io}static get render(){return st}static get template(){return t=>w`<div>
43
+ <slot></slot>
44
+ </div>`}}xo.define();const Oo={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};class Ro extends T{static get metadata(){return Oo}static get render(){return st}static get template(){return t=>w`<div></div>`}}Ro.define();const Do={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};class No extends T{static get metadata(){return Do}static get render(){return st}static get template(){return t=>w`
45
+ <div dir=${t.effectiveDir}>
46
+ WithStaticArea works!
47
+ </div>`}static get staticAreaTemplate(){return t=>w`
48
+ <div class="ui5-with-static-area-content">
49
+ Static area content.
50
+ </div>`}static get styles(){return`
51
+ :host {
52
+ display: inline-block;
53
+ border: 1px solid black;
54
+ color: red;
55
+ }`}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(){}}No.define();const ko=(e,t,s)=>w`<div>Root text: ${v(e.text)}${Fs(e.items,(n,r)=>n._id||r,(n,r)=>Uo(n,r,e))} Root text: ${v(e.text)}</div>`,Uo=(e,t,s,n,r)=>w`<h3>Item-${t}</h3>${e.text?Bo(e,t,s):void 0}<ul>${Fs(e.words,(o,i)=>o._id||i,(o,i)=>Ho(o,i,s))}</ul>${e.text?Vo(e,t,s):void 0}`,Bo=(e,t,s,n,r)=>w`<div class="before-each-content--start--${t}">Root text: ${v(s.text)}, Item text: ${v(e.text)}</div>`,Ho=(e,t,s,n,r)=>w`<li><h3>Word-${t}</h3><div class="nested-each-content--${t}--0">Root Text: ${v(s.text)}, Word text: ${v(e.text)}</div><div class="nested-each-content--${t}--1">Root Text: ${v(s.text)}, Word text: ${v(e.text)}</div></li>`,Vo=(e,t,s,n,r)=>w`<div class="after-each-content--end--${t}">Root text: ${v(s.text)}, Item text: ${v(e.text)}</div>`;class Fo extends T{static get metadata(){return{tag:"ui5-test-complex-template"}}static get render(){return st}static get template(){return ko}get text(){return"root"}get items(){return[{text:"positives",words:[{text:"word1_good"},{text:"word2_nice"},{text:"word3_kind"}]},{text:"negatives",words:[{text:"word4_bad"},{text:"word5_rude"},{text:"word6_unpolite"}]}]}}Fo.define();const jo={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};class zo extends js{static get metadata(){return jo}}zo.define();const Wo={content:":root{ --var1: red; }",packageName:"",fileName:""},Zo={content:":root{ --var1: green; }",packageName:"",fileName:""},qo={content:":root{ --var1: blue; }",packageName:"",fileName:""},Go={content:":root{ --var1: orange; }",packageName:"",fileName:""},Ko={content:":root{ --var1: orange; }",packageName:"",fileName:""},Jo={content:":root{ --var1: yellow; }",packageName:"",fileName:""},Xo={content:":root{ --var1: yellow; }",packageName:"",fileName:""};E("@ui5/webcomponents-base-test","sap_fiori_3",()=>Wo);E("@ui5/webcomponents-base-test","sap_fiori_3_dark",()=>Zo);E("@ui5/webcomponents-base-test","sap_belize",()=>qo);E("@ui5/webcomponents-base-test","sap_belize_hcb",()=>Go);E("@ui5/webcomponents-base-test","sap_belize_hcw",()=>Ko);E("@ui5/webcomponents-base-test","sap_fiori_3_hcb",()=>Jo);E("@ui5/webcomponents-base-test","sap_fiori_3_hcw",()=>Xo);const Yo=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,Qo=(e,t)=>(t=t||[],e.replace(Yo,(s,n,r,o,i)=>{if(n)return"'";if(r)return r.replace(/''/g,"'");if(o){const c=typeof o=="string"?parseInt(o):o;return String(t[c])}throw new Error(`[i18n]: pattern syntax error at pos ${i}`)})),jt=new Map;class ti{constructor(t){this.packageName=t}getText(t,...s){if(typeof t=="string"&&(t={key:t,defaultText:t}),!t||!t.key)return"";const n=qn(this.packageName);n&&!n[t.key]&&console.warn(`Key ${t.key} not found in the i18n bundle, the default text will be used`);const r=n&&n[t.key]?n[t.key]:t.defaultText||t.key;return Qo(r,s)}}const ei=e=>{if(jt.has(e))return jt.get(e);const t=new ti(e);return jt.set(e,t),t},si=async e=>(await fs(e),ei(e)),ni=typeof window.chrome=="object"||typeof window.v8=="object"?(e,t)=>(t>2&&40*t>e.length,e):e=>e,ri=/(?:\r\n|\r|\n|^)[ \t\f]*/,oi=/(\\u[0-9a-fA-F]{0,4})|(\\.)|(\\$)|([ \t\f]*[ \t\f:=][ \t\f]*)/g,ii=/(\\u[0-9a-fA-F]{0,4})|(\\.)|(\\$)/g,ai={"\\f":"\f","\\n":`
56
+ `,"\\r":"\r","\\t":" "},ci=e=>{const t={},s=e.split(ri);let n,r,o,i,c,a,l,f;const u=d=>{i?(i=`${i}${d}`,f++):(i=d,f=0)};for(c=0;c<s.length;c++)if(n=s[c],!(n===""||n.charAt(0)==="#"||n.charAt(0)==="!")){for(r=oi,l=0,r.lastIndex=l,o=null,i="",a=r.exec(n);a!==null;){if(l<a.index&&u(n.slice(l,a.index)),l=r.lastIndex,a[1]){if(a[1].length!==6)throw new Error(`Incomplete Unicode Escape '${a[1]}'`);u(String.fromCharCode(parseInt(a[1].slice(2),16)))}else a[2]?u(ai[a[2]]||a[2].slice(1)):a[3]?(n=s[++c],l=0,r.lastIndex=l):a[4]&&(o=i,i="",r=ii,r.lastIndex=l);a=r.exec(n)}l<n.length&&u(n.slice(l)),o==null&&(o=i,i=""),t[o]=ni(i,i?f:0)}return t};let zt;const li=()=>(zt===void 0&&(zt=sn()),zt);var Yt;(function(e){e.Gregorian="Gregorian",e.Islamic="Islamic",e.Japanese="Japanese",e.Buddhist="Buddhist",e.Persian="Persian"})(Yt||(Yt={}));var Ge=Yt;let q;const ui=()=>(q===void 0&&(q=un()),q&&q in Ge?q:Ge.Gregorian);let Wt;const di=()=>(Wt===void 0&&(Wt=dn()),Wt.firstDayOfWeek),hi=new O,fi="directionChange",pi=()=>hi.fireEvent(fi,void 0),gi=async()=>{const e=pi();await Promise.all(e),await At({rtlAware:!0})};window.registerThemePropertiesLoader=E;window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:li,getLanguage:ne,setLanguage:Un,getTheme:Ct,setTheme:$s,getNoConflict:ce,setNoConflict:fo,getCalendarType:ui,getRTL:Ms,getFirstDayOfWeek:di},getIconNames:Lr,parseProperties:ci,registerI18nLoader:Zn,getI18nBundle:si,renderFinished:se,applyDirection:gi,EventProvider:O};
@@ -1 +1 @@
1
- import"../../bundle.esm.25073731.js";const s=async()=>{["de","es","fr","en"].forEach(e=>window["sap-ui-webcomponents-bundle"].registerI18nLoader("myApp",e,()=>`./assets/messagebundle_${e}.properties`));const n=(await window["sap-ui-webcomponents-bundle"].getI18nBundle("myApp")).getText("PLEASE_WAIT");console.log("Please wait in the current language is: ",n)};s();
1
+ import"../../bundle.esm.2d0cb31f.js";const s=async()=>{["de","es","fr","en"].forEach(e=>window["sap-ui-webcomponents-bundle"].registerI18nLoader("myApp",e,()=>`./assets/messagebundle_${e}.properties`));const n=(await window["sap-ui-webcomponents-bundle"].getI18nBundle("myApp")).getText("PLEASE_WAIT");console.log("Please wait in the current language is: ",n)};s();
@@ -1 +1 @@
1
- import"../../bundle.esm.25073731.js";const a=async()=>{window["sap-ui-webcomponents-bundle"].configuration.setLanguage("fr");const s=["test_1","test_2","test_3","test_4","test_5","test_6","test_7","test_8","test_9"];window["sap-ui-webcomponents-bundle"].registerI18nLoader("myApp","fr",async e=>{const t=await(await fetch(`./assets/messagebundle_${e}.properties`)).text();return window["sap-ui-webcomponents-bundle"].parseProperties(t)});const r=await window["sap-ui-webcomponents-bundle"].getI18nBundle("myApp");s.forEach(e=>{const t=r.getText(e.toUpperCase(),"test"),n=document.getElementById(`${e}_text`);n.innerText=t}),s.forEach(e=>{const t=document.getElementById(`${e}_text`),n=document.getElementById(`${e}_result`);if(t.innerText!==n.innerText){const o=n.parentElement;o.style.textDecoration="underline",o.style.color="red"}})};a();
1
+ import"../../bundle.esm.2d0cb31f.js";const a=async()=>{window["sap-ui-webcomponents-bundle"].configuration.setLanguage("fr");const s=["test_1","test_2","test_3","test_4","test_5","test_6","test_7","test_8","test_9"];window["sap-ui-webcomponents-bundle"].registerI18nLoader("myApp","fr",async e=>{const t=await(await fetch(`./assets/messagebundle_${e}.properties`)).text();return window["sap-ui-webcomponents-bundle"].parseProperties(t)});const r=await window["sap-ui-webcomponents-bundle"].getI18nBundle("myApp");s.forEach(e=>{const t=r.getText(e.toUpperCase(),"test"),n=document.getElementById(`${e}_text`);n.innerText=t}),s.forEach(e=>{const t=document.getElementById(`${e}_text`),n=document.getElementById(`${e}_result`);if(t.innerText!==n.innerText){const o=n.parentElement;o.style.textDecoration="underline",o.style.color="red"}})};a();
@@ -1,17 +1,31 @@
1
1
  /**
2
- * Supported icon collection names and aliases.
2
+ * Supported icon collection aliases.
3
3
  *
4
4
  * Users might specify a collection, using both the key and the value in the following key-value pairs,
5
5
  * e.g the following pairs are completely exchangeable:
6
- * "SAP-icons-TNT/actor" and "tnt/actor", "BusinessSuiteInAppSymbols/3d" and "business-suite/3d",
7
- * "SAP-icons-v5/accept" and "horizon/accept".
8
6
  *
9
- * Note: technically, in the code we maintain the collections under the "value" name - "tnt", "business-suite",
10
- * SAP-icons-v5" and "SAP-icons"(which does not have an alias).
7
+ * - "SAP-icons/accept" and "SAP-icons-v4/accept"
8
+ * - "horizon/accept" and "SAP-icons-v5/accept"
9
+ * - "SAP-icons-TNT/actor" and "tnt/actor"
10
+ * - "BusinessSuiteInAppSymbols/3d" and "business-suite/3d"
11
11
  */
12
- declare const IconCollectionsAlias: {
13
- "SAP-icons-TNT": string;
14
- BusinessSuiteInAppSymbols: string;
15
- horizon: string;
16
- };
12
+ declare enum IconCollectionsAlias {
13
+ "SAP-icons" = "SAP-icons-v4",
14
+ "horizon" = "SAP-icons-v5",
15
+ "SAP-icons-TNT" = "tnt",
16
+ "BusinessSuiteInAppSymbols" = "business-suite"
17
+ }
18
+ /**
19
+ * Returns the mapped collection name for a given alias.
20
+ *
21
+ * <b>For example</b>:
22
+ * - "SAP-icons-TNT"resolves to "tnt"
23
+ * - "BusinessSuiteInAppSymbols" resolves to "business-suite"
24
+ * - "horizon" resolves to "SAP-icons-v5"
25
+ *
26
+ * @param { string } collectionName
27
+ * @return { string } the normalized collection name
28
+ */
29
+ declare const getIconCollectionByAlias: (collectionName: string) => string;
17
30
  export default IconCollectionsAlias;
31
+ export { getIconCollectionByAlias, };
@@ -1,18 +1,38 @@
1
1
  /**
2
- * Supported icon collection names and aliases.
2
+ * Supported icon collection aliases.
3
3
  *
4
4
  * Users might specify a collection, using both the key and the value in the following key-value pairs,
5
5
  * e.g the following pairs are completely exchangeable:
6
- * "SAP-icons-TNT/actor" and "tnt/actor", "BusinessSuiteInAppSymbols/3d" and "business-suite/3d",
7
- * "SAP-icons-v5/accept" and "horizon/accept".
8
6
  *
9
- * Note: technically, in the code we maintain the collections under the "value" name - "tnt", "business-suite",
10
- * SAP-icons-v5" and "SAP-icons"(which does not have an alias).
7
+ * - "SAP-icons/accept" and "SAP-icons-v4/accept"
8
+ * - "horizon/accept" and "SAP-icons-v5/accept"
9
+ * - "SAP-icons-TNT/actor" and "tnt/actor"
10
+ * - "BusinessSuiteInAppSymbols/3d" and "business-suite/3d"
11
11
  */
12
- const IconCollectionsAlias = {
13
- "SAP-icons-TNT": "tnt",
14
- "BusinessSuiteInAppSymbols": "business-suite",
15
- "horizon": "SAP-icons-v5",
12
+ var IconCollectionsAlias;
13
+ (function (IconCollectionsAlias) {
14
+ IconCollectionsAlias["SAP-icons"] = "SAP-icons-v4";
15
+ IconCollectionsAlias["horizon"] = "SAP-icons-v5";
16
+ IconCollectionsAlias["SAP-icons-TNT"] = "tnt";
17
+ IconCollectionsAlias["BusinessSuiteInAppSymbols"] = "business-suite";
18
+ })(IconCollectionsAlias || (IconCollectionsAlias = {}));
19
+ /**
20
+ * Returns the mapped collection name for a given alias.
21
+ *
22
+ * <b>For example</b>:
23
+ * - "SAP-icons-TNT"resolves to "tnt"
24
+ * - "BusinessSuiteInAppSymbols" resolves to "business-suite"
25
+ * - "horizon" resolves to "SAP-icons-v5"
26
+ *
27
+ * @param { string } collectionName
28
+ * @return { string } the normalized collection name
29
+ */
30
+ const getIconCollectionByAlias = (collectionName) => {
31
+ if (IconCollectionsAlias[collectionName]) {
32
+ return IconCollectionsAlias[collectionName];
33
+ }
34
+ return collectionName;
16
35
  };
17
36
  export default IconCollectionsAlias;
37
+ export { getIconCollectionByAlias, };
18
38
  //# sourceMappingURL=IconCollectionsAlias.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconCollectionsAlias.js","sourceRoot":"","sources":["../../src/assets-meta/IconCollectionsAlias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,oBAAoB,GAAG;IAC5B,eAAe,EAAE,KAAK;IACtB,2BAA2B,EAAE,gBAAgB;IAC7C,SAAS,EAAE,cAAc;CACzB,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"IconCollectionsAlias.js","sourceRoot":"","sources":["../../src/assets-meta/IconCollectionsAlias.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,IAAK,oBAKJ;AALD,WAAK,oBAAoB;IACxB,kDAA4B,CAAA;IAC5B,gDAA0B,CAAA;IAC1B,6CAAuB,CAAA;IACvB,oEAA8C,CAAA;AAC/C,CAAC,EALI,oBAAoB,KAApB,oBAAoB,QAKxB;AAED;;;;;;;;;;GAUG;AACH,MAAM,wBAAwB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC3D,IAAI,oBAAoB,CAAC,cAAmD,CAAC,EAAE;QAC9E,OAAO,oBAAoB,CAAC,cAAmD,CAAC,CAAC;KACjF;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC;AACpC,OAAO,EACN,wBAAwB,GACxB,CAAC"}
@@ -1,30 +1,54 @@
1
- declare enum IconCollection {
2
- v4 = "SAP-icons",
3
- v5 = "SAP-icons-v5"
1
+ type IconCollection = "SAP-icons" | "SAP-icons-v4" | "SAP-icons-v5" | "horizon" | "tnt" | "tnt-v2" | "tnt-v3" | "business-suite" | string;
2
+ declare enum RegisteredIconCollection {
3
+ SAPIconsV4 = "SAP-icons-v4",
4
+ SAPIconsV5 = "SAP-icons-v5",
5
+ SAPIconsTNTV2 = "tnt-v2",
6
+ SAPIconsTNTV3 = "tnt-v3",
7
+ SAPBSIcons = "business-suite"
4
8
  }
5
9
  /**
6
- * Sets the default icon collection (SAP-icons font v4 or SAP-icons font v5) per theme,
7
- * which will be applied in case icon collection is not specified.
10
+ * Sets the default icon collection for a given theme.
11
+ *
12
+ * SAP Icons is the default icon collection (that resolves to SAP-icons version 5.x in Horizon theme family and SAP-icons version 4.x in all other themes)
13
+ * and to display icons from other collections, you have to specify the icon collection in addition to the icon name, for example: "tnt/actor", "business-suite/1x2-grid-layout", etc.
14
+ * This method allows setting another (built-in or custom) icon collection as default per theme.
15
+ *
16
+ * <b>Usage</b>
17
+ * <b>For example</b>, to make "SAP-icons version 5.x" the default icon collection in "sap_fiori_3":
18
+ *
19
+ * <pre>
20
+ * setDefaultIconCollection("sap_fiori_3", "SAP-icons-v5");
21
+ *
22
+ * <ui5-icon name="home"></ui5-icon>
23
+ * </pre>
24
+ *
25
+ * <b>For example</b>, to make a custom icon collection (with name "my-custom-collection") the default icon collection in "sap_fiori_3":
26
+ *
27
+ * <pre>
28
+ * setDefaultIconCollection("sap_fiori_3", "my-custom-collection");
29
+ *
30
+ * <ui5-icon name="custom-icon-name"></ui5-icon>
31
+ * </pre>
8
32
  *
9
- * Note: by default SAP-icons-v5 is used in all SAP Horizon variants and SAP-icons-v4 for all the rest.
10
33
  * @public
11
- * @param {string} theme
12
- * @param {IconCollection} collectionName
34
+ * @param { string } theme
35
+ * @param { string } collectionName
13
36
  */
14
- declare const setDefaultIconCollection: (theme: string, collectionName: "horizon" | IconCollection) => void;
37
+ declare const setDefaultIconCollection: (theme: string, collectionName: IconCollection) => void;
15
38
  /**
16
- * Returns the default icon collection (v4 or v5) for given theme,
17
- * that is configured.
39
+ * Returns the configured default icon collection for a given theme.
18
40
  *
19
- * @param {string} theme
41
+ * @param { string } theme
20
42
  * @public
21
- * @returns {string | undefined}
43
+ * @returns { string | undefined }
22
44
  */
23
45
  declare const getDefaultIconCollection: (theme: string) => string | undefined;
24
46
  /**
25
- * Returns the effective icon collection that will be applied for icon web components
26
- * whenever namespace is not specified.
27
- * @returns {string}
47
+ * Returns the effective icon collection,
48
+ * based on the default icon collection configuration and the current theme:
49
+ * @param { IconCollection } collectionName
50
+ * @returns { IconCollection } the effective collection name
28
51
  */
29
- declare const getEffectiveDefaultIconCollection: () => string;
30
- export { setDefaultIconCollection, getDefaultIconCollection, getEffectiveDefaultIconCollection, };
52
+ declare const getEffectiveIconCollection: (collectionName?: IconCollection) => IconCollection;
53
+ export { setDefaultIconCollection, getDefaultIconCollection, getEffectiveIconCollection, RegisteredIconCollection, };
54
+ export type { IconCollection, };