/*! For license information please see 5260.js.LICENSE.txt */
"use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[5260],{10438:(t,e,s)=>{s.d(e,{U:()=>o});var i=s(98741);const n=new ResizeObserver(t=>{setTimeout(()=>{t.forEach(t=>{t.target.resizables?t.target.resizables.forEach(e=>{e._onResize(t.contentRect)}):t.target._onResize(t.contentRect)})})}),o=(0,i.y)(t=>class extends t{get _observeParent(){return!1}connectedCallback(){if(super.connectedCallback(),n.observe(this),this._observeParent){const t=this.parentNode instanceof ShadowRoot?this.parentNode.host:this.parentNode;t.resizables||(t.resizables=new Set,n.observe(t)),t.resizables.add(this),this.__parent=t}}disconnectedCallback(){super.disconnectedCallback(),n.unobserve(this);const t=this.__parent;if(this._observeParent&&t){const e=t.resizables;e&&(e.delete(this),0===e.size&&n.unobserve(t)),this.__parent=null}}_onResize(t){}})},22916:(t,e,s)=>{s.d(e,{io:()=>_,ml:()=>h,lW:()=>u,Qo:()=>p});var i=s(51450),n=s(73278);const o=t=>(...e)=>({_$litDirective$:t,values:e});class r{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)}}var a=s(55670);class c extends r{constructor(t){if(super(t),this.it=a.s6,2!==t.type)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===a.s6||null==t)return this._t=void 0,this.it=t;if(t===a.c0)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;const e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}}c.directiveName="unsafeHTML",c.resultType=1,o(c);class l extends c{}l.directiveName="unsafeSVG",l.resultType=2;const d=o(l);function _(t){let e=i.s6;if(t){const s=t.cloneNode(!0);s.removeAttribute("id"),e=i.JW`${d(s.outerHTML)}`}return e}function h(t){let e=null==t||""===t?i.s6:t;return function(t){return(0,n.qb)(t,n.Qk.SVG)||t===i.s6}(e)||(console.error("[vaadin-icon] Invalid svg passed, please use Lit svg literal."),e=i.s6),e}function u(t,e){const s=h(t);(0,i.XX)(s,e)}function p(t){return i.JW`${d(t)}`}},26469:(t,e,s)=>{s.d(e,{k:()=>h});var i=s(13256),n=s(82901),o=s(90676),r=s(22916);const a={},c=new Set;function l(t,e){return(t||"").replace(`${e}:`,"")}function d(t){if(t)return t.split(":")[0]||"vaadin"}function _(t,e){t._icons=[...t.querySelectorAll("[id]")].reduce((t,s)=>(t[l(s.id,e)]=s,t),{})}class h extends((0,o.q)(i.Pu)){static get template(){return null}static get is(){return"vaadin-iconset"}static get properties(){return{name:{type:String,observer:"__nameChanged"},size:{type:Number,value:24}}}static get attachedIcons(){return c}static getIconset(t){return a[t]}static getIconSvg(t,e){const s=e||d(t),i=this.getIconset(s);if(!t||!i)return{svg:(0,r.io)(null)};const n=l(t,s),o=i._icons[n];return{preserveAspectRatio:o?o.getAttribute("preserveAspectRatio"):null,svg:(0,r.io)(o),size:i.size,viewBox:o?o.getAttribute("viewBox"):null}}static register(t,e,s){if(!a[t]){const i=document.createElement("vaadin-iconset");i.appendChild(s.content.cloneNode(!0)),a[t]=i,_(i,t),i.size=e,i.name=t,i.__nameChanged(t)}}connectedCallback(){super.connectedCallback(),this.style.display="none";const{name:t}=this;a[t]=this,_(this,t),this.__updateIcons(t)}__updateIcons(t){c.forEach(e=>{t===d(e.icon)&&e._applyIcon()})}__nameChanged(t,e){e&&(a[t]=a[e],delete a[e]),t&&this.__updateIcons(t)}}(0,n.X)(h)},73278:(t,e,s)=>{s.d(e,{Qk:()=>o,qb:()=>r});var i=s(55670);const{I:n}=i.ge,o={HTML:1,SVG:2,MATHML:3},r=(t,e)=>void 0===e?void 0!==t?._$litType$:t?._$litType$===e},95260:(t,e,s)=>{s(42068);var i=s(87550);(0,i.SF)("vaadin-icon",i.AH`
    :host {
      width: var(--lumo-icon-size-m);
      height: var(--lumo-icon-size-m);
    }
  `,{moduleId:"lumo-icon"});var n=s(13256),o=s(55774),r=s(82901),a=s(90676),c=s(21961),l=s(81488),d=s(98741),_=s(10438),h=s(4080);const u=!CSS.supports("container-type: inline-size")||!!h.nr&&!function(){const t=document.createElement("style");t.textContent="\n    .vaadin-icon-test-element {\n      container-type: size;\n      height: 2px;\n      visibility: hidden;\n      position: fixed;\n    }\n\n    .vaadin-icon-test-element::before {\n      content: '';\n      display: block;\n      height: 100cqh;\n    ";const e=document.createElement("div");e.classList.add("vaadin-icon-test-element"),document.body.append(t,e);const{height:s}=getComputedStyle(e,"::before");return t.remove(),e.remove(),"2px"===s}();u&&(0,i.SF)("vaadin-icon",i.AH`
      :host::after,
      :host::before {
        font-size: var(--_vaadin-font-icon-size);
      }
    `,"vaadin-icon-font-size-mixin-styles");const p=(0,d.y)(t=>u?class extends((0,_.U)(t)){static get observers(){return["__iconFontSizeMixinfontChanged(iconClass, char, ligature)"]}ready(){super.ready(),this.__updateFontIconSize()}__iconFontSizeMixinfontChanged(t,e,s){this.__updateFontIconSize()}_onResize(){this.__updateFontIconSize()}__updateFontIconSize(){if(this.char||this.iconClass||this.ligature){const{paddingTop:t,paddingBottom:e,height:s}=getComputedStyle(this),i=parseFloat(s)-parseFloat(t)-parseFloat(e);this.style.setProperty("--_vaadin-font-icon-size",`${i}px`)}}}:t);var g=s(22916),v=s(26469);const f=new Map;class b extends((0,i.cp)((0,a.q)((0,o.w)((0,c.C)(p(n.Pu)))))){static get template(){return n.qy`
      <style>
        :host {
          display: inline-flex;
          justify-content: center;
          align-items: center;
          box-sizing: border-box;
          vertical-align: middle;
          width: 24px;
          height: 24px;
          fill: currentColor;
          container-type: size;
        }

        :host::after,
        :host::before {
          line-height: 1;
          font-size: 100cqh;
          -webkit-font-smoothing: antialiased;
          text-rendering: optimizeLegibility;
          -moz-osx-font-smoothing: grayscale;
        }

        :host([hidden]) {
          display: none !important;
        }

        svg {
          display: block;
          width: 100%;
          height: 100%;
        }

        :host(:is([icon-class], [font-icon-content])) svg {
          display: none;
        }

        :host([font-icon-content])::before {
          content: attr(font-icon-content);
        }
      </style>
      <svg
        version="1.1"
        xmlns="http://www.w3.org/2000/svg"
        xmlns:xlink="http://www.w3.org/1999/xlink"
        viewBox="[[__computeViewBox(size, __viewBox)]]"
        preserveAspectRatio="[[__computePAR(__defaultPAR, __preserveAspectRatio)]]"
        fill$="[[__fill]]"
        stroke$="[[__stroke]]"
        stroke-width$="[[__strokeWidth]]"
        stroke-linecap$="[[__strokeLinecap]]"
        stroke-linejoin$="[[__strokeLinejoin]]"
        aria-hidden="true"
      >
        <g id="svg-group"></g>
        <g id="use-group" visibility$="[[__computeVisibility(__useRef, svg)]]">
          <use href$="[[__useRef]]" />
        </g>
      </svg>

      <slot name="tooltip"></slot>
    `}static get is(){return"vaadin-icon"}static get properties(){return{icon:{type:String,reflectToAttribute:!0,observer:"__iconChanged"},svg:{type:Object},src:{type:String},symbol:{type:String},iconClass:{type:String,reflectToAttribute:!0},char:{type:String},ligature:{type:String},fontFamily:{type:String,observer:"__fontFamilyChanged"},size:{type:Number,value:24},__defaultPAR:{type:String,value:"xMidYMid meet"},__preserveAspectRatio:String,__useRef:Object,__svgElement:String,__viewBox:String,__fill:String,__stroke:String,__strokeWidth:String,__strokeLinecap:String,__strokeLinejoin:String}}static get observers(){return["__svgChanged(svg, __svgElement)","__fontChanged(iconClass, char, ligature)","__srcChanged(src, symbol)"]}static get observedAttributes(){return[...super.observedAttributes,"class"]}constructor(){super(),this.__fetch=fetch.bind(window)}get slotStyles(){return[`\n        ${this.localName}[icon-class] {\n          display: inline-flex;\n          vertical-align: middle;\n          font-size: inherit;\n        }\n      `]}get __iconClasses(){return this.iconClass?this.iconClass.split(" "):[]}ready(){super.ready(),this.__svgElement=this.shadowRoot.querySelector("#svg-group"),this._tooltipController=new l.I(this),this.addController(this._tooltipController)}connectedCallback(){super.connectedCallback(),v.k.attachedIcons.add(this)}disconnectedCallback(){super.disconnectedCallback(),v.k.attachedIcons.delete(this)}_applyIcon(){const{preserveAspectRatio:t,svg:e,size:s,viewBox:i}=v.k.getIconSvg(this.icon);i&&(this.__viewBox=i),t&&(this.__preserveAspectRatio=t),s&&s!==this.size&&(this.size=s),this.svg=e}__iconChanged(t){t?this._applyIcon():this.svg=(0,g.ml)(null)}async __srcChanged(t,e){if(t)if(this.icon="",t.startsWith("data:")||!e&&!t.includes("#"))try{f.has(t)||f.set(t,this.__fetch(t,{mode:"cors"}).then(t=>{if(!t.ok)throw new Error("Error loading icon");return t.text()}));const s=await f.get(t);b.__domParser||(b.__domParser=new DOMParser);const i=b.__domParser.parseFromString(s,"text/html").querySelector("svg");if(!i)throw new Error(`SVG element not found on path: ${t}`);this.svg=(0,g.Qo)(i.innerHTML),e&&(this.__useRef=`#${e}`),this.__viewBox=i.getAttribute("viewBox"),this.__fill=i.getAttribute("fill"),this.__stroke=i.getAttribute("stroke"),this.__strokeWidth=i.getAttribute("stroke-width"),this.__strokeLinecap=i.getAttribute("stroke-linecap"),this.__strokeLinejoin=i.getAttribute("stroke-linejoin")}catch(t){console.error(t),this.svg=null}else{const[s,i]=t.split("#");this.__useRef=`${s}#${e||i}`}else this.svg=null}__svgChanged(t,e){e&&(0,g.lW)(t,e)}__computePAR(t,e){return e||t}__computeVisibility(t){return t?"visible":"hidden"}__computeViewBox(t,e){return e||`0 0 ${t} ${t}`}__fontChanged(t,e,s){this.classList.remove(...this.__addedIconClasses||[]),t&&(this.__addedIconClasses=[...this.__iconClasses],this.classList.add(...this.__addedIconClasses)),e?this.setAttribute("font-icon-content",e.length>1?String.fromCodePoint(parseInt(e,16)):e):s?this.setAttribute("font-icon-content",s):this.removeAttribute("font-icon-content"),(t||e||s)&&!this.icon&&(this.icon="")}attributeChangedCallback(t,e,s){super.attributeChangedCallback(t,e,s),"class"===t&&this.__iconClasses.some(t=>!this.classList.contains(t))&&this.classList.add(...this.__iconClasses)}__fontFamilyChanged(t){this.style.fontFamily=`'${t}'`}}(0,r.X)(b)}}]);
//# sourceMappingURL=5260.js.map