vendor: 6,721 bytes, lines 1-2
1/*! For license information please see public.js.LICENSE.txt */ 2(()=>{"use strict";var e,t,o,i,r,a,s={764:(e,t,o)=>{function i(e,t,o,i){var r,a=arguments.length,s=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,o,i);else for(var n=e.length-1;n>=0;n--)(r=e[n])&&(s=(a<3?r(s):a>3?r(t,o,s):r(t,o))||s);return a>3&&s&&Object.defineProperty(t,o,s),s}o.d(t,{jP:()=>Fe,RF:()=>fi}),"function"==typeof SuppressedError&&SuppressedError;const r=globalThis,a=r.trustedTypes,s=a?a.createPolicy("lit-html",{createHTML:e=>e}):void 0,n="$lit$",l=`lit$${Math.random().toFixed(9).slice(2)}$`,d="?"+l,p=`<${d}>`,c=document,u=()=>c.createComment(""),h=e=>null===e||"object"!=typeof e&&"function"!=typeof e,g=Array.isArray,m=e=>g(e)||"function"==typeof e?.[Symbol.iterator],b="[ \t\n\f\r]",f=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,v=/-->/g,y=/>/g,w=RegExp(`>|${b}(?:([^\\s"'>=/]+)(${b}*=${b}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),x=/'/g,_=/"/g,k=/^(?:script|style|textarea|title)$/i,C=e=>(t,...o)=>({_$litType$:e,strings:t,values:o}),$=C(1),S=(C(2),C(3),Symbol.for("lit-noChange")),z=Symbol.for("lit-nothing"),A=new WeakMap,P=c.createTreeWalker(c,129);function N(e,t){if(!g(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==s?s.createHTML(t):t}const E=(e,t)=>{const o=e.length-1,i=[];let r,a=2===t?"<svg>":3===t?"<math>":"",s=f;for(let t=0;t<o;t++){const o=e[t];let d,c,u=-1,h=0;for(;h<o.length&&(s.lastIndex=h,c=s.exec(o),null!==c);)h=s.lastIndex,s===f?"!--"===c[1]?s=v:void 0!==c[1]?s=y:void 0!==c[2]?(k.test(c[2])&&(r=RegExp("</"+c[2],"g")),s=w):void 0!==c[3]&&(s=w):s===w?">"===c[0]?(s=r??f,u=-1):void 0===c[1]?u=-2:(u=s.lastIndex-c[2].length,d=c[1],s=void 0===c[3]?w:'"'===c[3]?_:x):s===_||s===x?s=w:s===v||s===y?s=f:(s=w,r=void 0);const g=s===w&&e[t+1].startsWith("/>")?" ":"";a+=s===f?o+p:u>=0?(i.push(d),o.slice(0,u)+n+o.slice(u)+l+g):o+l+(-2===u?t:g)}return[N(e,a+(e[o]||"<?>")+(2===t?"</svg>":3===t?"</math>":"")),i]};class B{constructor({strings:e,_$litType$:t},o){let i;this.parts=[];let r=0,s=0;const p=e.length-1,c=this.parts,[h,g]=E(e,t);if(this.el=B.createElement(h,o),P.currentNode=this.el.content,2===t||3===t){const e=this.el.content.firstChild;e.replaceWith(...e.childNodes)}for(;null!==(i=P.nextNode())&&c.length<p;){if(1===i.nodeType){if(i.hasAttributes())for(const e of i.getAttributeNames())if(e.endsWith(n)){const t=g[s++],o=i.getAttribute(e).split(l),a=/([.?@])?(.*)/.exec(t);c.push({type:1,index:r,name:a[2],strings:o,ctor:"."===a[1]?O:"?"===a[1]?L:"@"===a[1]?H:j}),i.removeAttribute(e)}else e.startsWith(l)&&(c.push({type:6,index:r}),i.removeAttribute(e));if(k.test(i.tagName)){const e=i.textContent.split(l),t=e.length-1;if(t>0){i.textContent=a?a.emptyScript:"";for(let o=0;o<t;o++)i.append(e[o],u()),P.nextNode(),c.push({type:2,index:++r});i.append(e[t],u())}}}else if(8===i.nodeType)if(i.data===d)c.push({type:2,index:r});else{let e=-1;for(;-1!==(e=i.data.indexOf(l,e+1));)c.push({type:7,index:r}),e+=l.length-1}r++}}static createElement(e,t){const o=c.createElement("template");return o.innerHTML=e,o}}function T(e,t,o=e,i){if(t===S)return t;let r=void 0!==i?o._$Co?.[i]:o._$Cl;const a=h(t)?void 0:t._$litDirective$;return r?.constructor!==a&&(r?._$AO?.(!1),void 0===a?r=void 0:(r=new a(e),r._$AT(e,o,i)),void 0!==i?(o._$Co??=[])[i]=r:o._$Cl=r),void 0!==r&&(t=T(e,r._$AS(e,t.values),r,i)),t}class I{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:t},parts:o}=this._$AD,i=(e?.creationScope??c).importNode(t,!0);P.currentNode=i;let r=P.nextNode(),a=0,s=0,n=o[0];for(;void 0!==n;){if(a===n.index){let t;2===n.type?t=new M(r,r.nextSibling,this,e):1===n.type?t=new n.ctor(r,n.name,n.strings,this,e):6===n.type&&(t=new V(r,this,e)),this._$AV.push(t),n=o[++s]}a!==n?.index&&(r=P.nextNode(),a++)}return P.currentNode=c,i}p(e){let t=0;for(const o of this._$AV)void 0!==o&&(void 0!==o.strings?(o._$AI(e,o,t),t+=o.strings.length-2):o._$AI(e[t])),t++}}class M{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,o,i){this.type=2,this._$AH=z,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=o,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const t=this._$AM;return void 0!==t&&11===e?.nodeType&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=T(this,e,t),h(e)?e===z||null==e||""===e?(this._$AH!==z&&this._$AR(),this._$AH=z):e!==this._$AH&&e!==S&&this._(e):void 0!==e._$litType$?this.$(e):void 0!==e.nodeType?this.T(e):m(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==z&&h(this._$AH)?this._$AA.nextSibling.data=e:this.T(c.createTextNode(e)),this._$AH=e}$(e){const{values:t,_$litType$:o}=e,i="number"==typeof o?this._$AC(e):(void 0===o.el&&(o.el=B.createElement(N(o.h,o.h[0]),this.options)),o);if(this._$AH?._$AD===i)this._$AH.p(t);else{const e=new I(i,this),o=e.u(this.options);e.p(t),this.T(o),this._$AH=e}}_$AC(e){let t=A.get(e.strings);return void 0===t&&A.set(e.strings,t=new B(e)),t}k(e){g(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let o,i=0;for(const r of e)i===t.length?t.push(o=new M(this.O(u()),this.O(u()),this,this.options)):o=t[i],o._$AI(r),i++;i<t.length&&(this._$AR(o&&o._$AB.nextSibling,i),t.length=i)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){const t=e.nextSibling;e.remove(),e=t}}setConnected(e){void 0===this._$AM&&(this._$Cv=e,this._$AP?.(e))}}class j{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,o,i,r){this.type=1,this._$AH=z,this._$AN=void 0,this.element=e,this.name=t,this._$AM=i,this.options=r,o.length>2||""!==o[0]||""!==o[1]?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=z}_$AI(e,t=this,o,i){const r=this.strings;let a=!1;if(void 0===r)e=T(this,e,t,0),a=!h(e)||e!==this._$AH&&e!==S,a&&(this._$AH=e);else{const i=e;let s,n;for(e=r[0],s=0;s<r.length-1;s++)n=T(this,i[o+s],t,s),n===S&&(n=this._$AH[s]),a||=!h(n)||n!==this._$AH[s],n===z?e=z:e!==z&&(e+=(n??"")+r[s+1]),this._$AH[s]=n}a&&!i&&this.j(e)}j(e){e===z?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class O extends j{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===z?void 0:e}}class L extends j{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==z)}}class H extends j{constructor(e,t,o,i,r){super(e,t,o,i,r),this.type=5}
vendor: 5,616 bytes, line 2
2_$AI(e,t=this){if((e=T(this,e,t,0)??z)===S)return;const o=this._$AH,i=e===z&&o!==z||e.capture!==o.capture||e.once!==o.once||e.passive!==o.passive,r=e!==z&&(o===z||i);i&&this.element.removeEventListener(this.name,this,o),r&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class V{constructor(e,t,o){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=o}get _$AU(){return this._$AM._$AU}_$AI(e){T(this,e)}}const D={M:n,P:l,A:d,C:1,L:E,R:I,D:m,V:T,I:M,H:j,N:L,U:H,B:O,F:V},R=r.litHtmlPolyfillSupport;R?.(B,M),(r.litHtmlVersions??=[]).push("3.3.2");const F=1,W=2,U=3,G=4,q=e=>(...t)=>({_$litDirective$:e,values:t});class K{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,o){this._$Ct=e,this._$AM=t,this._$Ci=o}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}}const J=q(class extends K{constructor(e){if(super(e),e.type!==F||"class"!==e.name||e.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(e){return" "+Object.keys(e).filter((t=>e[t])).join(" ")+" "}update(e,[t]){if(void 0===this.st){this.st=new Set,void 0!==e.strings&&(this.nt=new Set(e.strings.join(" ").split(/\s/).filter((e=>""!==e))));for(const e in t)t[e]&&!this.nt?.has(e)&&this.st.add(e);return this.render(t)}const o=e.element.classList;for(const e of this.st)e in t||(o.remove(e),this.st.delete(e));for(const e in t){const i=!!t[e];i===this.st.has(e)||this.nt?.has(e)||(i?(o.add(e),this.st.add(e)):(o.remove(e),this.st.delete(e)))}return S}}),X=globalThis,Y=X.ShadowRoot&&(void 0===X.ShadyCSS||X.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Z=Symbol(),Q=new WeakMap;class ee{constructor(e,t,o){if(this._$cssResult$=!0,o!==Z)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const t=this.t;if(Y&&void 0===e){const o=void 0!==t&&1===t.length;o&&(e=Q.get(t)),void 0===e&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),o&&Q.set(t,e))}return e}toString(){return this.cssText}}const te=(e,...t)=>{const o=1===e.length?e[0]:t.reduce(((t,o,i)=>t+(e=>{if(!0===e._$cssResult$)return e.cssText;if("number"==typeof e)return e;throw Error("Value passed to 'css' function must be a 'css' function result: "+e+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(o)+e[i+1]),e[0]);return new ee(o,e,Z)},oe=Y?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let t="";for(const o of e.cssRules)t+=o.cssText;return(e=>new ee("string"==typeof e?e:e+"",void 0,Z))(t)})(e):e,{is:ie,defineProperty:re,getOwnPropertyDescriptor:ae,getOwnPropertyNames:se,getOwnPropertySymbols:ne,getPrototypeOf:le}=Object,de=globalThis,pe=de.trustedTypes,ce=pe?pe.emptyScript:"",ue=de.reactiveElementPolyfillSupport,he=(e,t)=>e,ge={toAttribute(e,t){switch(t){case Boolean:e=e?ce:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,t){let o=e;switch(t){case Boolean:o=null!==e;break;case Number:o=null===e?null:Number(e);break;case Object:case Array:try{o=JSON.parse(e)}catch(e){o=null}}return o}},me=(e,t)=>!ie(e,t),be={attribute:!0,type:String,converter:ge,reflect:!1,useDefault:!1,hasChanged:me};Symbol.metadata??=Symbol("metadata"),de.litPropertyMetadata??=new WeakMap;class fe extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=be){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){const o=Symbol(),i=this.getPropertyDescriptor(e,o,t);void 0!==i&&re(this.prototype,e,i)}}static getPropertyDescriptor(e,t,o){const{get:i,set:r}=ae(this.prototype,e)??{get(){return this[t]},set(e){this[t]=e}};return{get:i,set(t){const a=i?.call(this);r?.call(this,t),this.requestUpdate(e,a,o)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??be}static _$Ei(){if(this.hasOwnProperty(he("elementProperties")))return;const e=le(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(he("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(he("properties"))){const e=this.properties,t=[...se(e),...ne(e)];for(const o of t)this.createProperty(o,e[o])}const e=this[Symbol.metadata];if(null!==e){const t=litPropertyMetadata.get(e);if(void 0!==t)for(const[e,o]of t)this.elementProperties.set(e,o)}this._$Eh=new Map;for(const[e,t]of this.elementProperties){const o=this._$Eu(e,t);void 0!==o&&this._$Eh.set(o,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const o=new Set(e.flat(1/0).reverse());for(const e of o)t.unshift(oe(e))}else void 0!==e&&t.push(oe(e));return t}static _$Eu(e,t){const o=t.attribute;return!1===o?void 0:"string"==typeof o?o:"string"==typeof e?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise((e=>this.enableUpdating=e)),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach((e=>e(this)))}addController(e){(this._$EO??=new Set).add(e),void 0!==this.renderRoot&&this.isConnected&&e.hostConnected?.()}
vendor: 13,425 bytes, lines 2-151
2removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const o of t.keys())this.hasOwnProperty(o)&&(e.set(o,this[o]),delete this[o]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return((e,t)=>{if(Y)e.adoptedStyleSheets=t.map((e=>e instanceof CSSStyleSheet?e:e.styleSheet));else for(const o of t){const t=document.createElement("style"),i=X.litNonce;void 0!==i&&t.setAttribute("nonce",i),t.textContent=o.cssText,e.appendChild(t)}})(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach((e=>e.hostConnected?.()))}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach((e=>e.hostDisconnected?.()))}attributeChangedCallback(e,t,o){this._$AK(e,o)}_$ET(e,t){const o=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,o);if(void 0!==i&&!0===o.reflect){const r=(void 0!==o.converter?.toAttribute?o.converter:ge).toAttribute(t,o.type);this._$Em=e,null==r?this.removeAttribute(i):this.setAttribute(i,r),this._$Em=null}}_$AK(e,t){const o=this.constructor,i=o._$Eh.get(e);if(void 0!==i&&this._$Em!==i){const e=o.getPropertyOptions(i),r="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:ge;this._$Em=i;const a=r.fromAttribute(t,e.type);this[i]=a??this._$Ej?.get(i)??a,this._$Em=null}}requestUpdate(e,t,o,i=!1,r){if(void 0!==e){const a=this.constructor;if(!1===i&&(r=this[e]),o??=a.getPropertyOptions(e),!((o.hasChanged??me)(r,t)||o.useDefault&&o.reflect&&r===this._$Ej?.get(e)&&!this.hasAttribute(a._$Eu(e,o))))return;this.C(e,t,o)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(e,t,{useDefault:o,reflect:i,wrapped:r},a){o&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,a??t??this[e]),!0!==r||void 0!==a)||(this._$AL.has(e)||(this.hasUpdated||o||(t=void 0),this._$AL.set(e,t)),!0===i&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const e=this.scheduleUpdate();return null!=e&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[e,t]of this._$Ep)this[e]=t;this._$Ep=void 0}const e=this.constructor.elementProperties;if(e.size>0)for(const[t,o]of e){const{wrapped:e}=o,i=this[t];!0!==e||this._$AL.has(t)||void 0===i||this.C(t,void 0,o,i)}}let e=!1;const t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach((e=>e.hostUpdate?.())),this.update(t)):this._$EM()}catch(t){throw e=!1,this._$EM(),t}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach((e=>e.hostUpdated?.())),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach((e=>this._$ET(e,this[e]))),this._$EM()}updated(e){}firstUpdated(e){}}fe.elementStyles=[],fe.shadowRootOptions={mode:"open"},fe[he("elementProperties")]=new Map,fe[he("finalized")]=new Map,ue?.({ReactiveElement:fe}),(de.reactiveElementVersions??=[]).push("2.1.2");const ve=globalThis;class ye extends fe{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){const t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=((e,t,o)=>{const i=o?.renderBefore??t;let r=i._$litPart$;if(void 0===r){const e=o?.renderBefore??null;i._$litPart$=r=new M(t.insertBefore(u(),e),e,void 0,o??{})}return r._$AI(e),r})(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return S}}ye._$litElement$=!0,ye.finalized=!0,ve.litElementHydrateSupport?.({LitElement:ye});const we=ve.litElementPolyfillSupport;we?.({LitElement:ye});(ve.litElementVersions??=[]).push("4.2.2");const xe={attribute:!0,type:String,converter:ge,reflect:!1,hasChanged:me},_e=(e=xe,t,o)=>{const{kind:i,metadata:r}=o;let a=globalThis.litPropertyMetadata.get(r);if(void 0===a&&globalThis.litPropertyMetadata.set(r,a=new Map),"setter"===i&&((e=Object.create(e)).wrapped=!0),a.set(o.name,e),"accessor"===i){const{name:i}=o;return{set(o){const r=t.get.call(this);t.set.call(this,o),this.requestUpdate(i,r,e,!0,o)},init(t){return void 0!==t&&this.C(i,void 0,e,t),t}}}if("setter"===i){const{name:i}=o;return function(o){const r=this[i];t.call(this,o),this.requestUpdate(i,r,e,!0,o)}}throw Error("Unsupported decorator location: "+i)};function ke(e){return(t,o)=>"object"==typeof o?_e(e,t,o):((e,t,o)=>{const i=t.hasOwnProperty(o);return t.constructor.createProperty(o,e),i?Object.getOwnPropertyDescriptor(t,o):void 0})(e,t,o)}function Ce(e){return ke({...e,state:!0,attribute:!1})}const $e=(e,t,o)=>(o.configurable=!0,o.enumerable=!0,Reflect.decorate&&"object"!=typeof t&&Object.defineProperty(e,t,o),o);function Se(e,t){return(o,i,r)=>{const a=t=>t.renderRoot?.querySelector(e)??null;if(t){const{get:e,set:t}="object"==typeof i?o:r??(()=>{const e=Symbol();return{get(){return this[e]},set(t){this[e]=t}}})();return $e(o,i,{get(){let o=e.call(this);return void 0===o&&(o=a(this),(null!==o||this.hasUpdated)&&t.call(this,o)),o}})}return $e(o,i,{get(){return a(this)}})}}let ze;function Ae(e){return(t,o)=>{const{slot:i,selector:r}=e??{},a="slot"+(i?`[name=${i}]`:":not([name])");return $e(t,o,{get(){const t=this.renderRoot?.querySelector(a),o=t?.assignedElements(e)??[];return void 0===r?o:o.filter((e=>e.matches(r)))}})}}function Pe(e,t,o){return new Promise((i=>{if(o?.duration===1/0)throw new Error("Promise-based animations must be finite.");const r=e.animate(t,{...o,duration:Ne()?0:o.duration});r.addEventListener("cancel",i,{once:!0}),r.addEventListener("finish",i,{once:!0})}))}function Ne(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}function Ee(e){return Promise.all(e.getAnimations().map((e=>new Promise((t=>{e.cancel(),requestAnimationFrame(t)})))))}function Be(e,t){return e.map((e=>({...e,height:"auto"===e.height?`${t}px`:e.height})))}function Te(e,t){const o={waitUntilFirstUpdate:!1,...t};return(t,i)=>{const{update:r}=t,a=Array.isArray(e)?e:[e];t.update=function(e){a.forEach((t=>{const r=t;if(e.has(r)){const t=e.get(r),a=this[r];t!==a&&(o.waitUntilFirstUpdate&&!this.hasUpdated||this[i](t,a))}})),r.call(this,e)}}}const Ie=[te` 3 :host { 4 display: block; 5 --foreground-color: var(--pu-accordion-color-foreground, var(--pu-color-foreground)); 6 --background-color: var(--pu-accordion-color-background, var(--pu-color-background)); 7 --header-foreground-color: var(--pu-accordion-header-color-foreground, var(--foreground-color)); 8 --header-background-color: var(--pu-accordion-header-color-background, var(--background-color)); 9 --border-color: var(--pu-accordion-border-color, var(--pu-color-border)); 10 } 11 ::slotted(*[slot='header']) { 12 flex: 0 1 auto; 13 --pu-color-foreground: var(--pu-accordion-header-color-foreground, var(--foreground-color)); 14 } 15 16 .accordion { 17 font-family: var(--pu-text-body-family); 18 overflow: hidden; 19 background-color: rgb(from var(--background-color) r g b / alpha); 20 outline-style: solid; 21 outline-color: rgb(from var(--border-color) r g b / alpha); 22 outline-width: var(--pu-accordion-border-width, 0); 23 border-radius: var(--pu-accordion-border-radius); 24 } 25 26 .accordion--grouped { 27 outline: none; 28 border-radius: 0; 29 } 30 31 .accordion__icon { 32 transition: all 0.2s; 33 transform: rotate(-90deg); /* Closed: points right */ 34 } 35 36 .accordion--open .accordion__summary--icon-flip .accordion__icon { 37 transition: all 0.2s; 38 transform: rotate(0deg); /* Open: points down */ 39 } 40 41 /** Summary */ 42 details summary::-webkit-details-marker { 43 display: none; 44 } 45 46 .accordion__summary { 47 cursor: pointer; 48 list-style: none; 49 50 display: flex; 51 align-items: center; 52 justify-content: space-between; 53 gap: var(--pu-space-200, 0.5em); 54 padding: var(--pu-accordion-header-space-padding, 0.5em 1em); 55 position: relative; 56 min-height: 2.5em; 57 width: 100%; 58 z-index: 2; 59 60 color: rgb(from var(--header-foreground-color) r g b / alpha); 61 background-color: rgb(from var(--header-background-color) r g b / alpha); 62 63 -webkit-tap-highlight-color: transparent; 64 } 65 66 /** Rotate icon if .accordion__summary--icon-flip */ 67 .accordion__summary > * { 68 transition: transform 0.2s ease; 69 transform: rotate(-90deg); /* Closed: points right */ 70 --pu-icon-color-foreground: var(--header-foreground-color); 71 } 72 .accordion--open .accordion__summary--icon-flip > * { 73 transform: rotate(0deg); /* Open: points down */ 74 } 75 76 /** Details - Container (animated via Web Animations API) */ 77 .accordion__details { 78 overflow: hidden; 79 } 80 81 /** Content inside details gets the padding and styling */ 82 ::slotted([slot='content']) { 83 display: block; 84 padding: var(--pu-accordion-content-space-padding, 2em 1em); 85 color: rgb(from var(--foreground-color, inherit) r g b); 86 87 --pu-color-foreground: var(--foreground-color); 88 --pu-color-background: var(--background-color); 89 } 90`,te` 91 /** Summary justify content */ 92 .accordion__summary--justify-center { 93 justify-content: center; 94 } 95 .accordion__summary--justify-end { 96 justify-content: end; 97 } 98 .accordion__summary--justify-start { 99 justify-content: start; 100 } 101 .accordion__summary--justify-space-between { 102 justify-content: space-between; 103 } 104 .accordion__summary--justify-space-around { 105 justify-content: space-around; 106 } 107 .accordion__summary--justify-space-evenly { 108 justify-content: space-evenly; 109 } 110 .accordion__summary--justify-stretch { 111 justify-content: stretch; 112 } 113 .accordion__summary--justify-baseline { 114 justify-content: baseline; 115 } 116 117 /** Summary icon position */ 118 .accordion__summary--icon-position-left { 119 flex-direction: row-reverse; 120 } 121`];var Me=te` 122 :host { 123 box-sizing: border-box; 124 font-size: var(--pu-font-size, 16px); 125 } 126 127 :host *, 128 :host *::before, 129 :host *::after { 130 box-sizing: border-box; 131 } 132`;function je(e){switch(e){case"xsmall":return"var(--pu-text-body-size-xs, 0.5em)";case"small":return"var(--pu-text-body-size-sm, 0.875em)";case"medium":return"var(--pu-text-body-size-md, 1em)";case"large":return"var(--pu-text-body-size-lg, 1.25em)";case"xlarge":return"var(--pu-text-body-size-xl, 1.5em)";case"2xlarge":return"var(--pu-text-body-size-2xl, 1.75em)";case"3xlarge":return"var(--pu-text-body-size-3xl, 2em)";case"4xlarge":return"var(--pu-font-size-900, 3em)";case"5xlarge":return"var(--pu-font-size-1000, 4em)"}}const Oe="important",Le=" !"+Oe,He=q(class extends K{constructor(e){if(super(e),e.type!==F||"style"!==e.name||e.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(e){return Object.keys(e).reduce(((t,o)=>{const i=e[o];return null==i?t:t+`${o=o.includes("-")?o:o.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${i};`}),"")}update(e,[t]){const{style:o}=e.element;if(void 0===this.ft)return this.ft=new Set(Object.keys(t)),this.render(t);for(const e of this.ft)null==t[e]&&(this.ft.delete(e),e.includes("-")?o.removeProperty(e):o[e]=null);for(const e in t){const i=t[e];if(null!=i){this.ft.add(e);const t="string"==typeof i&&i.endsWith(Le);e.includes("-")||t?o.setProperty(e,t?i.slice(0,-11):i,t?Oe:""):o[e]=i}}return S}});class Ve extends K{constructor(e){if(super(e),this.it=z,e.type!==W)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===z||null==e)return this._t=void 0,this.it=e;if(e===S)return e;if("string"!=typeof e)throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;const t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}}Ve.directiveName="unsafeHTML",Ve.resultType=1;const De=q(Ve);let Re="/icons";function Fe(e){Re=e}var We=te` 133 :host { 134 --color-foreground: var(--pu-icon-color-foreground, var(--pu-color-foreground)); 135 } 136 .icon-container { 137 display: flex; 138 align-items: center; 139 justify-content: center; 140 font-size: var(--pu-icon-font-size, var(--font-size, inherit)); 141 height: fit-content; 142 width: fit-content; 143 color: rgb(from var(--color-foreground) r g b / calc(alpha * var(--pu-icon-color-opacity, 1))); 144 } 145 146 .spinner svg { 147 animation-name: spin; 148 animation-duration: 400ms; 149 animation-timing-function: cubic-bezier(0, 0, 1, 1); 150 animation-iteration-count: infinite; 151 }
152 @keyframes spin { 153 to { 154 transform: rotate(1turn); 155 } 156 } 157`;class Ue extends ye{emit(e,t){const o=new CustomEvent(e,{bubbles:!0,cancelable:!1,composed:!0,detail:{},...t});return this.dispatchEvent(o),o}static define(e,t=this,o={}){const i=customElements.get(e);if(!i){try{customElements.define(e,t,o)}catch(i){console.log(e,i),customElements.define(e,class extends t{},o)}return}let r=" (unknown version)",a=r;"version"in t&&t.version&&(r=" v"+t.version),"version"in i&&i.version&&(a=" v"+i.version),r&&a&&r===a||console.warn(`Attempted to register <${e}>, but <${e}> has already been registered.`)}constructor(){super(),Object.entries(this.constructor.dependencies).forEach((([e,t])=>{this.constructor.define(e,t)}))}}Ue.version="5.0.28",Ue.dependencies={};class Ge extends Ue{constructor(){super(...arguments),this.svgContent="",this.name="user"}_hasSlottedContent(){for(const e of this.children){if("slot"!==e.tagName.toLowerCase())return!0;if(e.assignedNodes().length>0)return!0}return!1}connectedCallback(){super.connectedCallback(),this._hasSlottedContent()||this.svgContent||this.loadSVG()}async loadSVG(){try{const e=await fetch(function(e=""){if(!Re||"/icons"===Re){const e=window.PushWebComponents?.config;e?.iconBasePath&&Fe(e.iconBasePath)}return Re.replace(/\/$/,"")+(e?`/${e.replace(/^\//,"")}`:"")}(`/${this.name}.svg`));if(!e.ok)throw new Error("Failed to load SVG");let t=await e.text();this.svgContent=t.replace("<svg",'<svg part="svg"')}catch(e){console.error(e),this.svgContent='<svg part="svg" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 512 512">\n <path d="M504 256c0 137-111 248-248 248S8 393 8 256C8 119.1 119 8 256 8s248 111.1 248 248zm-248 50c-25.4 0-46 20.6-46 46s20.6 46 46 46 46-20.6 46-46-20.6-46-46-46zm-43.7-165.3l7.4 136c.3 6.4 5.6 11.3 12 11.3h48.5c6.4 0 11.6-5 12-11.3l7.4-136c.4-6.9-5.1-12.7-12-12.7h-63.4c-6.9 0-12.4 5.8-12 12.7z"/>\n </svg>'}}willUpdate(e){e.has("name")&&!this._hasSlottedContent()&&this.loadSVG()}render(){const e=this._hasSlottedContent();return $` 158 <span 159 part="base icon" 160 class="${J({"icon-container":!0,spinner:"spinner"===this.name})}" 161 style="${He({"--font-size":this.size?je(this.size):null})}" 162 > 163 ${e?$`<slot></slot>`:De(this.svgContent)} 164 </span> 165 `}}Ge.styles=[Me,We],i([ke({type:String})],Ge.prototype,"svgContent",void 0),i([ke({reflect:!0})],Ge.prototype,"name",void 0),i([ke()],Ge.prototype,"size",void 0);class qe{constructor(){this.groups=new Map,this.hosts=new Set}static getInstance(){return qe.instance||(qe.instance=new qe),qe.instance}hostConnected(){0===this.hosts.size&&this.setupGlobalListeners()}hostDisconnected(){1===this.hosts.size&&this.cleanupGlobalListeners()}addHost(e){this.hosts.add(e),e.addController(this)}removeHost(e){this.hosts.delete(e),e.removeController?.(this)}registerAccordion(e,t){this.groups.has(t)||this.groups.set(t,{accordions:new Set,policy:{mode:"exclusive"},managedBy:"individual"});const o=this.groups.get(t);o.accordions.add(e),o.managedBy||(o.managedBy="individual"),this.requestUpdateAll()}registerSlottedAccordions(e,t){this.groups.has(t)||this.groups.set(t,{accordions:new Set,policy:{mode:"exclusive"},managedBy:"group-component"});const o=this.groups.get(t);o.accordions.clear(),e.forEach((e=>{o.accordions.add(e)})),o.managedBy="group-component",this.requestUpdateAll()}validateGroupReadiness(e){const t=this.groups.get(e);return!!t&&Array.from(t.accordions).every((e=>"function"==typeof e.openAccordion&&"function"==typeof e.closeAccordion&&"boolean"==typeof e._open))}getRegistrationStatus(e,t){const o=this.groups.get(e),i=o?o.accordions.size:0;return{registered:i,expected:t,ready:!!o&&this.validateGroupReadiness(e)&&(t?i===t:i>0)}}unregisterAccordion(e,t){const o=this.groups.get(t);o&&(o.accordions.delete(e),0===o.accordions.size&&this.groups.delete(t),this.requestUpdateAll())}notifyAccordionOpening(e,t){const o=this.groups.get(t);if(o){if("exclusive"===o.policy.mode)o.accordions.forEach((t=>{t!==e&&t._open&&t.closeAccordion()}));else if("multi-select"===o.policy.mode&&o.policy.maxOpen){const e=Array.from(o.accordions).filter((e=>e._open));e.length>=o.policy.maxOpen&&e[0].closeAccordion()}this.requestUpdateAll()}}setGroupPolicy(e,t){const o=this.groups.get(e);o?o.policy=t:this.groups.set(e,{accordions:new Set,policy:t,managedBy:void 0}),this.requestUpdateAll()}getGroupAccordions(e){return this.groups.get(e)?.accordions}closeAllInGroup(e){const t=this.groups.get(e);t&&(t.accordions.forEach((e=>{e._open&&e.closeAccordion()})),this.requestUpdateAll())}openAccordionByIndex(e,t){const o=this.groups.get(e);if(o&&this.validateGroupReadiness(e)){const e=Array.from(o.accordions);t>=0&&t<e.length&&(e[t].openAccordion(),this.requestUpdateAll())}}getGroupStats(e){const t=this.groups.get(e);if(!t)return null;return{total:t.accordions.size,open:Array.from(t.accordions).filter((e=>e._open)).length}}getAllGroupIds(){return Array.from(this.groups.keys())}hasGroup(e){return this.groups.has(e)}isGroupReady(e){return this.hasGroup(e)&&this.validateGroupReadiness(e)}
165requestUpdateAll(){this.hosts.forEach((e=>{e.requestUpdate()}))}setupGlobalListeners(){}cleanupGlobalListeners(){}}class Ke extends Ue{constructor(){super(...arguments),this.icon="chevron-down",this.iconSize="xsmall",this.iconAnimation="flip",this.iconPosition="right",this.open=!1,this.justify="space-between",this._open=!1,this._inGroupContainer=!1,this.controller=qe.getInstance(),this.isAnimating=!1,this.openAccordion=()=>{this._open||this.isAnimating||(this.open=!0)},this.closeAccordion=()=>{this._open&&!this.isAnimating&&(this.open=!1)}}connectedCallback(){super.connectedCallback(),this._inGroupContainer=!!this.closest("pu-accordion-group"),this.controller.addHost(this),this.groupId&&this._registerWithVirtualGroup()}disconnectedCallback(){super.disconnectedCallback(),this.controller.removeHost(this),this.currentGroupId&&this.controller.unregisterAccordion(this,this.currentGroupId),this.detailsObserver?.disconnect(),this.currentGroupId=void 0}firstUpdated(){this.body.style.height=this.open?"auto":"0",this.open&&(this.details.open=!0,this._open=!0),this.detailsObserver=new MutationObserver((e=>{for(const t of e)if("attributes"===t.type&&"open"===t.attributeName){if(this.isAnimating)return;this.details.open?this._show():this._hide()}})),this.detailsObserver.observe(this.details,{attributes:!0})}updated(e){super.updated(e),e.has("groupId")&&this._handleGroupIdChange()}async handleOpenChange(){this.open?await this._show():await this._hide()}_registerWithVirtualGroup(){this.groupId&&(this.currentGroupId=this.groupId,this.controller.registerAccordion(this,this.groupId),this.dispatchEvent(new CustomEvent("accordion-registered",{detail:{accordion:this,groupId:this.groupId},bubbles:!0})))}_handleGroupIdChange(){this.currentGroupId&&(this.controller.unregisterAccordion(this,this.currentGroupId),this.currentGroupId=void 0),this.groupId&&this._registerWithVirtualGroup()}async _show(){if(this.isAnimating)return;this.isAnimating=!0,this._open=!0,this.currentGroupId&&this.controller.notifyAccordionOpening(this,this.currentGroupId),this.dispatchEvent(new CustomEvent("accordion-opening",{detail:{accordion:this,groupId:this.currentGroupId},bubbles:!0})),await Ee(this.body),this.details.open=!0;await Pe(this.body,Be([{height:"0",opacity:"0"},{height:"auto",opacity:"1"}],this.body.scrollHeight),{duration:150,easing:"linear"}),this.body.style.height="auto",this.isAnimating=!1,this.dispatchEvent(new CustomEvent("accordion-opened",{detail:{accordion:this},bubbles:!0}))}async _hide(){if(this.isAnimating)return;this.isAnimating=!0,this._open=!1,this.dispatchEvent(new CustomEvent("accordion-closing",{detail:{accordion:this,groupId:this.currentGroupId},bubbles:!0})),await Ee(this.body);await Pe(this.body,Be([{height:"auto",opacity:"1"},{height:"0",opacity:"0"}],this.body.scrollHeight),{duration:150,easing:"linear"}),this.body.style.height="auto",this.details.open=!1,this.isAnimating=!1,this.dispatchEvent(new CustomEvent("accordion-closed",{detail:{accordion:this},bubbles:!0}))}_handleSummaryClick(e){e.preventDefault(),this._open?this.closeAccordion():this.openAccordion()}render(){return $` 166 <details 167 part="base" 168 class="accordion ${J({"accordion--grouped":this._inGroupContainer,"accordion--open":this._open})}" 169 > 170 <summary 171 part="header" 172 class="accordion__summary${J({[`accordion__summary--icon-${this.iconAnimation}`]:!0,[`accordion__summary--icon-position-${this.iconPosition}`]:!0,[`accordion__summary--justify-${this.justify}`]:!0})}" 173 aria-label="Accordion block summary" 174 role="button" 175 aria-expanded=${this._open} 176 @click=${this._handleSummaryClick} 177 > 178 <slot name="header"></slot> 179 <pu-icon 180 part="icon" 181 exportparts="base,svg" 182 class="accordion__icon" 183 name="${this.icon}" 184 size="${this.iconSize}" 185 > 186 <slot name="icon"></slot> 187 </pu-icon> 188 </summary> 189 <div 190 part="content" 191 class="accordion__details" 192 aria-hidden=${!this._open} 193 > 194 <slot name="content"></slot> 195 </div> 196 </details> 197 `}}
197Ke.styles=[Me,Ie],Ke.dependencies={"pu-icon":Ge},i([ke()],Ke.prototype,"icon",void 0),i([ke()],Ke.prototype,"iconSize",void 0),i([ke()],Ke.prototype,"iconAnimation",void 0),i([ke()],Ke.prototype,"iconPosition",void 0),i([ke({type:Boolean})],Ke.prototype,"open",void 0),i([ke()],Ke.prototype,"justify",void 0),i([ke()],Ke.prototype,"groupId",void 0),i([Ce()],Ke.prototype,"_open",void 0),i([Ce()],Ke.prototype,"_inGroupContainer",void 0),i([Se(".accordion")],Ke.prototype,"details",void 0),i([Se(".accordion__details")],Ke.prototype,"body",void 0),i([Te("open",{waitUntilFirstUpdate:!0})],Ke.prototype,"handleOpenChange",null),Ke.define("pu-accordion");const Je=[te` 198 :host { 199 display: block; 200 --border-color: var(--pu-accordion-border-color, var(--pu-color-border)); 201 --border-tl-radius: var(--pu-accordion-border-radius-top, var(--pu-accordion-border-radius, 0)); 202 --border-tr-radius: var(--pu-accordion-border-radius-top, var(--pu-accordion-border-radius, 0)); 203 --border-br-radius: var(--pu-accordion-border-radius-bottom, var(--pu-accordion-border-radius, 0)); 204 --border-bl-radius: var(--pu-accordion-border-radius-bottom, var(--pu-accordion-border-radius, 0)); 205 } 206 207 slot { 208 display: contents; 209 } 210 211 ::slotted(pu-accordion) { 212 overflow: hidden; 213 outline: solid var(--border-color) var(--pu-accordion-border-width); 214 } 215 216 ::slotted(pu-accordion:first-child) { 217 border-top-left-radius: var(--border-tl-radius); 218 border-top-right-radius: var(--border-tr-radius); 219 } 220 ::slotted(pu-accordion:last-child) { 221 border-bottom-right-radius: var(--border-br-radius); 222 border-bottom-left-radius: var(--border-bl-radius); 223 } 224 .accordion-group { 225 display: grid; 226 grid-template-columns: 1fr; 227 /* Compensate for border width */ 228 gap: var(--pu-accordion-group-space-gap, var(--pu-accordion-border-width, 0.0625em)); 229 padding: var(--pu-accordion-group-space-padding, var(--pu-accordion-border-width)); 230 } 231`];class Xe{constructor(e,...t){this.slotNames=[],this.handleSlotChange=e=>{const t=e.target;(this.slotNames.includes("[default]")&&!t.name||t.name&&this.slotNames.includes(t.name))&&this.host.requestUpdate()},(this.host=e).addController(this),this.slotNames=t}hasDefaultSlot(){return[...this.host.childNodes].some((e=>{if(e.nodeType===e.TEXT_NODE&&""!==e.textContent.trim())return!0;if(e.nodeType===e.ELEMENT_NODE){const t=e;if("pu-visually-hidden"===t.tagName.toLowerCase())return!1;if(!t.hasAttribute("slot"))return!0}return!1}))}hasNamedSlot(e){return null!==this.host.querySelector(`:scope > [slot="${e}"]`)}test(e){return"[default]"===e?this.hasDefaultSlot():this.hasNamedSlot(e)}hostConnected(){this.host.shadowRoot.addEventListener("slotchange",this.handleSlotChange)}hostDisconnected(){this.host.shadowRoot.removeEventListener("slotchange",this.handleSlotChange)}}class Ye extends Ue{constructor(){super(),this.mode="exclusive",this.expanded=!1,this.controller=qe.getInstance(),this.slotController=new Xe(this,"accordion"),this.lastRegisteredCount=0,this.pendingStateActions=[],this._handleAccordionRegistration=e=>{e.stopPropagation(),this._manageSlottedAccordions()},this._handleAccordionOpening=e=>{e.stopPropagation();const t=e,o=t.detail?.accordion;o&&this.controller.notifyAccordionOpening(o,this.internalGroupId)},this.internalGroupId=`accordion-group-${Math.random().toString(36).substring(2,9)}`,this.controller.setGroupPolicy(this.internalGroupId,{mode:this.mode,maxOpen:this.maxOpen})}connectedCallback(){super.connectedCallback(),this.controller.addHost(this),this.addEventListener("accordion-registered",this._handleAccordionRegistration),this.addEventListener("accordion-opening",this._handleAccordionOpening)}disconnectedCallback(){super.disconnectedCallback(),this.controller.removeHost(this),this.removeEventListener("accordion-registered",this._handleAccordionRegistration),this.removeEventListener("accordion-opening",this._handleAccordionOpening);Array.from(this.slottedAccordions||[]).forEach((e=>{e&&void 0===e.groupId&&this.controller.unregisterAccordion(e,this.internalGroupId)}))}willUpdate(e){super.willUpdate(e),(e.has("mode")||e.has("maxOpen"))&&this.controller.setGroupPolicy(this.internalGroupId,{mode:this.mode,maxOpen:this.maxOpen})}updated(e){super.updated(e),this.updateComplete.then((()=>{this._manageSlottedAccordions()})),e.has("expanded")&&this.expanded&&this._queueStateAction((()=>this.openAccordionByIndex(0)))}_manageSlottedAccordions(){if(!this.slotController.test("accordion"))return;const e=Array.from(this.slottedAccordions),t=e.length;t!==this.lastRegisteredCount&&(this.lastRegisteredCount=t,this.controller.registerSlottedAccordions(e,this.internalGroupId));this.controller.getRegistrationStatus(this.internalGroupId,t).ready&&this._executePendingStateActions()}_queueStateAction(e){this.pendingStateActions.push(e)}_executePendingStateActions(){if(this.controller.isGroupReady(this.internalGroupId))for(;this.pendingStateActions.length>0;){const e=this.pendingStateActions.shift();if(e)try{e()}catch(e){console.warn("AccordionGroup: Error executing state action:",e)}}}getGroupId(){return this.internalGroupId}closeAll(){this._queueStateAction((()=>{this.controller.closeAllInGroup(this.internalGroupId)}))}openAccordionByIndex(e){this._queueStateAction((()=>{this.controller.openAccordionByIndex(this.internalGroupId,e)}))}setPolicy(e){this.controller.setGroupPolicy(this.internalGroupId,e),this.mode=e.mode,this.maxOpen=e.maxOpen}getStats(){return this.controller.getGroupStats(this.internalGroupId)||{total:0,open:0}}isReady(){return this.controller.isGroupReady(this.internalGroupId)}getRegistrationStatus(){const e=Array.from(this.slottedAccordions||[]).length;return this.controller.getRegistrationStatus(this.internalGroupId,e)}render(){return $` 232 <div 233 part="base" 234 class="accordion-group" 235 > 236 <slot name="accordion"></slot> 237 </div> 238 `}}Ye.styles=[Je],i([Ae({slot:"accordion"})],Ye.prototype,"slottedAccordions",void 0),i([ke()],Ye.prototype,"mode",void 0),i([ke({type:Number})],Ye.prototype,"maxOpen",void 0),i([ke({type:Boolean})],Ye.prototype,"expanded",void 0),Ye.define("pu-accordion-group");const Ze=e=>e??z,Qe=[te` 239 :host { 240 display: inline-block; 241 } 242 243 .badge { 244 display: flex; 245 align-items: center; 246 letter-spacing: 0.07em; 247 box-shadow: var(--pu-badge-shadow); 248 color: rgb( 249 from var(--pu-badge-color-foreground, var(--pu-color-foreground-inverse, rgb(255, 255, 255))) r g b / alpha 250 ); 251 background-color: rgb( 252 from var(--pu-badge-color-background, var(--pu-color-background-inverse, rgb(0, 0, 0))) r g b / 253 calc(var(--pu-badge-opacity-background, 1) * 100%) 254 ); 255 border-radius: var(--pu-badge-border-radius, var(--pu-border-radius)); 256 border: solid var(--pu-badge-border-width) 257 rgb(from var(--pu-badge-color-foreground, var(--pu-color-foreground-inverse,)) r g b / alpha); 258 } 259 260 .badge ::part(span-text) { 261 display: block; 262 } 263`,te` 264 /* Layout API Classes - Size property variants */ 265 .badge--size-large { 266 height: var(--pu-space-1200, 3em); 267 padding: 0 var(--pu-space-800, 2em); 268 } 269 270 .badge--size-medium { 271 height: var(--pu-space-1000, 2.5em); 272 padding: 0 var(--pu-space-600, 1.5em); 273 } 274 275 .badge--size-small {
276 height: var(--pu-space-800, 2em); 277 padding: 0 var(--pu-space-400, 0.75em); 278 } 279 280 .badge--size-slim { 281 height: var(--pu-space-600, 1.5em); 282 padding: 0 var(--pu-space-300, 0.5em); 283 } 284`],et=te` 285 /* Text component API sizes with fallbacks */ 286 /* API values overriden by application tokens */ 287 /* Application Token | API Token | Default Value */ 288 289 .txt--headingXs { 290 font-size: var(--pu-text-heading-size, var(--pu-text-heading-size-xs, 0.75em)); 291 } 292 .txt--headingSm { 293 font-size: var(--pu-text-heading-size, var(--pu-text-heading-size-sm, 0.875em)); 294 } 295 .txt--headingMd { 296 font-size: var(--pu-text-heading-size, var(--pu-text-heading-size-md, 1em)); 297 } 298 .txt--headingLg { 299 font-size: calc( 300 var(--pu-text-heading-scale, 1) * var(--pu-text-heading-size, var(--pu-text-heading-size-lg, 1.25em)) 301 ); 302 } 303 .txt--headingXl { 304 font-size: calc( 305 var(--pu-text-heading-scale, 1) * var(--pu-text-heading-size, var(--pu-text-heading-size-xl, 1.5em)) 306 ); 307 } 308 .txt--heading2xl { 309 font-size: calc( 310 var(--pu-text-heading-scale, 1) * var(--pu-text-heading-size, var(--pu-text-heading-size-2xl, 1.75em)) 311 ); 312 } 313 .txt--heading3xl { 314 font-size: calc( 315 var(--pu-text-heading-scale, 1) * var(--pu-text-heading-size, var(--pu-text-heading-size-3xl, 2em)) 316 ); 317 } 318 .txt--heading4xl { 319 font-size: calc( 320 var(--pu-text-heading-scale, 1) * var(--pu-text-heading-size, var(--pu-text-heading-size-4xl, 3em)) 321 ); 322 } 323 .txt--heading5xl { 324 font-size: calc( 325 var(--pu-text-heading-scale, 1) * var(--pu-text-heading-size, var(--pu-text-heading-size-5xl, 4em)) 326 ); 327 } 328 .txt--bodyXs { 329 font-size: var(--pu-text-body-size, var(--pu-text-body-size-xs, 0.75em)); 330 } 331 .txt--bodySm { 332 font-size: var(--pu-text-body-size, var(--pu-text-body-size-sm, 0.875em)); 333 } 334 .txt--bodyMd { 335 font-size: calc(var(--pu-text-body-scale, 1) * var(--pu-text-body-size, var(--pu-text-body-size-md, 1em))); 336 } 337 .txt--bodyLg { 338 font-size: calc(var(--pu-text-body-scale, 1) * var(--pu-text-body-size, var(--pu-text-body-size-lg, 1.25em))); 339 } 340 .txt--bodyXl { 341 font-size: calc(var(--pu-text-body-scale, 1) * var(--pu-text-body-size, var(--pu-text-body-size-xl, 1.5em))); 342 } 343 .txt--body2xl { 344 font-size: calc(var(--pu-text-body-scale, 1) * var(--pu-text-body-size, var(--pu-text-body-size-2xl, 1.75em))); 345 } 346 .txt--body3xl { 347 font-size: calc(var(--pu-text-body-scale, 1) * var(--pu-text-body-size, var(--pu-text-body-size-3xl, 2em))); 348 } 349 .txt--body4xl { 350 font-size: calc(var(--pu-text-body-scale, 1) * var(--pu-text-body-size, var(--pu-font-size-900, 3em))); 351 } 352 .txt--body5xl { 353 font-size: calc(var(--pu-text-body-scale, 1) * var(--pu-text-body-size, var(--pu-font-size-1000, 4em))); 354 } 355`,tt=te` 356 .txt--headingXs { 357 margin-bottom: var(--pu-space-100, 0.25em); 358 } 359 .txt--headingSm { 360 margin-bottom: var(--pu-space-200, 0.5em); 361 } 362 .txt--headingMd { 363 margin-bottom: var(--pu-space-300, 0.75em); 364 } 365 .txt--headingLg { 366 margin-bottom: var(--pu-space-300, 0.75em); 367 } 368 .txt--headingXl { 369 margin-bottom: var(--pu-space-400, 1em); 370 } 371 .txt--heading2xl { 372 margin-bottom: var(--pu-space-400, 1em); 373 } 374 .txt--heading3xl { 375 margin-bottom: var(--pu-space-400, 1em); 376 } 377 .txt--heading4xl { 378 margin-bottom: var(--pu-space-500, 1.25em); 379 } 380 .txt--heading5xl { 381 margin-bottom: var(--pu-space-600, 1.5em); 382 } 383 .txt--bodyXs { 384 margin-bottom: var(--pu-space-100, 0.25em); 385 } 386 .txt--bodySm { 387 margin-bottom: var(--pu-space-200, 0.5em); 388 } 389 .txt--bodyMd, 390 .txt--bodyLg, 391 .txt--bodyXl, 392 .txt--body2xl, 393 .txt--body3xl, 394 .txt--body4xl, 395 .txt--body5xl { 396 margin-bottom: var(--pu-text-space-margin-bottom, var(--pu-space-300, 0.75em)); 397 } 398`,ot=te` 399 .txt--line-height-extra-loose { 400 line-height: var(--line-height, var(--pu-font-leading-900, 3)); 401 } 402 .txt--line-height-very-loose { 403 line-height: var(--line-height, var(--pu-font-leading-800, 2.5)); 404 } 405 .txt--line-height-loose { 406 line-height: var(--line-height, var(--pu-font-leading-700, 2)); 407 } 408 .txt--line-height-normal { 409 line-height: var(--line-height, var(--pu-font-leading-500, 1.5)); 410 } 411 .txt--line-height-compact { 412 line-height: var(--line-height, var(--pu-font-leading-300, 1.25)); 413 } 414 .txt--line-height-dense { 415 line-height: var(--line-height, var(--pu-font-leading-100, 1)); 416 } 417`,it=te` 418 @media screen and (max-width: 48em) { 419 .txt--narrow-align-start { 420 text-align: left; 421 } 422 .txt--narrow-align-center { 423 text-align: center; 424 }
425 .txt--narrow-align-end { 426 text-align: right; 427 } 428 .txt--narrow-align-justify { 429 text-align: justify; 430 } 431 } 432 @media screen and (min-width: 48.06em) { 433 .txt--margin { 434 margin-bottom: var(--pu-space-400, 1em); 435 } 436 .txt--align-start { 437 text-align: left; 438 } 439 .txt--align-center { 440 text-align: center; 441 } 442 .txt--align-end { 443 text-align: right; 444 } 445 .txt--align-justify { 446 text-align: justify; 447 } 448 } 449`,rt=[te` 450 :host { 451 --weight: var(--pu-text-weight, inherit); 452 --style: var(--pu-text-style, inherit); 453 --color: var(--pu-color-foreground-normal, var(--pu-color-foreground, inherit)); 454 --transform: var(--pu-text-transform, inherit); 455 --letter-spacing: var(--pu-text-tracking, inherit); 456 --line-height: var(--pu-text-leading, inherit); 457 } 458 :host([as='span']) { 459 display: inline-flex; 460 } 461 462 .base { 463 color: var(--color, inherit); 464 text-transform: var(--transform, inherit); 465 letter-spacing: var(--letter-spacing, inherit); 466 line-height: var(--line-height, inherit); 467 font-weight: var(--weight, inherit); 468 font-style: var(--style, inherit); 469 } 470 471 .span { 472 margin-bottom: 0 !important; 473 } 474 .heading, 475 .paragraph { 476 margin-top: 0; 477 text-align: inherit; 478 } 479 480 .skeleton { 481 display: flex; 482 height: 0.5em; 483 border-radius: 0.5em; 484 min-width: 5em; 485 background-color: var(--pu-skeleton-color-foreground); 486 } 487`,te` 488 .txt--headingXs, 489 .txt--headingSm, 490 .txt--headingMd, 491 .txt--headingLg, 492 .txt--headingXl, 493 .txt--heading2xl, 494 .txt--heading3xl, 495 .txt--heading4xl, 496 .txt--heading5xl { 497 font-family: var(--pu-text-heading-family, var(--pu-font-family-heading, inherit)); 498 } 499 .txt--bodyXs, 500 .txt--bodySm, 501 .txt--bodyMd, 502 .txt--bodyLg, 503 .txt--bodyXl, 504 .txt--body2xl, 505 .txt--body3xl, 506 .txt--body4xl, 507 .txt--body5xl { 508 font-family: var(--pu-text-body-family, var(--pu-font-family-body, inherit)); 509 } 510`,et,tt,te` 511 .txt--heading4xl, 512 .txt--heading5xl, 513 .txt--body4xl, 514 .txt--body5xl { 515 line-height: var(--line-height, var(--pu-font-leading-100, 1)); 516 } 517 518 .txt--headingXl, 519 .txt--heading2xl, 520 .txt--heading3xl, 521 .txt--bodyXl, 522 .txt--body2xl, 523 .txt--body3xl { 524 line-height: var(--line-height, var(--pu-font-leading-300, 1.25)); 525 } 526 527 .txt--headingLg, 528 .txt--headingMd, 529 .txt--headingSm, 530 .txt--headingXs, 531 .tx--bodyLg, 532 .txt--bodyMd, 533 .txt--bodySm, 534 .txt--bodyXs, 535 .txt--body { 536 line-height: var(--line-height, var(--pu-font-leading-500, 1.5)); 537 } 538`,te` 539 .txt--color-disabled { 540 color: rgb(from var(--pu-color-foreground-disabled, var(--pu-color-foreground)) r g b / calc(alpha * 0.3)); 541 } 542 .txt--color-subdued { 543 color: rgb(from var(--pu-color-foreground-subdued, hsl(240, 5%, 65%)) r g b); 544 } 545 .txt--color-warning { 546 color: rgb(from var(--pu-color-foreground-warning, hsl(0, 72%, 51%)) r g b); 547 } 548`,te` 549 .txt--light { 550 font-weight: var(--weight, var(--pu-font-weight-300, 300)); 551 } 552 .txt--regular { 553 font-weight: var(--weight, var(--pu-font-weight-400, 400)); 554 } 555 .txt--medium { 556 font-weight: var(--weight, var(--pu-font-weight-500, 500)); 557 } 558 .txt--semibold { 559 font-weight: var(--weight, var(--pu-font-weight-600, 600)); 560 } 561 .txt--bold { 562 font-weight: var(--weight, var(--pu-font-weight-700, 700)); 563 } 564 .txt--extrabold { 565 font-weight: var(--weight, var(--pu-font-weight-800, 800)); 566 } 567 .txt--black { 568 font-weight: var(--weight, var(--pu-font-weight-900, 900)); 569 } 570`,te` 571 .txt--italic { 572 font-style: var(--style, italic); 573 } 574 .txt--oblique { 575 font-style: var(--style, oblique); 576 } 577`,te` 578 .txt-transform--uppercase { 579 text-transform: var(--transform, uppercase); 580 } 581 .txt-transform--capitalize { 582 text-transform: var(--transform, capitalize); 583 } 584 .txt-transform--lowercase { 585 text-transform: var(--transform, lowercase); 586 } 587`,ot,te` 588 .base.txt--spacing-extra-loose { 589 letter-spacing: var(--letter-spacing, 0.2em); 590 } 591 .base.txt--spacing-very-loose { 592 letter-spacing: var(--letter-spacing, 0.1em); 593 } 594 .base.txt--spacing-loose { 595 letter-spacing: var(--letter-spacing, 0.05em); 596 } 597 .base.txt--spacing-normal { 598 letter-spacing: var(--letter-spacing, inherit); 599 } 600`,it,te` 601 .heading.text--without-margin, 602 .paragraph.text--without-margin, 603 .skeleton.text--without-margin { 604 margin-bottom: 0; 605 } 606 607 .txt--truncate { 608 overflow: hidden; 609 white-space: nowrap; 610 text-overflow: ellipsis; 611 } 612 .txt--breakword {
613 overflow-wrap: anywhere; 614 word-break: normal; 615 } 616 .txt--hidden { 617 position: absolute !important; 618 overflow: hidden; 619 width: 1px; 620 height: 1px; 621 margin: -1px; 622 padding: 0; 623 border: 0; 624 clip: rect(0 0 0 0); 625 word-wrap: normal !important; 626 } 627`];function at(e,t,o,i,r){const a=void 0===r||""===r?"function"==typeof i?i():i:r;e[o]=a,console.warn(`The "${t}" property is deprecated. Please use "${o}" instead.`)}function st(e,t,o,i){const r=i.find((e=>e.old===t));if(!r)return void console.warn(`No mapping found for deprecated property "${t}"`);const a=void 0===o||""===o?"function"==typeof r.defaultValue?r.defaultValue():r.defaultValue:o;e[r.new]=a,console.warn(`The "${t}" property is deprecated. Please use "${r.new}" instead.`)}class nt extends Ue{constructor(){super(...arguments),this.as="p",this.variant="bodyMd",this.color="normal",this.fontWeight="normal",this.fontStyle="normal",this.lineHeight="normal",this.spacing="normal",this.withMargin=!1,this.transform="none",this.truncate=!1,this.breakWord=!1,this.hidden=!1,this.deprecatedPropertyMap=[{old:"alignment",new:"textAlign",defaultValue:void 0},{old:"mobileAlignment",new:"textAlignNarrow",defaultValue:void 0}]}get alignment(){return this.textAlign}set alignment(e){this._handleDeprecated("alignment",e)}get mobileAlignment(){return this.textAlignNarrow}set mobileAlignment(e){this._handleDeprecated("mobileAlignment",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}textClasses(){const e={base:!0,"txt--truncate":this.truncate,"txt--breakword":this.breakWord,"txt--hidden":this.hidden};return"normal"!==this.color&&(e["txt--color-"+this.color]=!0),this.variant&&(e["txt--"+this.variant]=!0),"normal"!==this.lineHeight&&(e["txt--line-height-"+this.lineHeight]=!0),"normal"!==this.spacing&&(e["txt--spacing-"+this.spacing]=!0),"normal"!==this.fontWeight&&(e["txt--"+this.fontWeight]=!0),"normal"!==this.fontStyle&&(e["txt--"+this.fontStyle]=!0),this.textAlign&&(e["txt--align-"+this.textAlign]=this.textAlign),this.textAlignNarrow?e["txt--narrow-align-"+this.textAlignNarrow]=!0:e["txt--narrow-align-"+this.textAlign]=this.textAlign,this.withMargin||"span"===this.as||(e["text--without-margin"]=!0),"none"!==this.transform&&(e["txt-transform--"+this.transform]=!0),e}textAs(e){switch(this.as){case"p":return $`<p 628 part="base p body" 629 class="paragraph${J(e)}" 630 > 631 <slot></slot> 632 </p>`;case"h1":return $`<h1 633 part="base h1 heading" 634 class="heading${J(e)}" 635 > 636 <slot></slot> 637 </h1>`;case"h2":return $`<h2 638 part="base h2 heading" 639 class="heading${J(e)}" 640 > 641 <slot></slot> 642 </h2>`;case"h3":return $`<h3 643 part="base h3 heading" 644 class="heading${J(e)}" 645 > 646 <slot></slot> 647 </h3>`;case"h4":return $`<h4 648 part="base h4 heading" 649 class="heading${J(e)}" 650 > 651 <slot></slot> 652 </h4>`;case"h5":return $`<h5 653 part="base h5 heading" 654 class="heading${J(e)}" 655 > 656 <slot></slot> 657 </h5>`;case"skeleton":return $`<div class="skeleton${J(e)}"></div>`;default:return $` <span 658 part="base span body" 659 class="span${J(e)}" 660 ><slot></slot 661 ></span>`}}render(){return $`${this.textAs(this.textClasses())}`}}nt.styles=[Me,rt],i([ke({type:String})],nt.prototype,"as",void 0),i([ke({type:String})],nt.prototype,"variant",void 0),i([ke({type:String})],nt.prototype,"color",void 0),i([ke({type:String})],nt.prototype,"fontWeight",void 0),i([ke({type:String})],nt.prototype,"fontStyle",void 0),i([ke({type:String})],nt.prototype,"lineHeight",void 0),i([ke({type:String})],nt.prototype,"spacing",void 0),i([ke({type:String})],nt.prototype,"textAlign",void 0),i([ke({type:String})],nt.prototype,"textAlignNarrow",void 0),i([ke({type:Boolean})],nt.prototype,"withMargin",void 0),i([ke()],nt.prototype,"transform",void 0),i([ke({type:Boolean})],nt.prototype,"truncate",void 0),i([ke({type:Boolean})],nt.prototype,"breakWord",void 0),i([ke({type:Boolean})],nt.prototype,"hidden",void 0),i([ke({type:String})],nt.prototype,"alignment",null),i([ke({type:String})],nt.prototype,"mobileAlignment",null);class lt extends Ue{constructor(){super(...arguments),this.size="small"}render(){return $`
662 <span 663 part="base badge" 664 class="badge${J({[`badge--size-${this.size}`]:!0})}" 665 > 666 <pu-text 667 part="label" 668 exportparts="base,span,body" 669 as="span" 670 variant="${Ze(this.textSize)}" 671 fontWeight="${Ze(this.textWeight)}" 672 fontStyle="${Ze(this.textStyle)}" 673 transform="${Ze(this.textTransform)}" 674 lineHeight="compact" 675 withoutMargin 676 > 677 <slot>Badge label</slot> 678 </pu-text> 679 </span> 680 `}}lt.styles=[Me,Qe],lt.dependencies={"pu-text":nt},i([ke()],lt.prototype,"size",void 0),i([ke()],lt.prototype,"textSize",void 0),i([ke()],lt.prototype,"textWeight",void 0),i([ke()],lt.prototype,"textStyle",void 0),i([ke()],lt.prototype,"textTransform",void 0),lt.define("pu-badge");const dt=te` 681 /* narrow Media Heights (â¤30em) - CSS Custom Properties */ 682 @media only screen and (max-width: 30em) { 683 .media-height--xsmall { 684 --pu-banner-media-size-height: 10em; 685 } 686 .media-height--small { 687 --pu-banner-media-size-height: 15em; 688 } 689 .media-height--medium { 690 --pu-banner-media-size-height: 20em; 691 } 692 .media-height--large { 693 --pu-banner-media-size-height: 25em; 694 } 695 .media-height--xlarge { 696 --pu-banner-media-size-height: 27em; 697 } 698 .media-height--2xlarge { 699 --pu-banner-media-size-height: 30em; 700 } 701 } 702 703 /* Desktop Media Heights (â¥30.06em) - CSS Custom Properties */ 704 @media only screen and (min-width: 30.06em) { 705 .media-height--xsmall { 706 --pu-banner-media-size-height: 15em; 707 } 708 .media-height--small { 709 --pu-banner-media-size-height: 20em; 710 } 711 .media-height--medium { 712 --pu-banner-media-size-height: 25em; 713 } 714 .media-height--large { 715 --pu-banner-media-size-height: 30em; 716 } 717 .media-height--xlarge { 718 --pu-banner-media-size-height: 35em; 719 } 720 .media-height--2xlarge { 721 --pu-banner-media-size-height: 40em; 722 } 723 } 724 725 /* Aspect Ratio Adaptive Heights */ 726 .media-height--adapt { 727 --pu-banner-media-size-height: auto; 728 --pu-banner-media-aspect: var(--pu-aspect-ratio); 729 } 730 731 /* narrow-specific adaptive heights */ 732 @media only screen and (max-width: 48em) { 733 .media-height--adapt, 734 .media-narrow-adapt { 735 --pu-banner-media-size-height: auto; 736 --pu-banner-media-aspect: var(--pu-banner-media-aspect-narrow, var(--pu-aspect-ratio)); 737 } 738 } 739`,pt=[te` 740 :host { 741 position: relative; 742 display: block; 743 width: 100%; 744 overflow: hidden; 745 } 746 747 /* Banner structure */ 748 .banner__container { 749 position: relative; 750 } 751 752 /* Content structure */ 753 .banner__content { 754 height: 100%; 755 } 756 757 .banner__content::part(content) { 758 background-color: transparent; 759 display: flex; 760 } 761 762 .banner__caption { 763 color: rgb(from var(--pu-banner-caption-color-foreground, var(--pu-color-passthrough-foreground)) r g b / 1); 764 --pu-color-foreground: rgb(from var(--pu-banner-caption-color-foreground, var(--pu-color-passthrough-foreground)) r g b / 1); 765 --pu-color-background: rgb( 766 from var(--pu-banner-caption-color-background, var(--pu-color-passthrough-background)) r g b / 767 var(--pu-card-caption-opacity-background, 1) 768 ); 769 } 770 771 .banner__caption::part(content) { 772 height: auto; 773 } 774 775 /* Media overlay for over content positioning */ 776 @media only screen and (min-width: 48.06em) { 777 .banner:not(.content--inline) .banner__container::after { 778 content: ''; 779 display: block; 780 position: absolute; 781 top: 0; 782 left: 0; 783 height: 100%; 784 width: 100%; 785 z-index: 1; 786 background-color: rgb( 787 from var(--pu-overlay-color-background, 255, 255, 255, 0) r g b / 788 var(--pu-opacity-overlay, 0) 789 ); 790 } 791 } 792`,dt,te` 793 /* API: Banner-specific media height application using shared utility values */ 794 .banner.media-height--xsmall .banner__media, 795 .banner.media-height--small .banner__media, 796 .banner.media-height--medium .banner__media, 797 .banner.media-height--large .banner__media, 798 .banner.media-height--xlarge .banner__media, 799 .banner.media-height--2xlarge .banner__media { 800 height: var(--pu-banner-media-size-height); 801 } 802 803 /* API: Banner-specific adaptive height application using shared utility values */ 804 .banner.media-height--adapt .banner__media { 805 height: var(--pu-banner-media-size-height); 806 aspect-ratio: var(--pu-banner-media-aspect); 807 } 808 .banner.media-narrow-adapt .banner__media { 809 height: var(--pu-banner-media-size-height); 810 aspect-ratio: var(--pu-banner-media-aspect); 811 } 812 813 /* API: Content position variants (value-based property: contentPosition) */ 814 815 /* Content over media (default behavior, enhanced positioning) */ 816 @media only screen and (min-width: 48.06em) { 817 .banner:not(.content--inline) .banner__content { 818 position: absolute; 819 top: 0; 820 left: 0; 821 height: 100%; 822 width: 100%; 823 z-index: 10; 824 } 825 } 826 827 /* Content position: side */ 828 .content-position--side .banner__content { 829 height: initial; 830 } 831 .content-position--side .banner__content::part(content) { 832 background-color: rgb( 833 from var(--pu-banner-caption-color-background, var(--pu-color-passthrough-background)) r g b / 834 var(--pu-card-caption-opacity-background, 1) 835 ); 836 } 837 .content-position--side .banner__caption::part(content) { 838 background-color: transparent; 839 } 840 @media (min-width: 48.06em) { 841 .content-position--side .banner__content { 842 display: flex; 843 } 844 } 845 846 /* API: Without content */ 847 .content--hidden { 848 display: none; 849 } 850 851 /* API: Content position: unless over - wide viewport */ 852 .content--inline .banner__container { 853 display: flex; 854 flex-direction: column; 855 } 856 @media only screen and (min-width: 48.06em) { 857 .content--inline.content-position--side .banner__container { 858 flex-direction: row-reverse; 859 } 860 .content--inline.content-position--side .banner__media { 861 flex: 1 0 auto; 862 width: 70%; 863 } 864 .content--inline.content-position--side .banner__content ::slotted(*) { 865 height: 100%; 866 } 867 } 868 869 /* API: Content position: above */ 870 .content-position--above .banner__media { 871 order: 2; 872 } 873 .content-position--above .banner__content { 874 order: 1; 875 } 876 877 /* API: Content position: under */ 878 .content-position--under .banner__media { 879 order: 1; 880 } 881 .content-position--under .banner__content { 882 order: 2; 883 } 884 885 /* API: Content alignment (value-based property: contentAlign) */ 886 @media (min-width: 48.06em) { 887 .content-align--start .banner__content::part(content) { 888 align-items: start; 889 } 890 .content-align--center .banner__content::part(content) { 891 align-items: center; 892 } 893 .content-align--end .banner__content::part(content) { 894 align-items: end; 895 } 896 897 /* API: Content justification (value-based property: contentJustify) */ 898 .content-justify--start .banner__content::part(content) { 899 justify-content: start; 900 } 901 .content-justify--center .banner__content::part(content) { 902 justify-content: center; 903 } 904 .content-justify--end .banner__content::part(content) { 905 justify-content: end; 906 } 907 } 908 909 /* API: Narrow viewport content styling overrides */ 910 @media only screen and (max-width: 48.06em) { 911 /* All positions - narrow content box is full width */ 912 .banner__caption { 913 width: 100%; 914 } 915 } 916`],ct=[te` 917 :host { 918 --foreground-color: var(--pu-box-color-foreground, var(--pu-color-foreground)); 919 --background-color: var(--pu-box-color-background); 920 --padding: var(--pu-box-space-padding); 921 --padding-top: var(--pu-box-space-padding-top); 922 --padding-right: var(--pu-box-space-padding-right); 923 --padding-bottom: var(--pu-box-space-padding-bottom); 924 --padding-left: var(--pu-box-space-padding-left); 925 --padding-narrow: var(--pu-box-space-padding-narrow); 926 } 927 928 :host, 929 :host([fit='fill']) { 930 display: block; 931 width: var(--pu-size-width, 100%); 932 } 933 :host([fit='fit-content']) { 934 width: fit-content; 935 } 936 :host([fit='auto']) { 937 width: auto; 938 } 939 @media only screen and (max-width: 48em) { 940 :host, 941 :host([fitNarrow='fill']) { 942 display: block; 943 width: var(--pu-size-width, 100%); 944 } 945 :host([fitNarrow='fit-content']) { 946 width: fit-content; 947 } 948 :host([fitNarrow='auto']) { 949 width: auto; 950 } 951 } 952 953 /* Foundation component structure */ 954 .box { 955 height: 100%; 956 } 957 .box__content { 958 border-width: var(--pu-box-border-width, 0); 959 border-style: solid; 960 border-color: rgb(from var(--pu-box-border-color) r g b / alpha); 961 border-radius: var(--pu-box-border-radius); 962 color: rgb(from var(--foreground-color) r g b / alpha); 963 background: var(--pu-box-color-gradient); 964 background-color: rgb(from var(--background-color) r g b / alpha); 965 height: 100%; 966 } 967 968 .box__content { 969 padding: var(--padding, 1.5em); 970 } 971 972 /* Adaptive padding - uses clamp with remapped per-side variables */ 973 .box--adaptive-padding .box__content { 974 padding-top: clamp(1em, 100vw * 0.04, var(--padding-top, var(--padding-block-start, 1.5em))); 975 padding-right: clamp(1em, 100vw * 0.04, var(--padding-right, var(--padding-inline-end, 1.5em))); 976 padding-bottom: clamp(1em, 100vw * 0.04, var(--padding-bottom, var(--padding-block-end, 1.5em))); 977 padding-left: clamp(1em, 100vw * 0.04, var(--padding-left, var(--padding-inline-start, 1.5em))); 978 } 979 980 /* Narrow viewport override */ 981 @media only screen and (max-width: 48em) { 982 .box__content { 983 padding: var(--padding-narrow, 1em); 984 } 985 } 986`,te``];class ut{constructor(e){this.mode="token",this.intervalId=null,this.previousTokenValues=[],this.CHECK_INTERVAL=250,this.elementPadding={},this.host=e,e.addController(this)}hostConnected(){this.applyComputedPadding(),this.shouldWatchTokens()&&this.startTokenWatcher()}hostDisconnected(){this.stopTokenWatcher()}shouldWatchTokens(){const e=this.host;return Boolean(e.watchPaddingTokens)}hostUpdate(){this.applyComputedPadding(),this.computePadding();const e=this.shouldWatchTokens(),t=null!==this.intervalId;e&&!t?this.startTokenWatcher():!e&&t&&this.stopTokenWatcher()}startTokenWatcher(){const e=()=>{const e=getComputedStyle(this.host),t=[e.getPropertyValue("--pu-box-space-padding").trim(),e.getPropertyValue("--pu-box-space-padding-top").trim(),e.getPropertyValue("--pu-box-space-padding-right").trim(),e.getPropertyValue("--pu-box-space-padding-bottom").trim(),e.getPropertyValue("--pu-box-space-padding-left").trim(),e.getPropertyValue("--pu-box-space-padding-narrow").trim()],o=t.some(((e,t)=>e!==this.previousTokenValues[t]));o&&(this.previousTokenValues=t,this.computePadding())};e(),this.intervalId=window.setInterval(e,this.CHECK_INTERVAL)}stopTokenWatcher(){null!==this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null)}getMode(){return this.mode}splitCssShorthand(e){const t=e.trim().split(/\s+/);return 1===t.length?[t[0],t[0],t[0],t[0]]:2===t.length?[t[0],t[1],t[0],t[1]]:3===t.length?[t[0],t[1],t[2],t[1]]:t.slice(0,4)}applyComputedPadding(){const e=this.host,t=e.padding,o=e.paddingTop,i=e.paddingRight,r=e.paddingBottom,a=e.paddingLeft,s=e.paddingNarrow,n=Boolean(e.adaptivePadding),l=this.parseToLonghandEmArray(t),d=this.parseSingleToEm(o),p=this.parseSingleToEm(i),c=this.parseSingleToEm(r),u=this.parseSingleToEm(a),h=[d??(l?l[0]:void 0),p??(l?l[1]:void 0),c??(l?l[2]:void 0),u??(l?l[3]:void 0)],g=this.parseToCssShorthandEm(s),m=Boolean(t&&t.length||d||p||c||u||s&&s.length);this.mode=m?n?"adaptive":"fixed":"token",this.elementPadding={top:h[0],right:h[1],bottom:h[2],left:h[3],shorthand:h.every((e=>void 0!==e))?h.join(" "):void 0,narrow:g}}setCssVar(e,t){this.host.style.setProperty(e,t)}removeCssVar(e){this.host.style.removeProperty(e)}computePadding(){const e=getComputedStyle(this.host),t=e.getPropertyValue("--pu-box-space-padding").trim(),o=e.getPropertyValue("--pu-box-space-padding-top").trim(),i=e.getPropertyValue("--pu-box-space-padding-right").trim(),r
986=e.getPropertyValue("--pu-box-space-padding-bottom").trim(),a=e.getPropertyValue("--pu-box-space-padding-left").trim(),s=e.getPropertyValue("--pu-box-space-padding-narrow").trim(),n=t?this.splitCssShorthand(t):void 0,l=[o||(n?n[0]:""),i||(n?n[1]:""),r||(n?n[2]:""),a||(n?n[3]:"")],d=this.elementPadding.top,p=this.elementPadding.right,c=this.elementPadding.bottom,u=this.elementPadding.left,h=this.elementPadding.shorthand,g=this.elementPadding.narrow,m=h?h.split(/\s+/):void 0,b=[l[0]||d||m?.[0]||"",l[1]||p||m?.[1]||"",l[2]||c||m?.[2]||"",l[3]||u||m?.[3]||""],f=b.some((e=>""!==e));if(f){const e=b.map((e=>e||"0"));this.setCssVar("--padding",e.join(" "));const t=["block-start","inline-end","block-end","inline-start"];for(let o=0;o<4;o++)"0"!==e[o]&&this.setCssVar(`--padding-${t[o]}`,e[o])}else{this.removeCssVar("--padding");const e=["block-start","inline-end","block-end","inline-start"];for(const t of e)this.removeCssVar(`--padding-${t}`)}const v=s||g;v?this.setCssVar("--padding-narrow",v):this.removeCssVar("--padding-narrow")}parseToLonghandEmArray(e){if(!e)return;const t=e.trim();if(!t)return;if(t.includes("calc("))return;if(t.includes(",")){const e=t.split(",");if(e.length<1||e.length>4)return;const o=[];for(const t of e){const e=this.parseValueToEm(t);if(!e)return;o.push(e)}return this.expandToFour(o)}if(t.includes(" ")){const e=t.split(/\s+/);if(e.length<1||e.length>4)return;const o=[];for(const t of e){const e=this.parseValueToEm(t);if(!e)return;o.push(e)}return this.expandToFour(o)}const o=this.parseValueToEm(t);return o?this.expandToFour([o]):void 0}parseSingleToEm(e){if(!e)return;const t=e.trim();return t&&!t.includes("calc(")?this.parseValueToEm(t):void 0}parseToCssShorthandEm(e){const t=this.parseToLonghandEmArray(e);return t?t.join(" "):void 0}validateNonNegativeNumeric(e){const t=Number(e);return Number.isFinite(t)&&t>=0}numberToEm(e){const t=Number(e);return 0===t?"0":(t/16).toString()+"em"}lengthToEm(e){const t=e.trim().toLowerCase();if(!t)return;if(t.includes("calc("))return;const o=t.match(/^(\d+(?:\.\d+)?)(px|em|rem)$/);if(!o)return;const i=Number(o[1]),r=o[2];return!Number.isFinite(i)||i<0?void 0:0===i?"0":"em"===r||"rem"===r?i.toString()+"em":(i/16).toString()+"em"}parseValueToEm(e){const t=e.trim();if(t&&!t.includes("calc(")){if(/^\d+(?:\.\d+)?$/.test(t)){if(!this.validateNonNegativeNumeric(t))return;return this.numberToEm(t)}return this.lengthToEm(t)}}expandToFour(e){return 1===e.length?[e[0],e[0],e[0],e[0]]:2===e.length?[e[0],e[1],e[0],e[1]]:3===e.length?[e[0],e[1],e[2],e[1]]:e.slice(0,4)}}class ht extends Ue{constructor(){super(),this.fit="fill",this.fitNarrow="fill",this.adaptivePadding=!1,this.watchPaddingTokens=!1,this._paddingController=new ut(this)}boxStyles(){return void 0!==this.maxWidth&&this.maxWidth>0?this.style.maxWidth=this.maxWidth/16+"em":void 0!==this.maxWidth&&this.maxWidth<=0&&(this.style.maxWidth="100%"),{}}render(){return $` 987 <div 988 part="base box" 989 class="box${J({"box--adaptive-padding":this.adaptivePadding})}" 990 style="${He(this.boxStyles())}" 991 > 992 <div 993 part="content" 994 class="box__content" 995 > 996 <slot></slot> 997 </div> 998 </div> 999 `}}ht.styles=[Me,ct],i([ke({reflect:!0})],ht.prototype,"fit",void 0),i([ke({reflect:!0})],ht.prototype,"fitNarrow",void 0),i([ke({type:Number})],ht.prototype,"maxWidth",void 0),i([ke()],ht.prototype,"padding",void 0),i([ke()],ht.prototype,"paddingNarrow",void 0),i([ke()],ht.prototype,"paddingTop",void 0),i([ke()],ht.prototype,"paddingRight",void 0),i([ke()],ht.prototype,"paddingBottom",void 0),i([ke()],ht.prototype,"paddingLeft",void 0),i([ke({type:Boolean})],ht.prototype,"adaptivePadding",void 0),i([ke({type:Boolean})],ht.prototype,"watchPaddingTokens",void 0);const gt=te` 1000 @media screen and (min-width: 48em) { 1001 .flex-justify--start { 1002 justify-content: start; 1003 } 1004 .flex-justify--center { 1005 justify-content: center; 1006 } 1007 .flex-justify--end { 1008 justify-content: end; 1009 } 1010 .flex-justify--space-evenly { 1011 justify-content: space-evenly; 1012 } 1013 .flex-justify--space-between { 1014 justify-content: space-between; 1015 } 1016 .flex-justify--space-around { 1017 justify-content: space-around; 1018 } 1019 .flex-justify--stretch { 1020 justify-content: stretch; 1021 } 1022 } 1023`,mt=te` 1024 @media screen and (min-width: 48em) { 1025 .flex-align--start { 1026 align-items: start; 1027 } 1028 .flex-align--center { 1029 align-items: center; 1030 } 1031 .flex-align--end { 1032 align-items: end; 1033 } 1034 .flex-align--baseline { 1035 align-items: baseline; 1036 } 1037 .flex-align--stretch { 1038 align-items: stretch; 1039 } 1040 } 1041`,bt=te` 1042 @media screen and (max-width: 47.9375em) { 1043 .flex-narrow-justify--start { 1044 justify-content: start; 1045 } 1046 .flex-narrow-justify--center { 1047 justify-content: center; 1048 } 1049 .flex-narrow-justify--end { 1050 justify-content: end; 1051 } 1052 .flex-narrow-justify--space-evenly { 1053 justify-content: space-evenly; 1054 } 1055 .flex-narrow-justify--space-between { 1056 justify-content: space-between; 1057 } 1058 .flex-narrow-justify--space-around { 1059 justify-content: space-around; 1060 } 1061 .flex-narrow-justify--stretch { 1062 justify-content: stretch; 1063 } 1064 } 1065`,ft=te` 1066 @media screen and (max-width: 47.9375em) { 1067 .flex-narrow-align--start { 1068 align-items: start; 1069 } 1070 .flex-narrow-align--center { 1071 align-items: center; 1072 } 1073 .flex-narrow-align--end { 1074 align-items: end; 1075 } 1076 .flex-narrow-align--baseline { 1077 align-items: baseline; 1078 } 1079 .flex-narrow-align--stretch { 1080 align-items: stretch; 1081 } 1082 } 1083`,vt=te` 1084 @media screen and (max-width: 64.9375em) { 1085 .flex-narrow-justify--start { 1086 justify-content: start; 1087 } 1088 .flex-narrow-justify--center { 1089 justify-content: center; 1090 } 1091 .flex-narrow-justify--end { 1092 justify-content: end; 1093 } 1094 .flex-narrow-justify--space-evenly { 1095 justify-content: space-evenly; 1096 } 1097 .flex-narrow-justify--space-between { 1098 justify-content: space-between; 1099 } 1100 .flex-narrow-justify--space-around { 1101 justify-content: space-around; 1102 } 1103 .flex-narrow-justify--stretch { 1104 justify-content: stretch; 1105 } 1106 } 1107`,yt=te` 1108 @media screen and (max-width: 64.9375em) { 1109 .flex-narrow-align--start { 1110 align-items: start; 1111 } 1112 .flex-narrow-align--center { 1113 align-items: center; 1114 } 1115 .flex-narrow-align--end { 1116 align-items: end; 1117 } 1118 .flex-narrow-align--baseline { 1119 align-items: baseline; 1120 } 1121 .flex-narrow-align--stretch { 1122 align-items: stretch; 1123 } 1124 } 1125`,wt=[te` 1126 /* Host element responsive fit behavior */ 1127 :host, 1128 :host([fit='fill']) { 1129 display: block; 1130 width: 100%; 1131 height: 100%; 1132 } 1133 :host([fit='fit-content']) { 1134 height: fit-content; 1135 } 1136 :host([fit='auto']) { 1137 height: auto; 1138 } 1139 1140 @media only screen and (max-width: 48em) { 1141 :host, 1142 :host([fitNarrow='fill']) { 1143 display: block; 1144 width: 100%; 1145 height: 100%; 1146 } 1147 :host([fitNarrow='fit-content']) { 1148 height: fit-content; 1149 } 1150 :host([fitNarrow='auto']) { 1151 height: auto; 1152 } 1153 } 1154 1155 /* Flex container foundation */ 1156 .vertical-stack { 1157 display: flex; 1158 flex-direction: column; 1159 height: 100%; 1160 } 1161 1162 @media screen and (min-width: 48.06em) { 1163 .vertical-stack { 1164 row-gap: var(--pu-grid-gap-y, var(--gap-y, 1em)); 1165 } 1166 } 1167 1168 @media screen and (max-width: 48em) { 1169 .vertical-stack { 1170 row-gap: var(--pu-grid-gap-y-narrow, var(--gap-y-narrow, 1em)); 1171 } 1172 } 1173 1174 /* Slotted element foundation */ 1175 ::slotted(*) { 1176 flex-shrink: 1; 1177 height: auto; 1178 } 1179`,gt,bt,mt,ft,te` 1180 /* Value-Based Property API - Justify stretch behavior for slotted elements */ 1181 .vertical-stack.flex-justify--stretch ::slotted(*) { 1182 flex-grow: 1; 1183 flex-shrink: 0; 1184 } 1185 1186 /* Value-Based Property API - Align stretch behavior for slotted elements */ 1187 .vertical-stack.flex-align--stretch ::slotted(*) { 1188 display: block; 1189 width: 100%; 1190 } 1191`];class xt extends Ue{constructor(){super(...arguments),this.fit="fill",this.fitNarrow="fill",this.align="stretch",this.justify="start"}stackStyles(){let e={};return this.spacing&&(e={...e,"--gap-y":Number(this.spacing)/16+"em"}),this.spacingNarrow?e={...e,"--gap-y-narrow":Number(this.spacingNarrow)/16+"em"}:this.spacing&&(e={...e,"--gap-y-narrow":Number(this.spacing)/16+"em"}),e}stackClasses(){const e={};return e["flex-justify--"+this.justify]=!0,e["flex-align--"+this.align]=!0,this.justifyNarrow?e["flex-narrow-justify--"+this.justifyNarrow]=!0:e["flex-narrow-justify--"+this.justify]=!0,this.alignNarrow?e["flex-narrow-align--"+this.alignNarrow]=!0:e["flex-narrow-align--"+this.align]=!0,e}render(){return $` 1192 <div 1193 part="base vertical-stack" 1194 class="vertical-stack${J(this.stackClasses())}" 1195 style="${He(this.stackStyles())}" 1196 > 1197 <slot></slot> 1198 </div> 1199 `}}xt.styles=[Me,wt],i([ke({reflect:!0})],xt.prototype,"fit",void 0),i([ke({reflect:!0})],xt.prototype,"fitNarrow",void 0),i([ke()],xt.prototype,"spacing",void 0),i([ke()],xt.prototype,"spacingNarrow",void 0),i([ke()],xt.prototype,"align",void 0),i([ke()],xt.prototype,"justify",void 0),i([ke()],xt.prototype,"alignNarrow",void 0),i([ke()],xt.prototype,"justifyNarrow",void 0);class _t extends Ue{get mobileAdapt(){return this.adaptNarrow}set mobileAdapt(e){this._handleDeprecated("mobileAdapt",e)}get mobileContentJustify(){return this.contentJustifyNarrow}set mobileContentJustify(e){this._handleDeprecated("mobileContentJustify",e)}get mobilePadding(){return this.paddingNarrow}set mobilePadding(e){this._handleDeprecated("mobilePadding",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}constructor(){super(),this.height="medium",this.adaptNarrow=!1,this.contentPosition="over",this.contentFullWidth=!1,this.contentAlign="center",this.contentJustify="center",this.contentAdaptivePadding=!1,this._contentHidden=!0,this.deprecatedPropertyMap=[{old:"mobileAdapt",new:"adaptNarrow",defaultValue:!1},{old:"mobileContentJustify",new:"contentJustifyNarrow",defaultValue:void 0},{old:"mobilePadding",new:"paddingNarrow",defaultValue:void 0}],this._hasContentSlot=new Xe(this,"content"),this.addEventListener("media-details",this.eventNotifications)}async eventNotifications(e){"media-details"===e.type&&(e.detail.mediaAspectRatio&&(this._mediaAspectRatio=e.detail.mediaAspectRatio.toString()),e.detail.narrowMediaAspectRatio?this._narrowMediaAspectRatio=e.detail.narrowMediaAspectRatio.toString():e.detail.mediaAspectRatio&&(this._mediaAspectRatio=e.detail.mediaAspectRatio.toString()))}handleSlotchange(e){e.target&&"content"===e.target.getAttribute("name")&&(this._contentHidden=!1)}bannerStyles(){let e={};return this._mediaAspectRatio&&(e={...e,"--pu-aspect-ratio":this._mediaAspectRatio}),this._narrowMediaAspectRatio?e={...e,"--pu-banner-media-aspect-narrow":this._narrowMediaAspectRatio}:this._mediaAspectRatio&&(e={...e,"--pu-banner-media-aspect-narrow":this._mediaAspectRatio}),e}bannercontentStyles(){let e={};return e={...e,"--pu-size-width":this.contentFullWidth?"100%":"auto"},e}contentOuter(){return $` 1200 ${this._hasContentSlot.test("content")?$` 1201 <pu-box 1202 part="banner-content" 1203 exportparts="box-base,box-content" 1204 class="banner__content" 1205 padding=${"over"===this.contentPosition&&this.contentOuterPadding?this.contentOuterPadding:"0"} 1206 paddingNarrow="0" 1207 > 1208 ${this.contentInner(this.contentFullWidth)} 1209 </pu-box> 1210 `:z} 1211 `}contentInner(e){return $` 1212 <pu-box 1213 part="banner-caption" 1214 exportparts="box-base,box-content" 1215 class="banner__caption" 1216 padding=${Ze(this.contentInnerPadding)} 1217 paddingNarrow=${Ze(this.paddingNarrow)} 1218 ?adaptivePadding=${this.contentAdaptivePadding} 1219 width="${e?"fill":"fit-content"}" 1220 > 1221 <pu-vertical-stack 1222 part="banner-caption-layout" 1223 exportparts="layout-base" 1224 class="caption-inner" 1225 fit="fill" 1226 align=${this.contentJustify} 1227 alignNarrow=${Ze(this.contentJustifyNarrow)} 1228 spacing="${Ze(this.contentSpacing)}" 1229 > 1230 <slot 1231 name="content" 1232 @slotchange=${this.handleSlotchange} 1233 ></slot> 1234 </pu-vertical-stack> 1235 </pu-box> 1236 `}content(){return"over"===this.contentPosition||"side"===this.contentPosition?$` ${this.contentOuter()} `:$` ${this.contentInner(!0)} `}render(){const e="under"===this.contentPosition||"above"===this.contentPosition||"side"===this.contentPosition;return $` 1237 <div 1238 part="base banner" 1239 class="${J({banner:!0,"media-narrow-adapt":this.adaptNarrow,"content--inline":e,[`content-position--${this.contentPosition}`]:e,[`media-height--${this.height}`]:!0})}" 1240 style="${He(this.bannerStyles())}" 1241 > 1242 <div 1243 part="container" 1244 class="banner__container" 1245 > 1246 <div 1247 part="banner-media" 1248 class="banner__media" 1249 > 1250 <slot name="media"></slot> 1251 </div> 1252 <div 1253 part="content" 1254 class="banner__content${J({"content--hiddent":this._contentHidden,[`content-align--${this.contentAlign}`]:!0,[`content-justify--${this.contentJustify}`]:!0})}" 1255 style="${He(this.bannercontentStyles())}" 1256 > 1257 ${this.content()} 1258 </div> 1259 </div> 1260 </div> 1261 `}}
1261_t.styles=[Me,pt],_t.dependencies={"pu-box":ht,"pu-vertical-stack":xt},i([ke()],_t.prototype,"height",void 0),i([ke({type:Boolean})],_t.prototype,"adaptNarrow",void 0),i([ke()],_t.prototype,"contentPosition",void 0),i([ke({type:Boolean})],_t.prototype,"contentFullWidth",void 0),i([ke()],_t.prototype,"contentAlign",void 0),i([ke()],_t.prototype,"contentJustify",void 0),i([ke()],_t.prototype,"contentJustifyNarrow",void 0),i([ke()],_t.prototype,"contentSpacing",void 0),i([ke({type:Boolean})],_t.prototype,"contentAdaptivePadding",void 0),i([ke()],_t.prototype,"contentInnerPadding",void 0),i([ke()],_t.prototype,"contentOuterPadding",void 0),i([ke()],_t.prototype,"paddingNarrow",void 0),i([Ce()],_t.prototype,"_mediaAspectRatio",void 0),i([Ce()],_t.prototype,"_narrowMediaAspectRatio",void 0),i([Ce()],_t.prototype,"_contentHidden",void 0),i([ke({type:Boolean})],_t.prototype,"mobileAdapt",null),i([ke()],_t.prototype,"mobileContentJustify",null),i([ke()],_t.prototype,"mobilePadding",null),_t.define("pu-banner");const kt=te` 1262 .placeholder { 1263 height: 100%; 1264 width: 100%; 1265 } 1266 .placeholder-inner { 1267 background-color: rgb( 1268 from var(--pu-skeleton-color-background, var(--pu-color-background, hsl(240, 8%, 5%))) r g b / alpha 1269 ); 1270 display: flex; 1271 justify-content: center; 1272 align-items: center; 1273 height: 100%; 1274 width: 100%; 1275 } 1276 .placeholder .icon { 1277 color: rgb(from var(--pu-skeleton-color-foreground, var(--pu-color-foreground, hsl(240, 5%, 84%))) r g b / alpha); 1278 display: block; 1279 height: 50%; 1280 width: 50%; 1281 } 1282`,Ct=[te` 1283 /* Foundation image styling */ 1284 .image { 1285 object-fit: cover; 1286 height: 100%; 1287 width: 100%; 1288 max-width: 100%; 1289 } 1290 1291 /* Responsive image art direction (static responsive behavior) */ 1292 .tablet-up { 1293 display: block; 1294 } 1295 .tablet-down { 1296 display: none; 1297 } 1298 1299 @media only screen and (max-width: 48em) { 1300 .tablet-up { 1301 display: none; 1302 } 1303 .tablet-down { 1304 display: block; 1305 } 1306 } 1307`,kt,te` 1308 /* API: narrow image fallback behavior (boolean property: narrowSrc) */ 1309 @media only screen and (max-width: 48em) { 1310 .only-tablet-up { 1311 display: block; 1312 } 1313 } 1314`];class $t extends Ue{constructor(){super(...arguments),this.alt="",this.width=100,this.height=100,this.heightNarrow=100,this.widthNarrow=100,this.load="lazy"}getAspectRatio(){return{default:(this.width/this.height).toString(),small:(this.widthNarrow/this.heightNarrow).toString()}}wideImage(){return this.src?$` 1315 <img 1316 part="banner-image tablet-up" 1317 alt="${this.alt}" 1318 src="${Ze(this.src)}" 1319 srcset="${Ze(this.srcSet)}" 1320 sizes="${Ze(this.sizes)}" 1321 width="${this.width}" 1322 height="${this.height}" 1323 loading="${this.load}" 1324 class="${J({image:!0,"tablet-up":!0,"only-tablet-up":!this.srcNarrow})}" 1325 /> 1326 `:$` 1327 <div 1328 class="${J({image:!0,placeholder:!0,wide:!0,"without-narrow":!this.srcNarrow})}" 1329 style="aspect-ratio: ${this.width/this.height}" 1330 > 1331 <div class="placeholder-inner"> 1332 <svg 1333 class="icon" 1334 xmlns="http://www.w3.org/2000/svg" 1335 height="1em"
1336 viewBox="0 0 576 512" 1337 fill="currentcolor" 1338 > 1339 <path 1340 d="M70.5 138.1C31 172.2 16 219.1 16 272c0 52 18.4 91.6 46.9 118.3C91.6 417.2 131.5 432 176 432h8.4c18.2 0 34.8-10.3 42.9-26.5l23.2-46.3C257.6 345 272.1 336 288 336s30.4 9 37.5 23.2l23.2 46.3c8.1 16.3 24.8 26.5 42.9 26.5H400c44.5 0 84.4-14.8 113.1-41.7C541.6 363.6 560 324 560 272c0-52.9-15-99.8-54.5-133.9C465.6 103.6 398.1 80 288 80s-177.6 23.6-217.5 58.1zM0 272C0 160 64 64 288 64s288 96 288 208s-80 176-176 176h-8.4c-24.2 0-46.4-13.7-57.2-35.4l-23.2-46.3c-4.4-8.8-13.3-14.3-23.2-14.3s-18.8 5.5-23.2 14.3l-23.2 46.3c-10.8 21.7-33 35.4-57.2 35.4H176C80 448 0 384 0 272zm160 32a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm0-112a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm304 64a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm-112 0a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z" 1341 /> 1342 </svg> 1343 </div> 1344 </div> 1345 `}render(){return $` 1346 ${this.src?$` 1347 <img 1348 part="banner-image tablet-up" 1349 alt="${this.alt}" 1350 src="${Ze(this.src)}" 1351 srcset="${Ze(this.srcSet)}" 1352 sizes="${Ze(this.sizes)}" 1353 height="${this.height}" 1354 width="${this.width}" 1355 loading="${this.load}" 1356 class="${J({image:!0,"tablet-up":!0,"only-tablet-up":!this.srcNarrow})}" 1357 /> 1358 `:$` 1359 <div 1360 class="${J({image:!0,wide:!0,placeholder:!0,"only-tablet-up":!this.srcNarrow})}" 1361 style="aspect-ratio: ${this.width/this.height}" 1362 > 1363 <div class="placeholder-inner"> 1364 <svg 1365 class="icon" 1366 xmlns="http://www.w3.org/2000/svg" 1367 height="1em"
1368 viewBox="0 0 576 512" 1369 fill="currentcolor" 1370 > 1371 <path 1372 d="M70.5 138.1C31 172.2 16 219.1 16 272c0 52 18.4 91.6 46.9 118.3C91.6 417.2 131.5 432 176 432h8.4c18.2 0 34.8-10.3 42.9-26.5l23.2-46.3C257.6 345 272.1 336 288 336s30.4 9 37.5 23.2l23.2 46.3c8.1 16.3 24.8 26.5 42.9 26.5H400c44.5 0 84.4-14.8 113.1-41.7C541.6 363.6 560 324 560 272c0-52.9-15-99.8-54.5-133.9C465.6 103.6 398.1 80 288 80s-177.6 23.6-217.5 58.1zM0 272C0 160 64 64 288 64s288 96 288 208s-80 176-176 176h-8.4c-24.2 0-46.4-13.7-57.2-35.4l-23.2-46.3c-4.4-8.8-13.3-14.3-23.2-14.3s-18.8 5.5-23.2 14.3l-23.2 46.3c-10.8 21.7-33 35.4-57.2 35.4H176C80 448 0 384 0 272zm160 32a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm0-112a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm304 64a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm-112 0a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z" 1373 /> 1374 </svg> 1375 </div> 1376 </div> 1377 `} 1378 ${this.srcNarrow?$` <img 1379 part="banner-image tablet-down" 1380 alt="${Ze(this.alt)}" 1381 src="${Ze(this.srcNarrow)}" 1382 srcset="${Ze(this.srcSetNarrow)}" 1383 sizes="${Ze(this.sizesNarrow)}" 1384 height="${this.heightNarrow}" 1385 width="${this.widthNarrow}" 1386 loading="${this.load}" 1387 class="image tablet-down" 1388 />`:""} 1389 `}}$t.styles=[Me,Ct],i([ke()],$t.prototype,"alt",void 0),i([ke()],$t.prototype,"src",void 0),i([ke()],$t.prototype,"srcSet",void 0),i([ke()],$t.prototype,"sizes",void 0),i([ke({type:Number})],$t.prototype,"width",void 0),i([ke({type:Number})],$t.prototype,"height",void 0),i([ke()],$t.prototype,"srcNarrow",void 0),i([ke()],$t.prototype,"srcSetNarrow",void 0),i([ke()],$t.prototype,"sizesNarrow",void 0),i([ke({type:Number})],$t.prototype,"heightNarrow",void 0),i([ke({type:Number})],$t.prototype,"widthNarrow",void 0),i([ke()],$t.prototype,"load",void 0),$t.define("pu-banner-image");const St=new WeakMap,zt=new WeakMap,At=new WeakMap,Pt=new WeakSet,Nt=new WeakMap;class Et{constructor(e,t){this.handleFormData=e=>{const t=this.options.disabled(this.host),o=this.options.name(this.host),i=this.options.value(this.host),r="pu-button"===this.host.tagName.toLowerCase();this.host.isConnected&&!t&&!r&&"string"==typeof o&&o.length>0&&void 0!==i&&(Array.isArray(i)?i.forEach((t=>{e.formData.append(o,t.toString())})):e.formData.append(o,i.toString()))},this.handleFormSubmit=e=>{const t=this.options.disabled(this.host),o=this.options.reportValidity;this.form&&!this.form.noValidate&&St.get(this.form)?.forEach((e=>{this.setUserInteracted(e,!0)})),!this.form||this.form.noValidate||t||o(this.host)||(e.preventDefault(),e.stopImmediatePropagation())},this.handleInteraction=e=>{const t=Nt.get(this.host);t.includes(e.type)||t.push(e.type),t.length===this.options.assumeInteractionOn.length&&this.setUserInteracted(this.host,!0)},this.checkFormValidity=()=>{if(this.form&&!this.form.noValidate){const e=this.form.querySelectorAll("*");for(const t of e)if("function"==typeof t.checkValidity&&!t.checkValidity())return!1}return!0},this.reportFormValidity=()=>{if(this.form&&!this.form.noValidate){const e=this.form.querySelectorAll("*");for(const t of e)if("function"==typeof t.reportValidity&&!t.reportValidity())return!1}return!0},(this.host=e).addController(this),this.options={form:e=>{const t=e.form;if(t){const o=e.getRootNode().querySelector(`#${t}`);if(o)return o}return e.closest("form")},name:e=>e.name,value:e=>e.value,defaultValue:e=>e.defaultValue,disabled:e=>e.disabled??!1,reportValidity:e=>"function"!=typeof e.reportValidity||e.reportValidity(),checkValidity:e=>"function"!=typeof e.checkValidity||e.checkValidity(),setValue:(e,t)=>e.value=t,assumeInteractionOn:["pu-input"],...t}}hostConnected(){const e=this.options.form(this.host);e&&this.attachForm(e),Nt.set(this.host,[]),this.options.assumeInteractionOn.forEac
vendor: 6,386 bytes, lines 1389-1494
1389h((e=>{this.host.addEventListener(e,this.handleInteraction)}))}hostDisconnected(){this.detachForm(),Nt.delete(this.host),this.options.assumeInteractionOn.forEach((e=>{this.host.removeEventListener(e,this.handleInteraction)}))}hostUpdated(){const e=this.options.form(this.host);e||this.detachForm(),e&&this.form!==e&&(this.detachForm(),this.attachForm(e)),this.host.hasUpdated&&this.setValidity(this.host.validity.valid)}attachForm(e){e?(this.form=e,St.has(this.form)?St.get(this.form).add(this.host):St.set(this.form,new Set([this.host])),this.form.addEventListener("formdata",this.handleFormData),this.form.addEventListener("submit",this.handleFormSubmit),zt.has(this.form)||(zt.set(this.form,this.form.reportValidity),this.form.reportValidity=()=>this.reportFormValidity()),At.has(this.form)||(At.set(this.form,this.form.checkValidity),this.form.checkValidity=()=>this.checkFormValidity())):this.form=void 0}detachForm(){if(!this.form)return;const e=St.get(this.form);e&&(e.delete(this.host),e.size<=0&&(this.form.removeEventListener("formdata",this.handleFormData),this.form.removeEventListener("submit",this.handleFormSubmit),zt.has(this.form)&&(this.form.reportValidity=zt.get(this.form),zt.delete(this.form)),At.has(this.form)&&(this.form.checkValidity=At.get(this.form),At.delete(this.form)),this.form=void 0))}setUserInteracted(e,t){t?Pt.add(e):Pt.delete(e),e.requestUpdate()}doAction(e,t){if(this.form){const o=document.createElement("button");o.type=e,o.style.position="absolute",o.style.width="0",o.style.height="0",o.style.clipPath="inset(50%)",o.style.overflow="hidden",o.style.whiteSpace="nowrap",t&&(o.name=t.name,o.value=t.value,["formaction","formenctype","formmethod","formnovalidate","formtarget"].forEach((e=>{t.hasAttribute(e)&&o.setAttribute(e,t.getAttribute(e))}))),this.form.append(o),o.click(),o.remove()}}getForm(){return this.form??null}submit(e){this.doAction("submit",e)}setValidity(e){const t=this.host,o=Boolean(Pt.has(t)),i=Boolean(t.required);t.toggleAttribute("data-required",i),t.toggleAttribute("data-optional",!i),t.toggleAttribute("data-invalid",!e),t.toggleAttribute("data-valid",e),t.toggleAttribute("data-user-invalid",!e&&o),t.toggleAttribute("data-user-valid",e&&o)}updateValidity(){const e=this.host;this.setValidity(e.validity.valid)}emitInvalidEvent(e){const t=new CustomEvent("pu-invalid",{bubbles:!1,composed:!1,cancelable:!0,detail:{}});e||t.preventDefault(),this.host.dispatchEvent(t)||e?.preventDefault()}}const Bt=Object.freeze({badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:!0,valueMissing:!1});Object.freeze({...Bt,valid:!1,valueMissing:!0}),Object.freeze({...Bt,valid:!1,customError:!0});const Tt=[te` 1390 :host { 1391 font-size: 16px; 1392 --font-family: var(--pu-button-font-family, var(--pu-text-body-family, inherit)); 1393 --font-weight: var(--pu-button-font-weight, var(--pu-font-weight-700, 700)); 1394 --foreground-color: var(--pu-button-color-foreground, var(--pu-color-background, rgb(255, 255, 255))); 1395 --background-color: var(--pu-button-color-background, var(--pu-color-foreground, rgb(0, 0, 0))); 1396 --border-color: var(--pu-button-border-color, var(--background-color, var(--foreground-color, rgb(0, 0, 0)))); 1397 --border-radius: var(--pu-button-border-radius, var(--pu-border-radius)); 1398 --border-width: var(--pu-button-border-width, var(--pu-border-width, 0.0625em)); 1399 } 1400 :host([fullwidth]), 1401 :host([fullwidthnarrow]) { 1402 width: 100%; 1403 } 1404 1405 :host([hideWhenExtended]) { 1406 display: block; 1407 overflow: hidden; 1408 width: 0; 1409 height: 0 !important; 1410 margin: -1px; 1411 padding: 0; 1412 border: 0; 1413 clip: rect(0 0 0 0); 1414 } 1415 /* Base Button Styles */ 1416 .button { 1417 cursor: pointer; 1418 font-family: var(--font-family); 1419 font-weight: var(--font-weight); 1420 line-height: 1; 1421 letter-spacing: 0.06em; 1422 color: rgb(from var(--foreground-color) r g b / alpha); 1423 background-color: rgb(from var(--background-color) r g b / alpha); 1424 background-clip: padding-box; 1425 border-color: rgb(from var(--border-color) r g b / alpha); 1426 border-radius: var(--border-radius); 1427 border-width: var(--border-width); 1428 border-style: solid; 1429 outline: none; 1430 text-decoration: none; 1431 min-height: var(--pu-button-size-height, var(--pu-size-height, 3em)); 1432 padding: var(--pu-button-space-padding, 0 2em); 1433 width: var(--pu-button-size-width, auto); 1434 appearance: none; 1435 --webkit-appearance: none; 1436 } 1437 .button__label { 1438 font-size: var(--pu-button-font-size, var(--pu-text-body-size-md, 1em)); 1439 } 1440 1441 .button > * { 1442 /* Child elements */ 1443 --pu-color-foreground: var(--foreground-color); 1444 } 1445 1446 a.button { 1447 display: inline-flex; 1448 align-items: center; 1449 line-height: normal; 1450 } 1451 1452 .button__label { 1453 display: flex; 1454 gap: 0.25em; 1455 align-items: center; 1456 justify-content: center; 1457 width: 100%; 1458 } 1459 1460 .button__label ::slotted(*) { 1461 --pu-text-space-margin-bottom: 0; 1462 } 1463 1464 .button:active { 1465 outline: none; 1466 } 1467 1468 .button:not(.btn--plain):not(.btn--plain-underline):not(.btn--outline):hover { 1469 box-shadow: 0 0 0 0.0625em rgb(from var(--pu-color-button-hover, var(--background-color)) r g b / alpha); 1470 } 1471 1472 .button:focus-visible:not([disabled]):not(.btn--plain):not(.btn--plain-underline), 1473 .button:focus-visible:not([disabled]).btn--extend-hidden::after { 1474 outline: none; 1475 border-color: rgb(from var(--pu-color-focus-border, inherit) r g b / alpha); 1476 box-shadow: 1477 0 0 0 0.0625em rgb(from var(--pu-color-focus-background) r g b / alpha), 1478 0 0 0 0.25em rgb(from var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)) r g b / alpha); 1479 } 1480 1481 .button__spinner { 1482 animation-name: spin; 1483 animation-duration: 500ms; 1484 animation-timing-function: cubic-bezier(0, 0, 1, 1); 1485 animation-iteration-count: infinite; 1486 animation-direction: both; 1487 fill: currentColor; 1488 height: 1em; 1489 left: 50%; 1490 margin: calc(1em / 2 * -1) 0 0 calc(1em / 2 * -1); 1491 position: absolute; 1492 top: 50%; 1493 width: 1em; 1494 }
1495 @keyframes spin { 1496 to { 1497 transform: rotate(1turn); 1498 } 1499 } 1500 1501 /* Multi-Variant Child Element Styles - Kept in component scope since it affects multiple variants */ 1502 .btn--plain > *, 1503 .btn--plain-underline > *, 1504 .btn--outline > * { 1505 /* Child elements */ 1506 --pu-color-foreground: var(--background-color); 1507 } 1508`,te` 1509 /* Button Outline */ 1510 :host { 1511 --outline-foreground-color: var(--pu-button-color-background, var(--pu-color-background-inverse, inherit)); 1512 --outline-background-color-hover: var(--pu-button-color-background, var(--pu-color-foreground, currentColor)); 1513 } 1514 1515 .btn--outline { 1516 background-color: transparent; 1517 border-color: rgb(from var(--outline-foreground-color) r g b / alpha); 1518 color: rgb(from var(--outline-foreground-color) r g b / alpha); 1519 } 1520 1521 .btn--outline:hover { 1522 border-color: transparent; 1523 box-shadow: 0 0 0 0.0625em 1524 rgb(from var(--pu-color-button-hover, var(--outline-background-color-hover)) r g b / alpha); 1525 } 1526 1527 .btn--outline > * { 1528 --pu-color-foreground: rgb(from var(--pu-button-color-background, inherit) r g b / alpha); 1529 } 1530 1531 .btn--outline[disabled], 1532 .btn--outline[disabled]:hover { 1533 cursor: default; 1534 box-shadow: none; 1535 color: rgb(from var(--pu-color-background-disabled, hsl(240, 4%, 46%)) R G B / alpha); 1536 border-color: rgb(from var(--pu-color-background-disabled, hsl(240, 4%, 46%)) R G B / alpha); 1537 background-color: transparent; 1538 } 1539`,te` 1540 /* Button Plain, Button Plain Underline */ 1541 .btn--plain, 1542 .btn--plain-underline { 1543 border: none; 1544 padding: 0; 1545 height: auto; 1546 background-color: transparent; 1547 color: rgb(from var(--pu-color-foreground) r g b / alpha); 1548 } 1549 1550 /* Button Plain Underline */ 1551 .btn--plain-underline { 1552 text-decoration: underline; 1553 text-underline-offset: 0.2em; 1554 transition: text-decoration-color 0.2s; 1555 } 1556 1557 .btn--plain-underline:not([disabled]):hover { 1558 text-decoration-color: rgb(from var(--pu-color-foreground) r g b / 0.5); 1559 } 1560 1561 /* Button Plain */ 1562 .btn--plain:not(.btn--plain-underline):not([disabled]):hover, 1563 .btn--plain:not(.btn--plain-underline):not([disabled]):focus-visible { 1564 text-decoration-line: underline; 1565 text-underline-offset: 0.2em; 1566 } 1567 1568 .btn--plain:not([disabled]):hover, 1569 .btn--plain:not([disabled]):focus-visible { 1570 text-decoration-thickness: 0.0625em; 1571 } 1572 1573 .btn--plain-underline:not([disabled]):focus-visible { 1574 outline: none; 1575 box-shadow: none; 1576 text-decoration-thickness: 0.125em; 1577 text-underline-offset: 0.25em; 1578 text-decoration-color: var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)); 1579 } 1580 1581 /* Focus-visible styles for both plain and plain-underline buttons */ 1582 .btn--plain:not([disabled]):focus-visible, 1583 .btn--plain-underline:not([disabled]):focus-visible { 1584 text-decoration-color: var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)); 1585 text-decoration-thickness: 0.125em; 1586 } 1587 1588 .btn--plain[disabled], 1589 .btn--plain-underline[disabled], 1590 .btn--plain[disabled]:hover, 1591 .btn--plain-underline[disabled]:hover, 1592 .btn--plain.button--disabled, 1593 .btn--plain-underline.button--disabled { 1594 background-color: transparent; 1595 color: rgb(from var(--pu-color-foreground-disabled, rgb(160, 160, 160)) r g b / alpha); 1596 } 1597`,te` 1598 /* Component Public API Classes - tied to component properties */ 1599 1600 /* Boolean Property Classes */ 1601 .btn--fullwidth { 1602 width: 100%; 1603 } 1604 1605 .btn--extend:not([disabled]):after { 1606 content: ''; 1607 position: absolute; 1608 top: 0; 1609 left: 0; 1610 height: 100%; 1611 width: 100%; 1612 z-index: 20; 1613 cursor: pointer; 1614 } 1615 1616 /* Disabled State Styles */ 1617 .button--disabled { 1618 pointer-events: none; 1619 } 1620 1621 .button[disabled], 1622 .button[disabled]:hover, 1623 .button--disabled, 1624 .button--disabled:hover { 1625 cursor: default; 1626 } 1627 1628 .button[disabled]:not(.btn--plain):not(.btn--plain-underline):not(.btn--outline), 1629 .button[disabled]:not(.btn--plain):not(.btn--plain-underline):not(.btn--outline):hover, 1630 .button--disabled:not(.btn--plain):not(.btn--plain-underline):not(.btn--outline), 1631 .button--disabled:not(.btn--plain):not(.btn--plain-underline):not(.btn--outline):hover { 1632 border: none; 1633 box-shadow: none; 1634 background-color: rgb(from var(--pu-button-border-color, var(--background-color)) r g b / 0.5); 1635 } 1636 1637 /* Loading State Styles */ 1638 .btn--loading { 1639 position: relative; 1640 } 1641 .btn--loading ::slotted(*), 1642 .btn--loading .button__label { 1643 opacity: 0; 1644 } 1645 1646 /* Property Value Classes - Size variants */ 1647 .btn--size-large:not(.btn--plain):not(.btn--plain-underline) { 1648 padding: var(--pu-button-space-padding, 0 2em); 1649 --pu-size-height: 3em; 1650 } 1651 .btn--size-medium:not(.btn--plain):not(.btn--plain-underline) { 1652 padding: var(--pu-button-space-padding, 0 1.5em); 1653 --pu-size-height: 2.75em; 1654 } 1655 .btn--size-small:not(.btn--plain):not(.btn--plain-underline) { 1656 padding: var(--pu-button-space-padding, 0 1em); 1657 --pu-size-height: 2.5em; 1658 } 1659 .btn--size-xsmall:not(.btn--plain):not(.btn--plain-underline) { 1660 padding: var(--pu-button-space-padding, 0 0.75em); 1661 --pu-size-height: 2em; 1662 } 1663 .btn--size-slim:not(.btn--plain):not(.btn--plain-underline) { 1664 padding: var(--pu-button-space-padding, 0 0.75em); 1665 --pu-size-height: 1.5em; 1666 } 1667 1668 .btn--size-large:not(.btn--plain):not(.btn--plain-underline) .button__label { 1669 font-size: var(--pu-button-font-size, var(--pu-text-body-size-md, 1em)); 1670 } 1671 .btn--size-medium:not(.btn--plain):not(.btn--plain-underline) .button__label { 1672 font-size: var(--pu-button-font-size, var(--pu-text-body-size-sm, 0.875em)); 1673 } 1674 .btn--size-small:not(.btn--plain):not(.btn--plain-underline) .button__label { 1675 font-size: var(--pu-button-font-size, var(--pu-text-body-size-sm, 0.875em)); 1676 font-weight: var(--pu-button-font-weight, var(--pu-font-we
1676ight-400, 400)); 1677 } 1678 .btn--size-xsmall:not(.btn--plain):not(.btn--plain-underline) .button__label { 1679 font-size: var(--pu-button-font-size, var(--pu-text-body-size-xs, 0.75em)); 1680 font-weight: var(--pu-button-font-weight, var(--pu-font-weight-400, 400)); 1681 } 1682 .btn--size-slim:not(.btn--plain):not(.btn--plain-underline) .button__label { 1683 font-weight: var(--pu-button-font-weight, var(--pu-font-weight-400)); 1684 font-size: var(--pu-button-font-size, var(--pu-text-body-size-xs, 0.75em)); 1685 } 1686 .btn--size-large.btn--plain .button__label, 1687 .btn--size-medium.btn--plain .button__label, 1688 .btn--size-small.btn--plain .button__label { 1689 font-size: var(--pu-button-font-size, var(--pu-text-body-size-sm, 0.875em)); 1690 } 1691 .btn--size-slim.btn--plain .button__label { 1692 font-size: var(--pu-button-font-size, var(--pu-text-body-size-xs, 0.75em)); 1693 } 1694 1695 /* Property Value Classes - Text alignment */ 1696 .btn--text-align-left .button__label { 1697 justify-content: start; 1698 } 1699 .btn--text-align-center .button__label { 1700 justify-content: center; 1701 } 1702 .btn--text-align-right .button__label { 1703 justify-content: end; 1704 } 1705`];class It extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,{assumeInteractionOn:["click"]}),this.type="button",this.title="",this.name="",this.value="",this.target="_self",this.size="medium",this.variant="solid",this.textAlign="center",this.disabled=!1,this.fullWidth=!1,this.extendClickArea=!1,this.hideWhenExtended=!1,this.loading=!1,this.invalid=!1}get validity(){return this.isFormButton()?this.button.validity:Bt}get validationMessage(){return this.isFormButton()?this.button.validationMessage:""}firstUpdated(){this.isFormButton()&&this.formControlController.updateValidity()}handleClick(){"submit"===this.type&&this.formControlController.submit(this)}handleInvalid(e){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(e)}handleDisabledChange(){this.isFormButton()&&this.formControlController.setValidity(this.disabled)}click(){this.button.click()}focus(e){this.button.focus(e)}blur(){this.button.blur()}checkValidity(){return!this.isFormButton()||this.button.checkValidity()}getForm(){return this.formControlController.getForm()}reportValidity(){return!this.isFormButton()||this.button.reportValidity()}setCustomValidity(e){this.isFormButton()&&(this.button.setCustomValidity(e),this.formControlController.updateValidity())}isButton(){return!this.url}isLink(){return!!this.url}isFormButton(){return!(this.url||"submit"!==this.type&&"button"!==this.type&&"reset"!==this.type)}renderButtonContent(){return this.loading?$` 1706 <span 1707 part="label" 1708 class="button__label" 1709 > 1710 <slot> Label </slot> 1711 <slot name="label">Label</slot> 1712 </span> 1713 <span part="spinner"> 1714 <svg 1715 part="svg" 1716 class="button__spinner" 1717 width="16" 1718 height="16" 1719 xmlns="http://www.w3.org/2000/svg" 1720 focusable="false" 1721 role="presentation" 1722 aria-hidden="true"
1723 viewBox="0 0 512 512" 1724 > 1725 <path 1726 d="M463.9 376c7.6 4.4 17.5 1.8 21.4-6.1c17.1-34.3 26.7-73 26.7-113.9C512 120 405.9 8.8 272 .5c-8.8-.5-16 6.7-16 15.5v0c0 8.8 7.2 15.9 16 16.6C388.2 40.8 480 137.7 480 256c0 35.1-8.1 68.3-22.5 97.9c-3.9 8-1.3 17.7 6.4 22.2v0z" 1727 /> 1728 </svg> 1729 </span> 1730 `:$` 1731 <span 1732 part="label" 1733 class="button__label" 1734 > 1735 <slot> Label </slot> 1736 <slot name="label"></slot> 1737 </span> 1738 `}renderLinkElement(){const e=this.disabled;return $` 1739 <a 1740 part="base button" 1741 class="${J({button:!0,"button--disabled":e,"btn--plain":"plain"===this.variant,"btn--plain-underline":"plain-underline"===this.variant,"btn--outline":"outline"===this.variant,"btn--fullwidth":this.fullWidth,"btn--extend":this.extendClickArea,"btn--extend-hidden":this.hideWhenExtended,"btn--loading":this.loading,[`btn--size-${this.size}`]:!!this.size,[`btn--text-align-${this.textAlign}`]:!0})}" 1742 href="${Ze(this.url)}" 1743 target="${Ze(this.target)}" 1744 title=${this.title} 1745 @click="${this.handleClick}" 1746 > 1747 ${this.renderButtonContent()} 1748 </a> 1749 `}renderButtonElement(){const e=this.isButton(),t=this.isFormButton();return $` 1750 <button 1751 part="button" 1752 class="${J({button:!0,"btn--plain":"plain"===this.variant,"btn--plain-underline":"plain-underline"===this.variant,"btn--outline":"outline"===this.variant,"btn--fullwidth":this.fullWidth,"btn--extend":this.extendClickArea,"btn--extend-hidden":this.hideWhenExtended,"btn--loading":this.loading,[`btn--size-${this.size}`]:!!this.size,[`btn--text-align-${this.textAlign}`]:!0})}" 1753 type="${Ze(e||t?this.type:void 0)}" 1754 title=${this.title} 1755 name="${Ze(t?this.name:void 0)}" 1756 value="${Ze(t?this.value:void 0)}" 1757 form="${Ze(t?this.form:void 0)}" 1758 aria-controls="${Ze(e?this.for:void 0)}" 1759 ?disabled="${e||t?this.disabled:null}" 1760 @invalid=${e||t?this.handleInvalid:null} 1761 @click="${this.handleClick}" 1762 > 1763 ${this.renderButtonContent()} 1764 </button> 1765 `}render(){const e=this.isLink();return $`${e?this.renderLinkElement():this.renderButtonElement()}`}}It.styles=[Me,Tt],i([ke()],It.prototype,"type",void 0),i([ke()],It.prototype,"title",void 0),i([ke()],It.prototype,"name",void 0),i([ke()],It.prototype,"value",void 0),i([ke()],It.prototype,"form",void 0),i([ke()],It.prototype,"for",void 0),i([ke()],It.prototype,"url",void 0),i([ke()],It.prototype,"target",void 0),i([ke()],It.prototype,"size",void 0),i([ke()],It.prototype,"variant",void 0),i([ke()],It.prototype,"textAlign",void 0),i([ke({type:Boolean,reflect:!0})],It.prototype,"disabled",void 0),i([ke({type:Boolean})],It.prototype,"fullWidth",void 0),i([ke({type:Boolean})],It.prototype,"extendClickArea",void 0),i([ke({type:Boolean,reflect:!0})],It.prototype,"hideWhenExtended",void 0),i([ke({type:Boolean,reflect:!0})],It.prototype,"loading",void 0),i([Se(".button")],It.prototype,"button",void 0),i([Ce()],It.prototype,"invalid",void 0),i([Te("disabled",{waitUntilFirstUpdate:!0})],It.prototype,"handleDisabledChange",null),It.define("pu-button"),ht.define("pu-box");const Mt=[te` 1766 :host { 1767 display: inline-flex; 1768 } 1769 1770 .button-icon { 1771 cursor: pointer; 1772 border: none; 1773 border-radius: var(--pu-icon-border-radius); 1774 padding: 0; 1775 color: rgb(from var(--pu-icon-color-foreground, inherit) r g b / alpha); 1776 background-color: rgb( 1777 from var(--pu-icon-color-background, inherit) r g b / calc(var(--pu-icon-opacity-background, 0.7) * alpha) 1778 ); 1779 transition: background-color var(--pu-transition-duration-500); 1780 } 1781 1782 .button-icon:hover { 1783 background-color: rgb( 1784 from var(--pu-icon-color-background, inherit) r g b / calc(var(--pu-icon-opacity-background, 1) * alpha) 1785 ); 1786 } 1787 1788 a.button-icon { 1789 display: inline-block; 1790 line-height: normal; 1791 } 1792 1793 .button-icon > * { 1794 position: relative; 1795 display: block; 1796 padding: var(--pu-icon-space-padding, var(--padding, 0.5em)); 1797 } 1798 1799 /* Slotted custom SVG icon */ 1800 ::slotted(*) { 1801 display: block; 1802 font-size: var(--pu-icon-font-size, inherit); 1803 } 1804 1805 .icon { 1806 line-height: 0; 1807 } 1808 1809 .button-icon[disabled]:hover { 1810 opacity: 0.5; 1811 } 1812 1813 button[disabled] { 1814 opacity: 0.5; 1815 cursor: default; 1816 } 1817
1818 @keyframes spin { 1819 to { 1820 transform: rotate(1turn); 1821 } 1822 } 1823`,te` 1824 :host { 1825 --border-color: var(--pu-icon-border-color, var(--pu-color-foreground, rgb(0, 0, 0, 0.5))); 1826 } 1827 .btn--extend-interactive::after { 1828 content: ''; 1829 position: absolute; 1830 top: 0; 1831 left: 0; 1832 height: 100%; 1833 width: 100%; 1834 z-index: 1; 1835 } 1836 1837 .btn--border > *::after { 1838 content: ''; 1839 position: absolute; 1840 left: 0; 1841 right: 0; 1842 top: 0; 1843 bottom: 0; 1844 box-shadow: 0 0 0 var(--pu-icon-border-width, 0.0625em) 1845 rgb(from var(--pu-icon-border-color) r g b / calc(var(--pu-icon-opacity-border, 1) * alpha)); 1846 } 1847 1848 .btn--rounded, 1849 .btn--rounded > *::after { 1850 border-radius: var(--pu-icon-border-radius, 100%); 1851 } 1852`];class jt extends Ue{constructor(){super(),this.as="button",this.target="_self",this.type="button",this.borderStyle="sharp",this.name="user",this.label="",this.extendClickArea=!1,this.disabled=!1,this.border=!1,this.loading=!1,this._extendedInteraction()}async _extendedInteraction(){await this.updateComplete,this.disabled}handleClick(){!this.disabled&&this.loading}buttonIcon(){return this.loading?$` 1853 <pu-icon 1854 part="icon" 1855 exportparts="base,svg" 1856 class="icon spinner" 1857 name="spinner" 1858 size=${Ze(this.iconSize)} 1859 > 1860 </pu-icon> 1861 `:$` 1862 <pu-icon 1863 part="icon" 1864 exportparts="base,svg" 1865 name=${this.name} 1866 size=${Ze(this.iconSize)} 1867 style="${He({"--pu-icon-font-size":this.iconSize?je(this.iconSize):null})}" 1868 > 1869 <slot name="icon"></slot> 1870 </pu-icon> 1871 `}_getPaddingValue(){return this.padding?/^\d+$/.test(this.padding)?Number(this.padding)/16+"em":this.padding:null}buttonAs(){return"button"===this.as||void 0===this.url||""===this.url?$` 1872 <button 1873 part="base button" 1874 class="${J({"button-icon":!0,"btn--border":this.border,"btn--rounded":"rounded"===this.borderStyle,"btn--extend-interactive":this.extendClickArea})}" 1875 style="${He({"--padding":this._getPaddingValue()})}" 1876 type=${this.type} 1877 aria-label=${this.label} 1878 aria-controls=${Ze(this.for)} 1879 ?disabled=${this.disabled} 1880 @click=${this.handleClick} 1881 > 1882 ${this.buttonIcon()} 1883 </button> 1884 `:this.url?$` 1885 <a 1886 part="base" 1887 class="${J({"button-icon":!0,"btn--border":this.border,"btn--rounded":"rounded"===this.borderStyle,"btn--extend-interactive":this.extendClickArea})}" 1888 href="${this.url}" 1889 target=${this.target} 1890 style="${He({"--padding":this._getPaddingValue()})}" 1891 aria-label=${this.label} 1892 ?disabled=${this.disabled} 1893 > 1894 ${this.buttonIcon()} 1895 </a> 1896 `:void 0}render(){return $` ${this.buttonAs()} `}}jt.styles=[Me,Mt],jt.dependencies={"pu-icon":Ge},jt.shadowRootOptions={...ye.shadowRootOptions,delegatesFocus:!0},i([ke()],jt.prototype,"as",void 0),i([ke()],jt.prototype,"for",void 0),i([ke()],jt.prototype,"url",void 0),i([ke()],jt.prototype,"target",void 0),i([ke()],jt.prototype,"type",void 0),i([ke()],jt.prototype,"borderStyle",void 0),i([ke()],jt.prototype,"name",void 0),i([ke()],jt.prototype,"iconSize",void 0),i([ke()],jt.prototype,"padding",void 0),i([ke()],jt.prototype,"label",void 0),i([ke({type:Boolean})],jt.prototype,"extendClickArea",void 0),i([ke({type:Boolean,reflect:!0})],jt.prototype,"disabled",void 0),i([ke({type:Boolean})],jt.prototype,"border",void 0),i([ke({type:Boolean,reflect:!0})],jt.prototype,"loading",void 0),jt.define("pu-button-icon");const Ot=[te` 1897 /* Host element stacking layout control */ 1898 @media screen and (max-width: 48em) { 1899 :host([stack]), 1900 :host([stackNarrow]), 1901 :host([mobileStack]) { 1902 display: block; 1903 width: var(--pu-button-size-width, 100%); 1904 } 1905 } 1906 1907 /* Foundation button group structure */ 1908 .button-group { 1909 display: flex; 1910 align-items: center; 1911 flex-wrap: wrap; 1912 width: 100%; 1913 } 1914`,gt,bt,te` 1915 /* Boolean property API - Stack behavior */ 1916 @media screen and (max-width: 48em) { 1917 .button-group { 1918 gap: var(--pu-space-group-gap, var(--pu-grid-gap-x-narrow, 0)); 1919 } 1920 .button-group.group--narrow-stack { 1921 flex-direction: column; 1922 } 1923 .button-group.group--narrow-stack ::slotted(*) { 1924 display: block; 1925 width: 100%; 1926 --pu-button-size-width: 100%; 1927 } 1928 } 1929 @media screen and (min-width: 48.06em) { 1930 .button-group { 1931 gap: var(--pu-space-group-gap, var(--pu-grid-gap-horizontal, 0)); 1932 } 1933 .button-group.group--stack { 1934 flex-direction: column; 1935 } 1936 .button-group.group--stack ::slotted(*) { 1937 display: block; 1938 width: 100%; 1939 --pu-button-size-width: 100%; 1940 } 1941 } 1942`];class Lt extends Ue{constructor(){super(...arguments),this.justify="start",this.justifyNarrow="start",this.stack=!1,this.stackNarrow=!1}styles(){let e={};return this.spacing&&(e={...e,"--pu-grid-gap-horizontal":parseInt(this.spacing)/16+"em"}),this.spacingNarrow?e={...e,"--pu-grid-gap-x-narrow":parseInt(this.spacingNarrow)/16+"em"}:this.spacing&&(e={...e,"--pu-grid-gap-x-narrow":parseInt(this.spacing)/16+"em"}),e}buttonGroupClasses(){const e={"button-group":!0};return e["flex-justify--"+this.justify]=!0,e["flex-narrow-justify--"+this.justifyNarrow]=!0,e["group--stack"]=this.stack,e["group--narrow-stack"]=this.stackNarrow,e}render(){return $` 1943 <div 1944 part="button-group" 1945 class="${J(this.buttonGroupClasses())}" 1946 style="${He(this.styles())}" 1947 > 1948 <slot></slot> 1949 </div> 1950 `}}function Ht(e,t){return!!e.target&&(Array.isArray(t)&&t.length>1?t.some((t=>e.target.getAttribute("name")===t)):!!t&&e.target.getAttribute("name")===t)}Lt.styles=[Me,Ot],i([ke()],Lt.prototype,"spacing",void 0),i([ke()],Lt.prototype,"spacingNarrow",void 0),i([ke()],Lt.prototype,"justify",void 0),i([ke()],Lt.prototype,"justifyNarrow",void 0),i([ke({type:Boolean,reflect:!0})],Lt.prototype,"stack",void 0),i([ke({type:Boolean,reflect:!0})],Lt.prototype,"stackNarrow",void 0),Lt.define("pu-button-group");const Vt=[te` 1951 :host { 1952 --background-color: var(--pu-card-color-background, var(--pu-color-background, inherit)); 1953 --text-color: var(--pu-card-color-foreground, var(--pu-color-foreground, inherit)); 1954 --border-color: var(--pu-card-border-color, var(--pu-color-border, inherit)); 1955 --pu-color-foreground: var(--pu-card-color-foreground, inherit); 1956 --pu-color-background: var(--pu-card-color-background, inherit); 1957 position: relative; 1958 display: block; 1959 height: 100%; 1960 width: 100%; 1961 } 1962 /* Card: Button */ 1963 slot[name='button'] { 1964 display: block; 1965 order: 3; 1966 z-index: 30; 1967 } 1968 1969 /** Card */ 1970 .card { 1971 position: relative; 1972 height: 100%; 1973 width: 100%; 1974 } 1975 1976 .card__inner { 1977 display: flex; 1978 flex-direction: column; 1979 height: 100%; 1980 position: relative; 1981 overflow: hidden; 1982 border-radius: var(--pu-card-border-radius); 1983 border-width: var(--pu-card-border-width, 0); 1984 border-style: solid; 1985 border-color: rgb(from var(--border-color) r g b / alpha); 1986 } 1987 1988 /* Footer content */ 1989 .card.has-footer-content { 1990 height: auto; 1991 } 1992 1993 .card.has-footer-content.under .card__inner, 1994 .card.has-footer-content.over .card__inner { 1995 border-radius: var(--pu-card-border-radius) var(--pu-card-border-radius) 0 0; 1996 } 1997 1998 .footer-content { 1999 background-color: var(--background-color); 2000 border-radius: 0 0 var(--pu-card-border-radius) var(--pu-card-border-radius); 2001 display: block; 2002 overflow: hidden; 2003 } 2004 2005 /** Caption */ 2006 .caption { 2007 flex: 1; 2008 z-index: 20; 2009 } 2010 2011 .caption__inner { 2012 height: 100%; 2013 width: 100%; 2014 } 2015 2016 .caption__container { 2017 background-image: var(--pu-card-color-gradient); 2018 background-color: rgb(from var(--background-color) r g b / var(--pu-card-opacity-background, 0)); 2019 color: rgb(from var(--text-color) r g b / alpha); 2020 padding: var(--pu-card-space-padding, 1em); 2021 height: 100%; 2022 width: 100%; 2023 } 2024 2025 /* Responsive padding override */ 2026 @media only screen and (max-width: 48em) { 2027 .caption__container { 2028 padding: var(--pu-space-padding-narrow, 1em); 2029 } 2030 } 2031 2032 /* Card: Badge */ 2033 .badge { 2034 position: absolute; 2035 top: 1em; 2036 left: 1em; 2037 z-index: 1; 2038 letter-spacing: 0.07em; 2039 pointer-events: none; 2040 } 2041 2042 /** Media */ 2043 /* Media: Slotted content */ 2044 .media ::slotted(*) { 2045 height: 100%; 2046 } 2047 /* Media: Layout */ 2048 .media { 2049 position: relative; 2050 aspect-ratio: var(--pu-aspect-ratio-media-small); 2051 flex-shrink: 1; 2052 padding: var(--pu-card-media-space-padding); 2053 height: auto; 2054 background-color: rgb(from var(--background-color) r g b / alpha); 2055 overflow: hidden; 2056 } 2057 2058 @media (min-width: 30.06em) { 2059 .media { 2060 aspect-ratio: var(--pu-aspect-ratio-media); 2061 } 2062 } 2063`,te` 2064 .border .card__inner { 2065 padding: var(--pu-space-padding, 1em); 2066 background-color: rgb(from var(--background-color) r g b / alpha); 2067 } 2068 2069 @media screen and (min-width: 30.06em) { 2070 .border.over .caption { 2071 padding: var(--pu-space-padding, 1em); 2072 } 2073 } 2074 @media screen and (max-width: 30em) { 2075 .border.over--tablet-down .caption { 2076 padding: var(--pu-space-padding, 1em); 2077 } 2078 } 2079 2080 /* Position-specific opacity */ 2081 @media (min-width: 30.06em) { 2082 .under .caption__container { 2083 background-color: rgb(from var(--background-color) r g b / var(--pu-card-opacity-background, 0)); 2084 } 2085 2086 .over .caption__container { 2087 background-color: rgb(from var(--background-color) r g b / 0); 2088 } 2089 } 2090 2091 @media (max-width: 30em) { 2092 .under--tablet-down .caption__container { 2093 --pu-card-caption-opacity-background: 1; /* Transparent background when over media */ 2094 background-color: rgb(from var(--background-color) r g b / var(--pu-card-opacity-background, 1)); 2095 } 2096 .over--tablet-down .caption__container { 2097 --pu-card-opacity-background: 0; /* Transparent background when over media */ 2098 } 2099 } 2100 2101 /* Caption content positions */ 2102 .under .media { 2103 border-radius: calc(var(--pu-card-media-border-radius) * 0.7); 2104 overflow: hidden; 2105 } 2106 2107 @media only screen and (min-width: 30.06em) { 2108 .over { 2109 aspect-ratio: var(--pu-aspect-ratio-media); 2110 } 2111 .card.over .caption { 2112 position: absolute; 2113 top: 0; 2114 left: 0; 2115 height: 100%; 2116 width: 100%; 2117 z-index: 10; 2118 } 2119 } 2120 2121 @media only screen and (max-width: 30em) { 2122 .card.over--tablet-down .caption { 2123 position: absolute; 2124 top: 0; 2125 left: 0; 2126 height: 100%; 2127 width: 100%; 2128 z-index: 10; 2129 } 2130 .over--tablet-down { 2131 height: auto; 2132 aspect-ratio: var(--pu-aspect-ratio-media-small); 2133 } 2134 } 2135`];function Dt(e){if(!e)return;return e.split(",").map((e=>e.trim())).map((e=>{const t=Number(e);return 0===t?"0":t/16+"em"})).join(" ")}class Rt extends Ue{constructor(){super(...arguments),this.aspectRatio="1",this.aspectRatioNarrow="",this.position="under",this.positionNarrow="under",this.align="stretch",this.justify="start",this.border=!1,this._slotHasChildren=!1}
2135_handleSlotChange(e){this._slotHasChildren=Ht(e,"footer-content")}willUpdate(e){e.has("padding")&&(this._paddingCSS=Dt(this.padding)),e.has("paddingNarrow")&&(this._paddingNarrowCSS=Dt(this.paddingNarrow))}captionStyles(){let e={};return this._paddingCSS&&(e["--pu-space-padding"]=this._paddingCSS),this._paddingNarrowCSS&&(e["--pu-space-padding-narrow"]=this._paddingNarrowCSS),e}render(){const e=this._slotHasChildren;return $` 2136 <div 2137 part="base caption-card" 2138 class="${J({card:!0,border:this.border,under:"under"===this.position,over:"over"===this.position,"under--tablet-down":"under"===this.positionNarrow,"over--tablet-down":"over"===this.positionNarrow,"has-footer-content":e})}" 2139 style="${He({"--pu-aspect-ratio-media":this.aspectRatio,"--pu-aspect-ratio-media-small":this.aspectRatioNarrow?this.aspectRatioNarrow:this.aspectRatio})}" 2140 > 2141 <div 2142 part="container" 2143 class="card__inner" 2144 > 2145 <div 2146 part="media" 2147 class="media" 2148 > 2149 <slot name="media"></slot> 2150 <div 2151 part="badge" 2152 class="badge" 2153 > 2154 <slot name="badge"></slot> 2155 </div> 2156 </div> 2157 <div 2158 part="caption" 2159 class="caption" 2160 > 2161 <div 2162 part="content" 2163 class="caption__inner" 2164 > 2165 <div 2166 part="content-container" 2167 class="caption__container" 2168 style="${He(this.captionStyles())}" 2169 > 2170 <pu-vertical-stack 2171 part="base-layout" 2172 exportparts="base:layout" 2173 spacing="${Ze(this.spacing)}" 2174 spacingNarrow="${Ze(this.spacingNarrow?this.spacingNarrow:this.spacing)}" 2175 justify=${this.justify} 2176 align=${this.align} 2177 > 2178 <slot name="content"></slot> 2179 </pu-vertical-stack> 2180 </div> 2181 </div> 2182 </div> 2183 </div> 2184 <div 2185 part="footer-content" 2186 class="card__footer" 2187 > 2188 <slot 2189 name="footer-content" 2190 @slotchange=${this._handleSlotChange} 2191 ></slot> 2192 </div> 2193 </div> 2194 `}}Rt.styles=[Me,Vt],Rt.dependencies={"pu-vertical-stack":xt},i([ke()],Rt.prototype,"aspectRatio",void 0),i([ke()],Rt.prototype,"aspectRatioNarrow",void 0),i([ke()],Rt.prototype,"position",void 0),i([ke()],Rt.prototype,"positionNarrow",void 0),i([ke()],Rt.prototype,"align",void 0),i([ke()],Rt.prototype,"justify",void 0),i([ke()],Rt.prototype,"padding",void 0),i([ke()],Rt.prototype,"paddingNarrow",void 0),i([ke()],Rt.prototype,"spacing",void 0),i([ke()],Rt.prototype,"spacingNarrow",void 0),i([ke({type:Boolean})],Rt.prototype,"border",void 0),i([Ce()],Rt.prototype,"_paddingCSS",void 0),i([Ce()],Rt.prototype,"_paddingNarrowCSS",void 0),i([Ce()],Rt.prototype,"_slotHasChildren",void 0),Rt.define("pu-caption-card");const Ft=(e="value")=>(t,o)=>{const i=t.constructor,r=i.prototype.attributeChangedCallback;i.prototype.attributeChangedCallback=function(t,a,s){const n=i.getPropertyOptions(e);if(t===("string"==typeof n.attribute?n.attribute:e)){const t=n.converter||ge,i=("function"==typeof t?t:t?.fromAttribute??ge.fromAttribute)(s,n.type);this[e]!==i&&(this[o]=i)}r.call(this,t,a,s)}},{I:Wt}=D,Ut={},Gt=q(class extends K{constructor(e){if(super(e),e.type!==U&&e.type!==F&&e.type!==G)throw Error("The `live` directive is not allowed on child or event bindings");if(!(e=>void 0===e.strings)(e))throw Error("`live` bindings can only contain a single expression")}render(e){return e}update(e,[t]){if(t===S||t===z)return t;const o=e.element,i=e.name;if(e.type===U){if(t===o[i])return S}else if(e.type===G){if(!!t===o.hasAttribute(i))return S}else if(e.type===F&&o.getAttribute(i)===t+"")return S;return((e,t=Ut)=>{e._$AH=t})(e),t}});var qt=te` 2195 .form-control { 2196 position: relative; 2197 } 2198 .form-control .form-control__label { 2199 display: none; 2200 margin-bottom: var(--pu-space-100, 0.25em); 2201 font-size: var(--pu-form-control-label-font-size, var(--pu-input-label-font-size, 1em)); 2202 } 2203 .form-control.form-control--has-label .form-control__label { 2204 display: inline-block; 2205 } 2206 2207 /* Sizes */ 2208 .form-control--small { 2209 --pu-input-label-font-size: var(--pu-form-control-label-font-size, var(--pu-text-body-size-xs, 0.75em)); 2210 --pu-input-help-font-size: var(--pu-form-control-help-font-size, var(--pu-text-body-size-xs, 0.75em)); 2211 --pu-input-space-padding: var(--pu-form-control-space-inline-padding, var(--pu-space-300, 0.75em)); 2212 } 2213 .form-control--medium { 2214 --pu-input-label-font-size: var(--pu-form-control-label-font-size, var(--pu-text-body-size-sm, 0.875em)); 2215 --pu-input-help-font-size: var(--pu-form-control-help-font-size, var(--pu-text-body-size-sm, 0.875em)); 2216 --pu-input-space-padding: var(--pu-form-control-space-inline-padding, var(--pu-space-400, 1em)); 2217 } 2218 .form-control--large { 2219 --pu-input-label-font-size: var(--pu-form-control-label-font-size, var(--pu-text-body-size-md, 1em)); 2220 --pu-input-help-font-size: var(--pu-form-control-help-font-size, var(--pu-text-body-size-md, 1em)); 2221 --pu-input-space-padding: var(--pu-form-control-space-inline-padding, var(--pu-space-500, 1.25em)); 2222 } 2223 2224 /* Label */ 2225 .form-control__label { 2226 color: var(--pu-input-label-color-foreground, var(--pu-color-foreground, inherit)); 2227 letter-spacing: var(--pu-input-label-font-tracking, 0.05em); 2228 } 2229 2230 .form-control__label--visually-hidden { 2231 position: absolute; 2232 overflow: hidden; 2233 width: 1px; 2234 height: 1px; 2235 margin: -1px; 2236 padding: 0; 2237 border: 0; 2238 clip: rect(0 0 0 0); 2239 word-wrap: normal !important; 2240 } 2241 2242 /* Label positions */ 2243 2244 /* --inset top */ 2245 .form-control--label-inset-top:not(.form-control--hide-label).form-control--has-label .form-control__label { 2246 color: var(--pu-input-label-color-foreground, var(--pu-color-backround, inherit)); 2247 position: absolute; 2248 z-index: 10; 2249 } 2250 2251 .form-control--label-inset-top:not(.form-control--hide-label).form-control--has-label .form-control__label { 2252 margin-top: calc(var(--pu-input-space-padding) / 2); 2253 margin-left: var(--pu-input-space-padding); 2254 } 2255 2256 /* --inset left */ 2257 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label.form-control--small { 2258 --pu-input-label-font-size: var(--pu-text-body-size-xs, 0.75em); 2259 --pu-input-space-padding: var(--pu-space-300, 0.75em); 2260 } 2261 2262 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label.form-control--medium { 2263 --pu-input-label-font-size: var(--pu-text-body-size-sm, 0.875em); 2264 --pu-input-space-padding: var(--pu-space-400, 1em); 2265 } 2266 2267 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label.form-control--large { 2268 --pu-input-label-font-size: var(--pu-text-body-size-md, 1em); 2269 --pu-input-space-padding: var(--pu-space-500, 1.25em); 2270 } 2271 2272 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label .form-control__label { 2273 color: var(--pu-input-label-color-foreground, var(--pu-color-backround, inherit)); 2274 position: relative; 2275 margin-left: var(--pu-input-space-padding); 2276 padding-right: var(--pu-input-space-padding); 2277 margin-bottom: 0; 2278 flex: none; 2279 } 2280 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label .form-control__label::after { 2281 content: ''; 2282 background-color: var(--pu-input-border-color, hsl(240, 5%, 65%)); 2283 position: absolute; 2284 right: 0; 2285 top: 0; 2286 height: 100%; 2287 width: 0.0625em; 2288 } 2289 2290 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label .form-control__label { 2291 position: relative; 2292 margin-left: var(--pu-input-space-padding); 2293 padding-right: var(--pu-input-space-padding); 2294 margin-bottom: 0; 2295 flex: none; 2296 } 2297 2298 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label .form-control__label::after { 2299 content: ''; 2300 background-color: var(--pu-input-border-color, hsl(240, 5%, 65%)); 2301 position: absolute; 2302 right: 0; 2303 top: 0; 2304 height: 100%; 2305 width: 0.0625em; 2306 } 2307 2308 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label 2309 .select__combobox 2310 .form-control__label { 2311 margin-left: 0; 2312 margin-right: var(--pu-input-space-padding); 2313 } 2314 2315 .form-control--label-inset-left:not(.form-control--hide-label).form-control--has-label 2316 .select__combobox 2317 .form-control__label { 2318 margin-left: 0; 2319 margin-right: var(--pu-input-space-padding); 2320 } 2321 2322 /* Required fields */ 2323 :host([required]) .form-control__label::after { 2324 content: var(--pu-input-required-content, '*'); 2325 margin-inline-start: var(--pu-input-required-space-offset, -2px); 2326 color: var(--pu-input-required-color-foreground, hsl(240, 5%, 65%)); 2327 } 2328 2329 /* Help text */ 2330 .form-control__help-text { 2331 display: none; 2332 } 2333 2334 .form-control--has-help-text .form-control__help-text { 2335 display: inline-block; 2336 color: var(--pu-input-help-color-foreground, hsl(240, 5%, 65%)); 2337 font-size: var(--pu-input-help-font-size, 0.75em); 2338 margin-top: var(--pu-space-100, 0.25em); 2339 } 2340`;const Kt=[qt,te` 2341 :host { 2342 display: inline-block; 2343 } 2344 2345 .checkbox { 2346 position: relative; 2347 display: inline-flex; 2348 align-items: flex-start; 2349 font-family: var(--pu-text-body-family); 2350 font-size: var(--pu-input-font-size); 2351 color: rgb(from var(--pu-input-color-foreground, inherit) r g b / alpha); 2352 vertical-align: middle; 2353 cursor: pointer; 2354 } 2355 2356 .checkbox__control { 2357 flex: 0 0 auto; 2358 position: relative; 2359 display: inline-flex; 2360 align-items: center; 2361 justify-content: center; 2362 padding: 2px; 2363 width: var(--checkbox-size); 2364 height: var(--checkbox-size); 2365 border: solid var(--pu-input-border-width, 0.0625em) 2366 rgb(from var(--pu-input-border-color, hsl(240, 5%, 65%)) r g b / alpha); 2367 border-radius: var(--pu-border-input-corner-radius, 0.125em); 2368 background-color: rgb(from var(--pu-input-color-background, hsl(0 0% 99.5%)) r g b / alpha); 2369 transition: 2370 var(--pu-transition-duration-150) border-color, 2371 var(--pu-transition-duration-150) background-color, 2372 var(--pu-transition-duration-150) color, 2373 var(--pu-transition-duration-150) box-shadow; 2374 } 2375
2376 /* Toggle checkbox Styles */ 2377 .checkbox-as-toggle { 2378 display: flex; 2379 align-items: center; 2380 gap: 0.75em; 2381 } 2382 2383 .checkbox-as-toggle .checkbox__label { 2384 margin: 0; 2385 } 2386 2387 .checkbox-as-toggle .checkbox__control { 2388 position: relative; 2389 width: var(--pu-checkbox-toggle-size-x, var(--toggle-size-x)); 2390 height: var(--pu-checkbox-toggle-size-y, var(--toggle-size-y)); 2391 border-radius: var(--pu-border-input-corner-radius, var(--pu-border-radius-full, 9999px)); 2392 padding: 3px; 2393 } 2394 2395 .checkbox-as-toggle .checkbox__toggle-button { 2396 display: inline-block; 2397 aspect-ratio: 1 / 1; 2398 height: 100%; 2399 margin-right: auto; 2400 border-radius: var(--pu-border-input-corner-radius, var(--pu-border-radius-full, 9999px)); 2401 background-color: rgb(from var(--pu-input-icon-color-foreground, hsl(240, 5%, 26%)) r g b / alpha); 2402 } 2403 2404 /* Icon checked */ 2405 .checkbox-as-toggle.checkbox--checked .checkbox__toggle-button { 2406 background-color: rgb(from var(--pu-input-icon-color-foreground-checked, hsl(0 0% 99.5%)) r g b / alpha); 2407 margin-left: auto; 2408 margin-right: 0; 2409 } 2410 2411 /* Icon hover checked */ 2412 .checkbox-as-toggle.checkbox--checked .checkbox__toggle-button:hover { 2413 background-color: rgb(from var(--pu-input-icon-color-foreground-checked-hover, hsl(0 0% 99.5%)) r g b / alpha); 2414 } 2415 2416 /* Icon hover unchecked */ 2417 .checkbox-as-toggle:not(.checkbox--checked):not(.checkbox--disabled) .checkbox__toggle-button:hover { 2418 border-color: rgb(from var(--pu-input-icon-color-foreground-hover, hsl(240, 4%, 46%)) r g b / alpha); 2419 background-color: rgb(from var(--pu-input-icon-color-foreground-hover, hsl(240, 5%, 6%)) r g b / alpha); 2420 } 2421 2422 /* Input hover checked/indeterminate */ 2423 .checkbox-as-toggle.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover, 2424 .checkbox-as-toggle.checkbox--indeterminate:not(.checkbox--disabled) .checkbox__control:hover { 2425 border-color: rgb(from var(--pu-input-border-color-checked-hover, hsl(224.3, 76.3%, 48%)) r g b / alpha); 2426 background-color: rgb(from var(--pu-input-border-color-checked-hover, hsl(224.3, 76.3%, 48%)) r g b / alpha); 2427 } 2428 2429 .checkbox__input { 2430 position: absolute; 2431 opacity: 0; 2432 padding: 0; 2433 margin: 0; 2434 pointer-events: none; 2435 } 2436 2437 .checkbox__checked-icon, 2438 .checkbox__indeterminate-icon { 2439 display: inline-flex; 2440 --pu-icon-color-foreground: rgb( 2441 from var(--pu-input-icon-color-foreground-checked, hsl(0 0% 99.5%)) r g b / alpha 2442 ); 2443 --pu-icon-font-size: calc(var(--checkbox-size) * 0.7); 2444 } 2445 2446 .checkbox__label { 2447 display: inline-block; 2448 margin-inline-start: 0.5em; 2449 user-select: none; 2450 -webkit-user-select: none; 2451 } 2452 2453 :host([required]) .checkbox__label::after { 2454 content: var(--pu-input-required-content, '*'); 2455 color: rgb(from var(--pu-input-required-color-foreground, hsl(240, 5%, 65%)) r g b / alpha); 2456 margin-inline-start: var(--pu-input-required-space-offset, -2px); 2457 } 2458 2459 /* Hover checked*/ 2460 .checkbox:not(.checkbox--checked):not(.checkbox--disabled) .checkbox__control:hover { 2461 border-color: rgb(from var(--pu-input-border-color-hover, hsl(240, 4%, 46%)) r g b / alpha); 2462 background-color: rgb(from var(--pu-input-color-background-hover, hsl(240, 5%, 96%)) r g b / alpha); 2463 } 2464 2465 .checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover .checkbox__checked-icon, 2466 .checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover .checkbox__indeterminate-icon { 2467 display: inline-flex; 2468 --pu-icon-color-foreground: rgb( 2469 from var(--pu-input-icon-color-foreground-hover, hsl(0, 0%, 99.5%)) r g b / alpha 2470 ); 2471 } 2472 2473 /* Focus */ 2474 .checkbox:not(.checkbox--disabled) .checkbox__input:focus-visible ~ .checkbox__control { 2475 outline: var(--pu-border-focus-style, solid) var(--pu-border-focus-width, 2px) 2476 rgb(from var(--pu-color-focus-ring, hsl(213.1, 93.9%, 67.8%)) r g b / alpha); 2477 outline-offset: var(--pu-border-focus-offset, 0.0625em); 2478 } 2479 2480 /* Checked/indeterminate */ 2481 .checkbox--checked .checkbox__control, 2482 .checkbox--indeterminate .checkbox__control { 2483 border-color: rgb(from var(--pu-input-border-color-checked, hsl(224.3, 76.3%, 48%)) r g b / alpha); 2484 background-color: rgb(from var(--pu-input-color-background-checked, hsl(221.2, 83.2%, 53.3%)) r g b / alpha); 2485 } 2486 2487 /* Checked/indeterminate + hover */ 2488 .checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover, 2489 .checkbox.checkbox--indeterminate:not(.checkbox--disabled) .checkbox__control:hover { 2490 border-color: rgb(from var(--pu-input-border-color-checked-hover, hsl(224.3, 76.3%, 48%)) r g b / alpha); 2491 background-color: rgb(from var(--pu-input-border-color-checked-hover, hsl(224.3, 76.3%, 48%)) r g b / alpha); 2492 } 2493 2494 /* Disabled */ 2495 .checkbox--disabled { 2496 opacity: 0.5;
2497 cursor: not-allowed; 2498 } 2499`,te` 2500 /* Size API Classes */ 2501 .checkbox--small { 2502 --checkbox-size: var(--pu-space-400, 1em); 2503 --toggle-size-x: 2.5rem; 2504 --toggle-size-y: 1.5rem; 2505 --pu-input-label-font-size: var(--pu-text-body-size-xs, 0.75em); 2506 } 2507 2508 .checkbox--medium { 2509 --checkbox-size: var(--pu-space-500, 1.25em); 2510 --toggle-size-x: 3.25rem; 2511 --toggle-size-y: 1.75rem; 2512 --pu-input-label-font-size: var(--pu-text-body-size-sm, 0.875em); 2513 } 2514 2515 .checkbox--large { 2516 --checkbox-size: var(--pu-space-600, 1.5em); 2517 --toggle-size-x: 4rem; 2518 --toggle-size-y: 2.25rem; 2519 --pu-input-label-font-size: var(--pu-text-body-size-md, 1em); 2520 } 2521`];class Jt extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,{value:e=>e.checked?e.value||"on":void 0,defaultValue:e=>e.defaultChecked,setValue:(e,t)=>e.checked=Boolean(t)}),this.hasSlotController=new Xe(this,"label","help-text"),this.hasFocus=!1,this.asToggle=!1,this.label="",this.labelHidden=!1,this.title="",this.name="",this.size="medium",this.disabled=!1,this.checked=!1,this.indeterminate=!1,this.defaultChecked=!1,this.form="",this.required=!1,this.helpText="",this.deprecatedPropertyMap=[{old:"hideLabel",new:"labelHidden",defaultValue:!1}]}get hideLabel(){return this.labelHidden}set hideLabel(e){this._handleDeprecated("hideLabel",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}get validity(){return this.input.validity}get validationMessage(){return this.input.validationMessage}firstUpdated(){this.formControlController.updateValidity()}handleClick(){this.checked=!this.checked,this.indeterminate=!1,this.emit("pu-change")}handleBlur(){this.hasFocus=!1,this.emit("pu-blur")}handleInput(){this.emit("pu-input")}handleInvalid(e){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(e)}handleFocus(){this.hasFocus=!0,this.emit("pu-focus")}handleStateChange(){this.input.checked=this.checked,this.input.indeterminate=this.indeterminate,this.formControlController.updateValidity()}click(){this.input.click()}focus(e){this.input.focus(e)}blur(){this.input.blur()}checkValidity(){return this.input.checkValidity()}getForm(){return this.formControlController.getForm()}reportValidity(){return this.input.reportValidity()}setCustomValidity(e){this.input.setCustomValidity(e),this.formControlController.updateValidity()}render(){const e=this.hasSlotController.test("label"),t=!!this.label||!!e,o=this.hasSlotController.test("help-text"),i=!!this.helpText||!!o;return $` 2522 <div 2523 part="base checkbox" 2524 class=${J({"form-control":!0,"form-control--has-label":t,"form-control--hide-label":this.labelHidden,"form-control--small":"small"===this.size,"form-control--medium":"medium"===this.size,"form-control--large":"large"===this.size,"form-control--has-help-text":i})} 2525 > 2526 <label 2527 part="checkbox" 2528 class=${J({checkbox:!0,"checkbox--checked":this.checked,"checkbox--disabled":this.disabled,"checkbox--focused":this.hasFocus,"checkbox--indeterminate":this.indeterminate,"checkbox--small":"small"===this.size,"checkbox--medium":"medium"===this.size,"checkbox--large":"large"===this.size,"checkbox-as-toggle":this.asToggle})} 2529 > 2530 <input 2531 part="input" 2532 class="checkbox__input" 2533 type="checkbox" 2534 title=${this.title} 2535 name=${this.name} 2536 value=${Ze(this.value)} 2537 .indeterminate=${this.indeterminate} 2538 .checked=${Gt(this.checked)} 2539 .disabled=${this.disabled} 2540 .required=${this.required} 2541 aria-checked=${this.checked?"true":"false"} 2542 aria-describedby="help-text" 2543 @click=${this.handleClick} 2544 @input=${this.handleInput} 2545 @invalid=${this.handleInvalid} 2546 @blur=${this.handleBlur} 2547 @focus=${this.handleFocus} 2548 />
2549 <span 2550 part="control" 2551 class="checkbox__control" 2552 > 2553 ${this.checked&&!this.asToggle?$` 2554 <pu-icon 2555 part="icon" 2556 exportparts="base,svg" 2557 class="checkbox__checked-icon" 2558 name="check" 2559 > 2560 <slot name="icon"></slot> 2561 </pu-icon> 2562 `:""} 2563 ${this.checked||!this.indeterminate||this.asToggle?"":$` 2564 <pu-icon 2565 part="icon" 2566 exportparts="base,svg" 2567 class="checkbox__indeterminate-icon" 2568 name="minus" 2569 > 2570 <slot name="icon"></slot> 2571 </pu-icon> 2572 `} 2573 ${this.asToggle?$` <span class="checkbox__toggle-button"></span> `:""} 2574 </span> 2575 <div 2576 part="label" 2577 class="${J({checkbox__label:!0,"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 2578 aria-hidden=${t?"false":"true"} 2579 > 2580 <slot name="label">${this.label}</slot> 2581 </div> 2582 </label> 2583 2584 <div 2585 part="help" 2586 aria-hidden=${i?"false":"true"} 2587 class="form-control__help-text" 2588 id="help-text" 2589 > 2590 <slot name="help-text">${this.helpText}</slot> 2591 </div> 2592 </div> 2593 `}}Jt.styles=[Me,Kt],Jt.dependencies={"pu-icon":Ge},i([Se('input[type="checkbox"]')],Jt.prototype,"input",void 0),i([Ce()],Jt.prototype,"hasFocus",void 0),i([ke({type:Boolean})],Jt.prototype,"asToggle",void 0),i([ke()],Jt.prototype,"label",void 0),i([ke({type:Boolean})],Jt.prototype,"labelHidden",void 0),i([ke()],Jt.prototype,"title",void 0),i([ke()],Jt.prototype,"name",void 0),i([ke()],Jt.prototype,"value",void 0),i([ke({reflect:!0})],Jt.prototype,"size",void 0),i([ke({type:Boolean,reflect:!0})],Jt.prototype,"disabled",void 0),i([ke({type:Boolean,reflect:!0})],Jt.prototype,"checked",void 0),i([ke({type:Boolean,reflect:!0})],Jt.prototype,"indeterminate",void 0),i([Ft("checked")],Jt.prototype,"defaultChecked",void 0),i([ke({reflect:!0})],Jt.prototype,"form",void 0),i([ke({type:Boolean,reflect:!0})],Jt.prototype,"required",void 0),i([ke({attribute:"help-text"})],Jt.prototype,"helpText",void 0),i([ke({type:Boolean})],Jt.prototype,"hideLabel",null),i([Te(["checked","indeterminate"],{waitUntilFirstUpdate:!0})],Jt.prototype,"handleStateChange",null),Jt.define("pu-checkbox");var Xt=te` 2594 :host { 2595 display: inline-block; 2596 width: 280px; 2597 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif; 2598 border: 1px solid #ccc; 2599 border-radius: 4px; 2600 background: white; 2601 padding: 12px; 2602 box-sizing: border-box; 2603 } 2604 2605 :host([disabled]) { 2606 opacity: 0.5; 2607 pointer-events: none; 2608 } 2609 2610 .color-picker { 2611 display: flex; 2612 flex-direction: column; 2613 gap: 12px; 2614 } 2615 2616 .color-picker__label { 2617 font-size: 14px; 2618 font-weight: 500; 2619 color: #333; 2620 margin: 0; 2621 } 2622 2623 .color-picker__grid { 2624 width: 100%; 2625 height: 200px; 2626 position: relative; 2627 background: linear-gradient(to right, #fff, transparent), linear-gradient(to top, #000, transparent); 2628 border-radius: 4px; 2629 cursor: crosshair; 2630 box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1); 2631 } 2632 2633 .color-picker__grid-handle { 2634 position: absolute; 2635 width: 16px; 2636 height: 16px; 2637 border-radius: 50%; 2638 border: 2px solid white; 2639 box-shadow: 2640 0 0 0 1px rgba(0, 0, 0, 0.3), 2641 0 2px 4px rgba(0, 0, 0, 0.2); 2642 margin-top: -8px; 2643 margin-left: -8px; 2644 pointer-events: none; 2645 background: currentColor; 2646 } 2647 2648 .color-picker__sliders { 2649 display: flex; 2650 flex-direction: column; 2651 gap: 8px; 2652 } 2653 2654 .color-picker__hue-slider, 2655 .color-picker__alpha-slider { 2656 height: 15px; 2657 border-radius: 8px; 2658 position: relative; 2659 cursor: pointer; 2660 box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1); 2661 } 2662 2663 .color-picker__hue-slider { 2664 background: linear-gradient( 2665 to right, 2666 #ff0000 0%, 2667 #ffff00 16.66%, 2668 #00ff00 33.33%, 2669 #00ffff 50%, 2670 #0000ff 66.66%, 2671 #ff00ff 83.33%, 2672 #ff0000 100% 2673 ); 2674 } 2675 2676 .color-picker__alpha-slider { 2677 background: 2678 linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(-45deg, #ccc 25%, transparent 25%), 2679 linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(-45deg, transparent 75%, #ccc 75%); 2680 background-size: 8px 8px; 2681 background-position: 2682 0 0, 2683 0 4px, 2684 4px -4px, 2685 -4px 0px; 2686 } 2687 2688 .color-picker__alpha-slider::after { 2689 content: ''; 2690 position: absolute; 2691 top: 0; 2692 left: 0; 2693 right: 0; 2694 bottom: 0; 2695 border-radius: inherit; 2696 background: linear-gradient(to right, transparent 0%, currentColor 100%); 2697 } 2698 2699 .color-picker__slider-handle { 2700 position: absolute; 2701 top: 50%; 2702 width: 17px; 2703 height: 17px; 2704 background: white; 2705 border-radius: 50%; 2706 box-shadow: 2707 0 0 0 1px rgba(0, 0, 0, 0.3), 2708 0 2px 4px rgba(0, 0, 0, 0.2); 2709 margin-top: -8.5px; 2710 margin-left: -8.5px; 2711 pointer-events: none; 2712 z-index: 1; 2713 } 2714 2715 /* Ensure alpha slider handle matches hue slider handle exactly */ 2716 .color-picker__alpha-slider .color-picker__slider-handle { 2717 background: white; 2718 box-shadow: 2719 0 0 0 1px rgba(0, 0, 0, 0.3), 2720 0 2px 4px rgba(0, 0, 0, 0.2); 2721 } 2722 2723 .color-picker__input { 2724 margin-top: 4px; 2725 } 2726 2727 .color-picker__input-wrapper { 2728 display: flex; 2729 gap: 8px; 2730 align-items: center; 2731 } 2732 2733 .color-picker__input pu-input { 2734 flex: 1; 2735 } 2736 2737 .color-picker__format-button { 2738 min-width: 44px; 2739 height: 32px; 2740 padding: 4px 8px; 2741 border: 1px solid #ccc; 2742 border-radius: 4px; 2743 background: white; 2744 color: #333; 2745 font-size: 12px; 2746 font-weight: 500; 2747 font-family: inherit; 2748 cursor: pointer; 2749 transition: all 0.15s ease; 2750 user-select: none; 2751 } 2752 2753 .color-picker__format-button:hover:not(:disabled) { 2754 background: #f5f5f5; 2755 border-color: #999; 2756 } 2757 2758 .color-picker__format-button:active:not(:disabled) { 2759 background: #e8e8e8; 2760 transform: translateY(1px); 2761 } 2762 2763 .color-picker__format-button:disabled { 2764 opacity: 0.5;
2765 cursor: not-allowed; 2766 } 2767 2768 /* Focus states */ 2769 .color-picker__grid:focus-visible { 2770 outline: 2px solid #0066cc; 2771 outline-offset: 2px; 2772 } 2773 2774 .color-picker__hue-slider:focus-visible, 2775 .color-picker__alpha-slider:focus-visible { 2776 outline: 2px solid #0066cc; 2777 outline-offset: 2px; 2778 } 2779`;const Yt=[qt,te` 2780 /* Main container */ 2781 .input { 2782 display: inline-flex; 2783 align-items: center; 2784 background-color: rgb(from var(--pu-input-color-background, hsl(0 0% 99.5%)) r g b / alpha); 2785 border: solid var(--pu-input-border-width, 0.0625em) 2786 rgb( 2787 from var(--pu-input-border-color, hsl(240, 5%, 65%)) r g b / 2788 calc(alpha * var(--pu-input-opacity-border, 1)) 2789 ); 2790 border-radius: var(--pu-input-border-radius, var(--pu-border-radius, 0.25em)); 2791 height: var(--pu-size-height); 2792 overflow: hidden; 2793 width: 100%; 2794 cursor: text; 2795 } 2796 2797 .input:hover:not(.input--disabled) { 2798 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 2799 background-color: rgb(from var(--pu-input-color-background-hover, hsl(240, 5%, 96%)) r g b / alpha); 2800 border-color: rgb(from var(--pu-input-border-color-hover, hsl(240, 4%, 46%)) r g b / alpha); 2801 } 2802 2803 .input.input--focused:not(.input--disabled) { 2804 background-color: rgb(from var(--pu-color-focus-background) r g b / alpha); 2805 border-color: rgb(from var(--pu-color-focus-border) r g b / alpha); 2806 box-shadow: 2807 0 0 0 0.0625em rgb(from var(--pu-color-focus-background) r g b / alpha), 2808 0 0 0 0.25em rgb(from var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)) r g b / alpha); 2809 } 2810 2811 /* Input field */ 2812 .input__control { 2813 appearance: none; 2814 background: inherit; 2815 color: rgb(from var(--pu-input-color-foreground, inherit) r g b / alpha); 2816 border: none; 2817 flex: 1 1 auto; 2818 font-family: inherit; 2819 font-size: var(--pu-text-size); 2820 height: calc(var(--pu-size-height, 3em) - var(--pu-input-border-width, 0.0625em) * 2); 2821 letter-spacing: var(--pu-input-font-tracking, 0.05em); 2822 padding: 0 var(--pu-space-padding); 2823 width: 100%; 2824 cursor: inherit; 2825 } 2826 2827 .input__control::placeholder { 2828 color: rgb(from var(--pu-input-placeholder-color-foreground, hsl(240, 4%, 46%)) r g b / alpha); 2829 } 2830 .input__control:hover { 2831 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 2832 } 2833 .input__control:focus { 2834 outline: none; 2835 } 2836 2837 /* Prefix/Suffix */ 2838 .input__prefix, 2839 .input__suffix { 2840 display: inline-flex; 2841 flex: 0 0 auto; 2842 align-items: center; 2843 cursor: default; 2844 --pu-icon-color-foreground: rgb(from var(--pu-input-icon-color-foreground, hsl(240 5.9% 10%)) r g b / alpha); 2845 } 2846 .input__prefix ::slotted(*) { 2847 display: flex; 2848 margin-left: var(--pu-space-padding); 2849 } 2850 .input__suffix ::slotted(*) { 2851 display: flex; 2852 margin-right: var(--pu-space-padding); 2853 } 2854`,te` 2855 /* State API Classes */ 2856 .input--disabled { 2857 background-color: rgb(from var(--pu-input-color-background-disabled, hsl(240, 5%, 96%)) r g b / alpha); 2858 border-color: rgb(from var(--pu-input-border-color-disabled, hsl(240, 5%, 84%), inherit) r g b / alpha); 2859 color: rgb(from var(--pu-input-color-foreground-disabled, inherit) r g b / alpha); 2860 cursor: not-allowed; 2861 opacity: 0.5; 2862 } 2863 2864 /* Size API Classes */ 2865 .input--small { 2866 --pu-text-size: var(--pu-input-font-size, var(--pu-text-body-size-xs, 0.75em)); 2867 --pu-size-height: var(--pu-input-size-height, var(--pu-space-800, 2em)); 2868 --pu-space-padding: var(--pu-input-space-inline-padding, var(--pu-space-300, 0.75em)); 2869 --pu-border-radius: var(--pu-input-border-radius, var(--pu-border-radius-050, 0.125em)); 2870 --pu-icon-font-size: var(--pu-input-icon-font-size, var(--pu-text-body-size-sm, 0.875em)); 2871 } 2872 .input--medium { 2873 --pu-text-size: var(--pu-input-font-size, var(--pu-text-body-size-sm, 0.875em)); 2874 --pu-size-height: var(--pu-space-1000, 2.5em); 2875 --pu-space-padding: var(--pu-input-space-inline-padding, var(--pu-space-400, 1em)); 2876 --pu-border-radius: var(--pu-input-border-radius, var(--pu-border-radius-100, 0.25em)); 2877 --pu-icon-font-size: var(--pu-input-icon-font-size, var(--pu-text-body-size-md, 1em)); 2878 } 2879 .input--large { 2880 --pu-text-size: var(--pu-input-font-size, var(--pu-text-body-size-md, 1em)); 2881 --pu-size-height: var(--pu-input-size-height, var(--pu-space-1200, 3em)); 2882 --pu-space-padding: var(--pu-input-space-inline-padding, var(--pu-space-500, 1.25em)); 2883 --pu-border-radius: var(--pu-input-border-radius, var(--pu-border-radius-200, 0.5em)); 2884 --pu-icon-font-size: var(--pu-input-icon-font-size, var(--pu-text-body-size-md, 1em)); 2885 } 2886 2887 /* Label Position API Classes */ 2888 .input--label-inset-top:not(.input--hide-label).input--has-label.input--small, 2889 .input--label-inset-top:not(.input--hide-label).input--has-label.input--medium, 2890 .input--label-inset-top:not(.input--hide-label).input--has-label.input--large { 2891 height: calc(var(--pu-size-height) + calc(var(--pu-space-padding) * 1.5)); 2892 padding-top: calc(var(--pu-space-padding) * 1.5); 2893 } 2894`];class Zt extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,{assumeInteractionOn:["pu-blur","pu-input"]}),this.type="text",this.inputmode="text",this.autocomplete="on",this.size="medium",this.name="",this.value="",this.form="",this.label="",this.labelHidden=!1,this.helpText="",this.positionLabel="above",this.placeholder="",this.readonly=!1,this.required=!1,this.disabled=!1,this.autofocus=!1,this.hasFocus=!1,this.hasSlotController=new Xe(this,"label","help-text"),this.deprecatedPropertyMap=[{old:"hideLabel",new:"labelHidden",defaultValue:!1}]}get hideLabel(){return this.labelHidden}set hideLabel(e){this._handleDeprecated("hideLabel",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}get validity(){return this.input.validity}get validationMessage(){return this.input.validationMessage}firstUpdated(){this.formControlController.updateValidity()}
2894handleBlur(){this.hasFocus=!1,this.emit("pu-blur")}handleFocus(){this.hasFocus=!0,this.emit("pu-focus")}handleInput(){this.value=this.input.value,this.formControlController.updateValidity(),this.emit("pu-input")}handleInvalid(e){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(e)}handleChange(){this.value=this.input.value,this.emit("pu-change")}handleKeyDown(e){const t=e.metaKey||e.ctrlKey||e.shiftKey||e.altKey;"Enter"!==e.key||t||setTimeout((()=>{e.defaultPrevented||e.isComposing||this.formControlController.submit()}))}checkValidity(){return this.input.checkValidity()}reportValidity(){return this.input.reportValidity()}setCustomValidity(e){this.input.setCustomValidity(e),this.formControlController.updateValidity()}getForm(){return this.formControlController.getForm()}getValue(){if(this.input)return this.input.value}setValue(e){e&&(this.value=e)}render(){const e=this.hasSlotController.test("label"),t=this.hasSlotController.test("help-text"),o=!!this.label||!!e,i=this.labelHidden&&this.required?`* ${this.placeholder}`:this.placeholder,r=!!this.helpText||!!t;return $` 2895 <div 2896 part="base input" 2897 class="${J({"form-control":!0,"form-control--small":"small"===this.size,"form-control--medium":"medium"===this.size,"form-control--large":"large"===this.size,"form-control--has-label":o,"form-control--hide-label":this.labelHidden,"form-control--has-help-text":r,[`form-control--label-${this.positionLabel}`]:!0})}"> 2898 ${"above"===this.positionLabel||"inset-top"===this.positionLabel?$` 2899 <label 2900 part="label" 2901 class="${J({"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 2902 for="input" 2903 aria-hidden=${o?"false":"true"}> 2904 <slot name="label">${this.label}</slot> 2905 </label> 2906 `:""} 2907 <div class="form-control__input"> 2908 <div 2909 part="input" 2910 class=${J({input:!0,"input--small":"small"===this.size,"input--medium":"medium"===this.size,"input--large":"large"===this.size,"input--disabled":this.disabled,"input--focused":this.hasFocus,"input--empty":!this.value,"input--has-label":o,"input--hide-label":this.labelHidden,[`input--label-${this.positionLabel}`]:!0})}> 2911 <span 2912 part="prefix" 2913 class="input__prefix"> 2914 <slot name="prefix"></slot> 2915 </span> 2916 ${"inset-left"===this.positionLabel?$` 2917 <label 2918 part="label" 2919 class="${J({"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 2920 for="input" 2921 aria-hidden=${o?"false":"true"}> 2922 <slot name="label">${this.label}</slot> 2923 </label> 2924 `:""} 2925 <input 2926 part="control" 2927 class="input__control" 2928 id="input" 2929 inputmode="${this.inputmode}" 2930 autocomplete=${Ze(this.autocomplete)} 2931 type="${this.type}" 2932 .value="${this.value}" 2933 name="${Ze(this.name)}" 2934 placeholder="${i}" 2935 ?disabled="${this.disabled}" 2936 ?readonly=${this.readonly} 2937 ?required="${this.required}" 2938 ?autofocus=${this.autofocus} 2939 @change=${this.handleChange} 2940 @input=${this.handleInput} 2941 @invalid=${this.handleInvalid} 2942 @keydown=${this.handleKeyDown} 2943 @focus=${this.handleFocus} 2944 @blur=${this.handleBlur} />
2945 <span 2946 part="suffix" 2947 class="input__suffix"> 2948 <slot name="suffix"></slot> 2949 </span> 2950 </div> 2951 </div> 2952 <div 2953 part="help" 2954 id="help-text" 2955 class="form-control__help-text" 2956 aria-hidden=${r?"false":"true"}> 2957 <slot name="help-text">${this.helpText}</slot> 2958 </div> 2959 </div> 2960 `}}function Qt(e,t){(function(e){return"string"==typeof e&&-1!==e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");const o=function(e){return"string"==typeof e&&-1!==e.indexOf("%")}(e);return e=360===t?e:Math.min(t,Math.max(0,parseFloat(e))),o&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:e=360===t?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t))}function eo(e){return Math.min(1,Math.max(0,e))}function to(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function oo(e){return Number(e)<=1?100*Number(e)+"%":e}function io(e){return 1===e.length?"0"+e:String(e)}function ro(e,t,o){e=Qt(e,255),t=Qt(t,255),o=Qt(o,255);const i=Math.max(e,t,o),r=Math.min(e,t,o);let a=0,s=0;const n=(i+r)/2;if(i===r)s=0,a=0;else{const l=i-r;switch(s=n>.5?l/(2-i-r):l/(i+r),i){case e:a=(t-o)/l+(t<o?6:0);break;case t:a=(o-e)/l+2;break;case o:a=(e-t)/l+4}a/=6}return{h:a,s,l:n}}function ao(e,t,o){return o<0&&(o+=1),o>1&&(o-=1),o<1/6?e+6*o*(t-e):o<.5?t:o<2/3?e+(t-e)*(2/3-o)*6:e}function so(e,t,o){e=Qt(e,255),t=Qt(t,255),o=Qt(o,255);const i=Math.max(e,t,o),r=Math.min(e,t,o);let a=0;const s=i,n=i-r,l=0===i?0:n/i;if(i===r)a=0;else{switch(i){case e:a=(t-o)/n+(t<o?6:0);break;case t:a=(o-e)/n+2;break;case o:a=(e-t)/n+4}a/=6}return{h:a,s:l,v:s}}function no(e,t,o,i){const r=[io(Math.round(e).toString(16)),io(Math.round(t).toString(16)),io(Math.round(o).toString(16))];return i&&r[0].startsWith(r[0].charAt(1))&&r[1].startsWith(r[1].charAt(1))&&r[2].startsWith(r[2].charAt(1))?r[0].charAt(0)+r[1].charAt(0)+r[2].charAt(0):r.join("")}function lo(e,t,o){let i=1-e/255,r=1-t/255,a=1-o/255,s=Math.min(i,r,a);return 1===s?(i=0,r=0,a=0):(i=(i-s)/(1-s)*100,r=(r-s)/(1-s)*100,a=(a-s)/(1-s)*100),s*=100,{c:Math.round(i),m:Math.round(r),y:Math.round(a),k:Math.round(s)}}function po(e){return Math.round(255*parseFloat(e)).toString(16)}function co(e){return uo(e)/255}function uo(e){return parseInt(e,16)}Zt.styles=[Me,Yt],i([ke()],Zt.prototype,"type",void 0),i([ke()],Zt.prototype,"inputmode",void 0),i([ke()],Zt.prototype,"autocomplete",void 0),i([ke({reflect:!0})],Zt.prototype,"size",void 0),i([ke()],Zt.prototype,"name",void 0),i([ke({reflect:!0})],Zt.prototype,"value",void 0),i([ke({reflect:!0})],Zt.prototype,"form",void 0),i([ke()],Zt.prototype,"label",void 0),i([ke({type:Boolean})],Zt.prototype,"labelHidden",void 0),i([ke()],Zt.prototype,"helpText",void 0),i([ke()],Zt.prototype,"positionLabel",void 0),i([ke()],Zt.prototype,"placeholder",void 0),i([ke({type:Boolean})],Zt.prototype,"readonly",void 0),i([ke({type:Boolean})],Zt.prototype,"required",void 0),i([ke({type:Boolean,reflect:!0})],Zt.prototype,"disabled",void 0),i([ke({type:Boolean})],Zt.prototype,"autofocus",void 0),i([Ce()],Zt.prototype,"hasFocus",void 0),i([Se("input")],Zt.prototype,"input",void 0),i([ke({type:Boolean})],Zt.prototype,"hideLabel",null);const ho={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",s
2960almon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function go(e){let t={r:0,g:0,b:0},o=1,i=null,r=null,a=null,s=!1,n=!1;return"string"==typeof e&&(e=function(e){if(e=e.trim().toLowerCase(),0===e.length)return!1;let t=!1;if(ho[e])e=ho[e],t=!0;else if("transparent"===e)return{r:0,g:0,b:0,a:0,format:"name"};let o=vo.rgb.exec(e);if(o)return{r:o[1],g:o[2],b:o[3]};if(o=vo.rgba.exec(e),o)return{r:o[1],g:o[2],b:o[3],a:o[4]};if(o=vo.hsl.exec(e),o)return{h:o[1],s:o[2],l:o[3]};if(o=vo.hsla.exec(e),o)return{h:o[1],s:o[2],l:o[3],a:o[4]};if(o=vo.hsv.exec(e),o)return{h:o[1],s:o[2],v:o[3]};if(o=vo.hsva.exec(e),o)return{h:o[1],s:o[2],v:o[3],a:o[4]};if(o=vo.cmyk.exec(e),o)return{c:o[1],m:o[2],y:o[3],k:o[4]};if(o=vo.hex8.exec(e),o)return{r:uo(o[1]),g:uo(o[2]),b:uo(o[3]),a:co(o[4]),format:t?"name":"hex8"};if(o=vo.hex6.exec(e),o)return{r:uo(o[1]),g:uo(o[2]),b:uo(o[3]),format:t?"name":"hex"};if(o=vo.hex4.exec(e),o)return{r:uo(o[1]+o[1]),g:uo(o[2]+o[2]),b:uo(o[3]+o[3]),a:co(o[4]+o[4]),format:t?"name":"hex8"};if(o=vo.hex3.exec(e),o)return{r:uo(o[1]+o[1]),g:uo(o[2]+o[2]),b:uo(o[3]+o[3]),format:t?"name":"hex"};return!1}(e)),"object"==typeof e&&(yo(e.r)&&yo(e.g)&&yo(e.b)?(t=function(e,t,o){return{r:255*Qt(e,255),g:255*Qt(t,255),b:255*Qt(o,255)}}(e.r,e.g,e.b),s=!0,n="%"===String(e.r).substr(-1)?"prgb":"rgb"):yo(e.h)&&yo(e.s)&&yo(e.v)?(i=oo(e.s),r=oo(e.v),t=function(e,t,o){e=6*Qt(e,360),t=Qt(t,100),o=Qt(o,100);const i=Math.floor(e),r=e-i,a=o*(1-t),s=o*(1-r*t),n=o*(1-(1-r)*t),l=i%6;return{r:255*[o,s,a,a,n,o][l],g:255*[n,o,o,s,a,a][l],b:255*[a,a,n,o,o,s][l]}}(e.h,i,r),s=!0,n="hsv"):yo(e.h)&&yo(e.s)&&yo(e.l)?(i=oo(e.s),a=oo(e.l),t=function(e,t,o){let i,r,a;if(e=Qt(e,360),t=Qt(t,100),o=Qt(o,100),0===t)r=o,a=o,i=o;else{const s=o<.5?o*(1+t):o+t-o*t,n=2*o-s;i=ao(n,s,e+1/3),r=ao(n,s,e),a=ao(n,s,e-1/3)}return{r:255*i,g:255*r,b:255*a}}(e.h,i,a),s=!0,n="hsl"):yo(e.c)&&yo(e.m)&&yo(e.y)&&yo(e.k)&&(t=function(e,t,o,i){const r=i/100;return{r:255*(1-e/100)*(1-r),g:255*(1-t/100)*(1-r),b:255*(1-o/100)*(1-r)}}(e.c,e.m,e.y,e.k),s=!0,n="cmyk"),Object.prototype.hasOwnProperty.call(e,"a")&&(o=e.a)),o=to(o),{ok:s,format:e.format||n,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:o}}const mo="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",bo="[\\s|\\(]+("+mo+")[,|\\s]+("+mo+")[,|\\s]+("+mo+")\\s*\\)?",fo="[\\s|\\(]+("+mo+")[,|\\s]+("+mo+")[,|\\s]+("+mo+")[,|\\s]+("+mo+")\\s*\\)?",vo={CSS_UNIT:new RegExp(mo),rgb:new RegExp("rgb"+bo),rgba:new RegExp("rgba"+fo),hsl:new RegExp("hsl"+bo),hsla:new RegExp("hsla"+fo),hsv:new RegExp("hsv"+bo),hsva:new RegExp("hsva"
2960+fo),cmyk:new RegExp("cmyk"+fo),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function yo(e){return"number"==typeof e?!Number.isNaN(e):vo.CSS_UNIT.test(e)}class wo{constructor(e="",t={}){if(e instanceof wo)return e;"number"==typeof e&&(e=function(e){return{r:e>>16,g:(65280&e)>>8,b:255&e}}(e)),this.originalInput=e;const o=go(e);this.originalInput=e,this.r=o.r,this.g=o.g,this.b=o.b,this.a=o.a,this.roundA=Math.round(100*this.a)/100,this.format=t.format??o.format,this.gradientType=t.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=o.ok}isDark(){return this.getBrightness()<128}isLight(){return!this.isDark()}getBrightness(){const e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3}getLuminance(){const e=this.toRgb();let t,o,i;const r=e.r/255,a=e.g/255,s=e.b/255;return t=r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4),o=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),i=s<=.03928?s/12.92:Math.pow((s+.055)/1.055,2.4),.2126*t+.7152*o+.0722*i}getAlpha(){return this.a}setAlpha(e){return this.a=to(e),this.roundA=Math.round(100*this.a)/100,this}isMonochrome(){const{s:e}=this.toHsl();return 0===e}toHsv(){const e=so(this.r,this.g,this.b);return{h:360*e.h,s:e.s,v:e.v,a:this.a}}toHsvString(){const e=so(this.r,this.g,this.b),t=Math.round(360*e.h),o=Math.round(100*e.s),i=Math.round(100*e.v);return 1===this.a?`hsv(${t}, ${o}%, ${i}%)`:`hsva(${t}, ${o}%, ${i}%, ${this.roundA})`}toHsl(){const e=ro(this.r,this.g,this.b);return{h:360*e.h,s:e.s,l:e.l,a:this.a}}toHslString(){const e=ro(this.r,this.g,this.b),t=Math.round(360*e.h),o=Math.round(100*e.s),i=Math.round(100*e.l);return 1===this.a?`hsl(${t}, ${o}%, ${i}%)`:`hsla(${t}, ${o}%, ${i}%, ${this.roundA})`}toHex(e=!1){return no(this.r,this.g,this.b,e)}toHexString(e=!1){return"#"+this.toHex(e)}toHex8(e=!1){return function(e,t,o,i,r){const a=[io(Math.round(e).toString(16)),io(Math.round(t).toString(16)),io(Math.round(o).toString(16)),io(po(i))];return r&&a[0].startsWith(a[0].charAt(1))&&a[1].startsWith(a[1].charAt(1))&&a[2].startsWith(a[2].charAt(1))&&a[3].startsWith(a[3].charAt(1))?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0)+a[3].charAt(0):a.join("")}(this.r,this.g,this.b,this.a,e)}toHex8String(e=!1){return"#"+this.toHex8(e)}toHexShortString(e=!1){return 1===this.a?this.toHexString(e):this.toHex8String(e)}toRgb(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}}toRgbString(){const e=Math.round(this.r),t=Math.round(this.g),o=Math.round(this.b);return 1===this.a?`rgb(${e}, ${t}, ${o})`:`rgba(${e}, ${t}, ${o}, ${this.roundA})`}toPercentageRgb(){const e=e=>`${Math.round(100*Qt(e,255))}%`;return{r:e(this.r),g:e(this.g),b:e(this.b),a:this.a}}toPercentageRgbString(){const e=e=>Math.round(100*Qt(e,255));return 1===this.a?`rgb(${e(this.r)}%, ${e(this.g)}%, ${e(this.b)}%)`:`rgba(${e(this.r)}%, ${e(this.g)}%, ${e(this.b)}%, ${this.roundA})`}toCmyk(){return{...lo(this.r,this.g,this.b)}}toCmykString(){const{c:e,m:t,y:o,k:i}=lo(this.r,this.g,this.b);return`cmyk(${e}, ${t}, ${o}, ${i})`}toName(){if(0===this.a)return"transparent";if(this.a<1)return!1;const e="#"+no(this.r,this.g,this.b,!1);for(const[t,o]of Object.entries(ho))if(e===o)return t;return!1}toString(e){const t=Boolean(e);e=e??this.format;let o=!1;const i=this.a<1&&this.a>=0;return t||!i||!e.startsWith("hex")&&"name"!==e?("rgb"===e&&(o=this.toRgbString()),"prgb"===e&&(o=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(o=this.toHexString()),"hex3"===e&&(o=this.toHexString(!0)),"hex4"===e&&(o=this.toHex8String(!0)),"hex8"===e&&(o=this.toHex8String()),"name"===e&&(o=this.toName()),"hsl"===e&&(o=this.toHslString()),"hsv"===e&&(o=this.toHsvString()),"cmyk"===e&&(o=this.toCmykString()),o||this.toHexString()):"name"===e&&0===this.a?this.toName():this.toRgbString()}toNumber(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)}clone(){return new wo(this.toString())}lighten(e=10){const t=this.toHsl();return t.l+=e/100,t.l=eo(t.l),new wo(t)}
2960brighten(e=10){const t=this.toRgb();return t.r=Math.max(0,Math.min(255,t.r-Math.round(-e/100*255))),t.g=Math.max(0,Math.min(255,t.g-Math.round(-e/100*255))),t.b=Math.max(0,Math.min(255,t.b-Math.round(-e/100*255))),new wo(t)}darken(e=10){const t=this.toHsl();return t.l-=e/100,t.l=eo(t.l),new wo(t)}tint(e=10){return this.mix("white",e)}shade(e=10){return this.mix("black",e)}desaturate(e=10){const t=this.toHsl();return t.s-=e/100,t.s=eo(t.s),new wo(t)}saturate(e=10){const t=this.toHsl();return t.s+=e/100,t.s=eo(t.s),new wo(t)}greyscale(){return this.desaturate(100)}spin(e){const t=this.toHsl(),o=(t.h+e)%360;return t.h=o<0?360+o:o,new wo(t)}mix(e,t=50){const o=this.toRgb(),i=new wo(e).toRgb(),r=t/100,a={r:(i.r-o.r)*r+o.r,g:(i.g-o.g)*r+o.g,b:(i.b-o.b)*r+o.b,a:(i.a-o.a)*r+o.a};return new wo(a)}analogous(e=6,t=30){const o=this.toHsl(),i=360/t,r=[this];for(o.h=(o.h-(i*e>>1)+720)%360;--e;)o.h=(o.h+i)%360,r.push(new wo(o));return r}complement(){const e=this.toHsl();return e.h=(e.h+180)%360,new wo(e)}monochromatic(e=6){const t=this.toHsv(),{h:o}=t,{s:i}=t;let{v:r}=t;const a=[],s=1/e;for(;e--;)a.push(new wo({h:o,s:i,v:r})),r=(r+s)%1;return a}splitcomplement(){const e=this.toHsl(),{h:t}=e;return[this,new wo({h:(t+72)%360,s:e.s,l:e.l}),new wo({h:(t+216)%360,s:e.s,l:e.l})]}onBackground(e){const t=this.toRgb(),o=new wo(e).toRgb(),i=t.a+o.a*(1-t.a);return new wo({r:(t.r*t.a+o.r*o.a*(1-t.a))/i,g:(t.g*t.a+o.g*o.a*(1-t.a))/i,b:(t.b*t.a+o.b*o.a*(1-t.a))/i,a:i})}triad(){return this.polyad(3)}tetrad(){return this.polyad(4)}polyad(e){const t=this.toHsl(),{h:o}=t,i=[this],r=360/e;for(let a=1;a<e;a++)i.push(new wo({h:(o+a*r)%360,s:t.s,l:t.l}));return i}equals(e){const t=new wo(e);return"cmyk"===this.format||"cmyk"===t.format?this.toCmykString()===t.toCmykString():this.toRgbString()===t.toRgbString()}}class xo extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,{assumeInteractionOn:["pu-blur","pu-input"]}),this.hue=0,this.saturation=100,this.brightness=100,this.alpha=100,this.value="rgba(255, 0, 0, 0.8)",this.defaultValue="rgba(255, 0, 0, 0.8)",this.format="rgb",this.label="",this.name="",this.disabled=!1,this.required=!1,this.handleGridPointerDown=e=>{if(this.disabled)return;const t=e.target;t.setPointerCapture(e.pointerId);const o=e=>{this.updateGridValues(e)},i=()=>{t.removeEventListener("pointermove",o),t.removeEventListener("pointerup",i),this.emit("pu-change")};t.addEventListener("pointermove",o),t.addEventListener("pointerup",i),this.updateGridValues(e),this.emit("pu-input")},this.handleHuePointerDown=e=>{if(this.disabled)return;const t=e.target;t.setPointerCapture(e.pointerId);const o=e=>{this.updateHueValue(e)},i=()=>{t.removeEventListener("pointermove",o),t.removeEventListener("pointerup",i),this.emit("pu-change")};t.addEventListener("pointermove",o),t.addEventListener("pointerup",i),this.updateHueValue(e),this.emit("pu-input")},this.handleAlphaPointerDown=e=>{if(this.disabled)return;const t=e.target;t.setPointerCapture(e.pointerId);const o=e=>{this.updateAlphaValue(e)},i=()=>{t.removeEventListener("pointermove",o),t.removeEventListener("pointerup",i),this.emit("pu-change")};t.addEventListener("pointermove",o),t.addEventListener("pointerup",i),this.updateAlphaValue(e),this.emit("pu-input")},this.handleFormatToggle=()=>{const e=["hex","rgb","hsl","hsv"],t=(e.indexOf(this.format)+1)%e.length;this.format=e[t],this.syncValues(),this.emit("pu-change")}}get validity(){return this.input?.validity||{valid:!0,badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valueMissing:!1}}get validationMessage(){return this.input?.validationMessage||""}connectedCallback(){super.connectedCallback(),this.parseColor(this.value)}firstUpdated(){}parseColor(e){try{const t=new wo(e);if(t.isValid){const e=t.toHsv();this.hue=e.h||0,this.saturation=100*e.s,this.brightness=100*e.v,this.alpha=100*e.a,this.value=t.toHexString()}}catch(t){console.warn("Invalid color:",e)}}syncValues(){try{const e=new wo({h:this.hue,s:this.saturation/100,v:this.brightness/100,a:this.alpha/100}
2960);switch(this.format){case"hex":this.value=this.alpha<100?e.toHex8String():e.toHexString();break;case"rgb":default:this.value=e.toRgbString();break;case"hsl":this.value=e.toHslString();break;case"hsv":this.value=e.toHsvString()}this.input&&(this.input.value=this.value)}catch(e){console.warn("Error syncing color values:",e)}}handleTextInput(e){const t=e.target,o=this.value;this.parseColor(t.value),this.value!==o&&(this.emit("pu-change"),this.emit("pu-input"))}checkValidity(){return this.input?.checkValidity()||!0}getForm(){return this.formControlController.getForm()}reportValidity(){return this.input?.reportValidity()||!0}setCustomValidity(e){this.input&&(this.input.setCustomValidity(e),this.formControlController.updateValidity())}updateGridValues(e){const t=e.currentTarget.getBoundingClientRect(),o=Math.max(0,Math.min(e.clientX-t.left,t.width)),i=Math.max(0,Math.min(e.clientY-t.top,t.height));this.saturation=o/t.width*100,this.brightness=100-i/t.height*100,this.syncValues(),this.emit("pu-input")}updateHueValue(e){const t=e.currentTarget.getBoundingClientRect(),o=Math.max(0,Math.min(e.clientX-t.left,t.width));this.hue=o/t.width*360,this.syncValues(),this.emit("pu-input")}updateAlphaValue(e){const t=e.currentTarget.getBoundingClientRect(),o=Math.max(0,Math.min(e.clientX-t.left,t.width));this.alpha=o/t.width*100,this.syncValues(),this.emit("pu-input")}render(){return $` 2961 <div 2962 part="base color-picker" 2963 class="color-picker" 2964 aria-disabled=${this.disabled?"true":"false"} 2965 aria-labelledby="label" 2966 > 2967 ${this.label?$` 2968 <label 2969 id="label" 2970 class="color-picker__label" 2971 > 2972 ${this.label} 2973 </label> 2974 `:""} 2975 2976 <!-- Color Grid --> 2977 <div 2978 part="grid" 2979 class="color-picker__grid" 2980 style="background-color: hsl(${this.hue}, 100%, 50%)" 2981 @pointerdown=${this.handleGridPointerDown} 2982 > 2983 <div 2984 part="grid-handle" 2985 class="color-picker__grid-handle" 2986 style="left: ${this.saturation}%; top: ${100-this.brightness}%; background-color: ${this.value}" 2987 ></div> 2988 </div> 2989 2990 <!-- Sliders Container --> 2991 <div class="color-picker__sliders"> 2992 <!-- Hue Slider --> 2993 <div 2994 part="hue-slider" 2995 class="color-picker__hue-slider" 2996 @pointerdown=${this.handleHuePointerDown} 2997 > 2998 <div 2999 class="color-picker__slider-handle" 3000 style="left: ${this.hue/360*100}%" 3001 ></div> 3002 </div> 3003 3004 <!-- Alpha Slider --> 3005 <div 3006 part="alpha-slider" 3007 class="color-picker__alpha-slider" 3008 style="color: ${this.value}" 3009 @pointerdown=${this.handleAlphaPointerDown} 3010 > 3011 <div 3012 class="color-picker__slider-handle" 3013 style="left: ${this.alpha}%" 3014 ></div> 3015 </div> 3016 </div> 3017 3018 <!-- Text Input and Format Controls --> 3019 <div class="color-picker__input"> 3020 <div class="color-picker__input-wrapper"> 3021 <pu-input 3022 part="input" 3023 type="text" 3024 name=${this.name} 3025 value=${this.value} 3026 ?required=${this.required} 3027 ?disabled=${this.disabled} 3028 placeholder="Enter color (hex, rgb, rgba, hsl, hsla)" 3029 @pu-input=${this.handleTextInput} 3030 @pu-change=${this.handleTextInput} 3031 ></pu-input> 3032 <button 3033 type="button" 3034 part="format-button" 3035 class="color-picker__format-button" 3036 ?disabled=${this.disabled} 3037 @click=${this.handleFormatToggle} 3038 title="Toggle color format" 3039 > 3040 ${this.format.toUpperCase()} 3041 </button> 3042 </div> 3043 </div> 3044 </div> 3045 `}}xo.styles=[Me,Xt],xo.dependencies={"pu-input":Zt},i([Ce()],xo.prototype,"hue",void 0),i([Ce()],xo.prototype,"saturation",void 0),i([Ce()],xo.prototype,"brightness",void 0),i([Ce()],xo.prototype,"alpha",void 0),i([Se("pu-input")],xo.prototype,"input",void 0),i([ke()],xo.prototype,"value",void 0),i([ke({attribute:"default-value"})],xo.prototype,"defaultValue",void 0),i([ke()],xo.prototype,"format",void 0),i([ke()],xo.prototype,"label",void 0),i([ke()],xo.prototype,"name",void 0),i([ke({type:Boolean,reflect:!0})],xo.prototype,"disabled",void 0),i([ke({type:Boolean,reflect:!0})],xo.prototype,"required",void 0),xo.define("pu-color-picker");const _o=[te` 3046 :host { 3047 display: block; 3048 --foreground-color: var(--pu-table-color-foreground, var(--pu-color-foreground)); 3049 --background-color: var(--pu-table-color-background, var(--pu-color-background)); 3050 } 3051 3052 /* Base table layout */ 3053 .data-table { 3054 width: 100%; 3055 color: var(--foreground-color); 3056 background: var(--pu-table-color-gradient); 3057 background-color: rgb(from var(--background-color) r g b / alpha); 3058 border-collapse: separate; 3059 border-spacing: 0; 3060 border-radius: var(--pu-table-border-radius); 3061 padding: var(--pu-table-space-padding); 3062 } 3063 3064 .data-table__body, 3065 .data-table__content { 3066 width: 100%; 3067 } 3068`,te` 3069 /* Responsive scroll behavior */ 3070 .data-table.data-table--scroll { 3071 overflow-x: auto; 3072 -webkit-overflow-scrolling: touch; 3073 } 3074 3075 /* Hide header when specified */ 3076 .data-table--hide-header ::slotted([slot='header']) { 3077 display: none; 3078 } 3079 3080 /* Grid view layout */ 3081 @media (min-width: 48em) { 3082 .data-table--grid .data-table__body { 3083 display: grid; 3084 grid-template-columns: var(--pu-table-grid-columns, var(--grid-columns, 1fr 1fr 1fr)); 3085 gap: var(--pu-table-space-gap, var(--grid-gap, 1.5em)); 3086 } 3087 } 3088 3089 /* Table view layout - use table-specific columns */ 3090 .data-table--grid ::slotted(pu-data-table-header) { 3091 display: none; 3092 } 3093 3094 .data-table--grid ::slotted(pu-data-table-row) { 3095 display: flex; 3096 flex-direction: column; 3097 gap: 0; 3098 border-style: solid; 3099 border-color: var(--pu-table-content-border-color); 3100 border-width: var(--pu-table-content-border-width, 0.0625em); 3101 border-radius: var(--pu-table-content-border-radius); 3102 padding: var(--pu-table-content-space-padding, 1em); 3103 } 3104 3105 /* Responsive behavior - affects child components */ 3106 @media (max-width: 48em) { 3107 /* Grid view - use narrow gap on small viewports */ 3108 .data-table--grid .data-table__body { 3109 display: flex; 3110 flex-direction: column; 3111 gap: var(--pu-table-space-gap, var(--grid-gap-narrow, 1em)); 3112 } 3113 3114 .data-table:not(.data-table--scroll) ::slotted(pu-data-table-row) { 3115 display: block; 3116 } 3117 3118 /* Hide header in grid view on mobile */ 3119 .data-table:not(.data-table--scroll) ::slotted(pu-data-table-header) { 3120 display: none; 3121 } 3122 } 3123`],ko=te` 3124 :host { 3125 --pu-color-foreground: var(--pu-table-content-color-foreground); 3126 --pu-color-background: var(--pu-table-content-color-background); 3127 3128 color: var(--pu-card-content-color-foreground); 3129 background: var(--pu-table-content-color-gradient); 3130 background-color: rgb(from var(--pu-table-content-color-background) r g b / alpha); 3131 3132 display: grid; 3133 gap: var(--pu-table-columns-space-gap, 1em); 3134 grid-template-columns: var(--pu-table-columns, var(--table-columns, repeat(auto-fit, minmax(16em, 1fr)))); 3135 border-radius: var(--pu-table-content-border-radius); 3136 border-bottom-style: solid; 3137 border-bottom-width: var(--pu-table-content-border-width); 3138 border-bottom-color: rgb(from var(--pu-table-content-border-color) r g b / alpha); 3139 padding: var(--pu-table-content-space-padding, 0.5em); 3140 width: 100%; 3141 } 3142 :host(:last-child) { 3143 border-bottom: none; 3144 } 3145 /* Row variants */ 3146 :host([variant='header']) { 3147 border-bottom-style: solid; 3148 border-bottom-width: var(--pu-table-header-border-width); 3149 border-bottom-color: rgb(from var(--pu-table-header-border-color) r g b / alpha); 3150 } 3151 3152 :host([variant='footer']) { 3153 border-bottom: none; 3154 border-top-style: solid; 3155 border-top-width: var(--pu-table-footer-border-width); 3156 border-top-color: rgb(from var(--pu-table-footer-border-color) r g b / alpha); 3157 } 3158 3159 .data-table-row { 3160 display: contents; 3161 } 3162`;class Co extends Ue{constructor(){super(...arguments),this.variant="body"}render(){const e={"data-table-row":!0,[`data-table-row--${this.variant}`]:!0};return $` 3163 <div 3164 part="base table-row" 3165 class="${J(e)}" 3166 role="row" 3167 > 3168 <slot></slot> 3169 </div> 3170 `}}Co.styles=[Me,ko],Co.dependencies={},i([ke()],Co.prototype,"variant",void 0);const $o=te` 3171 :host { 3172 --pu-color-foreground: var(--pu-table-content-color-foreground); 3173 --pu-color-background: var(--pu-table-content-color-background); 3174 3175 display: block; 3176 position: relative; 3177 color: var(--pu-table-header-color-foreground, var(--pu-color-foreground)); 3178 background-color: rgb(from var(--pu-table-header-color-background, var(--pu-color-background)) r g b / alpha); 3179 } 3180 3181 :host([sticky]) { 3182 position: sticky; 3183 top: 0; 3184 z-index: 10; 3185 } 3186`;class So extends Ue{constructor(){super(...arguments),this.sticky=!1}render(){const e={"data-table-header":!0,"data-table-header--sticky":this.sticky};return $` 3187 <div 3188 part="base table-header" 3189 class="${J(e)}" 3190 role="rowgroup" 3191 > 3192 <slot></slot> 3193 </div> 3194 `}}So.styles=[Me,$o],So.dependencies={},i([ke({type:Boolean})],So.prototype,"sticky",void 0);const zo=te` 3195 :host { 3196 display: block; 3197 } 3198 3199 /* Individual cell styling */ 3200 .data-table-cell { 3201 display: flex; 3202 align-items: var(--pu-table-cell-layout-align, start); 3203 justify-content: var(--pu-table-cell-layout-justify, start); 3204 padding: var(--pu-table-cell-space-padding, 0.5em); 3205 height: 100%; /* Ensure cells take up full height for alignment */ 3206 min-width: 0; /* Allow grid items to shrink below their content size */ 3207 } 3208 3209 /* Cell alignment classes */ 3210 .data-table-cell--align-center { 3211 --pu-table-cell-layout-align: center; 3212 }
3213 .data-table-cell--align-end { 3214 --pu-table-cell-layout-align: end; 3215 } 3216 .data-table-cell--align-stretch { 3217 --pu-table-cell-layout-align: stretch; 3218 } 3219 3220 .data-table-cell--justify-center { 3221 --pu-table-cell-layout-justify: center; 3222 } 3223 .data-table-cell--justify-end { 3224 --pu-table-cell-layout-justify: end; 3225 } 3226 .data-table-cell--justify-space-between { 3227 --pu-table-cell-layout-justify: space-between; 3228 } 3229 3230 /* Header cell styling */ 3231 .data-table-cell--header { 3232 font-weight: var(--pu-font-weight-600); 3233 } 3234`;class Ao extends Ue{constructor(){super(...arguments),this.align="start",this.justify="start",this.header=!1}render(){const e={"data-table-cell":!0,"data-table-cell--header":this.header,[`data-table-cell--align-${this.align}`]:"start"!==this.align,[`data-table-cell--justify-${this.justify}`]:"start"!==this.justify},t=this.header?"columnheader":"cell";return $` 3235 <div 3236 part="base table-cell" 3237 class="${J(e)}" 3238 role="${t}" 3239 > 3240 <slot></slot> 3241 </div> 3242 `}}Ao.styles=[Me,zo],Ao.dependencies={},i([ke()],Ao.prototype,"align",void 0),i([ke()],Ao.prototype,"justify",void 0),i([ke({type:Boolean})],Ao.prototype,"header",void 0);const Po=te` 3243 :host { 3244 --pu-color-foreground: var(--pu-table-content-color-foreground); 3245 --pu-color-background: var(--pu-table-content-color-background); 3246 3247 display: block; 3248 color: var(--pu-table-footer-color-foreground, var(--pu-color-foreground)); 3249 background-color: rgb(from var(--pu-table-footer-color-background, var(--pu-color-background)) r g b / alpha); 3250 } 3251`;class No extends Ue{render(){return $` 3252 <div 3253 part="base table-footer" 3254 class="${J({"data-table-footer":!0})}" 3255 role="rowgroup" 3256 > 3257 <slot></slot> 3258 </div> 3259 `}}No.styles=[Me,Po];class Eo extends Ue{constructor(){super(...arguments),this.currentBreakpoint="",this.layout="table",this.responsiveBehavior="grid",this.tableColumns=[],this.gridColumns=[],this.title=""}tableStyles(){let e={};if(this.tableColumns.length>0?e["--table-columns"]=this.tableColumns.join(" "):e["--table-columns"]="1fr","grid"===this.layout){const t=this.getCurrentGridColumns();e["--grid-columns"]=t}return this.spacing&&(e["--grid-gap"]=parseInt(this.spacing)/16+"em"),this.spacingNarrow?e["--grid-gap-narrow"]=parseInt(this.spacingNarrow)/16+"em":this.spacing&&(e["--grid-gap-narrow"]=parseInt(this.spacing)/16+"em"),e}connectedCallback(){super.connectedCallback(),this.setupResizeObserver()}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver?.disconnect()}setupResizeObserver(){this.resizeObserver=new ResizeObserver((()=>{this.updateResponsiveStyles()})),this.resizeObserver.observe(this),this.updateResponsiveStyles()}getCurrentGridColumns(){if(!this.gridColumns||Array.isArray(this.gridColumns))return Array.isArray(this.gridColumns)?this.gridColumns.join(" "):"1fr";const e=this.offsetWidth,t=768,o=769,i=1040,r=1440;return e<=491&&this.gridColumns["small-down"]?this.gridColumns["small-down"].join(" "):e<=t&&this.gridColumns["medium-down"]?this.gridColumns["medium-down"].join(" "):e>=o&&e<i&&this.gridColumns["medium-up"]?this.gridColumns["medium-up"].join(" "):e>=i&&e<r&&this.gridColumns["large-up"]?this.gridColumns["large-up"].join(" "):e>=r&&this.gridColumns["xlarge-up"]?this.gridColumns["xlarge-up"].join(" "):"1fr"}determineCurrentBreakpoint(){const e=this.offsetWidth;return e<=491?"small-down":e<=768?"medium-down":e<1040?"medium-up":e<1440?"large-up":"xlarge-up"}updateResponsiveStyles(){const e=this.determineCurrentBreakpoint();if(e!==this.currentBreakpoint){this.currentBreakpoint=e;const t=this.tableStyles();Object.entries(t).forEach((([e,t])=>{this.style.setProperty(e,t)}))}}shouldHideHeader(){if("grid"===this.layout)return!0;if("table"===this.layout){return 1===(this.tableColumns.length>0?this.tableColumns:["1fr"]).length}return!1}render(){const e="grid"===this.layout?"grid":"table",t=this.title||"Data table",o=this.shouldHideHeader(),i=this.tableStyles();
3259return Object.entries(i).forEach((([e,t])=>{this.style.setProperty(e,t)})),$` 3260 <div 3261 part="base table" 3262 class="${J({"data-table":!0,"data-table--grid":"grid"===this.layout,"data-table--scroll":"scroll"===this.responsiveBehavior,"data-table--hide-header":o})}" 3263 role="${e}" 3264 aria-label="${t}" 3265 > 3266 <div 3267 part="content table-content" 3268 class="data-table__content" 3269 > 3270 <slot name="header"></slot> 3271 <div 3272 part="body table-body" 3273 class="data-table__body" 3274 role="rowgroup" 3275 > 3276 <slot></slot> 3277 </div> 3278 <slot name="footer"></slot> 3279 </div> 3280 </div> 3281 `}}Eo.styles=[Me,_o],Eo.dependencies={"pu-data-table-row":Co,"pu-data-table-header":So,"pu-data-table-cell":Ao,"pu-data-table-footer":No},i([ke()],Eo.prototype,"layout",void 0),i([ke()],Eo.prototype,"responsiveBehavior",void 0),i([ke({type:Array})],Eo.prototype,"tableColumns",void 0),i([ke({type:Object})],Eo.prototype,"gridColumns",void 0),i([ke()],Eo.prototype,"spacing",void 0),i([ke()],Eo.prototype,"spacingNarrow",void 0),i([ke()],Eo.prototype,"title",void 0),Eo.define("pu-data-table");const Bo=[te` 3282 /* Host styles */ 3283 :host { 3284 display: block; 3285 --color-foreground: var(--pu-modal-color-foreground, var(--pu-color-foreground)); 3286 --color-background: var(--pu-modal-color-background, var(--pu-color-background)); 3287 --color-header-foreground: var(--pu-modal-header-color-foreground, var(--color-foreground)); 3288 --color-header-background: var(--pu-modal-header-color-background, transparent); 3289 --pu-section-color-foreground: var(--color-foreground); 3290 --pu-section-color-background: transparent; 3291 } 3292 3293 /* Modal */ 3294 .modal { 3295 color: rgb(from var(--color-foreground) r g b); 3296 background-color: transparent; 3297 margin: 0; 3298 padding: 0; 3299 border: none; 3300 border-radius: 0; 3301 inset: 0; 3302 width: 100vw; 3303 height: 100vh; 3304 max-width: none; 3305 max-height: none; 3306 } 3307 dialog.modal::backdrop { 3308 background-color: rgb(from var(--color-background) r g b / calc(alpha * var(--pu-modal-background-opacity, 1))); 3309 background-image: var(--pu-modal-image-background); 3310 background-size: cover; 3311 background-repeat: no-repeat; 3312 } 3313 3314 .modal__inner { 3315 display: flex; 3316 flex-direction: column; 3317 height: 100svh; 3318 overflow-y: auto; 3319 overflow-x: hidden; 3320 scrollbar-width: thin; 3321 scrollbar-color: rgb(from var(--color-foreground) r g b) var(--color-background); 3322 } 3323 3324 /** Close button icon */ 3325 .close-button-icon { 3326 font-size: var(--pu-icon-font-size, 1.5em); 3327 } 3328 3329 /* Modal header */ 3330 .modal-header { 3331 position: relative; 3332 display: flex; 3333 align-items: center; 3334 padding: var(--pu-modal-header-space-padding, 1.5em 0); 3335 line-height: 1; 3336 --pu-color-foreground: var(--color-header-foreground); 3337 --pu-button-color-foreground: var(--color-header-background); 3338 --pu-button-color-background: var(--color-header-foreground); 3339 --pu-icon-color-foreground: var(--color-header-foreground); 3340 --pu-icon-border-color: var(--color-header-foreground); 3341 --pu-icon-color-background: transparent; 3342 } 3343 3344 .modal-header .col { 3345 flex: 1; 3346 } 3347 .modal-header .col:first-child { 3348 margin-right: auto; 3349 } 3350 .modal-header .title { 3351 margin-left: auto; 3352 text-align: center; 3353 } 3354 .modal-header .close-button { 3355 margin-left: auto; 3356 text-align: right; 3357 } 3358 3359 @media screen and (max-width: 48em) {
3360 .modal-header { 3361 padding: var(--pu-modal-header-space-padding-narrow, 1em 0); 3362 } 3363 .modal-header .close-button { 3364 flex: 0; 3365 } 3366 .modal-header .title { 3367 --pu-text-heading-scale: 0.6; 3368 } 3369 .modal-header .col:first-child { 3370 display: none; 3371 } 3372 .modal-header .title { 3373 text-align: left; 3374 } 3375 } 3376 3377 /* Section Content */ 3378 .section-content { 3379 display: flex; 3380 flex: 1; 3381 flex-direction: column; 3382 margin: 0 auto; 3383 width: 100%; 3384 } 3385 3386 .section-content-block { 3387 display: flex; 3388 flex-direction: column; 3389 justify-content: center; 3390 align-items: stretch; 3391 width: 100%; 3392 } 3393 3394 .section__footer { 3395 display: flex; 3396 justify-content: center; 3397 } 3398`,te` 3399 /* Sticky Header */ 3400 .modal-header--sticky .sticky { 3401 position: sticky; 3402 top: 0; 3403 left: 0; 3404 z-index: 100; 3405 width: 100%; 3406 } 3407 3408 /* Button Position */ 3409 .modal-header-icon--left .modal-header { 3410 flex-direction: row-reverse; 3411 } 3412 .modal-header-icon--left .modal-header .col:first-child { 3413 margin-left: auto; 3414 } 3415 .modal-header-icon--left .modal-header .col:last-child { 3416 margin-right: auto; 3417 text-align: left; 3418 } 3419 3420 /* Narrow Sticky Bottom */ 3421 @media screen and (max-width: 48em) {
3422 .modal-header--sticky.modal-header--sticky-bottom .modal-header { 3423 background-color: var(--pu-modal-header-color-background, transparent); 3424 position: fixed; 3425 padding: 1em; 3426 top: initial; 3427 left: 0; 3428 right: 0; 3429 bottom: 0; 3430 z-index: 100; 3431 } 3432 .modal-header-icon--left .modal-header .title { 3433 text-align: right; 3434 } 3435 } 3436 3437 /* Content Justify */ 3438 .content-justify--start { 3439 justify-content: start; 3440 } 3441 .content-justify--center { 3442 justify-content: center; 3443 } 3444 .content-justify--end { 3445 justify-content: end; 3446 } 3447`],To=[te` 3448 :host { 3449 display: block; 3450 --img-sm: var(--pu-section-content-bg-image-size-sm); 3451 --img-md: var(--pu-section-content-bg-image-size-md); 3452 --img-lg: var(--pu-section-content-bg-image-size-lg); 3453 } 3454 3455 /* Content container */ 3456 .section-content { 3457 background-color: rgb(from var(--pu-section-content-color-background) r g b / alpha); 3458 margin-top: 0; 3459 margin-right: auto; 3460 margin-bottom: 0; 3461 margin-left: auto; 3462 max-width: var(--pu-size-content-max-width, var(--section-width)); 3463 display: flex; 3464 flex-direction: column; 3465 gap: var(--pu-section-content-row-gap, var(--pu-section-content-row-gap-narrow)); 3466 } 3467 @media (max-width: 47.9975em) { 3468 .section-content { 3469 gap: var(--pu-section-content-row-gap-narrow, var(--gap-narrow)); 3470 } 3471 } 3472`,te` 3473 /* Width API - Content width control */ 3474 .section-content--page-width { 3475 max-width: var(--pu-size-content-max-width, var(--section-width)); 3476 } 3477 .section-content--full-width { 3478 max-width: var(--pu-size-viewport-max-width); 3479 } 3480 3481 /* Centering API - Content alignment control */ 3482 @media (min-width: 48em) { 3483 .section-content--center { 3484 display: flex; 3485 justify-content: center; 3486 text-align: center; 3487 } 3488 } 3489 @media only screen and (max-width: 48em) { 3490 .section-content--narrow-center { 3491 display: flex; 3492 justify-content: center; 3493 text-align: center; 3494 } 3495 } 3496 3497 /* Padding Type API - Side padding control */ 3498 @media (min-width: 48em) { 3499 .section-content--padded { 3500 padding-top: var(--pu-section-content-space-padding-top, var(--pt)); 3501 padding-bottom: var(--pu-section-content-space-padding-bottom, var(--pb)); 3502 padding-left: var(--pu-section-content-space-padding-side, var(--plr)); 3503 padding-right: var(--pu-section-content-space-padding-side, var(--plr)); 3504 } 3505 .section-content--side-bleed { 3506 padding-top: var(--pu-section-content-space-padding-top, var(--pt)); 3507 padding-bottom: var(--pu-section-content-space-padding-bottom, var(--pb)); 3508 padding-left: 0; 3509 padding-right: 0; 3510 } 3511 .section-content.section-content--full-bleed { 3512 padding: 0; 3513 } 3514 } 3515 3516 @media only screen and (max-width: 48em) { 3517 .section-content--narrow-padded { 3518 padding-top: var(--pu-section-content-space-padding-top-narrow, var(--pt-narrow)); 3519 padding-bottom: var(--pu-section-content-space-padding-bottom-narrow, var(--pb-narrow)); 3520 padding-left: var(--pu-section-content-space-padding-side-narrow, var(--plr-narrow)); 3521 padding-right: var(--pu-section-content-space-padding-side-narrow, var(--plr-narrow)); 3522 } 3523 .section-content--narrow-side-bleed { 3524 padding-top: var(--pu-section-content-space-padding-top-narrow, var(--pt-narrow)); 3525 padding-bottom: var(--pu-section-content-space-padding-bottom-narrow, var(--pb-narrow)); 3526 padding-left: 0; 3527 padding-right: 0; 3528 } 3529 .section-content.section-content--narrow-full-bleed { 3530 padding: 0; 3531 } 3532 } 3533 3534 /* Background color/image */ 3535 .section-block { 3536 color: rgb(from var(--pu-section-color-foreground) r g b / alpha); 3537 background-color: rgb(from var(--pu-section-color-background) r g b / alpha); 3538 background-size: cover; 3539 background-position: center; 3540 } 3541 3542 @media (max-width: 47.9975em) { 3543 .section-block { 3544 background-image: var(--img-sm); 3545 } 3546 } 3547 @media (min-width: 47.9975em) and (max-width: 64.9975em) { 3548 .section-block { 3549 background-image: var(--img-md); 3550 } 3551 } 3552 @media (min-width: 65em) { 3553 .section-block { 3554 background-image: var(--img-lg); 3555 } 3556 } 3557`];class Io extends Ue{constructor(){super(...arguments),this.width="page-width",this.centerContent=!1,this.centerContentNarrow=!1,this.paddingType="padded",this.paddingTypeNarrow="padded",this.isNumeric=e=>("number"==typeof e||"string"==typeof e&&""!==e.trim())&&!isNaN(e)}blockStyles(){let e={};return this.paddingTop&&(e={...e,"--pt":parseInt(this.paddingTop)/16+"em"}),this.paddingBottom&&(e={...e,"--pb":parseInt(this.paddingBottom)/16+"em"}),this.paddingTopNarrow?e={...e,"--pt-narrow":parseInt(this.paddingTopNarrow)/16+"em"}:this.paddingTop&&(e={...e,"--pt-narrow":parseInt(this.paddingTop)/16+"em"}),this.paddingBottomNarrow?e={...e,"--pb-narrow":parseInt(this.paddingBottomNarrow)/16+"em"}:this.paddingBottom&&(e={...e,"--pb-narrow":parseInt(this.paddingBottom)/16+"em"}),this.paddingSide&&(e={...e,"--plr":parseInt(this.paddingSide)/16+"em"}),this.paddingSideNarrow&&(e={...e,"--plr-narrow":parseInt(this.paddingSideNarrow)/16+"em"}),this.contentSpacing&&(e={...e,"--gap":Number(this.contentSpacing)/16+"em"}),this.contentSpacingNarrow?e={...e,"--gap-narrow":Number(this.contentSpacingNarrow)/16+"em"}:this.contentSpacing&&(e={...e,"--gap-narrow":Number(this.contentSpacing)/16+"em"}),e}sectionContentStyles(){let e={};return this.width&&this.isNumeric(this.width)&&(e={...e,"--section-width":parseInt(this.width)/16+"em"}),e}render(){const e=this.width&&!this.isNumeric(this.width);return $` 3558 <div 3559 part="base section-block" 3560 class="section-block" 3561 style="${He(this.blockStyles())}"> 3562 <div 3563 part="content" 3564 class="${J({"section-content":!0,"section-content--center":this.centerContent,"section-content--narrow-center":!!this.centerContentNarrow,[`section-content--${this.paddingType}`]:!0,[`section-content--narrow-${this.paddingTypeNarrow}`]:!0,[`section-content--${this.width}`]:e})}" 3565 style="${He(this.sectionContentStyles())}"> 3566 <slot></slot> 3567 <slot name="content"></slot> 3568 </div> 3569 </div> 3570 `}}Io.styles=[Me,To],i([ke()],Io.prototype,"width",void 0),i([ke({type:Boolean})],Io.prototype,"centerContent",void 0),i([ke({type:Boolean})],Io.prototype,"centerContentNarrow",void 0),i([ke()],Io.prototype,"paddingType",void 0),i([ke()],Io.prototype,"paddingTypeNarrow",void 0),i([ke()],Io.prototype,"paddingTop",void 0),i([ke()],Io.prototype,"paddingBottom",void 0),i([ke()],Io.prototype,"paddingTopNarrow",void 0),i([ke()],Io.prototype,"paddingBottomNarrow",void 0),i([ke()],Io.prototype,"paddingSide",void 0),i([ke()],Io.prototype,"paddingSideNarrow",void 0),i([ke()],Io.prototype,"contentSpacing",void 0),i([ke()],Io.prototype,"contentSpacingNarrow",void 0);const Mo=[te` 3571 :host { 3572 display: block; 3573 width: 100%; 3574 --foreground-color: var(--pu-section-color-foreground, var(--pu-color-foreground)); 3575 --background-color: var(--pu-section-color-background, var(--pu-color-background)); 3576 --margin-top: var(--pu-section-space-margin-top); 3577 --margin-bottom: var(--pu-section-space-margin-bottom); 3578 } 3579 @media only screen and (max-width: 47.9975em) { 3580 :host { 3581 --margin-top: var(--pu-section-space-margin-top-narrow); 3582 --margin-bottom: var(--pu-section-space-margin-bottom-narrow); 3583 } 3584 } 3585 3586 .section { 3587 padding-top: var(--pu-section-space-padding-top); 3588 padding-bottom: var(--pu-section-space-padding-bottom); 3589 padding-left: var(--pu-section-space-padding-side); 3590 padding-right: var(--pu-section-space-padding-side); 3591 margin-top: var(--margin-top); 3592 margin-bottom: var(--margin-bottom); 3593 } 3594 @media only screen and (max-width: 47.9975em) { 3595 .section { 3596 padding-top: var(--pu-section-space-padding-top-narrow); 3597 padding-bottom: var(--pu-section-space-padding-bottom-narrow); 3598 padding-left: var(--pu-section-space-padding-side-narrow); 3599 padding-right: var(--pu-section-space-padding-side-narrow); 3600 margin-top: var(--pu-section-space-margin-top-narrow); 3601 margin-bottom: var(--pu-section-space-margin-bottom-narrow); 3602 } 3603 } 3604 3605 .section { 3606 color: rgb(from var(--foreground-color) r g b / alpha); 3607 background-color: rgb(from var(--background-color) r g b / alpha); 3608 background-size: cover; 3609 background-position: center; 3610 } 3611 3612 @media (max-width: 47.9975em) { 3613 .section { 3614 background-image: var(--pu-section-media-size-sm); 3615 } 3616 } 3617 @media (min-width: 47.9975em) and (max-width: 64.9975em) { 3618 .section { 3619 background-image: var(--pu-section-media-size-md); 3620 } 3621 } 3622 @media (min-width: 65em) { 3623 .section { 3624 background-image: var(--pu-section-media-size-lg); 3625 } 3626 } 3627 3628 @media (max-width: 47.9975em) { 3629 ::slotted(*:not(:last-child)) { 3630 margin-bottom: var(--pu-section-space-vertical-narrow) !important; 3631 } 3632 } 3633 @media (min-width: 48em) { 3634 ::slotted(*:not(:last-child)) { 3635 margin-bottom: var(--pu-section-space-vertical-wide) !important; 3636 } 3637 } 3638`];class jo extends Ue{constructor(){super(...arguments),this.as="section"}sectionStyles(){let e={};return this.spacing&&(e={...e,"--pu-section-space-vertical-wide":this.spacing+"px"}),this.spacingNarrow&&(e={...e,"--pu-section-space-vertical-narrow":this.spacingNarrow+"px"}),e}sectionAs(){return"section"===this.as?$` 3639 <section 3640 part="base section" 3641 class="section" 3642 style="${He(this.sectionStyles())}" 3643 > 3644 <slot></slot> 3645 <slot name="content"></slot> 3646 </section> 3647 `:"header"===this.as?$` 3648 <header 3649 part="base header" 3650 class="section" 3651 style="${He(this.sectionStyles())}" 3652 > 3653 <slot></slot> 3654 <slot name="content"></slot> 3655 </header> 3656 `:"footer"===this.as?$` 3657 <footer 3658 part="base footer" 3659 class="section" 3660 style="${He(this.sectionStyles())}" 3661 > 3662 <slot></slot> 3663 <slot name="content"></slot> 3664 </footer> 3665 `:$` 3666 <div 3667 part="base section" 3668 class="section" 3669 style="${He(this.sectionStyles())}" 3670 > 3671 <slot></slot> 3672 <slot name="content"></slot> 3673 </div> 3674 `}render(){return $` ${this.sectionAs()} `}}jo.styles=[Me,Mo],jo.dependencies={"pu-section-block":Io},i([ke()],jo.prototype,"as",void 0),i([ke()],jo.prototype,"spacing",void 0),i([ke()],jo.prototype,"spacingNarrow",void 0);class Oo extends Ue{constructor(){super(...arguments),this.visible=!1,this.stickyHeader=!1,this.stickyBottomNarrow=!1,this.contentWidth="page-width",this.spacing="16",this.paddingType="full-bleed",this.paddingTypeNarrow="full-bleed",this.paddingSide="24",this.paddingBottom="24",this.spacingNarrow="16",this.paddingSideNarrow="16",this.paddingBottomNarrow="24",this.iconName="close",this.buttonPosition="right",this.hasFooterSlot=new Xe(this,"footer"),this.openModal=()=>{this.visible=!0},this.closeModal=()=>{this.visible=!1},this.onBackdropClick=e=>{if(e.target===this.dlg)return void(this.visible=!1);const t=this.renderRoot.querySelector(".modal__inner");if(t){const o=t.getBoundingClientRect(),{clientX:i,clientY:r}=e;i>=o.left&&i<=o.right&&r>=o.top&&r<=o.bottom||(this.visible=!1)}},this.onClose=()=>{this.visible&&(this.visible=!1);const e=new CustomEvent("close-modal",{bubbles:!0,composed:!0});this.dispatchEvent(e),history.pushState({modalOpen:!1},"Modal Closed")},this.historyBack=()=>{this.dlg?.open&&this.dlg.close()}}connectedCallback(){window.addEventListener("popstate",this.historyBack),super.connectedCallback()}disconnectedCallback(){window.removeEventListener("popstate",this.historyBack),this.visible&&this.enableBodyScroll(),super.disconnectedCallback()}firstUpdated(){this.dlg=this.renderRoot.querySelector("dialog"),this.dlg.addEventListener("close",this.onClose)}updated(e){e.has("visible")&&(this.visible?(this.dlg.open||this.dlg.showModal(),this.disableBodyScroll(),history.pushState({modalOpen:!0},"Modal Open",window.location.pathname)):(this.dlg.open&&this.dlg.close(),this.enableBodyScroll()))}disableBodyScroll(){document.body.dataset.originalOverflow||(document.body.dataset.originalOverflow=document.body.style.overflow||"visible"),document.body.style.overflow="hidden"}enableBodyScroll(){const e=document.body.dataset.originalOverflow;e&&(document.body.style.overflow="visible"===e?"":e,delete document.body.dataset.originalOverflow)}sectionInnerStyles(){let e={};return this.maxScreenWidth&&(e["--pu-size-max-width"]=String(Number(this.maxScreenWidth)/16)+"em"),e}render(){const e=!!this.justifyContent,t="left"===this.buttonPosition,o=this.hasFooterSlot.test("footer");return $` 3675 <dialog 3676 part="base media-modal" 3677 class="modal ${J({"modal-header--sticky":this.stickyHeader,"modal
3677-header--sticky-bottom":this.stickyBottomNarrow,"modal-header-icon--left":t})}" 3678 aria-labelledby="dialog-title" 3679 @click=${this.onBackdropClick}> 3680 <div 3681 part="container" 3682 class="modal__inner"> 3683 <pu-section 3684 as="header" 3685 class="section-header sticky"> 3686 <pu-section-block 3687 class="section-header-block" 3688 paddingSide=${this.paddingSide} 3689 paddingSideNarrow=${this.paddingSideNarrow} 3690 paddingTop="0" 3691 paddingBottom="0" 3692 paddingTopNarrow="0" 3693 paddingBottomNarrow="0" 3694 width=${this.contentWidth}> 3695 <div 3696 part="header" 3697 class="modal-header"> 3698 <div 3699 part="shim" 3700 class="col"></div> 3701 <div 3702 part="title" 3703 class="title col" 3704 id="dialog-title"> 3705 <slot name="title"></slot> 3706 </div> 3707 <div 3708 part="close" 3709 class="close-button col"> 3710 <slot name="close-button"> 3711 <pu-button-icon 3712 part="button" 3713 exportparts="base,icon,svg" 3714 class="close-button" 3715 name="${this.iconName}" 3716 iconSize="large" 3717 padding="0" 3718 extendClickArea 3719 @click=${()=>this.visible=!1}> 3720 <svg 3721 slot="icon" 3722 xmlns="http://www.w3.org/2000/svg" 3723 class="close-button-icon" 3724 id="close" 3725 width="1em" 3726 height="1em"
3727 viewBox="0 0 384 512" 3728 role="presentation" 3729 aria-hidden="true" 3730 focusable="false" 3731 fill="currentColor"> 3732 <path 3733 d="M192 233.4L59.5 100.9 36.9 123.5 169.4 256 36.9 388.5l22.6 22.6L192 278.6 324.5 411.1l22.6-22.6L214.6 256 347.1 123.5l-22.6-22.6L192 233.4z" /> 3734 </svg> 3735 </pu-button-icon> 3736 </slot> 3737 </div> 3738 </div> 3739 </pu-section-block> 3740 </pu-section> 3741 <pu-section 3742 part="section" 3743 exportparts="base,section,header,footer" 3744 class="section-content ${J({["content-justify--"+this.justifyContent]:e})}" 3745 spacing=${this.spacing} 3746 spacingNarrow=${this.spacingNarrow}> 3747 <pu-section-block 3748 part="content" 3749 exportparts="base,content" 3750 class="section-content-block" 3751 style="${He({"--pu-size-max-width":this.maxScreenWidth?this.maxScreenWidth:void 0})}" 3752 paddingSide=${this.paddingSide} 3753 paddingTop=${Ze(this.paddingTop)} 3754 paddingBottom=${o?"0":this.paddingBottom} 3755 paddingSideNarrow=${this.paddingSideNarrow} 3756 paddingTopNarrow=${Ze(this.paddingTopNarrow)} 3757 paddingBottomNarrow=${o?"0":this.paddingBottomNarrow} 3758 paddingType=${this.paddingType} 3759 paddingTypeNarrow=${this.paddingTypeNarrow} 3760 width=${this.contentWidth}> 3761 <slot name="content"></slot> 3762 </pu-section-block> 3763 ${o?$` 3764 <pu-section-block 3765 part="footer" 3766 exportparts="base,content" 3767 class="section__footer" 3768 style="${He(this.sectionInnerStyles())}" 3769 paddingSide=${this.paddingSide} 3770 paddingTop=${Ze(this.paddingTop)} 3771 paddingBottom=${Ze(this.paddingBottom)} 3772 paddingSideNarrow=${this.paddingSideNarrow} 3773 paddingTopNarrow=${Ze(this.paddingTopNarrow)} 3774 paddingBottomNarrow=${Ze(this.paddingBottomNarrow)} 3775 paddingType=${this.paddingType} 3776 paddingTypeNarrow=${this.paddingTypeNarrow} 3777 width=${this.contentWidth}> 3778 <slot name="footer"></slot> 3779 </pu-section-block> 3780 `:""} 3781 </pu-section> 3782 </div> 3783 </dialog> 3784 `}}Oo.styles=[Me,Bo],Oo.dependencies={"pu-section":jo,"pu-button-icon":jt},i([ke({type:Boolean,reflect:!0})],Oo.prototype,"visible",void 0),i([ke({reflect:!0,type:Boolean})],Oo.prototype,"stickyHeader",void 0),i([ke({reflect:!0,type:Boolean})],Oo.prototype,"stickyBottomNarrow",void 0),i([ke()],Oo.prototype,"contentWidth",void 0),i([ke({type:Number})],Oo.prototype,"maxScreenWidth",void 0),i([ke()],Oo.prototype,"justifyContent",void 0),i([ke()],Oo.prototype,"spacing",void 0),i([ke()],Oo.prototype,"paddingType",void 0),i([ke()],Oo.prototype,"paddingTypeNarrow",void 0),i([ke()],Oo.prototype,"paddingSide",void 0),i([ke()],Oo.prototype,"paddingTop",void 0),i([ke()],Oo.prototype,"paddingBottom",void 0),i([ke()],Oo.prototype,"spacingNarrow",void 0),i([ke()],Oo.prototype,"paddingSideNarrow",void 0),i([ke()],Oo.prototype,"paddingTopNarrow",void 0),i([ke()],Oo.prototype,"paddingBottomNarrow",void 0),i([ke()],Oo.prototype,"iconName",void 0),i([ke()],Oo.prototype,"buttonPosition",void 0);const Lo=[te` 3785 :host { 3786 display: block; 3787 --gradient: var(--pu-banner-media-color-gradient); 3788 --aspect: var(--pu-deferred-media-image-aspect); 3789 --aspect-small: var(--pu-deferred-media-image-narrow); 3790 3791 --pu-icon-color-foreground: var(--pu-play-button-color-foreground); 3792 --pu-icon-color-background: var(--pu-play-button-color-background); 3793 --pu-icon-border-color: var(--pu-play-button-border-color); 3794 3795 --pu-icon-opacity-background: var(--pu-play-button-opacity-background); 3796 --pu-icon-opacity-border: var(--pu-play-button-opacity-border); 3797 3798 --pu-icon-shadow: var(--pu-play-button-shadow); 3799 --pu-icon-space-padding: var(--pu-play-button-space-padding); 3800 3801 --pu-slider-icon-border-radius: var(--pu-play-button-border-radius); 3802 --pu-icon-border-width: var(--pu-play-button-border-width); 3803 } 3804 3805 .deferred-media { 3806 position: relative; 3807 width: 100%; 3808 } 3809 3810 .cover-image { 3811 background-image: var(--gradient); 3812 aspect-ratio: var(--aspect, var(--pu-deferred-media-image-narrow)); 3813 } 3814 3815 @media only screen and (min-width: 30.06em) { 3816 .cover-image { 3817 aspect-ratio: var(--aspect, var(--pu-deferred-media-image-aspect)); 3818 } 3819 } 3820 3821 ::slotted(img) { 3822 aspect-ratio: var(--aspect-small, var(--pu-deferred-media-image-narrow)); 3823 object-fit: cover; 3824 width: 100%; 3825 height: 100%; 3826 } 3827 3828 @media only screen and (min-width: 30.06em) { 3829 ::slotted(img) { 3830 aspect-ratio: var(--aspect, var(--pu-deferred-media-image-aspect)); 3831 } 3832 } 3833 3834 .play-button { 3835 position: absolute; 3836 inset: 0; 3837 display: flex; 3838 align-items: center; 3839 justify-content: center; 3840 z-index: 100; 3841 padding: 1.5em; 3842 } 3843 3844 .play-button ::part(button) {
3845 box-shadow: var(--icon-shadow, var(--pu-shadow-elevation-400)); 3846 } 3847 3848 .deferred-media__video { 3849 aspect-ratio: var(--aspect-small, var(--pu-aspect-ratio-media-small)); 3850 border: 0; 3851 width: 100%; 3852 } 3853 3854 iframe.video { 3855 border: 0; 3856 aspect-ratio: var(--aspect, var(--pu-aspect-ratio-media)); 3857 } 3858`,te` 3859 .deferred-media--button-hover .play-button { 3860 opacity: 0; 3861 background-color: rgb(0, 0, 0, 0.2); 3862 transition: opacity var(--pu-transition-duration-500); 3863 } 3864 3865 .deferred-media--button-hover .play-button:hover { 3866 opacity: 1; 3867 } 3868`];class Ho extends Ue{constructor(){super(),this.hasSlotController=new Xe(this,"image"),this.title="",this.enableModal=!1,this.buttonSize="3xlarge",this.buttonStyle="rounded",this.buttonVisibleOnHover=!1,this._videoPlaying=!1,this._modalOpen=!1,this.aspectRatio="16/9",this.aspectRatioNarrow="16/9",this.addEventListener("close-modal",this.handleCloseVideo)}handlePlayVideo(){this.enableModal?this._modalOpen=!0:this._videoPlaying=!0}handleCloseVideo(){this._videoPlaying=!1,this._modalOpen=!1}renderVideo(){return $` <iframe 3869 part="video" 3870 class="video" 3871 src="${Ze(this.src)}" 3872 title="${Ze(this.title)}" 3873 allow="autoplay; fullscreen; picture-in-picture;" 3874 allowfullscreen 3875 > 3876 </iframe>`}render(){if(this.hasSlotController.test("image")){const e=this._coverImage[0];if(e){const t=e.getAspectRatio;if("function"==typeof t){const o=t.call(e);o?.default&&(this.aspectRatio=o.default),o?.small&&(this.aspectRatioNarrow=o.small)}else if(e instanceof HTMLImageElement){const t=Number(e.getAttribute("width")||""),o=Number(e.getAttribute("height")||""),i=t||e.naturalWidth||e.width,r=o||e.naturalHeight||e.height;if(i&&r){const e=(i/r).toString();this.aspectRatio=e,this.aspectRatioNarrow=e}}}}const e="large"===this.buttonSize?"1em":"xlarge"===this.buttonSize?"1.25em":"2xlarge"===this.buttonSize?"1.5em":"3xlarge"===this.buttonSize?"1.75em":void 0,t="sharp"===this.buttonStyle?"play":"play-rounded";return $` 3877 <div 3878 part="base deferred-media" 3879 class="${J({"deferred-media":!0,"deferred-media--button-hover":this.buttonVisibleOnHover})}" 3880 style="${He({"--pu-aspect-ratio-media":this.aspectRatio,"--pu-aspect-ratio-media-small":this.aspectRatioNarrow,"--pu-deferred-media-image-aspect":this.aspectRatio,"--pu-deferred-media-image-narrow":this.aspectRatioNarrow?this.aspectRatioNarrow:this.aspectRatio})}" 3881 ?enableModal=${this.enableModal} 3882 > 3883 <div 3884 part="cover" 3885 class="cover-image" 3886 > 3887 ${this._videoPlaying?this.renderVideo():$` 3888 <slot name="image"></slot> 3889 <div 3890 part="play-button" 3891 class="play-button" 3892 > 3893 <slot name="play-button"> 3894 <pu-button-icon 3895 style=${He({...e?{"--pu-space-padding":e}:{}})} 3896 part="button-icon" 3897 exportparts="button,base,icon,svg" 3898 type="button" 3899 borderStyle="rounded" 3900 iconSize=${this.buttonSize} 3901 label="Click to play a video" 3902 extendClickArea 3903 ?border=${!0} 3904 @click="${this.handlePlayVideo}" 3905 > 3906 ${"play-rounded"===t?$` 3907 <svg 3908 slot="icon" 3909 class="button-icon" 3910 xmlns="http://www.w3.org/2000/svg" 3911 id="play-rounded" 3912 width="1em" 3913 height="1em"
3914 viewBox="0 0 448 512" 3915 role="presentation" 3916 aria-hidden="true" 3917 focusable="false" 3918 fill="currentColor" 3919 > 3920 <path 3921 d="M91.2 36.9c-12.4-6.8-27.4-6.5-39.6 .7S32 57.9 32 72l0 368c0 14.1 7.5 27.2 19.6 34.4s27.2 7.5 39.6 .7l336-184c12.8-7 20.8-20.5 20.8-35.1s-8-28.1-20.8-35.1l-336-184z" 3922 /> 3923 </svg> 3924 `:$` 3925 <svg 3926 slot="icon" 3927 class="button-icon" 3928 xmlns="http://www.w3.org/2000/svg" 3929 id="play" 3930 width="1em" 3931 height="1em"
3932 viewBox="0 0 384 512" 3933 role="presentation" 3934 aria-hidden="true" 3935 focusable="false" 3936 fill="currentColor" 3937 > 3938 <path d="M384 256L0 32V480L384 256z" /> 3939 </svg> 3940 `} 3941 </pu-button-icon> 3942 </slot> 3943 </div> 3944 `} 3945 </div> 3946 ${this.enableModal&&this._modalOpen?$` 3947 <pu-media-modal 3948 part="modal" 3949 exportparts="base,container,header,shim,title,close,button,icon,svg,section,content" 3950 layout="single" 3951 justifyContent="center" 3952 ?visible=${this._modalOpen} 3953 > 3954 <pu-text 3955 slot="title" 3956 as="h2" 3957 variant="headingXl" 3958 withoutMargin 3959 >${this.title}</pu-text 3960 > 3961 <div slot="content">${this.renderVideo()}</div> 3962 </pu-media-modal> 3963 `:""} 3964 </div> 3965 `}}Ho.styles=[Me,Lo],Ho.dependencies={"pu-media-modal":Oo,"pu-button-icon":jt,"pu-button":It},i([Ae({slot:"image"})],Ho.prototype,"_coverImage",void 0),i([ke()],Ho.prototype,"src",void 0),i([ke()],Ho.prototype,"title",void 0),i([ke({type:Boolean})],Ho.prototype,"enableModal",void 0),i([ke()],Ho.prototype,"buttonSize",void 0),i([ke()],Ho.prototype,"buttonStyle",void 0),i([ke({type:Boolean})],Ho.prototype,"buttonVisibleOnHover",void 0),i([Ce()],Ho.prototype,"_videoPlaying",void 0),i([Ce()],Ho.prototype,"_modalOpen",void 0),Ho.define("pu-deferred-media");const Vo=[te` 3966 :host { 3967 display: block; 3968 --summary-color-foreground: var(--pu-disclosure-color-foreground, var(--pu-color-foreground)); 3969 --summary-color-background: var(--pu-disclosure-color-background, var(--pu-color-background)); 3970 --details-color-foreground: var(--pu-disclosure-color-foreground, var(--pu-color-foreground)); 3971 --details-color-background: var(--pu-disclosure-color-background, var(--pu-color-background)); 3972 --details-color-border: var(--pu-disclosure-color-border, var(--pu-color-border)); 3973 } 3974 :host([overlay]) { 3975 position: relative; 3976 } 3977 3978 ::slotted(*[slot='summary']) { 3979 flex: 0 1 auto; 3980 } 3981 ::slotted(*[slot='icon']) { 3982 transition: transform 0.2s ease; 3983 } 3984 3985 /** Summary foundation styling */ 3986 .disclosure__details summary::-webkit-details-marker { 3987 display: none; 3988 } 3989 3990 .disclosure__summary { 3991 cursor: pointer; 3992 display: flex; 3993 align-items: center; 3994 justify-content: start; 3995 gap: var(--pu-space-200, 0.5em); 3996 list-style: none; 3997 height: 2.5em; 3998 padding: var(--pu-disclosure-summary-space-padding, 0.5em); 3999 color: rgb(from var(--summary-color-foreground) r g b / alpha); 4000 border: 0.0625em solid rgb(from var(--pu-disclosure-summary-border-color, rgb(0, 0, 0, 0)) r g b / alpha); 4001 border-radius: var(--pu-border-radius); 4002 background-color: rgb(from var(--summary-color-background) r g b / alpha); 4003 -webkit-tap-highlight-color: transparent; 4004 } 4005 4006 /** Drawer foundation styling */ 4007 .disclosure__drawer { 4008 min-width: fit-content; 4009 overflow: hidden; 4010 } 4011 .disclosure__drawer:not(.disclosure__drawer--overlay) { 4012 margin-top: var(--pu-disclosure-space-distance, 1em); 4013 } 4014 4015 /* Disclosure content foundation styling */ 4016 .disclosure__content { 4017 border-radius: var(--pu-border-radius); 4018 overflow-y: auto; 4019 border-style: solid; 4020 border-width: 0.0625em; 4021 padding: var(--pu-disclosure-details-space-padding, 0.5em 0); 4022
4023 color: rgb(from var(--details-color-foreground) r g b / alpha); 4024 background-color: rgb(from var(--details-color-background) r g b / alpha); 4025 border-color: rgb(from var(--details-color-border) r g b / alpha); 4026 4027 --pu-color-foreground: var(--details-color-foreground); 4028 --pu-color-background: var(--details-color-background); 4029 } 4030 4031 /* Toggle state management and animation */ 4032 .disclosure__details[open] .disclosure__summary--icon-flip ::slotted(*[slot='icon']) { 4033 transform: rotate(180deg); 4034 } 4035 .disclosure__drawer { 4036 visibility: hidden; 4037 } 4038 .disclosure__content { 4039 visibility: hidden; 4040 } 4041 4042 .disclosure__details[open] .disclosure__drawer.opening { 4043 visibility: visible; 4044 } 4045 4046 .disclosure__details[open] .disclosure__content.opening { 4047 transition: 4048 transform 0.2s ease, 4049 visibility 0.2s ease; 4050 visibility: visible; 4051 } 4052 4053 /* Opening direction animations */ 4054 .disclosure__content.open--vertical { 4055 transform: translateY(var(--pu-disclosure-animation-origin)); 4056 } 4057 .disclosure__details[open] .disclosure__content.open--vertical.opening { 4058 transform: translateY(0); 4059 } 4060 .disclosure__details[open] .disclosure__content.open--horizontal.opening { 4061 transform: translateX(0); 4062 } 4063 .disclosure__content.open--horizontal { 4064 transform: translateX(var(--pu-disclosure-animation-origin)); 4065 } 4066 4067 @media screen and (max-width: 48em) { 4068 .disclosure__content.open--vertical { 4069 transform: translateY(var(--pu-disclosure-animation-origin-narrow)); 4070 } 4071 .disclosure__content.open--horizontal { 4072 transform: translateX(var(--pu-disclosure-animation-origin-narrow)); 4073 } 4074 } 4075 4076 /* Content overflow scrollbar */ 4077 .disclosure__content::-webkit-scrollbar {
4078 width: 0.125em; 4079 } 4080 .disclosure__content::-webkit-scrollbar-track { 4081 background: var(--details-color-foreground, rgb(0, 0, 0, 0.05)); 4082 border-radius: 0.75em; 4083 } 4084 .disclosure__content::-webkit-scrollbar-thumb { 4085 background: var(--pu-color-foreground, rgb(0, 0, 0, 0.1)); 4086 border-radius: 0.75em; 4087 } 4088 @supports (color: rgb(from white r g b)) { 4089 .disclosure__content::-webkit-scrollbar-track { 4090 background: rgb(from var(--details-color-foreground, rgb(0, 0, 0, 0.05)) r g b / 0.05); 4091 } 4092 .disclosure__content::-webkit-scrollbar-thumb { 4093 background: rgb(from var(--details-color-foreground, rgb(0, 0, 0, 0.1)) r g b / 0.1); 4094 } 4095 } 4096`,te` 4097 /** Summary width API */ 4098 .disclosure__summary--fit-content { 4099 width: fit-content; 4100 } 4101 .disclosure__summary--fill { 4102 width: 100%; 4103 } 4104 4105 /** Summary justify content API */ 4106 .disclosure__summary--justify-center { 4107 justify-content: center; 4108 } 4109 .disclosure__summary--justify-end { 4110 justify-content: end; 4111 } 4112 .disclosure__summary--justify-space-between { 4113 justify-content: space-between; 4114 } 4115 @media screen and (max-width: 48em) { 4116 .disclosure__summary--narrow-justify-center { 4117 justify-content: center; 4118 } 4119 .disclosure__summary--narrow-justify-end { 4120 justify-content: end; 4121 } 4122 .disclosure__summary--narrow-justify-space-between { 4123 justify-content: space-between; 4124 } 4125 } 4126 4127 /** Icon animation API */ 4128 .disclosure__summary--icon-left { 4129 flex-direction: row-reverse; 4130 } 4131 4132 /** Drawer overlay positioning API */ 4133 .disclosure__drawer--overlay { 4134 position: absolute; 4135 top: var(--pu-disclosure-space-distance, 2.5em); 4136 left: 0; 4137 z-index: 200; 4138 } 4139 4140 .disclosure__drawer--overlay.disclosure__drawer--align-left { 4141 left: -0.5em; 4142 } 4143 4144 .disclosure__drawer--overlay.disclosure__drawer--align-right { 4145 left: auto; 4146 right: -0.5em; 4147 } 4148 4149 @media screen and (min-width: 48.06em) { 4150 .disclosure__drawer--overlay.disclosure__drawer--align-right:not(.disclosure__drawer--fill) 4151 .disclosure__content { 4152 box-shadow: -0.25em 0.25em 0.5em 0 rgb(from var(--pu-color-shadow, rgb(0, 0, 0, 0)) r g b / alpha); 4153 margin: 0 0 0.75em 0.75em; 4154 } 4155 } 4156 @media screen and (min-width: 48.06em) { 4157 .disclosure__drawer--overlay.disclosure__drawer--align-left:not(.disclosure__drawer--fill) 4158 .disclosure__content { 4159 box-shadow: 0.25em 0.25em 0.5em 0 rgb(from var(--pu-color-shadow, rgb(0, 0, 0, 0)) r g b / alpha); 4160 margin: 0 0.75em 0.75em 0; 4161 } 4162 } 4163 4164 .disclosure__drawer--fill.disclosure__drawer--overlay { 4165 right: 0; 4166 } 4167 4168 /** Drawer width API */ 4169 .disclosure__drawer--fit-content { 4170 width: fit-content; 4171 } 4172 .disclosure__drawer--fill { 4173 width: 100%; 4174 } 4175 .disclosure__drawer--auto { 4176 width: auto; 4177 } 4178`];class Do extends Ue{constructor(){super(...arguments),this.direction="down",this.directionInverseNarrow=!1,this.overlay=!1,this.summaryWidth="fit-content",this.detailsWidth="fit-content",this.justify="start",this.justifyNarrow="start",this.iconAnimation="flip",this.open=!1,this._animating=!1,this.deprecatedPropertyMap=[{old:"mobileDirectionInverse",new:"directionInverseNarrow",defaultValue:!1},{old:"mobileJustify",new:"justifyNarrow",defaultValue:"start"}],this.detailsOpen=()=>{this.open=!0,this.detailsElement.open=this.open},this.detailsClose=()=>{this.open=!1,this.detailsElement.open=this.open},this.getToggledState=()=>this.open}get mobileDirectionInverse(){return this.directionInverseNarrow}set mobileDirectionInverse(e){this._handleDeprecated("mobileDirectionInverse",e)}get mobileJustify(){return this.justifyNarrow}set mobileJustify(e){this._handleDeprecated("mobileJustify",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}firstUpdated(){this.detailsElement&&(this.detailsElement.open=this.open)}updated(e){if(e.has("open")&&this.detailsElement&&this.detailsElement.open!==this.open&&(this.detailsElement.open=this.open),"auto"===this.detailsWidth){const e=this.detailsContentElm.offsetWidth;this.style.minWidth=e+"px"}}handleToggle(){!0===this.open?(requestAnimationFrame((()=>{this._animating=!0})),this.dispatchEvent(new CustomEvent("pu-disclosure:opened",{detail:{target:this},bubbles:!0,composed:!0}))):!1===this.open&&(this._animating=!1,this.dispatchEvent(new CustomEvent("pu-disclosure:closed",{detail:{target:this},bubbles:!0,composed:!0})))}handleClick(){this.detailsElement&&(this.open=this.detailsElement.open)}summaryClasses(){const e={};
4178return e["disclosure__summary--icon-"+this.iconAnimation]=!0,e["disclosure__summary--justify-"+this.justify]=!0,e["disclosure__summary--narrow-justify-"+this.justifyNarrow]=!0,e["disclosure__summary--"+this.summaryWidth]=!0,e}drawerClasses(){const e={};return e["disclosure__drawer--overlay"]=this.overlay,e["disclosure__drawer--"+this.detailsWidth]=!0,this.detailsPosition&&(e[`disclosure__drawer--align-${this.detailsPosition}`]=!0),e}drawerStyles(){let e={},t=100;return"down"!==this.direction&&"from-left"!==this.direction||(t=-100),e={...e,"--pu-disclosure-animation-origin":t+"%"},e=this.directionInverseNarrow?{...e,"--pu-disclosure-animation-origin-narrow":-1*t+"%"}:{...e,"--pu-disclosure-animation-origin-narrow":t+"%"},e}contentClasses(){const e={};return e.opening=this._animating&&this.open,"from-left"===this.direction||"from-right"===this.direction?e["open--horizontal"]=!0:"up"!==this.direction&&"down"!==this.direction||(e["open--vertical"]=!0),e}render(){return $` 4179 <details 4180 part="base disclosure" 4181 class="disclosure__details" 4182 @toggle=${this.handleClick}> 4183 <summary 4184 part="header" 4185 class="disclosure__summary${J(this.summaryClasses())}" 4186 aria-label="Main Menu" 4187 role="button" 4188 aria-expanded=${this.open}> 4189 <slot name="summary"></slot> 4190 <slot name="icon"></slot> 4191 </summary> 4192 <div 4193 part="drawer" 4194 class="disclosure__drawer${J(this.drawerClasses())}" 4195 style="${He(this.drawerStyles())}" 4196 aria-hidden=${!this.open}> 4197 <div 4198 part="content" 4199 class="disclosure__content${J(this.contentClasses())}" 4200 aria-hidden=${!this.open}> 4201 <slot name="content"></slot> 4202 </div> 4203 </div> 4204 </details> 4205 `}}Do.styles=[Me,Vo],i([ke()],Do.prototype,"direction",void 0),i([ke({type:Boolean})],Do.prototype,"directionInverseNarrow",void 0),i([ke({type:Boolean})],Do.prototype,"overlay",void 0),i([ke()],Do.prototype,"summaryWidth",void 0),i([ke()],Do.prototype,"detailsWidth",void 0),i([ke()],Do.prototype,"detailsPosition",void 0),i([ke()],Do.prototype,"justify",void 0),i([ke()],Do.prototype,"justifyNarrow",void 0),i([ke()],Do.prototype,"iconAnimation",void 0),i([ke({type:Boolean,reflect:!0})],Do.prototype,"open",void 0),i([Ce()],Do.prototype,"_animating",void 0),i([Se("details")],Do.prototype,"detailsElement",void 0),i([Se(".disclosure__content")],Do.prototype,"detailsContentElm",void 0),i([ke({type:Boolean})],Do.prototype,"mobileDirectionInverse",null),i([ke()],Do.prototype,"mobileJustify",null),i([Te("open",{waitUntilFirstUpdate:!0})],Do.prototype,"handleToggle",null),Do.define("pu-disclosure");const Ro=[te` 4206 :host { 4207 display: block; 4208 --background-color: var(--pu-expandable-content-color-background, var(--pu-color-background)); 4209 } 4210 .content-container { 4211 position: relative; 4212 overflow: hidden; 4213 transition: height 0.3s ease; 4214 } 4215 .gradient-overlay { 4216 position: absolute; 4217 bottom: 0; 4218 left: 0; 4219 right: 0; 4220 height: 3em; 4221 background: linear-gradient(transparent, var(--background-color)); 4222 pointer-events: none; 4223 } 4224`,te` 4225 /* No API-driven classes needed for this simple component */ 4226 /* All styling is handled through JavaScript state management */ 4227`],Fo=[te` 4228 :host { 4229 display: inline-block; 4230 font-size: inherit; 4231 --foreground-color: var(--pu-link-color-foreground, var(--pu-color-foreground, inherit)); 4232 } 4233 .link { 4234 color: var(--foreground-color); 4235 text-underline-offset: 0.3em; 4236 display: inline-flex; 4237 align-items: center; 4238 gap: 0.5em; 4239 flex-wrap: nowrap; 4240 white-space: nowrap; 4241 cursor: pointer; 4242 } 4243 .link:not(.link--underline) { 4244 text-decoration: none; 4245 text-decoration-color: rgba(from var(--foreground-color) r g b / 0); 4246 transition: text-decoration-color 0.2s ease-in-out; 4247 } 4248 .link:not(.link--underline):hover { 4249 text-decoration: underline; 4250 text-decoration-color: rgba(from var(--foreground-color) r g b / 1); 4251 } 4252`,te` 4253 /* Boolean Property API - Underline Behavior */ 4254 .link--underline { 4255 text-decoration: underline; 4256 text-decoration-color: rgba(from var(--foreground-color) r g b / 0.5); 4257 transition: text-decoration-color 0.2s ease-in-out; 4258 } 4259 .link--underline:hover { 4260 text-decoration-color: rgba(from var(--foreground-color) r g b / 1); 4261 } 4262 4263 /* Boolean Property API - Wrap Behavior */ 4264 .link--wrap { 4265 white-space: wrap; 4266 } 4267`];class Wo extends Ue{constructor(){super(...arguments),this.target="_self",this.wrap=!1,this.underline=!1}render(){return $` 4268 <a 4269 part="link" 4270 href="${Ze(this.url)}" 4271 class="${J({link:!0,"link--wrap":this.wrap,"link--underline":this.underline})}" 4272 target="${this.target}" 4273 > 4274 <slot></slot> 4275 <slot name="label"></slot> 4276 </a> 4277 `}}Wo.styles=[Me,Fo],Wo.shadowRootOptions={...ye.shadowRootOptions,delegatesFocus:!0},i([ke()],Wo.prototype,"url",void 0),i([ke()],Wo.prototype,"target",void 0),i([ke({type:Boolean})],Wo.prototype,"wrap",void 0),i([ke({type:Boolean})],Wo.prototype,"underline",void 0);class Uo extends Ue{constructor(){super(...arguments),this.expandLabel="Read more...",this.collapseLabel="Read less...",this.previewHeight=100,this.disablePreview=!1,this._expanded=!1,this._isExpandable=!1}firstUpdated(){this.contentContainer.addEventListener("transitionend",this._onTransitionEnd.bind(this)),this._updateExpandableStatus()}updated(e){(e.has("previewHeight")||e.has("disablePreview"))&&this._updateExpandableStatus()}_onSlotChange(){this._updateExpandableStatus()}_updateExpandableStatus(){requestAnimationFrame((()=>
4277{if(this.disablePreview)this._isExpandable=!1,this.contentContainer.style.height="auto";else{this.contentContainer.scrollHeight-48<=this.previewHeight?(this._isExpandable=!1,this.contentContainer.style.height="auto"):(this._isExpandable=!0,this._expanded||(this.contentContainer.style.height=this.previewHeight/16+"em"))}}))}_onTransitionEnd(e){"height"===e.propertyName&&this._expanded&&!this.disablePreview&&(this.contentContainer.style.height="auto")}toggleExpanded(){if(!this.disablePreview&&this._isExpandable){if(this._expanded){const e=this.contentContainer.scrollHeight;this.contentContainer.style.height=e/16+"em",this.contentContainer.offsetHeight;const t=this.previewHeight/16;this.contentContainer.style.height=`${t}em`}else{const e=this.contentContainer.clientHeight/16;this.contentContainer.style.height=`${e}em`,this.contentContainer.offsetHeight;const t=this.contentContainer.scrollHeight/16;this.contentContainer.style.height=`${t}em`}this._expanded=!this._expanded}}render(){return $` 4278 <div expandable-content" class="content-container"> 4279 <slot @slotchange=${this._onSlotChange}></slot> 4280 ${this._expanded||!this._isExpandable||this.disablePreview?"":$`<div 4281 part="gradient" 4282 class="gradient-overlay" 4283 ></div>`} 4284 </div> 4285 ${this._isExpandable&&!this.disablePreview?$` 4286 <pu-link 4287 part="button" 4288 exportparts="link" 4289 @click=${this.toggleExpanded} 4290 underline 4291 > 4292 <pu-text 4293 part="label" 4294 as="span" 4295 exportparts="base,span,body" 4296 variant="bodySm" 4297 fontWeight="medium" 4298 > 4299 ${this._expanded?this.collapseLabel:this.expandLabel} 4300 </pu-text> 4301 </pu-link> 4302 `:""} 4303 `}}Uo.styles=[Me,Ro],Uo.dependencies={"pu-link":Wo},i([ke()],Uo.prototype,"expandLabel",void 0),i([ke()],Uo.prototype,"collapseLabel",void 0),i([ke({type:Number})],Uo.prototype,"previewHeight",void 0),i([ke({type:Boolean})],Uo.prototype,"disablePreview",void 0),i([Ce()],Uo.prototype,"_expanded",void 0),i([Ce()],Uo.prototype,"_isExpandable",void 0),i([Se(".content-container")],Uo.prototype,"contentContainer",void 0),Uo.define("pu-expandable-content");const Go=[gt,mt,vt,yt,te` 4304 :host { 4305 grid-column: auto / span 1; 4306 } 4307 @media screen and (min-width: 65em) { 4308 :host { 4309 grid-column: auto / span var(--space-grid-block-span); 4310 } 4311 } 4312 4313 .footer-block { 4314 display: flex; 4315 flex-wrap: wrap; 4316 height: 100%; 4317 } 4318`];class qo extends Ue{constructor(){super(...arguments),this.span="1",this.align="start",this.justify="start",this.deprecatedPropertyMap=[{old:"mobileAlign",new:"alignNarrow",defaultValue:void 0},{old:"mobileJustify",new:"justifyNarrow",defaultValue:void 0}]}get mobileAlign(){return this.alignNarrow}set mobileAlign(e){this._handleDeprecated("mobileAlign",e)}get mobileJustify(){return this.justifyNarrow}set mobileJustify(e){this._handleDeprecated("mobileJustify",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}updated(e){e.has("span")&&this.style.setProperty("--space-grid-block-span",this.span)}blockClasses(){const e={};return e["flex-justify--"+this.justify]=!0,e["flex-align--"+this.align]=!0,this.justifyNarrow?e["flex-narrow-justify--"+this.justifyNarrow]=!0:e["flex-narrow-justify--"+this.justify]=!0,this.alignNarrow?e["flex-narrow-align--"+this.alignNarrow]=!0:e["flex-narrow-align--"+this.align]=!0,e}render(){return $` 4319 <div part="block" class="footer-block${J(this.blockClasses())}"> 4320 <slot></slot> 4321 </div> 4322 `}}qo.styles=[Me,Go],i([ke()],qo.prototype,"span",void 0),i([ke()],qo.prototype,"align",void 0),i([ke()],qo.prototype,"alignNarrow",void 0),i([ke()],qo.prototype,"justify",void 0),i([ke()],qo.prototype,"justifyNarrow",void 0),i([ke()],qo.prototype,"mobileAlign",null),i([ke()],qo.prototype,"mobileJustify",null);const Ko=[te` 4323 :host { 4324 display: block; 4325 } 4326 4327 /* Container */ 4328 .footer { 4329 color: var(--pu-color-foreground, rgb(0, 0, 0)); 4330 background-color: var(--pu-color-background, rgb(240, 240, 240)); 4331 --pu-icon-color-foreground: var(--pu-color-foreground); 4332 } 4333 @supports (color: rgb(from white r g b)) { 4334 .footer { 4335 color: rgb(from var(--pu-color-foreground, rgb(0, 0, 0)) r g b); 4336 background-color: rgb(from var(--pu-color-background, rgb(240, 240, 240)) r g b / alpha); 4337 } 4338 } 4339 4340 /* Grid */ 4341 .footer__inner { 4342 display: grid; 4343 grid-template-rows: auto; 4344 margin: 0 auto; 4345 max-width: var(--pu-footer-size-max-width, 75em); 4346 } 4347 @media screen and (max-width: 47.9975em) { 4348 .footer__inner { 4349 grid-template-columns: 1fr; 4350 gap: calc(var(--pu-footer-grid-gap-narrow) * 2); 4351 } 4352 } 4353 @media screen and (min-width: 48em) { 4354 .footer__inner { 4355 gap: calc(var(--pu-footer-grid-gap) * 2); 4356 grid-template-columns: repeat(var(--pu-footer-grid-columns, 3), 1fr); 4357 gap: var(--pu-footer-grid-gap); 4358 } 4359 } 4360 4361 /* Padding */ 4362 @media screen and (max-width: 65em) { 4363 .footer { 4364 padding-top: var(--pu-footer-space-padding-top-narrow, 2em); 4365 padding-bottom: var(--pu-footer-space-padding-bottom-narrow, 2em); 4366 } 4367 .footer__inner { 4368 padding-left: var(--pu-space-padding-inline-narrow, 1em); 4369 padding-right: var(--pu-space-padding-inline-narrow, 1em); 4370 } 4371 } 4372 @media screen and (min-width: 64.9975em) { 4373 .footer { 4374 padding-top: var(--pu-footer-space-padding-top, 3em); 4375 padding-bottom: var(--pu-footer-space-padding-bottom, 3em); 4376 } 4377 .footer__inner { 4378 padding-left: var(--pu-space-padding-inline, 1.5em); 4379 padding-right: var(--pu-space-padding-inline, 1.5em); 4380 } 4381 } 4382`];class Jo extends Ue{constructor(){super(...arguments),this.columns="3",this.width="page-width",this.spacing="24",this.divider=!1,this.deprecatedPropertyMap=[{old:"mobilePaddingTop",new:"paddingTopNarrow",defaultValue:void 0},{old:"mobilePaddingBottom",new:"paddingBottomNarrow",defaultValue:void 0},{old:"mobileSpacing",new:"spacingNarrow",defaultValue:void 0}]}get mobilePaddingTop(){return this.paddingTopNarrow}set mobilePaddingTop(e){this._handleDeprecated("mobilePaddingTop",e)}get mobilePaddingBottom(){return this.paddingBottomNarrow}set mobilePaddingBottom(e){this._handleDeprecated("mobilePaddingBottom",e)}get mobileSpacing(){return this.spacingNarrow}set mobileSpacing(e){this._handleDeprecated("mobileSpacing",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}footerStyles(){let e={};if(e={...e,"--pu-footer-grid-columns":this.columns},"full-width"===this.width&&(e={...e,"--pu-footer-size-max-width":"100%"}),this.paddingTop){const t=/^\d+$/.test(this.paddingTop)?Number(this.paddingTop)/16+"em":this.paddingTop;e={...e,"--pu-footer-space-padding-top":t}}if(this.paddingBottom){const t=/^\d+$/.test(this.paddingBottom)?Number(this.paddingBottom)/16+"em":this.paddingBottom;e={...e,"--pu-footer-space-padding-bottom":t}}if(this.paddingTopNarrow){const t=/^\d+$/.test(this.paddingTopNarrow)?Number(this.paddingTopNarrow)/16+"em":this.paddingTopNarrow;e={...e,"--pu-footer-space-padding-top-narrow":t}}else if(this.paddingTop){const t=/^\d+$/.test(this.paddingTop)?Number(this.paddingTop)/16+"em":this.paddingTop;e={...e,"--pu-footer-space-padding-top-narrow":t}}if(this.paddingBottomNarrow){const t=/^\d+$/.test(this.paddingBottomNarrow)?Number(this.paddingBottomNarrow)/16+"em":this.paddingBottomNarrow;e={...e,"--pu-footer-space-padding-bottom-narrow":t}}else if(this.paddingBottom){const t=/^\d+$/.test(this.paddingBottom)?Number(this.paddingBottom)/16+"em":this.paddingBottom;e={...e,"--pu-footer-space-padding-bottom-narrow":t}}return this.spacing&&(e={...e,"--pu-footer-grid-gap":Number(this.spacing)/16+"em"}),e=this.spacingNarrow?{...e,"--pu-footer-grid-gap-narrow":Number(this.spacingNarrow)/16+"em"}:{...e,"--pu-footer-grid-gap-narrow":Number(this.spacing)/16+"em"},e}render(){return $` 4383 <footer 4384 part="base footer" 4385 class="footer" 4386 style="${He(this.footerStyles())}" 4387 > 4388 <div 4389 part="content" 4390 class="footer__inner" 4391 > 4392 <slot></slot> 4393 </div> 4394 </footer> 4395 `}}Jo.styles=[Me,Ko],Jo.dependencies={"pu-footer-block":qo},i([ke()],Jo.prototype,"columns",void 0),i([ke()],Jo.prototype,"width",void 0),i([ke()],Jo.prototype,"paddingTop",void 0),i([ke()],Jo.prototype,"paddingBottom",void 0),i([ke()],Jo.prototype,"paddingTopNarrow",void 0),i([ke()],Jo.prototype,"paddingBottomNarrow",void 0),i([ke()],Jo.prototype,"spacing",void 0),i([ke()],Jo.prototype,"spacingNarrow",void 0),i([ke({type:Boolean})],Jo.prototype,"divider",void 0),i([ke()],Jo.prototype,"mobilePaddingTop",null),i([ke()],Jo.prototype,"mobilePaddingBottom",null),i([ke()],Jo.prototype,"mobileSpacing",null),Jo.define("pu-footer");const Xo=te` 4396 /* Grid layout */ 4397 .grid { 4398 /* Computed grid gap variables */ 4399 --gap: var(--pu-grid-gap-x, var(--gap-x, 1.5em)); 4400 --gap-narrow: var(--pu-grid-gap-x-narrow, var(--gap-x-narrow, 1em)); 4401 4402 display: flex; 4403 flex-wrap: wrap; 4404 row-gap: var(--pu-grid-gap-y-narrow, var(--gap-y-narrow, 1em)); 4405 column-gap: var(--pu-grid-gap-x-narrow, var(--gap-x-narrow, 1em)); 4406 list-style: none; 4407 margin: 0; 4408 padding: 0; 4409 } 4410 @media screen and (min-width: 48em) { 4411 .grid { 4412 row-gap: var(--pu-grid-gap-y, var(--gap-y, 1.5em)); 4413 column-gap: var(--pu-grid-gap-x, var(--gap-x, 1.5em)); 4414 } 4415 } 4416
4417 .grid:not(.grid--columns) ::slotted(*), 4418 .grid > * { 4419 width: calc(25% - var(--gap-narrow) * 3 / 4); 4420 flex-grow: 0; 4421 flex-shrink: 0; 4422 } 4423 4424 .grid.grid--gapless { 4425 gap: 0; 4426 } 4427 4428 .grid:not(.grid--columns).grid--fill ::slotted(*), 4429 .grid.grid--fill > * { 4430 flex-grow: 1; 4431 } 4432 4433 /* Responsive grid API classes */ 4434 @media screen and (max-width: 47.9975em) { 4435 .grid--1-col-tablet-down:not(.grid--columns) ::slotted(*), 4436 .grid--1-col-tablet-down > * { 4437 width: 100%; 4438 } 4439 .grid--2-col-tablet-down:not(.grid--columns) ::slotted(*), 4440 .grid--2-col-tablet-down > * { 4441 width: calc(50% - var(--gap-narrow) / 2); 4442 } 4443 } 4444 4445 /* Tablet portrait */ 4446 @media screen and (min-width: 30.625em) and (max-width: 47.9975em) { 4447 .grid--4-col-tablet:not(.grid--columns) ::slotted(*), 4448 .grid--4-col-tablet > * { 4449 width: calc(25% - var(--gap-narrow) * 3 / 4); 4450 } 4451 .grid--3-col-tablet:not(.grid--columns) ::slotted(*), 4452 .grid--3-col-tablet > * { 4453 width: calc(33.33% - var(--gap-narrow) * 2 / 3); 4454 } 4455 .grid--2-col-tablet:not(.grid--columns) ::slotted(*), 4456 .grid--2-col-tablet > * { 4457 width: calc(50% - var(--gap-narrow) / 2); 4458 } 4459 .grid--1-col-tablet:not(.grid--columns) ::slotted(*), 4460 .grid--1-col-tablet > * { 4461 width: 100%; 4462 } 4463 .grid--col-tablet:not(.grid--columns) ::slotted(*), 4464 .grid--col-tablet > * { 4465 width: calc(50% - var(--gap-narrow) / 2); 4466 } 4467 } 4468 4469 /* Tablet landscape */ 4470 @media screen and (min-width: 48em) and (max-width: 64.9975em) { 4471 .grid--4-col-tablet:not(.grid--columns) ::slotted(*), 4472 .grid--4-col-tablet > * { 4473 width: calc(25% - var(--gap) * 3 / 4); 4474 } 4475 .grid--3-col-tablet:not(.grid--columns) ::slotted(*), 4476 .grid--3-col-tablet > * { 4477 width: calc(33.33% - var(--gap) * 2 / 3); 4478 } 4479 .grid--2-col-tablet:not(.grid--columns) ::slotted(*), 4480 .grid--2-col-tablet > * { 4481 width: calc(50% - var(--gap) / 2); 4482 } 4483 .grid--1-col-tablet:not(.grid--columns) ::slotted(*), 4484 .grid--1-col-tablet > * { 4485 width: 100%; 4486 } 4487 } 4488 4489 /* Token computed desktop grids */ 4490 @media screen and (min-width: 65em) {
4491 .grid:not(.grid--columns) ::slotted(*), 4492 .grid > * { 4493 width: calc( 4494 var(--grid-columns-width, 25%) - var(--gap) * var(--grid-colum-gaps, 3) / var(--grid-columns, 4) 4495 ); 4496 } 4497 .grid--2-col-desktop:not(.grid--columns) ::slotted(*), 4498 .grid--2-col-desktop > * { 4499 width: calc(50% - var(--gap) / 2); 4500 } 4501 } 4502`,Yo=[te` 4503 :host { 4504 display: block; 4505 } 4506`,gt,bt,Xo],Zo=[te` 4507 .grid-cell { 4508 height: 100%; 4509 width: 100%; 4510 } 4511`,te` 4512 /* Grid-Cell is a simple child component with no API properties */ 4513 /* Styling is controlled by parent Grid component via CSS custom properties */ 4514`];class Qo extends Ue{render(){return $` 4515 <div part="cell" class="grid-cell"> 4516 <slot></slot> 4517 </div> 4518 `}}Qo.styles=[Me,Zo];class ei extends Ue{constructor(){super(...arguments),this.columns=4,this.columnsNarrow="1",this.gapless=!1,this.fill=!1}gridStyles(){let e={};return 6===this.columns&&(e={...e,"--grid-columns-width":"16.66%","--grid-columns":"6","--grid-colum-gaps":"5","--grid-columns-peek":"1.5"}),5===this.columns&&(e={...e,"--grid-columns-width":"20%","--grid-columns":"5","--grid-colum-gaps":"4","--grid-columns-peek":"2"}),4===this.columns&&(e={...e,"--grid-columns-width":"25%","--grid-columns":"4","--grid-colum-gaps":"3","--grid-columns-peek":"2.5"}),3===this.columns&&(e={...e,"--grid-columns-width":"33.33%","--grid-columns":"3","--grid-colum-gaps":"2","--grid-columns-peek":"3"}),2===this.columns&&(e={...e,"--grid-columns-width":"50%","--grid-columns":"2","--grid-colum-gaps":"1","--grid-columns-peek":"4"}),1===this.columns&&(e={...e,"--grid-columns-width":"100%","--grid-columns":"1","--grid-colum-gaps":"0","--grid-columns-peek":"9"}),this.spacing&&(e={...e,"--gap-x":Number(this.spacing)/16+"em","--gap-y":Number(this.spacing)/16+"em"}),this.spacingNarrow?e={...e,"--gap-x-narrow":Number(this.spacingNarrow)/16+"em","--gap-y-narrow":Number(this.spacingNarrow)/16+"em"}:this.spacing&&(e={...e,"--gap-x-narrow":Number(this.spacing)/16+"em","--gap-y-narrow":Number(this.spacing)/16+"em"}),e}render(){return $` 4519 <div 4520 part="base grid" 4521 class="grid${J({"grid--gapless":this.gapless,"grid--fill":this.fill,[`grid--${this.columns}-col-tablet`]:this.columns<3,"grid--3-col-tablet":this.columns>=3,[`grid--${this.columns}-col-desktop`]:!0,[`grid--${this.columnsNarrow}-col-tablet-down`]:!0,[`flex-justify--${this.justify}`]:!0,[`flex-narrow-justify--${this.justifyNarrow}`]:!0})}" 4522 style="${He(this.gridStyles())}" 4523 > 4524 <slot></slot> 4525 </div> 4526 `}}function ti(e,t){let o=0;return function(...i){clearTimeout(o),o=setTimeout((()=>e.apply(this,i)),t)}}ei.styles=[Me,Yo],ei.dependencies={"pu-grid-cell":Qo},i([ke({type:Number})],ei.prototype,"columns",void 0),i([ke()],ei.prototype,"columnsNarrow",void 0),i([ke()],ei.prototype,"spacing",void 0),i([ke()],ei.prototype,"spacingNarrow",void 0),i([ke({type:Boolean})],ei.prototype,"gapless",void 0),i([ke({type:Boolean})],ei.prototype,"fill",void 0),i([ke()],ei.prototype,"justify",void 0),i([ke()],ei.prototype,"justifyNarrow",void 0),ei.define("pu-grid");var oi=te` 4527 :host { 4528 display: block; 4529 } 4530 4531 .header-row { 4532 display: flex; 4533 align-items: center; 4534 gap: var(--pu-space-600, 1.5em); 4535 } 4536 4537 @media screen and (max-width: 47.9975em) { 4538 .header-row { 4539 gap: var(--pu-space-400, 1em); 4540 } 4541 } 4542 @media screen and (max-width: 47.9975em) { 4543 .header-row.justify-content-narrow-start { 4544 justify-content: start; 4545 text-align: left; 4546 } 4547 .header-row.justify-content-narrow-center { 4548 justify-content: center; 4549 text-align: center; 4550 } 4551 .header-row.justify-content-narrow-end { 4552 justify-content: end; 4553 text-align: right; 4554 } 4555 .header-row.justify-content-narrow-space-between { 4556 justify-content: space-between; 4557 text-align: left; 4558 } 4559 } 4560 @media screen and (min-width: 48em) { 4561 .header-row.justify-content-start { 4562 justify-content: start; 4563 text-align: left; 4564 } 4565 .header-row.justify-content-center { 4566 justify-content: center; 4567 text-align: center; 4568 } 4569 .header-row.justify-content-end { 4570 justify-content: end; 4571 text-align: right; 4572 } 4573 .header-row.justify-content-space-between { 4574 justify-content: space-between; 4575 text-align: left; 4576 } 4577 } 4578`;class ii extends Ue{constructor(){super(...arguments),this.justifyContent="start",this.justifyContentNarrow="start",this.deprecatedPropertyMap=[{old:"mobileJustifyContent",new:"justifyContentNarrow",defaultValue:"start"}]}get mobileJustifyContent(){return this.justifyContentNarrow}set mobileJustifyContent(e){this._handleDeprecated("mobileJustifyContent",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}render(){return $` 4579 <div 4580 part="row" 4581 class="${J({"header-row":!0,[`justify-content-${this.justifyContent}`]:this.justifyContent,[`justify-content-narrow-${this.justifyContentNarrow}`]:this.justifyContentNarrow})}" 4582 > 4583 <slot name="header-block"></slot> 4584 </div> 4585 `}}ii.styles=[Me,oi],i([ke()],ii.prototype,"justifyContent",void 0),i([ke()],ii.prototype,"justifyContentNarrow",void 0),i([ke()],ii.prototype,"mobileJustifyContent",null);const ri=te` 4586 @media (max-width: 29.9375em) { 4587 .small-down { 4588 display: flex; 4589 } 4590 ::slotted([viewport='small-down']) { 4591 display: block; 4592 } 4593 } 4594 @media (min-width: 30em) { 4595 :host([viewport='small-down']) { 4596 display: none; 4597 } 4598 .small-down { 4599 display: none; 4600 } 4601 ::slotted([viewport='small-down']) { 4602 display: none; 4603 } 4604 } 4605 @media (max-width: 29.9375em) { 4606 :host([viewport='small-up']) { 4607 display: none; 4608 } 4609 .small-up { 4610 display: none; 4611 } 4612 ::slotted([viewport='small-up']) { 4613 display: none; 4614 } 4615 } 4616 @media (min-width: 30em) { 4617 .small-up { 4618 display: flex; 4619 } 4620 ::slotted([viewport='small-up']) { 4621 display: block; 4622 } 4623 } 4624 @media (max-width: 47.9375em) { 4625 .medium-down { 4626 display: flex; 4627 } 4628 ::slotted([viewport='medium-down']) { 4629 display: block; 4630 } 4631 } 4632 @media (min-width: 48em) { 4633 :host([viewport='medium-down']) { 4634 display: none; 4635 } 4636 .medium-down { 4637 display: none; 4638 } 4639 ::slotted([viewport='medium-down']) { 4640 display: none; 4641 } 4642 } 4643 @media (max-width: 47.9375em) { 4644 :host([viewport='medium-up']) { 4645 display: none; 4646 } 4647 .medium-up { 4648 display: none; 4649 } 4650 ::slotted([viewport='medium-up']) { 4651 display: none; 4652 } 4653 } 4654 @media (min-width: 48em) { 4655 .medium-up { 4656 display: flex; 4657 } 4658 ::slotted([viewport='medium-up']) { 4659 display: block; 4660 } 4661 } 4662 @media (max-width: 64.9375em) { 4663 .large-down { 4664 display: flex; 4665 } 4666 ::slotted([viewport='large-down']) { 4667 display: block; 4668 } 4669 } 4670 @media (min-width: 65em) { 4671 :host([viewport='large-down']) { 4672 display: none; 4673 } 4674 .large-down { 4675 display: none; 4676 } 4677 ::slotted([viewport='large-down']) { 4678 display: none; 4679 } 4680 } 4681 @media (max-width: 64.9375em) { 4682 :host([viewport='large-up']) { 4683 display: none; 4684 } 4685 .large-up { 4686 display: none; 4687 } 4688 ::slotted([viewport='large-up']) { 4689 display: none; 4690 } 4691 } 4692 @media (min-width: 65em) { 4693 .large-up { 4694 display: flex; 4695 } 4696 ::slotted([viewport='large-up']) { 4697 display: block; 4698 } 4699 } 4700 @media (max-width: 89.93755em) {
4701 .xlarge-down { 4702 display: flex; 4703 } 4704 ::slotted([viewport='xlarge-down']) { 4705 display: block; 4706 } 4707 } 4708 @media (min-width: 1440em) { 4709 :host([viewport='xlarge-down']) { 4710 display: none; 4711 } 4712 .xlarge-down { 4713 display: none; 4714 } 4715 ::slotted([viewport='xlarge-down']) { 4716 display: none; 4717 } 4718 } 4719 @media (max-width: 89.93755em) { 4720 :host([viewport='xlarge-up']) { 4721 display: none; 4722 } 4723 .xlarge-up { 4724 display: none; 4725 } 4726 ::slotted([viewport='xlarge-up']) { 4727 display: none; 4728 } 4729 } 4730 @media (min-width: 1440em) { 4731 .xlarge-up { 4732 display: flex; 4733 } 4734 ::slotted([viewport='xlarge-up']) { 4735 display: block; 4736 } 4737 } 4738`,ai=[ri,te` 4739 :host { 4740 display: block; 4741 } 4742 @media screen and (min-width: 65em) { 4743 :host([fit='fill']) { 4744 flex: 1 0 auto; 4745 } 4746 :host([fit='fit']) { 4747 flex: 0 1 auto; 4748 } 4749 :host([fit='auto']) { 4750 flex: 0 0 auto; 4751 } 4752 :host([justify='inherit']) { 4753 margin-right: 0 !important; 4754 margin-left: 0 !important; 4755 } 4756 :host([justify='start']) { 4757 margin-right: auto !important; 4758 } 4759 :host([justify='center']) { 4760 margin-left: auto !important; 4761 margin-right: auto !important; 4762 } 4763 :host([justify='end']) { 4764 margin-left: auto !important; 4765 } 4766 } 4767 @media screen and (max-width: 64.9975em) { 4768 :host([fitNarrow='fill']) { 4769 flex: 1 0 auto; 4770 } 4771 :host([fitNarrow='fit']) { 4772 flex: 0 1 auto; 4773 } 4774 :host([fitNarrow='auto']) { 4775 flex: 0 0 auto; 4776 } 4777 :host([justifyNarrow='inherit']) { 4778 margin-right: 0 !important; 4779 margin-left: 0 !important; 4780 } 4781 :host([justifyNarrow='start']) { 4782 margin-right: auto !important; 4783 } 4784 :host([justifyNarrow='center']) { 4785 margin-left: auto !important; 4786 margin-right: auto !important; 4787 } 4788 :host([justifyNarrow='end']) { 4789 margin-left: auto !important; 4790 } 4791 } 4792 .header-block { 4793 display: flex; 4794 flex-wrap: wrap; 4795 height: 100%; 4796 } 4797`];class si extends Ue{constructor(){super(...arguments),this.justify="start",this.fit="auto",this.fitNarrow="auto",this.deprecatedPropertyMap=[{old:"mobileJustify",new:"justifyNarrow",defaultValue:void 0},{old:"mobileFit",new:"fitNarrow",defaultValue:"auto"}]}get mobileJustify(){return this.justifyNarrow}set mobileJustify(e){this._handleDeprecated("mobileJustify",e)}get mobileFit(){return this.fitNarrow}set mobileFit(e){this._handleDeprecated("mobileFit",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}blockClasses(){const e={};return"small-down"===this.viewport?e["small-down"]=!0:"small-up"===this.viewport?e["small-up"]=!0:"medium-down"===this.viewport?e["medium-down"]=!0:"medium-up"===this.viewport?e["medium-up"]=!0:"large-down"===this.viewport?e["large-down"]=!0:"large-up"===this.viewport&&(e["large-up"]=!0),e}render(){return $` 4798 <div part="block" class="header-block${J(this.blockClasses())}"> 4799 <slot></slot> 4800 </div> 4801 `}}si.styles=[Me,ai],i([ke()],si.prototype,"viewport",void 0),i([ke()],si.prototype,"justify",void 0),i([ke()],si.prototype,"justifyNarrow",void 0),i([ke()],si.prototype,"fit",void 0),i([ke()],si.prototype,"fitNarrow",void 0),i([ke()],si.prototype,"mobileJustify",null),i([ke()],si.prototype,"mobileFit",null);const ni=[ri,te` 4802 :host { 4803 display: block; 4804 position: relative; 4805 z-index: 501; /* over overlay z-index */ 4806 } 4807 4808 /* Header */ 4809 .header { 4810 color: rgb(from var(--pu-color-foreground, rgb(0, 0, 0)) r g b); 4811 background-color: rgb(from var(--pu-color-background, rgb(240, 240, 240)) r g b / alpha); 4812 transition: all var(--pu-animation, 0.4s) ease; 4813 --pu-icon-color-foreground: var(--pu-color-foreground); 4814 } 4815 4816 @media screen and (min-width: 48em) { 4817 .header { 4818 padding-top: var(--pu-header-space-padding-top, 1em); 4819 padding-bottom: var(--pu-header-space-padding-bottom, 1em); 4820 padding-left: var(--pu-space-padding-inline, 1.5em); 4821 padding-right: var(--pu-space-padding-inline, 1.5em); 4822 } 4823 } 4824 4825 @media screen and (max-width: 47.9975em) { 4826 .header { 4827 padding-top: var(--pu-header-space-padding-top-narrow, 0.75em); 4828 padding-bottom: var(--pu-header-space-padding-bottom-narrow, 0.75em); 4829 padding-left: var(--pu-space-padding-inline-narrow, 1.5em); 4830 padding-right: var(--pu-space-padding-inline-narrow, 1.5em); 4831 } 4832 } 4833 4834 .header__inner { 4835 display: flex; 4836 flex-direction: column; 4837 row-gap: var(--pu-header-rows-gap, 1em); 4838 margin-left: auto; 4839 margin-right: auto; 4840 max-width: var(--pu-header-size-max-width, 75em); 4841 } 4842 @media screen and (max-width: 47.9975em) { 4843 .header__inner { 4844 row-gap: var(--pu-header-rows-gap-narrow, 1em); 4845 } 4846 } 4847 4848 header { 4849 transition: all var(--pu-animation, 0.4s) ease; 4850 } 4851`,te` 4852 /* Boolean Property API - Sticky Positioning */ 4853 :host([sticky]) { 4854 position: sticky; 4855 top: 0; 4856 z-index: 501; /* over overlay z-index */ 4857 } 4858
4859 /* Boolean Property API - Transparent Background */ 4860 :host([transparent]) { 4861 position: absolute; 4862 width: 100%; 4863 } 4864 4865 /* Boolean Property API - Combined Transparent + Sticky */ 4866 :host([transparent][sticky]) { 4867 position: fixed; 4868 width: 100%; 4869 } 4870 4871 /* Boolean Property API - Sticky Hide On Scroll */ 4872 :host([sticky][scrolling-down]) header { 4873 transform: translateY(-100%); 4874 } 4875`];class li extends Ue{constructor(){super(...arguments),this.width="page-width",this.spacing="24",this.sticky=!1,this.stickyHideOnScroll=!1,this.transparent=!1,this.deprecatedPropertyMap=[{old:"mobilePaddingTop",new:"paddingTopNarrow",defaultValue:void 0},{old:"mobilePaddingBottom",new:"paddingBottomNarrow",defaultValue:void 0},{old:"mobileSpacing",new:"spacingNarrow",defaultValue:void 0}],this._transparentScrolling=!1,this._currentScrollPosition=0,this._debouncedEventsHandler=ti((e=>{this._eventsHandler(e)}),100),this._eventsHandler=e=>{"scroll"===e.type&&this._stickyScroll()},this._removeTransparency=()=>{const e=window.scrollY||document.documentElement.scrollTop;this._transparentScrolling=e>0}}get mobilePaddingTop(){return this.paddingTopNarrow}set mobilePaddingTop(e){this._handleDeprecated("mobilePaddingTop",e)}get mobilePaddingBottom(){return this.paddingBottomNarrow}set mobilePaddingBottom(e){this._handleDeprecated("mobilePaddingBottom",e)}get mobileSpacing(){return this.spacingNarrow}set mobileSpacing(e){this._handleDeprecated("mobileSpacing",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}updated(e){super.updated(e),e.has("stickyHideOnScroll")&&(this.stickyHideOnScroll?window.addEventListener("scroll",this._debouncedEventsHandler):(window.removeEventListener("scroll",this._debouncedEventsHandler),this.removeAttribute("scrolling-down"))),e.has("transparent")&&(this.sticky&&this.transparent?window.addEventListener("scroll",this._removeTransparency):(window.removeEventListener("scroll",this._removeTransparency),this._transparentScrolling=!1))}disconnectedCallback(){this.sticky&&this.transparent&&window.removeEventListener("scroll",this._removeTransparency),this.sticky&&this.stickyHideOnScroll&&window.removeEventListener("scroll",this._debouncedEventsHandler),super.disconnectedCallback()}firstUpdated(){this._resizeObserver=new ResizeObserver((()=>this._initHeader())),this._resizeObserver.observe(this)}headerStyles(){let e={};if("full-width"===this.width&&(e={...e,"--pu-header-size-max-width":"100%"}),this.paddingTop){const t=/^\d+$/.test(this.paddingTop)?Number(this.paddingTop)/16+"em":this.paddingTop;e={...e,"--pu-header-space-padding-top":t}}if(this.paddingBottom){const t=/^\d+$/.test(this.paddingBottom)?Number(this.paddingBottom)/16+"em":this.paddingBottom;e={...e,"--pu-header-space-padding-bottom":t}}if(this.paddingTopNarrow){const t=/^\d+$/.test(this.paddingTopNarrow)?Number(this.paddingTopNarrow)/16+"em":this.paddingTopNarrow;e={...e,"--pu-header-space-padding-top-narrow":t}}else if(this.paddingTop){const t=/^\d+$/.test(this.paddingTop)?Number(this.paddingTop)/16+"em":this.paddingTop;e={...e,"--pu-header-space-padding-top-narrow":t}}if(this.paddingBottomNarrow){const t=/^\d+$/.test(this.paddingBottomNarrow)?Number(this.paddingBottomNarrow)/16+"em":this.paddingBottomNarrow;e={...e,"--pu-header-space-padding-bottom-narrow":t}}else if(this.paddingBottom){const t=/^\d+$/.test(this.paddingBottom)?Number(this.paddingBottom)/16+"em":this.paddingBottom;e={...e,"--pu-header-space-padding-bottom-narrow":t}}return this.spacing&&(e={...e,"--pu-header-rows-gap":Number(this.spacing)/16+"em"}),e=this.spacingNarrow?{...e,"--pu-header-rows-gap-narrow":Number(this.spacingNarrow)/16+"em"}:{...e,"--pu-header-rows-gap-narrow":Number(this.spacing)/16+"em"},this.transparent&&!this._transparentScrolling&&(e={...e,"--pu-color-background":"transparent"}),e}_initHeader(){this._currentScrollPosition=window.scrollY||document.documentElement.scrollTop,this._headerOuterHeight=this.getBoundingClientRect().bottom;const e=this.offsetHeight;this.style.setProperty("--pu-header-size-height-inner",e/16+"em"),this.style.setProperty("--pu-header-size-height-outer",this._headerOuterHeight/16+"em");const t=new CustomEvent("header-details",{detail:{height:this._headerOuterHeight},bubbles:!0,composed:!0});this.dispatchEvent(t)}_stickyScroll(){const e=window.scrollY||document.documentElement.scrollTop;this.stickyHideOnScroll?this._headerOuterHeight&&e<=this._headerOuterHeight?this.removeAttribute("scrolling-down"):e>this._currentScrollPosition?this.setAttribute("scrolling-down",""):this.removeAttribute("scrolling-down"):this.removeAttribute("scrolling-down"),this._currentScrollPosition=e<=0?0:e}render(){return $` 4876 <header 4877 part="base header" 4878 class="header" 4879 style="${He(this.headerStyles())}" 4880 > 4881 <div 4882 part="content" 4883 class="header__inner" 4884 > 4885 <slot name="header-row"></slot> 4886 </div> 4887 </header> 4888 `}}li.styles=[Me,ni],li.dependencies={"pu-header-row":ii,"pu-header-block":si},i([ke()],li.prototype,"width",void 0),i([ke()],li.prototype,"paddingTop",void 0),i([ke()],li.prototype,"paddingBottom",void 0),i([ke()],li.prototype,"paddingTopNarrow",void 0),i([ke()],li.prototype,"paddingBottomNarrow",void 0),i([ke()],li.prototype,"spacing",void 0),i([ke()],li.prototype,"spacingNarrow",void 0),i([ke({type:Boolean,reflect:!0})],li.prototype,"sticky",void 0),i([ke({type:Boolean})],li.prototype,"stickyHideOnScroll",void 0),i([ke({type:Boolean,reflect:!0})],li.prototype,"transparent",void 0),i([ke()],li.prototype,"mobilePaddingTop",null),i([ke()],li.prototype,"mobilePaddingBottom",null),i([ke()],li.prototype,"mobileSpacing",null),i([Ce()],li.prototype,"_headerOuterHeight",void 0),i([Ce()],li.prototype,"_transparentScrolling",void 0),i([Ce()],li.prototype,"_currentScrollPosition",void 0),i([Se(".header")],li.prototype,"_header",void 0),li.define("pu-header");var di=te` 4889 /* Display in narrow view only */ 4890 :host { 4891 display: block; 4892 } 4893 4894 /* Control icons */ 4895 .nav-icon[open].nav-icon--close { 4896 display: block; 4897 } 4898 .nav-icon[open].nav-icon--open { 4899 display: none; 4900 } 4901 .nav-icon--close { 4902 display: none; 4903 } 4904 .nav-icon--open { 4905 display: block; 4906 } 4907 4908 /* Header drawer */ 4909 .header-drawer { 4910 position: initial; 4911 --pu-disclosure-summary-space-padding: 0; 4912 } 4913 .header-drawer--overlay:after { 4914 content: ''; 4915 position: fixed; 4916 inset: 0; 4917 z-index: -1; 4918 background-color: rgb(from var(--pu-overlay-color-background, rgb(0, 0, 0, 0.4)) r g b / alpha); 4919 } 4920 4921 pu-disclosure::part(drawer) { 4922 --pu-color-foreground: var(--pu-menu-drawer-color-foreground); 4923 --pu-icon-color-foreground: var(--pu-menu-drawer-color-foreground); 4924 --pu-disclosure-summary-color-background: transparent; 4925 --pu-disclosure-details-color-background: rgb( 4926 from var(--pu-menu-drawer-color-background, rgb(240, 240, 240)) r g b / alpha 4927 ); 4928 --pu-disclosure-space-distance: var(--pu-header-size-height-inner, 0); 4929 --pu-disclosure-details-space-padding: 0; 4930 width: 90%; 4931 } 4932 4933 pu-disclosure::part(content) { 4934 border: none; 4935 } 4936 4937 /* Content structure */ 4938 .content-base { 4939 display: flex; 4940 flex-direction: column; 4941 font-family: var(--pu-menu-font-family, inherit); 4942 font-size: var(--pu-menu-font-size, inherit); 4943 letter-spacing: 0.05em; 4944 height: calc(100svh - var(--pu-header-size-height-outer)); 4945 } 4946 .content-navigation { 4947 flex: 1; 4948 position: relative; 4949 overflow-x: hidden; 4950 } 4951 .content-socials { 4952 display: none; 4953 align-items: center; 4954 justify-content: center; 4955 padding: var(--pu-space-600, 1.5em) var(--pu-space-400, 1.5em) var(--pu-space-1200, 3em); 4956 } 4957 .header-drawer--has-socials .content-socials { 4958 display: flex; 4959 } 4960 4961 /* Navigation lists */ 4962 .nav-list { 4963 display: flex; 4964 flex-direction: column; 4965 list-style: none; 4966 margin: 0; 4967 padding: var(--pu-space-800, 2em) 0; 4968 color: rgb(from var(--pu-menu-drawer-color-foreground, var(--pu-color-foreground, rgb(0, 0, 0))) r g b / 1); 4969 } 4970 4971 /* Submenu specific styling */ 4972 .nav-list[slot='submenu'] { 4973 padding: 0; 4974 width: 100%; 4975 } 4976 4977 /* Navigation labels and links */ 4978 .nav-label { 4979 display: block; 4980 color: inherit; 4981 padding: var(--pu-space-300, 0.75em) var(--pu-space-600, 1.5em); 4982 text-decoration: none; 4983 transition: background-color var(--pu-transition-duration-500, 0.5s) ease; 4984 } 4985 .nav-label:hover { 4986 background-color: rgb(from var(--pu-color-background) r g b / 0.7); 4987 } 4988 4989 /* Navigation links (deepest level) */ 4990 .nav-link { 4991 display: block; 4992 color: inherit; 4993 padding: var(--pu-space-300, 0.75em) var(--pu-space-600, 1.5em); 4994 text-decoration: none; 4995 transition: background-color var(--pu-transition-duration-500, 0.5s) ease; 4996 } 4997 .nav-link:hover { 4998 background-color: rgb(from var(--pu-color-background) r g b / 0.7); 4999 } 5000`;const pi=[te` 5001 :host { 5002 width: 100%; 5003 } 5004 5005 /* Summary */ 5006 .nav-drawer-summary { 5007 align-items: center; 5008 color: inherit; 5009 cursor: pointer; 5010 display: flex; 5011 list-style: none; 5012 padding: 0 var(--pu-space-600, 1.5em) 0 0; 5013 transition: background-color var(--pu-transition-duration-500, 0.5s ease); 5014 -webkit-tap-highlight-color: transparent; 5015 } 5016 .nav-drawer-summary:hover { 5017 background-color: rgb(from var(--pu-color-background) r g b / 0.75); 5018 } 5019 details summary::-webkit-details-marker { 5020 display: none; 5021 } 5022 5023 /* Panel */ 5024 .nav-drawer-panel { 5025 position: absolute; 5026 inset: 0; 5027 padding: var(--pu-space-800, 2em) 0; 5028 transform: translateX(100%); 5029 visibility: hidden; 5030 background-color: var(--pu-menu-drawer-color-background, rgb(236, 236, 236)); 5031 } 5032 @supports (color: rgb(from white r g b)) { 5033 .nav-drawer-panel { 5034 background-color: rgb(from var(--pu-menu-drawer-color-background, rgb(236, 236, 236)) r g b / alpha); 5035 } 5036 } 5037 5038 /* Back button */ 5039 .nav-back-button { 5040 cursor: pointer; 5041 display: flex; 5042 align-items: center; 5043 border: 0; 5044 box-shadow: none; 5045 column-gap: var(--pu-space-200, 0.5em); 5046 font-size: var(--pu-text-body-size-sm, 0.875em); 5047 padding: var(--pu-space-500, 1.25em) var(--pu-space-600, 1.5em); 5048 transition: background-color var(--pu-transition-duration-500, 0.5s ease); 5049 text-transform: uppercase; 5050 width: 100%; 5051 5052 color: var(--pu-menu-drawer-color-foreground, var(--pu-color-foreground, rgb(62, 62, 62))); 5053 background-color: transparent; 5054 } 5055 @supports (color: rgb(from white r g b)) { 5056 .nav-back-button { 5057 color: rgb(from var(--pu-menu-drawer-color-foreground, var(--pu-color-foreground, rgb(62, 62, 62))) r g b / alpha); 5058 } 5059 } 5060 5061 .nav-back-button:hover { 5062 background-color: var(--pu-color-background); 5063 } 5064 @supports (color: rgb(from white r g b)) { 5065 .nav-back-button:hover { 5066 background-color: rgb(from var(--pu-color-background) r g b / 0.75); 5067 } 5068 } 5069 5070 /* Navigation icons */ 5071 .nav-icon { 5072 height: var(--pu-space-400, 1em); 5073 width: var(--pu-space-400, 1em); 5074 } 5075 5076 .nav-icon--expand { 5077 margin-left: auto; 5078 } 5079 5080 .nav-icon--back { 5081 margin-left: 0; 5082 } 5083`,te` 5084 /* State API - Menu drawer animation state */ 5085 .nav-drawer[open].nav-drawer--opening .nav-drawer-panel { 5086 transition: 5087 transform 0.3s ease, 5088 visibility 0.3s ease; 5089 transform: translateX(0); 5090 visibility: visible; 5091 } 5092`];class ci extends Ue{constructor(){super(),this.clickOpenAction="",this.clickBackAction="",this._subN
5092avOpen=!1,this._animating=!1,this.closeDrawer=()=>{this._animating=!1,this._menuDrawer.removeAttribute("open"),this._subNavOpen=!this._subNavOpen}}_handleSummaryClick(){requestAnimationFrame((()=>{this._animating=!0})),this._subNavOpen=!this._subNavOpen}handleBackClick(){this._menuDrawer.removeAttribute("open"),this._animating=!1,this._subNavOpen=!this._subNavOpen}render(){return $` 5093 <details 5094 part="nav-drawer" 5095 class="nav-drawer${J({"nav-drawer--opening":this._animating&&this._subNavOpen})}" 5096 > 5097 <summary 5098 part="nav-drawer-summary" 5099 class="nav-drawer-summary" 5100 aria-label="Main menu" 5101 role="button" 5102 aria-expanded=${!!this._subNavOpen} 5103 @click=${this._handleSummaryClick} 5104 > 5105 <slot name="summary"></slot> 5106 <pu-icon 5107 part="nav-icon" 5108 exportparts="base:nav-icon-base,svg:nav-icon-svg" 5109 class="nav-icon nav-icon--expand" 5110 name="arrow-right-long" 5111 size="medium" 5112 aria-hidden="true" 5113 focusable="false" 5114 role="presentation" 5115 > 5116 </pu-icon> 5117 </summary> 5118 <div part="nav-drawer-panel" class="nav-drawer-panel" aria-hidden=${!this._subNavOpen}> 5119 <button part="nav-back-button" class="nav-back-button" type="button" @click=${this.handleBackClick}> 5120 <pu-icon 5121 part="nav-icon" 5122 exportparts="base:nav-icon-base,svg:nav-icon-svg" 5123 class="nav-icon nav-icon--back" 5124 name="arrow-left-long" 5125 size="medium" 5126 aria-hidden="true" 5127 focusable="false" 5128 role="presentation" 5129 > 5130 </pu-icon> 5131 <slot name="summary-back"></slot> 5132 </button> 5133 <slot name="submenu"></slot> 5134 </div> 5135 </details> 5136 `}}ci.styles=[Me,pi],i([ke({type:String})],ci.prototype,"clickOpenAction",void 0),i([ke({type:String})],ci.prototype,"clickBackAction",void 0),i([ke({state:!0,type:Boolean})],ci.prototype,"_subNavOpen",void 0),i([Ce()],ci.prototype,"_animating",void 0),i([Se(".nav-drawer")],ci.prototype,"_menuDrawer",void 0);class ui extends Ue{constructor(){super(...arguments),this.direction="from-left",this._drawerOpen=!1,this._slotHasChildren=!1}closeDrawer(){this._drawerOpen=!1,this._drawer?.detailsClose(),document.body.removeAttribute("style"),this._closeActiveDrawers()}_handleSlotChange(e){this._slotHasChildren=Ht(e,"socials")}_openDrawer(){this._drawerOpen=!0,document.body.style.overflow="hidden"}_closeDrawer(){this._drawerOpen=!1,document.body.removeAttribute("style"),this._closeActiveDrawers()}_closeActiveDrawers(){if(!this._drawerOpen){const e=this.shadowRoot?.querySelectorAll("pu-menu-drawer");e&&e.length&&e.forEach((e=>{e.closeDrawer()}))}}menuList(){if(this.data)return $` 5137 <nav 5138 part="nav-base" 5139 class="nav-base" 5140 > 5141 <ul 5142 part="nav-list" 5143 class="nav-list" 5144 > 5145 ${this.data.map((e=>$` 5146 <li 5147 part="nav-list-item" 5148 class="nav-list-item" 5149 > 5150 ${e.subItems?$` 5151 <!-- Menu drawer --> 5152 <pu-menu-drawer 5153 part="nav-drawer" 5154 exportparts=" 5155 nav-drawer, 5156 nav-drawer-summary, 5157 nav-label, 5158 nav-link, 5159 nav-icon, 5160 nav-icon-base, 5161 nav-icon-svg, 5162 nav-drawer-panel, 5163 nav-back-button 5164 " 5165 > 5166 <!-- Menu buttons -->
5167 <span 5168 part="nav-label" 5169 slot="summary" 5170 class="nav-label" 5171 > 5172 ${e.linkText} 5173 </span> 5174 <span 5175 part="nav-label" 5176 slot="summary-back" 5177 class="nav-label" 5178 > 5179 ${e.linkText} 5180 </span> 5181 <!-- Nested menus --> 5182 <ul 5183 part="nav-list" 5184 slot="submenu" 5185 class="nav-list" 5186 > 5187 ${e.subItems.map((e=>$` 5188 <li 5189 part="nav-list-item" 5190 class="nav-list-item" 5191 > 5192 ${e.subItems?$` 5193 <pu-menu-drawer 5194 part="nav-drawer" 5195 exportparts=" 5196 nav-drawer, 5197 nav-drawer-summary, 5198 nav-label, 5199 nav-icon, 5200 nav-icon-base, 5201 nav-icon-svg, 5202 nav-drawer-panel, 5203 nav-back-button 5204 " 5205 > 5206 <span 5207 part="nav-label" 5208 slot="summary" 5209 class="nav-label" 5210 > 5211 ${e.linkText} 5212 </span> 5213 <span 5214 part="nav-label" 5215 slot="summary-back" 5216 class="nav-label" 5217 > 5218 ${e.linkText} 5219 </span> 5220 <ul 5221 part="nav-list" 5222 slot="submenu" 5223 class="nav-list" 5224 > 5225 ${e.subItems.map((e=>$` 5226 <li 5227 part="nav-list-item" 5228 class="nav-list-item" 5229 > 5230 <a 5231 part="nav-link" 5232 class="nav-link" 5233 href="${e.linkUrl}" 5234 @click=${this.closeDrawer} 5235 > 5236 ${e.linkText} 5237 </a> 5238 </li> 5239 `))} 5240 </ul> 5241 </pu-menu-drawer> 5242 `:$` 5243 <a 5244 part="nav-label" 5245 class="nav-label" 5246 href="${e.linkUrl}" 5247 @click=${this.closeDrawer} 5248 > 5249 ${e.linkText} 5250 </a> 5251 `} 5252 </li> 5253 `))} 5254 </ul> 5255 </pu-menu-drawer> 5256 `:$` 5257 <!-- Single link --> 5258 <a 5259 part="nav-label" 5260 class="nav-label" 5261 href="${e.linkUrl}" 5262 @click=${this.closeDrawer} 5263 > 5264 ${e.linkText} 5265 </a> 5266 `} 5267 </li> 5268 `))} 5269 </ul> 5270 </nav> 5271 `}render(){return $` 5272 <pu-disclosure 5273 part="drawer-base" 5274 class="header-drawer ${J({"header-drawer--has-socials":this._slotHasChildren,"header-drawer--overlay":this._drawerOpen})}" 5275 direction=${this.direction} 5276 overlay 5277 exportparts=" 5278 base:disclosure-base, 5279 header:disclosure-header, 5280 drawer:disclosure-drawer, 5281 content:disclosure-content, 5282 nav-icon, 5283 nav-icon-base, 5284 nav-icon-svg" 5285 > 5286 <!-- Menu control button -->
5287 <span 5288 part="control-base" 5289 slot="icon" 5290 class="control-base" 5291 > 5292 <pu-icon 5293 part="nav-icon" 5294 class="nav-icon nav-icon--open" 5295 name="bars" 5296 size="2xlarge" 5297 ?open=${this._drawerOpen} 5298 @click=${this._openDrawer} 5299 role="presentation" 5300 aria-hidden="true" 5301 focusable="false" 5302 exportparts="base:nav-icon-base,svg:nav-icon-svg" 5303 > 5304 </pu-icon> 5305 <pu-icon 5306 part="nav-icon" 5307 class="nav-icon nav-icon--close" 5308 name="close" 5309 size="2xlarge" 5310 ?open=${this._drawerOpen} 5311 @click=${this._closeDrawer} 5312 role="presentation" 5313 aria-hidden="true" 5314 focusable="false" 5315 exportparts="base:nav-icon-base,svg:nav-icon-svg" 5316 > 5317 </pu-icon> 5318 </span> 5319 <!-- Menu drawer content --> 5320 <div 5321 part="content-base" 5322 slot="content" 5323 class="content-base" 5324 > 5325 <div 5326 part="content-navigation" 5327 class="content-navigation" 5328 > 5329 ${this.menuList()} 5330 </div> 5331 <div 5332 part="content-socials" 5333 class="content-socials" 5334 > 5335 <slot 5336 name="socials" 5337 @slotchange=${this._handleSlotChange} 5338 ></slot> 5339 </div> 5340 </div> 5341 </pu-disclosure> 5342 `}}ui.styles=[Me,di],ui.dependencies={"pu-menu-drawer":ci,"pu-disclosure":Do,"pu-icon":Ge},i([ke({type:Array})],ui.prototype,"data",void 0),i([ke()],ui.prototype,"direction",void 0),i([Ce()],ui.prototype,"_drawerOpen",void 0),i([Se("pu-disclosure")],ui.prototype,"_drawer",void 0),i([Ce()],ui.prototype,"_slotHasChildren",void 0),ui.define("pu-header-drawer");const hi=[te` 5343 /* Host element responsive fit behavior */ 5344 :host, 5345 :host([fit='fill']) { 5346 display: block; 5347 height: 100%; 5348 width: 100%; 5349 } 5350 :host([fit='fit-content']) { 5351 width: fit-content; 5352 } 5353 :host([fit='auto']) { 5354 width: auto; 5355 } 5356 5357 @media only screen and (max-width: 48em) { 5358 :host, 5359 :host([fitNarrow='fill']) { 5360 display: block; 5361 height: 100%; 5362 } 5363 :host([fitNarrow='fit-content']) { 5364 width: fit-content; 5365 } 5366 :host([fitNarrow='auto']) { 5367 width: auto; 5368 } 5369 } 5370 5371 .horizontal-stack { 5372 display: flex; 5373 } 5374 5375 @media (min-width: 48em) { 5376 .horizontal-stack { 5377 column-gap: var(--pu-grid-gap-x, var(--gap-x, 1em)); 5378 row-gap: var(--pu-grid-gap-y, var(--gap-y, 0.5em)); 5379 } 5380 .horizontal-stack--fit { 5381 height: 100%; 5382 } 5383 } 5384 5385 @media (max-width: 47.9975em) { 5386 .horizontal-stack { 5387 column-gap: var(--pu-grid-gap-x-narrow, var(--gap-x-narrow, 1em)); 5388 row-gap: var(--pu-grid-gap-y-narrow, var(--gap-y-narrow, 0.5em)); 5389 } 5390 .horizontal-stack--fit-narrow { 5391 height: 100%; 5392 } 5393 } 5394 5395 ::slotted(*) { 5396 flex-shrink: 1; 5397 } 5398`,gt,bt,mt,ft,te` 5399 /* Boolean Property API - Wrap behavior */ 5400 .horizontal-stack.group-wrap { 5401 flex-wrap: wrap; 5402 } 5403 5404 /* Value-Based Property API - Flex stretch behavior for slotted elements */ 5405 @media (max-width: 47.9975em) { 5406 .horizontal-stack.flex-narrow-justify--stretch ::slotted(*) { 5407 flex: auto; 5408 } 5409 } 5410 5411 @media (min-width: 48em) { 5412 .horizontal-stack.flex-justify--stretch ::slotted(*) { 5413 flex: auto; 5414 } 5415 } 5416`];class gi extends Ue{constructor(){super(...arguments),this.fit="fill",this.fitNarrow="fill",this.justify="start",this.justifyNarrow="start",this.align="start",this.alignNarrow="start",this.wrap=!1}styles(){let e={};return this.spacing&&(e={...e,"--gap-x":parseInt(this.spacing)/16+"em","--gap-y":parseInt(this.spacing)/16+"em"}),this.spacingNarrow&&(e={...e,"--gap-x-narrow":parseInt(this.spacingNarrow)/16+"em","--gap-y-narrow":parseInt(this.spacingNarrow)/16+"em"}),e}render(){return $` 5417 <div 5418 part="base horizontal-stack" 5419 class="${J({"horizontal-stack":!0,"horizontal-stack--fit":"fill"===this.fit,"horizontal-stack--fit-narrow":"fill"===this.fitNarrow,"group-wrap":this.wrap,[`flex-justify--${this.justify}`]:!0,[`flex-narrow-justify--${this.justifyNarrow}`]:!0,[`flex-align--${this.align}`]:!0,[`flex-narrow-align--${this.alignNarrow}`]:!0})}" 5420 style="${He(this.styles())}" 5421 > 5422 <slot></slot> 5423 </div> 5424 `}}gi.styles=[Me,hi],i([ke({reflect:!0})],gi.prototype,"fit",void 0),i([ke({reflect:!0})],gi.prototype,"fitNarrow",void 0),i([ke()],gi.prototype,"spacing",void 0),i([ke()],gi.prototype,"spacingNarrow",void 0),i([ke()],gi.prototype,"justify",void 0),i([ke()],gi.prototype,"justifyNarrow",void 0),i([ke()],gi.prototype,"align",void 0),i([ke()],gi.prototype,"alignNarrow",void 0),i([ke({type:Boolean})],gi.prototype,"wrap",void 0),gi.define("pu-horizontal-stack"),Ge.define("pu-icon"),Zt.define("pu-input");const mi=[{iso2:"ZZ",name:"International",dialCode:"+",flag1x1:"/assets/flags/zz.svg"},{iso2:"AF",name:"Afghanistan",dialCode:"+93",flag1x1:"/assets/flags/af.svg"},{iso2:"AX",name:"Ã land Islands",dialCode:"+358",flag1x1:"/assets/flags/ax.svg"},{iso2:"AL",name:"Albania",dialCode:"+355",flag1x1:"/assets/flags/al.svg"},{iso2:"DZ",name:"Algeria",dialCode:"+213",flag1x1:"/assets/flags/dz.svg"},{iso2:"AS",name:"American Samoa",dialCode:"+1684",flag1x1:"/assets/flags/as.svg"},{iso2:"AD",name:"Andorra",dialCode:"+376",flag1x1:"/assets/flags/ad.svg"},{iso2:"AO",name:"Angola",dialCode:"+244",flag1x1:"/assets/flags/ao.svg"},{iso2:"AI",name:"Anguilla",dialCode:"+1264",flag1x1:"/assets/flags/ai.svg"},{iso2:"AG",name:"Antigua and Barbuda",dialCode:"+1268",flag1x1:"/assets/flags/ag.svg"}
5424,{iso2:"AR",name:"Argentina",dialCode:"+54",flag1x1:"/assets/flags/ar.svg"},{iso2:"AM",name:"Armenia",dialCode:"+374",flag1x1:"/assets/flags/am.svg"},{iso2:"AW",name:"Aruba",dialCode:"+297",flag1x1:"/assets/flags/aw.svg"},{iso2:"AC",name:"Ascension Island",dialCode:"+247",flag1x1:"/assets/flags/ac.svg"},{iso2:"AU",name:"Australia",dialCode:"+61",flag1x1:"/assets/flags/au.svg"},{iso2:"AT",name:"Austria",dialCode:"+43",flag1x1:"/assets/flags/at.svg"},{iso2:"AZ",name:"Azerbaijan",dialCode:"+994",flag1x1:"/assets/flags/az.svg"},{iso2:"BS",name:"Bahamas",dialCode:"+1242",flag1x1:"/assets/flags/bs.svg"},{iso2:"BH",name:"Bahrain",dialCode:"+973",flag1x1:"/assets/flags/bh.svg"},{iso2:"BD",name:"Bangladesh",dialCode:"+880",flag1x1:"/assets/flags/bd.svg"},{iso2:"BB",name:"Barbados",dialCode:"+1246",flag1x1:"/assets/flags/bb.svg"},{iso2:"BY",name:"Belarus",dialCode:"+375",flag1x1:"/assets/flags/by.svg"},{iso2:"BE",name:"Belgium",dialCode:"+32",flag1x1:"/assets/flags/be.svg"},{iso2:"BZ",name:"Belize",dialCode:"+501",flag1x1:"/assets/flags/bz.svg"},{iso2:"BJ",name:"Benin",dialCode:"+229",flag1x1:"/assets/flags/bj.svg"},{iso2:"BM",name:"Bermuda",dialCode:"+1441",flag1x1:"/assets/flags/bm.svg"},{iso2:"BT",name:"Bhutan",dialCode:"+975",flag1x1:"/assets/flags/bt.svg"},{iso2:"BO",name:"Bolivia",dialCode:"+591",flag1x1:"/assets/flags/bo.svg"},{iso2:"BQ",name:"Bonaire, Sint Eustatius and Saba",dialCode:"+599",flag1x1:"/assets/flags/bq.svg"},{iso2:"BA",name:"Bosnia and Herzegovina",dialCode:"+387",flag1x1:"/assets/flags/ba.svg"},{iso2:"BW",name:"Botswana",dialCode:"+267",flag1x1:"/assets/flags/bw.svg"},{iso2:"BR",name:"Brazil",dialCode:"+55",flag1x1:"/assets/flags/br.svg"},{iso2:"IO",name:"British Indian Ocean Territory",dialCode:"+246",flag1x1:"/assets/flags/io.svg"},{iso2:"BN",name:"Brunei Darussalam",dialCode:"+673",flag1x1:"/assets/flags/bn.svg"},{iso2:"BG",name:"Bulgaria",dialCode:"+359",flag1x1:"/assets/flags/bg.svg"},{iso2:"BF",name:"Burkina Faso",dialCode:"+226",flag1x1:"/assets/flags/bf.svg"},{iso2:"BI",name:"Burundi",dialCode:"+257",flag1x1:"/assets/flags/bi.svg"},{iso2:"KH",name:"Cambodia",dialCode:"+855",flag1x1:"/assets/flags/kh.svg"},{iso2:"CM",name:"Cameroon",dialCode:"+237",flag1x1:"/assets/flags/cm.svg"},{iso2:"CA",name:"Canada",dialCode:"+1",flag1x1:"/assets/flags/ca.svg"},{iso2:"CV",name:"Cape Verde",dialCode:"+238",flag1x1:"/assets/flags/cv.svg"},{iso2:"KY",name:"Cayman Islands",dialCode:"+1345",flag1x1:"/assets/flags/ky.svg"},{iso2:"CF",name:"Central African Republic",dialCode:"+236",flag1x1:"/assets/flags/cf.svg"},{iso2:"TD",name:"Chad",dialCode:"+235",flag1x1:"/assets/flags/td.svg"},{iso2:"CL",name:"Chile",dialCode:"+56",flag1x1:"/assets/flags/cl.svg"},{iso2:"CN",name:"China",dialCode:"+86",flag1x1:"/assets/flags/cn.svg"},{iso2:"CX",name:"Christmas Island",dialCode:"+61",flag1x1:"/assets/flags/cx.svg"},{iso2:"CC",name:"Cocos (Keeling) Islands",dialCode:"+61",flag1x1:"/assets/flags/cc.svg"},{iso2:"CO",name:"Colombia",dialCode:"+57",flag1x1:"/assets/flags/co.svg"},{iso2:"KM",name:"Comoros",dialCode:"+269",flag1x1:"/assets/flags/km.svg"},{iso2:"CG",name:"Congo",dialCode:"+242",flag1x1:"/assets/flags/cg.svg"},{iso2:"CD",name:"Congo, Democratic Republic of the",dialCode:"+243",flag1x1:"/assets/flags/cd.svg"},{iso2:"CK",name:"Cook Islands",dialCode:"+682",flag1x1:"/assets/flags/ck.svg"},{iso2:"CR",name:"Costa Rica",dialCode:"+506",flag1x1:"/assets/flags/cr.svg"},{iso2:"CI",name:"Cote d'Ivoire",dialCode:"+225",flag1x1:"/assets/flags/ci.svg"},{iso2:"HR",name:"Croatia",dialCode:"+385",flag1x1:"/assets/flags/hr.svg"},{iso2:"CU",name:"Cuba",dialCode:"+53",flag1x1:"/assets/flags/cu.svg"},{iso2:"CW",name:"Curaçao",dialCode:"+599",flag1x1:"/assets/flags/cw.svg"},{iso2:"CY",name:"Cyprus",dialCode:"+357",flag1x1:"/assets/flags/cy.svg"},{iso2:"CZ",name:"Czech Republic",dialCode:"+420",flag1x1:"/assets/flags/cz.svg"},{iso2:"DK",name:"Denmark",dialCode:"+45",flag1x1:"/assets/flags/dk.svg"},{iso2:"DJ",name:"Djibouti",dialCode:"+253",flag1x1:"/assets/flags/dj.svg"},{iso2:"DM",name:"Dominica",dialCode:"+1767",flag1x1:"/assets/flags/dm.svg"},{iso2:"DO",name:"Dominican Republic",dialCode:"+1",flag1x1:"/assets/flags/do.svg"},{iso2:"EC",name:"Ecuador",dialCode:"+593",flag1x1:"/assets/flags/ec.svg"},{iso2:"EG",name:"Egypt",dialCode:"+20",flag1x1:"/assets/flags/eg.svg"},{iso2:"SV",name:"El Salvador",dialCode:"+503",flag1x1:"/assets/flags/sv.svg"},{iso2:"GQ",name:"Equatorial Guinea",dialCode:"+240",flag1x1:"/assets/flags/gq.svg"},{iso2:"ER",name:"Eritrea",dialCode:"+291",flag1x1:"/assets/flags/er.svg"},{iso2:"EE",name:"Estonia",dialCode:"+372",flag1x1:"/assets/flags/ee.svg"},{iso2:"ET",name:"Ethiopia",dialCode:"+251",flag1x1:"/assets/flags/et.svg"},{iso2:"FK",name:"Falkland Islands",dialCode:"+500",flag1x1:"/assets/flags/fk.svg"},{iso2:"FO",name:"Faroe Islands",dialCode:"+298",flag1x1:"/assets/flags/fo.svg"},{iso2:"FM",name:"Federated States of Micronesia",dialCode:"+691",flag1x1:"/assets/flags/fm.svg"},{iso2:"FJ",name:"Fiji",dialCode:"+679",flag1x1:"/assets/flags/fj.svg"},{iso2:"FI",name:"Finland",dialCode:"+358",flag1x1:"/assets/flags/fi.svg"},{iso2:"FR",name:"France",dialCode:"+33",flag1x1:"/assets/flags/fr.svg"},{iso2:"GF",name:"French Guiana",dialCode:"+594",flag1x1:"/assets/flags/gf.svg"},{iso2:"PF",name:"French Polynesia",dialCode:"+689",flag1x1:"/assets/flags/pf.svg"},{iso2:"GA",name:"Gabon",dialCode:"+241",flag1x1:"/assets/flags/ga.svg"},{iso2:"GM",name:"Gambia",dialCode:"+220",flag1x1:"/assets/flags/gm.svg"},{iso2:"GE",name:"Georgia",dialCode:"+995",flag1x1:"/assets/flags/ge.svg"},{iso2:"DE",name:"Germany",dialCode:"+49",flag1x1:"/assets/flags/de.svg"},{iso2:"GH",name:"Ghana",dialCode:"+233",flag1x1:"/assets/flags/gh.svg"},{iso2:"GI",name:"Gibraltar",dialCode:"+350",flag1x1:"/assets/flags/gi.svg"},{iso2:"GR",name:"Greece",dialCode:"+30",flag1x1:"/assets/flags/gr.svg"},{iso2:"GL",name:"Greenland",dialCode:"+299",flag1x1:"/assets/flags/gl.svg"},{iso2:"GD",name:"Grenada",dialCode:"+1473",flag1x1:"/assets/flags/gd.svg"},{iso2:"GP",name:"Guadeloupe",dialCode:"+590",flag1x1:"/assets/flags/gp.svg"},{iso2:"GU",name:"Guam",dialCode:"+1671",flag1x1:"/assets/flags/gu.svg"},{iso2:"GT",name:"Guatemala",dialCode:"+502",flag1x1:"/assets/flags/gt.svg"},{iso2:"GG",name:"Guernsey",dialCode:"+44",flag1x1:"/assets/flags/gg.svg"},{iso2:"GN",name:"Guinea",dialCode:"+224",flag1x1:"/assets/flags/gn.svg"},{iso2:"GW",name:"Guinea-Bissau",dialCode:"+245",flag1x1:"/assets/flags/gw.svg"},{iso2:"GY",name:"Guyana",dialCode:"+592",flag1x1:"/assets/flags/gy.svg"},{iso2:"HT",name:"Haiti",dialCode:"+509",flag1x1:"/assets/flags/ht.svg"},{iso2:"VA",name:"Holy See (Vatican City State)",dialCode:"+379",flag1x1:"/assets/flags/va.svg"},{iso2:"HN",name:"Honduras",dialCode:"+504",flag1x1:"/assets/flags/hn.svg"},{iso2:"HK",name:"Hong Kong",dialCode:"+852",flag1x1:"/assets/flags/hk.svg"},{iso2:"HU",name:"Hungary",dialCode:"+36",flag1x1:"/assets/flags/hu.svg"},{iso2:"IS",name:"Iceland",dialCode:"+354",flag1x1:"/assets/flags/is.svg"},{iso2:"IN",name:"India",dialCode:"+91",flag1x1:"/assets/flags/in.svg"},{iso2:"ID",name:"Indonesia",dialCode:"+62",flag1x1:"/assets/flags/id.svg"},{iso2:"IR",name:"Iran",dialCode:"+98",flag1x1:"/assets/flags/ir.svg"},{iso2:"IQ",name:"Iraq",dialCode:"+964",flag1x1:"/assets/flags/iq.svg"},{iso2:"IE",name:"Ireland",dialCode:"+353",flag1x1:"/assets/flags/ie.svg"},{iso2:"IM",name:"Isle of Man",dialCode:"+44",flag1x1:"/assets/flags/im.svg"},{iso2:"IL",name:"Israel",dialCode:"+972",flag1x1:"/assets/flags/il.svg"}
5424,{iso2:"IT",name:"Italy",dialCode:"+39",flag1x1:"/assets/flags/it.svg"},{iso2:"JM",name:"Jamaica",dialCode:"+1876",flag1x1:"/assets/flags/jm.svg"},{iso2:"JP",name:"Japan",dialCode:"+81",flag1x1:"/assets/flags/jp.svg"},{iso2:"JE",name:"Jersey",dialCode:"+44",flag1x1:"/assets/flags/je.svg"},{iso2:"JO",name:"Jordan",dialCode:"+962",flag1x1:"/assets/flags/jo.svg"},{iso2:"KZ",name:"Kazakhstan",dialCode:"+7",flag1x1:"/assets/flags/kz.svg"},{iso2:"KE",name:"Kenya",dialCode:"+254",flag1x1:"/assets/flags/ke.svg"},{iso2:"KI",name:"Kiribati",dialCode:"+686",flag1x1:"/assets/flags/ki.svg"},{iso2:"XK",name:"Kosovo",dialCode:"+383",flag1x1:"/assets/flags/xk.svg"},{iso2:"KW",name:"Kuwait",dialCode:"+965",flag1x1:"/assets/flags/kw.svg"},{iso2:"KG",name:"Kyrgyzstan",dialCode:"+996",flag1x1:"/assets/flags/kg.svg"},{iso2:"LA",name:"Laos",dialCode:"+856",flag1x1:"/assets/flags/la.svg"},{iso2:"LV",name:"Latvia",dialCode:"+371",flag1x1:"/assets/flags/lv.svg"},{iso2:"LB",name:"Lebanon",dialCode:"+961",flag1x1:"/assets/flags/lb.svg"},{iso2:"LS",name:"Lesotho",dialCode:"+266",flag1x1:"/assets/flags/ls.svg"},{iso2:"LR",name:"Liberia",dialCode:"+231",flag1x1:"/assets/flags/lr.svg"},{iso2:"LY",name:"Libya",dialCode:"+218",flag1x1:"/assets/flags/ly.svg"},{iso2:"LI",name:"Liechtenstein",dialCode:"+423",flag1x1:"/assets/flags/li.svg"},{iso2:"LT",name:"Lithuania",dialCode:"+370",flag1x1:"/assets/flags/lt.svg"},{iso2:"LU",name:"Luxembourg",dialCode:"+352",flag1x1:"/assets/flags/lu.svg"},{iso2:"MO",name:"Macao",dialCode:"+853",flag1x1:"/assets/flags/mo.svg"},{iso2:"MG",name:"Madagascar",dialCode:"+261",flag1x1:"/assets/flags/mg.svg"},{iso2:"MW",name:"Malawi",dialCode:"+265",flag1x1:"/assets/flags/mw.svg"},{iso2:"MY",name:"Malaysia",dialCode:"+60",flag1x1:"/assets/flags/my.svg"},{iso2:"MV",name:"Maldives",dialCode:"+960",flag1x1:"/assets/flags/mv.svg"},{iso2:"ML",name:"Mali",dialCode:"+223",flag1x1:"/assets/flags/ml.svg"},{iso2:"MT",name:"Malta",dialCode:"+356",flag1x1:"/assets/flags/mt.svg"},{iso2:"MH",name:"Marshall Islands",dialCode:"+692",flag1x1:"/assets/flags/mh.svg"},{iso2:"MQ",name:"Martinique",dialCode:"+596",flag1x1:"/assets/flags/mq.svg"},{iso2:"MR",name:"Mauritania",dialCode:"+222",flag1x1:"/assets/flags/mr.svg"},{iso2:"MU",name:"Mauritius",dialCode:"+230",flag1x1:"/assets/flags/mu.svg"},{iso2:"YT",name:"Mayotte",dialCode:"+262",flag1x1:"/assets/flags/yt.svg"},{iso2:"MX",name:"Mexico",dialCode:"+52",flag1x1:"/assets/flags/mx.svg"},{iso2:"MD",name:"Moldova",dialCode:"+373",flag1x1:"/assets/flags/md.svg"},{iso2:"MC",name:"Monaco",dialCode:"+377",flag1x1:"/assets/flags/mc.svg"},{iso2:"MN",name:"Mongolia",dialCode:"+976",flag1x1:"/assets/flags/mn.svg"},{iso2:"ME",name:"Montenegro",dialCode:"+382",flag1x1:"/assets/flags/me.svg"},{iso2:"MS",name:"Montserrat",dialCode:"+1664",flag1x1:"/assets/flags/ms.svg"},{iso2:"MA",name:"Morocco",dialCode:"+212",flag1x1:"/assets/flags/ma.svg"},{iso2:"MZ",name:"Mozambique",dialCode:"+258",flag1x1:"/assets/flags/mz.svg"},{iso2:"MM",name:"Myanmar",dialCode:"+95",flag1x1:"/assets/flags/mm.svg"},{iso2:"NA",name:"Namibia",dialCode:"+264",flag1x1:"/assets/flags/na.svg"},{iso2:"NR",name:"Nauru",dialCode:"+674",flag1x1:"/assets/flags/nr.svg"},{iso2:"NP",name:"Nepal",dialCode:"+977",flag1x1:"/assets/flags/np.svg"},{iso2:"NL",name:"Netherlands",dialCode:"+31",flag1x1:"/assets/flags/nl.svg"},{iso2:"NC",name:"New Caledonia",dialCode:"+687",flag1x1:"/assets/flags/nc.svg"},{iso2:"NZ",name:"New Zealand",dialCode:"+64",flag1x1:"/assets/flags/nz.svg"},{iso2:"NI",name:"Nicaragua",dialCode:"+505",flag1x1:"/assets/flags/ni.svg"},{iso2:"NE",name:"Niger",dialCode:"+227",flag1x1:"/assets/flags/ne.svg"},{iso2:"NG",name:"Nigeria",dialCode:"+234",flag1x1:"/assets/flags/ng.svg"},{iso2:"NU",name:"Niue",dialCode:"+683",flag1x1:"/assets/flags/nu.svg"},{iso2:"NF",name:"Norfolk Island",dialCode:"+672",flag1x1:"/assets/flags/nf.svg"},{iso2:"KP",name:"North Korea",dialCode:"+850",flag1x1:"/assets/flags/kp.svg"},{iso2:"MK",name:"North Macedonia",dialCode:"+389",flag1x1:"/assets/flags/mk.svg"},{iso2:"MP",name:"Northern Mariana Islands",dialCode:"+1670",flag1x1:"/assets/flags/mp.svg"},{iso2:"NO",name:"Norway",dialCode:"+47",flag1x1:"/assets/flags/no.svg"},{iso2:"OM",name:"Oman",dialCode:"+968",flag1x1:"/assets/flags/om.svg"},{iso2:"PK",name:"Pakistan",dialCode:"+92",flag1x1:"/assets/flags/pk.svg"},{iso2:"PW",name:"Palau",dialCode:"+680",flag1x1:"/assets/flags/pw.svg"},{iso2:"PS",name:"Palestine",dialCode:"+970",flag1x1:"/assets/flags/ps.svg"},{iso2:"PA",name:"Panama",dialCode:"+507",flag1x1:"/assets/flags/pa.svg"}
5424,{iso2:"PG",name:"Papua New Guinea",dialCode:"+675",flag1x1:"/assets/flags/pg.svg"},{iso2:"PY",name:"Paraguay",dialCode:"+595",flag1x1:"/assets/flags/py.svg"},{iso2:"PE",name:"Peru",dialCode:"+51",flag1x1:"/assets/flags/pe.svg"},{iso2:"PH",name:"Philippines",dialCode:"+63",flag1x1:"/assets/flags/ph.svg"},{iso2:"PL",name:"Poland",dialCode:"+48",flag1x1:"/assets/flags/pl.svg"},{iso2:"PT",name:"Portugal",dialCode:"+351",flag1x1:"/assets/flags/pt.svg"},{iso2:"PR",name:"Puerto Rico",dialCode:"+1",flag1x1:"/assets/flags/pr.svg"},{iso2:"QA",name:"Qatar",dialCode:"+974",flag1x1:"/assets/flags/qa.svg"},{iso2:"RE",name:"Reunion",dialCode:"+262",flag1x1:"/assets/flags/re.svg"},{iso2:"RO",name:"Romania",dialCode:"+40",flag1x1:"/assets/flags/ro.svg"},{iso2:"RU",name:"Russia",dialCode:"+7",flag1x1:"/assets/flags/ru.svg"},{iso2:"RW",name:"Rwanda",dialCode:"+250",flag1x1:"/assets/flags/rw.svg"},{iso2:"BL",name:"Saint Barthélemy",dialCode:"+590",flag1x1:"/assets/flags/bl.svg"},{iso2:"SH",name:"Saint Helena",dialCode:"+290",flag1x1:"/assets/flags/sh.svg"},{iso2:"KN",name:"Saint Kitts and Nevis",dialCode:"+1869",flag1x1:"/assets/flags/kn.svg"},{iso2:"LC",name:"Saint Lucia",dialCode:"+1758",flag1x1:"/assets/flags/lc.svg"},{iso2:"MF",name:"Saint Martin (French Part)",dialCode:"+590",flag1x1:"/assets/flags/mf.svg"},{iso2:"PM",name:"Saint Pierre and Miquelon",dialCode:"+508",flag1x1:"/assets/flags/pm.svg"},{iso2:"VC",name:"Saint Vincent and the Grenadines",dialCode:"+1784",flag1x1:"/assets/flags/vc.svg"},{iso2:"WS",name:"Samoa",dialCode:"+685",flag1x1:"/assets/flags/ws.svg"},{iso2:"SM",name:"San Marino",dialCode:"+378",flag1x1:"/assets/flags/sm.svg"},{iso2:"ST",name:"Sao Tome and Principe",dialCode:"+239",flag1x1:"/assets/flags/st.svg"},{iso2:"SA",name:"Saudi Arabia",dialCode:"+966",flag1x1:"/assets/flags/sa.svg"},{iso2:"SN",name:"Senegal",dialCode:"+221",flag1x1:"/assets/flags/sn.svg"},{iso2:"RS",name:"Serbia",dialCode:"+381",flag1x1:"/assets/flags/rs.svg"},{iso2:"SC",name:"Seychelles",dialCode:"+248",flag1x1:"/assets/flags/sc.svg"},{iso2:"SL",name:"Sierra Leone",dialCode:"+232",flag1x1:"/assets/flags/sl.svg"},{iso2:"SG",name:"Singapore",dialCode:"+65",flag1x1:"/assets/flags/sg.svg"},{iso2:"SX",name:"Sint Maarten",dialCode:"+1721",flag1x1:"/assets/flags/sx.svg"},{iso2:"SK",name:"Slovakia",dialCode:"+421",flag1x1:"/assets/flags/sk.svg"},{iso2:"SI",name:"Slovenia",dialCode:"+386",flag1x1:"/assets/flags/si.svg"},{iso2:"SB",name:"Solomon Islands",dialCode:"+677",flag1x1:"/assets/flags/sb.svg"},{iso2:"SO",name:"Somalia",dialCode:"+252",flag1x1:"/assets/flags/so.svg"},{iso2:"ZA",name:"South Africa",dialCode:"+27",flag1x1:"/assets/flags/za.svg"},{iso2:"KR",name:"South Korea",dialCode:"+82",flag1x1:"/assets/flags/kr.svg"},{iso2:"SS",name:"South Sudan",dialCode:"+211",flag1x1:"/assets/flags/ss.svg"},{iso2:"ES",name:"Spain",dialCode:"+34",flag1x1:"/assets/flags/es.svg"},{iso2:"LK",name:"Sri Lanka",dialCode:"+94",flag1x1:"/assets/flags/lk.svg"},{iso2:"SD",name:"Sudan",dialCode:"+249",flag1x1:"/assets/flags/sd.svg"},{iso2:"SR",name:"Suriname",dialCode:"+597",flag1x1:"/assets/flags/sr.svg"},{iso2:"SJ",name:"Svalbard and Jan Mayen",dialCode:"+47",flag1x1:"/assets/flags/sj.svg"},{iso2:"SZ",name:"Swaziland",dialCode:"+268",flag1x1:"/assets/flags/sz.svg"},{iso2:"SE",name:"Sweden",dialCode:"+46",flag1x1:"/assets/flags/se.svg"},{iso2:"CH",name:"Switzerland",dialCode:"+41",flag1x1:"/assets/flags/ch.svg"},{iso2:"SY",name:"Syria",dialCode:"+963",flag1x1:"/assets/flags/sy.svg"},{iso2:"TW",name:"Taiwan",dialCode:"+886",flag1x1:"/assets/flags/tw.svg"},{iso2:"TJ",name:"Tajikistan",dialCode:"+992",flag1x1:"/assets/flags/tj.svg"},{iso2:"TZ",name:"Tanzania",dialCode:"+255",flag1x1:"/assets/flags/tz.svg"},{iso2:"TH",name:"Thailand",dialCode:"+66",flag1x1:"/assets/flags/th.svg"},{iso2:"TL",name:"Timor-Leste",dialCode:"+670",flag1x1:"/assets/flags/tl.svg"},{iso2:"TG",name:"Togo",dialCode:"+228",flag1x1:"/assets/flags/tg.svg"},{iso2:"TK",name:"Tokelau",dialCode:"+690",flag1x1:"/assets/flags/tk.svg"},{iso2:"TO",name:"Tonga",dialCode:"+676",flag1x1:"/assets/flags/to.svg"},{iso2:"TT",name:"Trinidad and Tobago",dialCode:"+1868",flag1x1:"/assets/flags/tt.svg"},{iso2:"TA",name:"Tristan da Cunha",dialCode:"+290",flag1x1:"/assets/flags/ta.svg"},{iso2:"TN",name:"Tunisia",dialCode:"+216",flag1x1:"/assets/flags/tn.svg"}
5424,{iso2:"TR",name:"Turkey",dialCode:"+90",flag1x1:"/assets/flags/tr.svg"},{iso2:"TM",name:"Turkmenistan",dialCode:"+993",flag1x1:"/assets/flags/tm.svg"},{iso2:"TC",name:"Turks and Caicos Islands",dialCode:"+1649",flag1x1:"/assets/flags/tc.svg"},{iso2:"TV",name:"Tuvalu",dialCode:"+688",flag1x1:"/assets/flags/tv.svg"},{iso2:"UG",name:"Uganda",dialCode:"+256",flag1x1:"/assets/flags/ug.svg"},{iso2:"UA",name:"Ukraine",dialCode:"+380",flag1x1:"/assets/flags/ua.svg"},{iso2:"AE",name:"United Arab Emirates",dialCode:"+971",flag1x1:"/assets/flags/ae.svg"},{iso2:"GB",name:"United Kingdom",dialCode:"+44",flag1x1:"/assets/flags/gb.svg"},{iso2:"US",name:"United States",dialCode:"+1",flag1x1:"/assets/flags/us.svg"},{iso2:"UY",name:"Uruguay",dialCode:"+598",flag1x1:"/assets/flags/uy.svg"},{iso2:"UZ",name:"Uzbekistan",dialCode:"+998",flag1x1:"/assets/flags/uz.svg"},{iso2:"VU",name:"Vanuatu",dialCode:"+678",flag1x1:"/assets/flags/vu.svg"},{iso2:"VE",name:"Venezuela",dialCode:"+58",flag1x1:"/assets/flags/ve.svg"},{iso2:"VN",name:"Vietnam",dialCode:"+84",flag1x1:"/assets/flags/vn.svg"},{iso2:"VG",name:"Virgin Islands, British",dialCode:"+1284",flag1x1:"/assets/flags/vg.svg"},{iso2:"VI",name:"Virgin Islands, U.S.",dialCode:"+1340",flag1x1:"/assets/flags/vi.svg"},{iso2:"WF",name:"Wallis and Futuna",dialCode:"+681",flag1x1:"/assets/flags/wf.svg"},{iso2:"EH",name:"Western Sahara",dialCode:"+212",flag1x1:"/assets/flags/eh.svg"},{iso2:"YE",name:"Yemen",dialCode:"+967",flag1x1:"/assets/flags/ye.svg"},{iso2:"ZM",name:"Zambia",dialCode:"+260",flag1x1:"/assets/flags/zm.svg"},{iso2:"ZW",name:"Zimbabwe",dialCode:"+263",flag1x1:"/assets/flags/zw.svg"}];let bi="/assets/flags";function fi(e){bi=e}function vi(e){const t="/assets/flags";if(!e)return e;if(e.startsWith(t)){return function(e=""){if(!bi||"/assets/flags"===bi){const e=window.PushWebComponents?.config;e?.flagBasePath&&fi(e.flagBasePath)}return bi.replace(/\/$/,"")+(e?`/${e.replace(/^\//,"")}`:"")}(e.slice(13).replace(/^\//,""))}return e}const yi=[qt,te` 5425 /* Main container */ 5426 .input { 5427 background-color: rgb(from var(--pu-input-color-background, hsl(0 0% 99.5%)) r g b / alpha); 5428 border: solid var(--pu-input-border-width, 0.0625em) 5429 rgb( 5430 from var(--pu-input-border-color, hsl(240, 5%, 65%)) r g b / 5431 calc(alpha * var(--pu-input-opacity-border, 1)) 5432 ); 5433 border-radius: var(--pu-input-border-radius, var(--pu-border-radius, 0.25em)); 5434 height: var(--pu-size-height); 5435 overflow: hidden; 5436 width: 100%; 5437 cursor: text; 5438 } 5439 5440 .input__wrapper { 5441 display: inline-flex; 5442 align-items: center; 5443 position: relative; 5444 width: 100%; 5445 height: 100%; 5446 } 5447 5448 .dial-code__container { 5449 flex: 0 1 auto; 5450 position: absolute; 5451 top: 0; 5452 bottom: 0; 5453 left: 0; 5454 padding: 0 0.5em; 5455 } 5456 5457 .dial-code__placeholder { 5458 font-size: var(--pu-flag-icon-font-size); 5459 } 5460 5461 .dial-code__flag { 5462 display: flex; 5463 gap: 0.25em; 5464 align-items: center; 5465 height: 100%; 5466 } 5467 5468 .dial-code__flag-image { 5469 aspect-ratio: 1 / 1; 5470 height: var(--pu-flag-icon-image-size); 5471 object-fit: contain; 5472 object-position: center; 5473 display: block; 5474 border-radius: var(--pu-border-radius-full, 9999px); 5475 } 5476 5477 .dial-code__select { 5478 position: absolute; 5479 top: 0; 5480 left: 0; 5481 opacity: 0; 5482 height: 100%; 5483 width: 100%; 5484 cursor: pointer; 5485 } 5486 5487 .input__container { 5488 flex: 1 0 auto; 5489 padding-left: 3em; 5490 } 5491 .input__container--dial-code-disabled { 5492 padding-left: 1.75em; 5493 } 5494 5495 .input:hover:not(.input--disabled) { 5496 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 5497 background-color: rgb(from var(--pu-input-color-background-hover, hsl(240, 5%, 96%)) r g b / alpha); 5498 border-color: rgb(from var(--pu-input-border-color-hover, hsl(240, 4%, 46%)) r g b / alpha); 5499 } 5500 5501 .input.input--focused:not(.input--disabled) { 5502 background-color: rgb(from var(--pu-color-focus-background) r g b / alpha); 5503 border-color: rgb(from var(--pu-color-focus-border) r g b / alpha); 5504 box-shadow: 5505 0 0 0 0.0625em rgb(from var(--pu-color-focus-background) r g b / alpha), 5506 0 0 0 0.25em rgb(from var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)) r g b / alpha); 5507 } 5508 5509 /* Input field */
5510 .input__control { 5511 appearance: none; 5512 background: inherit; 5513 color: rgb(from var(--pu-input-color-foreground, inherit) r g b / alpha); 5514 border: none; 5515 flex: 1 1 auto; 5516 font-family: inherit; 5517 font-size: var(--pu-text-size); 5518 height: calc(var(--pu-size-height, 3em) - var(--pu-input-border-width, 0.0625em) * 2); 5519 letter-spacing: var(--pu-input-font-tracking, 0.05em); 5520 padding: 0 var(--pu-space-padding); 5521 cursor: inherit; 5522 width: 100%; 5523 } 5524 5525 .input__control::placeholder { 5526 color: rgb(from var(--pu-input-placeholder-color-foreground, hsl(240, 4%, 46%)) r g b / alpha); 5527 } 5528 .input__control:hover { 5529 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 5530 } 5531 .input__control:focus { 5532 outline: none; 5533 } 5534`,te` 5535 /* State API Classes */ 5536 .input--disabled { 5537 background-color: rgb(from var(--pu-input-color-background-disabled, hsl(240, 5%, 96%)) r g b / alpha); 5538 border-color: rgb(from var(--pu-input-border-color-disabled, hsl(240, 5%, 84%), inherit) r g b / alpha); 5539 color: rgb(from var(--pu-input-color-foreground-disabled, inherit) r g b / alpha); 5540 cursor: not-allowed; 5541 opacity: 0.5; 5542 } 5543 5544 /* Size API Classes */ 5545 .input--small { 5546 --pu-text-size: var(--pu-input-font-size, var(--pu-text-body-size-xs, 0.75em)); 5547 --pu-size-height: var(--pu-input-size-height, var(--pu-space-800, 2em)); 5548 --pu-space-padding: var(--pu-input-space-inline-padding, var(--pu-space-300, 0.75em)); 5549 --pu-border-radius: var(--pu-input-border-radius, var(--pu-border-radius-050, 0.125em)); 5550 --pu-icon-font-size: var(--pu-input-icon-font-size, var(--pu-text-body-size-sm, 0.875em)); 5551 --pu-flag-icon-font-size: var(--pu-input-flag-icon-font-size, 1em); 5552 --pu-flag-icon-image-size: var(--pu-input-flag-icon-image-size, 1em); 5553 } 5554 .input--medium { 5555 --pu-text-size: var(--pu-input-font-size, var(--pu-text-body-size-sm, 0.875em)); 5556 --pu-size-height: var(--pu-space-1000, 2.5em); 5557 --pu-space-padding: var(--pu-input-space-inline-padding, var(--pu-space-400, 1em)); 5558 --pu-border-radius: var(--pu-input-border-radius, var(--pu-border-radius-100, 0.25em)); 5559 --pu-icon-font-size: var(--pu-input-icon-font-size, var(--pu-text-body-size-md, 1em)); 5560 --pu-flag-icon-font-size: var(--pu-input-flag-icon-font-size, 1.5em); 5561 --pu-flag-icon-image-size: var(--pu-input-flag-icon-image-size, 1.5em); 5562 } 5563 .input--large { 5564 --pu-text-size: var(--pu-input-font-size, var(--pu-text-body-size-md, 1em)); 5565 --pu-size-height: var(--pu-input-size-height, var(--pu-space-1200, 3em)); 5566 --pu-space-padding: var(--pu-input-space-inline-padding, var(--pu-space-500, 1.25em)); 5567 --pu-border-radius: var(--pu-input-border-radius, var(--pu-border-radius-200, 0.5em)); 5568 --pu-icon-font-size: var(--pu-input-icon-font-size, var(--pu-text-body-size-md, 1em)); 5569 --pu-flag-icon-font-size: var(--pu-input-flag-icon-font-size, 1.75em); 5570 --pu-flag-icon-image-size: var(--pu-input-flag-icon-image-size, 1.75em); 5571 } 5572`];class wi extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,{assumeInteractionOn:["pu-blur","pu-input"]}),this.autocomplete="tel",this.inputmode="tel",this.type="tel",this.size="medium",this.name="mobilephone",this.iso="ZZ",this.phoneValue="",this.form="",this.label="",this.labelHidden=!1,this.helpText="",this.placeholder="",this.pattern="",this.readonly=!1,this.required=!1,this.dialCodeDisabled=!1,this.disabled=!1,this.autofocus=!1,this.hasFocus=!1,this.hasSlotController=new Xe(this,"label","help-text"),this.formElement=null,this.handleFormData=e=>{if(!this.disabled&&this.isConnected){const t=this.getDialCode(this.iso);t&&!e.formData.has("mobilephone_country_code")&&e.formData.append("mobilephone_country_code",t)}}}get validity(){return this.input.validity}get validationMessage(){return this.input.validationMessage}get value(){return this.phoneValue}set value(e){this.phoneValue=e}firstUpdated(){this.formControlController.updateValidity(),this.updateHiddenCountryCodeInput(),this.setupFormDataHandler()}updated(e){super.updated(e),e.has("iso")&&this.updateHiddenCountryCodeInput();this.formControlController.getForm()!==this.formElement&&this.setupFormDataHandler()}disconnectedCallback(){super.disconnectedCallback(),this.cleanupFormDataHandler()}setupFormDataHandler(){const e=this.formControlController.getForm();e&&e!==this.formElement&&(this.cleanupFormDataHandler(),e.addEventListener("formdata",this.handleFormData),this.formElement=e)}cleanupFormDataHandler(){this.formElement&&(this.formElement.removeEventListener("formdata",this.handleFormData),this.formElement=null)}getCountryEntry(e){return mi.find((t=>t.iso2===e.toUpperCase()))}getDialCode(e){const t=this.getCountryEntry(e);return t?.dialCode||"+"}updateHiddenCountryCodeInput(){this.hiddenCountryCodeInput&&(this.hiddenCountryCodeInput.value=this.getDialCode(this.iso))}
5572handleBlur(){this.hasFocus=!1,this.emit("pu-blur")}handleFocus(){this.hasFocus=!0,this.emit("pu-focus")}handleInput(){this.phoneValue=this.input.value,this.formControlController.updateValidity(),this.emit("pu-input")}handleInvalid(e){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(e)}handleChange(){this.phoneValue=this.input.value,this.emit("pu-change")}handleDialCodeChange(){const e=this.dialCodeSelect.value,t=this.getDialCode(e);this.iso=e,this.updateHiddenCountryCodeInput(),this.emit("pu-change-dial-code",{detail:{iso:e,code:t}})}handleKeyDown(e){const t=e.metaKey||e.ctrlKey||e.shiftKey||e.altKey;"Enter"!==e.key||t||setTimeout((()=>{e.defaultPrevented||e.isComposing||this.formControlController.submit()}))}checkValidity(){return this.input.checkValidity()}reportValidity(){return this.input.reportValidity()}setCustomValidity(e){this.input.setCustomValidity(e),this.formControlController.updateValidity()}getForm(){return this.formControlController.getForm()}getValue(){if(this.input)return this.input.value}setValue(e){e&&(this.phoneValue=e)}renderFlag(e,t){if("ZZ"===e)return $`<span class="dial-code__placeholder">ð</span>`;if(t?.flag1x1){const e=vi(t.flag1x1);return $`<img 5573 class="dial-code__flag-image" 5574 src=${Ze(e)} 5575 alt=${`Country flag ${t.iso2}`} />`}return $`<span class="dial-code__placeholder">ð</span>`}render(){const e=this.hasSlotController.test("label"),t=this.hasSlotController.test("help-text"),o=!!this.label||!!e,i=this.labelHidden&&this.required?`* ${this.placeholder}`:this.placeholder,r=!!this.helpText||!!t,a=this.getCountryEntry(this.iso),s=this.getDialCode(this.iso);return $` 5576 <input 5577 type="hidden" 5578 name="mobilephone_country_code" 5579 .value="${s}" /> 5580 <div 5581 part="base input" 5582 class="${J({"form-control":!0,"form-control--small":"small"===this.size,"form-control--medium":"medium"===this.size,"form-control--large":"large"===this.size,"form-control--has-label":o,"form-control--hide-label":this.labelHidden,"form-control--has-help-text":r})}"> 5583 <label 5584 part="label" 5585 class="${J({"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 5586 for="input" 5587 aria-hidden=${o?"false":"true"}> 5588 <slot name="label">${this.label}</slot> 5589 </label> 5590 <div class="form-control__input"> 5591 <div 5592 part="input" 5593 class=${J({input:!0,"input--small":"small"===this.size,"input--medium":"medium"===this.size,"input--large":"large"===this.size,"input--disabled":this.disabled,"input--focused":this.hasFocus,"input--empty":!this.phoneValue,"input--has-label":o,"input--hide-label":this.labelHidden})}> 5594 <div class="input__wrapper"> 5595 <div class="dial-code__container"> 5596 <div class="dial-code__flag"> 5597 ${this.renderFlag(this.iso,a)} 5598 ${this.dialCodeDisabled?null:$` 5599 <pu-icon 5600 name="chevron-down" 5601 size="small"></pu-icon> 5602 `} 5603 </div> 5604 <select 5605 class="dial-code__select" 5606 aria-label="Phone number country" 5607 name="mobilephone_country_code" 5608 .value="${this.iso}" 5609 ?disabled="${this.disabled||this.dialCodeDisabled}" 5610 @change=${this.handleDialCodeChange}> 5611 ${mi.map((e=>$`<option value="${e.iso2}">${e.name} ${e.dialCode}</option>`))} 5612 </select> 5613 </div> 5614 <div
5615 class="${J({input__container:!0,"input__container--dial-code-disabled":this.dialCodeDisabled})}"> 5616 <input 5617 part="control" 5618 class="input__control" 5619 id="input" 5620 inputmode="${this.inputmode}" 5621 autocomplete=${Ze(this.autocomplete)} 5622 type="${this.type}" 5623 .value="${this.phoneValue}" 5624 name="${this.name||"mobilephone"}" 5625 pattern=${Ze(this.pattern||void 0)} 5626 placeholder="${i}" 5627 ?disabled="${this.disabled}" 5628 ?readonly=${this.readonly} 5629 ?required="${this.required}" 5630 ?autofocus=${this.autofocus} 5631 @change=${this.handleChange} 5632 @input=${this.handleInput} 5633 @invalid=${this.handleInvalid} 5634 @keydown=${this.handleKeyDown} 5635 @focus=${this.handleFocus} 5636 @blur=${this.handleBlur} /> 5637 </div> 5638 </div> 5639 </div> 5640 </div> 5641 <div 5642 part="help" 5643 id="help-text" 5644 class="form-control__help-text" 5645 aria-hidden=${r?"false":"true"}> 5646 <slot name="help-text">${this.helpText}</slot> 5647 </div> 5648 </div> 5649 `}}wi.styles=[Me,yi],wi.dependencies={"pu-icon":Ge},i([ke()],wi.prototype,"autocomplete",void 0),i([ke()],wi.prototype,"inputmode",void 0),i([ke()],wi.prototype,"type",void 0),i([ke({reflect:!0})],wi.prototype,"size",void 0),i([ke()],wi.prototype,"name",void 0),i([ke()],wi.prototype,"iso",void 0),i([ke()],wi.prototype,"phoneValue",void 0),i([ke({reflect:!0})],wi.prototype,"form",void 0),i([ke()],wi.prototype,"label",void 0),i([ke({type:Boolean})],wi.prototype,"labelHidden",void 0),i([ke()],wi.prototype,"helpText",void 0),i([ke()],wi.prototype,"placeholder",void 0),i([ke()],wi.prototype,"pattern",void 0),i([ke({type:Boolean})],wi.prototype,"readonly",void 0),i([ke({type:Boolean})],wi.prototype,"required",void 0),i([ke({type:Boolean})],wi.prototype,"dialCodeDisabled",void 0),i([ke({type:Boolean,reflect:!0})],wi.prototype,"disabled",void 0),i([ke({type:Boolean})],wi.prototype,"autofocus",void 0),i([Ce()],wi.prototype,"hasFocus",void 0),i([Se('input[type="tel"]')],wi.prototype,"input",void 0),i([Se("select")],wi.prototype,"dialCodeSelect",void 0),i([Se('input[name="mobilephone_country_code"]')],wi.prototype,"hiddenCountryCodeInput",void 0),wi.define("pu-phone-input");const xi=[te` 5650 /* Image container foundation */ 5651 .image-container { 5652 height: 100%; 5653 width: 100%; 5654 } 5655 5656 /* Image element foundation */ 5657 .image { 5658 display: block; 5659 height: auto; 5660 max-width: 100%; 5661 } 5662 5663 /* Placeholder foundation */ 5664 .placeholder { 5665 overflow: hidden; 5666 height: 100%; 5667 width: 100%; 5668 min-width: var(--pu-image-placeholder-size, 7em); 5669 } 5670`,kt,te` 5671 /* Value-Based Property API - Image fit behavior */ 5672 .image-fit .image { 5673 height: 100%; 5674 width: 100%; 5675 max-width: initial; 5676 } 5677 5678 .image-fit--cover .image { 5679 object-fit: cover; 5680 } 5681 5682 .image-fit--contain .image { 5683 object-fit: contain; 5684 } 5685 5686 .image-fit--adapt .image { 5687 width: auto; 5688 } 5689`];class _i extends Ue{constructor(){super(...arguments),this.alt="",this.width=100,this.height=100,this.fit="contain",this.load="lazy"}getAspectRatio(){return{default:(this.width/this.height).toString(),small:void 0}}render(){return $` 5690 <div 5691 part="base image" 5692 class="${J({"image-container":!0,"image-fit":"adapt"!==this.fit,[`image-fit--${this.fit}`]:!0}
5692)}" 5693 > 5694 ${this.src?$` 5695 <img 5696 part="image" 5697 class="image" 5698 width="${this.width}" 5699 height="${this.height}" 5700 src="${Ze(this.src)}" 5701 srcset="${Ze(this.srcSet)}" 5702 sizes="${Ze(this.sizes)}" 5703 alt="${this.alt}" 5704 loading="${this.load}" 5705 fetchpriority=${Ze(this.prefetch)} 5706 /> 5707 `:$` 5708 <div 5709 part="placeholder" 5710 class="image placeholder image--wide" 5711 > 5712 <div 5713 part="content" 5714 class="placeholder-inner" 5715 > 5716 <svg 5717 class="icon" 5718 xmlns="http://www.w3.org/2000/svg" 5719 height="1em"
5720 viewBox="0 0 576 512" 5721 fill="currentcolor" 5722 > 5723 <path 5724 d="M70.5 138.1C31 172.2 16 219.1 16 272c0 52 18.4 91.6 46.9 118.3C91.6 417.2 131.5 432 176 432h8.4c18.2 0 34.8-10.3 42.9-26.5l23.2-46.3C257.6 345 272.1 336 288 336s30.4 9 37.5 23.2l23.2 46.3c8.1 16.3 24.8 26.5 42.9 26.5H400c44.5 0 84.4-14.8 113.1-41.7C541.6 363.6 560 324 560 272c0-52.9-15-99.8-54.5-133.9C465.6 103.6 398.1 80 288 80s-177.6 23.6-217.5 58.1zM0 272C0 160 64 64 288 64s288 96 288 208s-80 176-176 176h-8.4c-24.2 0-46.4-13.7-57.2-35.4l-23.2-46.3c-4.4-8.8-13.3-14.3-23.2-14.3s-18.8 5.5-23.2 14.3l-23.2 46.3c-10.8 21.7-33 35.4-57.2 35.4H176C80 448 0 384 0 272zm160 32a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm0-112a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm304 64a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm-112 0a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z" 5725 /> 5726 </svg> 5727 </div> 5728 </div> 5729 `} 5730 </div> 5731 `}}_i.styles=[Me,xi],i([ke()],_i.prototype,"alt",void 0),i([ke()],_i.prototype,"src",void 0),i([ke()],_i.prototype,"srcSet",void 0),i([ke()],_i.prototype,"sizes",void 0),i([ke({type:Number})],_i.prototype,"width",void 0),i([ke({type:Number})],_i.prototype,"height",void 0),i([ke()],_i.prototype,"fit",void 0),i([ke({type:String})],_i.prototype,"load",void 0),i([ke()],_i.prototype,"prefetch",void 0),_i.define("pu-image"),Wo.define("pu-link");const ki=[te` 5732 :host([noWrap]) { 5733 display: block; 5734 width: 100%; 5735 } 5736 .link-group { 5737 display: flex; 5738 flex-wrap: wrap; 5739 width: 100%; 5740 } 5741 @media (min-width: 48em) { 5742 .link-group { 5743 gap: var(--pu-group-space-gap, var(--gap-x, 1em)); 5744 } 5745 } 5746 @media (max-width: 47.9975em) { 5747 .link-group { 5748 gap: var(--pu-group-space-gap, var(--gap-x-narrow, 1em)); 5749 } 5750 } 5751`,gt,bt,mt,ft,te` 5752 /* No Wrap scrollable when overflowed */ 5753 .group--no-wrap { 5754 flex-wrap: nowrap; 5755 justify-content: start; 5756 overflow-y: auto; 5757 max-width: 100%; 5758 scrollbar-color: rgb(from var(--pu-color-foreground, rgb(0, 0, 0, 0.1)) r g b / 0.1) 5759 rgb(from var(--pu-color-foreground, rgb(0, 0, 0, 0.05)) r g b / 0.05); 5760 scrollbar-width: thin; 5761 padding: 0.5em 0; 5762 } 5763 5764 .group--no-wrap ::slotted(:last-child) { 5765 margin-right: 1.5em; 5766 } 5767 5768 /* Horizontal Scrolling Behavior */ 5769 @media (hover: none) { 5770 .group--no-wrap::-webkit-scrollbar {
5771 display: none; 5772 } 5773 } 5774 @media (hover: hover) { 5775 .group--no-wrap::-webkit-scrollbar { 5776 height: 0.25em; 5777 } 5778 .group--no-wrap::-webkit-scrollbar-track { 5779 background: rgb(from var(--pu-color-foreground, rgb(0, 0, 0, 0.05)) r g b / 0.05); 5780 border-radius: 0.75em; 5781 } 5782 .group--no-wrap::-webkit-scrollbar-thumb { 5783 background: rgb(from var(--pu-color-foreground, rgb(0, 0, 0, 0.1)) r g b / 0.1); 5784 border-radius: 0.75em; 5785 } 5786 } 5787 5788 /* Boolean Property API - Stack Behavior */ 5789 @media screen and (max-width: 48em) { 5790 .group--narrow-stack:not(.group--no-wrap) { 5791 flex-direction: column; 5792 } 5793 } 5794 @media screen and (min-width: 48.06em) { 5795 .group--stack:not(.group--no-wrap) { 5796 flex-direction: column; 5797 } 5798 } 5799`];class Ci extends Ue{constructor(){super(...arguments),this.noWrap=!1,this.stack=!1,this.stackNarrow=!1,this.isStackedNarrow=()=>this.stackNarrow?"flex-narrow-align--"+this.justifyNarrow:this.justifyNarrow?"flex-narrow-justify--"+this.justifyNarrow:"flex-narrow-justify--"+this.justify}styles(){let e={};return this.spacing&&(e={...e,"--gap-x":parseInt(this.spacing)/16+"em"}),this.spacingNarrow?e={...e,"--gap-x-narrow":parseInt(this.spacingNarrow)/16+"em"}:this.spacing&&(e={...e,"--gap-x-narrow":parseInt(this.spacing)/16+"em"}),e}render(){const e=this.stack?`flex-align--${this.justify}`:`flex-justify--${this.justify}`,t=this.isStackedNarrow();return $` 5800 <div 5801 part="base link-group" 5802 class="${J({"link-group":!0,"group--no-wrap":this.noWrap,"group--stack":this.stack,"group--narrow-stack":this.stackNarrow,[`${e}`]:!0,[`${t}`]:t})}" 5803 style="${He(this.styles())}" 5804 > 5805 <slot></slot> 5806 </div> 5807 `}}Ci.styles=[Me,ki],i([ke()],Ci.prototype,"spacing",void 0),i([ke()],Ci.prototype,"spacingNarrow",void 0),i([ke()],Ci.prototype,"justify",void 0),i([ke()],Ci.prototype,"justifyNarrow",void 0),i([ke({type:Boolean})],Ci.prototype,"noWrap",void 0),i([ke({type:Boolean})],Ci.prototype,"stack",void 0),i([ke({type:Boolean})],Ci.prototype,"stackNarrow",void 0),Ci.define("pu-link-group");const $i=[te` 5808 :host { 5809 display: block; 5810 } 5811 .placeholder { 5812 display: block; 5813 height: 100%; 5814 width: 100%; 5815 color: var(--pu-skeleton-color-background, 230, 230, 230); 5816 } 5817 @supports (color: rgb(from white r g b)) { 5818 .placeholder { 5819 color: rgb(from var(--pu-skeleton-color-background, rgb(230, 230, 230)) r g b / alpha); 5820 } 5821 } 5822 .logo:not(.logo--show-title) { 5823 font-size: 16px; /* base font size for logo, prevents em scaling issues */ 5824 } 5825 .logo { 5826 display: flex; 5827 align-items: center; 5828 color: inherit; 5829 margin: 0; 5830 height: var(--pu-logo-size-height); 5831 line-height: 1; 5832 } 5833 .logo a { 5834 display: block; 5835 color: inherit; 5836 text-decoration: none; 5837 height: 100%; 5838 } 5839 .logo-title:not(.visually-hidden) { 5840 display: inline-block; 5841 font-family: var( 5842 --pu-logo-font-family, 5843 var(--pu-text-heading-family, 'Roboto Serif', Times, 'Times New Roman', Georgia, serif) 5844 ); 5845 font-size: var(--pu-logo-font-size, 1.75em); 5846 } 5847 5848 @media only screen and (max-width: 48em) { 5849 .logo { 5850 height: var(--pu-logo-size-height-narrow, calc(var(--pu-logo-size-height, 5em) / 1.25)); 5851 } 5852 } 5853`,te` 5854 /* Show Title API Classes */ 5855 .logo--show-title { 5856 line-height: inherit; 5857 } 5858 .logo--show-title .logo__image { 5859 display: none; 5860 } 5861 .logo--show-title a { 5862 height: auto; 5863 } 5864 .visually-hidden { 5865 position: absolute !important; 5866 overflow: hidden; 5867 width: 1px; 5868 height: 1px; 5869 margin: -1px; 5870 padding: 0; 5871 border: 0; 5872 clip: rect(0 0 0 0); 5873 word-wrap: normal !important; 5874 } 5875`];class Si extends Ue{constructor(){super(...arguments),this.url="/",this.height=80,this.title="Logo Title",this.alt="",this.titleVisible=!1,this.imgWidth=80,this.imgHeight=80,this.deprecatedPropertyMap=[{old:"showTitle",new:"titleVisible",defaultValue:!1},{old:"imgSrc",new:"src",defaultValue:void 0},{old:"imgSrcSet",new:"srcSet",defaultValue:void 0},{old:"imgSizes",new:"sizes",defaultValue:void 0}]}get showTitle(){return this.titleVisible}set showTitle(e){this._handleDeprecated("showTitle",e)}get imgSrc(){return this.src}set imgSrc(e){this._handleDeprecated("imgSrc",e)}get imgSrcSet(){return this.srcSet}set imgSrcSet(e){this._handleDeprecated("imgSrcSet",e)}get imgSizes(){return this.sizes}set imgSizes(e){this._handleDeprecated("imgSizes",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}render(){return $` 5876 <h1 5877 part="logo" 5878 class="${J({logo:!0,"logo--show-title":this.titleVisible})}" 5879 style="${He({"--pu-logo-size-height":this.height/16+"em"})}" 5880 > 5881 <a href="${this.url}">
5882 ${this.src?$` <pu-image 5883 part="image" 5884 exportparts="base,image,placeholder,content" 5885 class="logo__image" 5886 size="contain" 5887 alt="${this.alt}" 5888 src="${Ze(this.src)}" 5889 width=${this.imgWidth} 5890 height=${this.imgHeight} 5891 srcSet="${Ze(this.srcSet)}" 5892 sizes="${Ze(this.sizes)}" 5893 lazy="lazy" 5894 > 5895 </pu-image>`:$` 5896 <svg 5897 class="logo__image placeholder" 5898 xmlns="http://www.w3.org/2000/svg" 5899 viewBox="0 0 512 512" 5900 role="presentation" 5901 aria-hidden="true" 5902 focusable="false" 5903 fill="currentColor" 5904 > 5905 <path 5906 d="M469.33,512H42.67A42.79,42.79,0,0,1,0,469.33V42.67A42.79,42.79,0,0,1,42.67,0H469.33A42.79,42.79,0,0,1,512,42.67V469.33A42.79,42.79,0,0,1,469.33,512Z" 5907 /> 5908 </svg> 5909 `} 5910 <span 5911 class="${J({"logo-title":!0,"visually-hidden":!this.titleVisible})}" 5912 > 5913 ${this.title} 5914 </span> 5915 </a> 5916 </h1> 5917 `}}Si.styles=[Me,$i],Si.dependencies={"pu-image":_i},i([ke()],Si.prototype,"url",void 0),i([ke({type:Number})],Si.prototype,"height",void 0),i([ke()],Si.prototype,"title",void 0),i([ke()],Si.prototype,"alt",void 0),i([ke({type:Boolean})],Si.prototype,"titleVisible",void 0),i([ke()],Si.prototype,"src",void 0),i([ke()],Si.prototype,"srcSet",void 0),i([ke()],Si.prototype,"sizes",void 0),i([ke({type:Number})],Si.prototype,"imgWidth",void 0),i([ke({type:Number})],Si.prototype,"imgHeight",void 0),i([ke({type:Boolean})],Si.prototype,"showTitle",null),i([ke()],Si.prototype,"imgSrc",null),i([ke()],Si.prototype,"imgSrcSet",null),i([ke()],Si.prototype,"imgSizes",null),Si.define("pu-logo");class zi{constructor(e){this.listeners=new Map,this.target=e}addEventListener(e,t,o){const i=this.listeners.get(e)||new Set;return this.listeners.set(e,i),i.add(t),this.target.addEventListener(e,t,o),()=>{this.removeEventListener(e,t,o)}}removeEventListener(e,t,o){const i=this.listeners.get(e);i&&(i.delete(t),0===i.size&&this.listeners.delete(e)),this.target.removeEventListener(e,t,o)}dispatchCustomEvent(e,t,o){this.target.dispatchEvent(new CustomEvent(e,{detail:t,...o}))}}class Ai extends Ue{constructor(){super(...arguments),this.mediaId=""}render(){return $` 5918 <div part="base media-gallery"> 5919 <slot></slot> 5920 </div> 5921 `}}i([ke()],Ai.prototype,"mediaId",void 0);const Pi=[te` 5922 .media-main { 5923 padding-bottom: var(--pu-grid-gap-y, var(--pu-space-400, 1em)); 5924 } 5925 .media-stack { 5926 border: 0.0625em solid rgb(0, 0, 0, 0.1); 5927 position: relative; 5928 } 5929 .media-stack ::slotted(*) { 5930 visibility: hidden; 5931 position: absolute; 5932 top: 0; 5933 left: 0; 5934 width: 100%; 5935 height: 100%; 5936 z-index: 1; 5937 } 5938`,te` 5939 /* Active State API Classes */ 5940 .media-stack ::slotted(*[active]) { 5941 visibility: visible; 5942 position: relative; 5943 z-index: 10; 5944 } 5945`];class Ni extends Ue{constructor(){super(),this.mediaEventManager=new zi(this),this._customEventsHandler=e=>{"active-media"===e.type&&this._updateActiveMedia(e.detail.mediaId)},this.mediaEventManager.addEventListener("active-media",this._customEventsHandler)}_updateActiveMedia(e){e&&this._mediaItems.forEach((t=>{t.hasAttribute("active")&&t.removeAttribute("active"),e===t.getAttribute("mediaId")&&t.setAttribute("active","")}))}render(){return $` 5946 <div 5947 part="base media-gallery" 5948 class="media-gallery" 5949 > 5950 <div 5951 part="main" 5952 class="media-main" 5953 > 5954 <div 5955 part="media" 5956 class="media-stack" 5957 > 5958 <slot name="media"></slot> 5959 </div> 5960 </div> 5961 <div 5962 part="thumbnails"
5963 class="media-thumbnails" 5964 > 5965 <slot name="thumbnail-slider"></slot> 5966 </div> 5967 </div> 5968 `}}Ni.styles=[Me,Pi],Ni.dependencies={"pu-media":Ai},i([Ae({slot:"media",selector:"pu-media"})],Ni.prototype,"_mediaItems",void 0),i([Ae({slot:"thumbnail-slider",selector:"pu-thumbnail-slider"})],Ni.prototype,"_slideItems",void 0),Ni.define("pu-media-gallery"),Oo.define("pu-media-modal");const Ei=[te` 5969 :host { 5970 display: block; 5971 width: 100%; 5972 } 5973 5974 .media-text { 5975 color: rgb(from var(--pu-media-text-color-foreground, var(--pu-color-foreground)) r g b); 5976 background-image: var(--pu-media-text-color-gradient); 5977 background-color: rgb(from var(--pu-media-text-color-background) r g b / alpha); 5978 border-radius: var(--pu-media-text-border-radius, 0); 5979 border: solid var(--pu-media-text-border-width, 0) rgb(from var(--pu-media-text-border-color) r g b / alpha); 5980 padding: var(--pu-media-text-space-padding, 0); 5981 overflow: hidden; 5982 } 5983 5984 .media-text ::part(content) { 5985 background-color: transparent; 5986 } 5987 5988 .media-text, 5989 .media-text__media { 5990 position: relative; 5991 } 5992 5993 .media-text__media { 5994 padding: var(--pu-media-space-padding); 5995 align-content: center; 5996 } 5997 5998 .media-text__media ::slotted(*) { 5999 display: block; 6000 border-radius: var(--pu-media-border-radius); 6001 overflow: hidden; 6002 } 6003 6004 .media-text__content { 6005 --pu-color-foreground: var(--pu-card-content-color-foreground, var(--pu-media-text-color-foreground)); 6006 --pu-color-background: var(--pu-card-content-color-background, var(--pu-media-text-color-background)); 6007 --pu-space-padding: var(--pu-card-content-space-padding); 6008 --pu-space-padding-narrow: var(--pu-card-content-space-padding-narrow, var(--pu-card-content-space-padding)); 6009 background-color: var(--pu-card-content-color-background, var(--pu-media-text-color-background)); 6010 color: var(--pu-card-content-color-foreground, var(--pu-media-text-color-foreground)); 6011 display: flex; 6012 width: auto; 6013 } 6014 6015 @media screen and (min-width: 48.06em) { 6016 .media-text__grid { 6017 display: grid; 6018 grid-template-columns: repeat(12, [start] 1fr); 6019 } 6020 } 6021 6022 @media screen and (max-width: 48.06em) { 6023 .media-text, 6024 .media-text__grid { 6025 height: 100%; 6026 } 6027 .media-text__grid { 6028 display: flex; 6029 flex-direction: column; 6030 justify-content: stretch; 6031 } 6032 .media-text__grid > .media-text__content { 6033 display: flex; 6034 flex: 1 0 auto; 6035 } 6036 6037 .media-text__media { 6038 padding: var(--pu-media-space-padding-narrow, var(--pu-media-space-padding)); 6039 } 6040 } 6041`,dt,te` 6042 .media-cover .media-text__media ::slotted(*) { 6043 height: 100%; 6044 width: 100%; 6045 } 6046 6047 .media-text__grid.media-height { 6048 overflow: hidden; 6049 } 6050 6051 @media screen and (max-width: 48.06em) { 6052 .media-text__grid.media-height { 6053 display: flex; 6054 flex-direction: column; 6055 justify-content: stretch; 6056 } 6057 .media-text__grid.media-height > .media-text__content { 6058 display: flex; 6059 flex: 1 0 auto; 6060 } 6061 } 6062 6063 @media screen and (min-width: 48.06em) { 6064 .media-text__grid.media-height { 6065 display: flex; 6066 } 6067 .media-text__grid.media-height .media-text__media { 6068 flex: 1 1 40%; 6069 } 6070 .media-text__grid.media-height .media-text__content { 6071 flex: 1 1 60%; 6072 } 6073 } 6074 6075 /* Only apply fixed heights on desktop - mobile should flow naturally */ 6076 @media screen and (min-width: 48.06em) { 6077 .media-text__grid.media-height--xsmall, 6078 .media-text__grid.media-height--small, 6079 .media-text__grid.media-height--medium, 6080 .media-text__grid.media-height--large, 6081 .media-text__grid.media-height--xlarge, 6082 .media-text__grid.media-height--2xlarge { 6083 height: var(--pu-banner-media-size-height); 6084 } 6085 } 6086 6087 @media screen and (max-width: 48.06em) { 6088 .media-text__grid.media-right div:first-child { 6089 order: 1; 6090 } 6091 .media-text__grid.media-right div:last-child { 6092 order: 2; 6093 } 6094 } 6095
6096 /* Desktop: apply media-right positioning */ 6097 @media screen and (min-width: 48.06em) { 6098 .media-text__grid.media-right div:first-child { 6099 order: 2; 6100 } 6101 .media-text__grid.media-right div:last-child { 6102 order: 1; 6103 } 6104 .media-right .media-text__container { 6105 flex-direction: row-reverse; 6106 } 6107 } 6108 6109 @media screen and (min-width: 48.06em) { 6110 .media-text__grid--fill .media-text__media { 6111 grid-column: start / span 12; 6112 } 6113 .media-text__grid--2xlarge .media-text__media { 6114 grid-column: start / span 8; 6115 } 6116 .media-text__grid--xlarge .media-text__media { 6117 grid-column: start / span 7; 6118 } 6119 .media-text__grid--large .media-text__media { 6120 grid-column: start / span 6; 6121 } 6122 .media-text__grid--medium .media-text__media { 6123 grid-column: start / span 5; 6124 } 6125 .media-text__grid--small .media-text__media { 6126 grid-column: start / span 4; 6127 } 6128 .media-text__grid--xsmall .media-text__media { 6129 grid-column: start / span 3; 6130 } 6131 6132 .media-text__grid--2xlarge.media-right .media-text__media { 6133 grid-column: span 7; 6134 } 6135 .media-text__grid--xlarge.media-right .media-text__media { 6136 grid-column: span 7; 6137 } 6138 .media-text__grid--large.media-right .media-text__media { 6139 grid-column: span 6; 6140 } 6141 .media-text__grid--medium.media-right .media-text__media { 6142 grid-column: span 5; 6143 } 6144 .media-text__grid--small.media-right .media-text__media { 6145 grid-column: span 4; 6146 } 6147 .media-text__grid--xsmall.media-right .media-text__media { 6148 grid-column: span 3; 6149 } 6150 6151 .media-text__grid--fill .media-text__content { 6152 grid-column: span 12; 6153 } 6154 .media-text__grid--2xlarge .media-text__content { 6155 grid-column: span 4; 6156 } 6157 .media-text__grid--xlarge .media-text__content { 6158 grid-column: span 5; 6159 } 6160 .media-text__grid--large .media-text__content { 6161 grid-column: span 6; 6162 } 6163 .media-text__grid--medium .media-text__content { 6164 grid-column: span 7; 6165 } 6166 .media-text__grid--small .media-text__content { 6167 grid-column: span 8; 6168 } 6169 .media-text__grid--xsmall .media-text__content { 6170 grid-column: span 9; 6171 } 6172 6173 .media-text__grid--2xlarge.media-right .media-text__content { 6174 grid-column: start / span 4; 6175 } 6176 .media-text__grid--xlarge.media-right .media-text__content { 6177 grid-column: start / span 5; 6178 } 6179 .media-text__grid--large.media-right .media-text__content { 6180 grid-column: start / span 6; 6181 } 6182 .media-text__grid--medium.media-right .media-text__content { 6183 grid-column: start / span 7; 6184 } 6185 .media-text__grid--small.media-right .media-text__content { 6186 grid-column: start / span 8; 6187 } 6188 .media-text__grid--xsmall.media-right .media-text__content { 6189 grid-column: start / span 9; 6190 } 6191 } 6192`];class Bi extends Ue{constructor(){super(...arguments),this.hasSlotController=new Xe(this,"media","content"),this.sizeMode="width",this.mediaHeight="adapt",this.mediaWidth="medium",this.mediaCover=!1,this.mediaOnRight=!1,this.align="center",this.alignNarrow="center",this.justify="center",this.justifyNarrow="center",this.adaptivePadding=!1}render(){const e=this.hasSlotController.test("media"),t=this.hasSlotController.test("content");return $` 6193 <div 6194 part="base media-text" 6195 class="media-text" 6196 > 6197 <div 6198 part="grid" 6199 class="${J({"media-text__grid":!0,"media-height":"height"===this.sizeMode,"media-right":this.mediaOnRight,[`media-text__grid--${this.mediaWidth}`]:e&&"width"===this.sizeMode,"media-text__grid--fill":!e&&"width"===this.sizeMode,[`media-height--${this.mediaHeight}`]:"height"===this.sizeMode,"media-cover":this.mediaCover})}" 6200 style="${He({"--pu-media-space-padding":this.mediaPadding?parseInt(this.mediaPadding)/16+"em":void 0,"--pu-media-space-padding-narrow":this.mediaPaddingNarrow?parseInt(this.mediaPaddingNarrow)/16+"em":void 0})}" 6201 > 6202 ${e?$` 6203 <div 6204 part="media" 6205 class="media-text__media" 6206 > 6207 <slot name="media"></slot> 6208 </div> 6209 `:z} 6210 ${t?$` 6211 <div 6212 part="content" 6213 class="media-text__content" 6214 style="${He({"--pu-space-padding":this.contentPadding?parseInt(this.contentPadding)/16+"em":void 0,"--pu-space-padding-narrow":this.contentPaddingNarrow?parseInt(this.contentPaddingNarrow)/16+"em":void 0})}" 6215 > 6216 <pu-box 6217 part="container" 6218 exportparts="base:caption,content:caption-content" 6219 class="media-text__content-inner" 6220 ?adaptivePadding=${this.adaptivePadding} 6221 width="fill" 6222 > 6223 <pu-vertical-stack 6224 part="layout" 6225 exportparts="base:vertical-layout" 6226 class="${J({"media-text__content-stack":!0})}" 6227 spacing=${Ze(this.spacing)} 6228 spacingNarrow=${Ze(this.spacingNarrow)} 6229 justify="${this.align}" 6230 align="${this.justify}" 6231 justifyNarrow="${this.alignNarrow}" 6232 alignNarrow="${this.justifyNarrow}" 6233 > 6234 <slot name="content"></slot> 6235 </pu-vertical-stack> 6236 </pu-box> 6237 </div> 6238 `:z} 6239 </div> 6240 </div> 6241 `}}Bi.styles=[Me,Ei],Bi.dependencies={"pu-box":ht,"pu-vertical-stack":xt},i([ke()],Bi.prototype,"sizeMode",void 0),i([ke()],Bi.prototype,"mediaHeight",void 0),i([ke()],Bi.prototype,"mediaWidth",void 0),i([ke({type:Boolean})],Bi.prototype,"mediaCover",void 0),i([ke({type:Boolean})],Bi.prototype,"mediaOnRight",void 0),i([ke()],Bi.prototype,"align",void 0),i([ke()],Bi.prototype,"alignNarrow",void 0),i([ke()],Bi.prototype,"justify",void 0),i([ke()],Bi.prototype,"justifyNarrow",void 0),i([ke()],Bi.prototype,"spacing",void 0),i([ke()],Bi.prototype,"spacingNarrow",void 0),i([ke({type:Boolean})],Bi.prototype,"adaptivePadding",void 0),i([ke()],Bi.prototype,"mediaPadding",void 0),i([ke()],Bi.prototype,"mediaPaddingNarrow",void 0),i([ke()],Bi.prototype,"contentPadding",void 0),i([ke()],Bi.prototype,"contentPaddingNarrow",void 0),Bi.define("pu-media-text");const Ti=[te` 6242 .modal { 6243 pointer-events: all; 6244 display: none; 6245 justify-content: center; 6246 align-items: center; 6247 position: fixed; 6248 inset: 0; 6249 padding: var(--pu-space-600, 1.5em); 6250 margin: 0; 6251 height: 100%; 6252 width: 100%; 6253 max-width: 100%; 6254 max-height: 100%; 6255 box-sizing: border-box; 6256 z-index: 500; 6257 overflow-y: auto; 6258 border: none !important; 6259 background-color: rgb( 6260 from var(--pu-modal-color-background, var(--pu-color-background, rgb(255, 255, 255))) r g b / 6261 calc(alpha * var(--pu-modal-opacity-background, 1)) 6262 ); 6263 scrollbar-width: thin; 6264 scrollbar-color: var(--pu-scrollbar-thumb-color, #888) var(--pu-scrollbar-track-color, #f1f1f1); 6265 } 6266 6267 @media (max-width: 47.9975em) { 6268 .modal { 6269 padding: 0; 6270 } 6271 } 6272 6273 .modal[open] { 6274 display: flex; 6275 pointer-events: auto; 6276 } 6277 6278 .modal__inner { 6279 pointer-events: all; 6280 } 6281 6282 .modal__inner::-webkit-scrollbar {
6283 width: 8px; 6284 } 6285 6286 .modal__inner::-webkit-scrollbar-track { 6287 background: var(--pu-scrollbar-track-color, #f1f1f1); 6288 } 6289 6290 .modal__inner::-webkit-scrollbar-thumb { 6291 background: var(--pu-scrollbar-thumb-color, #888); 6292 border-radius: 4px; 6293 } 6294 6295 .modal__inner::-webkit-scrollbar-thumb:hover { 6296 background: var(--pu-scrollbar-thumb-color-hover, #555); 6297 } 6298 6299 .close-button__container { 6300 position: fixed; 6301 top: var(--pu-space-200, 0.5em); 6302 right: var(--pu-space-200, 0.5em); 6303 z-index: 10; 6304 cursor: pointer; 6305 } 6306 6307 .close-button__container > ::slotted(*) { 6308 pointer-events: auto; 6309 } 6310 6311 .close-button__container * { 6312 pointer-events: none; 6313 } 6314`,te` 6315 /** Alignment API - based on content overflow detection */ 6316 .modal--align-top { 6317 align-items: flex-start; 6318 } 6319`];class Ii extends Ue{constructor(){super(),this.id="",this.alignTop=!1,this._hasCloseButtonSlot=new Xe(this,"close-button"),this.originalBodyOverflow="",this.lastActiveElement=null,this.checkModalAlignment=()=>{if(this.modalElement){const e=this.modalElement.scrollHeight>this.modalElement.clientHeight;this.alignTop!==e&&(this.alignTop=e)}},this.show=()=>{this.openModal()},this.hide=()=>{this.closeModal()},this.debouncedCheckAlignment=ti((()=>{this.checkModalAlignment()}),50)}connectedCallback(){super.connectedCallback(),window.addEventListener("overlay-open",this.show),window.addEventListener("overlay-close",this.hide)}firstUpdated(e){super.firstUpdated(e),this.modalElement&&this.debouncedCheckAlignment&&(this.resizeObserver=new ResizeObserver(this.debouncedCheckAlignment),this.resizeObserver.observe(this.modalElement),window.addEventListener("resize",this.debouncedCheckAlignment))}disconnectedCallback(){this.modalElement?.open&&(this.modalElement.close(),document.body.style.overflow=this.originalBodyOverflow),window.removeEventListener("overlay-open",this.show),window.removeEventListener("overlay-close",this.hide),this.resizeObserver&&(this.modalElement&&this.resizeObserver.unobserve(this.modalElement),this.resizeObserver.disconnect(),this.resizeObserver=void 0),this.debouncedCheckAlignment&&window.removeEventListener("resize",this.debouncedCheckAlignment),super.disconnectedCallback()}async openModal(){this.modalElement&&!this.modalElement.open&&(this.lastActiveElement=document.activeElement,this.originalBodyOverflow=document.body.style.overflow,document.body.style.overflow="hidden",this.modalElement.style.visibility="hidden",this.modalElement.showModal(),this.checkModalAlignment(),await this.updateComplete,this.modalElement.style.visibility="visible",this.emit("pu-show"))}closeModal(){this.modalElement&&this.modalElement.open&&(this.modalElement.close(),document.body.style.overflow=this.originalBodyOverflow,this.lastActiveElement?.focus(),this.emit("pu-hide"))}handleKeyDown(e){"Escape"===e.key&&this.closeModal()}modalClasses(){const e={};return this.alignTop&&(e["modal--align-top"]=!0),e}render(){const e=this.modalClasses();return $` 6320 <dialog 6321 part="base modal" 6322 class="modal ${J(e)}" 6323 id=${this.id} 6324 aria-label=${this.label||z} 6325 @keydown="${this.handleKeyDown}"> 6326 ${this._hasCloseButtonSlot.test("close-button")?$` 6327 <div 6328 part="close" 6329 class="close-button__container" 6330 @click="${this.closeModal}"> 6331 <slot name="close-button"></slot> 6332 </div> 6333 `:null} 6334 <div 6335 part="content" 6336 class="modal__inner"> 6337 <slot name="content"></slot> 6338 </div> 6339 </dialog> 6340 `}}Ii.styles=[Me,Ti],i([ke()],Ii.prototype,"id",void 0),i([ke()],Ii.prototype,"label",void 0),i([Ce()],Ii.prototype,"alignTop",void 0),i([Se(".modal")],Ii.prototype,"modalElement",void 0),Ii.define("pu-modal");const Mi=[te` 6341 /* Display in narrow view only */ 6342 :host { 6343 display: block; 6344 } 6345 6346 .menu { 6347 display: flex; 6348 gap: var(--pu-space-200, 0.5em); 6349 align-items: center; 6350 font-family: var(--pu-menu-font-family, inherit); 6351 font-size: var(--pu-menu-font-size, inherit); 6352 letter-spacing: 0.05em; 6353 list-style: none; 6354 line-height: 1; 6355 margin: 0; 6356 padding: 0; 6357 color: rgb(from var(--pu-color-foreground, rgb(0, 0, 0)) r g b); 6358 --pu-disclosure-summary-space-padding: 0; 6359 --pu-disclosure-details-space-padding: 0; 6360 } 6361 6362 .menu__title {
6363 font-weight: var(--pu-menu-font-weight, 700); 6364 text-transform: uppercase; 6365 width: 100%; 6366 border-bottom-width: 0.0625em; 6367 border-bottom-style: solid; 6368 border-bottom-color: rgb( 6369 from var(--pu-disclosure-details-color-foreground, var(--pu-color-foreground, rgb(0, 0, 0, 0.8))) r g b / 6370 calc(alpha * var(--pu-opacity-border, 0.8)) 6371 ); 6372 padding-bottom: var(--pu-space-300, 0.75em); 6373 } 6374 6375 .menu > li > * { 6376 display: inline-block; 6377 padding: 0 var(--pu-space-300, 0.75em); 6378 } 6379 .menu__link { 6380 color: inherit; 6381 text-decoration: none; 6382 transition: all var(--pu-transition-duration-500, 0.5s) ease; 6383 } 6384 .menu__link:hover, 6385 .menu__link.active, 6386 .summary.active { 6387 text-decoration: underline; 6388 text-underline-offset: 0.3em; 6389 } 6390 .menu__link.active, 6391 .summary.active { 6392 text-decoration-thickness: 0.125em; 6393 } 6394 6395 /* Menu disclosure */ 6396 .menu-disclosure { 6397 position: initial; 6398 --pu-color-border: transparent; 6399 } 6400 6401 .menu-disclosure::part(drawer) { 6402 top: var(--pu-header-size-height-inner, 0); 6403 } 6404 6405 /* Menus */ 6406 .menu__container.menu-list--vertical .submenu__list { 6407 flex-direction: column; 6408 gap: var(--pu-space-100, 0.25em); 6409 } 6410 .menu__list { 6411 font-family: var(--pu-menu-font-family, inherit); 6412 font-size: var(--pu-menu-font-size, inherit); 6413 list-style: none; 6414 padding: var(--pu-space-800, 2em) var(--pu-space-1200, 3em); 6415 } 6416 6417 /* Submenus */ 6418 .submenu { 6419 display: flex; 6420 flex-direction: column; 6421 gap: var(--pu-space-300, 0.75em); 6422 font-size: var(--pu-text-body-size-sm, 0.75em); 6423 } 6424 .submenu__title { 6425 font-size: var(--pu-text-body-size-xs, 0.75em); 6426 font-weight: var(--pu-font-weight-300, 300); 6427 padding-right: var(--pu-space-200, 0.5em); 6428 text-transform: uppercase; 6429 } 6430 .submenu__list { 6431 display: flex; 6432 gap: var(--pu-space-300, 0.75em); 6433 list-style: none; 6434 padding: 0; 6435 } 6436 .submenu__link { 6437 display: block; 6438 color: inherit; 6439 padding: var(--pu-space-100, 0.25em) var(--pu-space-200, 0.5em); 6440 padding-left: 0; 6441 text-decoration: none; 6442 transition: all var(--pu-transition-duration-500, 0.5s) ease; 6443 } 6444 .submenu__link:hover { 6445 text-decoration: underline; 6446 text-underline-offset: 0.3em; 6447 } 6448`,te` 6449 /* Layout API - Extended */ 6450 .menu-list--extended .menu__list { 6451 display: flex; 6452 flex-wrap: wrap; 6453 column-gap: var(--pu-space-800, 2em); 6454 row-gap: var(--pu-space-500, 1.25em); 6455 margin: 0 auto; 6456 max-width: var(--pu-size-content-max-width, 75em); 6457 width: 100%; 6458 } 6459 6460 /* Layout API - Compact */ 6461 .menu.menu--compact .menu-disclosure::part(drawer) { 6462 top: 4.5em; 6463 left: unset; 6464 right: unset; 6465 border-radius: var(--pu-border-radius-200); 6466 } 6467 .menu.menu--compact .menu-disclosure::part(content) { 6468 border-width: 0.0625em; 6469 border-style: solid; 6470 border-color: var(--pu-disclosure-details-color-foreground, var(--pu-color-foreground, rgb(0, 0, 0, 0.8))); 6471 border-radius: var(--pu-border-radius-200); 6472 } 6473 @supports (color: rgb(from white r g b)) { 6474 .menu.menu--compact .menu-disclosure::part(content) { 6475 border-color: rgb( 6476 from var(--pu-disclosure-details-color-foreground, var(--pu-color-foreground, rgb(0, 0, 0, 0.8))) r g 6477 b / calc(alpha * var(--pu-opacity-border, 0.8)) 6478 ); 6479 } 6480 } 6481 6482 .menu-list--compact .menu__list { 6483 padding: var(--pu-space-600, 1.5em); 6484 } 6485 .menu-list--compact .menu__list > *:not(:last-child) { 6486 margin-bottom: var(--pu-space-600, 1.5em); 6487 } 6488 .menu-list--compact .submenu__list { 6489 flex-direction: column; 6490 gap: var(--pu-space-100, 0.25em); 6491 } 6492 .menu-list--compact .submenu__link { 6493 padding: var(--pu-space-100, 0.25em) 0; 6494 } 6495`];class ji extends Ue{get vertical(){return this.extendedColumns}set vertical(e){this._handleDeprecated("vertical",e)}get hideMenuTitle(){return this.extendedTitleHidden}set hideMenuTitle(e){this._handleDeprecated("hideMenuTitle",e)}get submenuWidth(){return this.extendedWidth}set submenuWidth(e){this._handleDeprecated("submenuWidth",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}constructor(){super(),this.layout="extended",this.extendedColumns=!1,this.extendedTitleHidden=!1,this.extendedWidth="page-width",this.deprecatedPropertyMap=[{old:"vertical",new:"extendedColumns",defaultValue:!1},{old:"hideMenuTitle",new:"extendedTitleHidden",defaultValue:!1},{old:"submenuWidth",new:"extendedWidth",defaultValue:"page-width"}],this._outsideClick=e=>{e.composedPath().includes(this)||this._closeDisclosures()},this.addEventListener("pu-disclosure:opened",this._handleMenuEvents),this.addEventListener("pu-disclosure:closed",this._handleMenuEvents)}disconnectedCallback(){window.removeEventListener("click",this._outsideClick),super.disconnectedCallback()}_handleMenuEvents(e){const t=e.detail.target;if("pu-disclosure:opened"===e.type&&this._menus&&this._menus.length&&this._menus.forEac
6495h((e=>{e!==t&&e.detailsClose()})),"pu-disclosure:opened"===e.type||"pu-disclosure:closed"===e.type){let e=!1;this._menus.forEach((t=>{t.getToggledState()&&(e=!0)})),e?(this.dispatchEvent(new CustomEvent("pu-overlay:opened",{bubbles:!0,composed:!0})),window.addEventListener("click",this._outsideClick)):(this.dispatchEvent(new CustomEvent("pu-overlay:closed",{bubbles:!0,composed:!0})),window.removeEventListener("click",this._outsideClick))}}_closeDisclosures(){this._menus&&this._menus.length&&this._menus.forEach((e=>{e.detailsClose()})),this.dispatchEvent(new CustomEvent("pu-overlay:closed",{bubbles:!0,composed:!0})),window.removeEventListener("click",this._outsideClick)}menuStyles(){let e={};return"full-width"===this.extendedWidth&&(e={...e,"--pu-size-content-max-width":"100%"}),e}menuClasses(){const e={};return"compact"===this.layout&&(e["menu--compact"]=!0),e}menuListClasses(){const e={};return this.extendedColumns&&"compact"!==this.layout&&(e["menu-list--vertical"]=!0),"extended"===this.layout&&(e["menu-list--extended"]=!0),"compact"===this.layout&&(e["menu-list--compact"]=!0),e}menuTitle(e){return"extended"!==this.layout||this.extendedTitleHidden?z:$` 6496 <li 6497 part="title" 6498 class="menu__title" 6499 > 6500 <span> ${e} </span> 6501 </li> 6502 `}menuItemClasses(e){return Array.isArray(e)&&e.length?e.join(" "):""}menuList(){if(this.data)return $` 6503 <nav> 6504 <ul 6505 part="base menu" 6506 class="menu${J(this.menuClasses())}" 6507 style="${He(this.menuStyles())}" 6508 > 6509 ${this.data.map((e=>$` 6510 <li> 6511 ${e.subItems?$` 6512 <pu-disclosure 6513 part="disclosure" 6514 exportparts="base,summary,drawer,content" 6515 class="menu-disclosure" 6516 detailsWidth=${"extended"===this.layout?"fill":"fit-content"} 6517 overlay 6518 > 6519 <span 6520 part="summary" 6521 slot="summary" 6522 class="summary ${this.activeUrl===e.linkUrl?"active":""}" 6523 > 6524 ${e.linkText} 6525 </span> 6526 <span 6527 part="icon" 6528 slot="icon" 6529 class="summary-icon" 6530 > 6531 <pu-icon 6532 part="icon" 6533 exportparts="base,svg" 6534 name="chevron-down" 6535 size="xsmall" 6536 > 6537 </pu-icon> 6538 </span> 6539 <div 6540 slot="content" 6541 part="container" 6542 class="menu__container${J(this.menuListClasses())}" 6543 > 6544 <ul 6545 part="menu" 6546 class="menu__list" 6547 > 6548 ${this.menuTitle(e.linkText)} 6549 ${e.subItems.map((e=>$` 6550 <li slot="items"> 6551 ${e.subItems?$` 6552 <div 6553 part="submenu" 6554 class="submenu" 6555 > 6556 <sp
6556an 6557 part="title" 6558 class="submenu__title" 6559 > 6560 ${e.linkText} 6561 </span> 6562 <ul 6563 part="list" 6564 class="submenu__list" 6565 > 6566 ${e.subItems.map((e=>$` 6567 <li 6568 part="item" 6569 slot="items" 6570 > 6571 <a 6572 part="link" 6573 class="submenu__link" 6574 href="${e.linkUrl}" 6575 > 6576 ${e.linkText} 6577 </a> 6578 </li> 6579 `))} 6580 </ul> 6581 </div> 6582 `:$` 6583 <a 6584 part="link" 6585 class="menu__link" 6586 href="${e.linkUrl}" 6587 > 6588 ${e.linkText} 6589 </a> 6590 `} 6591 </li> 6592 `))} 6593 </ul> 6594 </div> 6595 </pu-disclosure> 6596 `:$` 6597 <a 6598 part="link" 6599 class="menu__link ${this.activeUrl===e.linkUrl?"active":""} ${this.menuItemClasses(e.linkClasses)}" 6600 href="${e.linkUrl}" 6601 > 6602 ${e.linkText} 6603 </a> 6604 `} 6605 </li> 6606 `))} 6607 </ul> 6608 </nav> 6609 `}render(){return $` ${this.menuList()} `}}ji.styles=[Me,Mi],ji.dependencies={"pu-disclosure":Do},i([ke({type:Array})],ji.prototype,"data",void 0),i([ke()],ji.prototype,"activeUrl",void 0),i([ke()],ji.prototype,"layout",void 0),i([ke({type:Boolean})],ji.prototype,"extendedColumns",void 0),i([ke({type:Boolean})],ji.prototype,"extendedTitleHidden",void 0),i([ke()],ji.prototype,"extendedWidth",void 0),i([ke({type:Boolean})],ji.prototype,"vertical",null),i([ke({type:Boolean})],ji.prototype,"hideMenuTitle",null),i([ke()],ji.prototype,"submenuWidth",null),i([function(e){return(t,o)=>$e(t,o,{get(){return(this.renderRoot??(ze??=document.createDocumentFragment())).querySelectorAll(e)}})}("pu-disclosure")],ji.prototype,"_menus",void 0),ji.define("pu-menu");const Oi=[te` 6610 :host { 6611 display: block; 6612 margin: auto; 6613 width: 100%; 6614 color: var(--pu-color-foreground); 6615 background-color: var(--pu-color-background); 6616 } 6617 @supports (color: rgb(from white r g b)) { 6618 :host { 6619 color: rgb(from var(--pu-color-foreground) r g b); 6620 background-color: rgb(from var(--pu-color-background) r g b / alpha); 6621 } 6622 } 6623 6624 .menu-bar { 6625 display: flex; 6626 justify-content: center; 6627 position: sticky; 6628 top: 0; 6629 margin: 0 auto; 6630 max-width: var(--pu-size-viewport-max-width, 100%); 6631 width: 100%; 6632 } 6633 6634 .menu-bar__inner { 6635 max-width: var(--pu-size-content-max-width, 75em); 6636 --pu-box-color-background: transparent; 6637 } 6638 6639 ::slotted(*) { 6640 letter-spacing: 0.07em; 6641 } 6642 6643 ::slotted(pu-link:last-child) { 6644 margin-right: var(--pu-space-200, 0.5em); 6645 } 6646`,te` 6647 /* Sticky positioning API */ 6648 :host([sticky]) { 6649 position: sticky; 6650 top: 0; 6651 z-index: 499; 6652 } 6653 6654 /* Border API */ 6655 :host([border]) { 6656 border-bottom-width: 0.0625em; 6657 border-bottom-style: solid; 6658 border-bottom-color: rgb(var(--pu-color-foreground, rgb(255, 255, 255))); 6659 } 6660 @supports (color: rgb(from white r g b)) { 6661 :host([border]) { 6662 border-bottom-color: rgb(from var(--pu-color-foreground, rgb(255, 255, 255) r g b)); 6663 } 6664 } 6665`];class Li extends Ue{constructor(){super(...arguments),this.sticky=!1,this.spacing="32",this.justify="start",this.justifyNarrow="start",this.deprecatedPropertyMap=[{old:"mobileJustify",new:"justifyNarrow",defaultValue:"start"}]}get mobileJustify(){return this.justifyNarrow}set mobileJustify(e){this._handleDeprecated("mobileJustify",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}menuClasses(){const e={};return e.sticky=this.sticky,e}render(){return $` 6666 <nav 6667 part="base menu-bar" 6668 class="menu-bar${J(this.menuClasses())}" 6669 > 6670 <pu-box 6671 part="container" 6672 exportparts="base,content" 6673 class="menu-bar__inner" 6674 padding="${Ze(this.padding)}" 6675 > 6676 <pu-link-group 6677 part="layout" 6678 exportparts="base" 6679 spacing="${this.spacing}" 6680 justify="${this.justify}" 6681 justifyNarrow="${this.justifyNarrow}" 6682 noWrap 6683 > 6684 <slot name="link"></slot> 6685 </pu-link-group> 6686 </pu-box> 6687 </nav> 6688 `}}Li.styles=[Me,Oi],Li.dependencies={"pu-box":ht,"pu-link-group":Ci},i([ke({type:Boolean})],Li.prototype,"sticky",void 0),i([ke()],Li.prototype,"spacing",void 0),i([ke()],Li.prototype,"justify",void 0),i([ke()],Li.prototype,"justifyNarrow",void 0),i([ke()],Li.prototype,"padding",void 0),i([ke()],Li.prototype,"mobileJustify",null),Li.define("pu-menu
6688-bar");const Hi=[qt,te` 6689 :host([disabled]) { 6690 opacity: 0.4; 6691 pointer-events: none; 6692 } 6693 6694 :host([disabled]) .spinner:hover { 6695 background-color: transparent; 6696 } 6697 6698 /* Native input */ 6699 input { 6700 border: none; 6701 background-color: inherit; 6702 color: inherit; 6703 font-family: var(--pu-text-body-family, Roboto, Arial, Helvetica, sans-serif); 6704 font-size: var(--pu-input-font-size); 6705 padding: 0; 6706 height: calc(var(--pu-input-size-height) - var(--pu-input-border-width, 0.0625em)); 6707 -moz-appearance: textfield; 6708 outline: none; 6709 } 6710 6711 /* Custom input */ 6712 .number-input { 6713 position: relative; 6714 width: fit-content; 6715 } 6716 6717 /* Input container */ 6718 .number-input__container { 6719 position: relative; 6720 width: fit-content; 6721 -moz-appearance: textfield; 6722 } 6723 6724 .number-input:hover:not(.input--disabled) .input { 6725 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 6726 background-color: rgb(from var(--pu-input-color-background-hover, hsl(240, 5%, 96%)) r g b / alpha); 6727 border-color: rgb(from var(--pu-input-border-color-hover, hsl(240, 4%, 46%)) r g b / alpha); 6728 } 6729 6730 .number-input.input--focused:not(.input--disabled) .input { 6731 background-color: rgb(from var(--pu-color-focus-background) r g b / alpha); 6732 border-color: rgb(from var(--pu-color-focus-border) r g b / alpha); 6733 box-shadow: 6734 0 0 0 0.0625em rgb(from var(--pu-color-focus-background) r g b / alpha), 6735 0 0 0 0.25em rgb(from var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)) r g b / alpha); 6736 } 6737 6738 /** Input spinner browser override styles */ 6739 :host(:not([disabled])) .number-input--min .spinner.decrease::part(button-icon) { 6740 cursor: default; 6741 pointer-events: none; 6742 } 6743 :host(:not([disabled])) .number-input--max .spinner.increase::part(button-icon) { 6744 pointer-events: none; 6745 cursor: default; 6746 } 6747 input::-webkit-outer-spin-button { 6748 appearance: none; 6749 } 6750 input::-webkit-inner-spin-button { 6751 appearance: none; 6752 } 6753 6754 /** Custom spinner styles */ 6755 .spinner { 6756 position: absolute; 6757 --pu-icon-space-padding: 0; 6758 } 6759 .spinner::part(button-icon) { 6760 padding: 0.125em; 6761 } 6762`,te` 6763 /* Layout API - Inline layout */ 6764 .input--inline .field__inner { 6765 flex-direction: row; 6766 } 6767 6768 /* Size API - Size variations */ 6769 .input--small { 6770 --pu-input-font-size: var(--pu-text-body-size-sm, 0.875em); 6771 --pu-input-label-font-size: var(--pu-text-body-size-sm, 0.875em); 6772 --pu-input-size-height: var(--pu-space-800, 2em); 6773 --pu-input-size-width: 3em; 6774 --pu-input-space-padding: var(--pu-space-300, 0.75em); 6775 --pu-border-input-size-corner-radius: var(--pu-border-radius-050, 0.125em); 6776 --pu-icon-font-size: var(--pu-text-body-size-sm, 0.5em); 6777 } 6778 .input--medium { 6779 background: linear-gradient(to right 30%, red, blue); 6780 --pu-input-font-size: var(--pu-text-body-size-md, 1em); 6781 --pu-input-label-font-size: var(--pu-text-body-size-md, 1em); 6782 --pu-input-size-height: var(--pu-space-1000, 2.5em); 6783 --pu-input-size-width: 4em; 6784 --pu-input-space-padding: var(--pu-space-400, 1em); 6785 --pu-border-input-size-corner-radius: var(--pu-border-radius-100, 0.25em); 6786 --pu-icon-font-size: var(--pu-text-body-size-md, 0.75em); 6787 } 6788 .input--large { 6789 --pu-input-font-size: var(--pu-text-body-size-md, 1em); 6790 --pu-input-label-font-size: var(--pu-text-body-size-md, 1em); 6791 --pu-input-size-height: var(--pu-space-1200, 3em); 6792 --pu-input-size-width: var(--pu-space-2000, 5em); 6793 --pu-input-space-padding: var(--pu-space-600, 1.5em); 6794 --pu-border-input-size-corner-radius: var(--pu-border-radius-200, 0.5em); 6795 --pu-icon-font-size: var(--pu-text-body-size-md, 1em); 6796 } 6797 6798 /* Spinner Type API - Hidden/arrows spinner */ 6799 .input--spinner-hidden .number-input__container, 6800 .input--arrows .number-input__container { 6801 overflow: hidden; 6802 border-radius: var(--pu-border-input-size-corner-radius, 0); 6803 border: solid var(--pu-input-border-width, 0.0625em) var(--pu-input-border-color, hsl(240, 5%, 65%)); 6804 border-color: rgb( 6805 from var(--pu-input-border-color, hsl(240, 5%, 65%)) r g b / 6806 calc(alpha * var(--pu-input-opacity-border, 1)) 6807 ); 6808 } 6809 .input--spinner-hidden input { 6810 padding-left: calc(var(--pu-input-space-padding) * 0.5); 6811 padding-right: calc(var(--pu-input-space-padding) * 0.5); 6812 text-align: center; 6813 width: var(--pu-input-number-size-width, var(--pu-input-size-width)); 6814 } 6815 .input--arrows input { 6816 padding-left: calc(var(--pu-input-space-padding) * 0.5); 6817 padding-right: var(--pu-input-space-padding); 6818 width: var(--pu-input-number-size-width, var(--pu-input-size-width)); 6819 } 6820 .input--arrows .spinner.increase { 6821 --pu-slider-icon-border-radius: 0 var(--pu-border-input-size-corner-radius, 0) 0 0; 6822 top: 0.25em; 6823 right: 0.25em; 6824 } 6825 .input--arrows .spinner.decrease { 6826 --pu-slider-icon-border-radius: 0 0 var(--pu-border-input-size-corner-radius, 0) 0; 6827 bottom: 0.25em; 6828 right: 0.25em; 6829 } 6830 6831 /* Spinner Type API - Symbol input spinner */
6832 .input--symbols .number-input__container { 6833 display: flex; 6834 align-items: stretch; 6835 border-radius: var(--pu-input-border-radius, 0); 6836 border: solid var(--pu-input-border-width, 0.0625em) var(--pu-input-border-color, hsl(240, 5%, 65%)); 6837 border-color: rgb(from var(--pu-input-border-color, hsl(240, 5%, 65%)) r g b / alpha); 6838 } 6839 .input--symbols .number-input__container { 6840 padding-left: calc(var(--pu-input-space-padding) * 0.2); 6841 padding-right: calc(var(--pu-input-space-padding) * 0.2); 6842 padding-top: calc(var(--pu-input-space-padding) * 0.1); 6843 padding-bottom: calc(var(--pu-input-space-padding) * 0.1); 6844 } 6845 .input--symbols input { 6846 order: 2; 6847 text-align: center; 6848 height: 1.75em; 6849 width: 2em; 6850 } 6851 .input--symbols .spinner { 6852 border: none; 6853 position: relative; 6854 height: 1.75em; 6855 } 6856 .input--symbols .spinner::part(button-icon) { 6857 padding: calc(var(--pu-input-space-padding) * 0.25); 6858 } 6859 .input--symbols .spinner.increase { 6860 border-left: none; 6861 order: 3; 6862 } 6863 .input--symbols .spinner.decrease { 6864 border-right: none; 6865 order: 1; 6866 } 6867`],Vi={assumeInteractionOn:["pu-blur","pu-input"]};class Di extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,Vi),this.size="medium",this.label="",this.labelHidden=!1,this.spinnerType="arrows",this.disabled=!1,this.required=!1,this.id="",this.name="",this.value="",this.form="",this.step=1,this.hasFocus=!1,this.hasSlotController=new Xe(this,"label","help-text"),this.deprecatedPropertyMap=[{old:"hideLabel",new:"labelHidden",defaultValue:!1}]}get hideLabel(){return this.labelHidden}set hideLabel(e){this._handleDeprecated("hideLabel",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}get validity(){return this.input.validity}get validationMessage(){return this.input.validationMessage}firstUpdated(){this.formControlController.updateValidity()}checkValidity(){return this.input.checkValidity()}reportValidity(){return this.input.reportValidity()}setCustomValidity(e){this.input.setCustomValidity(e),this.formControlController.updateValidity()}getForm(){return this.formControlController.getForm()}getValue(){if(this.input)return this.input.value}setValue(e){e&&(this.value=e)}handleBlur(){this.hasFocus=!1,this.emit("pu-blur")}handleFocus(){this.hasFocus=!0,this.emit("pu-focus")}handleInput(){this.value=this.input.value,this.formControlController.updateValidity(),this.emit("pu-input")}handleInvalid(e){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(e)}handleChange(){this.value=this.input.value,this.validateOnChange(),this.emit("pu-change")}handleKeyDown(e){const t=e.metaKey||e.ctrlKey||e.shiftKey||e.altKey;"Enter"!==e.key||t||setTimeout((()=>{e.defaultPrevented||e.isComposing||this.formControlController.submit()}))}stepValue(e){this.input&&("plus"===e?this.input.stepUp():"minus"===e&&"0"!==this.input.value&&this.input.stepDown(),this.value=this.input.value,this.handleChange())}setSpinnerValue(e){this.input&&this.stepValue(e)}validateOnChange(){if(!this.input)return;let e=this.input.value.trim(),t=parseInt(e,10);(""===e||isNaN(t))&&(t=this.min??0),void 0!==this.min&&t<this.min?t=this.min:void 0!==this.max&&t>this.max&&(t=this.max),this.value=t.toString(),this.input.value=this.value}isMaxValue(){return Number(this.value)===this.max}isMinValue(){return!!(this.min&&parseInt(this.value)<=this.min)}render(){const e=this.min&&parseInt(this.value)===this.min||!1,t=this.max&&parseInt(this.value)>=this.max||!1,o=this.hasSlotController.test("label"),i=!!this.label||!!o;return $` 6868 <div 6869 part="base number-input" 6870 class="${J({"form-control":!0,"form-control--small":"small"===this.size,"form-control--medium":"medium"===this.size,"form-control--large":"large"===this.size,"form-control--has-label":i,"form-control--hide-label":this.labelHidden,"input--disabled":this.disabled,"input--focused":this.hasFocus,"input--small":"small"===this.size,"input--medium":"medium"===this.size,"input--large":"large"===this.size,"input--symbol
6870s":"symbols"===this.spinnerType,"input--arrows":"arrows"===this.spinnerType,"input--spinner-hidden":"none"===this.spinnerType,"input--min":e,"input--max":t})}" 6871 > 6872 <div 6873 part="input" 6874 class="number-input" 6875 > 6876 <label 6877 part="label" 6878 class="${J({"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 6879 for="${this.id}" 6880 aria-hidden=${i?"false":"true"} 6881 > 6882 <slot name="label">${this.label}</slot> 6883 </label> 6884 <div 6885 part="control" 6886 class="number-input__container" 6887 > 6888 <input 6889 part="input" 6890 class="input" 6891 id="${this.id}" 6892 name="${this.name}" 6893 step="${this.step}" 6894 min="${Ze(this.min)}" 6895 max="${Ze(this.max)}" 6896 type="number" 6897 .value="${this.value}" 6898 ?disabled="${this.disabled}" 6899 ?required="${this.required}" 6900 placeholder="${Ze(this.placeholder)}" 6901 @change=${this.handleChange} 6902 @input=${this.handleInput} 6903 @invalid=${this.handleInvalid} 6904 @keydown=${this.handleKeyDown} 6905 @focus=${this.handleFocus} 6906 @blur=${this.handleBlur} 6907 /> 6908 ${"none"!==this.spinnerType?$` 6909 ${"symbols"===this.spinnerType?$` 6910 <pu-button-icon 6911 part="increase" 6912 exportparts="base,icon,svg" 6913 class="spinner increase" 6914 name="plus" 6915 label="Increase number" 6916 @click="${()=>this.setSpinnerValue("plus")}" 6917 ?disabled=${this.isMaxValue()||this.disabled} 6918 > 6919 </pu-button-icon> 6920 <pu-button-icon 6921 part="decrease" 6922 exportparts="base,icon,svg" 6923 class="spinner decrease" 6924 name="minus" 6925 label="Decrease number" 6926 @click="${()=>this.setSpinnerValue("minus")}" 6927 ?disabled=${this.isMinValue()||this.disabled} 6928 > 6929 </pu-button-icon> 6930 `:$` 6931 <pu-button-icon 6932 part="increase" 6933 exportparts="base,icon,svg" 6934 class="spinner increase" 6935 name="chevron-up" 6936 label="Increase number" 6937 @click="${()=>this.setSpinnerValue("plus")}" 6938 ?disabled=${this.isMaxValue()||this.disabled} 6939 > 6940 </pu-button-icon> 6941 <pu-button-icon 6942 part="decrease" 6943 exportparts="base,icon,svg" 6944 class="spinner decrease" 6945 name="chevron-down" 6946 label="Decrease number" 6947 @click="${()=>this.setSpinnerValue("minus")}" 6948 ?disabled=${this.isMinValue()||this.disabled} 6949 > 6950 </pu-button-icon> 6951 `} 6952 `:z} 6953 </div> 6954 </div> 6955 </div> 6956 `}}Di.dependencies={"pu-button-icon":jt},Di.styles=[Me,Hi],i([ke({reflect:!0})],Di.prototype,"size",void 0),i([ke()],Di.prototype,"label",void 0),i([ke({type:Boolean})],Di.prototype,"labelHidden",void 0),i([ke()],Di.prototype,"spinnerType",void 0),i([ke()],Di.prototype,"placeholder",void 0),i([ke({type:Boolean,reflect:!0})],Di.prototype,"disabled",void 0),i([ke({type:Boolean})],Di.prototype,"required",void 0),i([ke()],Di.prototype,"id",void 0),i([ke()],Di.prototype,"name",void 0),i([ke({reflect:!0})],Di.prototype,"value",void 0),i([ke({reflect:!0})],Di.prototype,"form",void 0),i([ke({type:Number})],Di.prototype,"step",void 0),i([ke({type:Number})],Di.prototype,"min",void 0),i([ke({type:Number})],Di.prototype,"max",void 0),i([Ce()],Di.prototype,"hasFocus",void 0),i([Se("input")],Di.prototype,"input",void 0),i([ke({type:Boolean})],Di.prototype,"hideLabel",null),Di.define("pu-number-input");const Ri=[te` 6957 :host { 6958 display: block; 6959 user-select: none; 6960 -webkit-user-select: none; 6961 } 6962 6963 :host(:focus) { 6964 outline: none; 6965 } 6966 6967 .option { 6968 position: relative; 6969 display: flex; 6970 align-items: center; 6971 font-family: var(--pu-font-family-body); 6972 font-size: var(--pu-text-body-size-sm, 0.875em); 6973 line-height: var(--pu-font-leading-500, 1.5); 6974 letter-spacing: var(--pu-select-option-font-tracking, 0.05em); 6975 color: rgb(from var(--pu-select-option-color-foreground, hsl(240, 4%, 16%)) r g b / alpha); 6976 padding: var(--pu-space-200, 0.5em) var(--pu-space-400, 1em); 6977 transition: var(--pu-transition-duration-150) fill; 6978 cursor: pointer; 6979 } 6980 6981 .option .option__check { 6982 flex: 0 0 auto; 6983 display: flex; 6984 align-items: center; 6985 justify-content: center; 6986 visibility: hidden; 6987 padding-inline-end: var(--pu-space-200, 0.5em); 6988 } 6989 6990 .option:not(.option--selected) { 6991 padding-inline-start: var(--pu-space-1000, 2.5em); 6992 } 6993 6994 @media (max-width: 47.9975em) { 6995 .option { 6996 padding: var(--pu-space-300, 0.75em) var(--pu-space-400, 1em); 6997 } 6998 } 6999 7000 .option__label { 7001 flex: 1 1 auto; 7002 display: inline-block; 7003 line-height: var(--pu-font-leading-300); 7004 text-align: left; 7005 } 7006 7007 .option__prefix, 7008 .option__suffix { 7009 flex: 0 0 auto; 7010 display: flex; 7011 align-items: center; 7012 } 7013 7014 .option__prefix::slotted(*) { 7015 margin-inline-end: var(--pu-space-100, 0.25em); 7016 } 7017 7018 .option__suffix::slotted(*) { 7019 margin-inline-start: var(--pu-space-100, 0.25em); 7020 } 7021 7022 @media (forced-colors: active) { 7023 :host(:hover:not([aria-disabled='true'])) .option { 7024 outline: dashed 0.0625em SelectedItem; 7025 outline-offset: -0.0625em; 7026 } 7027 } 7028`,te` 7029 /* State API Classes */ 7030 .option--hover:not(.option--current):not(.option--disabled) { 7031 background-color: rgb(from var(--pu-select-option-color-background-hover, hsl(0, 0%, 97.5%)) r g b / alpha); 7032 color: rgb(from var(--pu-select-option-color-foreground-hover, hsl(240, 5%, 26%)) r g b / alpha); 7033 } 7034 7035 .option--current, 7036 .option--current.option--disabled { 7037 background-color: rgb(from var(--pu-select-option-color-background, hsl(240, 5%, 96%)) r g b / alpha); 7038 color: rgb(from var(--pu-select-option-color-foreground-selected, hsl(240, 5%, 26%)) r g b / alpha); 7039 opacity: 1; 7040 } 7041 7042 .option--disabled { 7043 outline: none; 7044 opacity: 0.5;
7045 cursor: not-allowed; 7046 } 7047 7048 .option--selected .option__check { 7049 visibility: visible; 7050 } 7051`],Fi=Math.min,Wi=Math.max,Ui=Math.round,Gi=Math.floor,qi=e=>({x:e,y:e}),Ki={left:"right",right:"left",bottom:"top",top:"bottom"},Ji={start:"end",end:"start"};function Xi(e,t,o){return Wi(e,Fi(t,o))}function Yi(e,t){return"function"==typeof e?e(t):e}function Zi(e){return e.split("-")[0]}function Qi(e){return e.split("-")[1]}function er(e){return"x"===e?"y":"x"}function tr(e){return"y"===e?"height":"width"}const or=new Set(["top","bottom"]);function ir(e){return or.has(Zi(e))?"y":"x"}function rr(e){return er(ir(e))}function ar(e){return e.replace(/start|end/g,(e=>Ji[e]))}const sr=["left","right"],nr=["right","left"],lr=["top","bottom"],dr=["bottom","top"];function pr(e,t,o,i){const r=Qi(e);let a=function(e,t,o){switch(e){case"top":case"bottom":return o?t?nr:sr:t?sr:nr;case"left":case"right":return t?lr:dr;default:return[]}}(Zi(e),"start"===o,i);return r&&(a=a.map((e=>e+"-"+r)),t&&(a=a.concat(a.map(ar)))),a}function cr(e){return e.replace(/left|right|bottom|top/g,(e=>Ki[e]))}function ur(e){return"number"!=typeof e?function(e){return{top:0,right:0,bottom:0,left:0,...e}}(e):{top:e,right:e,bottom:e,left:e}}function hr(e){const{x:t,y:o,width:i,height:r}=e;return{width:i,height:r,top:o,left:t,right:t+i,bottom:o+r,x:t,y:o}}function gr(e,t,o){let{reference:i,floating:r}=e;const a=ir(t),s=rr(t),n=tr(s),l=Zi(t),d="y"===a,p=i.x+i.width/2-r.width/2,c=i.y+i.height/2-r.height/2,u=i[n]/2-r[n]/2;let h;switch(l){case"top":h={x:p,y:i.y-r.height};break;case"bottom":h={x:p,y:i.y+i.height};break;case"right":h={x:i.x+i.width,y:c};break;case"left":h={x:i.x-r.width,y:c};break;default:h={x:i.x,y:i.y}}switch(Qi(t)){case"start":h[s]-=u*(o&&d?-1:1);break;case"end":h[s]+=u*(o&&d?-1:1)}return h}async function mr(e,t){var o;void 0===t&&(t={});const{x:i,y:r,platform:a,rects:s,elements:n,strategy:l}=e,{boundary:d="clippingAncestors",rootBoundary:p="viewport",elementContext:c="floating",altBoundary:u=!1,padding:h=0}=Yi(t,e),g=ur(h),m=n[u?"floating"===c?"reference":"floating":c],b=hr(await a.getClippingRect({element:null==(o=await(null==a.isElement?void 0:a.isElement(m)))||o?m:m.contextElement||await(null==a.getDocumentElement?void 0:a.getDocumentElement(n.floating)),boundary:d,rootBoundary:p,strategy:l})),f="floating"===c?{x:i,y:r,width:s.floating.width,height:s.floating.height}:s.reference,v=await(null==a.getOffsetParent?void 0:a.getOffsetParent(n.floating)),y=await(null==a.isElement?void 0:a.isElement(v))&&await(null==a.getScale?void 0:a.getScale(v))||{x:1,y:1},w=hr(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:n,rect:f,offsetParent:v,strategy:l}):f);return{top:(b.top-w.top+g.top)/y.y,bottom:(w.bottom-b.bottom+g.bottom)/y.y,left:(b.left-w.left+g.left)/y.x,right:(w.right-b.right+g.right)/y.x}}const br=new Set(["left","top"]);function fr(){return"undefined"!=typeof window}function vr(e){return xr(e)?(e.nodeName||"").toLowerCase():"#document"}function yr(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function wr(e){var t;return null==(t=(xr(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function xr(e){return!!fr()&&(e instanceof Node||e instanceof yr(e).Node)}function _r(e){return!!fr()&&(e instanceof Element||e instanceof yr(e).Element)}function kr(e){return!!fr()&&(e instanceof HTMLElement||e instanceof yr(e).HTMLElement)}function Cr(e){return!(!fr()||"undefined"==typeof ShadowRoot)&&(e instanceof ShadowRoot||e instanceof yr(e).ShadowRoot)}const $r=new Set(["inline","contents"]);function Sr(e){const{overflow:t,overflowX:o,overflowY:i,display:r}=Lr(e);return/auto|scroll|overlay|hidden|clip/.test(t+i+o)&&!$r.has(r)}const zr=new Set(["table","td","th"]);function Ar(e){return zr.has(vr(e))}const Pr=[":popover-open",":modal"];function Nr(e){return Pr.some((t=>{try{return e.matches(t)}catch(e){return!1}}))}const Er=["transform","translate","scale","rotate","perspective"],Br=["transform","translate","scale","rotate","perspective","filter"],Tr=["paint","layout","strict","content"];function Ir(e){const t=Mr(),o=_r(e)?Lr(e):e;return Er.some((e=>!!o[e]&&"none"!==o[e]))||!!o.containerType&&"normal"!==o.containerType||!t&&!!o.backdropFilter&&"none"!==o.backdropFilter||!t&&!!o.filter&&"none"!==o.filter||Br.some((e=>(o.willChange||"").includes(e)))||Tr.some((e=>(o.contain||"").includes(e)))}function Mr(){return!("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}const jr=new Set(["html","body","#document"]);function Or(e){return jr.has(vr(e))}function Lr(e){return yr(e).getComputedStyle(e)}function Hr(e){return _r(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Vr(e){if("html"===vr(e))return e;const t=e.assignedSlot||e.parentNode||Cr(e)&&e.host||wr(e);return Cr(t)?t.host:t}function Dr(e){const t=Vr(e);return Or(t)?e.ownerDocument?e.ownerDocument.body:e.body:kr(t)&&Sr(t)?t:Dr(t)}function Rr(e,t,o){var i;void 0===t&&(t=[]),void 0===o&&(o=!0);const r=Dr(e),a=r===(null==(i=e.ownerDocument)?void 0:i.body),s=yr(r);if(a){const e=Fr(s);
vendor: 12,171 bytes, line 7051
7051return t.concat(s,s.visualViewport||[],Sr(r)?r:[],e&&o?Rr(e):[])}return t.concat(r,Rr(r,[],o))}function Fr(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Wr(e){const t=Lr(e);let o=parseFloat(t.width)||0,i=parseFloat(t.height)||0;const r=kr(e),a=r?e.offsetWidth:o,s=r?e.offsetHeight:i,n=Ui(o)!==a||Ui(i)!==s;return n&&(o=a,i=s),{width:o,height:i,$:n}}function Ur(e){return _r(e)?e:e.contextElement}function Gr(e){const t=Ur(e);if(!kr(t))return qi(1);const o=t.getBoundingClientRect(),{width:i,height:r,$:a}=Wr(t);let s=(a?Ui(o.width):o.width)/i,n=(a?Ui(o.height):o.height)/r;return s&&Number.isFinite(s)||(s=1),n&&Number.isFinite(n)||(n=1),{x:s,y:n}}const qr=qi(0);function Kr(e){const t=yr(e);return Mr()&&t.visualViewport?{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}:qr}function Jr(e,t,o,i){void 0===t&&(t=!1),void 0===o&&(o=!1);const r=e.getBoundingClientRect(),a=Ur(e);let s=qi(1);t&&(i?_r(i)&&(s=Gr(i)):s=Gr(e));const n=function(e,t,o){return void 0===t&&(t=!1),!(!o||t&&o!==yr(e))&&t}(a,o,i)?Kr(a):qi(0);let l=(r.left+n.x)/s.x,d=(r.top+n.y)/s.y,p=r.width/s.x,c=r.height/s.y;if(a){const e=yr(a),t=i&&_r(i)?yr(i):i;let o=e,r=Fr(o);for(;r&&i&&t!==o;){const e=Gr(r),t=r.getBoundingClientRect(),i=Lr(r),a=t.left+(r.clientLeft+parseFloat(i.paddingLeft))*e.x,s=t.top+(r.clientTop+parseFloat(i.paddingTop))*e.y;l*=e.x,d*=e.y,p*=e.x,c*=e.y,l+=a,d+=s,o=yr(r),r=Fr(o)}}return hr({width:p,height:c,x:l,y:d})}function Xr(e,t){const o=Hr(e).scrollLeft;return t?t.left+o:Jr(wr(e)).left+o}function Yr(e,t){const o=e.getBoundingClientRect();return{x:o.left+t.scrollLeft-Xr(e,o),y:o.top+t.scrollTop}}const Zr=new Set(["absolute","fixed"]);function Qr(e,t,o){let i;if("viewport"===t)i=function(e,t){const o=yr(e),i=wr(e),r=o.visualViewport;let a=i.clientWidth,s=i.clientHeight,n=0,l=0;if(r){a=r.width,s=r.height;const e=Mr();(!e||e&&"fixed"===t)&&(n=r.offsetLeft,l=r.offsetTop)}const d=Xr(i);if(d<=0){const e=i.ownerDocument,t=e.body,o=getComputedStyle(t),r="CSS1Compat"===e.compatMode&&parseFloat(o.marginLeft)+parseFloat(o.marginRight)||0,s=Math.abs(i.clientWidth-t.clientWidth-r);s<=25&&(a-=s)}else d<=25&&(a+=d);return{width:a,height:s,x:n,y:l}}(e,o);else if("document"===t)i=function(e){const t=wr(e),o=Hr(e),i=e.ownerDocument.body,r=Wi(t.scrollWidth,t.clientWidth,i.scrollWidth,i.clientWidth),a=Wi(t.scrollHeight,t.clientHeight,i.scrollHeight,i.clientHeight);let s=-o.scrollLeft+Xr(e);const n=-o.scrollTop;return"rtl"===Lr(i).direction&&(s+=Wi(t.clientWidth,i.clientWidth)-r),{width:r,height:a,x:s,y:n}}(wr(e));else if(_r(t))i=function(e,t){const o=Jr(e,!0,"fixed"===t),i=o.top+e.clientTop,r=o.left+e.clientLeft,a=kr(e)?Gr(e):qi(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:r*a.x,y:i*a.y}}(t,o);else{const o=Kr(e);i={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return hr(i)}function ea(e,t){const o=Vr(e);return!(o===t||!_r(o)||Or(o))&&("fixed"===Lr(o).position||ea(o,t))}function ta(e,t,o){const i=kr(t),r=wr(t),a="fixed"===o,s=Jr(e,!0,a,t);let n={scrollLeft:0,scrollTop:0};const l=qi(0);function d(){l.x=Xr(r)}if(i||!i&&!a)if(("body"!==vr(t)||Sr(r))&&(n=Hr(t)),i){const e=Jr(t,!0,a,t);l.x=e.x+t.clientLeft,l.y=e.y+t.clientTop}else r&&d();a&&!i&&r&&d();const p=!r||i||a?qi(0):Yr(r,n);return{x:s.left+n.scrollLeft-l.x-p.x,y:s.top+n.scrollTop-l.y-p.y,width:s.width,height:s.height}}function oa(e){return"static"===Lr(e).position}function ia(e,t){if(!kr(e)||"fixed"===Lr(e).position)return null;if(t)return t(e);let o=e.offsetParent;return wr(e)===o&&(o=o.ownerDocument.body),o}function ra(e,t){const o=yr(e);if(Nr(e))return o;if(!kr(e)){let t=Vr(e);for(;t&&!Or(t);){if(_r(t)&&!oa(t))return t;t=Vr(t)}return o}let i=ia(e,t);for(;i&&Ar(i)&&oa(i);)i=ia(i,t);return i&&Or(i)&&oa(i)&&!Ir(i)?o:i||function(e){let t=Vr(e);for(;kr(t)&&!Or(t);){if(Ir(t))return t;if(Nr(t))return null;t=Vr(t)}return null}(e)||o}const aa={convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{elements:t,rect:o,offsetParent:i,strategy:r}=e;const a="fixed"===r,s=wr(i),n=!!t&&Nr(t.floating);if(i===s||n&&a)return o;let l={scrollLeft:0,scrollTop:0},d=qi(1);const p=qi(0),c=kr(i);if((c||!c&&!a)&&(("body"!==vr(i)||Sr(s))&&(l=Hr(i)),kr(i))){const e=Jr(i);d=Gr(i),p.x=e.x+i.clientLeft,p.y=e.y+i.clientTop}const u=!s||c||a?qi(0):Yr(s,l);return{width:o.width*d.x,height:o.height*d.y,x:o.x*d.x-l.scrollLeft*d.x+p.x+u.x,y:o.y*d.y-l.scrollTop*d.y+p.y+u.y}},getDocumentElement:wr,getClippingRect:function(e){let{element:t,boundary:o,rootBoundary:i,strategy:r}=e;const a=[..."clippingAncestors"===o?Nr(t)?[]:function(e,t){const o=t.get(e);if(o)return o;let i=Rr(e,[],!1).filter((e=>_r(e)&&"body"!==vr(e))),r=null;const a="fixed"===Lr(e).position;let s=a?Vr(e):e;for(;_r(s)&&!Or(s);){const t=Lr(s),o=Ir(s);o||"fixed"!==t.position||(r=null),(a?!o&&!r:!o&&"static"===t.position&&r&&Zr.has(r.position)||Sr(s)&&!o&&ea(e,s))?i=i.filter((e=>e!==s)):r=t,s=Vr(s)}return t.set(e,i),i}(t,this._c):[].concat(o),i],s=a[0],n=a.reduce(((e,o)=>{const i=Qr(t,o,r);return e.top=Wi(i.top,e.top),e.right=Fi(i.right,e.right),e.bottom=Fi(i.bottom,e.bottom),e.left=Wi(i.left,e.left),e}),Qr(t,s,r));return{width:n.right-n.left,height:n.bottom-n.top,x:n.left,y:n.top}},getOffsetParent:ra,getElementRects:async function(e){const t=this.getOffsetParent||ra,o=this.getDimensions,i=await o(e.floating);return{reference:ta(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:i.width,height:i.height}}},getClientRects:function(e){return Array.from(e.getClientRects())},getDimensions:function(e){const{width:t,height:o}=Wr(e);return{width:t,height:o}},getScale:Gr,isElement:_r,isRTL:function(e){return"rtl"===Lr(e).direction}};function sa(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function na(e,t,o,i){void 0===i&&(i={});const{ancestorScroll:r=!0,ancestorResize:a=!0,elementResize:s="function"==typeof ResizeObserver,layoutShift:n="function"==typeof IntersectionObserver,animationFrame:l=!1}=i,d=Ur(e),p=r||a?[...d?Rr(d):[],...Rr(t)]:[];p.forEach((e=>{r&&e.addEventListener("scroll",o,{passive:!0}),a&&e.addEventListener("resize",o)}));const c=d&&n?function(e,t){let o,i=null;const r=wr(e);function a(){var e;clearTimeout(o),null==(e=i)||e.disconnect(),i=null}return function s(n,l){void 0===n&&(n=!1),void 0===l&&(l=1),a();const d=e.getBoundingClientRect(),{left:p,top:c,width:u,height:h}=d;if(n||t(),!u||!h)return;const g={rootMargin:-Gi(c)+"px "+-Gi(r.clientWidth-(p+u))+"px "+-Gi(r.clientHeight-(c+h))+"px "+-Gi(p)+"px",threshold:Wi(0,Fi(1,l))||1};let m=!0;function b(t){const i=t[0].intersectionRatio;if(i!==l){if(!m)return s();i?s(!1,i):o=setTimeout((()=>{s(!1,1e-7)}),1e3)}1!==i||sa(d,e.getBoundingClientRect())||s(),m=!1}try{i=new IntersectionObserver(b,{...g,root:r.ownerDocument})}catch(e){i=new IntersectionObserver(b,g)}i.observe(e)}(!0),a}(d,o):null;let u,h=-1,g=null;s&&(g=new ResizeObserver((e=>{let[i]=e;i&&i.target===d&&g&&(g.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame((()=>{var e;null==(e=g)||e.observe(t)}))),o()})),d&&!l&&g.observe(d),g.observe(t));let m=l?Jr(e):null;return l&&function t(){const i=Jr(e);m&&!sa(m,i)&&o();m=i,u=requestAnimationFrame(t)}(),o(),()=>{var e;p.forEach((e=>{r&&e.removeEventListener("scroll",o),a&&e.removeEventListener("resize",o)})),null==c||c(),null==(e=g)||e.disconnect(),g=null,l&&cancelAnimationFrame(u)}}const la=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(t){var o,i;const{x:r,y:a,placement:s,middlewareData:n}=t,l=await async function(e,t){const{placement:o,platform:i,elements:r}=e,a=await(null==i.isRTL?void 0:i.isRTL(r.floating)),s=Zi(o),n=Qi(o),l="y"===ir(o),d=br.has(s)?-1:1,p=a&&l?-1:1,c=Yi(t,e);let{mainAxis:u,crossAxis:h,alignmentAxis:g}="number"==typeof c?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:c.mainAxis||0,crossAxis:c.crossAxis||0,alignmentAxis:c.alignmentAxis};return n&&"number"==typeof g&&(h="end"===n?-1*g:g),l?{x:h*p,y:u*d}:{x:u*d,y:h*p}}(t,e);return s===(null==(o=n.offset)?void 0:o.placement)&&null!=(i=n.arrow)&&i.alignmentOffset?{}:{x:r+l.x,y:a+l.y,data:{...l,placement:s}}}}},da=function(e){return void 0===e&&(e={}),{name:"shift",options:e,async fn(t){const{x:o,y:i,placement:r}=t,{mainAxis:a=!0,crossAxis:s=!1,limiter:n={fn:e=>{let{x:t,y:o}=e;return{x:t,y:o}}},...l}=Yi(e,t),d={x:o,y:i},p=await mr(t,l),c=ir(Zi(r)),u=er(c);let h=d[u],g=d[c];if(a){const e="y"===u?"bottom":"right";h=Xi(h+p["y"===u?"top":"left"],h,h-p[e])}if(s){const e="y"===c?"bottom":"right";g=Xi(g+p["y"===c?"top":"left"],g,g-p[e])}const m=n.fn({...t,[u]:h,[c]:g});return{...m,data:{x:m.x-o,y:m.y-i,enabled:{[u]:a,[c]:s}}}}}},pa=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(t){var o,i;const{placement:r,middlewareData:a,rects:s,initialPlacement:n,platform:l,elements:d}=t,{mainAxis:p=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:m=!0,...b}=Yi(e,t);if(null!=(o=a.arrow)&&o.alignmentOffset)return{};const f=Zi(r),v=ir(n),y=Zi(n)===n,w=await(null==l.isRTL?void 0:l.isRTL(d.floating)),x=u||(y||!m?[cr(n)]:function(e){const t=cr(e);return[ar(e),t,ar(t)]}(n)),_="none"!==g;!u&&_&&x.push(...pr(n,m,g,w));const k=[n,...x],C=await mr(t,b),$=[];let S=(null==(i=a.flip)?void 0:i.overflows)||[];if(p&&$.push(C[f]),c){const e=function(e,t,o){void 0===o&&(o=!1);const i=Qi(e),r=rr(e),a=tr(r);let s="x"===r?i===(o?"end":"start")?"right":"left":"start"===i?"bottom":"top";return t.reference[a]>t.floating[a]&&(s=cr(s)),[s,cr(s)]}(r,s,w);$.push(C[e[0]],C[e[1]])}if(S=[...S,{placement:r,overflows:$}],!$.every((e=>e<=0))){var z,A;const e=((null==(z=a.flip)?void 0:z.index)||0)+1,t=k[e];if(t){if(!("alignment"===c&&v!==ir(t))||S.every((e=>ir(e.placement)!==v||e.overflows[0]>0)))return{data:{index:e,overflows:S},reset:{placement:t}}}let o=null==(A=S.filter((e=>e.overflows[0]<=0)).sort(((e,t)=>e.overflows[1]-t.overflows[1]))[0])?void 0:A.placement;if(!o)switch(h){case"bestFit":{var P;const e=null==(P=S.filter((e=>{if(_){const t=ir(e.placement);return t===v||"y"===t}return!0})).map((e=>[e.placement,e.overflows.filter((e=>e>0)).reduce(((e,t)=>e+t),0)])).sort(((e,t)=>e[1]-t[1]))[0])?void 0:P[0];e&&(o=e);break}case"initialPlacement":o=n}if(r!==o)return{reset:{placement:o}}}return{}}}},ca=function(e){return void 0===e&&(e={}),{name:"size",options:e,async fn(t){var o,i;const{placement:r,rects:a,platform:s,elements:n}=t,{apply:l=()=>{},...d}=Yi(e,t),p=await mr(t,d),c=Zi(r),u=Qi(r),h="y"===ir(r),{width:g,height:m}=a.floating;let b,f;"top"===c||"bottom"===c?(b=c,f=u===(await(null==s.isRTL?void 0:s.isRTL(n.floating))?"start":"end")?"left":"right"):(f=c,b="end"===u?"top":"bottom");const v=m-p.top-p.bottom,y=g-p.left-p.right,w=Fi(m-p[b],v),x=Fi(g-p[f],y),_=!t.middlewareData.shift;let k=w,C=x;if(null!=(o=t.middlewareData.shift)&&o.enabled.x&&(C=y),null!=(i=t.middlewareData.shift)&&i.enabled.y&&(k=v),_&&!u){const e=Wi(p.left,0),t=Wi(p.right,0),o=Wi(p.top,0),i=Wi(p.bottom,0);h?C=g-2*(0!==e||0!==t?e+t:Wi(p.left,p.right)):k=m-2*(0!==o||0!==i?o+i:Wi(p.top,p.bottom))}await l({...t,availableWidth:C,availableHeight:k});const $=await s.getDimensions(n.floating);return g!==$.width||m!==$.height?{reset:{rects:!0}}:{}}}},ua=e=>({name:"arrow",options:e,async fn(t){const{x:o,y:i,placement:r,rects:a,platform:s,elements:n,middlewareData:l}=t,{element:d,padding:p=0}=Yi(e,t)||{};if(null==d)return{};const c=ur(p),u={x:o,y:i},h=rr(r),g=tr(h),m=await s.getDimensions(d),b="y"===h,f=b?"top":"left",v=b?"bottom":"right",y=b?"clientHeight":"clientWidth",w=a.reference[g]+a.reference[h]-u[h]-a.floating[g],x=u[h]-a.reference[h],_=await(null==s.getOffsetParent?void 0:s.getOffsetParent(d));let k=_?_[y]:0;k&&await(null==s.isElement?void 0:s.isElement(_))||(k=n.floating[y]||a.floating[g]);const C=w/2-x/2,$=k/2-m[g]/2-1,S=Fi(c[f],$),z=Fi(c[v],$),A=S,P=k-m[g]-z,N=k/2-m[g]/2+C,E=Xi(A,N,P),B=!l.arrow&&null!=Qi(r)&&N!==E&&a.reference[g]/2-(N<A?S:z)-m[g]/2<0,T=B?N<A?N-A:N-P:0;return{[h]:u[h]+T,data:{[h]:E,centerOffset:N-E-T,...B&&{alignmentOffset:T}},reset:B}}}),ha=(e,t,o)=>{const i=new Map,r={platform:aa,...o},a={...r.platform,_c:i};return(async(e,t,o)=>{const{placement:i="bottom",strategy:r="absolute",middleware:a=[],platform:s}
vendor: 8,128 bytes, lines 7051-7122
7051=o,n=a.filter(Boolean),l=await(null==s.isRTL?void 0:s.isRTL(t));let d=await s.getElementRects({reference:e,floating:t,strategy:r}),{x:p,y:c}=gr(d,i,l),u=i,h={},g=0;for(let o=0;o<n.length;o++){const{name:a,fn:m}=n[o],{x:b,y:f,data:v,reset:y}=await m({x:p,y:c,initialPlacement:i,placement:u,strategy:r,middlewareData:h,rects:d,platform:s,elements:{reference:e,floating:t}});p=null!=b?b:p,c=null!=f?f:c,h={...h,[a]:{...h[a],...v}},y&&g<=50&&(g++,"object"==typeof y&&(y.placement&&(u=y.placement),y.rects&&(d=!0===y.rects?await s.getElementRects({reference:e,floating:t,strategy:r}):y.rects),({x:p,y:c}=gr(d,u,l))),o=-1)}return{x:p,y:c,placement:u,strategy:r,middlewareData:h}})(e,t,{...r,platform:a})};function ga(e){return function(e){for(let t=e;t;t=ma(t))if(t instanceof Element&&"none"===getComputedStyle(t).display)return null;for(let t=ma(e);t;t=ma(t)){if(!(t instanceof Element))continue;const e=getComputedStyle(t);if("contents"!==e.display){if("static"!==e.position||Ir(e))return t;if("BODY"===t.tagName)return t}}return null}(e)}function ma(e){return e.assignedSlot?e.assignedSlot:e.parentNode instanceof ShadowRoot?e.parentNode.host:e.parentNode}const ba=[te` 7052 :host { 7053 --arrow-color: rgb(from var(--pu-input-icon-color-foreground, hsl(240 5.9% 10%)) r g b / alpha); 7054 --arrow-size: 0.375em; 7055 --arrow-size-diagonal: calc(var(--arrow-size) * 0.7071); 7056 --arrow-padding-offset: calc(var(--arrow-size-diagonal) - var(--arrow-size)); 7057 display: contents; 7058 } 7059 7060 .popup { 7061 position: absolute; 7062 isolation: isolate; 7063 max-width: var(--auto-size-available-width, none); 7064 max-height: var(--auto-size-available-height, none); 7065 z-index: var(--pu-layer-900, 900); 7066 } 7067 7068 .popup__arrow { 7069 position: absolute; 7070 width: calc(var(--arrow-size-diagonal) * 2); 7071 height: calc(var(--arrow-size-diagonal) * 2); 7072 rotate: 45deg; 7073 background: var(--arrow-color); 7074 z-index: -1; 7075 } 7076 7077 /* Hover bridge */ 7078 .popup-hover-bridge { 7079 position: fixed; 7080 z-index: calc(var(--pu-layer-900, 900) - 1); 7081 top: 0; 7082 right: 0; 7083 bottom: 0; 7084 left: 0; 7085 clip-path: polygon( 7086 var(--hover-bridge-top-left-x, 0) var(--hover-bridge-top-left-y, 0), 7087 var(--hover-bridge-top-right-x, 0) var(--hover-bridge-top-right-y, 0), 7088 var(--hover-bridge-bottom-right-x, 0) var(--hover-bridge-bottom-right-y, 0), 7089 var(--hover-bridge-bottom-left-x, 0) var(--hover-bridge-bottom-left-y, 0) 7090 ); 7091 } 7092 7093 .popup-overlay { 7094 display: none; 7095 position: fixed; 7096 inset: 0; 7097 z-index: calc(var(--pu-layer-900, 900) - 1); 7098 background-color: rgb( 7099 from var(--pu-popup-overlay-color-background, hsl(240, 4%, 16%)) r g b / 7100 calc(var(--pu-popup-overlay-opacity-background, 0.9) * alpha) 7101 ); 7102 pointer-events: none; 7103 } 7104`,te` 7105 /* State API Classes */ 7106 .popup:not(.popup--active) { 7107 display: none; 7108 } 7109 7110 .popup-hover-bridge:not(.popup-hover-bridge--visible) { 7111 display: none; 7112 } 7113 7114 .popup-overlay.popup-overlay--visible { 7115 display: block; 7116 } 7117 7118 /* Strategy API Classes */ 7119 .popup--fixed { 7120 position: fixed; 7121 } 7122`];class fa extends Ue{constructor(){super(...arguments),this.active=!1,this.placement="top",this.strategy="absolute",this.distance=0,this.skidding=0,this.arrow=!1,this.arrowPlacement="anchor",this.arrowPadding=10,this.flip=!1,this.flipFallbackPlacements="",this.flipFallbackStrategy="best-fit",this.flipBoundary=[],this.flipPadding=0,this.shift=!1,this.shiftBoundary=[],this.shiftPadding=0,this.autoSizeBoundary=[],this.autoSizePadding=0,this.hoverBridge=!1,this.narrowFloatBottom=!1,this.isnarrow=!1,this.updateHoverBridge=()=>{if(this.hoverBridge&&this.anchorEl){const e=this.anchorEl.getBoundingClientRect(),t=this.popup.getBoundingClientRect();let o=0,i=0,r=0,a=0,s=0,n=0,l=0,d=0;this.placement.includes("top")||this.placement.includes("bottom")?e.top<t.top?(o=e.left,i=e.bottom,r=e.right,a=e.bottom,s=t.left,n=t.top,l=t.right,d=t.top):(o=t.left,i=t.bottom,r=t.right,a=t.bottom,s=e.left,n=e.top,l=e.right,d=e.top):e.left<t.left?(o=e.right,i=e.top,r=t.left,a=t.top,s=e.right,n=e.bottom,l=t.left,d=t.bottom):(o=t.right,i=t.top,r=e.left,a=e.top,s=t.right,n=t.bottom,l=e.left,d=e.bottom),this.style.setProperty("--hover-bridge-top-left-x",`${o}px`),this.style.setProperty("--hover-bridge-top-left-y",`${i}px`),this.style.setProperty("--hover-bridge-top-right-x",`${r}px`),this.style.setProperty("--hover-bridge-top-right-y",`${a}px`),this.style.setProperty("--hover-bridge-bottom-left-x",`${s}px`),this.style.setProperty("--hover-bridge-bottom-left-y",`${n}px`),this.style.setProperty("--hover-bridge-bottom-right-x",`${l}px`),this.style.setProperty("--hover-bridge-bottom-right-y",`${d}px`)}}}async connectedCallback(){super.connectedCallback(),await this.updateComplete,this.start()}disconnectedCallback(){super.disconnectedCallback(),this.stop()}async updated(e){super.updated(e),e.has("active")&&(this.active?this.start():this.stop()),e.has("anchor")&&this.handleAnchorChange(),this.active&&(await this.updateComplete,this.reposition())}async handleAnchorChange(){if(await this.stop(),this.anchor&&"string"==typeof this.anchor){const e=this.getRootNode();this.anchorEl=e.getElementById(this.anchor)}else this.anchor instanceof Element||function(e){return null!==e&&"object"==typeof e&&"getBoundingClientRect"in e&&(!("contextElement"in e)||e instanceof Element)}(this.anchor)?this.anchorEl=this.anchor:this.anchorEl=this.querySelector('[slot="anchor"]');this.anchorEl instanceof HTMLSlotElement&&(this.anchorEl=this.anchorEl.assignedElements({flatten:!0})[0]),this.anchorEl&&this.start()}start(){this.anchorEl&&(this.cleanup=na(this.anchorEl,this.popup,(()=>{this.reposition()})))}async stop(){return new Promise((e=>{this.cleanup?(this.cleanup(),this.cleanup=void 0,this.removeAttribute("data-current-placement"),this.style.removeProperty("--auto-size-available-width"),this.style.removeProperty("--auto-size-available-height"),requestAnimationFrame((()=>e()))):e()}))}reposition(){if(!this.active||!this.anchorEl)return;if(this.narrowFloatBottom&&window.matchMedia("(max-width: 47.9975em)").matches)return Object.assign(this.popup.style,{bottom:"0",left:"0",right:"0",top:"auto",width:"100%",position:"fixed",zIndex:"900"}),void(this.isnarrow=!0);this.isnarrow=!1;const e=[la({mainAxis:this.distance,crossAxis:this.skidding})];this.sync?e.push(ca({apply:({rects:e})=>{const t="width"===this.sync||"both"===this.sync,o="height"===this.sync||"both"===this.sync;this.popup.style.width=t?`${e.reference.width}px`:"",this.popup.style.height=o?`${e.reference.height}px`:""}})):(this.popup.style.width="",this.popup.style.height=""),this.flip&&e.push(pa({boundary:this.flipBoundary,fallbackPlacements:this.flipFallbackPlacements,fallbackStrategy:"best-fit"===this.flipFallbackStrategy?"bestFit":"initialPlacement",padding:this.flipPadding})),this.shift&&e.push(da({boundary:this.shiftBoundary,padding:this.shiftPadding})),this.autoSize?e.push(ca({boundary:this.autoSizeBoundary,padding:this.autoSizePadding,apply:({availableWidth:e,availableHeight:t})=>{"vertical"===this.autoSize||"both"===this.autoSize?this.style.setProperty("--auto-size-available-height",`${t}px`):this.style.removeProperty("--auto-size-available-height"),"horizontal"===this.autoSize||"both"===this.autoSize?this.style.setProperty("--auto-size-available-width",`${e}px`):this.style.removeProperty("--auto-size-available-width")}})):(this.style.removeProperty("--auto-size-available-width"),this.style.removeProperty("--auto-size-available-height")),this.arrow&&e.push(ua({element:this.arrowEl,padding:this.arrowPadding}));const t="absolute"===this.strategy?e=>aa.getOffsetParent(e,ga):aa.getOffsetParent;ha(this.anchorEl,this.popup,{placement:this.placement,middleware:e,strategy:this.strategy,platform:{...aa,getOffsetParent:t}}).then((({x:e,y:t,middlewareData:o,placement:i})=>{const r=this.matches(":dir(rtl)"),a={top:"bottom",right:"left",bottom:"top",left:"r
7122ight"}[i.split("-")[0]];if(this.setAttribute("data-current-placement",i),Object.assign(this.popup.style,{left:`${e}px`,top:`${t}px`}),this.arrow){const e=o.arrow.x,t=o.arrow.y;let i="",s="",n="",l="";if("start"===this.arrowPlacement){const o="number"==typeof e?`calc(${this.arrowPadding}px - var(--arrow-padding-offset))`:"";i="number"==typeof t?`calc(${this.arrowPadding}px - var(--arrow-padding-offset))`:"",s=r?o:"",l=r?"":o}else if("end"===this.arrowPlacement){const o="number"==typeof e?`calc(${this.arrowPadding}px - var(--arrow-padding-offset))`:"";s=r?"":o,l=r?o:"",n="number"==typeof t?`calc(${this.arrowPadding}px - var(--arrow-padding-offset))`:""}else"center"===this.arrowPlacement?(l="number"==typeof e?"calc(50% - var(--arrow-size-diagonal))":"",i="number"==typeof t?"calc(50% - var(--arrow-size-diagonal))":""):(l="number"==typeof e?`${e}px`:"",i="number"==typeof t?`${t}px`:"");Object.assign(this.arrowEl.style,{top:i,right:s,bottom:n,left:l,[a]:"calc(var(--arrow-size-diagonal) * -1)"})}})),requestAnimationFrame((()=>this.updateHoverBridge())),this.emit("pu-reposition")}render(){return $` 7123 <slot name="anchor" @slotchange=${this.handleAnchorChange}></slot> 7124 <span 7125 part="hover-bridge" 7126 class=${J({"popup-hover-bridge":!0,"popup-hover-bridge--visible":this.hoverBridge&&this.active})} 7127 > 7128 </span> 7129 7130 <div 7131 part="popup" 7132 class=${J({popup:!0,"popup--active":this.active,"popup--fixed":"fixed"===this.strategy,"popup--has-arrow":this.arrow})} 7133 > 7134 <slot></slot> 7135 ${this.arrow?$`<div part="arrow" class="popup__arrow" role="presentation"></div>`:""} 7136 </div> 7137 <div 7138 part="overlay" 7139 class=${J({"popup-overlay":!0,"popup-overlay--visible":this.isnarrow&&this.narrowFloatBottom&&this.active})} 7140 ></div> 7141 `}}fa.styles=[Me,ba],i([Se(".popup")],fa.prototype,"popup",void 0),i([Se(".popup__arrow")],fa.prototype,"arrowEl",void 0),i([ke()],fa.prototype,"anchor",void 0),i([ke({type:Boolean,reflect:!0})],fa.prototype,"active",void 0),i([ke({reflect:!0})],fa.prototype,"placement",void 0),i([ke({reflect:!0})],fa.prototype,"strategy",void 0),i([ke({type:Number})],fa.prototype,"distance",void 0),i([ke({type:Number})],fa.prototype,"skidding",void 0),i([ke({type:Boolean})],fa.prototype,"arrow",void 0),i([ke({attribute:"arrow-placement"})],fa.prototype,"arrowPlacement",void 0),i([ke({attribute:"arrow-padding",type:Number})],fa.prototype,"arrowPadding",void 0),i([ke({type:Boolean})],fa.prototype,"flip",void 0),i([ke({attribute:"flip-fallback-placements",converter:{fromAttribute:e=>e.split(" ").map((e=>e.trim())).filter((e=>""!==e)),toAttribute:e=>e.join(" ")}})],fa.prototype,"flipFallbackPlacements",void 0),i([ke({attribute:"flip-fallback-strategy"})],fa.prototype,"flipFallbackStrategy",void 0),i([ke({type:Object})],fa.prototype,"flipBoundary",void 0),i([ke({attribute:"flip-padding",type:Number})],fa.prototype,"flipPadding",void 0),i([ke({type:Boolean})],fa.prototype,"shift",void 0),i([ke({type:Object})],fa.prototype,"shiftBoundary",void 0),i([ke({attribute:"shift-padding",type:Number})],fa.prototype,"shiftPadding",void 0),i([ke({attribute:"auto-size"})],fa.prototype,"autoSize",void 0),i([ke()],fa.prototype,"sync",void 0),i([ke({type:Object})],fa.prototype,"autoSizeBoundary",void 0),i([ke({attribute:"auto-size-padding",type:Number})],fa.prototype,"autoSizePadding",void 0),i([ke({attribute:"hover-bridge",type:Boolean})],fa.prototype,"hoverBridge",void 0),i([ke({type:Boolean})],fa.prototype,"narrowFloatBottom",void 0),i([Ce()],fa.prototype,"isnarrow",void 0);class va extends Ue{constructor(){super(...arguments),this.current=!1,this.selected=!1,this.hasHover=!1,this.value="",this.disabled=!1}connectedCallback(){super.connectedCallback(),this.setAttribute("role","option"),this.setAttribute("aria-selected","false")}handleDefaultSlotChange(){customElements.whenDefined("pu-select").then((()=>{const e=this.closest("pu-select");e&&e.handleDefaultSlotChange()}))}handleMouseEnter(){this.hasHover=!0}handleMouseLeave(){this.hasHover=!1}handleDisabledChange(){this.setAttribute("aria-disabled",this.disabled?"true":"false")}handleSelectedChange(){this.setAttribute("aria-selected",this.selected?"true":"false")}handleValueChange(){"string"!=typeof this.value&&(this.value=String(this.value)),this.value.includes(" ")&&(console.error("Option values cannot include a space. All space
7141s have been replaced with underscores.",this),this.value=this.value.replace(/ /g,"_"))}getTextLabel(){const e=this.childNodes;let t="";return[...e].forEach((e=>{e.nodeType===Node.ELEMENT_NODE&&(e.hasAttribute("slot")||(t+=e.textContent)),e.nodeType===Node.TEXT_NODE&&(t+=e.textContent)})),t.trim()}render(){return $` 7142 <div 7143 part="base option" 7144 class=${J({option:!0,"option--current":this.current,"option--disabled":this.disabled,"option--selected":this.selected,"option--hover":this.hasHover})} 7145 @mouseenter=${this.handleMouseEnter} 7146 @mouseleave=${this.handleMouseLeave} 7147 > 7148 ${this.selected?$`<pu-icon 7149 part="icon" 7150 exportparts="base,svg" 7151 class="option__check" 7152 name="check" 7153 aria-hidden="true" 7154 ></pu-icon>`:""} 7155 <slot 7156 part="prefix" 7157 name="prefix" 7158 class="option__prefix" 7159 ></slot> 7160 <slot 7161 part="label" 7162 class="option__label" 7163 @slotchange=${this.handleDefaultSlotChange} 7164 ></slot> 7165 <slot 7166 part="suffix" 7167 name="suffix" 7168 class="option__suffix" 7169 ></slot> 7170 </div> 7171 `}}function ya(e){const t=["button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","a[href]",'[tabindex]:not([tabindex="-1"])'].join(", ");return Array.from(e.querySelectorAll(t)).filter((e=>function(e){const t=window.getComputedStyle(e);if("none"===t.display||"hidden"===t.visibility)return!1;if("true"===e.getAttribute("aria-hidden"))return!1;const o=e.getAttribute("tabindex");if(null!==o)return"-1"!==o;const i=e.tagName.toLowerCase();return"button"===i||"input"===i||"select"===i||"textarea"===i?!e.hasAttribute("disabled"):!("a"!==i||!e.hasAttribute("href"))}(e)))}va.styles=[Me,Ri],va.dependencies={"pu-icon":Ge,"pu-popup":fa},i([Se(".option__label")],va.prototype,"defaultSlot",void 0),i([Ce()],va.prototype,"current",void 0),i([Ce()],va.prototype,"selected",void 0),i([Ce()],va.prototype,"hasHover",void 0),i([ke({reflect:!0})],va.prototype,"value",void 0),i([ke({type:Boolean,reflect:!0})],va.prototype,"disabled",void 0),i([Te("disabled")],va.prototype,"handleDisabledChange",null),i([Te("selected")],va.prototype,"handleSelectedChange",null),i([Te("value")],va.prototype,"handleValueChange",null),va.define("pu-option");const wa=[te` 7172 :host { 7173 --color-background: var(--pu-overlay-color-background, var(--pu-color-background, rgb(255, 255, 255))); 7174 --color-foreground: var(--pu-overlay-color-foreground, var(--pu-color-foreground, inherit)); 7175 } 7176 .overlay { 7177 position: fixed; 7178 z-index: var(--pu-overlay-layer-index, var(--layer-index, 500)); 7179 pointer-events: all; 7180 display: none; 7181 justify-content: center; 7182 align-items: center; 7183 inset: 0; 7184 margin: 0; 7185 height: 100%; 7186 width: 100%; 7187 max-width: 100%; 7188 max-height: 100%; 7189 box-sizing: border-box; 7190 overflow-y: auto; 7191 padding: var(--pu-overlay-space-padding); 7192 border: none !important; 7193 color: rgb(from var(--color-foreground) r g b); 7194 background-color: rgb( 7195 from var(--color-background) r g b / calc(alpha * var(--pu-overlay-opacity-background, 1)) 7196 ); 7197 background-image: var(--pu-overlay-background-image); 7198 background-size: var(--pu-overlay-background-size, cover); 7199 background-position: var(--pu-overlay-background-position, center); 7200 background-repeat: var(--pu-overlay-background-repeat, no-repeat); 7201 scrollbar-width: thin; 7202 scrollbar-color: var(--pu-scrollbar-thumb-color, #888) var(--pu-scrollbar-track-color, #f1f1f1); 7203 } 7204 7205 .overlay[open], 7206 .overlay.overlay--open { 7207 display: flex; 7208 pointer-events: auto; 7209 } 7210 7211 .overlay__inner { 7212 pointer-events: all; 7213 position: relative; 7214 } 7215 7216 .overlay__inner::-webkit-scrollbar {
7217 width: 8px; 7218 } 7219 7220 .overlay__inner::-webkit-scrollbar-track { 7221 background: var(--pu-scrollbar-track-color, #f1f1f1); 7222 } 7223 7224 .overlay__inner::-webkit-scrollbar-thumb { 7225 background: var(--pu-scrollbar-thumb-color, #888); 7226 border-radius: 4px; 7227 } 7228 7229 .overlay__inner::-webkit-scrollbar-thumb:hover { 7230 background: var(--pu-scrollbar-thumb-color-hover, #555); 7231 } 7232 7233 .close-button__container, 7234 .alt-close-button__container { 7235 --pu-icon-color-background: var(--pu-overlay-color-foreground); 7236 --pu-icon-opacity-background: var(--pu-overlay-opacity-background); 7237 --pu-icon-color-foreground: var(--pu-overlay-color-background); 7238 } 7239 7240 .close-button__container { 7241 position: fixed; 7242 top: 1em; 7243 right: 1em; 7244 z-index: 10; 7245 cursor: pointer; 7246 } 7247 7248 .alt-close-button__container { 7249 position: absolute; 7250 top: 0.5em; 7251 right: 0.5em; 7252 z-index: 10; 7253 cursor: pointer; 7254 } 7255 7256 @media (max-width: 47.9975em) { 7257 .alt-close-button__container { 7258 position: fixed; 7259 top: 1em; 7260 right: 1em; 7261 } 7262 } 7263 7264 .close-button__container > ::slotted(*) { 7265 pointer-events: auto; 7266 } 7267 7268 .close-button__container * { 7269 pointer-events: none; 7270 } 7271`,te` 7272 /** Alignment API - based on content overflow detection */ 7273 .overlay--align-top { 7274 align-items: flex-start; 7275 } 7276`];class xa extends Ue{constructor(){super(),this.id="",this.layerIndex=500,this.alignTop=!1,this.isOpen=!1,this.focusTrapListeners=[],this.hasCloseButtonSlot=new Xe(this,"close-button"),this.hasAltCloseButtonSlot=new Xe(this,"alt-close-button"),this.originalBodyOverflow="",this.lastActiveElement=null,this.checkOverlayAlignment=()=>{if(this.overlayElement){const e=this.overlayElement.scrollHeight>this.overlayElement.clientHeight;this.alignTop!==e&&(this.alignTop=e)}},this.show=()=>{this.openOverlay()},this.hide=()=>{this.closeOverlay()},this.debouncedCheckAlignment=ti((()=>{this.checkOverlayAlignment()}),50)}connectedCallback(){super.connectedCallback(),window.addEventListener("overlay-open",this.show),window.addEventListener("overlay-close",this.hide)}firstUpdated(e){super.firstUpdated(e),this.overlayElement&&this.debouncedCheckAlignment&&(this.resizeObserver=new ResizeObserver(this.debouncedCheckAlignment),this.resizeObserver.observe(this.overlayElement),window.addEventListener("resize",this.debouncedCheckAlignment))}disconnectedCallback(){this.isOpen&&this.closeOverlay(),window.removeEventListener("overlay-open",this.show),window.removeEventListener("overlay-close",this.hide),this.resizeObserver&&(this.overlayElement&&this.resizeObserver.unobserve(this.overlayElement),this.resizeObserver.disconnect(),this.resizeObserver=void 0),this.debouncedCheckAlignment&&window.removeEventListener("resize",this.debouncedCheckAlignment),super.disconnectedCallback()}async openOverlay(){if(this.overlayElement&&!this.isOpen){this.lastActiveElement=document.activeElement,this.originalBodyOverflow=document.body.style.overflow,document.body.style.overflow="hidden",this.overlayElement.style.visibility="hidden",this.overlayElement.setAttribute("open",""),this.overlayElement.classList.add("overlay--open"),this.checkOverlayAlignment(),await this.updateComplete,this.overlayElement.style.visibility="visible";const e=function(e){const t=ya(e);return t.length>0?t[0]:null}(this.overlayElement);e?e.focus():this.overlayElement.focus(),this.setupFocusTrap(),this.isOpen=!0,this.emit("pu-show")}}closeOverlay(){this.overlayElement&&this.isOpen&&(this.overlayElement.removeAttribute("open"),this.overlayElement.classList.remove("overlay--open"),this.removeFocusTrap(),document.body.style.overflow=this.originalBodyOverflow,this.lastActiveElement?.focus(),this.isOpen=!1,this.emit("pu-hide"))}handleKeyDown(e){"Escape"===e.key&&this.closeOverlay()}setupFocusTrap(){if(!this.overlayElement)return;const e=e=>{if("Tab"!==e.key)return;const t=ya(this.overlayElement);if(0===t.length)return;const o=t[0],i=t[t.length-1];e.shiftKey?document.activeElement===o&&(e.preventDefault(),i.focus()):document.activeElement===i&&(e.preventDefault(),o.focus())};this.overlayElement.addEventListener("keydown",e),this.focusTrapListeners.push((()=>{this.overlayElement?.removeEventListener("keydown",e)}))}
7276removeFocusTrap(){this.focusTrapListeners.forEach((e=>e())),this.focusTrapListeners=[]}overlayClasses(){const e={};return this.alignTop&&(e["overlay--align-top"]=!0),e}render(){const e=this.overlayClasses();return $` 7277 <div 7278 part="base overlay" 7279 class="overlay ${J(e)}" 7280 id=${this.id} 7281 role="dialog" 7282 aria-modal="true" 7283 aria-label=${this.label||z} 7284 tabindex="-1" 7285 style=${He({"--layer-index":this.layerIndex})} 7286 @keydown="${this.handleKeyDown}"> 7287 ${this.hasCloseButtonSlot.test("close-button")?$` 7288 <div 7289 part="close" 7290 class="close-button__container" 7291 @click="${this.closeOverlay}"> 7292 <slot name="close-button"></slot> 7293 </div> 7294 `:null} 7295 <div 7296 part="content" 7297 class="overlay__inner"> 7298 ${this.hasAltCloseButtonSlot.test("alt-close-button")?$` 7299 <div 7300 part="alt-close" 7301 class="alt-close-button__container" 7302 @click="${this.closeOverlay}"> 7303 <slot name="alt-close-button"></slot> 7304 </div> 7305 `:null} 7306 <slot name="content"></slot> 7307 </div> 7308 </div> 7309 `}}xa.styles=[Me,wa],i([ke()],xa.prototype,"id",void 0),i([ke()],xa.prototype,"label",void 0),i([ke({type:Number})],xa.prototype,"layerIndex",void 0),i([Ce()],xa.prototype,"alignTop",void 0),i([Ce()],xa.prototype,"isOpen",void 0),i([Se(".overlay")],xa.prototype,"overlayElement",void 0),xa.define("pu-overlay");const _a=[te` 7310 :host { 7311 display: inline-flex; 7312 --color-foreground: var(--pu-popover-color-foreground, var(--pu-color-foreground)); 7313 --color-background: var(--pu-popover-color-background, var(--pu-color-background)); 7314 --pu-color-foreground: var(--pu-popover-color-foreground, inherit); 7315 } 7316 .popover { 7317 position: relative; 7318 } 7319 7320 .popover__content { 7321 color: rgb(from var(--color-foreground) r g b); 7322 background-color: rgb(from var(--color-background) r g b / alpha); 7323 } 7324 7325 .popover__content-inner { 7326 display: flex; 7327 flex-direction: column; 7328 justify-content: start; 7329 align-items: center; 7330 text-align: center; 7331 gap: var(--pu-popover-content-spacing-gap, 1.25em); 7332 } 7333 7334 .popover__content { 7335 position: absolute; 7336 left: initial; 7337 bottom: initial; 7338 top: 0; 7339 right: 0; 7340 border-style: solid; 7341 border-color: var(--pu-popover-border-color, rgb(from var(--pu-color-foreground) r g b / 0.3)); 7342 border-width: var(--pu-popover-border-width, 0.0625em); 7343 border-radius: var(--pu-popover-border-radius); 7344 box-shadow: -0.1875em 0.1875em 0.5em 0 rgb(0, 0, 0, 0.3); 7345 padding: var(--pu-popover-space-padding, 1.5em); 7346 width: max-content; 7347 7348 --pu-font-body-scale: 0.8; 7349 } 7350 7351 .popover__content-inner { 7352 gap: var(--pu-popover-content-spacing-gap, 1em); 7353 width: fit-content; 7354 } 7355`];class ka extends Ue{get icon(){return this.iconName}set icon(e){at(this,"icon","iconName",(()=>"user"),e)}constructor(){super(),this.iconName="ellipsis-vertical",this.position="bottom-center",this.distance=0,this.disabled=!1,this.open=!1,this._contentStyles={top:"0px",left:"0px",visibility:"hidden",position:"absolute"},this._handleOutsideClick=e=>{e.target.closest(".popover__open-button")||e.composedPath().includes(this)||(this.open=!1)},this.addEventListener("focusout",this._focusOut)}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("click",this._handleOutsideClick)}async handleOpenChange(){this.open?(window.addEventListener("click",this._handleOutsideClick),await this.updateComplete,this.updatePosition()):window.removeEventListener("click",this._handleOutsideClick)}updatePosition(){if(!this._contentElement||!this._containerElement)return;const e=this._containerElement.getBoundingClientRect(),t=this._contentElement.getBoundingClientRect(),o=e.width,i=e.he
7355ight,r=t.width,a=t.height;let s=0,n=0;const l=this.distance;switch(this.position){case"top-left":s=-a-l,n=o-r;break;case"top-center":s=-a-l,n=o/2-r/2;break;case"top-right":s=-a-l,n=0;break;case"bottom-left":s=i+l,n=o-r;break;case"bottom-center":s=i+l,n=o/2-r/2;break;case"bottom-right":s=i+l,n=0;break;case"left":s=i/2-a/2,n=-r-l;break;case"right":s=i/2-a/2,n=o+l}this._contentStyles={top:`${s}px`,left:`${n}px`,visibility:"visible",position:"absolute"}}closePopover(){this.open=!1}openPopover(){this.open=!0}_focusOut(e){e.relatedTarget&&this.contains(e.relatedTarget)||(this.open=!1)}_togglePopover(){this.open=!this.open}popovertemplate(){return this.open?$` 7356 <div 7357 part="container" 7358 class="popover__content" 7359 style=${He(this._contentStyles)} 7360 > 7361 <div 7362 part="content" 7363 class="popover__content-inner" 7364 > 7365 <slot></slot> 7366 </div> 7367 </div> 7368 `:z}render(){return $` 7369 <div 7370 part="base popover" 7371 class="${J({popover:!0,"popover--open":this.open})}" 7372 > 7373 <pu-button-icon 7374 part="open" 7375 exportparts="base,icon,svg" 7376 class="popover__open-button" 7377 name="${this.iconName}" 7378 iconSize="large" 7379 @click=${this._togglePopover} 7380 ?disabled="${this.disabled}" 7381 > 7382 </pu-button-icon> 7383 ${this.popovertemplate()} 7384 </div> 7385 `}}ka.styles=[Me,_a],ka.dependencies={"pu-button-icon":jt},i([ke()],ka.prototype,"iconName",void 0),i([ke()],ka.prototype,"position",void 0),i([ke({type:Number})],ka.prototype,"distance",void 0),i([ke({type:Boolean})],ka.prototype,"disabled",void 0),i([ke({type:Boolean,reflect:!0})],ka.prototype,"open",void 0),i([Ce()],ka.prototype,"_contentStyles",void 0),i([Se(".popover__content")],ka.prototype,"_contentElement",void 0),i([Se(".popover")],ka.prototype,"_containerElement",void 0),i([ke()],ka.prototype,"icon",null),i([Te("open",{waitUntilFirstUpdate:!0})],ka.prototype,"handleOpenChange",null),ka.define("pu-popover"),fa.define("pu-popup");const Ca=[te` 7386 :host { 7387 --color: var(--pu-color-foreground, inherit); 7388 --line-height: var(--pu-text-leading, inherit); 7389 --spacing: var(--pu-text-tracking, inherit); 7390 } 7391 7392 ::slotted(a[href^='http']) { 7393 color: inherit; 7394 text-underline-offset: 0.3em; 7395 } 7396 7397 .rich-text { 7398 display: block; 7399 color: var(--color); 7400 line-height: var(--line-height, inherit); 7401 letter-spacing: var(--spacing, inherit); 7402 column-gap: var(--pu-rich-text-columns-gap, var(--gap, 1.5em)); 7403 margin-bottom: 0; 7404 } 7405`,te` 7406 /* State API Classes */ 7407 .txt--break-word { 7408 word-break: break-word; 7409 } 7410 7411 /* Column Layout API Classes */ 7412 @media screen and (min-width: 48.06em) { 7413 .txt--columns-2 { 7414 column-count: var(--pu-rich-text-columns, 2); 7415 } 7416 7417 .txt--columns-3 { 7418 column-count: var(--pu-rich-text-columns, 3); 7419 } 7420 } 7421`,et,tt,ot,it];var $a=te` 7422 :host { 7423 --border-radius: var(--pu-skeleton-border-radius); 7424 --color: var(--pu-skeleton-color-foreground); 7425 --sheen-color: var(--pu-skeleton-color-sheen); 7426 7427 display: block; 7428 position: relative; 7429 } 7430 7431 .skeleton { 7432 display: flex; 7433 width: 100%; 7434 height: 100%; 7435 min-height: 1rem; 7436 } 7437 7438 .skeleton__indicator { 7439 flex: 1 1 auto; 7440 background: var(--color); 7441 border-radius: var(--border-radius); 7442 } 7443 7444 .skeleton--sheen .skeleton__indicator { 7445 background: linear-gradient(270deg, var(--sheen-color), var(--color), var(--color), var(--sheen-color)); 7446 background-size: 400% 100%; 7447 animation: sheen 8s ease-in-out infinite; 7448 } 7449 7450 .skeleton--pulse .skeleton__indicator { 7451 animation: pulse 2s ease-in-out 0.5s infinite; 7452 } 7453 7454 /* Forced colors mode */ 7455 @media (forced-colors: active) { 7456 :host { 7457 --color: GrayText; 7458 } 7459 } 7460
7461 @keyframes sheen { 7462 0% { 7463 background-position: 200% 0; 7464 } 7465 to { 7466 background-position: -200% 0; 7467 } 7468 } 7469 7470 @keyframes pulse { 7471 0% { 7472 opacity: 1; 7473 } 7474 50% { 7475 opacity: 0.4; 7476 } 7477 100% { 7478 opacity: 1; 7479 } 7480 } 7481`;class Sa extends Ue{constructor(){super(...arguments),this.effect="none"}render(){return $` 7482 <div 7483 part="base" 7484 class=${J({skeleton:!0,"skeleton--pulse":"pulse"===this.effect,"skeleton--sheen":"sheen"===this.effect})} 7485 > 7486 <div 7487 part="indicator" 7488 class="skeleton__indicator" 7489 ></div> 7490 </div> 7491 `}}Sa.styles=[Me,$a],i([ke()],Sa.prototype,"effect",void 0);class za extends Ue{constructor(){super(...arguments),this.variant="bodyMd",this.lineHeight="normal",this.columns=1,this.breakWord=!1}render(){return $` 7492 <div 7493 part="base rich-text" 7494 class="rich-text${J({[`txt--${this.variant}`]:!0,[`txt--line-height-${this.lineHeight}`]:this.lineHeight,[`txt--columns-${this.columns}`]:this.columns>1,[`txt--align-${this.textAlign}`]:void 0!==this.textAlign,[`txt--narrow-align-${this.textAlignNarrow}`]:void 0!==this.textAlignNarrow,[`txt--narrow-align-${this.textAlign}`]:!this.textAlignNarrow,"txt--break-word":!!this.breakWord})}" 7495 style=${He({"--gap":this.columnsSpacing?parseInt(this.columnsSpacing)/16+"em":void 0})} 7496 > 7497 <slot></slot> 7498 </div> 7499 `}}za.styles=[Me,Ca],za.dependencies={"pu-skeleton":Sa},i([ke()],za.prototype,"variant",void 0),i([ke()],za.prototype,"lineHeight",void 0),i([ke()],za.prototype,"textAlign",void 0),i([ke()],za.prototype,"textAlignNarrow",void 0),i([ke({type:Number})],za.prototype,"columns",void 0),i([ke()],za.prototype,"columnsSpacing",void 0),i([ke({type:Boolean})],za.prototype,"breakWord",void 0),za.define("pu-rich-text");class Aa extends Ue{constructor(){super(...arguments),this.variant="solid",this.disabled=!1,this.deprecatedPropertyMap=[{old:"buttonStyle",new:"variant",defaultValue:"solid"}],this.hasFocus=!1,this.checked=!1}get buttonStyle(){return this.variant}set buttonStyle(e){this._handleDeprecated("buttonStyle",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}connectedCallback(){super.connectedCallback(),this.setAttribute("role","presentation")}handleBlur(){this.hasFocus=!1,this.emit("pu-blur")}handleFocus(){this.hasFocus=!0,this.emit("pu-focus")}handleClick(e){if(this.disabled)return e.preventDefault(),void e.stopPropagation();this.checked=!0,this.emit("pu-change")}handleInput(){this.emit("pu-input")}handleDisabledChange(){this.setAttribute("aria-disabled",this.disabled?"true":"false")}focus(e){this.input?.focus(e)}blur(){this.input?.blur()}render(){return $` 7500 <button 7501 part="${"button"+(this.checked?" button--checked":"")}" 7502 class="${J({button:!0,"button--checked":this.checked,"button--disabled":this.disabled,"button--focused":this.hasFocus,"btn--plain":"plain"===this.variant,"btn--plain-underline":"plain-underline"===this.variant,"btn--outline":"outline"===this.variant,[`btn--size-${this.size}`]:!!this.size})}" 7503 type="button" 7504 role="radio" 7505 value=${Ze(this.value)} 7506 aria-disabled=${this.disabled} 7507 aria-checked="${this.checked}" 7508 @blur=${this.handleBlur} 7509 @focus=${this.handleFocus} 7510 @input=${this.handleInput} 7511 @click="${this.handleClick}" 7512 > 7513 <span class="button__label"> 7514 <slot> Label </slot> 7515 <slot name="label"></slot> 7516 </span> 7517 </button> 7518 `}}Aa.styles=[Me,Tt],i([ke()],Aa.prototype,"value",void 0),i([ke()],Aa.prototype,"size",void 0),i([ke()],Aa.prototype,"variant",void 0),i([ke({type:Boolean,reflect:!0})],Aa.prototype,"disabled",void 0),i([ke()],Aa.prototype,"buttonStyle",null),i([Se(".button")],Aa.prototype,"input",void 0),i([Ce()],Aa.prototype,"hasFocus",void 0),i([ke({type:Boolean,reflect:!0})],Aa.prototype,"checked",void 0),i([Te("disabled",{waitUntilFirstUpdate:!0})],Aa.prototype,"handleDisabledChange",null),Aa.define("pu-radio-button"),jo.define("pu-section");const Pa=new Map,Na=new WeakMap;function Ea(e,t){return"rtl"===t.toLowerCase()?{keyframes:e.rtlKeyframes||e.keyframes,options:e.options}:e}function Ba(e,t){Pa.set(e,function(e){return e??{keyframes:[],options:{duration:0}}}(t))}function Ta(e,t,o){const i=Na.get(e);if(i?.[t])return Ea(i[t],o.dir);const r=Pa.get(t);return r?Ea(r,o.dir):{keyframes:[],options:{duration:0}}}function Ia(e,t,o="vertical",i="smooth"){const r=function(e,t){return{top:Math.round(e.getBoundingClientRect().top-t.getBoundingClientRect().top),left
7518:Math.round(e.getBoundingClientRect().left-t.getBoundingClientRect().left)}}(e,t),a=r.top+t.scrollTop,s=r.left+t.scrollLeft,n=t.scrollLeft,l=t.scrollLeft+t.offsetWidth,d=t.scrollTop,p=t.scrollTop+t.offsetHeight;"horizontal"!==o&&"both"!==o||(s<n?t.scrollTo({left:s,behavior:i}):s+e.clientWidth>l&&t.scrollTo({left:s-t.offsetWidth+e.clientWidth,behavior:i})),"vertical"!==o&&"both"!==o||(a<d?t.scrollTo({top:a,behavior:i}):a+e.clientHeight>p&&t.scrollTo({top:a-t.offsetHeight+e.clientHeight,behavior:i}))}function Ma(e,t){return new Promise((o=>{e.addEventListener(t,(function i(r){r.target===e&&(e.removeEventListener(t,i),o())}))}))}const ja=[qt,te` 7519 :host { 7520 display: block; 7521 } 7522 7523 /* The popup */ 7524 .select { 7525 flex: 1 1 auto; 7526 display: inline-flex; 7527 width: 100%; 7528 position: relative; 7529 vertical-align: middle; 7530 } 7531 7532 select[data-current-placement^='top']::part(popup) { 7533 transform-origin: bottom; 7534 } 7535 7536 select[data-current-placement^='bottom']::part(popup) { 7537 transform-origin: top; 7538 } 7539 7540 select:not(.select--disabled):hover .select__display-input { 7541 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 7542 } 7543 7544 .select:not(.select--disabled):not(.select--open).select--focused .select__combobox { 7545 background-color: rgb(from var(--pu-color-focus-background) r g b / alpha); 7546 border-color: rgb(from var(--pu-color-focus-border, inherit) r g b / alpha); 7547 box-shadow: 7548 0 0 0 0.0625em var(--pu-color-focus-background), 7549 0 0 0 0.25em var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)); 7550 } 7551 7552 .select:not(.select--disabled) .select__combobox:hover { 7553 border-color: rgb(from var(--pu-input-border-color-hover, hsl(240, 4%, 46%)) r g b / alpha); 7554 } 7555 7556 /* Combobox - main field display styles */ 7557 .select__combobox { 7558 flex: 1; 7559 display: flex; 7560 justify-content: start; 7561 align-items: center; 7562 position: relative; 7563 background-color: rgb(from var(--pu-input-color-background, hsl(0 0% 99.5%)) r g b / alpha); 7564 border-style: solid; 7565 border-width: var(--pu-input-border-width, 0.0625em); 7566 border-color: rgb( 7567 from var(--pu-input-border-color, hsl(240, 5%, 65%)) r g b / calc(alpha * var(--pu-input-opacity-border, 1)) 7568 ); 7569 border-radius: var(--pu-input-border-radius, var(--pu-border-input-size-corner-radius, 0.5em)); 7570 letter-spacing: var(--pu-input-font-tracking, 0.05em); 7571 padding-inline: var(--pu-input-space-padding); 7572 padding-block: 0; 7573 vertical-align: middle; 7574 overflow: hidden; 7575 min-height: var(--pu-input-size-height); 7576 min-width: 0; 7577 width: 100%; 7578 cursor: pointer; 7579 transition: 7580 var(--pu-transition-duration-150) color, 7581 var(--pu-transition-duration-150) border, 7582 var(--pu-transition-duration-150) box-shadow, 7583 var(--pu-transition-duration-150) background-color; 7584 } 7585 7586 /* Display input */ 7587 .select__display-input { 7588 font-family: var(--pu-text-body-family); 7589 font-size: var(--pu-input-font-size); 7590 position: relative; 7591 width: 100%; 7592 border: none; 7593 background: none; 7594 color: rgb(from var(--pu-input-color-foreground, inherit) r g b / alpha); 7595 overflow: hidden; 7596 padding: 0 var(--pu-space-200) 0 0; 7597 margin: 0; 7598 -webkit-appearance: none; 7599 cursor: inherit; 7600 } 7601 7602 .select__display-input::placeholder { 7603 color: rgb(var(--pu-input-placeholder-color-foreground, hsl(240, 4%, 46%)) r g b / alpha); 7604 } 7605 .select__display-input:focus { 7606 outline: none; 7607 } 7608 7609 /* Hidden input */ 7610 .select__value-input { 7611 position: absolute; 7612 top: 0; 7613 left: 0; 7614 width: 100%; 7615 height: 100%; 7616 padding: 0; 7617 margin: 0; 7618 opacity: 0; 7619 z-index: -1; 7620 } 7621 7622 /* Tags */ 7623 .select__tags { 7624 display: flex; 7625 flex: 1; 7626 align-items: center; 7627 flex-wrap: wrap; 7628 margin-inline-start: var(--pu-space-100, 0.25em); 7629 } 7630 .select__tags::slotted(pu-tag) { 7631 cursor: pointer !important; 7632 } 7633 7634 /* Prefix */ 7635 .select__prefix { 7636 flex: 0; 7637 display: inline-flex; 7638 align-items: center; 7639 --pu-icon-color-foreground: rgb(from var(--pu-input-icon-color-foreground, hsl(240 5.9% 10%)) r g b / alpha); 7640 } 7641 7642 /* Suffix */ 7643 .select__suffix { 7644 flex: 0; 7645 display: inline-flex; 7646 align-items: center; 7647 --pu-icon-color-foreground: rgb(from var(--pu-input-icon-color-foreground, hsl(240 5.9% 10%)) r g b / alpha); 7648 } 7649 7650 /* Clear button */ 7651 .select__clear { 7652 display: inline-flex; 7653 align-items: center; 7654 justify-content: center; 7655 font-size: inherit; 7656 border: none; 7657 background: none; 7658 padding: 0; 7659 transition: var(--pu-transition-duration-150) color; 7660 cursor: pointer; 7661 --pu-icon-color-foreground: rgb(from var(--pu-input-icon-color-foreground, hsl(240 5.9% 10%)) r g b / alpha); 7662 } 7663 .select__clear:hover { 7664 color: rgb(from var(--pu-input-icon-color-foreground-hover, hsl(0 0% 99.5%)) r g b / alpha); 7665 } 7666 .select__clear:focus { 7667 outline: none; 7668 } 7669 7670 /* Expand icon */ 7671 .select__expand-icon { 7672 flex: 0 0 auto; 7673 display: flex; 7674 align-items: center; 7675 transition: var(--pu-transition-duration-250, 0.25s) rotate ease; 7676 rotate: 0; 7677 margin-inline-start: var(--pu-space-100, 0.25em); 7678 } 7679 7680 /* Listbox */ 7681 .select__listbox { 7682 display: block; 7683 position: relative; 7684 font-family: var(--pu-text-body-family); 7685 font-size: var(--pu-text-body-size-md, 0.875em); 7686 box-shadow: var(--pu-shadow-elevation-300); 7687 background: rgb(from var(--pu-select-panel-color-background, hsl(0 0% 99.5%)) r g b / alpha); 7688 border-radius: var(--pu-input-border-radius, var(--pu-border-input-size-corner-radius, 0.25em)); 7689 padding-block: var(--pu-space-300, 0.75em); 7690 padding-inline: 0; 7691 overflow: auto;
7692 overscroll-behavior: none; 7693 max-width: var(--auto-size-available-width); 7694 max-height: var(--auto-size-available-height); 7695 } 7696 .select__listbox ::slotted(pu-divider) { 7697 --spacing: var(--pu-space-200, 0.5em); 7698 } 7699 @media (max-width: 47.9975em) { 7700 .select__listbox { 7701 padding-block: var(--pu-space-400, 0.75em); 7702 } 7703 } 7704`,te` 7705 /* State API Classes */ 7706 .select.select--disabled .select__combobox { 7707 background-color: rgb(from var(--pu-input-color-background-disabled, hsl(240, 5%, 96%)) r g b / alpha); 7708 border-color: rgb(from var(--pu-input-border-color-disabled, hsl(240, 5%, 84%), inherit) r g b / alpha); 7709 color: rgb(from var(--pu-input-color-foreground-disabled, inherit) r g b / alpha); 7710 opacity: 0.5; 7711 cursor: not-allowed; 7712 outline: none; 7713 } 7714 7715 .select--disabled .select__tags, 7716 .select--disabled .select__tags::slotted(sl-tag) { 7717 cursor: not-allowed !important; 7718 } 7719 7720 /* Boolean Property API - Open State */ 7721 .select--open .select__expand-icon { 7722 rotate: -180deg; 7723 } 7724 7725 /* Boolean Property API - narrow Float Bottom */ 7726 @media (max-width: 47.9975em) { 7727 .select.select--narrow-float-bottom .select__listbox { 7728 border-bottom-left-radius: 0; 7729 border-bottom-right-radius: 0; 7730 } 7731 } 7732 7733 /* Size API Classes - Small */ 7734 /* Use rems due to the use of the font-size property */ 7735 .select--small .select__combobox { 7736 --pu-input-font-size: var(--pu-select-font-size, var(--pu-text-body-size-xs, 0.75rem)); 7737 --pu-input-size-height: var(--pu-select-size-height, var(--pu-space-800, 2rem)); 7738 --pu-input-space-padding: var(--pu-select-space-inline-padding, var(--pu-space-300, 0.75rem)); 7739 --pu-border-input-size-corner-radius: var(--pu-select-border-radius, var(--pu-border-radius-050, 0.125rem)); 7740 } 7741 .select--small .select__clear { 7742 margin-inline-start: var(--pu-space-100, 0.25em); 7743 } 7744 .select--small .select__prefix::slotted(*) { 7745 margin-inline-end: var(--pu-space-200, 0.5em); 7746 } 7747 .select--small.select--multiple:not(.select--placeholder-visible) .select__combobox { 7748 padding-block: 0.125em; 7749 padding-inline-start: 0; 7750 } 7751 .select--small .select__tags { 7752 gap: 0.125em; 7753 } 7754 7755 /* Size API Classes - Medium */ 7756 .select--medium .select__combobox { 7757 --pu-input-font-size: var(--pu-select-font-size, var(--pu-text-body-size-sm, 0.875rem)); 7758 --pu-input-size-height: var(--pu-select-size-height, var(--pu-space-1000, 2.5rem)); 7759 --pu-input-space-padding: var(--pu-select-space-inline-padding, var(--pu-space-400, 1rem)); 7760 --pu-border-input-size-corner-radius: var(--pu-select-border-radius, var(--pu-border-radius-100, 0.25rem)); 7761 } 7762 .select--medium .select__clear { 7763 margin-inline-start: var(--pu-space-200, 0.5em); 7764 } 7765 .select--medium .select__prefix::slotted(*) { 7766 margin-inline-end: var(--pu-space-300, 0.75em); 7767 } 7768 .select--medium.select--multiple:not(.select--placeholder-visible) .select__combobox { 7769 padding-inline-start: 0; 7770 padding-block: 0.1875em; 7771 } 7772 .select--medium .select__tags { 7773 gap: 0.1875rem; 7774 } 7775 7776 /* Size API Classes - Large */ 7777 .select--large .select__combobox { 7778 --pu-input-font-size: var(--pu-select-font-size, var(--pu-text-body-size-md, 1rem)); 7779 --pu-input-size-height: var(--pu-select-size-height, var(--pu-space-1200, 3rem)); 7780 --pu-input-space-padding: var(--pu-select-space-inline-padding, var(--pu-space-500, 1.25rem)); 7781 --pu-border-input-size-corner-radius: var(--pu-select-border-radius, var(--pu-border-radius-200, 0.5rem)); 7782 } 7783 .select--large .select__clear { 7784 margin-inline-start: var(--pu-space-300, 0.75rem); 7785 } 7786 .select--large .select__prefix::slotted(*) { 7787 margin-inline-end: var(--pu-space-400, 1rem); 7788 } 7789 .select--large.select--multiple:not(.select--placeholder-visible) .select__combobox { 7790 padding-inline-start: 0; 7791 padding-block: 0.25rem; 7792 } 7793 .select--large .select__tags { 7794 gap: 0.25em; 7795 } 7796 7797 /* Boolean Property API - Fit to Content */ 7798 .select__combobox--fit-to-content .select__display-input { 7799 field-sizing: content; 7800 } 7801 7802 /* Label Position API Classes */ 7803 .select--label-inset-top:not(.select--hide-label).select--has-label.select--small .select__combobox, 7804 .select--label-inset-top:not(.select--hide-label).select--has-label.select--medium .select__combobox, 7805 .select--label-inset-top:not(.select--hide-label).select--has-label.select--large .select__combobox { 7806 height: calc(var(--pu-input-size-height) + calc(var(--pu-input-space-padding) * 1.5)); 7807 padding-top: calc(var(--pu-input-space-padding) * 1.5); 7808 } 7809 7810 /* Multiple Selection API Classes */ 7811 .select--multiple:not(.select--placeholder-visible) .select__display-input { 7812 position: absolute; 7813 z-index: -1; 7814 top: 0; 7815 left: 0; 7816 width: 100%; 7817 height: 100%; 7818 opacity: 0; 7819 } 7820`];class Oa extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,{assumeInteractionOn:["pu-blur","pu-input"]}),this.hasSlotController=new Xe(this,"help-text","label"),this.typeToSelectStr
7820ing="",this.hasFocus=!1,this.displayLabel="",this.selectedOptions=[],this.valueHasChanged=!1,this.name="",this.value="",this.defaultValue="",this.size="medium",this.placeholder="",this.fitContent=!1,this.multiple=!1,this.maxOptions=3,this.disabled=!1,this.autofocus=!1,this.clearable=!1,this.open=!1,this.label="",this.labelHidden=!1,this.placement="bottom",this.floatBottomNarrow=!1,this.positionLabel="above",this.distance=10,this.helpText="",this.form="",this.required=!1,this.deprecatedPropertyMap=[{old:"hideLabel",new:"labelHidden",defaultValue:!1},{old:"maxOptionsVisible",new:"maxOptions",defaultValue:3},{old:"mobileFloatBottom",new:"floatBottomNarrow",defaultValue:!1}],this.handleDocumentFocusIn=e=>{const t=e.composedPath();this&&!t.includes(this)&&this.hide()},this.handleDocumentKeyDown=e=>{const t=e.target,o=null!==t.closest(".select__clear"),i=null!==t.closest("pu-icon-button");if(!o&&!i){if("Escape"===e.key&&this.open&&!this.closeWatcher&&(e.preventDefault(),e.stopPropagation(),this.hide(),this.displayInput.focus({preventScroll:!0})),"Enter"===e.key||" "===e.key&&""===this.typeToSelectString)return e.preventDefault(),e.stopImmediatePropagation(),this.open?void(this.currentOption&&!this.currentOption.disabled&&(this.valueHasChanged=!0,this.multiple?this.toggleOptionSelection(this.currentOption):this.setSelectedOptions(this.currentOption),this.updateComplete.then((()=>{this.emit("pu-input"),this.emit("pu-change")})),this.multiple||(this.hide(),this.displayInput.focus({preventScroll:!0})))):void this.show();if(["ArrowUp","ArrowDown","Home","End"].includes(e.key)){const t=this.getAllOptions(),o=t.indexOf(this.currentOption);let i=Math.max(0,o);if(e.preventDefault(),!this.open&&(this.show(),this.currentOption))return;"ArrowDown"===e.key?(i=o+1,i>t.length-1&&(i=0)):"ArrowUp"===e.key?(i=o-1,i<0&&(i=t.length-1)):"Home"===e.key?i=0:"End"===e.key&&(i=t.length-1),this.setCurrentOption(t[i])}if(e.key&&1===e.key.length||"Backspace"===e.key){const t=this.getAllOptions();if(e.metaKey||e.ctrlKey||e.altKey)return;if(!this.open){if("Backspace"===e.key)return;this.show()}e.stopPropagation(),e.preventDefault(),clearTimeout(this.typeToSelectTimeout),this.typeToSelectTimeout=window.setTimeout((()=>this.typeToSelectString=""),1e3),"Backspace"===e.key?this.typeToSelectString=this.typeToSelectString.slice(0,-1):this.typeToSelectString+=e.key.toLowerCase();for(const e of t){if(e.getTextLabel().toLowerCase().startsWith(this.typeToSelectString)){this.setCurrentOption(e);break}}}}},this.handleDocumentMouseDown=e=>{const t=e.composedPath();this&&!t.includes(this)&&this.hide()}}get hideLabel(){return this.labelHidden}set hideLabel(e){this._handleDeprecated("hideLabel",e)}get maxOptionsVisible(){return this.maxOptions}set maxOptionsVisible(e){this._handleDeprecated("maxOptionsVisible",e)}get mobileFloatBottom(){return this.floatBottomNarrow}set mobileFloatBottom(e){this._handleDeprecated("mobileFloatBottom",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}get validity(){return this.valueInput.validity}get validationMessage(){return this.valueInput.validationMessage}connectedCallback(){super.connectedCallback(),setTimeout((()=>{this.handleDefaultSlotChange()})),this.open=!1}addOpenListeners(){document.addEventListener("focusin",this.handleDocumentFocusIn),document.addEventListener("keydown",this.handleDocumentKeyDown),document.addEventListener("mousedown",this.handleDocumentMouseDown),this.getRootNode()!==document&&this.getRootNode().addEventListener("focusin",this.handleDocumentFocusIn),"CloseWatcher"in window&&(this.closeWatcher?.destroy(),this.closeWatcher=new CloseWatcher,this.closeWatcher.onclose=()=>{this.open&&(this.hide(),this.displayInput.focus({preventScroll:!0}))})}removeOpenListeners(){document.removeEventListener("focusin",this.handleDocumentFocusIn),document.removeEventListener("keydown",this.handleDocumentKeyDown),document.removeEventListener("mousedown",this.handleDocumentMouseDown),this.getRootNode()!==document&&this.getRootNode().removeEventListener("focusin",this.handleDocumentFocusIn),this.closeWatcher?.destroy()}handleFocus(){this.hasFocus=!0,this.displayInput.setSelectionRange(0,0),this.emit
7820("pu-focus")}handleBlur(){this.hasFocus=!1,this.emit("pu-blur")}handleLabelClick(){this.displayInput.focus()}handleComboboxMouseDown(e){const t=e.composedPath().some((e=>e instanceof Element&&"pu-icon-button"===e.tagName.toLowerCase()));this.disabled||t||(e.preventDefault(),this.displayInput.focus({preventScroll:!0}),this.open=!this.open)}handleComboboxKeyDown(e){"Tab"!==e.key&&(e.stopPropagation(),this.handleDocumentKeyDown(e))}handleClearClick(e){e.stopPropagation(),""!==this.value&&(this.setSelectedOptions([]),this.displayInput.focus({preventScroll:!0}),this.updateComplete.then((()=>{this.emit("pu-clear"),this.emit("pu-input"),this.emit("pu-change")})))}handleClearMouseDown(e){e.stopPropagation(),e.preventDefault()}handleDefaultSlotChange(){customElements.get("wa-option")||customElements.whenDefined("wa-option").then((()=>this.handleDefaultSlotChange()));const e=this.getAllOptions(),t=this.valueHasChanged?this.value:this.defaultValue,o=Array.isArray(t)?t:[t],i=[];e.forEach((e=>i.push(e.value))),this.setSelectedOptions(e.filter((e=>o.includes(e.value))))}handleOptionClick(e){const t=e.target.closest("pu-option"),o=this.value;t&&!t.disabled&&(this.valueHasChanged=!0,this.multiple?this.toggleOptionSelection(t):this.setSelectedOptions(t),this.updateComplete.then((()=>this.displayInput.focus({preventScroll:!0}))),this.value!==o&&this.updateComplete.then((()=>{this.emit("pu-input"),this.emit("pu-change")})),this.multiple||(this.hide(),this.displayInput.focus({preventScroll:!0})))}getAllOptions(){return[...this.querySelectorAll("pu-option")]}getFirstOption(){return this.querySelector("pu-option")}numOptionsSelected(e){return 0===e?"No options selected":1===e?"1 option selected":`${e} options selected`}setCurrentOption(e){this.getAllOptions().forEach((e=>{e.current=!1,e.tabIndex=-1})),e&&(this.currentOption=e,e.current=!0,e.tabIndex=0,e.focus())}setSelectedOptions(e){const t=this.getAllOptions(),o=Array.isArray(e)?e:[e];t.forEach((e=>e.selected=!1)),o.length&&o.forEach((e=>e.selected=!0)),this.selectionChanged()}toggleOptionSelection(e,t){e.selected=!0===t||!1===t?t:!e.selected,this.selectionChanged()}selectionChanged(){const e=this.getAllOptions();if(this.selectedOptions=e.filter((e=>e.selected)),this.multiple)this.value=this.selectedOptions.map((e=>e.value)),this.placeholder&&0===this.value.length?this.displayLabel="":this.displayLabel=this.numOptionsSelected(this.selectedOptions.length);else{const e=this.selectedOptions[0];this.value=e?.value??"",this.displayLabel=e?.getTextLabel?.()??""}this.updateComplete.then((()=>{this.formControlController.updateValidity()}))}handleInvalid(e){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(e)}handleDisabledChange(){this.disabled&&(this.open=!1,this.handleOpenChange())}handleValueChange(){const e=this.getAllOptions(),t=Array.isArray(this.value)?this.value:[this.value];this.setSelectedOptions(e.filter((e=>t.includes(e.value))))}async handleOpenChange(){if(this.open&&!this.disabled){this.setCurrentOption(this.selectedOptions[0]||this.getFirstOption()),this.emit("pu-show"),this.addOpenListeners(),await Ee(this),this.listbox.hidden=!1,this.popup.active=!0,requestAnimationFrame((()=>{this.setCurrentOption(this.currentOption)}));const{keyframes:e,options:t}=Ta(this,"select.show",{dir:"ltr"});await Pe(this.popup.popup,e,t),this.currentOption&&Ia(this.currentOption,this.listbox,"vertical","auto"),this.emit("pu-after-show")}else{this.emit("pu-hide"),this.removeOpenListeners(),await Ee(this);const{keyframes:e,options:t}=Ta(this,"select.hide",{dir:"ltr"});await Pe(this.popup.popup,e,t),this.listbox.hidden=!0,this.popup.active=!1,this.emit("pu-after-hide")}}async show(){if(!this.open&&!this.disabled)return this.open=!0,Ma(this,"pu-after-show");this.open=!1}async hide(){if(this.open&&!this.disabled)return this.open=!1,Ma(this,"pu-after-hide");this.open=!1}checkValidity(){return this.valueInput.checkValidity()}getForm(){return this.formControlController.getForm()}reportValidity(){return this.valueInput.reportValidity()}setCustomValidity(e){this.valueInput.setCustomValidity(e),this.formControlController.updateValidity()}focus(e){this.displayInput.focus(e)}blur(){this.displayInput.blur()}render(){const e=this.hasSlotController.test("label"),t=this.hasSlotController.test("help-text"),o=!!this.label||!!e,i=!!this.helpText||!!t,r=this.clearable&&!this.disabled&&this.value.length>0,a=this.placeholder&&this.value&&this.value.length<=0;return $` 7821 <div 7822 part="base select" 7823 class=${J({"form-control":!0,"form-control--small":"small"===this.size,"form-control--medium":"medium"===this.size,"form-control--large":"large"===this.size,"form-control--has-label":o,"form-control--has-help-text":i,"form-control--hide-label":this.labelHidden,[`form-control--label-${this.positionLabel}`]:!0})} 7824 > 7825 ${"above"===this.positionLabel||"inset-top"===this.positionLabel?$` 7826 <label 7827 id="label" 7828 part="label" 7829 class="${J({"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 7830 aria-hidden=${o?"false":"true"} 7831 @click=${this.handleLabelClick} 7832 > 7833 <slot name="label">${this.label}</slot> 7834 </label> 7835 `:""} 7836 <div 7837 part="input" 7838 class="form-control-input" 7839 > 7840 <pu-popup 7841 class=${J({select:!0,"select--open":this.open,"select--disabled":this.disabled,"select--multiple":this.multiple,"select--focused":this.hasFocus,"select--placeholder-visible":a,"select--top":"top"===this.placement,"select--bottom":"bottom"===this.placement,"select--small":"small"===this.size,"select--medium":"medium"===this.size,"select--large":"large"===this.size,"select--has-label":o,"select--hide-label":this.labelHidden,"select--narrow-float-bottom":this.floatBottomNarrow,[`select--label-${this.positionLabel}`]:!0})} 7842 placement=${this.placement} 7843 distance=${this.distance} 7844 flip 7845 shift 7846 sync="width" 7847 auto-size="vertical" 7848 auto-size-padding="12" 7849 ?narrowFloatBottom=${this.floatBottomNarrow} 7850 exportparts="hover-bridge,popup,arrow,overlay" 7851 > 7852 <div 7853 part="combobox" 7854 class=${J({select__combobox:!0,"select__combobox--fit-to-content":this.fitContent})} 7855 slot="anchor" 7856 @keydown=${this.handleComboboxKeyDown} 7857 @mousedown=${this.handleComboboxMouseDown} 7858 > 7859 <slot 7860 part="prefix" 7861 name="prefix" 7862 class="select__prefix" 7863 ></slot> 7864 ${"inset-left"===this.positionLabel?$` 7865 <label 7866 id="label" 7867 part="label" 7868 class="${J({"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 7869 aria-hidden=${o?"false":"true"} 7870 @click=${this.handleLabelClick} 7871 > 7872 <slot name="label">${this.label}</slot> 7873 </label> 7874 `:""} 7875 <input 7876 part="display" 7877 class="select__display-input" 7878 type="text" 7879 placeholder=${this.placeholder} 7880 .disabled=${this.disabled} 7881 .value=${this.displayLabel} 7882 autocomplete="off" 7883 spellcheck="false" 7884 autocapitalize="off" 7885 ?autofocus=${this.autofocus} 7886 readonly 7887 aria-controls="listbox"
7888 aria-expanded=${this.open?"true":"false"} 7889 aria-haspopup="listbox" 7890 aria-labelledby="label" 7891 aria-disabled=${this.disabled?"true":"false"} 7892 aria-describedby="help-text" 7893 role="combobox" 7894 tabindex="0" 7895 @focus=${this.handleFocus} 7896 @blur=${this.handleBlur} 7897 /> 7898 <input 7899 class="select__value-input" 7900 type="text" 7901 ?disabled=${this.disabled} 7902 ?required=${this.required} 7903 .value=${Array.isArray(this.value)?this.value.join(", "):this.value} 7904 tabindex="-1" 7905 aria-hidden="true" 7906 @focus=${()=>this.focus()} 7907 @invalid=${this.handleInvalid} 7908 /> 7909 ${r?$` 7910 <button 7911 part="clear" 7912 class="select__clear" 7913 type="button" 7914 aria-label="Clear entry" 7915 @mousedown=${this.handleClearMouseDown} 7916 @click=${this.handleClearClick} 7917 tabindex="-1" 7918 > 7919 <slot name="clear-icon"> 7920 <pu-icon 7921 exportparts="base,svg" 7922 name="close" 7923 ></pu-icon> 7924 </slot> 7925 </button> 7926 `:""} 7927 <slot 7928 name="suffix" 7929 part="suffix" 7930 class="select__suffix" 7931 ></slot> 7932 <slot 7933 name="expand-icon" 7934 part="expand" 7935 class="select__expand-icon" 7936 > 7937 <pu-icon 7938 exportparts="base,svg" 7939 name="chevron-down" 7940 ></pu-icon> 7941 </slot> 7942 </div> 7943 <div 7944 part="listbox"
7945 class="select__listbox" 7946 id="listbox" 7947 role="listbox" 7948 aria-expanded=${this.open?"true":"false"} 7949 aria-multiselectable=${this.multiple?"true":"false"} 7950 aria-labelledby="label" 7951 tabindex="-1" 7952 @mouseup=${this.handleOptionClick} 7953 @slotchange=${this.handleDefaultSlotChange} 7954 > 7955 <slot></slot> 7956 </div> 7957 </pu-popup> 7958 </div> 7959 <div 7960 part="help-text" 7961 id="help-text" 7962 class="form-control__help-text" 7963 aria-hidden=${i?"false":"true"} 7964 > 7965 <slot name="help-text">${this.helpText}</slot> 7966 </div> 7967 </div> 7968 `}}Oa.styles=[Me,ja],Oa.dependencies={"pu-icon":Ge,"pu-popup":fa},i([Se(".select")],Oa.prototype,"popup",void 0),i([Se(".select__combobox")],Oa.prototype,"combobox",void 0),i([Se(".select__display-input")],Oa.prototype,"displayInput",void 0),i([Se(".select__value-input")],Oa.prototype,"valueInput",void 0),i([Se(".select__listbox")],Oa.prototype,"listbox",void 0),i([Ce()],Oa.prototype,"hasFocus",void 0),i([Ce()],Oa.prototype,"displayLabel",void 0),i([Ce()],Oa.prototype,"currentOption",void 0),i([Ce()],Oa.prototype,"selectedOptions",void 0),i([Ce()],Oa.prototype,"valueHasChanged",void 0),i([ke()],Oa.prototype,"name",void 0),i([ke({converter:{fromAttribute:e=>e.split(" "),toAttribute:e=>e.join(" ")}})],Oa.prototype,"value",void 0),i([Ft()],Oa.prototype,"defaultValue",void 0),i([ke({reflect:!0})],Oa.prototype,"size",void 0),i([ke()],Oa.prototype,"placeholder",void 0),i([ke({type:Boolean})],Oa.prototype,"fitContent",void 0),i([ke({type:Boolean,reflect:!0})],Oa.prototype,"multiple",void 0),i([ke({attribute:"max-options",type:Number})],Oa.prototype,"maxOptions",void 0),i([ke({type:Boolean,reflect:!0})],Oa.prototype,"disabled",void 0),i([ke({type:Boolean})],Oa.prototype,"autofocus",void 0),i([ke({type:Boolean})],Oa.prototype,"clearable",void 0),i([ke({type:Boolean,reflect:!0})],Oa.prototype,"open",void 0),i([ke()],Oa.prototype,"label",void 0),i([ke({type:Boolean})],Oa.prototype,"labelHidden",void 0),i([ke({reflect:!0})],Oa.prototype,"placement",void 0),i([ke({type:Boolean})],Oa.prototype,"floatBottomNarrow",void 0),i([ke()],Oa.prototype,"positionLabel",void 0),i([ke({type:Number})],Oa.prototype,"distance",void 0),i([ke()],Oa.prototype,"helpText",void 0),i([ke({reflect:!0})],Oa.prototype,"form",void 0),i([ke({type:Boolean,reflect:!0})],Oa.prototype,"required",void 0),i([ke({type:Boolean})],Oa.prototype,"hideLabel",null),i([ke({attribute:"max-options-visible",type:Number})],Oa.prototype,"maxOptionsVisible",null),i([ke({type:Boolean})],Oa.prototype,"mobileFloatBottom",null),i([Te("disabled",{waitUntilFirstUpdate:!0})],Oa.prototype,"handleDisabledChange",null),i([Te("value",{waitUntilFirstUpdate:!0})],Oa.prototype,"handleValueChange",null),i([Te("open",{waitUntilFirstUpdate:!0})],Oa.prototype,"handleOpenChange",null),Ba("select.show",{keyframes:[{opacity:0,scale:.9},{opacity:1,scale:1}],options:{duration:100,easing:"ease"}}),Ba("select.hide",{keyframes:[{opacity:1,scale:1},{opacity:0,scale:.9}],options:{duration:100,easing:"ease"}}),Oa.define("pu-select");if(!("onscrollend"in window)){const ts=new Event("scrollend"),os=new Set;document.addEventListener("touchstart",(e=>{for(let t of e.changedTouches)os.add(t.identifier)}),{passive:!0}),document.addEventListener("touchend",(e=>{for(let t of e.changedTouches)os.delete(t.identifier)}),{passive:!0});let is=new WeakMap;function rs(e,t,o){let i=e[t];e[t]=function(){let e=Array.prototype.slice.apply(arguments,[0]);i.apply(this,e),e.unshift(i),o.apply(this,e)}}function as(e,t){if("scroll"!=t&&"scrollend"!=t)return;let o=this,i=is.get(o);if(void 0===i){let t=0;i={scrollListener:e=>{clearTimeout(t),t=setTimeout((()=>{os.size?setTimeout(i.scrollListener,100):(o.dispatchEvent(ts),t=0)}),100)},listeners:0},e.apply(o,["scroll",i.scrollListener]),is.set(o,i)}i.listeners++}function ss(e,t,o){if("scroll"!=t&&"scrollend"!=t)return;let i=this,r=is.get(i);void 0!==r&&(r[t]--,--r.listeners>0||(e.apply(i,["scroll",r.scrollListener]),is.delete(i)))}rs(Element.prototype,"addEventListener",as),rs(window,"addEventListener",as),rs(document,"addEventListener",as),rs(Element.prototype,"removeEventListener",ss),rs(window,"removeEventListener",ss),rs(document,"removeEventListener",ss)}const La=[te` 7969 /* Slide component host */ 7970 :host { 7971 display: block; 7972 } 7973 7974 /* Slide container foundation */ 7975 .slide { 7976 height: 100%; 7977 } 7978`,te` 7979 /* Boolean Property API - Fill height behavior for grid items */ 7980 .grid__item--fill-height ::slotted(*) { 7981 height: 100%; 7982 } 7983`];class Ha extends Ue{constructor(){super(...arguments),this.sliderMode="slider",this.active=!1,this.get
7983SlideContent=()=>this._slideContents}get contentType(){return this.sliderMode}set contentType(e){at(this,"contentType","sliderMode",(()=>"slider"),e)}content(){return"slider"===this.sliderMode?$` 7984 <div 7985 part="base slide" 7986 class="slide grid__item slide grid__item--fill-height" 7987 role="listitem" 7988 > 7989 <slot></slot> 7990 <slot name="content"></slot> 7991 </div> 7992 `:$` 7993 <div 7994 part="base slide" 7995 class="slide grid__item" 7996 role="group" 7997 aria-roledescription="slide" 7998 aria-hidden="false" 7999 > 8000 <slot></slot> 8001 <slot name="content"></slot> 8002 </div> 8003 `}render(){return $` ${this.content()} `}}function*Va(e,t){if(void 0!==e){let o=0;for(const i of e)yield t(i,o++)}}function*Da(e,t,o=1){const i=void 0===t?0:e;t??=e;for(let e=i;o>0?e<t:t<e;e+=o)yield e}Ha.styles=[Me,La],i([ke()],Ha.prototype,"sliderMode",void 0),i([ke()],Ha.prototype,"contentType",null),i([ke({type:Boolean})],Ha.prototype,"active",void 0),i([Ae({slot:"content"})],Ha.prototype,"_slideContents",void 0);const Ra=[te` 8004 :host { 8005 color: rgb(from var(--pu-color-foreground, inherit) r g b); 8006 } 8007 8008 .slider-controls { 8009 display: flex; 8010 justify-content: center; 8011 align-items: center; 8012 gap: 1.5em; 8013 padding: var(--pu-space-200, 0.5em) 0; 8014 font-family: var(--pu-text-body-family, Roboto, Arial, Helvetica, sans-serif); 8015 margin-top: var(--pu-space-400); 8016 } 8017 @media screen and (min-width: 48em) { 8018 .slider-controls { 8019 gap: 1em; 8020 } 8021 } 8022 8023 /* Counter foundation styling */ 8024 .slider-counter { 8025 display: flex; 8026 align-items: center; 8027 justify-content: center; 8028 font-size: var(--pu-text-body-size-xs, 0.75em); 8029 font-weight: var(--pu-font-weight-300, 300); 8030 } 8031 8032 .slider-counter-pre { 8033 padding: 0 var(--pu-space-200, 0.5em); 8034 } 8035 8036 /* Counter link foundation */ 8037 .slider-counter__link { 8038 font-weight: var(--pu-font-weight-300, 300); 8039 padding: var(--pu-space-300, 0.75em) var(--pu-space-200, 0.5em); 8040 } 8041 @media screen and (min-width: 48em) { 8042 .slider-counter__link { 8043 font-weight: var(--pu-font-weight-300, 300); 8044 padding: var(--pu-space-300, 0.75em); 8045 } 8046 } 8047 8048 /* Dot foundation styling */ 8049 .slider-counter__link .dot { 8050 display: block; 8051 background-color: transparent; 8052 border-radius: 50%; 8053 padding: 0; 8054 width: var(--pu-space-200, 0.5em); 8055 height: var(--pu-space-200, 0.5em); 8056 border: 0.06em solid rgb(from var(--pu-color-foreground, currentColor) r g b / 0.5); 8057 } 8058 8059 .slider-counter__link.link { 8060 cursor: pointer; 8061 display: inline-block; 8062 border: none; 8063 box-shadow: none; 8064 color: rgb(from var(--pu-link-color-foreground, var(--pu-color-foreground, currentColor)) r g b / alpha); 8065 background-color: transparent; 8066 font-size: var(--pu-text-body-size-sm, 0.875em); 8067 text-underline-offset: 0.25em; 8068 } 8069 .slider-counter__link.link:hover { 8070 text-decoration: underline; 8071 } 8072 .slider-counter__link.link--plain { 8073 text-decoration: none; 8074 } 8075 .slider-counter__link.link--active { 8076 font-weight: var(--pu-font-weight-500, 500); 8077 text-decoration: underline; 8078 } 8079`,te` 8080 /* Boolean Property API - Active state for dots */ 8081 .slider-counter__link--active .dot { 8082 background-color: rgb(from var(--pu-color-foreground, currentColor) r g b / alpha); 8083 } 8084 8085 /* Value-Based Property API - Position over (overlay controls) */ 8086 .slider-controls--over .slider-counter, 8087 .slider-controls--over .autoplay-button { 8088 display: none; 8089 } 8090 8091 .slider-controls--over { 8092 height: 0.1px; /* required by outside button intersection observer */ 8093 padding: 0; 8094 } 8095 8096 .slider-controls--over .previous-button,
8097 .slider-controls--over .next-button { 8098 top: 50%; 8099 transform: translateY(-50%); 8100 position: absolute; 8101 z-index: 499; /* under overlay z-index */ 8102 8103 --pu-slider-icon-border-radius: 0.25em; 8104 --pu-icon-color-foreground: rgb(0, 0, 0); 8105 --pu-icon-color-background: rgb(255, 255, 255, 0.8); 8106 } 8107 8108 .slider-controls--over .previous-button { 8109 left: 0.5em; 8110 } 8111 8112 .slider-controls--over .next-button { 8113 right: 0.5em; 8114 } 8115 8116 @media (max-width: 47.9975em) { 8117 .slider-controls--over .previous-button { 8118 left: -0.5em; 8119 } 8120 .slider-controls--over .next-button { 8121 right: -0.5em; 8122 } 8123 } 8124 8125 /* Value-Based Property API - Position under (standard controls) */ 8126 .slider-controls--under .previous-button, 8127 .slider-controls--under .next-button { 8128 --pu-icon-color-background: transparent; 8129 } 8130`];class Fa extends Ue{constructor(){super(...arguments),this.sliderId="",this.controlMode="counter",this.controlPosition="under",this.numberOfSlides=1,this.slidesPerPage=1,this.currentPage=1,this.autoPlay=!1,this.loopSlides=!1,this.playing=!0,this._pauseHold=!1}_dispatchControlAction(e,t){const o=e.currentTarget;if(!(o&&o.getAttribute("disabled")||("onscrollend"in window==!1&&(o.style.setProperty("pointer-events","none"),setTimeout((()=>{o.style.setProperty("pointer-events","auto")}),1100/this.slidesPerPage)),"pause-slider"!==t&&"play-slider"!==t||this.dispatchEvent(new CustomEvent(t,{bubbles:!0,composed:!0})),"previous-slide"!==t&&"next-slide"!==t||this.dispatchEvent(new CustomEvent(t,{bubbles:!0,composed:!0})),"pause-over"===t&&(this.dispatchEvent(new CustomEvent(t,{bubbles:!0,composed:!0})),this._pauseHold=this.playing),"pause-out"===t&&this.playing&&(this.dispatchEvent(new CustomEvent(t,{bubbles:!0,composed:!0})),this._pauseHold=!1),"slide-link"!==t))){const o=e.currentTarget,i=o?o.dataset.slide:null;this.dispatchEvent(new CustomEvent(t,{detail:{slideNumber:i},bubbles:!0,composed:!0}))}}validateSliderId(){if(this.sliderId&&document.getElementById(this.sliderId))return this.sliderId}renderCounterButtons(){return $` 8131 <span 8132 part="slider-counter-current" 8133 class="slider-counter-current" 8134 >${this.currentPage}</span 8135 > 8136 <span 8137 part="slider-counter-pre" 8138 class="slider-counter-pre visually-hidden" 8139 >of</span 8140 > 8141 <span 8142 part="slider-counter-total" 8143 class="slider-counter-total" 8144 >${this.numberOfSlides}</span 8145 > 8146 `}renderNumberButtons(){return $`${Va(Da(1,this.numberOfSlides+1,1),(e=>$` 8147 <button 8148 part="slider-counter-link" 8149 class="${J({"slider-counter__link":!0,"slider-counter__link--numbers":!0,link:!0,"link--active":e===this.currentPage})}" 8150 @click="${e=>this._dispatchControlAction(e,"slide-link")}" 8151 data-slide=${e} 8152 > 8153 ${e} 8154 </button> 8155 `))}`}renderDotButtons(){return $`${Va(Da(1,this.numberOfSlides+1,1),(e=>$` 8156 <button 8157 aria-label="Go to slide ${e}" 8158 part="slider-counter-link" 8159 class="${J({"slider-counter__link":!0,"slider-counter__link--dots":!0,link:!0,"slider-counter__link--active":e===this.currentPage})}" 8160 @click="${e=>this._dispatchControlAction(e,"slide-link")}" 8161 data-slide="${e}" 8162 > 8163 <span 8164 part="slider-counter-dot" 8165 class="dot" 8166 ></span> 8167 </button> 8168 `))}`}renderAutoPlayButtons(){const e=this.playing,t=e?"pause-slider":"play-slider";return $` 8169 <pu-button-icon 8170 part="autoplay-button" 8171 exportparts="button-icon,icon" 8172 class="autoplay-button" 8173 label="Pause slides" 8174 name=${e&&!this._pauseHold?"play":e&&this._pauseHold?"pause":"play-pause"} 8175 iconSize="small" 8176 @click="${e=>
8176this._dispatchControlAction(e,t)}" 8177 @mouseover="${e?e=>this._dispatchControlAction(e,"pause-over"):null}" 8178 @mouseout="${e?e=>this._dispatchControlAction(e,"pause-out"):null}" 8179 @focusin="${e?e=>this._dispatchControlAction(e,"pause-over"):null}" 8180 @focusout="${e?e=>this._dispatchControlAction(e,"pause-out"):null}" 8181 > 8182 </pu-button-icon> 8183 `}renderNavigationButton(e){const t=this.validateSliderId(),o="next"===e?this.currentPage===this.numberOfSlides:1===this.currentPage,i="next"===e?"next-slide":"previous-slide",r="under"===this.controlPosition;return $` 8184 <pu-button-icon 8185 part="${e}-button" 8186 exportparts="button-icon,icon" 8187 class="${e}-button" 8188 label=${"next"===e?"Next slide":"Previous slide"} 8189 iconSize="${"under"===this.controlPosition&&"arrows"===this.controlMode?"large":"medium"}" 8190 padding="${Ze(r?void 0:"12")}" 8191 ?disabled=${o} 8192 ?border=${!r} 8193 @click="${e=>this._dispatchControlAction(e,i)}" 8194 aria-controls="${Ze(t)}" 8195 > 8196 ${"next"===e?$` 8197 <svg 8198 slot="icon" 8199 xmlns="http://www.w3.org/2000/svg" 8200 id="chevron-right" 8201 width="1em" 8202 height="1em"
8203 viewBox="0 0 320 512" 8204 role="presentation" 8205 aria-hidden="true" 8206 focusable="false" 8207 fill="currentColor" 8208 > 8209 <path 8210 d="M310.6 256l-11.3 11.3-192 192L96 470.6 73.4 448l11.3-11.3L265.4 256 84.7 75.3 73.4 64 96 41.4l11.3 11.3 192 192L310.6 256z" 8211 /> 8212 </svg> 8213 `:$` 8214 <svg 8215 slot="icon" 8216 xmlns="http://www.w3.org/2000/svg" 8217 id="chevron-left" 8218 width="1em" 8219 height="1em" 8220 viewBox="0 0 320 512" 8221 role="presentation" 8222 aria-hidden="true" 8223 focusable="false" 8224 fill="currentColor" 8225 > 8226 <path 8227 d="M9.4 256l11.3-11.3 192-192L224 41.4 246.6 64 235.3 75.3 54.6 256 235.3 436.7 246.6 448 224 470.6l-11.3-11.3-192-192L9.4 256z" 8228 /> 8229 </svg> 8230 `} 8231 </pu-button-icon> 8232 `}render(){if(!(this.numberOfSlides<=1))return $` 8233 <div 8234 part="slider-controls" 8235 class="${J({"slider-controls":!0,"slider-controls--over":"over"===this.controlPosition,"slider-controls--under":"under"===this.controlPosition})}" 8236 > 8237 ${this.renderNavigationButton("previous")} 8238 <div 8239 part="slider-counter" 8240 class="${J({"slider-counter":!0,[`slider-counter--${this.controlMode}`]:!0})}" 8241 > 8242 ${"counter"===this.controlMode?this.renderCounterButtons():"numbers"===this.controlMode?this.renderNumberButtons():"dots"===this.controlMode?this.renderDotButtons():""} 8243 </div> 8244 ${this.renderNavigationButton("next")} ${this.autoPlay?this.renderAutoPlayButtons():""} 8245 </div> 8246 `}}Fa.styles=[Me,Ra],i([ke()],Fa.prototype,"sliderId",void 0),i([ke()],Fa.prototype,"controlMode",void 0),i([ke()],Fa.prototype,"controlPosition",void 0),i([ke({type:Number})],Fa.prototype,"numberOfSlides",void 0),i([ke({type:Number})],Fa.prototype,"slidesPerPage",void 0),i([ke({type:Number})],Fa.prototype,"currentPage",void 0),i([ke({type:Boolean})],Fa.prototype,"autoPlay",void 0),i([ke({type:Boolean})],Fa.prototype,"loopSlides",void 0),i([ke({type:Boolean})],Fa.prototype,"playing",void 0),i([ke({state:!0,type:Boolean})],Fa.prototype,"_pauseHold",void 0);const Wa=[te` 8247 /* Slider component host */ 8248 :host { 8249 display: block; 8250 width: 100%; 8251 } 8252 8253 /* Slider component structure */ 8254 .slider-component { 8255 display: flex; 8256 flex-direction: column; 8257 position: relative; 8258 margin: 0 auto; 8259 } 8260 8261 /* Slider dynamic height and transitions */ 8262 .slider { 8263 transition: height 0.3s; 8264 } 8265 8266 /* Slider scroll container foundation */ 8267 .slider { 8268 scrollbar-color: var(--pu-color-foreground, rgb(0, 0, 0, 0.04)); 8269 -ms-overflow-style: none; 8270 scrollbar-width: none; 8271 8272 @media (prefers-reduced-motion) { 8273 scroll-behavior: auto; 8274 } 8275 } 8276 @supports (color: rgb(from white r g b)) { 8277 .slider { 8278 scrollbar-color: rgb(from var(--pu-color-foreground, rgb(0, 0, 0, 0.04)) r g b / 0.04); 8279 } 8280 } 8281 8282 .slider::-webkit-scrollbar {
8283 height: var(--space-4); 8284 width: var(--space-4); 8285 display: none; 8286 } 8287 8288 .slider::-webkit-scrollbar-thumb { 8289 background: var(--pu-color-foreground, rgb(0, 0, 0, 0.05)); 8290 border-radius: var(--space-4); 8291 border: 0; 8292 } 8293 8294 .slider::-webkit-scrollbar-track { 8295 background: var(--pu-color-foreground, rgb(0, 0, 0, 0.1)); 8296 border-radius: var(--space-4); 8297 } 8298 8299 @supports (color: rgb(from white r g b)) { 8300 .slider::-webkit-scrollbar-thumb { 8301 background: rgb(from var(--pu-color-foreground, 0, 0, 0, 0.05) r g b / 0.05); 8302 } 8303 8304 .slider::-webkit-scrollbar-track { 8305 background: rgb(from var(--pu-color-foreground, 0, 0, 0, 0.1) r g b / 0.1); 8306 } 8307 } 8308 8309 /* Slides styling */ 8310 ::slotted(*) { 8311 scroll-snap-align: start; 8312 margin-bottom: 0; 8313 } 8314 8315 /* Slider controls visibility */ 8316 pu-slider-controls { 8317 display: none; 8318 } 8319`,Xo,te` 8320 /* Boolean Property API - Slides selection behavior */ 8321 .slider--slides-selectable ::slotted(*) { 8322 cursor: pointer; 8323 } 8324 8325 /* Boolean Property API - narrow slider enabled */ 8326 @media screen and (max-width: 47.9975em) { 8327 .slider.slider--tablet { 8328 position: relative; 8329 flex-wrap: inherit; 8330 overflow-x: auto; 8331 overflow-y: hidden; 8332 scroll-snap-type: x mandatory; 8333 scroll-behavior: smooth; 8334 } 8335 8336 .slider-component--tablet pu-slider-controls { 8337 display: block; 8338 } 8339 } 8340 8341 /* Boolean Property API - Desktop slider enabled */ 8342 @media screen and (min-width: 48em) { 8343 .slider.slider--desktop { 8344 position: relative; 8345 flex-wrap: inherit; 8346 overflow-x: auto; 8347 scroll-snap-type: x mandatory; 8348 scroll-behavior: smooth; 8349 } 8350 8351 .slider-component--desktop pu-slider-controls { 8352 display: block; 8353 } 8354 } 8355 8356 /* Boolean Property API - Gapless columns */ 8357 .slider.grid.grid--gapless { 8358 gap: 0; 8359 } 8360 8361 /* Value-Based Property API - Content type slideshow */ 8362 .slider-controls--top pu-slider-controls { 8363 order: 2; 8364 } 8365 8366 /* Mobile responsive API classes for column counts and peek behavior */ 8367 @media screen and (max-width: 30.6225em) { 8368 /* Peek */ 8369 .slider.grid--peek.grid--1-col-tablet-down ::slotted(*) { 8370 width: calc(100% - var(--pu-grid-gap-x-narrow, 1em) - 2em); 8371 } 8372 .slider.grid--peek.grid--2-col-tablet-down ::slotted(*) { 8373 width: calc(50% - var(--pu-grid-gap-x-narrow, 1em) - 1em); 8374 } 8375 /* Gapless */ 8376 .slider.grid--gapless.grid--1-col-tablet-down ::slotted(*) { 8377 width: 100%; 8378 } 8379 .slider.grid--gapless.grid--2-col-tablet-down ::slotted(*) { 8380 width: 50%; 8381 } 8382 /* Gapless + Peek */ 8383 .slider.grid--peek.grid--gapless.grid--1-col-tablet-down ::slotted(*) { 8384 width: calc(100% - (var(--pu-grid-gap-x-narrow, 1em) * 5)); 8385 } 8386 .slider.grid--peek.grid--gapless.grid--2-col-tablet-down ::slotted(*) { 8387 width: calc(50% - (var(--pu-grid-gap-x-narrow, 1em) * 3)); 8388 } 8389 } 8390 8391 /* Tablet portrait responsive API classes */ 8392 @media screen and (min-width: 30.625em) and (max-width: 47.9975em) { 8393 /* Peek */ 8394 .slider.grid--peek.grid--2-col-tablet ::slotted(*) { 8395 width: calc(50% - var(--pu-grid-gap-x-narrow, 1em) - 2em); 8396 } 8397 .slider.grid--peek.grid--3-col-tablet ::slotted(*) { 8398 width: calc(33.33% - var(--pu-grid-gap-x-narrow, 1em) - 1em); 8399 } 8400 /* Gapless */ 8401 .slider.grid.grid--gapless.grid--2-col-tablet ::slotted(*) { 8402 width: 50%; 8403 } 8404 .slider.grid.grid--gapless.grid--3-col-tablet ::slotted(*) { 8405 width: 33.33%; 8406 } 8407 /* Gapless + Peek */ 8408 .slider.grid.grid--gapless.grid--peek.grid--2-col-tablet ::slotted(*) { 8409 width: calc(50% - (var(--pu-grid-gap-x-narrow, 1em) * 5)); 8410 } 8411 .slider.grid.grid--gapless.grid--peek.grid--3-col-tablet ::slotted(*) { 8412 width: calc(33.33% - (var(--pu-grid-gap-x-narrow, 1em) * 3)); 8413 } 8414 } 8415 8416 /* Tablet landscape responsive API classes */ 8417 @media screen and (min-width: 48em) and (max-width: 64.9975em) { 8418 /* Peek */ 8419 .slider.grid--peek.grid--2-col-tablet ::slotted(*) { 8420 width: calc(50% - var(--pu-grid-gap-x, 1em) - 2em); 8421 } 8422 .slider.grid--peek.grid--3-col-tablet ::slotted(*) { 8423 width: calc(33.33% - var(--pu-grid-gap-x, 1em) - 1em); 8424 } 8425 /* Gapless */ 8426 .slider.grid.grid--gapless.grid--2-col-tablet ::slotted(*) { 8427 width: 50%; 8428 } 8429 .slider.grid.grid--gapless.grid--3-col-tablet ::slotted(*) { 8430 width: 33.33%; 8431 } 8432 /* Gapless + Peek */ 8433 .slider.grid.grid--gapless.grid--peek.grid--2-col-tablet ::slotted(*) { 8434 width: calc(50% - (var(--pu-grid-gap-x, 1em) * 4)); 8435 } 8436 .slider.grid.grid--gapless.grid--peek.grid--3-col-tablet ::slotted(*) { 8437 width: calc(33.33% - (var(--pu-grid-gap-x, 1em) * 2)); 8438 } 8439 } 8440 8441 /* Desktop variable API classes - CSS custom properties coordination */ 8442 @media screen and (min-width: 65em) { 8443 .slider.grid--peek ::slotted(*) { 8444 width: calc(100% / var(--grid-columns, 4) - var(--pu-grid-gap-x, 1em) * var(--grid-columns-peek, 3)); 8445 } 8446 /* Gapless */ 8447 .slider.grid.grid--gapless ::slotted(*) { 8448 width: var(--grid-columns-width, 25%); 8449 } 8450 /* Gapless + Peek combinations */ 8451 .slider.grid.grid--gapless.grid--peek.grid--1-col-desktop ::slotted(*) { 8452 width: calc((100% / var(--grid-columns, 4)) - 9em); 8453 } 8454 .slider.grid.grid--gapless.grid--peek.grid--2-col-desktop ::slotted(*) { 8455 width: calc((100% / var(--grid-columns, 4)) - 5em); 8456 } 8457 .slider.grid.grid--gapless.grid--peek.grid--3-col-desktop ::slotted(*) { 8458 width: calc((100% / var(--grid-columns, 4)) - 3em); 8459 } 8460 .slider.grid.grid--gapless.grid--peek.grid--4-col-desktop ::slotted(*) { 8461 width: calc((100% / var(--grid-columns, 4)) - 2em); 8462 } 8463 .slider.grid.grid--gapless.grid--peek.grid--5-col-desktop ::slotted(*) { 8464 width: calc((100% / var(--grid-columns, 4)) - 1em); 8465 } 8466 .slider.grid.grid--gapless.grid--peek.grid--6-col-desktop ::slotted(*) { 8467 width: calc((100% / var(--grid-columns, 4)) - 0.5em); 8468 } 8469 } 8470`];class Ua extends Ue{constructor(){super(),this.altText="Slider accessible name",this.altDescription="",this.sliderMode="slider",this.controlMode="counter",this.controlPosition="under",this.slider=!1,this.sliderNarrow=!1,this.peek=!1,this.adapt=!1,this.autoPlay=!1,this.playSpeed=5,this.columns=4,this.columnsNarrow="2",this.gapless=!1,this.fill=!1,this._totalPages=1,this._currentPage=1,this._playing=!1,this._sliderItemsToShow=[],this._firstSlide=null,this._secondSlide=null,this._sliderItemOffset=0,this._slidesPerPage=1,this._loopSlides=!1,this._scrolling=!1,this.slidesSelectable=!1,this._isSlideVisible=e=>{e.forEach((e=>{if(e.isIntersecting){if(e.target.shadowRoot?.querySelector("div")?.setAttribute("aria-hidden","false"),e.target.querySelectorAll("a, button").forEach((e=>{e.removeAttribute("tabindex")})),this.adapt){const t=e.target.getSlideContent();let o=0;Array.from(t).forEach((e=>{const t=e.offsetHeight;t&&t>0&&(o=t+o)})),o&&(this._slider.style.height=`${o}px`)}}else e.target.shadowRoot?.querySelector("div")?.setAttribute("aria-hidden","true"),e.target.querySelectorAll("a, button").forEach((e=>{e.setAttribute("tabindex","-1")}))}))},this._sliderId=Math.floor(1e8*Math.random()).toString(),Ua.eventTypes.forEac
8470h((e=>{this.addEventListener(e,this._customEventsHandler)}))}connectedCallback(){super.connectedCallback(),this._sliderId||(this._sliderId=Math.floor(1e8*Math.random()).toString())}firstUpdated(){this._slider&&(this._slider.id="Slider-"+this._sliderId)}disconnectedCallback(){super.disconnectedCallback(),void 0!==this._resizeObserver&&this._resizeObserver.disconnect(),void 0!==this._slideVisibleObserver&&this._slideVisibleObserver.disconnect(),this._resetAutoplay()}slidesChanged(){this.initialise()}willUpdate(e){e.has("_sliderItemsToShow")&&this._sliderSetup()}async initialise(){try{await this.updateComplete}catch(e){console.log("Initialise error",e)}this._sliderItems.length>0&&requestAnimationFrame((()=>{this._sliderItemsToShow=Array.from(this._sliderItems).filter((e=>e.clientWidth>0)),0===this._sliderItemsToShow.length&&(this._sliderItemsToShow=Array.from(this._sliderItems))}))}_sliderSetup(){if(!(this._sliderItemsToShow.length<2)&&(this._firstSlide=this._sliderItemsToShow[0],this._secondSlide=this._sliderItemsToShow[1],this._playing=!1,this._sliderItemOffset=this._secondSlide.offsetLeft-this._firstSlide.offsetLeft,this._slidesPerPage=this._sliderItemOffset>0?Math.round(this._slider.clientWidth/this._sliderItemOffset):0,this._totalPages=this._slidesPerPage>0?this._sliderItemsToShow.length-this._slidesPerPage+1:1,"slideshow"===this.sliderMode&&this._slideshowSetup(),void 0===this._resizeObserver)){const e=ti((()=>this.initialise()),100);this._resizeObserver=new ResizeObserver(e),this._resizeObserver.observe(this)}}_slideshowSetup(){this.slider=!0,this.sliderNarrow=!0,this.autoPlay&&(this._resetAutoplay(),this.play()),this._slideVisibleObserver=new IntersectionObserver(this._isSlideVisible,{root:this,rootMargin:"0px",threshold:1}),this._sliderItems.forEach(((e,t)=>{this._slideVisibleObserver?.observe(e);const o=e.shadowRoot?.querySelector("div");o?.setAttribute("aria-label",`${t+1} of ${this._sliderItems.length}`)}))}_customEventsHandler(e){e.preventDefault(),"previous-slide"===e.type&&(this._nthSlideavigation(e.type),this.pause()),"next-slide"===e.type&&(this._nextButtonClick(),this.pause()),"slide-link"===e.type&&this._slideLink(parseInt(e.detail.slideNumber)),"play-slider"===e.type&&this.play(),"pause-slider"===e.type&&this.pause(),"pause-over"===e.type&&this.pausePlay(),"pause-out"===e.type&&this.play()}_updateCurrentPage(){this._currentPage=Math.round(this._slider.scrollLeft/this._sliderItemOffset)+1}_scrollEnd(){this._scrolling=!1,this._updateCurrentPage()}_resetAutoplay(){clearInterval(this._autoRotate)}_nthSlideavigation(e){this._resetAutoplay(),this._playing=!1,this._scrolling&&"onscrollend"in window||(this._scrolling=!0,"previous-slide"===e?this._previousButtonClick():this._nextButtonClick(),this._updateCurrentPage())}_previousButtonClick(){if(!this._secondSlide||!this._firstSlide)return;const e=this._secondSlide.offsetLeft-this._firstSlide.offsetLeft;if(this._loopSlides&&1===this._currentPage)return this._slider.scrollTo({left:e*this._sliderItemsToShow.length}),void(this._currentPage=this._totalPages);this._slider.scrollTo({left:this._slider.scrollLeft-e})}_nextButtonClick(){if(this._secondSlide&&this._firstSlide)return this._loopSlides&&this._currentPage===this._totalPages?(this._slider.scrollTo({left:0}),void(this._currentPage=1)):void this._slider.scrollTo({left:this._slider.scrollLeft+(this._secondSlide.offsetLeft-this._firstSlide.offsetLeft)})}_slideLink(e){if(!this._secondSlide||!this._firstSlide)return;this._resetAutoplay(),this._playing=!1;const t=e,o=(this._secondSlide.offsetLeft-this._firstSlide.offsetLeft)*(t-1);this._slider.scrollTo({left:o})}_autoRotateSlides(){if(!this._sliderItemsToShow.length||!this._firstSlide)return;const e=this._currentPage===this._totalPages?0:this._slider.scrollLeft+this._sliderItemsToShow[1].offsetLeft-this._firstSlide.offsetLeft;this._slider.scrollTo({left:e})}initSlider(){this.initialise()}moveToSlide(e){this._slideLink(e)}play(){this._resetAutoplay(),this.autoPlay&&(this._playing=!0,this._slider.setAttribute("aria-live","off"),this._autoRotate=setInterval((()=>this._autoRotateSlides()),1e3*this.playSpeed))}pause(){this._resetAutoplay(),this.autoPlay&&(this._slider.setAttribute("aria-live","polite"),this._playing=!1)}pausePlay(){this._resetAutoplay(),this._slider.setAttribute("aria-live","polite")}resumePlay(){this.autoPlay&&this._playing&&this.play()}gridStyles(){let e={};return 6===this.columns&&(e={...e,"--grid-columns-width":"16.66%","--grid-columns":"6","--grid-colum-gaps":"5","--grid-columns-peek":"1.5"}),5===this.columns&&(e={...e,"--grid-columns-width":"20%","--grid-columns":"5","--grid-colum-gaps":"4","--grid-columns-peek":"2"}),4===this.columns&&(e={...e,"--grid-columns-width":"25%","--grid-columns":"4","--grid-colum-gaps":"3","--grid-columns-peek":"2.5"}),3===this.columns&&(e={...e,"--grid-columns-width":"33.33%","--grid-columns":"3","--grid-colum-gaps":"2","--grid-columns-peek":"3"}),2===this.columns&&(e={...e,"--grid-columns-width":"50%","--grid-columns":"2","--grid-colum-gaps":"1","--grid-columns-peek":"4"}),1===this.columns&&(e={...e,"--grid-columns-width":"100%","--grid-columns":"1","--grid-colum-gaps":"0","--grid-columns-peek":"9"}),e}sliderContent(){const e="Slider-"+this._sliderId;return"slider"===this.sliderMode?$` 8471 <ul 8472 id=${e} 8473 class="${J({"slider-container":!0,grid:!0,slider:this.sliderNarrow||this.slider,"slider--slides-selectable":this.slidesSelectable,"slider--desktop":this.slider,"slider--tablet":this.sliderNarrow,"grid--gapless":this.gapless,"grid--fill":this.fill,"grid--peek":this.peek&&this._totalPages>1,[`grid--${this.columns}-col-tablet`]:this.columns<3,"grid--3-col-tablet":this.columns>=3,"grid--col-tablet":this.columns>=3,[`grid--${this.columns}-col-desktop`]:!0,[`grid--${this.columnsNarrow}-col-tablet-down`]:!0})}" 8474 part="container" 8475 tabindex="0" 8476 role="list" 8477 aria-label="${this.altText}" 8478 @scrollend="${this._scrollEnd}" 8479 > 8480 <slot @slotchange=${this.slidesChanged}></slot> 8481 </ul> 8482 `:$` 8483 <div 8484 id=${e} 8485 class="${J({"slider-container":!0,grid:!0,slider:this.sliderNarrow||this.slider,"slider--slideshow":!0,"slider--desktop":this.slider,"slider--tablet":this.sliderNarrow,"grid--gapless":this.gapless,"grid--fill":this.fill,"grid--peek":this.peek&&this._totalPages>1,[`grid--${this.columns}-col-tablet`]:this.columns<3,"grid--3-col-tablet":this.columns>=3,"grid--col-tablet":this.columns>=3,[`grid--${this.columns}-col-desktop`]:!0,[`grid--${this.columnsNarrow}-col-tablet-down`]:!0})}" 8486 part="container" 8487 role="region"
8488 aria-live="polite" 8489 aria-atomic="true" 8490 aria-label="${this.altText}" 8491 aria-description="${this.altDescription}" 8492 @scrollend="${this._scrollEnd}" 8493 @mouseover="${this.pausePlay}" 8494 @mouseout="${this.resumePlay}" 8495 @focusin="${this.pausePlay}" 8496 @focusout="${this.resumePlay}" 8497 > 8498 <slot @slotchange=${this.slidesChanged}></slot> 8499 </div> 8500 `}sliderControls(){const e="Slider-"+this._sliderId;return this.slider||this.sliderNarrow?$` 8501 <pu-slider-controls 8502 part="controls" 8503 exportparts=${"slider-controls,slider-counter,slider-counter-link,slider-counter-dot,slider-counter-current,slider-counter-seperator,slider-counter-total,autoplay-button,next-button,previous-button,button-icon,icon"} 8504 sliderId=${e} 8505 controlMode=${this.controlMode} 8506 controlPosition=${this.controlPosition} 8507 slidesPerPage=${this._slidesPerPage} 8508 numberOfSlides=${this._totalPages} 8509 currentPage=${this._currentPage} 8510 ?playing=${this._playing} 8511 ?autoPlay=${this.autoPlay} 8512 ?loopSlides=${this._loopSlides} 8513 > 8514 </pu-slider-controls> 8515 `:z}render(){return $` 8516 <div 8517 part="base slider" 8518 class="${J({"slider-component":!0,"slider-narrow-gutter":!0,"slider-component--desktop":this.slider,"slider-component--tablet":this.sliderNarrow,"slider-controls--top":"slideshow"===this.sliderMode})}" 8519 style="${He(this.gridStyles())}" 8520 > 8521 ${this.sliderContent()} ${this.sliderControls()} 8522 </div> 8523 `}}Ua.styles=[Me,Wa],Ua.dependencies={"pu-button-icon":jt,"pu-slide":Ha,"pu-slider-controls":Fa},Ua.eventTypes=["previous-slide","next-slide","slide-link","pause-slider","play-slider","pause-over","pause-out"],i([ke()],Ua.prototype,"altText",void 0),i([ke()],Ua.prototype,"altDescription",void 0),i([ke()],Ua.prototype,"sliderMode",void 0),i([ke()],Ua.prototype,"controlMode",void 0),i([ke()],Ua.prototype,"controlPosition",void 0),i([ke({type:Boolean,reflect:!0})],Ua.prototype,"slider",void 0),i([ke({type:Boolean,reflect:!0})],Ua.prototype,"sliderNarrow",void 0),i([ke({type:Boolean})],Ua.prototype,"peek",void 0),i([ke({type:Boolean})],Ua.prototype,"adapt",void 0),i([ke({type:Boolean})],Ua.prototype,"autoPlay",void 0),i([ke({type:Number})],Ua.prototype,"playSpeed",void 0),i([ke({type:Number})],Ua.prototype,"columns",void 0),i([ke()],Ua.prototype,"columnsNarrow",void 0),i([ke({type:Boolean})],Ua.prototype,"gapless",void 0),i([ke({type:Boolean})],Ua.prototype,"fill",void 0),i([Ce()],Ua.prototype,"_sliderId",void 0),i([ke({type:Number})],Ua.prototype,"_totalPages",void 0),i([Ae()],Ua.prototype,"_sliderItems",void 0),i([Se('[id^="Slider-"]')],Ua.prototype,"_slider",void 0),i([Ce()],Ua.prototype,"_currentPage",void 0),i([Ce()],Ua.prototype,"_playing",void 0),i([Ce()],Ua.prototype,"_sliderItemsToShow",void 0),i([Ce()],Ua.prototype,"_firstSlide",void 0),i([Ce()],Ua.prototype,"_secondSlide",void 0),i([Ce()],Ua.prototype,"_sliderItemOffset",void 0),i([Ce()],Ua.prototype,"_slidesPerPage",void 0),i([Ce()],Ua.prototype,"_loopSlides",void 0),i([Ce()],Ua.prototype,"_scrolling",void 0),i([Ce()],Ua.prototype,"_autoRotate",void 0),i([Ce()],Ua.prototype,"_slideVisibleObserver",void 0),i([Ce()],Ua.prototype,"_resizeObserver",void 0),Ua.define("pu-slider"),Fa.define("pu-slider-controls"),Ha.define("pu-slide");class Ga extends Ue{constructor(){super(...arguments),this.data=[],this.target="_self",this.size="large",this.spacing="24",this.justify="start",this.justifyNarrow="center",this.border=!1,this.padding="0",this.deprecatedPropertyMap=[{old:"mobileJustify",new:"justifyNarrow",defaultValue:"center"}]}get mobileJustify(){return this.justifyNarrow}set mobileJustify(e){this._handleDeprecated("mobileJustify",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}socialLinks(){return this.data?this.data.map((e=>e.url?$` 8524 <pu-button-icon 8525 part="icon" 8526 exportparts="base,icon,svg" 8527 as="link" 8528 url="${Ze(e.url)}" 8529 target="${this.target}" 8530 name="${e.iconName}" 8531 iconSize="${this.size}" 8532 label="${e.name}" 8533 padding=${this.padding} 8534 ?border="${this.border}" 8535 > 8536 </pu-button-icon> 8537 `:z)):z}render(){return $` 8538 <pu-link-group 8539 part="base socials" 8540 exportparts="base" 8541 spacing="${this.spacing}" 8542 spacingNarrow="${this.spacing}" 8543 justify="${this.justify}" 8544 justifyNarrow="${this.justifyNarrow}" 8545 > 8546 ${this.socialLinks()} 8547 </pu-link-group> 8548 `}}Ga.styles=[Me],Ga.dependencies={"pu-link-group":Ci,"pu-button-icon":jt},i([ke({type:Array})],Ga.prototype,"data",void 0),i([ke()],Ga.prototype,"target",void 0),i([ke()],Ga.prototype,"size",void 0),i([ke()],Ga.prototype,"spacing",void 0),i([ke()],Ga.prototype,"justify",void 0),i([ke()],Ga.prototype,"justifyNarrow",void 0),i([ke({type:Boolean})],Ga.prototype,"border",void 0),i([ke()],Ga.prototype,"padding",void 0),i([ke()],Ga.prototype,"mobileJustify",null),Ga.define("pu-socials");const qa=[te` 8549 :host { 8550 display: block; 8551 } 8552 8553 .row { 8554 display: flex; 8555 flex-direction: row; 8556 justify-content: start; 8557 column-gap: var(--pu-table-column-space-gap, 1em); 8558 row-gap: var(--pu-table-row-space-gap, 1em); 8559 padding: var(--pu-table-space-padding, 0.25em 0); 8560 } 8561 .row > * { 8562 width: 10%; 8563 } 8564 .row > *:first-child { 8565 flex-grow: 1; 8566 width: 50%; 8567 } 8568 8569 /* Mobile: stack cells under the first cell per row */ 8570 @media (max-width: 30.6225em) { 8571 .row { 8572 flex-direction: row; 8573 flex-wrap: wrap; 8574 column-gap: var(--pu-table-column-space-gap-narrow, 0.5em); 8575 row-gap: var(--pu-table-row-space-gap-narrow, 0.5em); 8576 } 8577 .row > * { 8578 width: auto; 8579 flex: 0 1 auto; 8580 min-width: 0; 8581 } 8582 .row > *:first-child { 8583 width: 100%; 8584 flex: 0 0 100%; 8585 } 8586 } 8587`,te` 8588 /* Boolean Property API - Hide title visibility */ 8589 .visually-hidden { 8590 clip: rect(0 0 0 0); 8591 clip-path: inset(50%); 8592 height: 1px; 8593 overflow: hidden; 8594 position: absolute; 8595 white-space: nowrap; 8596 width: 1px; 8597 } 8598`];class Ka extends Ue{constructor(){super(...arguments),this.columnLabels=[],this.rowData=[],this.title="",this.titleHidden=!1,this.deprecatedPropertyMap=[{old:"hideTitle",new:"titleHidden",defaultValue:!1}]}get hideTitle(){return this.titleHidden}set hideTitle(e){this._handleDeprecated("hideTitle",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}descriptionClasses(){const e={};return e["visually-hidden"]=this.titleHidden,e}tableHeader(){return Array.isArray(this.columnLabels)?$` 8599 <div 8600 part="header" 8601 class="table-header row" 8602 role="rowgroup" 8603 > 8604 ${this.columnLabels.map((e=>$` 8605 <div 8606 part="cell" 8607 class="table-cell" 8608 role="columnheader" 8609 > 8610 <pu-text 8611 exportparts="base,span,body" 8612 as="span" 8613 textAlign="start" 8614 fontWeight="bold" 8615 > 8616 ${e} 8617 </pu-text> 8618 </div> 8619 `))} 8620 </div> 8621 `:z}tableRows(){return this.rowData&&Array.isArray(this.rowData)?$` ${this.rowData.map((e=>{if(Array.isArray(e))return $` 8622 <div 8623 part="row" 8624 class="table-row row" 8625 role="rowgroup" 8626 > 8627 ${e.map((e=>$` 8628 <div 8629 part="cell" 8630 class="table-cell" 8631 role="cell" 8632 > 8633 <pu-text 8634 exportparts="base,span,body" 8635 as="span" 8636 variant="bodySm" 8637 textAlign="start" 8638 > 8639 ${e} 8640 </pu-text> 8641 </div> 8642 `))} 8643 </div> 8644 `}))}`:z}render(){return $` 8645 <div 8646 part="base table" 8647 class="table" 8648 role="table" 8649 aria-label="${this.title}" 8650 aria-describedby="TableDescription" 8651 > 8652 <div 8653 id="TableDescription" 8654 part="description" 8655 class="table-description ${J(this.descriptionClasses())}" 8656 > 8657 <pu-text 8658 exportparts="base,h2,heading" 8659 slot="description" 8660 as="h2" 8661 variant="headingLg" 8662 fontWeight="bold" 8663 > 8664 ${this.title} 8665 </pu-text> 8666 </div> 8667 <div 8668 part="content" 8669 class="table-body" 8670 > 8671 ${this.tableHeader()} ${this.tableRows()} 8672 </div> 8673 </div> 8674 `}}Ka.dependencies={"pu-text":nt},Ka.styles=[Me,qa],i([ke({type:Array})],Ka.prototype,"columnLabels",void 0),i([ke({type:Array})],Ka.prototype,"rowData",void 0),i([ke()],Ka.prototype,"title",void 0),i([ke({type:Boolean})],Ka.prototype,"titleHidden",void 0),i([ke({type:Boolean})],Ka.prototype,"hideTitle",null),Ka.define("pu-table"),nt.define("pu-text");const Ja=[qt,te` 8675 :host { 8676 display: block; 8677 } 8678 8679 .textarea { 8680 display: grid; 8681 align-items: center; 8682 background-color: rgb(from var(--pu-input-color-background, hsl(0 0% 99.5%)) r g b / alpha); 8683 border-style: solid; 8684 border-width: var(--pu-input-border-width, 0.0625em); 8685 border-color: rgb( 8686 from var(--pu-input-border-color, hsl(240, 5%, 65%)) r g b / 8687 calc(alpha * var(--pu-input-opacity-border, 1)) 8688 ); 8689 border-radius: var(--pu-input-border-radius, var(--pu-border-input-size-corner-radius, 0.5em)); 8690 position: relative; 8691 width: 100%; 8692 font-family: var(--pu-text-body-family); 8693 font-size: var(--pu-input-font-size); 8694 line-height: var(--pu-font-leading-500); 8695 letter-spacing: var(--pu-input-font-tracking, 0.05em); 8696 vertical-align: middle; 8697 transition: 8698 var(--pu-transition-duration-150) color, 8699 var(--pu-transition-duration-150) border, 8700 var(--pu-transition-duration-150) box-shadow, 8701 var(--pu-transition-duration-150) background-color; 8702 cursor: text; 8703 } 8704 8705 .textarea:hover:not(.textarea--disabled) { 8706 background-color: rgb(from var(--pu-input-color-background-hover, hsl(240, 5%, 96%)) r g b / alpha); 8707 border-color: rgb(from var(--pu-input-border-color-hover, hsl(240, 4%, 46%)) r g b / alpha); 8708 } 8709 .textarea:hover:not(.textarea--disabled) .textarea__control { 8710 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 8711 } 8712 8713 .textarea.textarea--focused:not(.textarea--disabled) { 8714 background-color: rgb(from var(--pu-color-focus-background) r g b / alpha); 8715 border-color: rgb(from var(--pu-color-focus-border, inherit) r g b / alpha); 8716 box-shadow: 0 0 0 0.25em rgb(from var(--pu-color-focus-ring, hsl(213.1 93.9% 67.8%)) r g b / alpha); 8717 } 8718 8719 .textarea.textarea--disabled { 8720 background-color: rgb(from var(--pu-input-color-background-disabled, hsl(240, 5%, 96%)) r g b / alpha); 8721 border-color: rgb(from var(--pu-input-border-color-disabled, hsl(240, 5%, 84%), inherit) r g b / alpha); 8722 opacity: 0.5;
8723 cursor: not-allowed; 8724 } 8725 8726 .textarea__control, 8727 .textarea__size-adjuster { 8728 grid-area: 1 / 1 / 2 / 2; 8729 } 8730 8731 .textarea__size-adjuster { 8732 visibility: hidden; 8733 pointer-events: none; 8734 opacity: 0; 8735 } 8736 8737 .textarea.textarea--disabled .textarea__control { 8738 color: rgb(from var(--pu-input-color-foreground-hover, inherit) r g b / alpha); 8739 } 8740 8741 .textarea.textarea--disabled .textarea__control::placeholder { 8742 color: rgb(from var(--pu-input-placeholder-color-foreground, hsl(240, 4%, 46%)) r g b / alpha); 8743 } 8744 8745 .textarea__control { 8746 font-family: inherit; 8747 font-size: inherit; 8748 font-weight: inherit; 8749 line-height: 1.4; 8750 padding: 0.5em var(--pu-input-space-padding); 8751 color: rgb(from var(--pu-input-color-foreground, inherit) r g b / alpha); 8752 border: none; 8753 border-radius: var(--pu-border-input-size-corner-radius); 8754 background: none; 8755 box-shadow: none; 8756 cursor: inherit; 8757 -webkit-appearance: none; 8758 } 8759 8760 .textarea__control::-webkit-search-decoration, 8761 .textarea__control::-webkit-search-cancel-button, 8762 .textarea__control::-webkit-search-results-button, 8763 .textarea__control::-webkit-search-results-decoration { 8764 -webkit-appearance: none; 8765 } 8766 8767 .textarea__control::placeholder { 8768 color: rgb(from var(--pu-input-placeholder-color-foreground, hsl(240, 4%, 46%)) r g b / alpha); 8769 user-select: none; 8770 -webkit-user-select: none; 8771 } 8772 8773 .textarea__control:focus { 8774 outline: none; 8775 } 8776`,te` 8777 /* Size API Classes */ 8778 .textarea--small { 8779 --pu-border-input-size-corner-radius: var(--pu-border-radius-050, 0.125em); 8780 --pu-input-font-size: var(--pu-text-body-size-sm, 0.875em); 8781 } 8782 8783 .textarea--small .textarea__control { 8784 --pu-input-space-padding: var(--pu-space-300, 0.75em); 8785 } 8786 8787 .textarea--medium { 8788 --pu-border-input-size-corner-radius: var(--pu-border-radius-100, 0.25em); 8789 --pu-input-font-size: var(--pu-text-body-size-sm, 0.875em); 8790 } 8791 8792 .textarea__control { 8793 --pu-input-space-padding: var(--pu-space-400, 1em); 8794 } 8795 8796 .textarea--large { 8797 --pu-border-input-size-corner-radius: var(--pu-border-radius-200, 0.5em); 8798 --pu-input-font-size: var(--pu-text-body-size-md, 1em); 8799 } 8800 8801 .textarea--large .textarea__control { 8802 --pu-input-space-padding: var(--pu-space-500, 1.25em); 8803 } 8804 8805 /* Resize API Classes */ 8806 .textarea--resize-none .textarea__control { 8807 resize: none; 8808 } 8809 8810 .textarea--resize-vertical .textarea__control { 8811 resize: vertical; 8812 } 8813 8814 .textarea--resize-auto .textarea__control { 8815 height: auto; 8816 resize: none; 8817 overflow-y: hidden; 8818 } 8819`];class Xa extends Ue{constructor(){super(...arguments),this.formControlController=new Et(this,{assumeInteractionOn:["pu-blur","pu-input"]}),this.hasSlotController=new Xe(this,"help-text","label"),this.hasFocus=!1,this.title="",this.name="",this.value="",this.size="medium",this.label="",this.labelHidden=!1,this.helpText="",this.placeholder="",this.rows=4,this.resize="vertical",this.disabled=!1,this.readonly=!1,this.form="",this.required=!1,this.autocapitalize="off",this.autofocus=!1,this.enterkeyhint="enter",this.spellcheck=!0,this.defaultValue="",this.deprecatedPropertyMap=[{old:"hideLabel",new:"labelHidden",defaultValue:!1}]}get hideLabel(){return this.labelHidden}set hideLabel(e){this._handleDeprecated("hideLabel",e)}_handleDeprecated(e,t){st(this,e,t,this.deprecatedPropertyMap)}get validity(){return this.input.validity}get validationMessage(){return this.input.validationMessage}connectedCallback(){super.connectedCallback(),this.resizeObserver=new ResizeObserver((()=>this.setTextareaHeight())),this.updateComplete.then((()=>{this.setTextareaHeight(),this.resizeObserver?.observe(this.input)}))}firstUpdated(){this.formControlController.updateValidity()}disconnectedCallback(){super.disconnectedCallback(),this.input&&this.resizeObserver?.unobserve(this.input)}
8819handleBlur(){this.hasFocus=!1,this.emit("pu-blur")}handleChange(){this.value=this.input.value,this.setTextareaHeight(),this.emit("pu-change")}handleFocus(){this.hasFocus=!0,this.emit("pu-focus")}handleInput(){this.value=this.input.value,this.emit("pu-input")}handleInvalid(e){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(e)}setTextareaHeight(){"auto"===this.resize?(this.sizeAdjuster.style.height=`${this.input.clientHeight}px`,this.input.style.height="auto",this.input.style.height=`${this.input.scrollHeight}px`):this.input.style.height=""}handleDisabledChange(){this.formControlController.setValidity(this.disabled)}handleRowsChange(){this.setTextareaHeight()}async handleValueChange(){await this.updateComplete,this.formControlController.updateValidity(),this.setTextareaHeight()}focus(e){this.input.focus(e)}blur(){this.input.blur()}select(){this.input.select()}scrollPosition(e){return e?("number"==typeof e.top&&(this.input.scrollTop=e.top),void("number"==typeof e.left&&(this.input.scrollLeft=e.left))):{top:this.input.scrollTop,left:this.input.scrollTop}}setSelectionRange(e,t,o="none"){this.input.setSelectionRange(e,t,o)}setRangeText(e,t,o,i="preserve"){const r=t??this.input.selectionStart,a=o??this.input.selectionEnd;this.input.setRangeText(e,r,a,i),this.value!==this.input.value&&(this.value=this.input.value,this.setTextareaHeight())}checkValidity(){return this.input.checkValidity()}getForm(){return this.formControlController.getForm()}reportValidity(){return this.input.reportValidity()}setCustomValidity(e){this.input.setCustomValidity(e),this.formControlController.updateValidity()}render(){const e=this.hasSlotController.test("label"),t=this.hasSlotController.test("help-text"),o=!!this.label||!!e,i=!!this.helpText||!!t,r=this.labelHidden&&this.required?`* ${this.placeholder}`:this.placeholder;return $` 8820 <div 8821 part="base text-area" 8822 class=${J({"form-control":!0,"form-control--small":"small"===this.size,"form-control--medium":"medium"===this.size,"form-control--large":"large"===this.size,"form-control--has-label":o,"form-control--has-help-text":i})} 8823 > 8824 <label 8825 part="label" 8826 class="${J({"form-control__label":!0,"form-control__label--visually-hidden":this.labelHidden})}" 8827 for="input" 8828 aria-hidden=${o?"false":"true"} 8829 > 8830 <slot name="label">${this.label}</slot> 8831 </label> 8832 8833 <div 8834 part="input" 8835 class="form-control-input" 8836 > 8837 <div 8838 part="container" 8839 class=${J({textarea:!0,"textarea--small":"small"===this.size,"textarea--medium":"medium"===this.size,"textarea--large":"large"===this.size,"textarea--disabled":this.disabled,"textarea--focused":this.hasFocus,"textarea--empty":!this.value,"textarea--resize-none":"none"===this.resize,"textarea--resize-vertical":"vertical"===this.resize,"textarea--resize-auto":"auto"===this.resize})} 8840 > 8841 <textarea 8842 part="textarea" 8843 id="input" 8844 class="textarea__control" 8845 title=${this.title} 8846 name=${Ze(this.name)} 8847 .value=${Gt(this.value)} 8848 ?disabled=${this.disabled} 8849 ?readonly=${this.readonly} 8850 ?required=${this.required} 8851 placeholder=${Ze(r)} 8852 rows=${Ze(this.rows)} 8853 minlength=${Ze(this.minlength)} 8854 maxlength=${Ze(this.maxlength)} 8855 autocapitalize=${Ze(this.autocapitalize)} 8856 autocorrect=${Ze(this.textAutocorrect)} 8857 ?autofocus=${this.autofocus} 8858 spellcheck=${Ze(this.spellcheck)} 8859 enterkeyhint=${Ze(this.enterkeyhint)} 8860 inputmode=${Ze(this.inputmode)} 8861 aria-describedby="help-text" 8862 @change=${this.handleChange}
8863 @input=${this.handleInput} 8864 @invalid=${this.handleInvalid} 8865 @focus=${this.handleFocus} 8866 @blur=${this.handleBlur} 8867 ></textarea> 8868 <div 8869 part="adjuster" 8870 class="textarea__size-adjuster" 8871 ?hidden=${"auto"!==this.resize} 8872 ></div> 8873 </div> 8874 </div> 8875 8876 <div 8877 part="help-text" 8878 id="help-text" 8879 class="form-control__help-text" 8880 aria-hidden=${i?"false":"true"} 8881 > 8882 <slot name="help-text">${this.helpText}</slot> 8883 </div> 8884 </div> 8885 `}}Xa.styles=[Me,Ja],i([Se(".textarea__control")],Xa.prototype,"input",void 0),i([Se(".textarea__size-adjuster")],Xa.prototype,"sizeAdjuster",void 0),i([Ce()],Xa.prototype,"hasFocus",void 0),i([ke()],Xa.prototype,"title",void 0),i([ke()],Xa.prototype,"name",void 0),i([ke()],Xa.prototype,"value",void 0),i([ke({reflect:!0})],Xa.prototype,"size",void 0),i([ke()],Xa.prototype,"label",void 0),i([ke({type:Boolean})],Xa.prototype,"labelHidden",void 0),i([ke()],Xa.prototype,"helpText",void 0),i([ke()],Xa.prototype,"placeholder",void 0),i([ke({type:Number})],Xa.prototype,"rows",void 0),i([ke()],Xa.prototype,"resize",void 0),i([ke({type:Boolean,reflect:!0})],Xa.prototype,"disabled",void 0),i([ke({type:Boolean,reflect:!0})],Xa.prototype,"readonly",void 0),i([ke({reflect:!0})],Xa.prototype,"form",void 0),i([ke({type:Boolean,reflect:!0})],Xa.prototype,"required",void 0),i([ke({type:Number})],Xa.prototype,"minlength",void 0),i([ke({type:Number})],Xa.prototype,"maxlength",void 0),i([ke()],Xa.prototype,"autocapitalize",void 0),i([ke()],Xa.prototype,"textAutocorrect",void 0),i([ke()],Xa.prototype,"autocomplete",void 0),i([ke({type:Boolean})],Xa.prototype,"autofocus",void 0),i([ke()],Xa.prototype,"enterkeyhint",void 0),i([ke({type:Boolean,converter:{fromAttribute:e=>!(!e||"false"===e),toAttribute:e=>e?"true":"false"}})],Xa.prototype,"spellcheck",void 0),i([ke()],Xa.prototype,"inputmode",void 0),i([Ft()],Xa.prototype,"defaultValue",void 0),i([ke({type:Boolean})],Xa.prototype,"hideLabel",null),i([Te("disabled",{waitUntilFirstUpdate:!0})],Xa.prototype,"handleDisabledChange",null),i([Te("rows",{waitUntilFirstUpdate:!0})],Xa.prototype,"handleRowsChange",null),i([Te("value",{waitUntilFirstUpdate:!0})],Xa.prototype,"handleValueChange",null),Xa.define("pu-text-area");class Ya extends Ha{constructor(){super(...arguments),this.mediaId=""}}Ya.styles=[Ha.styles,te` 8886 :host { 8887 box-sizing: border-box; 8888 padding: var(--pu-space-100, 0.25em); 8889 } 8890 :host([active]) { 8891 padding: 0; 8892 position: relative; 8893 } 8894 :host([active])::after { 8895 content: ''; 8896 display: block; 8897 position: absolute; 8898 inset: 0; 8899 background-color: rgb(255, 255, 255, 0.2); 8900 cursor: default; 8901 } 8902 li { 8903 border: 0.0625em solid rgb(0, 0, 0, 0.1); 8904 } 8905 `],i([ke()],Ya.prototype,"mediaId",void 0);class Za extends Ua{constructor(){super(),this.currentMediaId="",this.sliderMode="slider",this.slider=!0,this.sliderNarrow=!0,this.slideEventManager=new zi(this);const e=[...this.constructor.eventTypes];e.push("active-slide"),e.forEach((e=>{this.addEventListener(e,this._customEventsHandler)})),this._initialiseSlides()}connectedCallback(){super.connectedCallback(),this.slidesSelectable=!0}async _initialiseSlides(){await this.updateComplete,this._updateActiveSlide(this.currentMediaId),this._sliderItems.forEach((e=>{e.addEventListener("click",(()=>{const t={mediaId:e.getAttribute("mediaId")};this._eventsDispatcher("active-slide",t)}))}))}slidesChanged(){super.slidesChanged(),this._initialiseSlides()}
8905_updateActiveSlide(e){e&&this._sliderItems.forEach(((t,o)=>{t.hasAttribute("active")&&t.removeAttribute("active");const i=t.getAttribute("mediaId");if(e===i){t.setAttribute("active",""),this._updateActiveMedia(i);const e={slideNumber:o+1};this._eventsDispatcher("slide-link",e)}}))}_updateActiveMedia(e){this.slideEventManager.dispatchCustomEvent("active-media",{mediaId:e},{bubbles:!0,composed:!0})}_eventsDispatcher(e,t){if(!e)throw new Error("Missing custom event type");const o={bubbles:!0,composed:!0};"active-slide"==e&&this.slideEventManager.dispatchCustomEvent(e,t,o),"slide-link"==e&&this.slideEventManager.dispatchCustomEvent(e,t,o)}_customEventsHandler(e){super._customEventsHandler(e),"active-slide"===e.type&&this._updateActiveSlide(e.detail.mediaId)}updated(e){super.updated(e),e.has("currentMediaId")&&e.get("currentMediaId")&&this._updateActiveSlide(this.currentMediaId)}}Za.dependencies={"pu-button-icon":jt,"pu-slide":Ha,"pu-slider-controls":Fa,"pu-thumbnail-slide":Ya},i([ke({reflect:!0})],Za.prototype,"currentMediaId",void 0),i([ke()],Za.prototype,"sliderMode",void 0),i([ke({type:Boolean})],Za.prototype,"slider",void 0),i([ke({type:Boolean})],Za.prototype,"sliderNarrow",void 0),Za.define("pu-thumbnail-slider");const Qa=[te` 8906 :host { 8907 display: block; 8908 } 8909 8910 video, 8911 .image { 8912 display: block; 8913 height: auto; 8914 width: 100%; 8915 } 8916`,kt,te` 8917 /* Fit API Classes - Host Level */ 8918 :host([fit='cover']), 8919 :host([fit='contain']) { 8920 height: 100%; 8921 } 8922 8923 /* Fit API Classes - Container Level */ 8924 .video-container.image-fit--cover, 8925 .video-container.image-fit--contain { 8926 height: 100%; 8927 position: relative; 8928 } 8929 8930 .image-fit--cover video, 8931 .image-fit--contain video { 8932 position: absolute; 8933 height: 100%; 8934 width: 100%; 8935 } 8936 8937 /* Fit API Classes - Object Fit Behavior */ 8938 .image-fit--cover video { 8939 object-fit: cover; 8940 } 8941 .image-fit--contain video { 8942 object-fit: contain; 8943 } 8944`];class es extends Ue{get posterSource(){return this.poster}set posterSource(e){at(this,"posterSource","poster",(()=>{}),e)}constructor(){super(),this.sources=[],this.width=100,this.height=100,this.fit="adapt",this.inBackground=!1,this.autoplay=!0,this.muted=!0,this.loop=!1,this.controls=!1,this._hasPlayed=!1,this.initialise()}containerClasses(){const e={};return e["image-fit--"+this.fit]=!0,e}async initialise(){await this.updateComplete,this._hasPlayed||(this._videoElement?.play(),this._hasPlayed=!0)}handleFirstPlay(){this._hasPlayed||(this._hasPlayed=!0)}videoType(){return this.inBackground?$` 8945 <video 8946 width="${this.width}" 8947 height="${this.height}" 8948 playsinline 8949 autoplay 8950 loop 8951 muted 8952 @play=${this.handleFirstPlay} 8953 > 8954 ${this.sources.map((e=>$` 8955 <source 8956 src="${e.src}" 8957 type="video/${e.type}" 8958 width="${this.width}" 8959 height="${this.height}" 8960 /> 8961 `))} 8962 </video> 8963 `:$` 8964 <video 8965 width="${this.width}" 8966 height="${this.height}" 8967 poster="${Ze(this.poster)}" 8968 ?controls="${this.controls}" 8969 ?autoplay="${this.autoplay}" 8970 ?loop="${this.loop}" 8971 ?muted="${this.muted}" 8972 @play=${this.handleFirstPlay} 8973 > 8974 ${this.sources.map((e=>$` 8975 <source 8976 src="${e.src}" 8977 type="video/${e.type}" 8978 width="${this.width}" 8979 height="${this.height}" 8980 /> 8981 `))} 8982 </video> 8983 `}video(){return Array.isArray(this.sources)&&this.sources.length?$` ${this.videoType()} `:$` 8984 <div 8985 class="placeholder image image--wide${J(this.containerClasses())}" 8986 style="aspect-ratio: ${this.width/this.height}" 8987 > 8988 <div class="placeholder-inner"> 8989 <svg 8990 class="icon" 8991 xmlns="http://www.w3.org/2000/svg" 8992 height="1em"
8993 viewBox="0 0 576 512" 8994 fill="currentcolor" 8995 > 8996 <path 8997 d="M70.5 138.1C31 172.2 16 219.1 16 272c0 52 18.4 91.6 46.9 118.3C91.6 417.2 131.5 432 176 432h8.4c18.2 0 34.8-10.3 42.9-26.5l23.2-46.3C257.6 345 272.1 336 288 336s30.4 9 37.5 23.2l23.2 46.3c8.1 16.3 24.8 26.5 42.9 26.5H400c44.5 0 84.4-14.8 113.1-41.7C541.6 363.6 560 324 560 272c0-52.9-15-99.8-54.5-133.9C465.6 103.6 398.1 80 288 80s-177.6 23.6-217.5 58.1zM0 272C0 160 64 64 288 64s288 96 288 208s-80 176-176 176h-8.4c-24.2 0-46.4-13.7-57.2-35.4l-23.2-46.3c-4.4-8.8-13.3-14.3-23.2-14.3s-18.8 5.5-23.2 14.3l-23.2 46.3c-10.8 21.7-33 35.4-57.2 35.4H176C80 448 0 384 0 272zm160 32a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm0-112a64 64 0 1 1 0 128 64 64 0 1 1 0-128zm304 64a48 48 0 1 0 -96 0 48 48 0 1 0 96 0zm-112 0a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z" 8998 /> 8999 </svg> 9000 </div> 9001 </div> 9002 `}render(){return $` 9003 <div 9004 part="base video" 9005 class="video-container${J(this.containerClasses())}" 9006 > 9007 ${this.video()} 9008 </div> 9009 `}}es.styles=[Me,Qa],i([ke({type:Array})],es.prototype,"sources",void 0),i([ke()],es.prototype,"poster",void 0),i([ke()],es.prototype,"posterSource",null),i([ke({type:Number})],es.prototype,"width",void 0),i([ke({type:Number})],es.prototype,"height",void 0),i([ke({type:String})],es.prototype,"fit",void 0),i([ke({type:Boolean})],es.prototype,"inBackground",void 0),i([ke({type:Boolean})],es.prototype,"autoplay",void 0),i([ke({type:Boolean})],es.prototype,"muted",void 0),i([ke({type:Boolean})],es.prototype,"loop",void 0),i([ke({type:Boolean})],es.prototype,"controls",void 0),i([Ce()],es.prototype,"_hasPlayed",void 0),i([Se("video")],es.prototype,"_videoElement",void 0),es.define("pu-video"),xt.define("pu-vertical-stack")},347:(e,t,o)=>{o.a(e,(async(e,t)=>{try{var i=o(764);const e=window.UMG_NEWSLETTER_FE?.assets_base_url||"",r=window.UMG_NEWSLETTER_FE?.assets_flags_base_url||"";(0,i.jP)(e),(0,i.RF)(r),await o.e(993).then(o.bind(o,993)),t()}catch(e){t(e)}}),1)}},n={};function l(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return s[e](o,o.exports,l),o.exports}l.m=s,e="function"==typeof Symbol?Symbol("webpack queues"):"__webpack_queues__",t="function"==typeof Symbol?Symbol("webpack exports"):"__webpack_exports__",o="function"==typeof Symbol?Symbol("webpack error"):"__webpack_error__",i=e=>{e&&e.d<1&&(e.d=1,e.forEach((e=>e.r--)),e.forEach((e=>e.r--?e.r++:e())))},l.a=(r,a,s)=>{var n;s&&((n=[]).d=-1);var l,d,p,c=new Set,u=r.exports,h=new Promise(((e,t)=>{p=t,d=e}));h[t]=u,h[e]=e=>(n&&e(n),c.forEach(e),h.catch((e=>{}))),r.exports=h,a((r=>{var a;l=(r=>r.map((r=>{if(null!==r&&"object"==typeof r){if(r[e])return r;if(r.then){var a=[];a.d=0,r.then((e=>{s[t]=e,i(a)}),(e=>{s[o]=e,i(a)}));var s={};return s[e]=e=>e(a),s}}var n={};return n[e]=e=>{},n[t]=r,n})))(r);var s=()=>l.map((e=>{if(e[o])throw e[o];return e[t]})),d=new Promise((t=>{(a=()=>t(s)).r=0;var o=e=>e!==n&&!c.has(e)&&(c.add(e),e&&!e.d&&(a.r++,e.push(a)));l.map((t=>t[e](o)))}));return a.r?d:s()}),(e=>(e?p(h[o]=e):d(u),i(n)))),n&&n.d<0&&(n.d=0)},l.d=(e,t)=>{for(var o in t)l.o(t,o)&&!l.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},l.f={},l.e=e=>Promise.all(Object.keys(l.f).reduce(((t,o)=>(l.f[o](e,t),t)),[])),l.u=e=>e+".e1a16cf0.js?ver=2.0.33",l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r={},a="umg-newsletter-plugin:",l.l=(e,t,o,i)=>{if(r[e])r[e].push(t);else{var s,n;if(void 0!==o)for(var d=document.getElementsByTagName("script"),p=0;p<d.length;p++){var c=d[p];if(c.getAttribute("src")==e||c.getAttribute("data-webpack")==a+o){s=c;break}}s||(n=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,l.nc&&s.setAttribute("nonce",l.nc),s.setAttribute("data-webpack",a+o),s.src=e),r[e]=[t];var u=(t,o)=>{s.onerror=s.onload=null,clearTimeout(h);var i=r[e];if(delete r[e],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEac
vendor: 1,182 bytes, line 9009
9009h((e=>e(o))),t)return t(o)},h=setTimeout(u.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=u.bind(null,s.onerror),s.onload=u.bind(null,s.onload),n&&document.head.appendChild(s)}},l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.p="/wp-content/plugins/umg-newsletter/public/dist/",(()=>{var e={624:0};l.f.j=(t,o)=>{var i=l.o(e,t)?e[t]:void 0;if(0!==i)if(i)o.push(i[2]);else{var r=new Promise(((o,r)=>i=e[t]=[o,r]));o.push(i[2]=r);var a=l.p+l.u(t),s=new Error;l.l(a,(o=>{if(l.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var r=o&&("load"===o.type?"missing":o.type),a=o&&o.target&&o.target.src;s.message="Loading chunk "+t+" failed.\n("+r+": "+a+")",s.name="ChunkLoadError",s.type=r,s.request=a,i[1](s)}}),"chunk-"+t,t)}};var t=(t,o)=>{var i,r,[a,s,n]=o,d=0;if(a.some((t=>0!==e[t]))){for(i in s)l.o(s,i)&&(l.m[i]=s[i]);if(n)n(l)}for(t&&t(o);d<a.length;d++)r=a[d],l.o(e,r)&&e[r]&&e[r][0](),e[r]=0},o=self.webpackChunkumg_newsletter_plugin=self.webpackChunkumg_newsletter_plugin||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})();l(347)})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.