@ui5/webcomponents-base 0.34.0 → 1.0.1

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 (145) hide show
  1. package/.eslintignore +3 -1
  2. package/CHANGELOG.md +52 -0
  3. package/README.md +26 -2
  4. package/bundle.esm.js +6 -2
  5. package/dist/CSP.js +59 -0
  6. package/dist/Device.js +7 -0
  7. package/dist/EventProvider.js +19 -25
  8. package/dist/FontFace.js +7 -95
  9. package/dist/InitialConfiguration.js +31 -14
  10. package/dist/Keys.js +15 -0
  11. package/dist/ManagedStyles.js +83 -0
  12. package/dist/Render.js +3 -1
  13. package/dist/StaticAreaItem.js +11 -9
  14. package/dist/SystemCSSVars.js +4 -25
  15. package/dist/UI5Element.js +46 -60
  16. package/dist/UI5ElementMetadata.js +9 -1
  17. package/dist/asset-registries/Icons.js +29 -8
  18. package/dist/asset-registries/Illustrations.js +30 -0
  19. package/dist/asset-registries/LocaleData.js +11 -2
  20. package/dist/assets-meta/IconCollectionsAlias.js +18 -0
  21. package/dist/config/Theme.js +14 -0
  22. package/dist/css/FontFace.css +45 -0
  23. package/dist/css/OverrideFontFace.css +32 -0
  24. package/dist/css/SystemCSSVars.css +17 -0
  25. package/dist/delegate/ItemNavigation.js +66 -0
  26. package/dist/delegate/ScrollEnablement.js +7 -1
  27. package/dist/generated/AssetParameters.js +1 -1
  28. package/dist/generated/css/FontFace.css.js +5 -0
  29. package/dist/generated/css/OverrideFontFace.css.js +5 -0
  30. package/dist/generated/css/SystemCSSVars.css.js +5 -0
  31. package/dist/i18nBundle.js +33 -2
  32. package/dist/renderer/LitRenderer.js +24 -21
  33. package/dist/renderer/directives/style-map.js +72 -0
  34. package/dist/resources/bundle.esm.js +17 -101
  35. package/dist/resources/bundle.esm.js.map +1 -1
  36. package/dist/sap/base/Log.js +241 -0
  37. package/dist/sap/base/assert.js +8 -0
  38. package/dist/sap/base/security/URLListValidator.js +148 -0
  39. package/dist/sap/base/security/sanitizeHTML.js +16 -0
  40. package/dist/sap/base/util/now.js +7 -0
  41. package/dist/sap/ui/thirdparty/caja-html-sanitizer.js +3585 -0
  42. package/dist/test-resources/elements/WithStaticArea.js +2 -1
  43. package/dist/test-resources/pages/AllTestElements.html +3 -0
  44. package/dist/test-resources/pages/i18n.html +1 -3
  45. package/dist/test-resources/specs/ConfigurationChange.spec.js +9 -9
  46. package/dist/test-resources/specs/ConfigurationScript.spec.js +24 -24
  47. package/dist/test-resources/specs/ConfigurationURL.spec.js +64 -18
  48. package/dist/test-resources/specs/CustomTheme.spec.js +7 -7
  49. package/dist/test-resources/specs/EventProvider.spec.js +63 -0
  50. package/dist/test-resources/specs/StaticArea.spec.js +55 -13
  51. package/dist/test-resources/specs/Theming.spec.js +11 -11
  52. package/dist/test-resources/specs/UI5ElementInvalidation.js +29 -29
  53. package/dist/test-resources/specs/UI5ElementLifecycle.js +11 -11
  54. package/dist/test-resources/specs/UI5ElementListenForChildPropChanges.spec.js +11 -11
  55. package/dist/test-resources/specs/UI5ElementMetadataExt.js +8 -8
  56. package/dist/test-resources/specs/UI5ElementPropertyValidation.js +6 -6
  57. package/dist/test-resources/specs/UI5ElementPropsAndAttrs.spec.js +36 -36
  58. package/dist/test-resources/specs/UI5ElementShadowDOM.js +9 -9
  59. package/dist/test-resources/specs/UI5ElementSlots.js +9 -9
  60. package/dist/theming/CustomStyle.js +23 -3
  61. package/dist/theming/applyTheme.js +5 -8
  62. package/dist/theming/getEffectiveLinksHrefs.js +20 -0
  63. package/dist/theming/getStylesString.js +4 -2
  64. package/dist/theming/getThemeDesignerTheme.js +2 -1
  65. package/dist/theming/preloadLinks.js +23 -0
  66. package/dist/types/DataType.js +12 -0
  67. package/dist/types/Float.js +4 -0
  68. package/dist/types/Integer.js +4 -0
  69. package/dist/types/InvisibleMessageMode.js +30 -0
  70. package/dist/updateShadowRoot.js +8 -4
  71. package/dist/util/AriaLabelHelper.js +4 -4
  72. package/dist/util/FocusableElements.js +5 -1
  73. package/dist/util/HTMLSanitizer.js +7 -0
  74. package/dist/util/InvisibleMessage.js +58 -0
  75. package/dist/util/PopupUtils.js +1 -1
  76. package/dist/util/TabbableElements.js +1 -1
  77. package/dist/util/createLinkInHead.js +19 -0
  78. package/dist/util/encodeXML.js +35 -0
  79. package/dist/util/escapeRegex.js +10 -0
  80. package/dist/util/generateHighlightedMarkup.js +42 -0
  81. package/dist/util/getClassCopy.js +7 -2
  82. package/dist/util/isNodeTabbable.js +4 -4
  83. package/hash.txt +1 -1
  84. package/index.js +1 -1
  85. package/lib/generate-asset-parameters/index.js +0 -1
  86. package/lib/generate-styles/index.js +18 -0
  87. package/package-scripts.js +25 -3
  88. package/package.json +17 -9
  89. package/src/CSP.js +59 -0
  90. package/src/Device.js +7 -0
  91. package/src/EventProvider.js +19 -25
  92. package/src/FontFace.js +7 -95
  93. package/src/InitialConfiguration.js +31 -14
  94. package/src/Keys.js +15 -0
  95. package/src/ManagedStyles.js +83 -0
  96. package/src/Render.js +3 -1
  97. package/src/StaticAreaItem.js +11 -9
  98. package/src/SystemCSSVars.js +4 -25
  99. package/src/UI5Element.js +46 -60
  100. package/src/UI5ElementMetadata.js +9 -1
  101. package/src/asset-registries/Icons.js +29 -8
  102. package/src/asset-registries/Illustrations.js +30 -0
  103. package/src/asset-registries/LocaleData.js +11 -2
  104. package/src/assets-meta/IconCollectionsAlias.js +18 -0
  105. package/src/config/Theme.js +14 -0
  106. package/src/css/FontFace.css +45 -0
  107. package/src/css/OverrideFontFace.css +32 -0
  108. package/src/css/SystemCSSVars.css +17 -0
  109. package/src/delegate/ItemNavigation.js +66 -0
  110. package/src/delegate/ScrollEnablement.js +7 -1
  111. package/src/i18nBundle.js +33 -2
  112. package/src/renderer/LitRenderer.js +24 -21
  113. package/src/renderer/directives/style-map.js +72 -0
  114. package/src/theming/CustomStyle.js +23 -3
  115. package/src/theming/applyTheme.js +5 -8
  116. package/src/theming/getEffectiveLinksHrefs.js +20 -0
  117. package/src/theming/getStylesString.js +4 -2
  118. package/src/theming/getThemeDesignerTheme.js +2 -1
  119. package/src/theming/preloadLinks.js +23 -0
  120. package/src/types/DataType.js +12 -0
  121. package/src/types/Float.js +4 -0
  122. package/src/types/Integer.js +4 -0
  123. package/src/types/InvisibleMessageMode.js +30 -0
  124. package/src/updateShadowRoot.js +8 -4
  125. package/src/util/AriaLabelHelper.js +4 -4
  126. package/src/util/FocusableElements.js +5 -1
  127. package/src/util/HTMLSanitizer.js +7 -0
  128. package/src/util/InvisibleMessage.js +58 -0
  129. package/src/util/PopupUtils.js +1 -1
  130. package/src/util/TabbableElements.js +1 -1
  131. package/src/util/createLinkInHead.js +19 -0
  132. package/src/util/encodeXML.js +35 -0
  133. package/src/util/escapeRegex.js +10 -0
  134. package/src/util/generateHighlightedMarkup.js +42 -0
  135. package/src/util/getClassCopy.js +7 -2
  136. package/src/util/isNodeTabbable.js +4 -4
  137. package/used-modules.txt +7 -0
  138. package/dist/config/AssetsPath.js +0 -17
  139. package/dist/renderer/ifDefined.js +0 -21
  140. package/dist/renderer/scopeHTML.js +0 -32
  141. package/dist/theming/createThemePropertiesStyleTag.js +0 -20
  142. package/src/config/AssetsPath.js +0 -17
  143. package/src/renderer/ifDefined.js +0 -21
  144. package/src/renderer/scopeHTML.js +0 -32
  145. package/src/theming/createThemePropertiesStyleTag.js +0 -20
@@ -1,121 +1,37 @@
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,d=c.call(Object),h=function(t){var e,s;return!(!t||"[object Object]"!==l.call(t))&&(!(e=Object.getPrototypeOf(t))||"function"==typeof(s=o.call(e,"constructor")&&e.constructor)&&c.call(s)===d)},u=Object.create(null),p=function(){var t,e,s,n,i,a,r=arguments[2]||{},o=3,l=arguments.length,c=arguments[0]||!1,d=arguments[1]?void 0:u;for("object"!=typeof r&&"function"!=typeof r&&(r={});o<l;o++)if(null!=(i=arguments[o]))for(n in i)t=r[n],s=i[n],"__proto__"!==n&&r!==s&&(c&&s&&(h(s)||(e=Array.isArray(s)))?(e?(e=!1,a=t&&Array.isArray(t)?t:[]):a=t&&h(t)?t:{},r[n]=p(c,arguments[1],a,s)):s!==d&&(r[n]=s));return r},g=function(){var t=[!0,!1];return t.push.apply(t,arguments),p.apply(null,t)};const f=new Map,m=t=>f.get(t);let _=!1,y={animationMode:"full",theme:e,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1,assetsPath:""};const w=new Map;w.set("true",!0),w.set("false",!1);const v=()=>{_||((()=>{const t=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let e;if(t){try{e=JSON.parse(t.innerHTML)}catch(t){console.warn("Incorrect data-sap-ui-config format. Please use JSON")}e&&(y=g(y,e))}})(),new URLSearchParams(window.location.search).forEach(((t,e)=>{if(!e.startsWith("sap-ui"))return;const s=t.toLowerCase(),n=e.split("sap-ui-")[1];w.has(t)&&(t=w.get(s)),y[n]=t})),(()=>{const t=m("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();y=g(y,e)})(),_=!0)};class b{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 S=new b,C=t=>{S.attachEvent("languageChange",t)};const A=t=>{const e=[];return t.forEach((t=>{e.push(t)})),e},E=new Set,x=new Set;let M;const O=t=>{E.add(t)},P=()=>{console.warn(`The following tags have already been defined by a different UI5 Web Components version: ${A(x).join(", ")}`),x.clear()},L=new Set,T=new Set,N=new b,$=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 I,D,R,V;const k=t=>{N.fireEvent("beforeComponentRender",t),T.add(t),t._render()},j=async()=>{V||(V=new Promise((t=>{window.requestAnimationFrame((()=>{$.process(k),V=null,t(),R||(R=setTimeout((()=>{R=void 0,$.isEmpty()&&H()}),200))}))}))),await V},U=()=>{const t=A(E).map((t=>customElements.whenDefined(t)));return Promise.all(t)},B=async()=>{await U(),await(I||(I=new Promise((t=>{D=t,window.requestAnimationFrame((()=>{$.isEmpty()&&(I=void 0,t())}))})),I))},H=()=>{$.isEmpty()&&D&&(D(),D=void 0,I=void 0)};let Z,z;const W=()=>(void 0===Z&&(v(),Z=y.language),Z),F=()=>{var t;return void 0===z&&(v(),t=y.fetchDefaultLanguage,z=t),z},q=/^((?:[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 G{constructor(t){const e=q.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 J=new Map,K=t=>(J.has(t)||J.set(t,new G(t)),J.get(t)),Y=t=>{try{if(t&&"string"==typeof t)return K(t)}catch(t){}},X=t=>t?Y(t):W()?K(W()):Y(a()),Q=/^((?:[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,tt=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,et={he:"iw",yi:"ji",id:"in",sr:"sh"},st=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:""},nt=new Set,it=new Set,at=new Map,rt=new Map,ot=new Map,lt=(t,e)=>{at.set(t,e)},ct=(t,e)=>{const s=`${t}/${e}`;return ot.has(s)},dt=async t=>{const e=X().getLanguage(),i=X().getRegion();let a=(t=>{let e;if(!t)return n;if("string"==typeof t&&(e=Q.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=et[t]||t,a&&(e=tt.exec(a))||i&&(e=tt.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&&!ct(t,a);)a=st(a);const r=F();if(a!==s||r)if(ct(t,a))try{const e=await((t,e)=>{const s=`${t}/${e}`,n=ot.get(s);return rt.get(s)||rt.set(s,n(e)),rt.get(s)})(t,a);lt(t,e)}catch(t){it.has(t.message)||(it.add(t.message),console.error(t.message))}else(t=>{nt.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.`),nt.add(t))})(t);else lt(t,null)};C((()=>{const t=[...at.keys()];return Promise.all(t.map(dt))}));const ht=new Map,ut=new Map,pt=new Map,gt=new Set;let ft=!1;const mt={iw:"he",ji:"yi",in:"id",sh:"sr"},_t=t=>{ft||(console.warn(`[LocaleData] Supported locale "${t}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),ft=!0)},yt=(t,e)=>{ht.set(t,e)},wt=async(t,e,s)=>{const a=((t,e,s)=>{"no"===(t=t&&mt[t]||t)&&(t="nb"),"zh"!==t||e||("Hans"===s?e="CN":"Hant"===s&&(e="TW"));let a=`${t}_${e}`;return i.includes(a)?ut.has(a)?a:(_t(a),n):(a=t,i.includes(a)?ut.has(a)?a:(_t(a),n):n)})(t,e,s),r=m("OpenUI5Support");if(r){const t=r.getLocaleDataObject();if(t)return void yt(a,t)}try{const t=await(t=>{const e=ut.get(t);return pt.get(t)||pt.set(t,e(t)),pt.get(t)})(a);yt(a,t)}catch(t){gt.has(t.message)||(gt.add(t.message),console.error(t.message))}};var vt,bt;vt="en",bt=async t=>(await fetch("https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json")).json(),ut.set(vt,bt),C((()=>{const t=X();return wt(t.getLanguage(),t.getRegion(),t.getScript())}));const St=new Map,Ct=new Map,At=new Set,Et=new Set,xt=(t,e,s)=>{Ct.set(`${t}/${e}`,s),At.add(t),Et.add(e)},Mt=async(t,s)=>{const n=St.get(`${t}_${s}`);if(void 0!==n)return n;if(!Et.has(s)){const s=[...Et.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${e}. Registered themes are: ${s}`),St.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 St.set(`${t}_${s}`,r),r},Ot=()=>At,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,Nt=Lt("SVGIcons.registry",new Map),$t=Lt("SVGIcons.promises",new Map),It=(t,{pathData:e,ltr:s,accData:n,collection:i,packageName:a}={})=>{i||(i="SAP-icons");const r=`${i}/${t}`;Nt.set(r,{pathData:e,ltr:s,accData:n,packageName:a})},Dt=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(!$t.has(t)){const e=Tt.get(t);$t.set(t,e(t))}return $t.get(t)})(e)}catch(t){console.error(t.message)}return"ICON_NOT_FOUND"===n?n:(Nt.has(s)||(t=>{Object.keys(t.data).forEach((e=>{const s=t.data[e];It(e,{pathData:s.path,ltr:s.ltr,accData:s.acc,collection:t.collection,packageName:t.packageName})}))})(n),Nt.get(s))},Rt=(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},Vt=(t,e)=>{const s=document.head.querySelector(`style[data-ui5-theme-properties="${e}"]`);if(s)s.textContent=t||"";else{Rt(t,{"data-ui5-theme-properties":e})}},kt=()=>{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))},jt=new b,Ut="@ui5/webcomponents-theme-base",Bt=async t=>{if(!Ot().has(Ut))return;const e=await Mt(Ut,t);Vt(e,Ut)},Ht=async t=>{const e=(()=>{const t=kt();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="${Ut}"]`);t&&t.parentElement.removeChild(t)})():await Bt(t);const s=(t=>Et.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{Ot().forEach((async e=>{if(e===Ut)return;const s=await Mt(e,t);Vt(s,e)}))})(s),(t=>{jt.fireEvent("themeLoaded",t)})(t)};let Zt;const zt=()=>(void 0===Zt&&(v(),Zt=y.theme),Zt),Wt=async t=>{Zt!==t&&(Zt=t,await Ht(Zt))},Ft=Lt("PopupUtilsData",{});Ft.currentZIndex=Ft.currentZIndex||100;const qt=()=>Ft.currentZIndex,Gt=()=>{const t=window.sap;return t&&t.ui&&"function"==typeof t.ui.getCore&&t.ui.getCore()};var Jt,Kt;Jt="OpenUI5Support",Kt={isLoaded:()=>!!Gt(),init:()=>{const t=Gt();return t?new Promise((e=>{t.attachInit((()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],((t,s)=>{s.setInitialZIndex(qt()),e()}))}))})):Promise.resolve()},getConfigurationSettingsObject:()=>{const t=Gt();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=Gt();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()},attachListeners:()=>{Gt()&&(()=>{const t=Gt(),e=t.getConfiguration();t.attachThemeChanged((async()=>{await Wt(e.getTheme())}))})()},cssVariablesLoaded:()=>{if(!Gt())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(!Gt())return;return window.sap.ui.require("sap/ui/core/Popup").getNextZIndex()},setInitialZIndex:()=>{if(!Gt())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(qt())}},f.set(Jt,Kt);const Yt=()=>{document.querySelector("head>style[data-ui5-font-face]")||Rt('\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":""})},Xt=()=>{document.querySelector("head>style[data-ui5-font-face-override]")||Rt("\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 Qt=!1;const te=new b,ee=async()=>{if(Qt)return;const t=m("OpenUI5Support");t&&await t.init(),await new Promise((t=>{document.body?t():document.addEventListener("DOMContentLoaded",(()=>{t()}))})),await Ht(zt()),t&&t.attachListeners(),(()=>{const t=m("OpenUI5Support");t&&t.isLoaded()||Yt(),Xt()})(),document.querySelector("head>style[data-ui5-system-css-vars]")||Rt('\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 te.fireEventAsync("boot"),Qt=!0};class se{static isValid(t){}static generateTypeAccessors(t){Object.keys(t).forEach((e=>{Object.defineProperty(this,e,{get:()=>t[e]})}))}}const ne=new Map,ie=new Map,ae=t=>{if(!ne.has(t)){const e=oe(t.split("-"));ne.set(t,e)}return ne.get(t)},re=t=>{if(!ie.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();ie.set(t,e)}return ie.get(t)},oe=t=>t.map(((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase())).join(""),le=t=>t&&t instanceof HTMLElement&&"slot"===t.localName,ce=t=>le(t)?t.assignedNodes({flatten:!0}).filter((t=>t instanceof HTMLElement)):[t];let de={include:[/^ui5-/],exclude:[]};const he=new Map,ue=t=>{if(!he.has(t)){const e=de.include.some((e=>t.match(e)))&&!de.exclude.some((e=>t.match(e)));he.set(t,e)}return he.get(t)},pe=t=>{ue(t)};class ge{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=>fe(t,e))):fe(t,e)}static validateSlotValue(t,e){return me(t,e)}getPureTag(){return this.metadata.tag}getTag(){const t=this.metadata.tag,e=pe(t);return e?`${t}-${e}`:t}getAltTag(){const t=this.metadata.altTag;if(!t)return;const e=pe(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(re)}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 fe=(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,se)?s.isValid(t)?t:e.defaultValue:void 0},me=(t,e)=>(t&&ce(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 _e=new b,ye=t=>{_e.attachEvent("CustomCSSChange",t)},we={},ve=t=>Array.isArray(t)?be(t.filter((t=>!!t))).join(" "):t,be=t=>t.reduce(((t,e)=>t.concat(Array.isArray(e)?be(e):e)),[]),Se=new Map;ye((t=>{Se.delete(`${t}_normal`)}));const Ce=(t,e=!1)=>{const s=t.getMetadata().getTag(),n=`${s}_${e?"static":"normal"}`;if(!Se.has(n)){let i;if(e)i=ve(t.staticAreaStyles);else{const e=(t=>we[t]?we[t].join(""):"")(s)||"";i=`${ve(t.styles)} ${e}`}Se.set(n,i)}return Se.get(n)},Ae=new Map;ye((t=>{Ae.delete(`${t}_normal`)}));const Ee=()=>!!window.ShadyDOM,xe=(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(ue);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(!Ae.has(s)){const n=Ce(t,e),i=new CSSStyleSheet;i.replaceSync(n),Ae.set(s,[i])}return Ae.get(s)})(t.constructor,e):Ee()||(s=Ce(t.constructor,e)),t.constructor.render(a,i,s,{eventContext:t})};class Me 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(),xe(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,xe(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=pe(t);return e?`${t}-${e}`:t}static createInstance(){return customElements.get(Me.getTag())||customElements.define(Me.getTag(),Me),document.createElement(this.getTag())}}const Oe=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);Oe.set(t,n)},Le=["value-changed"];let Te;const Ne=()=>(void 0===Te&&(v(),Te=y.noConflict),Te),$e=t=>{const e=Ne();return!(t=>Le.includes(t))(t)&&(!0===e||!(t=>{const e=Ne();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))};const Ie={iw:"he",ji:"yi",in:"id",sh:"sr"},De=(t=>{const e=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(t);return e&&e[2]?e[2].split(/,/):null})("$cldr-rtl-locales:ar,fa,he$")||[],Re=()=>{const t=(v(),y.rtl);return null!==t?!!t:(t=>(t=t&&Ie[t]||t,De.indexOf(t)>=0))(W()||a())};class Ve extends se{static isValid(t){return Number.isInteger(t)}}class ke extends se{static isValid(t){return Number(t)===t}}const je=["disabled","title","hidden","role","draggable"],Ue=t=>{if(je.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};let He=0;const Ze=new Map,ze=new Map;function We(t){this._suppressInvalidation||(this.onInvalidation(t),this._changedState.push(t),(async t=>{$.add(t),await j()})(this),this._eventProvider.fireEvent("change",{...t,target:this}))}class Fe extends HTMLElement{constructor(){let t;super(),this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new b,this._domRefReadyPromise=new Promise((e=>{t=e})),this._domRefReadyPromise._deferredResolve=t,this._initializeState(),this._upgradeAllProperties(),this.constructor._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id="ui5wc_"+ ++He),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&&(k(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,$.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=Oe.get(t);e&&((t=>{t.disconnect()})(e),Oe.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)),le(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])||(We.call(this,{type:"slot",name:i.get(t),reason:"children"}),l=!0)}l||We.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)),le(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)&&We.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=ae(i);if(n.hasOwnProperty(a)){const t=n[a].type;t===Boolean&&(s=null!==s),t===Ve&&(s=parseInt(s)),t===ke&&(s=parseFloat(s)),this[a]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;if("object"==typeof e)return;const s=re(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){We.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()&&xe(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||Ee()?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=ae(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($e(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(ce(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:Re()?"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=Me.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(Ue(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,We.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)){Ue(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(!ze.has(this)){const t=this.dependencies.filter(((t,e,s)=>s.indexOf(t)===e));ze.set(this,t)}return ze.get(this)}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map((t=>t.define())))}static async onDefine(){return Promise.resolve()}static async define(){await ee(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=this.getMetadata().getAltTag(),s=(t=>E.has(t))(t),n=customElements.get(t);var i;return n&&!s?(t=>{x.add(t),M||(M=setTimeout((()=>{P(),M=void 0}),1e3))})(t):n||(this._generateAccessors(),O(t),window.customElements.define(t,this),e&&!customElements.get(e)&&(O(e),window.customElements.define(e,(i=this,class extends i{})))),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==Fe;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=g({},...t);return this._metadata=new ge(s),this._metadata}}
1
+ const t={default:"en",all:["ar","ar_EG","ar_SA","bg","ca","cs","da","de","de_AT","de_CH","el","el_CY","en","en_AU","en_GB","en_HK","en_IE","en_IN","en_NZ","en_PG","en_SG","en_ZA","es","es_AR","es_BO","es_CL","es_CO","es_MX","es_PE","es_UY","es_VE","et","fa","fi","fr","fr_BE","fr_CA","fr_CH","fr_LU","he","hi","hr","hu","id","it","it_CH","ja","kk","ko","lt","lv","ms","nb","nl","nl_BE","pl","pt","pt_PT","ro","ru","ru_UA","sk","sl","sr","sv","th","tr","uk","vi","zh_CN","zh_HK","zh_SG","zh_TW"]},e={default:"sap_fiori_3",all:["sap_fiori_3","sap_fiori_3_dark","sap_belize","sap_belize_hcb","sap_belize_hcw","sap_fiori_3_hcb","sap_fiori_3_hcw","sap_horizon","sap_horizon_exp"]}.default,s={default:"en",all:["ar","bg","ca","cs","cy","da","de","el","en","en_GB","en_US_sappsd","en_US_saprigi","en_US_saptrc","es","es_MX","et","fi","fr","fr_CA","hi","hr","hu","in","it","iw","ja","kk","ko","lt","lv","ms","nl","no","pl","pt_PT","pt","ro","ru","sh","sk","sl","sv","th","tr","uk","vi","zh_CN","zh_TW"]}.default,n=t.default,i=t.all;var a=()=>{const t=navigator.languages;return t&&t[0]||navigator.language||navigator.userLanguage||navigator.browserLanguage||s},r={},o=r.hasOwnProperty,l=r.toString,c=o.toString,d=c.call(Object),h=function(t){var e,s;return!(!t||"[object Object]"!==l.call(t))&&(!(e=Object.getPrototypeOf(t))||"function"==typeof(s=o.call(e,"constructor")&&e.constructor)&&c.call(s)===d)},u=Object.create(null),p=function(){var t,e,s,n,i,a,r=arguments[2]||{},o=3,l=arguments.length,c=arguments[0]||!1,d=arguments[1]?void 0:u;for("object"!=typeof r&&"function"!=typeof r&&(r={});o<l;o++)if(null!=(i=arguments[o]))for(n in i)t=r[n],s=i[n],"__proto__"!==n&&r!==s&&(c&&s&&(h(s)||(e=Array.isArray(s)))?(e?(e=!1,a=t&&Array.isArray(t)?t:[]):a=t&&h(t)?t:{},r[n]=p(c,arguments[1],a,s)):s!==d&&(r[n]=s));return r},g=function(){var t=[!0,!1];return t.push.apply(t,arguments),p.apply(null,t)};const f=new Map,m=t=>f.get(t);let _=!1,y={animationMode:"full",theme:e,rtl:null,language:null,calendarType:null,noConflict:!1,formatSettings:{},fetchDefaultLanguage:!1};const v=new Map;v.set("true",!0),v.set("false",!1);const w=(t,e,s)=>{const n=e.toLowerCase(),i=t.split(`${s}-`)[1];v.has(e)&&(e=v.get(n)),e=((t,e)=>"theme"===t&&e.includes("@")?e.split("@")[0]:e)(i,e),y[i]=e},A=()=>{_||((()=>{const t=document.querySelector("[data-ui5-config]")||document.querySelector("[data-id='sap-ui-config']");let e;if(t){try{e=JSON.parse(t.innerHTML)}catch(t){console.warn("Incorrect data-sap-ui-config format. Please use JSON")}e&&(y=g(y,e))}})(),(()=>{const t=new URLSearchParams(window.location.search);t.forEach(((t,e)=>{const s=e.split("sap-").length;0!==s&&s!==e.split("sap-ui-").length&&w(e,t,"sap")})),t.forEach(((t,e)=>{e.startsWith("sap-ui")&&w(e,t,"sap-ui")}))})(),(()=>{const t=m("OpenUI5Support");if(!t||!t.isLoaded())return;const e=t.getConfigurationSettingsObject();y=g(y,e)})(),_=!0)};class b{constructor(){this._eventRegistry=new Map}attachEvent(t,e){const s=this._eventRegistry,n=s.get(t);Array.isArray(n)?n.includes(e)||n.push(e):s.set(t,[e])}detachEvent(t,e){const s=this._eventRegistry,n=s.get(t);if(!n)return;const i=n.indexOf(e);-1!==i&&n.splice(i,1),0===n.length&&s.delete(t)}fireEvent(t,e){const s=this._eventRegistry.get(t);return s?s.map((t=>t.call(this,e))):[]}fireEventAsync(t,e){return Promise.all(this.fireEvent(t,e))}isHandlerAttached(t,e){const s=this._eventRegistry.get(t);return!!s&&s.includes(e)}hasListeners(t){return!!this._eventRegistry.get(t)}}const $=new b,S=t=>{$.attachEvent("languageChange",t)};const C=t=>{const e=[];return t.forEach((t=>{e.push(t)})),e},E=new Set,M=new Set;let O;const T=t=>{E.add(t)},P=()=>{console.warn(`The following tags have already been defined by a different UI5 Web Components version: ${C(M).join(", ")}`),M.clear()},x=new Set,L=new Set,I=new b,D=new class{constructor(){this.list=[],this.lookup=new Set}add(t){this.lookup.has(t)||(this.list.push(t),this.lookup.add(t))}remove(t){this.lookup.has(t)&&(this.list=this.list.filter((e=>e!==t)),this.lookup.delete(t))}shift(){const t=this.list.shift();if(t)return this.lookup.delete(t),t}isEmpty(){return 0===this.list.length}isAdded(t){return this.lookup.has(t)}process(t){let e;const s=new Map;for(e=this.shift();e;){const n=s.get(e)||0;if(n>10)throw new Error("Web component processed too many times this task, max allowed is: 10");t(e),s.set(e,n+1),e=this.shift()}}};let k,N,R,U;const j=async t=>{D.add(t),await B()},H=t=>{I.fireEvent("beforeComponentRender",t),L.add(t),t._render()},B=async()=>{U||(U=new Promise((t=>{window.requestAnimationFrame((()=>{D.process(H),U=null,t(),R||(R=setTimeout((()=>{R=void 0,D.isEmpty()&&Z()}),200))}))}))),await U},V=()=>{const t=C(E).map((t=>customElements.whenDefined(t)));return Promise.all(t)},z=async()=>{await V(),await(k||(k=new Promise((t=>{N=t,window.requestAnimationFrame((()=>{D.isEmpty()&&(k=void 0,t())}))})),k))},Z=()=>{D.isEmpty()&&N&&(N(),N=void 0,k=void 0)},W=async t=>{L.forEach((e=>{const s=e.constructor.getMetadata().getTag(),n=(i=e.constructor,x.has(i));var i;const a=e.constructor.getMetadata().isLanguageAware(),r=e.constructor.getMetadata().isThemeAware();(!t||t.tag===s||t.rtlAware&&n||t.languageAware&&a||t.themeAware&&r)&&j(e)})),await z()};let F,q;const G=()=>(void 0===F&&(A(),F=y.language),F),J=()=>{var t;return void 0===q&&(A(),t=y.fetchDefaultLanguage,q=t),q},K=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i;class Y{constructor(t){const e=K.exec(t.replace(/_/g,"-"));if(null===e)throw new Error(`The given language ${t} does not adhere to BCP-47.`);this.sLocaleId=t,this.sLanguage=e[1]||null,this.sScript=e[2]||null,this.sRegion=e[3]||null,this.sVariant=e[4]&&e[4].slice(1)||null,this.sExtension=e[5]&&e[5].slice(1)||null,this.sPrivateUse=e[6]||null,this.sLanguage&&(this.sLanguage=this.sLanguage.toLowerCase()),this.sScript&&(this.sScript=this.sScript.toLowerCase().replace(/^[a-z]/,(t=>t.toUpperCase()))),this.sRegion&&(this.sRegion=this.sRegion.toUpperCase())}getLanguage(){return this.sLanguage}getScript(){return this.sScript}getRegion(){return this.sRegion}getVariant(){return this.sVariant}getVariantSubtags(){return this.sVariant?this.sVariant.split("-"):[]}getExtension(){return this.sExtension}getExtensionSubtags(){return this.sExtension?this.sExtension.slice(2).split("-"):[]}getPrivateUse(){return this.sPrivateUse}getPrivateUseSubtags(){return this.sPrivateUse?this.sPrivateUse.slice(2).split("-"):[]}hasPrivateUseSubtag(t){return this.getPrivateUseSubtags().indexOf(t)>=0}toString(){const t=[this.sLanguage];return this.sScript&&t.push(this.sScript),this.sRegion&&t.push(this.sRegion),this.sVariant&&t.push(this.sVariant),this.sExtension&&t.push(this.sExtension),this.sPrivateUse&&t.push(this.sPrivateUse),t.join("-")}}const X=new Map,Q=t=>(X.has(t)||X.set(t,new Y(t)),X.get(t)),tt=t=>{try{if(t&&"string"==typeof t)return Q(t)}catch(t){}},et=t=>t?tt(t):G()?Q(G()):tt(a()),st=/^((?:[A-Z]{2,3}(?:-[A-Z]{3}){0,3})|[A-Z]{4}|[A-Z]{5,8})(?:-([A-Z]{4}))?(?:-([A-Z]{2}|[0-9]{3}))?((?:-[0-9A-Z]{5,8}|-[0-9][0-9A-Z]{3})*)((?:-[0-9A-WYZ](?:-[0-9A-Z]{2,8})+)*)(?:-(X(?:-[0-9A-Z]{1,8})+))?$/i,nt=/(?:^|-)(saptrc|sappsd)(?:-|$)/i,it={he:"iw",yi:"ji",id:"in",sr:"sh"},at=t=>{if(!t)return n;if("zh_HK"===t)return"zh_TW";const e=t.lastIndexOf("_");return e>=0?t.slice(0,e):t!==n?n:""},rt=new Set,ot=new Set,lt=new Map,ct=new Map,dt=new Map,ht=(t,e)=>{lt.set(t,e)},ut=(t,e)=>{const s=`${t}/${e}`;return dt.has(s)},pt=async t=>{const e=et().getLanguage(),i=et().getRegion();let a=(t=>{let e;if(!t)return n;if("string"==typeof t&&(e=st.exec(t.replace(/_/g,"-")))){let t=e[1].toLowerCase(),s=e[3]?e[3].toUpperCase():void 0;const n=e[2]?e[2].toLowerCase():void 0,i=e[4]?e[4].slice(1):void 0,a=e[6];return t=it[t]||t,a&&(e=nt.exec(a))||i&&(e=nt.exec(i))?`en_US_${e[1].toLowerCase()}`:("zh"!==t||s||("hans"===n?s="CN":"hant"===n&&(s="TW")),t+(s?"_"+s+(i?"_"+i.replace("-","_"):""):""))}})(e+(i?`-${i}`:""));for(;a!==s&&!ut(t,a);)a=at(a);const r=J();if(a!==s||r)if(ut(t,a))try{const e=await((t,e)=>{const s=`${t}/${e}`,n=dt.get(s);return ct.get(s)||ct.set(s,n(e)),ct.get(s)})(t,a);ht(t,e)}catch(t){ot.has(t.message)||(ot.add(t.message),console.error(t.message))}else(t=>{rt.has(t)||(console.warn(`[${t}]: Message bundle assets are not configured. Falling back to English texts.`,` Add \`import "${t}/dist/Assets.js"\` in your bundle and make sure your build tool supports dynamic imports and JSON imports. See section "Assets" in the documentation for more information.`),rt.add(t))})(t);else ht(t,null)};S((()=>{const t=[...lt.keys()];return Promise.all(t.map(pt))}));const gt=new Map,ft=new Map,mt=new Map,_t=new Set;let yt=!1;const vt={iw:"he",ji:"yi",in:"id",sh:"sr"},wt=t=>{yt||(console.warn(`[LocaleData] Supported locale "${t}" not configured, import the "Assets.js" module from the webcomponents package you are using.`),yt=!0)},At=(t,e)=>{gt.set(t,e)},bt=async(t,e,s)=>{const a=((t,e,s)=>{"no"===(t=t&&vt[t]||t)&&(t="nb"),"zh"!==t||e||("Hans"===s?e="CN":"Hant"===s&&(e="TW"));let a=`${t}_${e}`;return i.includes(a)?ft.has(a)?a:(wt(a),n):(a=t,i.includes(a)?ft.has(a)?a:(wt(a),n):n)})(t,e,s),r=m("OpenUI5Support");if(r){const t=r.getLocaleDataObject();if(t)return void At(a,t)}try{const t=await(t=>{const e=ft.get(t);return mt.get(t)||mt.set(t,e(t)),mt.get(t)})(a);At(a,t)}catch(t){_t.has(t.message)||(_t.add(t.message),console.error(t.message))}};var $t,St;$t="en",St=async t=>(await fetch("https://ui5.sap.com/1.60.2/resources/sap/ui/core/cldr/en.json")).json(),ft.set($t,St),S((()=>{const t=et();return bt(t.getLanguage(),t.getRegion(),t.getScript())}));const Ct=new Map,Et=new Map,Mt=new Set,Ot=new Set,Tt=(t,e,s)=>{Et.set(`${t}/${e}`,s),Mt.add(t),Ot.add(e)},Pt=async(t,s)=>{const n=Ct.get(`${t}_${s}`);if(void 0!==n)return n;if(!Ot.has(s)){const s=[...Ot.values()].join(", ");return console.warn(`You have requested a non-registered theme - falling back to ${e}. Registered themes are: ${s}`),Ct.get(`${t}_${e}`)}const i=Et.get(`${t}/${s}`);if(!i)return void console.error(`Theme [${s}] not registered for package [${t}]`);let a;try{a=await i(s)}catch(e){return void console.error(t,e.message)}const r=a._||a;return Ct.set(`${t}_${s}`,r),r},xt=()=>Mt,Lt=(t,e=document.body)=>{let s=document.querySelector(t);return s||(s=document.createElement(t),e.insertBefore(s,e.firstChild))},It=(t,e)=>{const s=t.split(".");let n=Lt("ui5-shared-resources",document.head);for(let t=0;t<s.length;t++){const i=s[t],a=t===s.length-1;Object.prototype.hasOwnProperty.call(n,i)||(n[i]=a?e:{}),n=n[i]}return n},Dt={"SAP-icons-TNT":"tnt",BusinessSuiteInAppSymbols:"business-suite",horizon:"SAP-icons-v5"},kt=(t,e)=>e?`${t}|${e}`:t,Nt=(t,e,s="")=>{const n="string"==typeof t?t:t.content;if(document.adoptedStyleSheets){const t=new CSSStyleSheet;t.replaceSync(n),t._ui5StyleId=kt(e,s),document.adoptedStyleSheets=[...document.adoptedStyleSheets,t]}else{const t={};t[e]=s,((t,e={})=>{const s=document.createElement("style");s.type="text/css",Object.entries(e).forEach((t=>s.setAttribute(...t))),s.textContent=t,document.head.appendChild(s)})(n,t)}},Rt=(t,e="")=>document.adoptedStyleSheets?!!document.adoptedStyleSheets.find((s=>s._ui5StyleId===kt(t,e))):!!document.querySelector(`head>style[${t}="${e}"]`),Ut=(t,e,s="")=>{Rt(e,s)?((t,e,s="")=>{const n="string"==typeof t?t:t.content;document.adoptedStyleSheets?document.adoptedStyleSheets.find((t=>t._ui5StyleId===kt(e,s))).replaceSync(n||""):document.querySelector(`head>style[${e}="${s}"]`).textContent=n||""})(t,e,s):Nt(t,e,s)},jt=()=>{const t=(()=>{let t=document.querySelector(".sapThemeMetaData-Base-baseLib")||document.querySelector(".sapThemeMetaData-UI5-sap-ui-core");if(t)return getComputedStyle(t).backgroundImage;t=document.createElement("span"),t.style.display="none",t.classList.add("sapThemeMetaData-Base-baseLib"),t.classList.add("sapThemeMetaData-UI5-sap-ui-core"),document.body.appendChild(t);const e=getComputedStyle(t).backgroundImage;return document.body.removeChild(t),e})();if(!t||"none"===t)return;const e=(t=>{const e=/\(["']?data:text\/plain;utf-8,(.*?)['"]?\)$/i.exec(t);if(e&&e.length>=2){let t=e[1];if(t=t.replace(/\\"/g,'"'),"{"!==t.charAt(0)&&"}"!==t.charAt(t.length-1))try{t=decodeURIComponent(t)}catch(t){return void console.warn("Malformed theme metadata string, unable to decodeURIComponent")}try{return JSON.parse(t)}catch(t){console.warn("Malformed theme metadata string, unable to parse JSON")}}})(t);return(t=>{let e,s;try{e=t.Path.match(/\.([^.]+)\.css_variables$/)[1],s=t.Extends[0]}catch(e){return void console.warn("Malformed theme metadata Object",t)}return{themeName:e,baseThemeName:s}})(e)},Ht=new b,Bt="@ui5/webcomponents-theming",Vt=async t=>{if(!xt().has(Bt))return;const e=await Pt(Bt,t);Ut(e,"data-ui5-theme-properties",Bt)},zt=()=>{((t,e="")=>{if(document.adoptedStyleSheets)document.adoptedStyleSheets=document.adoptedStyleSheets.filter((s=>s._ui5StyleId!==kt(t,e)));else{const s=document.querySelector(`head > style[${t}="${e}"]`);s&&s.parentElement.removeChild(s)}})("data-ui5-theme-properties",Bt)},Zt=async t=>{const e=(()=>{const t=jt();if(t)return t;const e=m("OpenUI5Support");if(e&&e.cssVariablesLoaded())return{themeName:e.getConfigurationSettingsObject().theme}})();e&&t===e.themeName?zt():await Vt(t);const s=(t=>Ot.has(t))(t)?t:e&&e.baseThemeName;await(async t=>{xt().forEach((async e=>{if(e===Bt)return;const s=await Pt(e,t);Ut(s,"data-ui5-theme-properties",e)}))})(s),(t=>{Ht.fireEvent("themeLoaded",t)})(t)};let Wt;const Ft=()=>(void 0===Wt&&(A(),Wt=y.theme),Wt),qt=async t=>{Wt!==t&&(Wt=t,await Zt(Wt),await W({themeAware:!0}))},Gt=new Map,Jt=It("SVGIcons.registry",new Map),Kt=It("SVGIcons.promises",new Map),Yt=(t,{pathData:e,ltr:s,accData:n,collection:i,packageName:a}={})=>{i||(i=Qt());const r=`${i}/${t}`;Jt.set(r,{pathData:e,ltr:s,accData:n,packageName:a})},Xt=async t=>{const{collection:e,registryKey:s}=(t=>{let e;return t.startsWith("sap-icon://")&&(t=t.replace("sap-icon://","")),[t,e]=t.split("/").reverse(),e=e||Qt(),e=te(e),{name:t=t.replace("icon-",""),collection:e,registryKey:`${e}/${t}`}})(t);let n="ICON_NOT_FOUND";try{n=await(async t=>{if(!Kt.has(t)){if(!Gt.has(t))throw new Error(`No loader registered for the ${t} icons collection. Probably you forgot to import the "AllIcons.js" module for the respective package.`);const e=Gt.get(t);Kt.set(t,e(t))}return Kt.get(t)})(e)}catch(t){console.error(t.message)}return"ICON_NOT_FOUND"===n?n:(Jt.has(s)||(t=>{Object.keys(t.data).forEach((e=>{const s=t.data[e];Yt(e,{pathData:s.path,ltr:s.ltr,accData:s.acc,collection:t.collection,packageName:t.packageName})}))})(n),Jt.get(s))},Qt=()=>(t=>{const e=Ft();return e===t||e===`${t}_exp`})("sap_horizon")?"SAP-icons-v5":"SAP-icons",te=t=>Dt[t]?Dt[t]:t,ee=It("PopupUtilsData",{});ee.currentZIndex=ee.currentZIndex||100;const se=()=>ee.currentZIndex,ne=()=>{const t=window.sap;return t&&t.ui&&"function"==typeof t.ui.getCore&&t.ui.getCore()};var ie,ae;ie="OpenUI5Support",ae={isLoaded:()=>!!ne(),init:()=>{const t=ne();return t?new Promise((e=>{t.attachInit((()=>{window.sap.ui.require(["sap/ui/core/LocaleData","sap/ui/core/Popup"],((t,s)=>{s.setInitialZIndex(se()),e()}))}))})):Promise.resolve()},getConfigurationSettingsObject:()=>{const t=ne();if(!t)return;const e=t.getConfiguration(),s=window.sap.ui.require("sap/ui/core/LocaleData");return{animationMode:e.getAnimationMode(),language:e.getLanguage(),theme:e.getTheme(),rtl:e.getRTL(),calendarType:e.getCalendarType(),formatSettings:{firstDayOfWeek:s?s.getInstance(e.getLocale()).getFirstDayOfWeek():void 0}}},getLocaleDataObject:()=>{const t=ne();if(!t)return;const e=t.getConfiguration();return window.sap.ui.require("sap/ui/core/LocaleData").getInstance(e.getLocale())._get()},attachListeners:()=>{ne()&&(()=>{const t=ne(),e=t.getConfiguration();t.attachThemeChanged((async()=>{await qt(e.getTheme())}))})()},cssVariablesLoaded:()=>{if(!ne())return;const t=[...document.head.children].find((t=>"sap-ui-theme-sap.ui.core"===t.id));return t?!!t.href.match(/\/css(-|_)variables\.css/):void 0},getNextZIndex:()=>{if(!ne())return;return window.sap.ui.require("sap/ui/core/Popup").getNextZIndex()},setInitialZIndex:()=>{if(!ne())return;window.sap.ui.require("sap/ui/core/Popup").setInitialZIndex(se())}},f.set(ie,ae);var re={packageName:"@ui5/webcomponents-base",fileName:"FontFace.css",content:'@font-face{font-family:"72";font-style:normal;font-weight:400;src:local("72"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:400;src:local(\'72-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Regular-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72";font-style:normal;font-weight:700;src:local(\'72-Bold\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72full";font-style:normal;font-weight:700;src:local(\'72-Bold-full\'),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff2?ui5-webcomponents) format("woff2"),url(https://ui5.sap.com/sdk/resources/sap/ui/core/themes/sap_fiori_3/fonts/72-Bold-full.woff?ui5-webcomponents) format("woff")}@font-face{font-family:"72Black";font-style:bold;font-weight:900;src:local(\'72Black\'),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff2?ui5-webcomponents) format("woff2"),url(https://openui5nightly.hana.ondemand.com/resources/sap/ui/core/themes/sap_horizon/fonts/72-Black.woff?ui5-webcomponents) format("woff")}'},oe={packageName:"@ui5/webcomponents-base",fileName:"OverrideFontFace.css",content:"@font-face{font-family:'72override';unicode-range:U+0102-0103,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EB7,U+1EB8-1EC7,U+1EC8-1ECB,U+1ECC-1EE3,U+1EE4-1EF1,U+1EF4-1EF7;src:local('Arial'),local('Helvetica'),local('sans-serif')}"};const le=()=>{Rt("data-ui5-font-face")||Nt(re,"data-ui5-font-face")},ce=()=>{Rt("data-ui5-font-face-override")||Nt(oe,"data-ui5-font-face-override")};var de={packageName:"@ui5/webcomponents-base",fileName:"SystemCSSVars.css",content:":root{--_ui5_content_density:cozy}.sapUiSizeCompact,.ui5-content-density-compact,[data-ui5-compact-size]{--_ui5_content_density:compact}[dir=rtl]{--_ui5_dir:rtl}[dir=ltr]{--_ui5_dir:ltr}"};let he=!1;const ue=new b,pe=async()=>{if(he)return;const t=m("OpenUI5Support");t&&await t.init(),await new Promise((t=>{document.body?t():document.addEventListener("DOMContentLoaded",(()=>{t()}))})),await Zt(Ft()),t&&t.attachListeners(),(()=>{const t=m("OpenUI5Support");t&&t.isLoaded()||le(),ce()})(),Rt("data-ui5-system-css-vars")||Nt(de,"data-ui5-system-css-vars"),await ue.fireEventAsync("boot"),he=!0};class ge{static isValid(t){}static attributeToProperty(t){return t}static propertyToAttribute(t){return`${t}`}static valuesAreEqual(t,e){return t===e}static generateTypeAccessors(t){Object.keys(t).forEach((e=>{Object.defineProperty(this,e,{get:()=>t[e]})}))}}const fe=(t,e,s=!1)=>{if("function"!=typeof t||"function"!=typeof e)return!1;if(s&&t===e)return!0;let n=t;do{n=Object.getPrototypeOf(n)}while(null!==n&&n!==e);return n===e},me=new Map,_e=new Map,ye=t=>{if(!me.has(t)){const e=we(t.split("-"));me.set(t,e)}return me.get(t)},ve=t=>{if(!_e.has(t)){const e=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();_e.set(t,e)}return _e.get(t)},we=t=>t.map(((t,e)=>0===e?t.toLowerCase():t.charAt(0).toUpperCase()+t.slice(1).toLowerCase())).join(""),Ae=t=>t&&t instanceof HTMLElement&&"slot"===t.localName,be=t=>Ae(t)?t.assignedNodes({flatten:!0}).filter((t=>t instanceof HTMLElement)):[t];let $e={include:[/^ui5-/],exclude:[]};const Se=new Map,Ce=t=>{if(!Se.has(t)){const e=$e.include.some((e=>t.match(e)))&&!$e.exclude.some((e=>t.match(e)));Se.set(t,e)}return Se.get(t)},Ee=t=>{Ce(t)};class Me{constructor(t){this.metadata=t}getInitialState(){if(Object.prototype.hasOwnProperty.call(this,"_initialState"))return this._initialState;const t={},e=this.slotsAreManaged(),s=this.getProperties();for(const e in s){const n=s[e].type,i=s[e].defaultValue;n===Boolean?(t[e]=!1,void 0!==i&&console.warn("The 'defaultValue' metadata key is ignored for all booleans properties, they would be initialized with 'false' by default")):s[e].multiple?t[e]=[]:t[e]=n===Object?"defaultValue"in s[e]?s[e].defaultValue:{}:n===String?"defaultValue"in s[e]?s[e].defaultValue:"":i}if(e){const e=this.getSlots();for(const[s,n]of Object.entries(e)){t[n.propertyName||s]=[]}}return this._initialState=t,t}static validatePropertyValue(t,e){return e.multiple?t.map((t=>Oe(t,e))):Oe(t,e)}static validateSlotValue(t,e){return Te(t,e)}getPureTag(){return this.metadata.tag}getTag(){const t=this.metadata.tag,e=Ee(t);return e?`${t}-${e}`:t}getAltTag(){const t=this.metadata.altTag;if(!t)return;const e=Ee(t);return e?`${t}-${e}`:t}hasAttribute(t){const e=this.getProperties()[t];return e.type!==Object&&!e.noAttribute&&!e.multiple}getPropertiesList(){return Object.keys(this.getProperties())}getAttributesList(){return this.getPropertiesList().filter(this.hasAttribute,this).map(ve)}getSlots(){return this.metadata.slots||{}}canSlotText(){const t=this.getSlots().default;return t&&t.type===Node}hasSlots(){return!!Object.entries(this.getSlots()).length}hasIndividualSlots(){return this.slotsAreManaged()&&Object.entries(this.getSlots()).some((([t,e])=>e.individualSlots))}slotsAreManaged(){return!!this.metadata.managedSlots}getProperties(){return this.metadata.properties||{}}getEvents(){return this.metadata.events||{}}isLanguageAware(){return!!this.metadata.languageAware}isThemeAware(){return!!this.metadata.themeAware}shouldInvalidateOnChildChange(t,e,s){const n=this.getSlots()[t].invalidateOnChildChange;if(void 0===n)return!1;if("boolean"==typeof n)return n;if("object"==typeof n){if("property"===e){if(void 0===n.properties)return!1;if("boolean"==typeof n.properties)return n.properties;if(Array.isArray(n.properties))return n.properties.includes(s);throw new Error("Wrong format for invalidateOnChildChange.properties: boolean or array is expected")}if("slot"===e){if(void 0===n.slots)return!1;if("boolean"==typeof n.slots)return n.slots;if(Array.isArray(n.slots))return n.slots.includes(s);throw new Error("Wrong format for invalidateOnChildChange.slots: boolean or array is expected")}}throw new Error("Wrong format for invalidateOnChildChange: boolean or object is expected")}}const Oe=(t,e)=>{const s=e.type;return s===Boolean?"boolean"==typeof t&&t:s===String?"string"==typeof t||null==t?t:t.toString():s===Object?"object"==typeof t?t:e.defaultValue:fe(s,ge)?s.isValid(t)?t:e.defaultValue:void 0},Te=(t,e)=>(t&&be(t).forEach((t=>{if(!(t instanceof e.type))throw new Error(`${t} is not of type ${e.type}`)})),t);customElements.get("ui5-static-area")||customElements.define("ui5-static-area",class extends HTMLElement{});const Pe=It("CustomStyle.eventProvider",new b),xe=t=>{Pe.attachEvent("CustomCSSChange",t)},Le=It("CustomStyle.customCSSFor",{});xe((t=>{W({tag:t})}));const Ie=t=>Array.isArray(t)?De(t.filter((t=>!!t))).map((t=>"string"==typeof t?t:t.content)).join(" "):"string"==typeof t?t:t.content,De=t=>t.reduce(((t,e)=>t.concat(Array.isArray(e)?De(e):e)),[]),ke=new Map;xe((t=>{ke.delete(`${t}_normal`)}));const Ne=(t,e=!1)=>{const s=t.getMetadata().getTag(),n=`${s}_${e?"static":"normal"}`;if(!ke.has(n)){let i;if(e)i=Ie(t.staticAreaStyles);else{const e=(t=>Le[t]?Le[t].join(""):"")(s)||"";i=`${Ie(t.styles)} ${e}`}ke.set(n,i)}return ke.get(n)},Re=new Map;xe((t=>{Re.delete(`${t}_normal`)}));const Ue=(t,e=!1)=>{let s;const n=e?"staticAreaTemplate":"template",i=e?t.staticAreaItem.shadowRoot:t.shadowRoot,a=((t,e)=>{const s=e.constructor.getUniqueDependencies().map((t=>t.getMetadata().getPureTag())).filter(Ce);return t(e,s,void 0)})(t.constructor[n],t);document.adoptedStyleSheets?i.adoptedStyleSheets=((t,e=!1)=>{const s=`${t.getMetadata().getTag()}_${e?"static":"normal"}`;if(!Re.has(s)){const n=Ne(t,e),i=new CSSStyleSheet;i.replaceSync(n),Re.set(s,[i])}return Re.get(s)})(t.constructor,e):window.ShadyDOM||(s=Ne(t.constructor,e)),t.constructor.render(a,i,s,{host:t})};const je={iw:"he",ji:"yi",in:"id",sh:"sr"},He=(t=>{const e=/\$([-a-z0-9A-Z._]+)(?::([^$]*))?\$/.exec(t);return e&&e[2]?e[2].split(/,/):null})("$cldr-rtl-locales:ar,fa,he$")||[],Be=()=>{const t=(A(),y.rtl);return null!==t?!!t:(t=>(t=t&&je[t]||t,He.indexOf(t)>=0))(G()||a())},Ve=t=>{const e=window.document,s=["ltr","rtl"],n=getComputedStyle(t).getPropertyValue("--_ui5_dir");return s.includes(n)?n:s.includes(t.dir)?t.dir:s.includes(e.documentElement.dir)?e.documentElement.dir:s.includes(e.body.dir)?e.body.dir:Be()?"rtl":void 0};class ze extends HTMLElement{constructor(){super(),this._rendered=!1,this.attachShadow({mode:"open"})}setOwnerElement(t){this.ownerElement=t,this.classList.add(this.ownerElement._id)}update(){this._rendered&&(this._updateContentDensity(),this._updateDirection(),Ue(this.ownerElement,!0))}_updateContentDensity(){var t;"compact"===(t=this.ownerElement,getComputedStyle(t).getPropertyValue("--_ui5_content_density"))?(this.classList.add("sapUiSizeCompact"),this.classList.add("ui5-content-density-compact")):(this.classList.remove("sapUiSizeCompact"),this.classList.remove("ui5-content-density-compact"))}_updateDirection(){const t=Ve(this.ownerElement);t?this.setAttribute("dir",t):this.removeAttribute("dir")}async getDomRef(){return this._updateContentDensity(),this._rendered||(this._rendered=!0,Ue(this.ownerElement,!0)),await z(),this.shadowRoot}static getTag(){const t="ui5-static-area-item",e=Ee(t);return e?`${t}-${e}`:t}static createInstance(){return customElements.get(ze.getTag())||customElements.define(ze.getTag(),ze),document.createElement(this.getTag())}}const Ze=new WeakMap;const We=(t,e,s)=>{const n=((t,e,s)=>{const n=new MutationObserver(e);return n.observe(t,s),n})(t,e,s);Ze.set(t,n)},Fe=["value-changed"];let qe;const Ge=()=>(void 0===qe&&(A(),qe=y.noConflict),qe),Je=t=>{const e=Ge();return!(t=>Fe.includes(t))(t)&&(!0===e||!(t=>{const e=Ge();return!(e.events&&e.events.includes&&e.events.includes(t))})(t))},Ke=["disabled","title","hidden","role","draggable"],Ye=t=>{if(Ke.includes(t)||t.startsWith("aria"))return!0;return![HTMLElement,Element,Node].some((e=>e.prototype.hasOwnProperty(t)))},Xe=(t,e)=>{if(t.length!==e.length)return!1;for(let s=0;s<t.length;s++)if(t[s]!==e[s])return!1;return!0},Qe=(t,e)=>class extends t{constructor(){super(),e&&e()}};let ts=0;const es=new Map,ss=new Map;function ns(t){this._suppressInvalidation||(this.onInvalidation(t),this._changedState.push(t),j(this),this._eventProvider.fireEvent("invalidate",{...t,target:this}))}class is extends HTMLElement{constructor(){let t;super(),this._changedState=[],this._suppressInvalidation=!0,this._inDOM=!1,this._fullyConnected=!1,this._childChangeListeners=new Map,this._slotChangeListeners=new Map,this._eventProvider=new b,this._domRefReadyPromise=new Promise((e=>{t=e})),this._domRefReadyPromise._deferredResolve=t,this._initializeState(),this._upgradeAllProperties(),this.constructor._needsShadowDOM()&&this.attachShadow({mode:"open"})}get _id(){return this.__id||(this.__id="ui5wc_"+ ++ts),this.__id}async connectedCallback(){this.setAttribute(this.constructor.getMetadata().getPureTag(),"");const t=this.constructor.getMetadata().slotsAreManaged();this._inDOM=!0,t&&(this._startObservingDOMChildren(),await this._processChildren()),this._inDOM&&(H(this),this._domRefReadyPromise._deferredResolve(),this._fullyConnected=!0,"function"==typeof this.onEnterDOM&&this.onEnterDOM())}disconnectedCallback(){const t=this.constructor.getMetadata().slotsAreManaged();var e;this._inDOM=!1,t&&this._stopObservingDOMChildren(),this._fullyConnected&&("function"==typeof this.onExitDOM&&this.onExitDOM(),this._fullyConnected=!1),this.staticAreaItem&&this.staticAreaItem.parentElement&&this.staticAreaItem.parentElement.removeChild(this.staticAreaItem),e=this,D.remove(e),L.delete(e)}_startObservingDOMChildren(){if(!this.constructor.getMetadata().hasSlots())return;const t=this.constructor.getMetadata().canSlotText(),e={childList:!0,subtree:t,characterData:t};We(this,this._processChildren.bind(this),e)}_stopObservingDOMChildren(){(t=>{const e=Ze.get(t);e&&((t=>{t.disconnect()})(e),Ze.delete(t))})(this)}async _processChildren(){this.constructor.getMetadata().hasSlots()&&await this._updateSlots()}async _updateSlots(){const t=this.constructor.getMetadata().getSlots(),e=this.constructor.getMetadata().canSlotText(),s=Array.from(e?this.childNodes:this.children),n=new Map,i=new Map;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;i.set(t,e),n.set(t,[...this._state[t]]),this._clearSlot(e,s)}const a=new Map,r=new Map,o=s.map((async(e,s)=>{const n=(t=>{if(!(t instanceof HTMLElement))return"default";const e=t.getAttribute("slot");if(e){const t=e.match(/^(.+?)-\d+$/);return t?t[1]:e}return"default"})(e),i=t[n];if(void 0===i){const s=Object.keys(t).join(", ");return void console.warn(`Unknown slotName: ${n}, ignoring`,e,`Valid values are: ${s}`)}if(i.individualSlots){const t=(a.get(n)||0)+1;a.set(n,t),e._individualSlot=`${n}-${t}`}if(e instanceof HTMLElement){const t=e.localName;if(t.includes("-")){if(!window.customElements.get(t)){const e=window.customElements.whenDefined(t);let s=es.get(t);s||(s=new Promise((t=>setTimeout(t,1e3))),es.set(t,s)),await Promise.race([e,s])}window.customElements.upgrade(e)}}(e=this.constructor.getMetadata().constructor.validateSlotValue(e,i)).isUI5Element&&i.invalidateOnChildChange&&e.attachInvalidate(this._getChildChangeListener(n)),Ae(e)&&this._attachSlotChange(e,n);const o=i.propertyName||n;r.has(o)?r.get(o).push({child:e,idx:s}):r.set(o,[{child:e,idx:s}])}));await Promise.all(o),r.forEach(((t,e)=>{this._state[e]=t.sort(((t,e)=>t.idx-e.idx)).map((t=>t.child))}));let l=!1;for(const[e,s]of Object.entries(t)){const t=s.propertyName||e;Xe(n.get(t),this._state[t])||(ns.call(this,{type:"slot",name:i.get(t),reason:"children"}),l=!0)}l||ns.call(this,{type:"slot",name:"default",reason:"textcontent"})}_clearSlot(t,e){const s=e.propertyName||t;this._state[s].forEach((e=>{e&&e.isUI5Element&&e.detachInvalidate(this._getChildChangeListener(t)),Ae(e)&&this._detachSlotChange(e,t)})),this._state[s]=[]}attachInvalidate(t){this._eventProvider.attachEvent("invalidate",t)}detachInvalidate(t){this._eventProvider.detachEvent("invalidate",t)}_onChildChange(t,e){this.constructor.getMetadata().shouldInvalidateOnChildChange(t,e.type,e.name)&&ns.call(this,{type:"slot",name:t,reason:"childchange",child:e.target})}attributeChangedCallback(t,e,s){const n=this.constructor.getMetadata().getProperties(),i=t.replace(/^ui5-/,""),a=ye(i);if(n.hasOwnProperty(a)){const t=n[a].type;t===Boolean?s=null!==s:fe(t,ge)&&(s=t.attributeToProperty(s)),this[a]=s}}_updateAttribute(t,e){if(!this.constructor.getMetadata().hasAttribute(t))return;const s=this.constructor.getMetadata().getProperties()[t].type,n=ve(t),i=this.getAttribute(n);s===Boolean?!0===e&&null===i?this.setAttribute(n,""):!1===e&&null!==i&&this.removeAttribute(n):fe(s,ge)?this.setAttribute(n,s.propertyToAttribute(e)):"object"!=typeof e&&i!==e&&this.setAttribute(n,e)}_upgradeProperty(t){if(this.hasOwnProperty(t)){const e=this[t];delete this[t],this[t]=e}}_upgradeAllProperties(){this.constructor.getMetadata().getPropertiesList().forEach(this._upgradeProperty,this)}_initializeState(){this._state={...this.constructor.getMetadata().getInitialState()}}_getChildChangeListener(t){return this._childChangeListeners.has(t)||this._childChangeListeners.set(t,this._onChildChange.bind(this,t)),this._childChangeListeners.get(t)}_getSlotChangeListener(t){return this._slotChangeListeners.has(t)||this._slotChangeListeners.set(t,this._onSlotChange.bind(this,t)),this._slotChangeListeners.get(t)}_attachSlotChange(t,e){t.addEventListener("slotchange",this._getSlotChangeListener(e))}_detachSlotChange(t,e){t.removeEventListener("slotchange",this._getSlotChangeListener(e))}_onSlotChange(t){ns.call(this,{type:"slot",name:t,reason:"slotchange"})}onInvalidation(t){}_render(){const t=this.constructor.getMetadata().hasIndividualSlots();this._suppressInvalidation=!0,"function"==typeof this.onBeforeRendering&&this.onBeforeRendering(),this._onComponentStateFinalized&&this._onComponentStateFinalized(),this._suppressInvalidation=!1,this._changedState=[],this.constructor._needsShadowDOM()&&Ue(this),this.staticAreaItem&&this.staticAreaItem.update(),t&&this._assignIndividualSlotsToChildren(),"function"==typeof this.onAfterRendering&&this.onAfterRendering()}_assignIndividualSlotsToChildren(){Array.from(this.children).forEach((t=>{t._individualSlot&&t.setAttribute("slot",t._individualSlot)}))}_waitForDomRef(){return this._domRefReadyPromise}getDomRef(){if("function"==typeof this._getRealDomRef)return this._getRealDomRef();if(!this.shadowRoot||0===this.shadowRoot.children.length)return;const t=[...this.shadowRoot.children].filter((t=>!["link","style"].includes(t.localName)));return 1!==t.length&&console.warn(`The shadow DOM for ${this.constructor.getMetadata().getTag()} does not have a top level element, the getDomRef() method might not work as expected`),t[0]}getFocusDomRef(){const t=this.getDomRef();if(t){return t.querySelector("[data-sap-focus-ref]")||t}}async getFocusDomRefAsync(){return await this._waitForDomRef(),this.getFocusDomRef()}async focus(){await this._waitForDomRef();const t=this.getFocusDomRef();t&&"function"==typeof t.focus&&t.focus()}fireEvent(t,e,s=!1,n=!0){const i=this._fireEvent(t,e,s,n),a=ye(t);return a!==t?i&&this._fireEvent(a,e,s):i}_fireEvent(t,e,s=!1,n=!0){const i=new CustomEvent(`ui5-${t}`,{detail:e,composed:!1,bubbles:n,cancelable:s}),a=this.dispatchEvent(i);if(Je(t))return a;const r=new CustomEvent(t,{detail:e,composed:!1,bubbles:n,cancelable:s});return this.dispatchEvent(r)&&a}getSlottedNodes(t){return this[t].reduce(((t,e)=>t.concat(be(e))),[])}get effectiveDir(){var t;return t=this.constructor,x.add(t),Ve(this)}get isUI5Element(){return!0}static get observedAttributes(){return this.getMetadata().getAttributesList()}static _needsShadowDOM(){return!!this.template}static _needsStaticArea(){return!!this.staticAreaTemplate}getStaticAreaItemDomRef(){if(!this.constructor._needsStaticArea())throw new Error("This component does not use the static area");return this.staticAreaItem||(this.staticAreaItem=ze.createInstance(),this.staticAreaItem.setOwnerElement(this)),this.staticAreaItem.parentElement||Lt("ui5-static-area").appendChild(this.staticAreaItem),this.staticAreaItem.getDomRef()}static _generateAccessors(){const t=this.prototype,e=this.getMetadata().slotsAreManaged(),s=this.getMetadata().getProperties();for(const[e,n]of Object.entries(s)){if(Ye(e)||console.warn(`"${e}" is not a valid property name. Use a name that does not collide with DOM APIs`),n.type===Boolean&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All booleans are false by default.`);if(n.type===Array)throw new Error(`Wrong type for property "${e}". Properties cannot be of type Array - use "multiple: true" and set "type" to the single value type, such as "String", "Object", etc...`);if(n.type===Object&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All properties of type "Object" are empty objects by default.`);if(n.multiple&&n.defaultValue)throw new Error(`Cannot set a default value for property "${e}". All multiple properties are empty arrays by default.`);Object.defineProperty(t,e,{get(){if(void 0!==this._state[e])return this._state[e];const t=n.defaultValue;return n.type!==Boolean&&(n.type===String?t:n.multiple?[]:t)},set(t){let s;t=this.constructor.getMetadata().constructor.validatePropertyValue(t,n);const i=this._state[e];s=n.multiple&&n.compareValues?!Xe(i,t):fe(n.type,ge)?!n.type.valuesAreEqual(i,t):i!==t,s&&(this._state[e]=t,ns.call(this,{type:"property",name:e,newValue:t,oldValue:i}),this._updateAttribute(e,t))}})}if(e){const e=this.getMetadata().getSlots();for(const[s,n]of Object.entries(e)){Ye(s)||console.warn(`"${s}" is not a valid property name. Use a name that does not collide with DOM APIs`);const e=n.propertyName||s;Object.defineProperty(t,e,{get(){return void 0!==this._state[e]?this._state[e]:[]},set(){throw new Error("Cannot set slot content directly, use the DOM APIs (appendChild, removeChild, etc...)")}})}}}static get metadata(){return{}}static get styles(){return""}static get staticAreaStyles(){return""}static get dependencies(){return[]}static getUniqueDependencies(){if(!ss.has(this)){const t=this.dependencies.filter(((t,e,s)=>s.indexOf(t)===e));ss.set(this,t)}return ss.get(this)}static whenDependenciesDefined(){return Promise.all(this.getUniqueDependencies().map((t=>t.define())))}static async onDefine(){return Promise.resolve()}static async define(){await pe(),await Promise.all([this.whenDependenciesDefined(),this.onDefine()]);const t=this.getMetadata().getTag(),e=this.getMetadata().getAltTag(),s=(t=>E.has(t))(t),n=customElements.get(t);return n&&!s?(t=>{M.add(t),O||(O=setTimeout((()=>{P(),O=void 0}),1e3))})(t):n||(this._generateAccessors(),T(t),window.customElements.define(t,this),e&&!customElements.get(e)&&(T(e),window.customElements.define(e,Qe(this,(()=>{console.log(`The ${e} tag is deprecated and will be removed in the next release, please use ${t} instead.`)}))))),this}static getMetadata(){if(this.hasOwnProperty("_metadata"))return this._metadata;const t=[this.metadata];let e=this;for(;e!==is;)e=Object.getPrototypeOf(e),t.unshift(e.metadata);const s=g({},...t);return this._metadata=new Me(s),this._metadata}}
2
2
  /**
3
3
  * @license
4
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
5
- * This code may only be used under the BSD style license found at
6
- * http://polymer.github.io/LICENSE.txt
7
- * The complete set of authors may be found at
8
- * http://polymer.github.io/AUTHORS.txt
9
- * The complete set of contributors may be found at
10
- * http://polymer.github.io/CONTRIBUTORS.txt
11
- * Code distributed by Google as part of the polymer project is also
12
- * subject to an additional IP rights grant found at
13
- * http://polymer.github.io/PATENTS.txt
14
- */const qe=new WeakMap,Ge=t=>"function"==typeof t&&qe.has(t),Je="undefined"!=typeof window&&null!=window.customElements&&void 0!==window.customElements.polyfillWrapFlushCallback,Ke=(t,e,s=null)=>{for(;e!==s;){const s=e.nextSibling;t.removeChild(e),e=s}},Ye={},Xe={},Qe=`{{lit-${String(Math.random()).slice(2)}}}`,ts=`\x3c!--${Qe}--\x3e`,es=new RegExp(`${Qe}|${ts}`);class ss{constructor(t,e){this.parts=[],this.element=e;const s=[],n=[],i=document.createTreeWalker(e.content,133,null,!1);let a=0,r=-1,o=0;const{strings:l,values:{length:c}}=t;for(;o<c;){const t=i.nextNode();if(null!==t){if(r++,1===t.nodeType){if(t.hasAttributes()){const e=t.attributes,{length:s}=e;let n=0;for(let t=0;t<s;t++)ns(e[t].name,"$lit$")&&n++;for(;n-- >0;){const e=l[o],s=rs.exec(e)[2],n=s.toLowerCase()+"$lit$",i=t.getAttribute(n);t.removeAttribute(n);const a=i.split(es);this.parts.push({type:"attribute",index:r,name:s,strings:a}),o+=a.length-1}}"TEMPLATE"===t.tagName&&(n.push(t),i.currentNode=t.content)}else if(3===t.nodeType){const e=t.data;if(e.indexOf(Qe)>=0){const n=t.parentNode,i=e.split(es),a=i.length-1;for(let e=0;e<a;e++){let s,a=i[e];if(""===a)s=as();else{const t=rs.exec(a);null!==t&&ns(t[2],"$lit$")&&(a=a.slice(0,t.index)+t[1]+t[2].slice(0,-"$lit$".length)+t[3]),s=document.createTextNode(a)}n.insertBefore(s,t),this.parts.push({type:"node",index:++r})}""===i[a]?(n.insertBefore(as(),t),s.push(t)):t.data=i[a],o+=a}}else if(8===t.nodeType)if(t.data===Qe){const e=t.parentNode;null!==t.previousSibling&&r!==a||(r++,e.insertBefore(as(),t)),a=r,this.parts.push({type:"node",index:r}),null===t.nextSibling?t.data="":(s.push(t),r--),o++}else{let e=-1;for(;-1!==(e=t.data.indexOf(Qe,e+1));)this.parts.push({type:"node",index:-1}),o++}}else i.currentNode=n.pop()}for(const t of s)t.parentNode.removeChild(t)}}const ns=(t,e)=>{const s=t.length-e.length;return s>=0&&t.slice(s)===e},is=t=>-1!==t.index,as=()=>document.createComment(""),rs=/([ \x09\x0a\x0c\x0d])([^\0-\x1F\x7F-\x9F "'>=/]+)([ \x09\x0a\x0c\x0d]*=[ \x09\x0a\x0c\x0d]*(?:[^ \x09\x0a\x0c\x0d"'`<>=]*|"[^"]*|'[^']*))$/;
4
+ * Copyright 2017 Google LLC
5
+ * SPDX-License-Identifier: BSD-3-Clause
6
+ */var as;const rs=globalThis.trustedTypes,os=rs?rs.createPolicy("lit-html",{createHTML:t=>t}):void 0,ls=`lit$${(Math.random()+"").slice(9)}$`,cs="?"+ls,ds=`<${cs}>`,hs=document,us=(t="")=>hs.createComment(t),ps=t=>null===t||"object"!=typeof t&&"function"!=typeof t,gs=Array.isArray,fs=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ms=/-->/g,_s=/>/g,ys=/>|[ \n \r](?:([^\s"'>=/]+)([ \n \r]*=[ \n \r]*(?:[^ \n \r"'`<>=]|("|')|))|$)/g,vs=/'/g,ws=/"/g,As=/^(?:script|style|textarea)$/i,bs=(t=>(e,...s)=>({_$litType$:t,strings:e,values:s}))(1),$s=Symbol.for("lit-noChange"),Ss=Symbol.for("lit-nothing"),Cs=new WeakMap,Es=hs.createTreeWalker(hs,129,null,!1),Ms=(t,e)=>{const s=t.length-1,n=[];let i,a=2===e?"<svg>":"",r=fs;for(let e=0;e<s;e++){const s=t[e];let o,l,c=-1,d=0;for(;d<s.length&&(r.lastIndex=d,l=r.exec(s),null!==l);)d=r.lastIndex,r===fs?"!--"===l[1]?r=ms:void 0!==l[1]?r=_s:void 0!==l[2]?(As.test(l[2])&&(i=RegExp("</"+l[2],"g")),r=ys):void 0!==l[3]&&(r=ys):r===ys?">"===l[0]?(r=null!=i?i:fs,c=-1):void 0===l[1]?c=-2:(c=r.lastIndex-l[2].length,o=l[1],r=void 0===l[3]?ys:'"'===l[3]?ws:vs):r===ws||r===vs?r=ys:r===ms||r===_s?r=fs:(r=ys,i=void 0);const h=r===ys&&t[e+1].startsWith("/>")?" ":"";a+=r===fs?s+ds:c>=0?(n.push(o),s.slice(0,c)+"$lit$"+s.slice(c)+ls+h):s+ls+(-2===c?(n.push(void 0),e):h)}const o=a+(t[s]||"<?>")+(2===e?"</svg>":"");return[void 0!==os?os.createHTML(o):o,n]};class Os{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let i=0,a=0;const r=t.length-1,o=this.parts,[l,c]=Ms(t,e);if(this.el=Os.createElement(l,s),Es.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=Es.nextNode())&&o.length<r;){if(1===n.nodeType){if(n.hasAttributes()){const t=[];for(const e of n.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(ls)){const s=c[a++];if(t.push(e),void 0!==s){const t=n.getAttribute(s.toLowerCase()+"$lit$").split(ls),e=/([.?@])?(.*)/.exec(s);o.push({type:1,index:i,name:e[2],strings:t,ctor:"."===e[1]?Is:"?"===e[1]?Ds:"@"===e[1]?ks:Ls})}else o.push({type:6,index:i})}for(const e of t)n.removeAttribute(e)}if(As.test(n.tagName)){const t=n.textContent.split(ls),e=t.length-1;if(e>0){n.textContent=rs?rs.emptyScript:"";for(let s=0;s<e;s++)n.append(t[s],us()),Es.nextNode(),o.push({type:2,index:++i});n.append(t[e],us())}}}else if(8===n.nodeType)if(n.data===cs)o.push({type:2,index:i});else{let t=-1;for(;-1!==(t=n.data.indexOf(ls,t+1));)o.push({type:7,index:i}),t+=ls.length-1}i++}}static createElement(t,e){const s=hs.createElement("template");return s.innerHTML=t,s}}function Ts(t,e,s=t,n){var i,a,r,o;if(e===$s)return e;let l=void 0!==n?null===(i=s._$Cl)||void 0===i?void 0:i[n]:s._$Cu;const c=ps(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(a=null==l?void 0:l._$AO)||void 0===a||a.call(l,!1),void 0===c?l=void 0:(l=new c(t),l._$AT(t,s,n)),void 0!==n?(null!==(r=(o=s)._$Cl)&&void 0!==r?r:o._$Cl=[])[n]=l:s._$Cu=l),void 0!==l&&(e=Ts(t,l._$AS(t,e.values),l,n)),e}class Ps{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:s},parts:n}=this._$AD,i=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:hs).importNode(s,!0);Es.currentNode=i;let a=Es.nextNode(),r=0,o=0,l=n[0];for(;void 0!==l;){if(r===l.index){let e;2===l.type?e=new xs(a,a.nextSibling,this,t):1===l.type?e=new l.ctor(a,l.name,l.strings,this,t):6===l.type&&(e=new Ns(a,this,t)),this.v.push(e),l=n[++o]}r!==(null==l?void 0:l.index)&&(a=Es.nextNode(),r++)}return i}m(t){let e=0;for(const s of this.v)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}}class xs{constructor(t,e,s,n){var i;this.type=2,this._$AH=Ss,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=n,this._$Cg=null===(i=null==n?void 0:n.isConnected)||void 0===i||i}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=Ts(this,t,e),ps(t)?t===Ss||null==t||""===t?(this._$AH!==Ss&&this._$AR(),this._$AH=Ss):t!==this._$AH&&t!==$s&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.S(t):(t=>{var e;return gs(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.M(t):this.$(t)}A(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}S(t){this._$AH!==t&&(this._$AR(),this._$AH=this.A(t))}$(t){this._$AH!==Ss&&ps(this._$AH)?this._$AA.nextSibling.data=t:this.S(hs.createTextNode(t)),this._$AH=t}T(t){var e;const{values:s,_$litType$:n}=t,i="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=Os.createElement(n.h,this.options)),n);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===i)this._$AH.m(s);else{const t=new Ps(i,this),e=t.p(this.options);t.m(s),this.S(e),this._$AH=t}}_$AC(t){let e=Cs.get(t.strings);return void 0===e&&Cs.set(t.strings,e=new Os(t)),e}M(t){gs(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let s,n=0;for(const i of t)n===e.length?e.push(s=new xs(this.A(us()),this.A(us()),this,this.options)):s=e[n],s._$AI(i),n++;n<e.length&&(this._$AR(s&&s._$AB.nextSibling,n),e.length=n)}_$AR(t=this._$AA.nextSibling,e){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class Ls{constructor(t,e,s,n,i){this.type=1,this._$AH=Ss,this._$AN=void 0,this.element=t,this.name=e,this._$AM=n,this.options=i,s.length>2||""!==s[0]||""!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=Ss}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,s,n){const i=this.strings;let a=!1;if(void 0===i)t=Ts(this,t,e,0),a=!ps(t)||t!==this._$AH&&t!==$s,a&&(this._$AH=t);else{const n=t;let r,o;for(t=i[0],r=0;r<i.length-1;r++)o=Ts(this,n[s+r],e,r),o===$s&&(o=this._$AH[r]),a||(a=!ps(o)||o!==this._$AH[r]),o===Ss?t=Ss:t!==Ss&&(t+=(null!=o?o:"")+i[r+1]),this._$AH[r]=o}a&&!n&&this.k(t)}k(t){t===Ss?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class Is extends Ls{constructor(){super(...arguments),this.type=3}k(t){this.element[this.name]=t===Ss?void 0:t}}class Ds extends Ls{constructor(){super(...arguments),this.type=4}k(t){t&&t!==Ss?this.element.setAttribute(this.name,""):this.element.removeAttribute(this.name)}}class ks extends Ls{constructor(t,e,s,n,i){super(t,e,s,n,i),this.type=5}_$AI(t,e=this){var s;if((t=null!==(s=Ts(this,t,e,0))&&void 0!==s?s:Ss)===$s)return;const n=this._$AH,i=t===Ss&&n!==Ss||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,a=t!==Ss&&(n===Ss||i);i&&this.element.removeEventListener(this.name,this,n),a&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,s;"function"==typeof this._$AH?this._$AH.call(null!==(s=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class Ns{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){Ts(this,t)}}const Rs=window.litHtmlPolyfillSupport;null==Rs||Rs(Os,xs),(null!==(as=globalThis.litHtmlVersions)&&void 0!==as?as:globalThis.litHtmlVersions=[]).push("2.0.1");
15
7
  /**
16
8
  * @license
17
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
18
- * This code may only be used under the BSD style license found at
19
- * http://polymer.github.io/LICENSE.txt
20
- * The complete set of authors may be found at
21
- * http://polymer.github.io/AUTHORS.txt
22
- * The complete set of contributors may be found at
23
- * http://polymer.github.io/CONTRIBUTORS.txt
24
- * Code distributed by Google as part of the polymer project is also
25
- * subject to an additional IP rights grant found at
26
- * http://polymer.github.io/PATENTS.txt
9
+ * Copyright 2020 Google LLC
10
+ * SPDX-License-Identifier: BSD-3-Clause
27
11
  */
28
- class os{constructor(t,e,s){this.__parts=[],this.template=t,this.processor=e,this.options=s}update(t){let e=0;for(const s of this.__parts)void 0!==s&&s.setValue(t[e]),e++;for(const t of this.__parts)void 0!==t&&t.commit()}_clone(){const t=Je?this.template.element.content.cloneNode(!0):document.importNode(this.template.element.content,!0),e=[],s=this.template.parts,n=document.createTreeWalker(t,133,null,!1);let i,a=0,r=0,o=n.nextNode();for(;a<s.length;)if(i=s[a],is(i)){for(;r<i.index;)r++,"TEMPLATE"===o.nodeName&&(e.push(o),n.currentNode=o.content),null===(o=n.nextNode())&&(n.currentNode=e.pop(),o=n.nextNode());if("node"===i.type){const t=this.processor.handleTextExpression(this.options);t.insertAfterNode(o.previousSibling),this.__parts.push(t)}else this.__parts.push(...this.processor.handleAttributeExpressions(o,i.name,i.strings,this.options));a++}else this.__parts.push(void 0),a++;return Je&&(document.adoptNode(t),customElements.upgrade(t)),t}}
12
+ const Us=new Map,js=(t=>(e,...s)=>{var n;const i=s.length;let a,r;const o=[],l=[];let c,d=0,h=!1;for(;d<i;){for(c=e[d];d<i&&void 0!==(r=s[d],a=null===(n=r)||void 0===n?void 0:n._$litStatic$);)c+=a+e[++d],h=!0;l.push(r),o.push(c),d++}if(d===i&&o.push(e[i]),h){const t=o.join("$$lit$$");void 0===(e=Us.get(t))&&Us.set(t,e=o),s=l}return t(e,...s)})(bs),Hs=2;
29
13
  /**
30
14
  * @license
31
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
32
- * This code may only be used under the BSD style license found at
33
- * http://polymer.github.io/LICENSE.txt
34
- * The complete set of authors may be found at
35
- * http://polymer.github.io/AUTHORS.txt
36
- * The complete set of contributors may be found at
37
- * http://polymer.github.io/CONTRIBUTORS.txt
38
- * Code distributed by Google as part of the polymer project is also
39
- * subject to an additional IP rights grant found at
40
- * http://polymer.github.io/PATENTS.txt
41
- */const ls=window.trustedTypes&&trustedTypes.createPolicy("lit-html",{createHTML:t=>t}),cs=` ${Qe} `;class ds{constructor(t,e,s,n){this.strings=t,this.values=e,this.type=s,this.processor=n}getHTML(){const t=this.strings.length-1;let e="",s=!1;for(let n=0;n<t;n++){const t=this.strings[n],i=t.lastIndexOf("\x3c!--");s=(i>-1||s)&&-1===t.indexOf("--\x3e",i+1);const a=rs.exec(t);e+=null===a?t+(s?cs:ts):t.substr(0,a.index)+a[1]+a[2]+"$lit$"+a[3]+Qe}return e+=this.strings[t],e}getTemplateElement(){const t=document.createElement("template");let e=this.getHTML();return void 0!==ls&&(e=ls.createHTML(e)),t.innerHTML=e,t}}
42
- /**
43
- * @license
44
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
45
- * This code may only be used under the BSD style license found at
46
- * http://polymer.github.io/LICENSE.txt
47
- * The complete set of authors may be found at
48
- * http://polymer.github.io/AUTHORS.txt
49
- * The complete set of contributors may be found at
50
- * http://polymer.github.io/CONTRIBUTORS.txt
51
- * Code distributed by Google as part of the polymer project is also
52
- * subject to an additional IP rights grant found at
53
- * http://polymer.github.io/PATENTS.txt
54
- */const hs=t=>null===t||!("object"==typeof t||"function"==typeof t),us=t=>Array.isArray(t)||!(!t||!t[Symbol.iterator]);class ps{constructor(t,e,s){this.dirty=!0,this.element=t,this.name=e,this.strings=s,this.parts=[];for(let t=0;t<s.length-1;t++)this.parts[t]=this._createPart()}_createPart(){return new gs(this)}_getValue(){const t=this.strings,e=t.length-1,s=this.parts;if(1===e&&""===t[0]&&""===t[1]){const t=s[0].value;if("symbol"==typeof t)return String(t);if("string"==typeof t||!us(t))return t}let n="";for(let i=0;i<e;i++){n+=t[i];const e=s[i];if(void 0!==e){const t=e.value;if(hs(t)||!us(t))n+="string"==typeof t?t:String(t);else for(const e of t)n+="string"==typeof e?e:String(e)}}return n+=t[e],n}commit(){this.dirty&&(this.dirty=!1,this.element.setAttribute(this.name,this._getValue()))}}class gs{constructor(t){this.value=void 0,this.committer=t}setValue(t){t===Ye||hs(t)&&t===this.value||(this.value=t,Ge(t)||(this.committer.dirty=!0))}commit(){for(;Ge(this.value);){const t=this.value;this.value=Ye,t(this)}this.value!==Ye&&this.committer.commit()}}class fs{constructor(t){this.value=void 0,this.__pendingValue=void 0,this.options=t}appendInto(t){this.startNode=t.appendChild(as()),this.endNode=t.appendChild(as())}insertAfterNode(t){this.startNode=t,this.endNode=t.nextSibling}appendIntoPart(t){t.__insert(this.startNode=as()),t.__insert(this.endNode=as())}insertAfterPart(t){t.__insert(this.startNode=as()),this.endNode=t.endNode,t.endNode=this.startNode}setValue(t){this.__pendingValue=t}commit(){if(null===this.startNode.parentNode)return;for(;Ge(this.__pendingValue);){const t=this.__pendingValue;this.__pendingValue=Ye,t(this)}const t=this.__pendingValue;t!==Ye&&(hs(t)?t!==this.value&&this.__commitText(t):t instanceof ds?this.__commitTemplateResult(t):t instanceof Node?this.__commitNode(t):us(t)?this.__commitIterable(t):t===Xe?(this.value=Xe,this.clear()):this.__commitText(t))}__insert(t){this.endNode.parentNode.insertBefore(t,this.endNode)}__commitNode(t){this.value!==t&&(this.clear(),this.__insert(t),this.value=t)}__commitText(t){const e=this.startNode.nextSibling,s="string"==typeof(t=null==t?"":t)?t:String(t);e===this.endNode.previousSibling&&3===e.nodeType?e.data=s:this.__commitNode(document.createTextNode(s)),this.value=t}__commitTemplateResult(t){const e=this.options.templateFactory(t);if(this.value instanceof os&&this.value.template===e)this.value.update(t.values);else{const s=new os(e,t.processor,this.options),n=s._clone();s.update(t.values),this.__commitNode(n),this.value=s}}__commitIterable(t){Array.isArray(this.value)||(this.value=[],this.clear());const e=this.value;let s,n=0;for(const i of t)s=e[n],void 0===s&&(s=new fs(this.options),e.push(s),0===n?s.appendIntoPart(this):s.insertAfterPart(e[n-1])),s.setValue(i),s.commit(),n++;n<e.length&&(e.length=n,this.clear(s&&s.endNode))}clear(t=this.startNode){Ke(this.startNode.parentNode,t.nextSibling,this.endNode)}}class ms{constructor(t,e,s){if(this.value=void 0,this.__pendingValue=void 0,2!==s.length||""!==s[0]||""!==s[1])throw new Error("Boolean attributes can only contain a single expression");this.element=t,this.name=e,this.strings=s}setValue(t){this.__pendingValue=t}commit(){for(;Ge(this.__pendingValue);){const t=this.__pendingValue;this.__pendingValue=Ye,t(this)}if(this.__pendingValue===Ye)return;const t=!!this.__pendingValue;this.value!==t&&(t?this.element.setAttribute(this.name,""):this.element.removeAttribute(this.name),this.value=t),this.__pendingValue=Ye}}class _s extends ps{constructor(t,e,s){super(t,e,s),this.single=2===s.length&&""===s[0]&&""===s[1]}_createPart(){return new ys(this)}_getValue(){return this.single?this.parts[0].value:super._getValue()}commit(){this.dirty&&(this.dirty=!1,this.element[this.name]=this._getValue())}}class ys extends gs{}let ws=!1;(()=>{try{const t={get capture(){return ws=!0,!1}};window.addEventListener("test",t,t),window.removeEventListener("test",t,t)}catch(t){}})();class vs{constructor(t,e,s){this.value=void 0,this.__pendingValue=void 0,this.element=t,this.eventName=e,this.eventContext=s,this.__boundHandleEvent=t=>this.handleEvent(t)}setValue(t){this.__pendingValue=t}commit(){for(;Ge(this.__pendingValue);){const t=this.__pendingValue;this.__pendingValue=Ye,t(this)}if(this.__pendingValue===Ye)return;const t=this.__pendingValue,e=this.value,s=null==t||null!=e&&(t.capture!==e.capture||t.once!==e.once||t.passive!==e.passive),n=null!=t&&(null==e||s);s&&this.element.removeEventListener(this.eventName,this.__boundHandleEvent,this.__options),n&&(this.__options=bs(t),this.element.addEventListener(this.eventName,this.__boundHandleEvent,this.__options)),this.value=t,this.__pendingValue=Ye}handleEvent(t){"function"==typeof this.value?this.value.call(this.eventContext||this.element,t):this.value.handleEvent(t)}}const bs=t=>t&&(ws?{capture:t.capture,passive:t.passive,once:t.once}:t.capture)
55
- /**
56
- * @license
57
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
58
- * This code may only be used under the BSD style license found at
59
- * http://polymer.github.io/LICENSE.txt
60
- * The complete set of authors may be found at
61
- * http://polymer.github.io/AUTHORS.txt
62
- * The complete set of contributors may be found at
63
- * http://polymer.github.io/CONTRIBUTORS.txt
64
- * Code distributed by Google as part of the polymer project is also
65
- * subject to an additional IP rights grant found at
66
- * http://polymer.github.io/PATENTS.txt
67
- */;const Ss=new class{handleAttributeExpressions(t,e,s,n){const i=e[0];if("."===i){return new _s(t,e.slice(1),s).parts}if("@"===i)return[new vs(t,e.slice(1),n.eventContext)];if("?"===i)return[new ms(t,e.slice(1),s)];return new ps(t,e,s).parts}handleTextExpression(t){return new fs(t)}};
68
- /**
69
- * @license
70
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
71
- * This code may only be used under the BSD style license found at
72
- * http://polymer.github.io/LICENSE.txt
73
- * The complete set of authors may be found at
74
- * http://polymer.github.io/AUTHORS.txt
75
- * The complete set of contributors may be found at
76
- * http://polymer.github.io/CONTRIBUTORS.txt
77
- * Code distributed by Google as part of the polymer project is also
78
- * subject to an additional IP rights grant found at
79
- * http://polymer.github.io/PATENTS.txt
80
- */function Cs(t){let e=As.get(t.type);void 0===e&&(e={stringsArray:new WeakMap,keyString:new Map},As.set(t.type,e));let s=e.stringsArray.get(t.strings);if(void 0!==s)return s;const n=t.strings.join(Qe);return s=e.keyString.get(n),void 0===s&&(s=new ss(t,t.getTemplateElement()),e.keyString.set(n,s)),e.stringsArray.set(t.strings,s),s}const As=new Map,Es=new WeakMap;
81
- /**
82
- * @license
83
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
84
- * This code may only be used under the BSD style license found at
85
- * http://polymer.github.io/LICENSE.txt
86
- * The complete set of authors may be found at
87
- * http://polymer.github.io/AUTHORS.txt
88
- * The complete set of contributors may be found at
89
- * http://polymer.github.io/CONTRIBUTORS.txt
90
- * Code distributed by Google as part of the polymer project is also
91
- * subject to an additional IP rights grant found at
92
- * http://polymer.github.io/PATENTS.txt
15
+ * Copyright 2017 Google LLC
16
+ * SPDX-License-Identifier: BSD-3-Clause
93
17
  */
94
18
  /**
95
19
  * @license
96
- * Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
97
- * This code may only be used under the BSD style license found at
98
- * http://polymer.github.io/LICENSE.txt
99
- * The complete set of authors may be found at
100
- * http://polymer.github.io/AUTHORS.txt
101
- * The complete set of contributors may be found at
102
- * http://polymer.github.io/CONTRIBUTORS.txt
103
- * Code distributed by Google as part of the polymer project is also
104
- * subject to an additional IP rights grant found at
105
- * http://polymer.github.io/PATENTS.txt
20
+ * Copyright 2017 Google LLC
21
+ * SPDX-License-Identifier: BSD-3-Clause
106
22
  */
107
- "undefined"!=typeof window&&(window.litHtmlVersions||(window.litHtmlVersions=[])).push("1.3.0");const xs=(t,...e)=>new ds(t,e,"html",Ss),Ms=new Map;const Os=(t,e,s,{eventContext:n}={})=>{s&&(t=xs`<style>${s}</style>${t}`),((t,e,s)=>{let n=Es.get(e);void 0===n&&(Ke(e,e.firstChild),Es.set(e,n=new fs(Object.assign({templateFactory:Cs},s))),n.appendInto(e)),n.setValue(t),n.commit()})(t,e,{eventContext:n})},Ps=(t,...e)=>xs(((t,e,s)=>(s&&e&&e.length&&(t=t.map((t=>{if(Ms.has(t))return Ms.get(t);let n=t;return e.forEach((t=>{n=n.replace(new RegExp(`(</?)(${t})(/?[> \t\n])`,"g"),`$1$2-${s}$3`)})),Ms.set(t,n),n}))),t))(t,undefined,undefined),...e),Ls={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 Ts extends Fe{static get metadata(){return Ls}static get render(){return Os}static get template(){return t=>Ps`<div><p>
23
+ class Bs extends class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}{constructor(t){if(super(t),this.it=Ss,t.type!==Hs)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===Ss||null==t)return this.vt=void 0,this.it=t;if(t===$s)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.vt;this.it=t;const e=[t];return e.raw=e,this.vt={_$litType$:this.constructor.resultType,strings:e,values:[]}}}Bs.directiveName="unsafeHTML",Bs.resultType=1;const Vs=(t,e,s,{host:n}={})=>{"string"==typeof s?t=js`<style>${s}</style>${t}`:Array.isArray(s)&&s.length&&(t=js`${s.map((t=>js`<link type="text/css" rel="stylesheet" href="${t}">`))}${t}`),((t,e,s)=>{var n,i;const a=null!==(n=null==s?void 0:s.renderBefore)&&void 0!==n?n:e;let r=a._$litPart$;if(void 0===r){const t=null!==(i=null==s?void 0:s.renderBefore)&&void 0!==i?i:null;a._$litPart$=r=new xs(e.insertBefore(us(),t),t,void 0,null!=s?s:{})}r._$AI(t)})(t,e,{host:n})},zs={tag:"ui5-test-generic",properties:{strProp:{type:String},boolProp:{type:Boolean},objectProp:{type:Object},noAttributeProp:{type:String,noAttribute:!0},multiProp:{type:String,multiple:!0},defaultValueProp:{type:String,defaultValue:"Hello"}},managedSlots:!0,slots:{default:{type:Node},other:{type:HTMLElement},individual:{type:HTMLElement,individualSlots:!0},named:{type:HTMLElement,propertyName:"items"}}};class Zs extends is{static get metadata(){return zs}static get render(){return Vs}static get template(){return t=>js`<div><p>
108
24
  <slot></slot>
109
25
  <slot name="other"></slot>
110
26
  <slot name="individual-1"></slot>
111
27
  <slot name="individual-2"></slot>
112
- </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(){}}Ts.define();const Ns={tag:"ui5-test-no-shadow"};(class extends Fe{static get metadata(){return Ns}}).define();const $s={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};(class extends Fe{static get metadata(){return $s}static get render(){return Os}static get template(){return t=>Ps`<div>
28
+ </p></div>`}static get styles(){return":host {\n display: inline-block;\n border: 1px solid black;\n color: var(--var1);\n }"}onBeforeRendering(){}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}Zs.define();const Ws={tag:"ui5-test-no-shadow"};(class extends is{static get metadata(){return Ws}}).define();const Fs={tag:"ui5-test-parent",managedSlots:!0,slots:{default:{type:Node,invalidateOnChildChange:{properties:["prop1"]}},items:{type:HTMLElement,invalidateOnChildChange:{properties:!0}}}};(class extends is{static get metadata(){return Fs}static get render(){return Vs}static get template(){return t=>js`<div>
113
29
  <slot></slot>
114
- </div>`}}).define();const Is={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};(class extends Fe{static get metadata(){return Is}static get render(){return Os}static get template(){return t=>Ps`<div></div>`}}).define();const Ds={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};(class extends Fe{static get metadata(){return Ds}static get render(){return Os}static get template(){return t=>Ps`
115
- <div>
30
+ </div>`}}).define();const qs={tag:"ui5-test-child",properties:{prop1:{type:String},prop2:{type:String},prop3:{type:String}}};(class extends is{static get metadata(){return qs}static get render(){return Vs}static get template(){return t=>js`<div></div>`}}).define();const Gs={tag:"ui5-with-static-area",properties:{staticContent:{type:Boolean}},slots:{}};(class extends is{static get metadata(){return Gs}static get render(){return Vs}static get template(){return t=>js`
31
+ <div dir=${t.effectiveDir}>
116
32
  WithStaticArea works!
117
- </div>`}static get staticAreaTemplate(){return t=>Ps`
33
+ </div>`}static get staticAreaTemplate(){return t=>js`
118
34
  <div class="ui5-with-static-area-content">
119
35
  Static area content.
120
- </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 Rs={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};(class extends Ts{static get metadata(){return Rs}}).define();xt("@ui5/webcomponents-base-test","sap_fiori_3",(()=>":root{ --var1: red; }")),xt("@ui5/webcomponents-base-test","sap_fiori_3_dark",(()=>":root{ --var1: green; }")),xt("@ui5/webcomponents-base-test","sap_belize",(()=>":root{ --var1: blue; }")),xt("@ui5/webcomponents-base-test","sap_belize_hcb",(()=>":root{ --var1: orange; }")),xt("@ui5/webcomponents-base-test","sap_belize_hcw",(()=>":root{ --var1: orange; }")),xt("@ui5/webcomponents-base-test","sap_fiori_3_hcb",(()=>":root{ --var1: yellow; }")),xt("@ui5/webcomponents-base-test","sap_fiori_3_hcw",(()=>":root{ --var1: yellow; }"));const Vs=navigator.userAgent,ks=/(msie|trident)/i.test(Vs),js=!ks&&/(Chrome|CriOS)/.test(Vs);!ks&&!js&&/(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(Vs),!ks&&/webkit/.test(Vs);!(-1!==navigator.platform.indexOf("Win"))&&/Android/.test(Vs)&&/(?=android)(?=.*mobile)/i.test(Vs),/ipad/i.test(Vs);const Us=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,Bs=new Map;class Hs{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,at.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(Us,((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 Zs;const zs={Gregorian:"Gregorian",Islamic:"Islamic",Japanese:"Japanese",Buddhist:"Buddhist",Persian:"Persian"};class Ws extends se{static isValid(t){return!!zs[t]}}let Fs;Ws.generateTypeAccessors(zs);let qs;window.isIE=()=>ks,window.registerThemePropertiesLoader=xt,window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:()=>(void 0===Zs&&(v(),Zs=y.animationMode),Zs),getLanguage:W,getTheme:zt,setTheme:Wt,getNoConflict:Ne,setNoConflict:t=>{Te=t},getCalendarType:()=>(void 0===Fs&&(v(),Fs=y.calendarType),Ws.isValid(Fs)?Fs:Ws.Gregorian),getRTL:Re,getFirstDayOfWeek:()=>(void 0===qs&&(v(),qs=y.formatSettings),qs.firstDayOfWeek)},getIconNames:async()=>(await Dt("edit"),await Dt("tnt/arrow"),Array.from(Nt.keys())),registerI18nLoader:(t,e,s)=>{const n=`${t}/${e}`;ot.set(n,s)},fetchI18nBundle:dt,getI18nBundle:t=>{if(Bs.has(t))return Bs.get(t);const e=new Hs(t);return Bs.set(t,e),e},renderFinished:B};
36
+ </div>`}static get styles(){return"\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tborder: 1px solid black;\n\t\t\t\tcolor: red;\n\t\t\t}"}async addStaticArea(){if(!this.staticContent)return;const t=await this.getStaticAreaItemDomRef();return this.responsivePopover=t.querySelector(".ui5-with-static-area-content"),this.responsivePopover}onBeforeRendering(){this.addStaticArea()}onAfterRendering(){}onEnterDOM(){}onExitDOM(){}}).define();const Js={tag:"ui5-test-generic-ext",properties:{extProp:{type:String},strProp:{defaultValue:"Ext"}},slots:{extSlot:{type:HTMLElement}}};(class extends Zs{static get metadata(){return Js}}).define();Tt("@ui5/webcomponents-base-test","sap_fiori_3",(()=>":root{ --var1: red; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_dark",(()=>":root{ --var1: green; }")),Tt("@ui5/webcomponents-base-test","sap_belize",(()=>":root{ --var1: blue; }")),Tt("@ui5/webcomponents-base-test","sap_belize_hcb",(()=>":root{ --var1: orange; }")),Tt("@ui5/webcomponents-base-test","sap_belize_hcw",(()=>":root{ --var1: orange; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_hcb",(()=>":root{ --var1: yellow; }")),Tt("@ui5/webcomponents-base-test","sap_fiori_3_hcw",(()=>":root{ --var1: yellow; }"));const Ks=navigator.userAgent,Ys=/(msie|trident)/i.test(Ks),Xs=!Ys&&/(Chrome|CriOS)/.test(Ks);!Ys&&!Xs&&/(Version|PhantomJS)\/(\d+\.\d+).*Safari/.test(Ks),!Ys&&/webkit/.test(Ks);!(-1!==navigator.platform.indexOf("Win"))&&/Android/.test(Ks)&&/(?=android)(?=.*mobile)/i.test(Ks),/ipad/i.test(Ks);const Qs=/('')|'([^']+(?:''[^']*)*)(?:'|$)|\{([0-9]+(?:\s*,[^{}]*)?)\}|[{}]/g,tn=new Map;class en{constructor(t){this.packageName=t}getText(t,...e){if("string"==typeof t&&(t={key:t,defaultText:t}),!t||!t.key)return"";const s=(n=this.packageName,lt.get(n));var n;s&&!s[t.key]&&console.warn(`Key ${t.key} not found in the i18n bundle, the default text will be used`);const i=s&&s[t.key]?s[t.key]:t.defaultText||t.key;return a=(a=e)||[],i.replace(Qs,((t,e,s,n,i)=>{if(e)return"'";if(s)return s.replace(/''/g,"'");if(n)return String(a[parseInt(n)]);throw new Error(`[i18n]: pattern syntax error at pos ${i}`)}));var a}}let sn;const nn={Gregorian:"Gregorian",Islamic:"Islamic",Japanese:"Japanese",Buddhist:"Buddhist",Persian:"Persian"};class an extends ge{static isValid(t){return!!nn[t]}}let rn;an.generateTypeAccessors(nn);let on;const ln=new b;window.isIE=()=>Ys,window.registerThemePropertiesLoader=Tt,window["sap-ui-webcomponents-bundle"]={configuration:{getAnimationMode:()=>(void 0===sn&&(A(),sn=y.animationMode),sn),getLanguage:G,getTheme:Ft,setTheme:qt,getNoConflict:Ge,setNoConflict:t=>{qe=t},getCalendarType:()=>(void 0===rn&&(A(),rn=y.calendarType),an.isValid(rn)?rn:an.Gregorian),getRTL:Be,getFirstDayOfWeek:()=>(void 0===on&&(A(),on=y.formatSettings),on.firstDayOfWeek)},getIconNames:async()=>(await Xt("edit"),await Xt("tnt/arrow"),await Xt("business-suite/3d"),Array.from(Jt.keys())),registerI18nLoader:(t,e,s)=>{const n=`${t}/${e}`;dt.set(n,s)},getI18nBundle:async t=>(await pt(t),(t=>{if(tn.has(t))return tn.get(t);const e=new en(t);return tn.set(t,e),e})(t)),renderFinished:z,applyDirection:async()=>{const t=ln.fireEvent("directionChange");await Promise.all(t),await W({rtlAware:!0})},EventProvider:b};
121
37
  //# sourceMappingURL=bundle.esm.js.map