diff --git a/playground/.output/nitro.json b/playground/.output/nitro.json index 99581df..1ca7f54 100644 --- a/playground/.output/nitro.json +++ b/playground/.output/nitro.json @@ -1,5 +1,5 @@ { - "date": "2024-07-05T23:33:48.723Z", + "date": "2024-07-06T18:13:24.549Z", "preset": "node-server", "framework": { "name": "nuxt", diff --git a/playground/.output/public/_nuxt/N-EqdTw2.js b/playground/.output/public/_nuxt/DTJR8xyR.js similarity index 97% rename from playground/.output/public/_nuxt/N-EqdTw2.js rename to playground/.output/public/_nuxt/DTJR8xyR.js index 6a2e856..cbecd19 100644 --- a/playground/.output/public/_nuxt/N-EqdTw2.js +++ b/playground/.output/public/_nuxt/DTJR8xyR.js @@ -1 +1 @@ -import{_ as a,t as o,v as s,x as i,y as e,z as r,D as u,E as l}from"./D_X2kP3v.js";const d=t=>(u("data-v-19d6d3a4"),t=t(),l(),t),c={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},p=d(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),h={class:"max-w-520px text-center"},g=["textContent"],b=["textContent"],f={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const n=t;return o({title:`${n.statusCode} - ${n.statusMessage} | ${n.appName}`,script:[],style:[{children:'*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(x,m)=>(s(),i("div",c,[p,e("div",h,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:r(t.statusCode)},null,8,g),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:r(t.description)},null,8,b)])]))}},k=a(f,[["__scopeId","data-v-19d6d3a4"]]);export{k as default}; +import{_ as a,t as o,v as s,x as i,y as e,z as r,D as u,E as l}from"./q-QPnIUX.js";const d=t=>(u("data-v-19d6d3a4"),t=t(),l(),t),c={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},p=d(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),h={class:"max-w-520px text-center"},g=["textContent"],b=["textContent"],f={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const n=t;return o({title:`${n.statusCode} - ${n.statusMessage} | ${n.appName}`,script:[],style:[{children:'*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(x,m)=>(s(),i("div",c,[p,e("div",h,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:r(t.statusCode)},null,8,g),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:r(t.description)},null,8,b)])]))}},k=a(f,[["__scopeId","data-v-19d6d3a4"]]);export{k as default}; diff --git a/playground/.output/public/_nuxt/builds/latest.json b/playground/.output/public/_nuxt/builds/latest.json index d754a1a..d801a4d 100644 --- a/playground/.output/public/_nuxt/builds/latest.json +++ b/playground/.output/public/_nuxt/builds/latest.json @@ -1 +1 @@ -{"id":"64d2b9bd-b625-4a69-8c63-52de8d6690a9","timestamp":1720222417338} \ No newline at end of file +{"id":"292d48f5-a1a3-449e-9846-880116a142d2","timestamp":1720289589196} \ No newline at end of file diff --git a/playground/.output/public/_nuxt/builds/meta/292d48f5-a1a3-449e-9846-880116a142d2.json b/playground/.output/public/_nuxt/builds/meta/292d48f5-a1a3-449e-9846-880116a142d2.json new file mode 100644 index 0000000..c70c30f --- /dev/null +++ b/playground/.output/public/_nuxt/builds/meta/292d48f5-a1a3-449e-9846-880116a142d2.json @@ -0,0 +1 @@ +{"id":"292d48f5-a1a3-449e-9846-880116a142d2","timestamp":1720289589196,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]} \ No newline at end of file diff --git a/playground/.output/public/_nuxt/builds/meta/64d2b9bd-b625-4a69-8c63-52de8d6690a9.json b/playground/.output/public/_nuxt/builds/meta/64d2b9bd-b625-4a69-8c63-52de8d6690a9.json deleted file mode 100644 index 85083e6..0000000 --- a/playground/.output/public/_nuxt/builds/meta/64d2b9bd-b625-4a69-8c63-52de8d6690a9.json +++ /dev/null @@ -1 +0,0 @@ -{"id":"64d2b9bd-b625-4a69-8c63-52de8d6690a9","timestamp":1720222417338,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]} \ No newline at end of file diff --git a/playground/.output/public/_nuxt/D_X2kP3v.js b/playground/.output/public/_nuxt/q-QPnIUX.js similarity index 98% rename from playground/.output/public/_nuxt/D_X2kP3v.js rename to playground/.output/public/_nuxt/q-QPnIUX.js index 13b5a40..d5eea0d 100644 --- a/playground/.output/public/_nuxt/D_X2kP3v.js +++ b/playground/.output/public/_nuxt/q-QPnIUX.js @@ -1,4 +1,4 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./mJS2XvxE.js","./error-404.CPoJt-Mw.css","./N-EqdTw2.js","./error-500.CRm5MgNe.css"])))=>i.map(i=>d[i]); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./tr5hBR7C.js","./error-404.CPoJt-Mw.css","./DTJR8xyR.js","./error-500.CRm5MgNe.css"])))=>i.map(i=>d[i]); /** * @vue/shared v3.4.31 * (c) 2018-present Yuxi (Evan) You and Vue contributors @@ -15,6 +15,6 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./mJS2XvxE.js","./erro * @vue/runtime-dom v3.4.31 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const ua="http://www.w3.org/2000/svg",da="http://www.w3.org/1998/Math/MathML",Ne=typeof document<"u"?document:null,Is=Ne&&Ne.createElement("template"),ha={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t==="svg"?Ne.createElementNS(ua,e):t==="mathml"?Ne.createElementNS(da,e):n?Ne.createElement(e,{is:n}):Ne.createElement(e);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>Ne.createTextNode(e),createComment:e=>Ne.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ne.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,o){const i=n?n.previousSibling:t.lastChild;if(s&&(s===o||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===o||!(s=s.nextSibling)););else{Is.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const l=Is.content;if(r==="svg"||r==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},pa=Symbol("_vtc");function ga(e,t,n){const r=e[pa];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Hs=Symbol("_vod"),ma=Symbol("_vsh"),_a=Symbol(""),ya=/(^|;)\s*display\s*:/;function ba(e,t,n){const r=e.style,s=ne(n);let o=!1;if(n&&!s){if(t)if(ne(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&on(r,l,"")}else for(const i in t)n[i]==null&&on(r,i,"");for(const i in n)i==="display"&&(o=!0),on(r,i,n[i])}else if(s){if(t!==n){const i=r[_a];i&&(n+=";"+i),r.cssText=n,o=ya.test(n)}}else t&&e.removeAttribute("style");Hs in e&&(e[Hs]=o?r.display:"",e[ma]&&(r.display="none"))}const Ms=/\s*!important$/;function on(e,t,n){if(U(n))n.forEach(r=>on(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=wa(e,t);Ms.test(n)?e.setProperty(Rt(r),n.replace(Ms,""),"important"):e[r]=n}}const Ls=["Webkit","Moz","ms"],Gn={};function wa(e,t){const n=Gn[t];if(n)return n;let r=Ie(t);if(r!=="filter"&&r in e)return Gn[t]=r;r=Pn(r);for(let s=0;sJn||(Ra.then(()=>Jn=0),Jn=Date.now());function Pa(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;Re(Sa(r,n.value),t,5,[r])};return n.value=e,n.attached=Ca(),n}function Sa(e,t){if(U(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const Us=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Aa=(e,t,n,r,s,o,i,l,c)=>{const u=s==="svg";t==="class"?ga(e,r,u):t==="style"?ba(e,n,r):Ut(t)?Rr(t)||Ta(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Oa(e,t,r,u))?(va(e,t,r,o,i,l,c),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&js(e,t,r,u,i,t!=="value")):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),js(e,t,r,u))};function Oa(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Us(t)&&F(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Us(t)&&ne(n)?!1:t in e}const Bs=e=>{const t=e.props["onUpdate:modelValue"]||!1;return U(t)?n=>tn(t,n):t};function ka(e){e.target.composing=!0}function Ds(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Xn=Symbol("_assign"),Ia={created(e,{modifiers:{lazy:t,trim:n,number:r}},s){e[Xn]=Bs(s);const o=r||s.props&&s.props.type==="number";dt(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=tr(l)),e[Xn](l)}),n&&dt(e,"change",()=>{e.value=e.value.trim()}),t||(dt(e,"compositionstart",ka),dt(e,"compositionend",Ds),dt(e,"change",Ds))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:s,number:o}},i){if(e[Xn]=Bs(i),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?tr(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(r&&t===n||s&&e.value.trim()===c)||(e.value=c))}},Ha=["ctrl","shift","alt","meta"],Ma={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Ha.some(n=>e[`${n}Key`]&&!t.includes(n))},La=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(s,...o)=>{for(let i=0;i{const t=Na().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Mi(r);if(!s)return;const o=t._component;!F(o)&&!o.render&&!o.template&&(o.template=s.innerHTML),s.innerHTML="";const i=n(s,!1,Hi(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),i},t},Fa=(...e)=>{const t=ja().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Mi(r);if(s)return n(s,!0,Hi(s))},t};function Hi(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Mi(e){return ne(e)?document.querySelector(e):e}const Ua=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,Ba=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,Da=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function Wa(e,t){if(e==="__proto__"||e==="constructor"&&t&&typeof t=="object"&&"prototype"in t){Va(e);return}return t}function Va(e){console.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}function bn(e,t={}){if(typeof e!="string")return e;const n=e.trim();if(e[0]==='"'&&e.endsWith('"')&&!e.includes("\\"))return n.slice(1,-1);if(n.length<=9){const r=n.toLowerCase();if(r==="true")return!0;if(r==="false")return!1;if(r==="undefined")return;if(r==="null")return null;if(r==="nan")return Number.NaN;if(r==="infinity")return Number.POSITIVE_INFINITY;if(r==="-infinity")return Number.NEGATIVE_INFINITY}if(!Da.test(e)){if(t.strict)throw new SyntaxError("[destr] Invalid JSON");return e}try{if(Ua.test(e)||Ba.test(e)){if(t.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(e,Wa)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}const Ka=/#/g,qa=/&/g,Ga=/\//g,Ja=/=/g,Wr=/\+/g,Xa=/%5e/gi,Qa=/%60/gi,Ya=/%7c/gi,za=/%20/gi;function Za(e){return encodeURI(""+e).replace(Ya,"|")}function pr(e){return Za(typeof e=="string"?e:JSON.stringify(e)).replace(Wr,"%2B").replace(za,"+").replace(Ka,"%23").replace(qa,"%26").replace(Qa,"`").replace(Xa,"^").replace(Ga,"%2F")}function Qn(e){return pr(e).replace(Ja,"%3D")}function wn(e=""){try{return decodeURIComponent(""+e)}catch{return""+e}}function ef(e){return wn(e.replace(Wr," "))}function tf(e){return wn(e.replace(Wr," "))}function Li(e=""){const t={};e[0]==="?"&&(e=e.slice(1));for(const n of e.split("&")){const r=n.match(/([^=]+)=?(.*)/)||[];if(r.length<2)continue;const s=ef(r[1]);if(s==="__proto__"||s==="constructor")continue;const o=tf(r[2]||"");t[s]===void 0?t[s]=o:Array.isArray(t[s])?t[s].push(o):t[s]=[t[s],o]}return t}function nf(e,t){return(typeof t=="number"||typeof t=="boolean")&&(t=String(t)),t?Array.isArray(t)?t.map(n=>`${Qn(e)}=${pr(n)}`).join("&"):`${Qn(e)}=${pr(t)}`:Qn(e)}function Ni(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>nf(t,e[t])).filter(Boolean).join("&")}const rf=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,sf=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,of=/^([/\\]\s*){2,}[^/\\]/,lf=/^[\s\0]*(blob|data|javascript|vbscript):$/i,cf=/\/$|\/\?|\/#/,af=/^\.?\//;function Pt(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?rf.test(e):sf.test(e)||(t.acceptRelative?of.test(e):!1)}function ff(e){return!!e&&lf.test(e)}function gr(e="",t){return t?cf.test(e):e.endsWith("/")}function Vr(e="",t){if(!t)return(gr(e)?e.slice(0,-1):e)||"/";if(!gr(e,!0))return e||"/";let n=e,r="";const s=e.indexOf("#");s>=0&&(n=e.slice(0,s),r=e.slice(s));const[o,...i]=n.split("?");return((o.endsWith("/")?o.slice(0,-1):o)||"/")+(i.length>0?`?${i.join("?")}`:"")+r}function mr(e="",t){if(!t)return e.endsWith("/")?e:e+"/";if(gr(e,!0))return e||"/";let n=e,r="";const s=e.indexOf("#");if(s>=0&&(n=e.slice(0,s),r=e.slice(s),!n))return r;const[o,...i]=n.split("?");return o+"/"+(i.length>0?`?${i.join("?")}`:"")+r}function uf(e=""){return e.startsWith("/")}function Vs(e=""){return uf(e)?e:"/"+e}function df(e,t){if($i(t)||Pt(e))return e;const n=Vr(t);return e.startsWith(n)?e:Nn(n,e)}function hf(e,t){if($i(t))return e;const n=Vr(t);if(!e.startsWith(n))return e;const r=e.slice(n.length);return r[0]==="/"?r:"/"+r}function ji(e,t){const n=mf(e),r={...Li(n.search),...t};return n.search=Ni(r),Bi(n)}function $i(e){return!e||e==="/"}function pf(e){return e&&e!=="/"}function Nn(e,...t){let n=e||"";for(const r of t.filter(s=>pf(s)))if(n){const s=r.replace(af,"");n=mr(n)+s}else n=r;return n}function Fi(...e){var i,l,c,u;const t=/\/(?!\/)/,n=e.filter(Boolean),r=[];let s=0;for(const f of n)if(!(!f||f==="/")){for(const[a,h]of f.split(t).entries())if(!(!h||h===".")){if(h===".."){if(r.length===1&&Pt(r[0]))continue;r.pop(),s--;continue}if(a===1&&((i=r[r.length-1])!=null&&i.endsWith(":/"))){r[r.length-1]+="/"+h;continue}r.push(h),s++}}let o=r.join("/");return s>=0?(l=n[0])!=null&&l.startsWith("/")&&!o.startsWith("/")?o="/"+o:(c=n[0])!=null&&c.startsWith("./")&&!o.startsWith("./")&&(o="./"+o):o="../".repeat(-1*s)+o,(u=n[n.length-1])!=null&&u.endsWith("/")&&!o.endsWith("/")&&(o+="/"),o}function gf(e,t,n={}){return n.trailingSlash||(e=mr(e),t=mr(t)),n.leadingSlash||(e=Vs(e),t=Vs(t)),n.encoding||(e=wn(e),t=wn(t)),e===t}const Ui=Symbol.for("ufo:protocolRelative");function mf(e="",t){const n=e.match(/^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i);if(n){const[,a,h=""]=n;return{protocol:a.toLowerCase(),pathname:h,href:a+h,auth:"",host:"",search:"",hash:""}}if(!Pt(e,{acceptRelative:!0}))return Ks(e);const[,r="",s,o=""]=e.replace(/\\/g,"/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/)||[],[,i="",l=""]=o.match(/([^#/?]*)(.*)?/)||[],{pathname:c,search:u,hash:f}=Ks(l.replace(/\/(?=[A-Za-z]:)/,""));return{protocol:r.toLowerCase(),auth:s?s.slice(0,Math.max(0,s.length-1)):"",host:i,pathname:c,search:u,hash:f,[Ui]:!r}}function Ks(e=""){const[t="",n="",r=""]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:r}}function Bi(e){const t=e.pathname||"",n=e.search?(e.search.startsWith("?")?"":"?")+e.search:"",r=e.hash||"",s=e.auth?e.auth+"@":"",o=e.host||"";return(e.protocol||e[Ui]?(e.protocol||"")+"//":"")+s+o+t+n+r}class _f extends Error{constructor(t,n){super(t,n),this.name="FetchError",n!=null&&n.cause&&!this.cause&&(this.cause=n.cause)}}function yf(e){var c,u,f,a,h;const t=((c=e.error)==null?void 0:c.message)||((u=e.error)==null?void 0:u.toString())||"",n=((f=e.request)==null?void 0:f.method)||((a=e.options)==null?void 0:a.method)||"GET",r=((h=e.request)==null?void 0:h.url)||String(e.request)||"/",s=`[${n}] ${JSON.stringify(r)}`,o=e.response?`${e.response.status} ${e.response.statusText}`:"",i=`${s}: ${o}${t?` ${t}`:""}`,l=new _f(i,e.error?{cause:e.error}:void 0);for(const g of["request","options","response"])Object.defineProperty(l,g,{get(){return e[g]}});for(const[g,y]of[["data","_data"],["status","status"],["statusCode","status"],["statusText","statusText"],["statusMessage","statusText"]])Object.defineProperty(l,g,{get(){return e.response&&e.response[y]}});return l}const bf=new Set(Object.freeze(["PATCH","POST","PUT","DELETE"]));function qs(e="GET"){return bf.has(e.toUpperCase())}function wf(e){if(e===void 0)return!1;const t=typeof e;return t==="string"||t==="number"||t==="boolean"||t===null?!0:t!=="object"?!1:Array.isArray(e)?!0:e.buffer?!1:e.constructor&&e.constructor.name==="Object"||typeof e.toJSON=="function"}const vf=new Set(["image/svg","application/xml","application/xhtml","application/html"]),Ef=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function Tf(e=""){if(!e)return"json";const t=e.split(";").shift()||"";return Ef.test(t)?"json":vf.has(t)||t.startsWith("text/")?"text":"blob"}function xf(e,t,n=globalThis.Headers){const r={...t,...e};if(t!=null&&t.params&&(e!=null&&e.params)&&(r.params={...t==null?void 0:t.params,...e==null?void 0:e.params}),t!=null&&t.query&&(e!=null&&e.query)&&(r.query={...t==null?void 0:t.query,...e==null?void 0:e.query}),t!=null&&t.headers&&(e!=null&&e.headers)){r.headers=new n((t==null?void 0:t.headers)||{});for(const[s,o]of new n((e==null?void 0:e.headers)||{}))r.headers.set(s,o)}return r}const Rf=new Set([408,409,425,429,500,502,503,504]),Cf=new Set([101,204,205,304]);function Di(e={}){const{fetch:t=globalThis.fetch,Headers:n=globalThis.Headers,AbortController:r=globalThis.AbortController}=e;async function s(l){const c=l.error&&l.error.name==="AbortError"&&!l.options.timeout||!1;if(l.options.retry!==!1&&!c){let f;typeof l.options.retry=="number"?f=l.options.retry:f=qs(l.options.method)?0:1;const a=l.response&&l.response.status||500;if(f>0&&(Array.isArray(l.options.retryStatusCodes)?l.options.retryStatusCodes.includes(a):Rf.has(a))){const h=l.options.retryDelay||0;return h>0&&await new Promise(g=>setTimeout(g,h)),o(l.request,{...l.options,retry:f-1})}}const u=yf(l);throw Error.captureStackTrace&&Error.captureStackTrace(u,o),u}const o=async function(c,u={}){var g;const f={request:c,options:xf(u,e.defaults,n),response:void 0,error:void 0};f.options.method=(g=f.options.method)==null?void 0:g.toUpperCase(),f.options.onRequest&&await f.options.onRequest(f),typeof f.request=="string"&&(f.options.baseURL&&(f.request=df(f.request,f.options.baseURL)),(f.options.query||f.options.params)&&(f.request=ji(f.request,{...f.options.params,...f.options.query}))),f.options.body&&qs(f.options.method)&&(wf(f.options.body)?(f.options.body=typeof f.options.body=="string"?f.options.body:JSON.stringify(f.options.body),f.options.headers=new n(f.options.headers||{}),f.options.headers.has("content-type")||f.options.headers.set("content-type","application/json"),f.options.headers.has("accept")||f.options.headers.set("accept","application/json")):("pipeTo"in f.options.body&&typeof f.options.body.pipeTo=="function"||typeof f.options.body.pipe=="function")&&("duplex"in f.options||(f.options.duplex="half")));let a;if(!f.options.signal&&f.options.timeout){const y=new r;a=setTimeout(()=>y.abort(),f.options.timeout),f.options.signal=y.signal}try{f.response=await t(f.request,f.options)}catch(y){return f.error=y,f.options.onRequestError&&await f.options.onRequestError(f),await s(f)}finally{a&&clearTimeout(a)}if(f.response.body&&!Cf.has(f.response.status)&&f.options.method!=="HEAD"){const y=(f.options.parseResponse?"json":f.options.responseType)||Tf(f.response.headers.get("content-type")||"");switch(y){case"json":{const E=await f.response.text(),j=f.options.parseResponse||bn;f.response._data=j(E);break}case"stream":{f.response._data=f.response.body;break}default:f.response._data=await f.response[y]()}}return f.options.onResponse&&await f.options.onResponse(f),!f.options.ignoreResponseError&&f.response.status>=400&&f.response.status<600?(f.options.onResponseError&&await f.options.onResponseError(f),await s(f)):f.response},i=async function(c,u){return(await o(c,u))._data};return i.raw=o,i.native=(...l)=>t(...l),i.create=(l={})=>Di({...e,defaults:{...e.defaults,...l}}),i}const Kr=function(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")}(),Pf=Kr.fetch||(()=>Promise.reject(new Error("[ofetch] global.fetch is not supported!"))),Sf=Kr.Headers,Af=Kr.AbortController,Of=Di({fetch:Pf,Headers:Sf,AbortController:Af}),kf=Of,If=()=>{var e;return((e=window==null?void 0:window.__NUXT__)==null?void 0:e.config)||{}},vn=If().app,Hf=()=>vn.baseURL,Mf=()=>vn.buildAssetsDir,qr=(...e)=>Fi(Wi(),Mf(),...e),Wi=(...e)=>{const t=vn.cdnURL||vn.baseURL;return e.length?Fi(t,...e):t};globalThis.__buildAssetsURL=qr,globalThis.__publicAssetsURL=Wi;globalThis.$fetch||(globalThis.$fetch=kf.create({baseURL:Hf()}));function _r(e,t={},n){for(const r in e){const s=e[r],o=n?`${n}:${r}`:r;typeof s=="object"&&s!==null?_r(s,t,o):typeof s=="function"&&(t[o]=s)}return t}const Lf={run:e=>e()},Nf=()=>Lf,Vi=typeof console.createTask<"u"?console.createTask:Nf;function jf(e,t){const n=t.shift(),r=Vi(n);return e.reduce((s,o)=>s.then(()=>r.run(()=>o(...t))),Promise.resolve())}function $f(e,t){const n=t.shift(),r=Vi(n);return Promise.all(e.map(s=>r.run(()=>s(...t))))}function Yn(e,t){for(const n of[...e])n(t)}class Ff{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(t,n,r={}){if(!t||typeof n!="function")return()=>{};const s=t;let o;for(;this._deprecatedHooks[t];)o=this._deprecatedHooks[t],t=o.to;if(o&&!r.allowDeprecated){let i=o.message;i||(i=`${s} hook has been deprecated`+(o.to?`, please use ${o.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+t.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[t]=this._hooks[t]||[],this._hooks[t].push(n),()=>{n&&(this.removeHook(t,n),n=void 0)}}hookOnce(t,n){let r,s=(...o)=>(typeof r=="function"&&r(),r=void 0,s=void 0,n(...o));return r=this.hook(t,s),r}removeHook(t,n){if(this._hooks[t]){const r=this._hooks[t].indexOf(n);r!==-1&&this._hooks[t].splice(r,1),this._hooks[t].length===0&&delete this._hooks[t]}}deprecateHook(t,n){this._deprecatedHooks[t]=typeof n=="string"?{to:n}:n;const r=this._hooks[t]||[];delete this._hooks[t];for(const s of r)this.hook(t,s)}deprecateHooks(t){Object.assign(this._deprecatedHooks,t);for(const n in t)this.deprecateHook(n,t[n])}addHooks(t){const n=_r(t),r=Object.keys(n).map(s=>this.hook(s,n[s]));return()=>{for(const s of r.splice(0,r.length))s()}}removeHooks(t){const n=_r(t);for(const r in n)this.removeHook(r,n[r])}removeAllHooks(){for(const t in this._hooks)delete this._hooks[t]}callHook(t,...n){return n.unshift(t),this.callHookWith(jf,t,...n)}callHookParallel(t,...n){return n.unshift(t),this.callHookWith($f,t,...n)}callHookWith(t,n,...r){const s=this._before||this._after?{name:n,args:r,context:{}}:void 0;this._before&&Yn(this._before,s);const o=t(n in this._hooks?[...this._hooks[n]]:[],r);return o instanceof Promise?o.finally(()=>{this._after&&s&&Yn(this._after,s)}):(this._after&&s&&Yn(this._after,s),o)}beforeEach(t){return this._before=this._before||[],this._before.push(t),()=>{if(this._before!==void 0){const n=this._before.indexOf(t);n!==-1&&this._before.splice(n,1)}}}afterEach(t){return this._after=this._after||[],this._after.push(t),()=>{if(this._after!==void 0){const n=this._after.indexOf(t);n!==-1&&this._after.splice(n,1)}}}}function Ki(){return new Ff}function Uf(e={}){let t,n=!1;const r=i=>{if(t&&t!==i)throw new Error("Context conflict")};let s;if(e.asyncContext){const i=e.AsyncLocalStorage||globalThis.AsyncLocalStorage;i?s=new i:console.warn("[unctx] `AsyncLocalStorage` is not provided.")}const o=()=>{if(s&&t===void 0){const i=s.getStore();if(i!==void 0)return i}return t};return{use:()=>{const i=o();if(i===void 0)throw new Error("Context is not available");return i},tryUse:()=>o(),set:(i,l)=>{l||r(i),t=i,n=!0},unset:()=>{t=void 0,n=!1},call:(i,l)=>{r(i),t=i;try{return s?s.run(i,l):l()}finally{n||(t=void 0)}},async callAsync(i,l){t=i;const c=()=>{t=i},u=()=>t===i?c:void 0;yr.add(u);try{const f=s?s.run(i,l):l();return n||(t=void 0),await f}finally{yr.delete(u)}}}}function Bf(e={}){const t={};return{get(n,r={}){return t[n]||(t[n]=Uf({...e,...r})),t[n],t[n]}}}const En=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof global<"u"?global:typeof window<"u"?window:{},Gs="__unctx__",Df=En[Gs]||(En[Gs]=Bf()),Wf=(e,t={})=>Df.get(e,t),Js="__unctx_async_handlers__",yr=En[Js]||(En[Js]=new Set);function qi(e){const t=[];for(const s of yr){const o=s();o&&t.push(o)}const n=()=>{for(const s of t)s()};let r=e();return r&&typeof r=="object"&&"catch"in r&&(r=r.catch(s=>{throw n(),s})),[r,n]}const Ud={componentName:"NuxtLink"},Vf=null,Kf="#__nuxt",Gi="nuxt-app",Xs=36e5;function Ji(e=Gi){return Wf(e,{asyncContext:!1})}const qf="__nuxt_plugin";function Gf(e){let t=0;const n={_name:Gi,_scope:Cl(),provide:void 0,globalName:"nuxt",versions:{get nuxt(){return"3.12.3"},get vue(){return n.vueApp.version}},payload:ht({data:ht({}),state:Xe({}),once:new Set,_errors:ht({})}),static:{data:{}},runWithContext(s){return n._scope.active&&!Eo()?n._scope.run(()=>Qs(n,s)):Qs(n,s)},isHydrating:!0,deferHydration(){if(!n.isHydrating)return()=>{};t++;let s=!1;return()=>{if(!s&&(s=!0,t--,t===0))return n.isHydrating=!1,n.callHook("app:suspense:resolve")}},_asyncDataPromises:{},_asyncData:ht({}),_payloadRevivers:{},...e};if(window.__NUXT__)for(const s in window.__NUXT__)switch(s){case"data":case"state":case"_errors":Object.assign(n.payload[s],window.__NUXT__[s]);break;default:n.payload[s]=window.__NUXT__[s]}n.hooks=Ki(),n.hook=n.hooks.hook,n.callHook=n.hooks.callHook,n.provide=(s,o)=>{const i="$"+s;Zt(n,i,o),Zt(n.vueApp.config.globalProperties,i,o)},Zt(n.vueApp,"$nuxt",n),Zt(n.vueApp.config.globalProperties,"$nuxt",n);{window.addEventListener("nuxt.preloadError",o=>{n.callHook("app:chunkError",{error:o.payload})}),window.useNuxtApp=window.useNuxtApp||ae;const s=n.hook("app:error",(...o)=>{console.error("[nuxt] error caught during app initialization",...o)});n.hook("app:mounted",s)}const r=n.payload.config;return n.provide("config",r),n}function Jf(e,t){t.hooks&&e.hooks.addHooks(t.hooks)}async function Xf(e,t){if(typeof t=="function"){const{provide:n}=await e.runWithContext(()=>t(e))||{};if(n&&typeof n=="object")for(const r in n)e.provide(r,n[r])}}async function Qf(e,t){const n=[],r=[],s=[],o=[];let i=0;async function l(c){var f;const u=((f=c.dependsOn)==null?void 0:f.filter(a=>t.some(h=>h._name===a)&&!n.includes(a)))??[];if(u.length>0)r.push([new Set(u),c]);else{const a=Xf(e,c).then(async()=>{c._name&&(n.push(c._name),await Promise.all(r.map(async([h,g])=>{h.has(c._name)&&(h.delete(c._name),h.size===0&&(i++,await l(g)))})))});c.parallel?s.push(a.catch(h=>o.push(h))):await a}}for(const c of t)Jf(e,c);for(const c of t)await l(c);if(await Promise.all(s),i)for(let c=0;c{}),e,{[qf]:!0,_name:t})}function Qs(e,t,n){const r=()=>t();return Ji(e._name).set(e),e.vueApp.runWithContext(r)}function Yf(e){var n;let t;return ri()&&(t=(n=Pi())==null?void 0:n.appContext.app.$nuxt),t=t||Ji(e).tryUse(),t||null}function ae(e){const t=Yf(e);if(!t)throw new Error("[nuxt] instance unavailable");return t}function Ye(e){return ae().$config}function Zt(e,t,n){Object.defineProperty(e,t,{get:()=>n})}function zf(e,t){return{ctx:{table:e},matchAll:n=>Qi(n,e)}}function Xi(e){const t={};for(const n in e)t[n]=n==="dynamic"?new Map(Object.entries(e[n]).map(([r,s])=>[r,Xi(s)])):new Map(Object.entries(e[n]));return t}function Zf(e){return zf(Xi(e))}function Qi(e,t,n){e.endsWith("/")&&(e=e.slice(0,-1)||"/");const r=[];for(const[o,i]of Ys(t.wildcard))(e===o||e.startsWith(o+"/"))&&r.push(i);for(const[o,i]of Ys(t.dynamic))if(e.startsWith(o+"/")){const l="/"+e.slice(o.length).split("/").splice(2).join("/");r.push(...Qi(l,i))}const s=t.static.get(e);return s&&r.push(s),r.filter(Boolean)}function Ys(e){return[...e.entries()].sort((t,n)=>t[0].length-n[0].length)}function zn(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function br(e,t,n=".",r){if(!zn(t))return br(e,{},n,r);const s=Object.assign({},t);for(const o in e){if(o==="__proto__"||o==="constructor")continue;const i=e[o];i!=null&&(r&&r(s,o,i,n)||(Array.isArray(i)&&Array.isArray(s[o])?s[o]=[...i,...s[o]]:zn(i)&&zn(s[o])?s[o]=br(i,s[o],(n?`${n}.`:"")+o.toString(),r):s[o]=i))}return s}function eu(e){return(...t)=>t.reduce((n,r)=>br(n,r,"",e),{})}const tu=eu();function nu(e,t){try{return t in e}catch{return!1}}var ru=Object.defineProperty,su=(e,t,n)=>t in e?ru(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,rt=(e,t,n)=>(su(e,typeof t!="symbol"?t+"":t,n),n);class wr extends Error{constructor(t,n={}){super(t,n),rt(this,"statusCode",500),rt(this,"fatal",!1),rt(this,"unhandled",!1),rt(this,"statusMessage"),rt(this,"data"),rt(this,"cause"),n.cause&&!this.cause&&(this.cause=n.cause)}toJSON(){const t={message:this.message,statusCode:vr(this.statusCode,500)};return this.statusMessage&&(t.statusMessage=Yi(this.statusMessage)),this.data!==void 0&&(t.data=this.data),t}}rt(wr,"__h3_error__",!0);function ou(e){if(typeof e=="string")return new wr(e);if(iu(e))return e;const t=new wr(e.message??e.statusMessage??"",{cause:e.cause||e});if(nu(e,"stack"))try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=vr(e.statusCode,t.statusCode):e.status&&(t.statusCode=vr(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){const n=t.statusMessage;Yi(t.statusMessage)!==n&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function iu(e){var t;return((t=e==null?void 0:e.constructor)==null?void 0:t.__h3_error__)===!0}const lu=/[^\u0009\u0020-\u007E]/g;function Yi(e=""){return e.replace(lu,"")}function vr(e,t=200){return!e||(typeof e=="string"&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}const zi=Symbol("route"),lt=()=>{var e;return(e=ae())==null?void 0:e.$router},Zi=()=>ri()?wt(zi,ae()._route):ae()._route;const cu=()=>{try{if(ae()._processingMiddleware)return!0}catch{return!1}return!1},au=(e,t)=>{e||(e="/");const n=typeof e=="string"?e:"path"in e?fu(e):lt().resolve(e).href;if(t!=null&&t.open){const{target:c="_blank",windowFeatures:u={}}=t.open,f=Object.entries(u).filter(([a,h])=>h!==void 0).map(([a,h])=>`${a.toLowerCase()}=${h}`).join(", ");return open(n,c,f),Promise.resolve()}const r=Pt(n,{acceptRelative:!0}),s=(t==null?void 0:t.external)||r;if(s){if(!(t!=null&&t.external))throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`.");const{protocol:c}=new URL(n,window.location.href);if(c&&ff(c))throw new Error(`Cannot navigate to a URL with '${c}' protocol.`)}const o=cu();if(!s&&o)return e;const i=lt(),l=ae();return s?(l._scope.stop(),t!=null&&t.replace?location.replace(n):location.href=n,o?l.isHydrating?new Promise(()=>{}):!1:Promise.resolve()):t!=null&&t.replace?i.replace(e):i.push(e)};function fu(e){return ji(e.path||"",e.query||{})+(e.hash||"")}const el="__nuxt_error",Gr=()=>ec(ae().payload,"error"),uu=e=>{const t=Jr(e);try{const n=ae(),r=Gr();n.hooks.callHook("app:error",t),r.value=r.value||t}catch{throw t}return t},du=async(e={})=>{const t=ae(),n=Gr();t.callHook("app:error:cleared",e),e.redirect&&await lt().replace(e.redirect),n.value=Vf},hu=e=>!!e&&typeof e=="object"&&el in e,Jr=e=>{const t=ou(e);return Object.defineProperty(t,el,{value:!0,configurable:!1,writable:!1}),t},pu=-1,gu=-2,mu=-3,_u=-4,yu=-5,bu=-6;function wu(e,t){return vu(JSON.parse(e),t)}function vu(e,t){if(typeof e=="number")return s(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function s(o,i=!1){if(o===pu)return;if(o===mu)return NaN;if(o===_u)return 1/0;if(o===yu)return-1/0;if(o===bu)return-0;if(i)throw new Error("Invalid input");if(o in r)return r[o];const l=n[o];if(!l||typeof l!="object")r[o]=l;else if(Array.isArray(l))if(typeof l[0]=="string"){const c=l[0],u=t==null?void 0:t[c];if(u)return r[o]=u(s(l[1]));switch(c){case"Date":r[o]=new Date(l[1]);break;case"Set":const f=new Set;r[o]=f;for(let g=1;g>>9)+65536).toString(16).substring(1,8).toLowerCase()}function zs(e){return e._h||Xr(e._d?e._d:`${e.tag}:${e.textContent||e.innerHTML||""}:${Object.entries(e.props).map(([t,n])=>`${t}:${String(n)}`).join(",")}`)}function nl(e,t){const{props:n,tag:r}=e;if(Ru.includes(r))return r;if(r==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const s=["id"];r==="meta"&&s.push("name","property","http-equiv");for(const o of s)if(typeof n[o]<"u"){const i=String(n[o]);return`${r}:${o}:${i}`}return!1}function Zs(e,t){return e==null?t||null:typeof e=="function"?e(t):e}async function Pu(e,t,n){const r={tag:e,props:await rl(typeof t=="object"&&typeof t!="function"&&!(t instanceof Promise)?{...t}:{[["script","noscript","style"].includes(e)?"innerHTML":"textContent"]:t},["templateParams","titleTemplate"].includes(e))};return tl.forEach(s=>{const o=typeof r.props[s]<"u"?r.props[s]:n[s];typeof o<"u"&&((!["innerHTML","textContent","children"].includes(s)||Tu.includes(r.tag))&&(r[s==="children"?"innerHTML":s]=o),delete r.props[s])}),r.props.body&&(r.tagPosition="bodyClose",delete r.props.body),r.tag==="script"&&typeof r.innerHTML=="object"&&(r.innerHTML=JSON.stringify(r.innerHTML),r.props.type=r.props.type||"application/json"),Array.isArray(r.props.content)?r.props.content.map(s=>({...r,props:{...r.props,content:s}})):r}function Su(e,t){var r;const n=e==="class"?" ":";";return typeof t=="object"&&!Array.isArray(t)&&(t=Object.entries(t).filter(([,s])=>s).map(([s,o])=>e==="style"?`${s}:${o}`:s)),(r=String(Array.isArray(t)?t.join(n):t))==null?void 0:r.split(n).filter(s=>s.trim()).filter(Boolean).join(n)}async function rl(e,t){for(const n of Object.keys(e)){if(["class","style"].includes(n)){e[n]=Su(n,e[n]);continue}if(e[n]instanceof Promise&&(e[n]=await e[n]),!t&&!tl.includes(n)){const r=String(e[n]),s=n.startsWith("data-");r==="true"||r===""?e[n]=s?"true":!0:e[n]||(s&&r==="false"?e[n]="false":delete e[n])}}return e}const Au=10;async function Ou(e){const t=[];return Object.entries(e.resolvedInput).filter(([n,r])=>typeof r<"u"&&xu.includes(n)).forEach(([n,r])=>{const s=Eu(r);t.push(...s.map(o=>Pu(n,o,e)).flat())}),(await Promise.all(t)).flat().filter(Boolean).map((n,r)=>(n._e=e._i,e.mode&&(n._m=e.mode),n._p=(e._i<c&&c[u]||void 0,t):l=t[i],typeof l<"u"?(l||"").replace(/"/g,'\\"'):!1}let s=e;try{s=decodeURI(e)}catch{}return(s.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const l=r(i.slice(1));typeof l=="string"&&(e=e.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(c,u)=>`${l}${u}`).trim())}),e.includes(Be)&&(e.endsWith(Be)&&(e=e.slice(0,-Be.length).trim()),e.startsWith(Be)&&(e=e.slice(Be.length).trim()),e=e.replace(new RegExp(`\\${Be}\\s*\\${Be}`,"g"),Be),e=cn(e,{separator:n},n)),e}async function sl(e,t={}){var f;const n=t.document||e.resolvedOptions.document;if(!n||!e.dirty)return;const r={shouldRender:!0,tags:[]};if(await e.hooks.callHook("dom:beforeRender",r),!r.shouldRender)return;const s=(await e.resolveTags()).map(a=>({tag:a,id:ln.includes(a.tag)?zs(a):a.tag,shouldRender:!0}));let o=e._dom;if(!o){o={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const a of["body","head"]){const h=(f=n[a])==null?void 0:f.children,g=[];for(const y of[...h].filter(E=>ln.includes(E.tagName.toLowerCase()))){const E={tag:y.tagName.toLowerCase(),props:await rl(y.getAttributeNames().reduce((M,m)=>({...M,[m]:y.getAttribute(m)}),{})),innerHTML:y.innerHTML};let j=1,D=nl(E);for(;D&&g.find(M=>M._d===D);)D=`${D}:${j++}`;E._d=D||void 0,g.push(E),o.elMap[y.getAttribute("data-hid")||zs(E)]=y}}}o.pendingSideEffects={...o.sideEffects||{}},o.sideEffects={};function i(a,h,g){const y=`${a}:${h}`;o.sideEffects[y]=g,delete o.pendingSideEffects[y]}function l({id:a,$el:h,tag:g}){const y=g.tag.endsWith("Attrs");o.elMap[a]=h,y||(["textContent","innerHTML"].forEach(E=>{g[E]&&g[E]!==h[E]&&(h[E]=g[E])}),i(a,"el",()=>{var E;(E=o.elMap[a])==null||E.remove(),delete o.elMap[a]}));for(const[E,j]of Object.entries(g._eventHandlers||{}))h.getAttribute(`data-${E}`)!==""&&((g.tag==="bodyAttrs"?n.defaultView:h).addEventListener(E.replace("on",""),j.bind(h)),h.setAttribute(`data-${E}`,""));Object.entries(g.props).forEach(([E,j])=>{const D=`attr:${E}`;if(E==="class")for(const M of(j||"").split(" ").filter(Boolean))y&&i(a,`${D}:${M}`,()=>h.classList.remove(M)),!h.classList.contains(M)&&h.classList.add(M);else if(E==="style")for(const M of(j||"").split(";").filter(Boolean)){const[m,...T]=M.split(":").map(P=>P.trim());i(a,`${D}:${m}`,()=>{h.style.removeProperty(m)}),h.style.setProperty(m,T.join(":"))}else h.getAttribute(E)!==j&&h.setAttribute(E,j===!0?"":String(j)),y&&i(a,D,()=>h.removeAttribute(E))})}const c=[],u={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const a of s){const{tag:h,shouldRender:g,id:y}=a;if(g){if(h.tag==="title"){n.title=h.textContent;continue}a.$el=a.$el||o.elMap[y],a.$el?l(a):ln.includes(h.tag)&&c.push(a)}}for(const a of c){const h=a.tag.tagPosition||"head";a.$el=n.createElement(a.tag.tag),l(a),u[h]=u[h]||n.createDocumentFragment(),u[h].appendChild(a.$el)}for(const a of s)await e.hooks.callHook("dom:renderTag",a,n,i);u.head&&n.head.appendChild(u.head),u.bodyOpen&&n.body.insertBefore(u.bodyOpen,n.body.firstChild),u.bodyClose&&n.body.appendChild(u.bodyClose),Object.values(o.pendingSideEffects).forEach(a=>a()),e._dom=o,e.dirty=!1,await e.hooks.callHook("dom:rendered",{renders:s})}async function Iu(e,t={}){const n=t.delayFn||(r=>setTimeout(r,10));return e._domUpdatePromise=e._domUpdatePromise||new Promise(r=>n(async()=>{await sl(e,t),delete e._domUpdatePromise,r()}))}function Hu(e){return t=>{var r,s;const n=((s=(r=t.resolvedOptions.document)==null?void 0:r.head.querySelector('script[id="unhead:payload"]'))==null?void 0:s.innerHTML)||!1;return n&&t.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(o){Iu(o,e)}}}}}const Mu=["templateParams","htmlAttrs","bodyAttrs"],Lu={hooks:{"tag:normalise":function({tag:e}){["hid","vmid","key"].forEach(r=>{e.props[r]&&(e.key=e.props[r],delete e.props[r])});const n=nl(e)||(e.key?`${e.tag}:${e.key}`:!1);n&&(e._d=n)},"tags:resolve":function(e){const t={};e.tags.forEach(r=>{const s=(r.key?`${r.tag}:${r.key}`:r._d)||r._p,o=t[s];if(o){let l=r==null?void 0:r.tagDuplicateStrategy;if(!l&&Mu.includes(r.tag)&&(l="merge"),l==="merge"){const c=o.props;["class","style"].forEach(u=>{c[u]&&(r.props[u]?(u==="style"&&!c[u].endsWith(";")&&(c[u]+=";"),r.props[u]=`${c[u]} ${r.props[u]}`):r.props[u]=c[u])}),t[s].props={...c,...r.props};return}else if(r._e===o._e){o._duped=o._duped||[],r._d=`${o._d}:${o._duped.length+1}`,o._duped.push(r);return}else if(Tn(r)>Tn(o))return}const i=Object.keys(r.props).length+(r.innerHTML?1:0)+(r.textContent?1:0);if(ln.includes(r.tag)&&i===0){delete t[s];return}t[s]=r});const n=[];Object.values(t).forEach(r=>{const s=r._duped;delete r._duped,n.push(r),s&&n.push(...s)}),e.tags=n,e.tags=e.tags.filter(r=>!(r.tag==="meta"&&(r.props.name||r.props.property)&&!r.props.content))}}},Nu={mode:"server",hooks:{"tags:resolve":function(e){const t={};e.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{t[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(t).length&&e.tags.push({tag:"script",innerHTML:JSON.stringify(t),props:{id:"unhead:payload",type:"application/json"}})}}},ju=["script","link","bodyAttrs"],$u=e=>({hooks:{"tags:resolve":function(t){for(const n of t.tags.filter(r=>ju.includes(r.tag)))Object.entries(n.props).forEach(([r,s])=>{r.startsWith("on")&&typeof s=="function"&&(e.ssr&&no.includes(r)?n.props[r]=`this.dataset.${r}fired = true`:delete n.props[r],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[r]=s)}),e.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||Xr(n.props.src||n.props.href))},"dom:renderTag":function({$el:t,tag:n}){var r,s;for(const o of Object.keys((t==null?void 0:t.dataset)||{}).filter(i=>no.some(l=>`${l}fired`===i))){const i=o.replace("fired","");(s=(r=n._eventHandlers)==null?void 0:r[i])==null||s.call(t,new Event(i.replace("on","")))}}}}),Fu=["link","style","script","noscript"],Uu={hooks:{"tag:normalise":({tag:e})=>{e.key&&Fu.includes(e.tag)&&(e.props["data-hid"]=e._h=Xr(e.key))}}},Bu={hooks:{"tags:resolve":e=>{const t=n=>{var r;return(r=e.tags.find(s=>s._d===n))==null?void 0:r._p};for(const{prefix:n,offset:r}of ku)for(const s of e.tags.filter(o=>typeof o.tagPriority=="string"&&o.tagPriority.startsWith(n))){const o=t(s.tagPriority.replace(n,""));typeof o<"u"&&(s._p=o+r)}e.tags.sort((n,r)=>n._p-r._p).sort((n,r)=>Tn(n)-Tn(r))}}},Du={meta:"content",link:"href",htmlAttrs:"lang"},Wu=e=>({hooks:{"tags:resolve":t=>{var l;const{tags:n}=t,r=(l=n.find(c=>c.tag==="title"))==null?void 0:l.textContent,s=n.findIndex(c=>c.tag==="templateParams"),o=s!==-1?n[s].props:{},i=o.separator||"|";delete o.separator,o.pageTitle=cn(o.pageTitle||r||"",o,i);for(const c of n.filter(u=>u.processTemplateParams!==!1)){const u=Du[c.tag];u&&typeof c.props[u]=="string"?c.props[u]=cn(c.props[u],o,i):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(f=>{typeof c[f]=="string"&&(c[f]=cn(c[f],o,i))})}e._templateParams=o,e._separator=i,t.tags=n.filter(c=>c.tag!=="templateParams")}}}),Vu={hooks:{"tags:resolve":e=>{const{tags:t}=e;let n=t.findIndex(s=>s.tag==="titleTemplate");const r=t.findIndex(s=>s.tag==="title");if(r!==-1&&n!==-1){const s=Zs(t[n].textContent,t[r].textContent);s!==null?t[r].textContent=s||t[r].textContent:delete t[r]}else if(n!==-1){const s=Zs(t[n].textContent);s!==null&&(t[n].textContent=s,t[n].tag="title",n=-1)}n!==-1&&delete t[n],e.tags=t.filter(Boolean)}}},Ku={hooks:{"tags:afterResolve":function(e){for(const t of e.tags)typeof t.innerHTML=="string"&&(t.innerHTML&&["application/ld+json","application/json"].includes(t.props.type)?t.innerHTML=t.innerHTML.replace(/{l.dirty=!0,t.callHook("entries:updated",l)};let s=0,o=[];const i=[],l={plugins:i,dirty:!1,resolvedOptions:e,hooks:t,headEntries(){return o},use(c){const u=typeof c=="function"?c(l):c;(!u.key||!i.some(f=>f.key===u.key))&&(i.push(u),ro(u.mode,n)&&t.addHooks(u.hooks||{}))},push(c,u){u==null||delete u.head;const f={_i:s++,input:c,...u};return ro(f.mode,n)&&(o.push(f),r()),{dispose(){o=o.filter(a=>a._i!==f._i),t.callHook("entries:updated",l),r()},patch(a){o=o.map(h=>(h._i===f._i&&(h.input=f.input=a),h)),r()}}},async resolveTags(){const c={tags:[],entries:[...o]};await t.callHook("entries:resolve",c);for(const u of c.entries){const f=u.resolvedInput||u.input;if(u.resolvedInput=await(u.transform?u.transform(f):f),u.resolvedInput)for(const a of await Ou(u)){const h={tag:a,entry:u,resolvedOptions:l.resolvedOptions};await t.callHook("tag:normalise",h),c.tags.push(h.tag)}}return await t.callHook("tags:beforeResolve",c),await t.callHook("tags:resolve",c),await t.callHook("tags:afterResolve",c),c.tags},ssr:n};return[Lu,Nu,$u,Uu,Bu,Wu,Vu,Ku,...(e==null?void 0:e.plugins)||[]].forEach(c=>l.use(c)),l.hooks.callHook("init",l),l}function Ju(){return ol}const Xu=ki.startsWith("3");function Qu(e){return typeof e=="function"?e():se(e)}function xn(e,t=""){if(e instanceof Promise)return e;const n=Qu(e);return!e||!n?n:Array.isArray(n)?n.map(r=>xn(r,t)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([r,s])=>r==="titleTemplate"||r.startsWith("on")?[r,se(s)]:[r,xn(s,r)])):n}const Yu={hooks:{"entries:resolve":function(e){for(const t of e.entries)t.resolvedInput=xn(t.input)}}},il="usehead";function zu(e){return{install(n){Xu&&(n.config.globalProperties.$unhead=e,n.config.globalProperties.$head=e,n.provide(il,e))}}.install}function Zu(e={}){e.domDelayFn=e.domDelayFn||(n=>Nr(()=>setTimeout(()=>n(),0)));const t=qu(e);return t.use(Yu),t.install=zu(t),t}const Er=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Tr="__unhead_injection_handler__";function ed(e){Er[Tr]=e}function td(){if(Tr in Er)return Er[Tr]();const e=wt(il);return e||Ju()}function Qr(e,t={}){const n=t.head||td();if(n)return n.ssr?n.push(e,t):nd(n,e,t)}function nd(e,t,n={}){const r=Oe(!1),s=Oe({});Xc(()=>{s.value=r.value?{}:xn(t)});const o=e.push(s.value,n);return Ht(s,l=>{o.patch(l)}),Pi()&&(Qo(()=>{o.dispose()}),yi(()=>{r.value=!0}),_i(()=>{r.value=!1})),o}let an,fn;function rd(){return an=$fetch(qr(`builds/meta/${Ye().app.buildId}.json`),{responseType:"json"}),an.then(e=>{fn=Zf(e.matcher)}).catch(e=>{console.error("[nuxt] Error fetching app manifest.",e)}),an}function jn(){return an||rd()}async function Yr(e){if(await jn(),!fn)return console.error("[nuxt] Error creating app manifest matcher.",fn),{};try{return tu({},...fn.matchAll(e).reverse())}catch(t){return console.error("[nuxt] Error matching route rules.",t),{}}}async function so(e,t={}){const n=await od(e,t),r=ae(),s=r._payloadCache=r._payloadCache||{};return n in s||(s[n]=cl(e).then(o=>o?ll(n).then(i=>i||(delete s[n],null)):(s[n]=null,null))),s[n]}const sd="_payload.json";async function od(e,t={}){const n=new URL(e,"http://localhost");if(n.host!=="localhost"||Pt(n.pathname,{acceptRelative:!0}))throw new Error("Payload URL must not include hostname: "+e);const r=Ye(),s=t.hash||(t.fresh?Date.now():r.app.buildId),o=r.app.cdnURL,i=o&&await cl(e)?o:r.app.baseURL;return Nn(i,n.pathname,sd+(s?`?${s}`:""))}async function ll(e){const t=fetch(e).then(n=>n.text().then(al));try{return await t}catch(n){console.warn("[nuxt] Cannot load payload ",e,n)}return null}async function cl(e=Zi().path){if(e=Vr(e),(await jn()).prerendered.includes(e))return!0;const n=await Yr(e);return!!n.prerender&&!n.redirect}let en=null;async function id(){if(en)return en;const e=document.getElementById("__NUXT_DATA__");if(!e)return{};const t=await al(e.textContent||""),n=e.dataset.src?await ll(e.dataset.src):void 0;return en={...t,...n,...window.__NUXT__},en}async function al(e){return await wu(e,ae()._payloadRevivers)}function ld(e,t){ae()._payloadRevivers[e]=t}const oo={NuxtError:e=>Jr(e),EmptyShallowRef:e=>hs(e==="_"?void 0:e==="0n"?BigInt(0):bn(e)),EmptyRef:e=>Oe(e==="_"?void 0:e==="0n"?BigInt(0):bn(e)),ShallowRef:e=>hs(e),ShallowReactive:e=>ht(e),Ref:e=>Oe(e),Reactive:e=>Xe(e)},cd=He({name:"nuxt:revive-payload:client",order:-30,async setup(e){let t,n;for(const r in oo)ld(r,oo[r]);Object.assign(e.payload,([t,n]=qi(()=>e.runWithContext(id)),t=await t,n(),t)),window.__NUXT__=e.payload}}),ad=[],fd=He({name:"nuxt:head",enforce:"pre",setup(e){const t=Zu({plugins:ad});ed(()=>ae().vueApp._context.provides.usehead),e.vueApp.use(t);{let n=!0;const r=async()=>{n=!1,await sl(t)};t.hooks.hook("dom:beforeRender",s=>{s.shouldRender=!n}),e.hooks.hook("page:start",()=>{n=!0}),e.hooks.hook("page:finish",()=>{e.isHydrating||r()}),e.hooks.hook("app:error",r),e.hooks.hook("app:suspense:resolve",r)}}}),ud=async e=>{let t,n;const r=([t,n]=qi(()=>Yr(e.path)),t=await t,n(),t);if(r.redirect)return Pt(r.redirect,{acceptRelative:!0})?(window.location.href=r.redirect,!1):r.redirect},dd=[ud];function Zn(e){typeof e=="object"&&(e=Bi({pathname:e.path||"",search:Ni(e.query||{}),hash:e.hash||""}));const t=new URL(e.toString(),window.location.href);return{path:t.pathname,fullPath:e,query:Li(t.search),hash:t.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:e}}const hd=He({name:"nuxt:router",enforce:"pre",setup(e){const t=hf(window.location.pathname,Ye().app.baseURL)+window.location.search+window.location.hash,n=[],r={"navigate:before":[],"resolve:before":[],"navigate:after":[],error:[]},s=(a,h)=>(r[a].push(h),()=>r[a].splice(r[a].indexOf(h),1)),o=Ye().app.baseURL,i=Xe(Zn(t));async function l(a,h){try{const g=Zn(a);for(const y of r["navigate:before"]){const E=await y(g,i);if(E===!1||E instanceof Error)return;if(typeof E=="string"&&E.length)return l(E,!0)}for(const y of r["resolve:before"])await y(g,i);Object.assign(i,g),window.history[h?"replaceState":"pushState"]({},"",Nn(o,g.fullPath)),e.isHydrating||await e.runWithContext(du);for(const y of r["navigate:after"])await y(g,i)}catch(g){for(const y of r.error)await y(g)}}const u={currentRoute:Oi(()=>i),isReady:()=>Promise.resolve(),options:{},install:()=>Promise.resolve(),push:a=>l(a,!1),replace:a=>l(a,!0),back:()=>window.history.go(-1),go:a=>window.history.go(a),forward:()=>window.history.go(1),beforeResolve:a=>s("resolve:before",a),beforeEach:a=>s("navigate:before",a),afterEach:a=>s("navigate:after",a),onError:a=>s("error",a),resolve:Zn,addRoute:(a,h)=>{n.push(h)},getRoutes:()=>n,hasRoute:a=>n.some(h=>h.name===a),removeRoute:a=>{const h=n.findIndex(g=>g.name===a);h!==-1&&n.splice(h,1)}};e.vueApp.component("RouterLink",Zo({functional:!0,props:{to:{type:String,required:!0},custom:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:String},setup:(a,{slots:h})=>{const g=()=>l(a.to,a.replace);return()=>{var E;const y=u.resolve(a.to);return a.custom?(E=h.default)==null?void 0:E.call(h,{href:a.to,navigate:g,route:y}):fa("a",{href:a.to,onClick:j=>(j.preventDefault(),g())},h)}}})),window.addEventListener("popstate",a=>{const h=a.target.location;u.replace(h.href.replace(h.origin,""))}),e._route=i,e._middleware=e._middleware||{global:[],named:{}};const f=e.payload.state._layout;return e.hooks.hookOnce("app:created",async()=>{u.beforeEach(async(a,h)=>{a.meta=Xe(a.meta||{}),e.isHydrating&&f&&!vt(a.meta.layout)&&(a.meta.layout=f),e._processingMiddleware=!0;{const g=new Set([...dd,...e._middleware.global]);{const y=await e.runWithContext(()=>Yr(a.path));if(y.appMiddleware)for(const E in y.appMiddleware){const j=e._middleware.named[E];if(!j)return;y.appMiddleware[E]?g.add(j):g.delete(j)}}for(const y of g){const E=await e.runWithContext(()=>y(a,h));if(E!==!0&&(E||E===!1))return E}}}),u.afterEach(()=>{delete e._processingMiddleware}),await u.replace(t),gf(i.fullPath,t)||await e.runWithContext(()=>au(i.fullPath))}),{provide:{route:i,router:u}}}}),io=globalThis.requestIdleCallback||(e=>{const t=Date.now(),n={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))};return setTimeout(()=>{e(n)},1)}),Bd=globalThis.cancelIdleCallback||(e=>{clearTimeout(e)}),zr=e=>{const t=ae();t.isHydrating?t.hooks.hookOnce("app:suspense:resolve",()=>{io(()=>e())}):io(()=>e())},pd=He({name:"nuxt:payload",setup(e){lt().beforeResolve(async(t,n)=>{if(t.path===n.path)return;const r=await so(t.path);r&&Object.assign(e.static.data,r.data)}),zr(()=>{var t;e.hooks.hook("link:prefetch",async n=>{const{hostname:r}=new URL(n,window.location.href);r===window.location.hostname&&await so(n)}),((t=navigator.connection)==null?void 0:t.effectiveType)!=="slow-2g"&&setTimeout(jn,1e3)})}}),gd=He(()=>{const e=lt();zr(()=>{e.beforeResolve(async()=>{await new Promise(t=>{setTimeout(t,100),requestAnimationFrame(()=>{setTimeout(t,0)})})})})}),md=He(e=>{let t;async function n(){const r=await jn();t&&clearTimeout(t),t=setTimeout(n,Xs);try{const s=await $fetch(qr("builds/latest.json")+`?${Date.now()}`);s.id!==r.id&&e.hooks.callHook("app:manifest:update",s)}catch{}}zr(()=>{t=setTimeout(n,Xs)})});function _d(e={}){const t=e.path||window.location.pathname;let n={};try{n=bn(sessionStorage.getItem("nuxt:reload")||"{}")}catch{}if(e.force||(n==null?void 0:n.path)!==t||(n==null?void 0:n.expires){r.clear()}),e.hook("app:chunkError",({error:o})=>{r.add(o)});function s(o){const l="href"in o&&o.href[0]==="#"?n.app.baseURL+o.href:Nn(n.app.baseURL,o.fullPath);_d({path:l,persistState:!0})}e.hook("app:manifest:update",()=>{t.beforeResolve(s)}),t.onError((o,i)=>{r.has(o)&&s(i)})}}),bd=He({name:"nuxt:global-components"}),wd=He(e=>{const{gsuite:t}=Ye().public;Qr({script:[{src:`https://www.google.com/recaptcha/api.js?render=${t.recaptcha.siteKey}`,async:!0}]})}),vd=He({name:"nuxt-gsuite-analytics",setup(){const{gsuite:e}=Ye().public;Qr({script:[{src:`https://www.googletagmanager.com/gtag/js?id=${e.analytics.measurementId}`,async:!0},{innerHTML:`window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', '${e.analytics.measurementId}');`}]})}}),Ed=[cd,fd,hd,pd,gd,md,yd,bd,wd,vd],Td="modulepreload",xd=function(e,t){return e[0]==="."?new URL(e,t).href:e},lo={},Rd=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){const o=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));s=Promise.all(n.map(c=>{if(c=xd(c,r),c in lo)return;lo[c]=!0;const u=c.endsWith(".css"),f=u?'[rel="stylesheet"]':"";if(!!r)for(let g=o.length-1;g>=0;g--){const y=o[g];if(y.href===c&&(!u||y.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${c}"]${f}`))return;const h=document.createElement("link");if(h.rel=u?"stylesheet":Td,u||(h.as="script",h.crossOrigin=""),h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),u)return new Promise((g,y)=>{h.addEventListener("load",g),h.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${c}`)))})}))}return s.then(()=>t()).catch(o=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=o,window.dispatchEvent(i),!i.defaultPrevented)throw o})},co=(...e)=>Rd(...e).catch(t=>{const n=new Event("nuxt.preloadError");throw n.payload=t,window.dispatchEvent(n),t}),Zr=Oe(!1);Ht(Zr,e=>{Qr({style:[{key:"recaptcha-badge",innerHTML:`.grecaptcha-badge{display:${e?"none":"block"}!important;}`}]})});const er=e=>Zr.value=e;function Cd(){const{gsuite:e}=Ye().public;return{hidden:Zr,execute:async r=>await grecaptcha.execute(e.recaptcha.siteKey,{action:r}),verify:async r=>await $fetch(`/recaptcha/${r}`),toggleBadge:er,hideBadge:()=>er(!0),showBadge:()=>er(!1),config:e}}const Pd={name:"Contact",setup(){const e=Cd(),t=()=>Oe({fullname:""}),n=Xe(t());return{recaptcha:e,state:n,reset:()=>Object.assign(n,t())}},methods:{async submitForm(){try{const e=await this.recaptcha.execute("submit");if(e){const t=await this.recaptcha.verify(e);if(t.valid&&!t.errors)return this.reset(),!0;if(t.errors&&t.errors.length>0)throw new Error(t.errors.join(", "))}return!1}catch{return!1}}}},Sd=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},Ad=ke("h1",null,"nuxt-gsuite playground!",-1),Od=ke("label",{for:"fullname"},"Full Name",-1),kd=ke("br",null,null,-1),Id=ke("div",null,[ke("button",{type:"submit"}," Submit ")],-1);function Hd(e,t,n,r,s,o){return je(),Ti(be,null,[Ad,ke("form",{onSubmit:t[1]||(t[1]=La(i=>o.submitForm(),["prevent"]))},[ke("div",null,[Od,kd,Pc(ke("input",{id:"fullname","onUpdate:modelValue":t[0]||(t[0]=i=>r.state.fullname=i),type:"text"},null,512),[[Ia,r.state.fullname]])]),Id],32)],64)}const Md=Sd(Pd,[["render",Hd]]),Ld={__name:"nuxt-error-page",props:{error:Object},setup(e){const n=e.error;n.stack&&n.stack.split(` +**/const ua="http://www.w3.org/2000/svg",da="http://www.w3.org/1998/Math/MathML",Ne=typeof document<"u"?document:null,Is=Ne&&Ne.createElement("template"),ha={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t==="svg"?Ne.createElementNS(ua,e):t==="mathml"?Ne.createElementNS(da,e):n?Ne.createElement(e,{is:n}):Ne.createElement(e);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>Ne.createTextNode(e),createComment:e=>Ne.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ne.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,o){const i=n?n.previousSibling:t.lastChild;if(s&&(s===o||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===o||!(s=s.nextSibling)););else{Is.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const l=Is.content;if(r==="svg"||r==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},pa=Symbol("_vtc");function ga(e,t,n){const r=e[pa];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Hs=Symbol("_vod"),ma=Symbol("_vsh"),_a=Symbol(""),ya=/(^|;)\s*display\s*:/;function ba(e,t,n){const r=e.style,s=ne(n);let o=!1;if(n&&!s){if(t)if(ne(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&on(r,l,"")}else for(const i in t)n[i]==null&&on(r,i,"");for(const i in n)i==="display"&&(o=!0),on(r,i,n[i])}else if(s){if(t!==n){const i=r[_a];i&&(n+=";"+i),r.cssText=n,o=ya.test(n)}}else t&&e.removeAttribute("style");Hs in e&&(e[Hs]=o?r.display:"",e[ma]&&(r.display="none"))}const Ms=/\s*!important$/;function on(e,t,n){if(U(n))n.forEach(r=>on(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=wa(e,t);Ms.test(n)?e.setProperty(Rt(r),n.replace(Ms,""),"important"):e[r]=n}}const Ls=["Webkit","Moz","ms"],Gn={};function wa(e,t){const n=Gn[t];if(n)return n;let r=Ie(t);if(r!=="filter"&&r in e)return Gn[t]=r;r=Pn(r);for(let s=0;sJn||(Ra.then(()=>Jn=0),Jn=Date.now());function Pa(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;Re(Sa(r,n.value),t,5,[r])};return n.value=e,n.attached=Ca(),n}function Sa(e,t){if(U(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const Us=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Aa=(e,t,n,r,s,o,i,l,c)=>{const u=s==="svg";t==="class"?ga(e,r,u):t==="style"?ba(e,n,r):Ut(t)?Rr(t)||Ta(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Oa(e,t,r,u))?(va(e,t,r,o,i,l,c),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&js(e,t,r,u,i,t!=="value")):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),js(e,t,r,u))};function Oa(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Us(t)&&F(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Us(t)&&ne(n)?!1:t in e}const Bs=e=>{const t=e.props["onUpdate:modelValue"]||!1;return U(t)?n=>tn(t,n):t};function ka(e){e.target.composing=!0}function Ds(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Xn=Symbol("_assign"),Ia={created(e,{modifiers:{lazy:t,trim:n,number:r}},s){e[Xn]=Bs(s);const o=r||s.props&&s.props.type==="number";dt(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=tr(l)),e[Xn](l)}),n&&dt(e,"change",()=>{e.value=e.value.trim()}),t||(dt(e,"compositionstart",ka),dt(e,"compositionend",Ds),dt(e,"change",Ds))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:s,number:o}},i){if(e[Xn]=Bs(i),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?tr(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(r&&t===n||s&&e.value.trim()===c)||(e.value=c))}},Ha=["ctrl","shift","alt","meta"],Ma={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Ha.some(n=>e[`${n}Key`]&&!t.includes(n))},La=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(s,...o)=>{for(let i=0;i{const t=Na().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Mi(r);if(!s)return;const o=t._component;!F(o)&&!o.render&&!o.template&&(o.template=s.innerHTML),s.innerHTML="";const i=n(s,!1,Hi(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),i},t},Fa=(...e)=>{const t=ja().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Mi(r);if(s)return n(s,!0,Hi(s))},t};function Hi(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Mi(e){return ne(e)?document.querySelector(e):e}const Ua=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,Ba=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,Da=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function Wa(e,t){if(e==="__proto__"||e==="constructor"&&t&&typeof t=="object"&&"prototype"in t){Va(e);return}return t}function Va(e){console.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}function bn(e,t={}){if(typeof e!="string")return e;const n=e.trim();if(e[0]==='"'&&e.endsWith('"')&&!e.includes("\\"))return n.slice(1,-1);if(n.length<=9){const r=n.toLowerCase();if(r==="true")return!0;if(r==="false")return!1;if(r==="undefined")return;if(r==="null")return null;if(r==="nan")return Number.NaN;if(r==="infinity")return Number.POSITIVE_INFINITY;if(r==="-infinity")return Number.NEGATIVE_INFINITY}if(!Da.test(e)){if(t.strict)throw new SyntaxError("[destr] Invalid JSON");return e}try{if(Ua.test(e)||Ba.test(e)){if(t.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(e,Wa)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}const Ka=/#/g,qa=/&/g,Ga=/\//g,Ja=/=/g,Wr=/\+/g,Xa=/%5e/gi,Qa=/%60/gi,Ya=/%7c/gi,za=/%20/gi;function Za(e){return encodeURI(""+e).replace(Ya,"|")}function pr(e){return Za(typeof e=="string"?e:JSON.stringify(e)).replace(Wr,"%2B").replace(za,"+").replace(Ka,"%23").replace(qa,"%26").replace(Qa,"`").replace(Xa,"^").replace(Ga,"%2F")}function Qn(e){return pr(e).replace(Ja,"%3D")}function wn(e=""){try{return decodeURIComponent(""+e)}catch{return""+e}}function ef(e){return wn(e.replace(Wr," "))}function tf(e){return wn(e.replace(Wr," "))}function Li(e=""){const t={};e[0]==="?"&&(e=e.slice(1));for(const n of e.split("&")){const r=n.match(/([^=]+)=?(.*)/)||[];if(r.length<2)continue;const s=ef(r[1]);if(s==="__proto__"||s==="constructor")continue;const o=tf(r[2]||"");t[s]===void 0?t[s]=o:Array.isArray(t[s])?t[s].push(o):t[s]=[t[s],o]}return t}function nf(e,t){return(typeof t=="number"||typeof t=="boolean")&&(t=String(t)),t?Array.isArray(t)?t.map(n=>`${Qn(e)}=${pr(n)}`).join("&"):`${Qn(e)}=${pr(t)}`:Qn(e)}function Ni(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>nf(t,e[t])).filter(Boolean).join("&")}const rf=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,sf=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,of=/^([/\\]\s*){2,}[^/\\]/,lf=/^[\s\0]*(blob|data|javascript|vbscript):$/i,cf=/\/$|\/\?|\/#/,af=/^\.?\//;function Pt(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?rf.test(e):sf.test(e)||(t.acceptRelative?of.test(e):!1)}function ff(e){return!!e&&lf.test(e)}function gr(e="",t){return t?cf.test(e):e.endsWith("/")}function Vr(e="",t){if(!t)return(gr(e)?e.slice(0,-1):e)||"/";if(!gr(e,!0))return e||"/";let n=e,r="";const s=e.indexOf("#");s>=0&&(n=e.slice(0,s),r=e.slice(s));const[o,...i]=n.split("?");return((o.endsWith("/")?o.slice(0,-1):o)||"/")+(i.length>0?`?${i.join("?")}`:"")+r}function mr(e="",t){if(!t)return e.endsWith("/")?e:e+"/";if(gr(e,!0))return e||"/";let n=e,r="";const s=e.indexOf("#");if(s>=0&&(n=e.slice(0,s),r=e.slice(s),!n))return r;const[o,...i]=n.split("?");return o+"/"+(i.length>0?`?${i.join("?")}`:"")+r}function uf(e=""){return e.startsWith("/")}function Vs(e=""){return uf(e)?e:"/"+e}function df(e,t){if($i(t)||Pt(e))return e;const n=Vr(t);return e.startsWith(n)?e:Nn(n,e)}function hf(e,t){if($i(t))return e;const n=Vr(t);if(!e.startsWith(n))return e;const r=e.slice(n.length);return r[0]==="/"?r:"/"+r}function ji(e,t){const n=mf(e),r={...Li(n.search),...t};return n.search=Ni(r),Bi(n)}function $i(e){return!e||e==="/"}function pf(e){return e&&e!=="/"}function Nn(e,...t){let n=e||"";for(const r of t.filter(s=>pf(s)))if(n){const s=r.replace(af,"");n=mr(n)+s}else n=r;return n}function Fi(...e){var i,l,c,u;const t=/\/(?!\/)/,n=e.filter(Boolean),r=[];let s=0;for(const f of n)if(!(!f||f==="/")){for(const[a,h]of f.split(t).entries())if(!(!h||h===".")){if(h===".."){if(r.length===1&&Pt(r[0]))continue;r.pop(),s--;continue}if(a===1&&((i=r[r.length-1])!=null&&i.endsWith(":/"))){r[r.length-1]+="/"+h;continue}r.push(h),s++}}let o=r.join("/");return s>=0?(l=n[0])!=null&&l.startsWith("/")&&!o.startsWith("/")?o="/"+o:(c=n[0])!=null&&c.startsWith("./")&&!o.startsWith("./")&&(o="./"+o):o="../".repeat(-1*s)+o,(u=n[n.length-1])!=null&&u.endsWith("/")&&!o.endsWith("/")&&(o+="/"),o}function gf(e,t,n={}){return n.trailingSlash||(e=mr(e),t=mr(t)),n.leadingSlash||(e=Vs(e),t=Vs(t)),n.encoding||(e=wn(e),t=wn(t)),e===t}const Ui=Symbol.for("ufo:protocolRelative");function mf(e="",t){const n=e.match(/^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i);if(n){const[,a,h=""]=n;return{protocol:a.toLowerCase(),pathname:h,href:a+h,auth:"",host:"",search:"",hash:""}}if(!Pt(e,{acceptRelative:!0}))return Ks(e);const[,r="",s,o=""]=e.replace(/\\/g,"/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/)||[],[,i="",l=""]=o.match(/([^#/?]*)(.*)?/)||[],{pathname:c,search:u,hash:f}=Ks(l.replace(/\/(?=[A-Za-z]:)/,""));return{protocol:r.toLowerCase(),auth:s?s.slice(0,Math.max(0,s.length-1)):"",host:i,pathname:c,search:u,hash:f,[Ui]:!r}}function Ks(e=""){const[t="",n="",r=""]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:r}}function Bi(e){const t=e.pathname||"",n=e.search?(e.search.startsWith("?")?"":"?")+e.search:"",r=e.hash||"",s=e.auth?e.auth+"@":"",o=e.host||"";return(e.protocol||e[Ui]?(e.protocol||"")+"//":"")+s+o+t+n+r}class _f extends Error{constructor(t,n){super(t,n),this.name="FetchError",n!=null&&n.cause&&!this.cause&&(this.cause=n.cause)}}function yf(e){var c,u,f,a,h;const t=((c=e.error)==null?void 0:c.message)||((u=e.error)==null?void 0:u.toString())||"",n=((f=e.request)==null?void 0:f.method)||((a=e.options)==null?void 0:a.method)||"GET",r=((h=e.request)==null?void 0:h.url)||String(e.request)||"/",s=`[${n}] ${JSON.stringify(r)}`,o=e.response?`${e.response.status} ${e.response.statusText}`:"",i=`${s}: ${o}${t?` ${t}`:""}`,l=new _f(i,e.error?{cause:e.error}:void 0);for(const g of["request","options","response"])Object.defineProperty(l,g,{get(){return e[g]}});for(const[g,y]of[["data","_data"],["status","status"],["statusCode","status"],["statusText","statusText"],["statusMessage","statusText"]])Object.defineProperty(l,g,{get(){return e.response&&e.response[y]}});return l}const bf=new Set(Object.freeze(["PATCH","POST","PUT","DELETE"]));function qs(e="GET"){return bf.has(e.toUpperCase())}function wf(e){if(e===void 0)return!1;const t=typeof e;return t==="string"||t==="number"||t==="boolean"||t===null?!0:t!=="object"?!1:Array.isArray(e)?!0:e.buffer?!1:e.constructor&&e.constructor.name==="Object"||typeof e.toJSON=="function"}const vf=new Set(["image/svg","application/xml","application/xhtml","application/html"]),Ef=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function Tf(e=""){if(!e)return"json";const t=e.split(";").shift()||"";return Ef.test(t)?"json":vf.has(t)||t.startsWith("text/")?"text":"blob"}function xf(e,t,n=globalThis.Headers){const r={...t,...e};if(t!=null&&t.params&&(e!=null&&e.params)&&(r.params={...t==null?void 0:t.params,...e==null?void 0:e.params}),t!=null&&t.query&&(e!=null&&e.query)&&(r.query={...t==null?void 0:t.query,...e==null?void 0:e.query}),t!=null&&t.headers&&(e!=null&&e.headers)){r.headers=new n((t==null?void 0:t.headers)||{});for(const[s,o]of new n((e==null?void 0:e.headers)||{}))r.headers.set(s,o)}return r}const Rf=new Set([408,409,425,429,500,502,503,504]),Cf=new Set([101,204,205,304]);function Di(e={}){const{fetch:t=globalThis.fetch,Headers:n=globalThis.Headers,AbortController:r=globalThis.AbortController}=e;async function s(l){const c=l.error&&l.error.name==="AbortError"&&!l.options.timeout||!1;if(l.options.retry!==!1&&!c){let f;typeof l.options.retry=="number"?f=l.options.retry:f=qs(l.options.method)?0:1;const a=l.response&&l.response.status||500;if(f>0&&(Array.isArray(l.options.retryStatusCodes)?l.options.retryStatusCodes.includes(a):Rf.has(a))){const h=l.options.retryDelay||0;return h>0&&await new Promise(g=>setTimeout(g,h)),o(l.request,{...l.options,retry:f-1})}}const u=yf(l);throw Error.captureStackTrace&&Error.captureStackTrace(u,o),u}const o=async function(c,u={}){var g;const f={request:c,options:xf(u,e.defaults,n),response:void 0,error:void 0};f.options.method=(g=f.options.method)==null?void 0:g.toUpperCase(),f.options.onRequest&&await f.options.onRequest(f),typeof f.request=="string"&&(f.options.baseURL&&(f.request=df(f.request,f.options.baseURL)),(f.options.query||f.options.params)&&(f.request=ji(f.request,{...f.options.params,...f.options.query}))),f.options.body&&qs(f.options.method)&&(wf(f.options.body)?(f.options.body=typeof f.options.body=="string"?f.options.body:JSON.stringify(f.options.body),f.options.headers=new n(f.options.headers||{}),f.options.headers.has("content-type")||f.options.headers.set("content-type","application/json"),f.options.headers.has("accept")||f.options.headers.set("accept","application/json")):("pipeTo"in f.options.body&&typeof f.options.body.pipeTo=="function"||typeof f.options.body.pipe=="function")&&("duplex"in f.options||(f.options.duplex="half")));let a;if(!f.options.signal&&f.options.timeout){const y=new r;a=setTimeout(()=>y.abort(),f.options.timeout),f.options.signal=y.signal}try{f.response=await t(f.request,f.options)}catch(y){return f.error=y,f.options.onRequestError&&await f.options.onRequestError(f),await s(f)}finally{a&&clearTimeout(a)}if(f.response.body&&!Cf.has(f.response.status)&&f.options.method!=="HEAD"){const y=(f.options.parseResponse?"json":f.options.responseType)||Tf(f.response.headers.get("content-type")||"");switch(y){case"json":{const E=await f.response.text(),j=f.options.parseResponse||bn;f.response._data=j(E);break}case"stream":{f.response._data=f.response.body;break}default:f.response._data=await f.response[y]()}}return f.options.onResponse&&await f.options.onResponse(f),!f.options.ignoreResponseError&&f.response.status>=400&&f.response.status<600?(f.options.onResponseError&&await f.options.onResponseError(f),await s(f)):f.response},i=async function(c,u){return(await o(c,u))._data};return i.raw=o,i.native=(...l)=>t(...l),i.create=(l={})=>Di({...e,defaults:{...e.defaults,...l}}),i}const Kr=function(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")}(),Pf=Kr.fetch||(()=>Promise.reject(new Error("[ofetch] global.fetch is not supported!"))),Sf=Kr.Headers,Af=Kr.AbortController,Of=Di({fetch:Pf,Headers:Sf,AbortController:Af}),kf=Of,If=()=>{var e;return((e=window==null?void 0:window.__NUXT__)==null?void 0:e.config)||{}},vn=If().app,Hf=()=>vn.baseURL,Mf=()=>vn.buildAssetsDir,qr=(...e)=>Fi(Wi(),Mf(),...e),Wi=(...e)=>{const t=vn.cdnURL||vn.baseURL;return e.length?Fi(t,...e):t};globalThis.__buildAssetsURL=qr,globalThis.__publicAssetsURL=Wi;globalThis.$fetch||(globalThis.$fetch=kf.create({baseURL:Hf()}));function _r(e,t={},n){for(const r in e){const s=e[r],o=n?`${n}:${r}`:r;typeof s=="object"&&s!==null?_r(s,t,o):typeof s=="function"&&(t[o]=s)}return t}const Lf={run:e=>e()},Nf=()=>Lf,Vi=typeof console.createTask<"u"?console.createTask:Nf;function jf(e,t){const n=t.shift(),r=Vi(n);return e.reduce((s,o)=>s.then(()=>r.run(()=>o(...t))),Promise.resolve())}function $f(e,t){const n=t.shift(),r=Vi(n);return Promise.all(e.map(s=>r.run(()=>s(...t))))}function Yn(e,t){for(const n of[...e])n(t)}class Ff{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(t,n,r={}){if(!t||typeof n!="function")return()=>{};const s=t;let o;for(;this._deprecatedHooks[t];)o=this._deprecatedHooks[t],t=o.to;if(o&&!r.allowDeprecated){let i=o.message;i||(i=`${s} hook has been deprecated`+(o.to?`, please use ${o.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+t.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[t]=this._hooks[t]||[],this._hooks[t].push(n),()=>{n&&(this.removeHook(t,n),n=void 0)}}hookOnce(t,n){let r,s=(...o)=>(typeof r=="function"&&r(),r=void 0,s=void 0,n(...o));return r=this.hook(t,s),r}removeHook(t,n){if(this._hooks[t]){const r=this._hooks[t].indexOf(n);r!==-1&&this._hooks[t].splice(r,1),this._hooks[t].length===0&&delete this._hooks[t]}}deprecateHook(t,n){this._deprecatedHooks[t]=typeof n=="string"?{to:n}:n;const r=this._hooks[t]||[];delete this._hooks[t];for(const s of r)this.hook(t,s)}deprecateHooks(t){Object.assign(this._deprecatedHooks,t);for(const n in t)this.deprecateHook(n,t[n])}addHooks(t){const n=_r(t),r=Object.keys(n).map(s=>this.hook(s,n[s]));return()=>{for(const s of r.splice(0,r.length))s()}}removeHooks(t){const n=_r(t);for(const r in n)this.removeHook(r,n[r])}removeAllHooks(){for(const t in this._hooks)delete this._hooks[t]}callHook(t,...n){return n.unshift(t),this.callHookWith(jf,t,...n)}callHookParallel(t,...n){return n.unshift(t),this.callHookWith($f,t,...n)}callHookWith(t,n,...r){const s=this._before||this._after?{name:n,args:r,context:{}}:void 0;this._before&&Yn(this._before,s);const o=t(n in this._hooks?[...this._hooks[n]]:[],r);return o instanceof Promise?o.finally(()=>{this._after&&s&&Yn(this._after,s)}):(this._after&&s&&Yn(this._after,s),o)}beforeEach(t){return this._before=this._before||[],this._before.push(t),()=>{if(this._before!==void 0){const n=this._before.indexOf(t);n!==-1&&this._before.splice(n,1)}}}afterEach(t){return this._after=this._after||[],this._after.push(t),()=>{if(this._after!==void 0){const n=this._after.indexOf(t);n!==-1&&this._after.splice(n,1)}}}}function Ki(){return new Ff}function Uf(e={}){let t,n=!1;const r=i=>{if(t&&t!==i)throw new Error("Context conflict")};let s;if(e.asyncContext){const i=e.AsyncLocalStorage||globalThis.AsyncLocalStorage;i?s=new i:console.warn("[unctx] `AsyncLocalStorage` is not provided.")}const o=()=>{if(s&&t===void 0){const i=s.getStore();if(i!==void 0)return i}return t};return{use:()=>{const i=o();if(i===void 0)throw new Error("Context is not available");return i},tryUse:()=>o(),set:(i,l)=>{l||r(i),t=i,n=!0},unset:()=>{t=void 0,n=!1},call:(i,l)=>{r(i),t=i;try{return s?s.run(i,l):l()}finally{n||(t=void 0)}},async callAsync(i,l){t=i;const c=()=>{t=i},u=()=>t===i?c:void 0;yr.add(u);try{const f=s?s.run(i,l):l();return n||(t=void 0),await f}finally{yr.delete(u)}}}}function Bf(e={}){const t={};return{get(n,r={}){return t[n]||(t[n]=Uf({...e,...r})),t[n],t[n]}}}const En=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof global<"u"?global:typeof window<"u"?window:{},Gs="__unctx__",Df=En[Gs]||(En[Gs]=Bf()),Wf=(e,t={})=>Df.get(e,t),Js="__unctx_async_handlers__",yr=En[Js]||(En[Js]=new Set);function qi(e){const t=[];for(const s of yr){const o=s();o&&t.push(o)}const n=()=>{for(const s of t)s()};let r=e();return r&&typeof r=="object"&&"catch"in r&&(r=r.catch(s=>{throw n(),s})),[r,n]}const Ud={componentName:"NuxtLink"},Vf=null,Kf="#__nuxt",Gi="nuxt-app",Xs=36e5;function Ji(e=Gi){return Wf(e,{asyncContext:!1})}const qf="__nuxt_plugin";function Gf(e){let t=0;const n={_name:Gi,_scope:Cl(),provide:void 0,globalName:"nuxt",versions:{get nuxt(){return"3.12.3"},get vue(){return n.vueApp.version}},payload:ht({data:ht({}),state:Xe({}),once:new Set,_errors:ht({})}),static:{data:{}},runWithContext(s){return n._scope.active&&!Eo()?n._scope.run(()=>Qs(n,s)):Qs(n,s)},isHydrating:!0,deferHydration(){if(!n.isHydrating)return()=>{};t++;let s=!1;return()=>{if(!s&&(s=!0,t--,t===0))return n.isHydrating=!1,n.callHook("app:suspense:resolve")}},_asyncDataPromises:{},_asyncData:ht({}),_payloadRevivers:{},...e};if(window.__NUXT__)for(const s in window.__NUXT__)switch(s){case"data":case"state":case"_errors":Object.assign(n.payload[s],window.__NUXT__[s]);break;default:n.payload[s]=window.__NUXT__[s]}n.hooks=Ki(),n.hook=n.hooks.hook,n.callHook=n.hooks.callHook,n.provide=(s,o)=>{const i="$"+s;Zt(n,i,o),Zt(n.vueApp.config.globalProperties,i,o)},Zt(n.vueApp,"$nuxt",n),Zt(n.vueApp.config.globalProperties,"$nuxt",n);{window.addEventListener("nuxt.preloadError",o=>{n.callHook("app:chunkError",{error:o.payload})}),window.useNuxtApp=window.useNuxtApp||ae;const s=n.hook("app:error",(...o)=>{console.error("[nuxt] error caught during app initialization",...o)});n.hook("app:mounted",s)}const r=n.payload.config;return n.provide("config",r),n}function Jf(e,t){t.hooks&&e.hooks.addHooks(t.hooks)}async function Xf(e,t){if(typeof t=="function"){const{provide:n}=await e.runWithContext(()=>t(e))||{};if(n&&typeof n=="object")for(const r in n)e.provide(r,n[r])}}async function Qf(e,t){const n=[],r=[],s=[],o=[];let i=0;async function l(c){var f;const u=((f=c.dependsOn)==null?void 0:f.filter(a=>t.some(h=>h._name===a)&&!n.includes(a)))??[];if(u.length>0)r.push([new Set(u),c]);else{const a=Xf(e,c).then(async()=>{c._name&&(n.push(c._name),await Promise.all(r.map(async([h,g])=>{h.has(c._name)&&(h.delete(c._name),h.size===0&&(i++,await l(g)))})))});c.parallel?s.push(a.catch(h=>o.push(h))):await a}}for(const c of t)Jf(e,c);for(const c of t)await l(c);if(await Promise.all(s),i)for(let c=0;c{}),e,{[qf]:!0,_name:t})}function Qs(e,t,n){const r=()=>t();return Ji(e._name).set(e),e.vueApp.runWithContext(r)}function Yf(e){var n;let t;return ri()&&(t=(n=Pi())==null?void 0:n.appContext.app.$nuxt),t=t||Ji(e).tryUse(),t||null}function ae(e){const t=Yf(e);if(!t)throw new Error("[nuxt] instance unavailable");return t}function Ye(e){return ae().$config}function Zt(e,t,n){Object.defineProperty(e,t,{get:()=>n})}function zf(e,t){return{ctx:{table:e},matchAll:n=>Qi(n,e)}}function Xi(e){const t={};for(const n in e)t[n]=n==="dynamic"?new Map(Object.entries(e[n]).map(([r,s])=>[r,Xi(s)])):new Map(Object.entries(e[n]));return t}function Zf(e){return zf(Xi(e))}function Qi(e,t,n){e.endsWith("/")&&(e=e.slice(0,-1)||"/");const r=[];for(const[o,i]of Ys(t.wildcard))(e===o||e.startsWith(o+"/"))&&r.push(i);for(const[o,i]of Ys(t.dynamic))if(e.startsWith(o+"/")){const l="/"+e.slice(o.length).split("/").splice(2).join("/");r.push(...Qi(l,i))}const s=t.static.get(e);return s&&r.push(s),r.filter(Boolean)}function Ys(e){return[...e.entries()].sort((t,n)=>t[0].length-n[0].length)}function zn(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function br(e,t,n=".",r){if(!zn(t))return br(e,{},n,r);const s=Object.assign({},t);for(const o in e){if(o==="__proto__"||o==="constructor")continue;const i=e[o];i!=null&&(r&&r(s,o,i,n)||(Array.isArray(i)&&Array.isArray(s[o])?s[o]=[...i,...s[o]]:zn(i)&&zn(s[o])?s[o]=br(i,s[o],(n?`${n}.`:"")+o.toString(),r):s[o]=i))}return s}function eu(e){return(...t)=>t.reduce((n,r)=>br(n,r,"",e),{})}const tu=eu();function nu(e,t){try{return t in e}catch{return!1}}var ru=Object.defineProperty,su=(e,t,n)=>t in e?ru(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,rt=(e,t,n)=>(su(e,typeof t!="symbol"?t+"":t,n),n);class wr extends Error{constructor(t,n={}){super(t,n),rt(this,"statusCode",500),rt(this,"fatal",!1),rt(this,"unhandled",!1),rt(this,"statusMessage"),rt(this,"data"),rt(this,"cause"),n.cause&&!this.cause&&(this.cause=n.cause)}toJSON(){const t={message:this.message,statusCode:vr(this.statusCode,500)};return this.statusMessage&&(t.statusMessage=Yi(this.statusMessage)),this.data!==void 0&&(t.data=this.data),t}}rt(wr,"__h3_error__",!0);function ou(e){if(typeof e=="string")return new wr(e);if(iu(e))return e;const t=new wr(e.message??e.statusMessage??"",{cause:e.cause||e});if(nu(e,"stack"))try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=vr(e.statusCode,t.statusCode):e.status&&(t.statusCode=vr(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){const n=t.statusMessage;Yi(t.statusMessage)!==n&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function iu(e){var t;return((t=e==null?void 0:e.constructor)==null?void 0:t.__h3_error__)===!0}const lu=/[^\u0009\u0020-\u007E]/g;function Yi(e=""){return e.replace(lu,"")}function vr(e,t=200){return!e||(typeof e=="string"&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}const zi=Symbol("route"),lt=()=>{var e;return(e=ae())==null?void 0:e.$router},Zi=()=>ri()?wt(zi,ae()._route):ae()._route;const cu=()=>{try{if(ae()._processingMiddleware)return!0}catch{return!1}return!1},au=(e,t)=>{e||(e="/");const n=typeof e=="string"?e:"path"in e?fu(e):lt().resolve(e).href;if(t!=null&&t.open){const{target:c="_blank",windowFeatures:u={}}=t.open,f=Object.entries(u).filter(([a,h])=>h!==void 0).map(([a,h])=>`${a.toLowerCase()}=${h}`).join(", ");return open(n,c,f),Promise.resolve()}const r=Pt(n,{acceptRelative:!0}),s=(t==null?void 0:t.external)||r;if(s){if(!(t!=null&&t.external))throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`.");const{protocol:c}=new URL(n,window.location.href);if(c&&ff(c))throw new Error(`Cannot navigate to a URL with '${c}' protocol.`)}const o=cu();if(!s&&o)return e;const i=lt(),l=ae();return s?(l._scope.stop(),t!=null&&t.replace?location.replace(n):location.href=n,o?l.isHydrating?new Promise(()=>{}):!1:Promise.resolve()):t!=null&&t.replace?i.replace(e):i.push(e)};function fu(e){return ji(e.path||"",e.query||{})+(e.hash||"")}const el="__nuxt_error",Gr=()=>ec(ae().payload,"error"),uu=e=>{const t=Jr(e);try{const n=ae(),r=Gr();n.hooks.callHook("app:error",t),r.value=r.value||t}catch{throw t}return t},du=async(e={})=>{const t=ae(),n=Gr();t.callHook("app:error:cleared",e),e.redirect&&await lt().replace(e.redirect),n.value=Vf},hu=e=>!!e&&typeof e=="object"&&el in e,Jr=e=>{const t=ou(e);return Object.defineProperty(t,el,{value:!0,configurable:!1,writable:!1}),t},pu=-1,gu=-2,mu=-3,_u=-4,yu=-5,bu=-6;function wu(e,t){return vu(JSON.parse(e),t)}function vu(e,t){if(typeof e=="number")return s(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function s(o,i=!1){if(o===pu)return;if(o===mu)return NaN;if(o===_u)return 1/0;if(o===yu)return-1/0;if(o===bu)return-0;if(i)throw new Error("Invalid input");if(o in r)return r[o];const l=n[o];if(!l||typeof l!="object")r[o]=l;else if(Array.isArray(l))if(typeof l[0]=="string"){const c=l[0],u=t==null?void 0:t[c];if(u)return r[o]=u(s(l[1]));switch(c){case"Date":r[o]=new Date(l[1]);break;case"Set":const f=new Set;r[o]=f;for(let g=1;g>>9)+65536).toString(16).substring(1,8).toLowerCase()}function zs(e){return e._h||Xr(e._d?e._d:`${e.tag}:${e.textContent||e.innerHTML||""}:${Object.entries(e.props).map(([t,n])=>`${t}:${String(n)}`).join(",")}`)}function nl(e,t){const{props:n,tag:r}=e;if(Ru.includes(r))return r;if(r==="link"&&n.rel==="canonical")return"canonical";if(n.charset)return"charset";const s=["id"];r==="meta"&&s.push("name","property","http-equiv");for(const o of s)if(typeof n[o]<"u"){const i=String(n[o]);return`${r}:${o}:${i}`}return!1}function Zs(e,t){return e==null?t||null:typeof e=="function"?e(t):e}async function Pu(e,t,n){const r={tag:e,props:await rl(typeof t=="object"&&typeof t!="function"&&!(t instanceof Promise)?{...t}:{[["script","noscript","style"].includes(e)?"innerHTML":"textContent"]:t},["templateParams","titleTemplate"].includes(e))};return tl.forEach(s=>{const o=typeof r.props[s]<"u"?r.props[s]:n[s];typeof o<"u"&&((!["innerHTML","textContent","children"].includes(s)||Tu.includes(r.tag))&&(r[s==="children"?"innerHTML":s]=o),delete r.props[s])}),r.props.body&&(r.tagPosition="bodyClose",delete r.props.body),r.tag==="script"&&typeof r.innerHTML=="object"&&(r.innerHTML=JSON.stringify(r.innerHTML),r.props.type=r.props.type||"application/json"),Array.isArray(r.props.content)?r.props.content.map(s=>({...r,props:{...r.props,content:s}})):r}function Su(e,t){var r;const n=e==="class"?" ":";";return typeof t=="object"&&!Array.isArray(t)&&(t=Object.entries(t).filter(([,s])=>s).map(([s,o])=>e==="style"?`${s}:${o}`:s)),(r=String(Array.isArray(t)?t.join(n):t))==null?void 0:r.split(n).filter(s=>s.trim()).filter(Boolean).join(n)}async function rl(e,t){for(const n of Object.keys(e)){if(["class","style"].includes(n)){e[n]=Su(n,e[n]);continue}if(e[n]instanceof Promise&&(e[n]=await e[n]),!t&&!tl.includes(n)){const r=String(e[n]),s=n.startsWith("data-");r==="true"||r===""?e[n]=s?"true":!0:e[n]||(s&&r==="false"?e[n]="false":delete e[n])}}return e}const Au=10;async function Ou(e){const t=[];return Object.entries(e.resolvedInput).filter(([n,r])=>typeof r<"u"&&xu.includes(n)).forEach(([n,r])=>{const s=Eu(r);t.push(...s.map(o=>Pu(n,o,e)).flat())}),(await Promise.all(t)).flat().filter(Boolean).map((n,r)=>(n._e=e._i,e.mode&&(n._m=e.mode),n._p=(e._i<c&&c[u]||void 0,t):l=t[i],typeof l<"u"?(l||"").replace(/"/g,'\\"'):!1}let s=e;try{s=decodeURI(e)}catch{}return(s.match(/%(\w+\.+\w+)|%(\w+)/g)||[]).sort().reverse().forEach(i=>{const l=r(i.slice(1));typeof l=="string"&&(e=e.replace(new RegExp(`\\${i}(\\W|$)`,"g"),(c,u)=>`${l}${u}`).trim())}),e.includes(Be)&&(e.endsWith(Be)&&(e=e.slice(0,-Be.length).trim()),e.startsWith(Be)&&(e=e.slice(Be.length).trim()),e=e.replace(new RegExp(`\\${Be}\\s*\\${Be}`,"g"),Be),e=cn(e,{separator:n},n)),e}async function sl(e,t={}){var f;const n=t.document||e.resolvedOptions.document;if(!n||!e.dirty)return;const r={shouldRender:!0,tags:[]};if(await e.hooks.callHook("dom:beforeRender",r),!r.shouldRender)return;const s=(await e.resolveTags()).map(a=>({tag:a,id:ln.includes(a.tag)?zs(a):a.tag,shouldRender:!0}));let o=e._dom;if(!o){o={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};for(const a of["body","head"]){const h=(f=n[a])==null?void 0:f.children,g=[];for(const y of[...h].filter(E=>ln.includes(E.tagName.toLowerCase()))){const E={tag:y.tagName.toLowerCase(),props:await rl(y.getAttributeNames().reduce((M,m)=>({...M,[m]:y.getAttribute(m)}),{})),innerHTML:y.innerHTML};let j=1,D=nl(E);for(;D&&g.find(M=>M._d===D);)D=`${D}:${j++}`;E._d=D||void 0,g.push(E),o.elMap[y.getAttribute("data-hid")||zs(E)]=y}}}o.pendingSideEffects={...o.sideEffects||{}},o.sideEffects={};function i(a,h,g){const y=`${a}:${h}`;o.sideEffects[y]=g,delete o.pendingSideEffects[y]}function l({id:a,$el:h,tag:g}){const y=g.tag.endsWith("Attrs");o.elMap[a]=h,y||(["textContent","innerHTML"].forEach(E=>{g[E]&&g[E]!==h[E]&&(h[E]=g[E])}),i(a,"el",()=>{var E;(E=o.elMap[a])==null||E.remove(),delete o.elMap[a]}));for(const[E,j]of Object.entries(g._eventHandlers||{}))h.getAttribute(`data-${E}`)!==""&&((g.tag==="bodyAttrs"?n.defaultView:h).addEventListener(E.replace("on",""),j.bind(h)),h.setAttribute(`data-${E}`,""));Object.entries(g.props).forEach(([E,j])=>{const D=`attr:${E}`;if(E==="class")for(const M of(j||"").split(" ").filter(Boolean))y&&i(a,`${D}:${M}`,()=>h.classList.remove(M)),!h.classList.contains(M)&&h.classList.add(M);else if(E==="style")for(const M of(j||"").split(";").filter(Boolean)){const[m,...T]=M.split(":").map(P=>P.trim());i(a,`${D}:${m}`,()=>{h.style.removeProperty(m)}),h.style.setProperty(m,T.join(":"))}else h.getAttribute(E)!==j&&h.setAttribute(E,j===!0?"":String(j)),y&&i(a,D,()=>h.removeAttribute(E))})}const c=[],u={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const a of s){const{tag:h,shouldRender:g,id:y}=a;if(g){if(h.tag==="title"){n.title=h.textContent;continue}a.$el=a.$el||o.elMap[y],a.$el?l(a):ln.includes(h.tag)&&c.push(a)}}for(const a of c){const h=a.tag.tagPosition||"head";a.$el=n.createElement(a.tag.tag),l(a),u[h]=u[h]||n.createDocumentFragment(),u[h].appendChild(a.$el)}for(const a of s)await e.hooks.callHook("dom:renderTag",a,n,i);u.head&&n.head.appendChild(u.head),u.bodyOpen&&n.body.insertBefore(u.bodyOpen,n.body.firstChild),u.bodyClose&&n.body.appendChild(u.bodyClose),Object.values(o.pendingSideEffects).forEach(a=>a()),e._dom=o,e.dirty=!1,await e.hooks.callHook("dom:rendered",{renders:s})}async function Iu(e,t={}){const n=t.delayFn||(r=>setTimeout(r,10));return e._domUpdatePromise=e._domUpdatePromise||new Promise(r=>n(async()=>{await sl(e,t),delete e._domUpdatePromise,r()}))}function Hu(e){return t=>{var r,s;const n=((s=(r=t.resolvedOptions.document)==null?void 0:r.head.querySelector('script[id="unhead:payload"]'))==null?void 0:s.innerHTML)||!1;return n&&t.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":function(o){Iu(o,e)}}}}}const Mu=["templateParams","htmlAttrs","bodyAttrs"],Lu={hooks:{"tag:normalise":function({tag:e}){["hid","vmid","key"].forEach(r=>{e.props[r]&&(e.key=e.props[r],delete e.props[r])});const n=nl(e)||(e.key?`${e.tag}:${e.key}`:!1);n&&(e._d=n)},"tags:resolve":function(e){const t={};e.tags.forEach(r=>{const s=(r.key?`${r.tag}:${r.key}`:r._d)||r._p,o=t[s];if(o){let l=r==null?void 0:r.tagDuplicateStrategy;if(!l&&Mu.includes(r.tag)&&(l="merge"),l==="merge"){const c=o.props;["class","style"].forEach(u=>{c[u]&&(r.props[u]?(u==="style"&&!c[u].endsWith(";")&&(c[u]+=";"),r.props[u]=`${c[u]} ${r.props[u]}`):r.props[u]=c[u])}),t[s].props={...c,...r.props};return}else if(r._e===o._e){o._duped=o._duped||[],r._d=`${o._d}:${o._duped.length+1}`,o._duped.push(r);return}else if(Tn(r)>Tn(o))return}const i=Object.keys(r.props).length+(r.innerHTML?1:0)+(r.textContent?1:0);if(ln.includes(r.tag)&&i===0){delete t[s];return}t[s]=r});const n=[];Object.values(t).forEach(r=>{const s=r._duped;delete r._duped,n.push(r),s&&n.push(...s)}),e.tags=n,e.tags=e.tags.filter(r=>!(r.tag==="meta"&&(r.props.name||r.props.property)&&!r.props.content))}}},Nu={mode:"server",hooks:{"tags:resolve":function(e){const t={};e.tags.filter(n=>["titleTemplate","templateParams","title"].includes(n.tag)&&n._m==="server").forEach(n=>{t[n.tag]=n.tag.startsWith("title")?n.textContent:n.props}),Object.keys(t).length&&e.tags.push({tag:"script",innerHTML:JSON.stringify(t),props:{id:"unhead:payload",type:"application/json"}})}}},ju=["script","link","bodyAttrs"],$u=e=>({hooks:{"tags:resolve":function(t){for(const n of t.tags.filter(r=>ju.includes(r.tag)))Object.entries(n.props).forEach(([r,s])=>{r.startsWith("on")&&typeof s=="function"&&(e.ssr&&no.includes(r)?n.props[r]=`this.dataset.${r}fired = true`:delete n.props[r],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[r]=s)}),e.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||Xr(n.props.src||n.props.href))},"dom:renderTag":function({$el:t,tag:n}){var r,s;for(const o of Object.keys((t==null?void 0:t.dataset)||{}).filter(i=>no.some(l=>`${l}fired`===i))){const i=o.replace("fired","");(s=(r=n._eventHandlers)==null?void 0:r[i])==null||s.call(t,new Event(i.replace("on","")))}}}}),Fu=["link","style","script","noscript"],Uu={hooks:{"tag:normalise":({tag:e})=>{e.key&&Fu.includes(e.tag)&&(e.props["data-hid"]=e._h=Xr(e.key))}}},Bu={hooks:{"tags:resolve":e=>{const t=n=>{var r;return(r=e.tags.find(s=>s._d===n))==null?void 0:r._p};for(const{prefix:n,offset:r}of ku)for(const s of e.tags.filter(o=>typeof o.tagPriority=="string"&&o.tagPriority.startsWith(n))){const o=t(s.tagPriority.replace(n,""));typeof o<"u"&&(s._p=o+r)}e.tags.sort((n,r)=>n._p-r._p).sort((n,r)=>Tn(n)-Tn(r))}}},Du={meta:"content",link:"href",htmlAttrs:"lang"},Wu=e=>({hooks:{"tags:resolve":t=>{var l;const{tags:n}=t,r=(l=n.find(c=>c.tag==="title"))==null?void 0:l.textContent,s=n.findIndex(c=>c.tag==="templateParams"),o=s!==-1?n[s].props:{},i=o.separator||"|";delete o.separator,o.pageTitle=cn(o.pageTitle||r||"",o,i);for(const c of n.filter(u=>u.processTemplateParams!==!1)){const u=Du[c.tag];u&&typeof c.props[u]=="string"?c.props[u]=cn(c.props[u],o,i):(c.processTemplateParams===!0||["titleTemplate","title"].includes(c.tag))&&["innerHTML","textContent"].forEach(f=>{typeof c[f]=="string"&&(c[f]=cn(c[f],o,i))})}e._templateParams=o,e._separator=i,t.tags=n.filter(c=>c.tag!=="templateParams")}}}),Vu={hooks:{"tags:resolve":e=>{const{tags:t}=e;let n=t.findIndex(s=>s.tag==="titleTemplate");const r=t.findIndex(s=>s.tag==="title");if(r!==-1&&n!==-1){const s=Zs(t[n].textContent,t[r].textContent);s!==null?t[r].textContent=s||t[r].textContent:delete t[r]}else if(n!==-1){const s=Zs(t[n].textContent);s!==null&&(t[n].textContent=s,t[n].tag="title",n=-1)}n!==-1&&delete t[n],e.tags=t.filter(Boolean)}}},Ku={hooks:{"tags:afterResolve":function(e){for(const t of e.tags)typeof t.innerHTML=="string"&&(t.innerHTML&&["application/ld+json","application/json"].includes(t.props.type)?t.innerHTML=t.innerHTML.replace(/{l.dirty=!0,t.callHook("entries:updated",l)};let s=0,o=[];const i=[],l={plugins:i,dirty:!1,resolvedOptions:e,hooks:t,headEntries(){return o},use(c){const u=typeof c=="function"?c(l):c;(!u.key||!i.some(f=>f.key===u.key))&&(i.push(u),ro(u.mode,n)&&t.addHooks(u.hooks||{}))},push(c,u){u==null||delete u.head;const f={_i:s++,input:c,...u};return ro(f.mode,n)&&(o.push(f),r()),{dispose(){o=o.filter(a=>a._i!==f._i),t.callHook("entries:updated",l),r()},patch(a){o=o.map(h=>(h._i===f._i&&(h.input=f.input=a),h)),r()}}},async resolveTags(){const c={tags:[],entries:[...o]};await t.callHook("entries:resolve",c);for(const u of c.entries){const f=u.resolvedInput||u.input;if(u.resolvedInput=await(u.transform?u.transform(f):f),u.resolvedInput)for(const a of await Ou(u)){const h={tag:a,entry:u,resolvedOptions:l.resolvedOptions};await t.callHook("tag:normalise",h),c.tags.push(h.tag)}}return await t.callHook("tags:beforeResolve",c),await t.callHook("tags:resolve",c),await t.callHook("tags:afterResolve",c),c.tags},ssr:n};return[Lu,Nu,$u,Uu,Bu,Wu,Vu,Ku,...(e==null?void 0:e.plugins)||[]].forEach(c=>l.use(c)),l.hooks.callHook("init",l),l}function Ju(){return ol}const Xu=ki.startsWith("3");function Qu(e){return typeof e=="function"?e():se(e)}function xn(e,t=""){if(e instanceof Promise)return e;const n=Qu(e);return!e||!n?n:Array.isArray(n)?n.map(r=>xn(r,t)):typeof n=="object"?Object.fromEntries(Object.entries(n).map(([r,s])=>r==="titleTemplate"||r.startsWith("on")?[r,se(s)]:[r,xn(s,r)])):n}const Yu={hooks:{"entries:resolve":function(e){for(const t of e.entries)t.resolvedInput=xn(t.input)}}},il="usehead";function zu(e){return{install(n){Xu&&(n.config.globalProperties.$unhead=e,n.config.globalProperties.$head=e,n.provide(il,e))}}.install}function Zu(e={}){e.domDelayFn=e.domDelayFn||(n=>Nr(()=>setTimeout(()=>n(),0)));const t=qu(e);return t.use(Yu),t.install=zu(t),t}const Er=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Tr="__unhead_injection_handler__";function ed(e){Er[Tr]=e}function td(){if(Tr in Er)return Er[Tr]();const e=wt(il);return e||Ju()}function Qr(e,t={}){const n=t.head||td();if(n)return n.ssr?n.push(e,t):nd(n,e,t)}function nd(e,t,n={}){const r=Oe(!1),s=Oe({});Xc(()=>{s.value=r.value?{}:xn(t)});const o=e.push(s.value,n);return Ht(s,l=>{o.patch(l)}),Pi()&&(Qo(()=>{o.dispose()}),yi(()=>{r.value=!0}),_i(()=>{r.value=!1})),o}let an,fn;function rd(){return an=$fetch(qr(`builds/meta/${Ye().app.buildId}.json`),{responseType:"json"}),an.then(e=>{fn=Zf(e.matcher)}).catch(e=>{console.error("[nuxt] Error fetching app manifest.",e)}),an}function jn(){return an||rd()}async function Yr(e){if(await jn(),!fn)return console.error("[nuxt] Error creating app manifest matcher.",fn),{};try{return tu({},...fn.matchAll(e).reverse())}catch(t){return console.error("[nuxt] Error matching route rules.",t),{}}}async function so(e,t={}){const n=await od(e,t),r=ae(),s=r._payloadCache=r._payloadCache||{};return n in s||(s[n]=cl(e).then(o=>o?ll(n).then(i=>i||(delete s[n],null)):(s[n]=null,null))),s[n]}const sd="_payload.json";async function od(e,t={}){const n=new URL(e,"http://localhost");if(n.host!=="localhost"||Pt(n.pathname,{acceptRelative:!0}))throw new Error("Payload URL must not include hostname: "+e);const r=Ye(),s=t.hash||(t.fresh?Date.now():r.app.buildId),o=r.app.cdnURL,i=o&&await cl(e)?o:r.app.baseURL;return Nn(i,n.pathname,sd+(s?`?${s}`:""))}async function ll(e){const t=fetch(e).then(n=>n.text().then(al));try{return await t}catch(n){console.warn("[nuxt] Cannot load payload ",e,n)}return null}async function cl(e=Zi().path){if(e=Vr(e),(await jn()).prerendered.includes(e))return!0;const n=await Yr(e);return!!n.prerender&&!n.redirect}let en=null;async function id(){if(en)return en;const e=document.getElementById("__NUXT_DATA__");if(!e)return{};const t=await al(e.textContent||""),n=e.dataset.src?await ll(e.dataset.src):void 0;return en={...t,...n,...window.__NUXT__},en}async function al(e){return await wu(e,ae()._payloadRevivers)}function ld(e,t){ae()._payloadRevivers[e]=t}const oo={NuxtError:e=>Jr(e),EmptyShallowRef:e=>hs(e==="_"?void 0:e==="0n"?BigInt(0):bn(e)),EmptyRef:e=>Oe(e==="_"?void 0:e==="0n"?BigInt(0):bn(e)),ShallowRef:e=>hs(e),ShallowReactive:e=>ht(e),Ref:e=>Oe(e),Reactive:e=>Xe(e)},cd=He({name:"nuxt:revive-payload:client",order:-30,async setup(e){let t,n;for(const r in oo)ld(r,oo[r]);Object.assign(e.payload,([t,n]=qi(()=>e.runWithContext(id)),t=await t,n(),t)),window.__NUXT__=e.payload}}),ad=[],fd=He({name:"nuxt:head",enforce:"pre",setup(e){const t=Zu({plugins:ad});ed(()=>ae().vueApp._context.provides.usehead),e.vueApp.use(t);{let n=!0;const r=async()=>{n=!1,await sl(t)};t.hooks.hook("dom:beforeRender",s=>{s.shouldRender=!n}),e.hooks.hook("page:start",()=>{n=!0}),e.hooks.hook("page:finish",()=>{e.isHydrating||r()}),e.hooks.hook("app:error",r),e.hooks.hook("app:suspense:resolve",r)}}}),ud=async e=>{let t,n;const r=([t,n]=qi(()=>Yr(e.path)),t=await t,n(),t);if(r.redirect)return Pt(r.redirect,{acceptRelative:!0})?(window.location.href=r.redirect,!1):r.redirect},dd=[ud];function Zn(e){typeof e=="object"&&(e=Bi({pathname:e.path||"",search:Ni(e.query||{}),hash:e.hash||""}));const t=new URL(e.toString(),window.location.href);return{path:t.pathname,fullPath:e,query:Li(t.search),hash:t.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:e}}const hd=He({name:"nuxt:router",enforce:"pre",setup(e){const t=hf(window.location.pathname,Ye().app.baseURL)+window.location.search+window.location.hash,n=[],r={"navigate:before":[],"resolve:before":[],"navigate:after":[],error:[]},s=(a,h)=>(r[a].push(h),()=>r[a].splice(r[a].indexOf(h),1)),o=Ye().app.baseURL,i=Xe(Zn(t));async function l(a,h){try{const g=Zn(a);for(const y of r["navigate:before"]){const E=await y(g,i);if(E===!1||E instanceof Error)return;if(typeof E=="string"&&E.length)return l(E,!0)}for(const y of r["resolve:before"])await y(g,i);Object.assign(i,g),window.history[h?"replaceState":"pushState"]({},"",Nn(o,g.fullPath)),e.isHydrating||await e.runWithContext(du);for(const y of r["navigate:after"])await y(g,i)}catch(g){for(const y of r.error)await y(g)}}const u={currentRoute:Oi(()=>i),isReady:()=>Promise.resolve(),options:{},install:()=>Promise.resolve(),push:a=>l(a,!1),replace:a=>l(a,!0),back:()=>window.history.go(-1),go:a=>window.history.go(a),forward:()=>window.history.go(1),beforeResolve:a=>s("resolve:before",a),beforeEach:a=>s("navigate:before",a),afterEach:a=>s("navigate:after",a),onError:a=>s("error",a),resolve:Zn,addRoute:(a,h)=>{n.push(h)},getRoutes:()=>n,hasRoute:a=>n.some(h=>h.name===a),removeRoute:a=>{const h=n.findIndex(g=>g.name===a);h!==-1&&n.splice(h,1)}};e.vueApp.component("RouterLink",Zo({functional:!0,props:{to:{type:String,required:!0},custom:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:String},setup:(a,{slots:h})=>{const g=()=>l(a.to,a.replace);return()=>{var E;const y=u.resolve(a.to);return a.custom?(E=h.default)==null?void 0:E.call(h,{href:a.to,navigate:g,route:y}):fa("a",{href:a.to,onClick:j=>(j.preventDefault(),g())},h)}}})),window.addEventListener("popstate",a=>{const h=a.target.location;u.replace(h.href.replace(h.origin,""))}),e._route=i,e._middleware=e._middleware||{global:[],named:{}};const f=e.payload.state._layout;return e.hooks.hookOnce("app:created",async()=>{u.beforeEach(async(a,h)=>{a.meta=Xe(a.meta||{}),e.isHydrating&&f&&!vt(a.meta.layout)&&(a.meta.layout=f),e._processingMiddleware=!0;{const g=new Set([...dd,...e._middleware.global]);{const y=await e.runWithContext(()=>Yr(a.path));if(y.appMiddleware)for(const E in y.appMiddleware){const j=e._middleware.named[E];if(!j)return;y.appMiddleware[E]?g.add(j):g.delete(j)}}for(const y of g){const E=await e.runWithContext(()=>y(a,h));if(E!==!0&&(E||E===!1))return E}}}),u.afterEach(()=>{delete e._processingMiddleware}),await u.replace(t),gf(i.fullPath,t)||await e.runWithContext(()=>au(i.fullPath))}),{provide:{route:i,router:u}}}}),io=globalThis.requestIdleCallback||(e=>{const t=Date.now(),n={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))};return setTimeout(()=>{e(n)},1)}),Bd=globalThis.cancelIdleCallback||(e=>{clearTimeout(e)}),zr=e=>{const t=ae();t.isHydrating?t.hooks.hookOnce("app:suspense:resolve",()=>{io(()=>e())}):io(()=>e())},pd=He({name:"nuxt:payload",setup(e){lt().beforeResolve(async(t,n)=>{if(t.path===n.path)return;const r=await so(t.path);r&&Object.assign(e.static.data,r.data)}),zr(()=>{var t;e.hooks.hook("link:prefetch",async n=>{const{hostname:r}=new URL(n,window.location.href);r===window.location.hostname&&await so(n)}),((t=navigator.connection)==null?void 0:t.effectiveType)!=="slow-2g"&&setTimeout(jn,1e3)})}}),gd=He(()=>{const e=lt();zr(()=>{e.beforeResolve(async()=>{await new Promise(t=>{setTimeout(t,100),requestAnimationFrame(()=>{setTimeout(t,0)})})})})}),md=He(e=>{let t;async function n(){const r=await jn();t&&clearTimeout(t),t=setTimeout(n,Xs);try{const s=await $fetch(qr("builds/latest.json")+`?${Date.now()}`);s.id!==r.id&&e.hooks.callHook("app:manifest:update",s)}catch{}}zr(()=>{t=setTimeout(n,Xs)})});function _d(e={}){const t=e.path||window.location.pathname;let n={};try{n=bn(sessionStorage.getItem("nuxt:reload")||"{}")}catch{}if(e.force||(n==null?void 0:n.path)!==t||(n==null?void 0:n.expires){r.clear()}),e.hook("app:chunkError",({error:o})=>{r.add(o)});function s(o){const l="href"in o&&o.href[0]==="#"?n.app.baseURL+o.href:Nn(n.app.baseURL,o.fullPath);_d({path:l,persistState:!0})}e.hook("app:manifest:update",()=>{t.beforeResolve(s)}),t.onError((o,i)=>{r.has(o)&&s(i)})}}),bd=He({name:"nuxt:global-components"}),wd=He(e=>{const{gsuite:t}=Ye().public;Qr({script:[{src:`https://www.google.com/recaptcha/api.js?render=${t.recaptcha.siteKey}`,async:!0}]})}),vd=He({name:"nuxt-gsuite-analytics",setup(){const{gsuite:e}=Ye().public;Qr({script:[{src:`https://www.googletagmanager.com/gtag/js?id=${e.analytics.measurementId}`,async:!0},{innerHTML:`window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', '${e.analytics.measurementId}');`}]})}}),Ed=[cd,fd,hd,pd,gd,md,yd,bd,wd,vd],Td="modulepreload",xd=function(e,t){return e[0]==="."?new URL(e,t).href:e},lo={},Rd=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){const o=document.getElementsByTagName("link"),i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));s=Promise.all(n.map(c=>{if(c=xd(c,r),c in lo)return;lo[c]=!0;const u=c.endsWith(".css"),f=u?'[rel="stylesheet"]':"";if(!!r)for(let g=o.length-1;g>=0;g--){const y=o[g];if(y.href===c&&(!u||y.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${c}"]${f}`))return;const h=document.createElement("link");if(h.rel=u?"stylesheet":Td,u||(h.as="script",h.crossOrigin=""),h.href=c,l&&h.setAttribute("nonce",l),document.head.appendChild(h),u)return new Promise((g,y)=>{h.addEventListener("load",g),h.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${c}`)))})}))}return s.then(()=>t()).catch(o=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=o,window.dispatchEvent(i),!i.defaultPrevented)throw o})},co=(...e)=>Rd(...e).catch(t=>{const n=new Event("nuxt.preloadError");throw n.payload=t,window.dispatchEvent(n),t}),Zr=Oe(!1);Ht(Zr,e=>{Qr({style:[{key:"recaptcha-badge",innerHTML:`.grecaptcha-badge{display:${e?"none":"block"}!important;}`}]})});const er=e=>Zr.value=e;function Cd(){const e=Ye().public.gsuite;return{hidden:Zr,execute:async r=>{var s;return await grecaptcha.execute((s=e.recaptcha)==null?void 0:s.siteKey,{action:r})},verify:async r=>await $fetch(`/recaptcha/${r}`),toggleBadge:er,hideBadge:()=>er(!0),showBadge:()=>er(!1),config:e}}const Pd={name:"Contact",setup(){const e=Cd(),t=()=>Oe({fullname:""}),n=Xe(t());return{recaptcha:e,state:n,reset:()=>Object.assign(n,t())}},methods:{async submitForm(){try{const e=await this.recaptcha.execute("submit");if(e){const t=await this.recaptcha.verify(e);if(t.valid&&!t.errors)return this.reset(),!0;if(t.errors&&t.errors.length>0)throw new Error(t.errors.join(", "))}return!1}catch{return!1}}}},Sd=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},Ad=ke("h1",null,"nuxt-gsuite playground!",-1),Od=ke("label",{for:"fullname"},"Full Name",-1),kd=ke("br",null,null,-1),Id=ke("div",null,[ke("button",{type:"submit"}," Submit ")],-1);function Hd(e,t,n,r,s,o){return je(),Ti(be,null,[Ad,ke("form",{onSubmit:t[1]||(t[1]=La(i=>o.submitForm(),["prevent"]))},[ke("div",null,[Od,kd,Pc(ke("input",{id:"fullname","onUpdate:modelValue":t[0]||(t[0]=i=>r.state.fullname=i),type:"text"},null,512),[[Ia,r.state.fullname]])]),Id],32)],64)}const Md=Sd(Pd,[["render",Hd]]),Ld={__name:"nuxt-error-page",props:{error:Object},setup(e){const n=e.error;n.stack&&n.stack.split(` `).splice(1).map(a=>({text:a.replace("webpack:/","").replace(".vue",".js").trim(),internal:a.includes("node_modules")&&!a.includes(".cache")||a.includes("internal")||a.includes("new Promise")})).map(a=>`${a.text}`).join(` -`);const r=Number(n.statusCode||500),s=r===404,o=n.statusMessage??(s?"Page Not Found":"Internal Server Error"),i=n.message||n.toString(),l=void 0,f=s?ys(()=>co(()=>import("./mJS2XvxE.js"),__vite__mapDeps([0,1]),import.meta.url).then(a=>a.default||a)):ys(()=>co(()=>import("./N-EqdTw2.js"),__vite__mapDeps([2,3]),import.meta.url).then(a=>a.default||a));return(a,h)=>(je(),ut(se(f),El(Ri({statusCode:se(r),statusMessage:se(o),description:se(i),stack:se(l)})),null,16))}},Nd={key:0},ao={__name:"nuxt-root",setup(e){const t=()=>null,n=ae(),r=n.deferHydration();if(n.isHydrating){const c=n.hooks.hookOnce("app:error",r);lt().beforeEach(c)}const s=!1;ni(zi,Zi()),n.hooks.callHookWith(c=>c.map(u=>u()),"vue:setup");const o=Gr(),i=!1;zo((c,u,f)=>{if(n.hooks.callHook("vue:error",c,u,f).catch(a=>console.error("[nuxt] Error in `vue:error` hook",a)),hu(c)&&(c.fatal||c.unhandled))return n.runWithContext(()=>uu(c)),!1});const l=!1;return(c,u)=>(je(),ut(pc,{onResolve:se(r)},{default:Vo(()=>[se(i)?(je(),Ti("div",Nd)):se(o)?(je(),ut(se(Ld),{key:1,error:se(o)},null,8,["error"])):se(l)?(je(),ut(se(t),{key:2,context:se(l)},null,8,["context"])):se(s)?(je(),ut(uc(se(s)),{key:3})):(je(),ut(se(Md),{key:4}))]),_:1},8,["onResolve"]))}};let fo;{let e;fo=async function(){var i,l;if(e)return e;const r=!!((i=window.__NUXT__)!=null&&i.serverRendered||((l=document.getElementById("__NUXT_DATA__"))==null?void 0:l.dataset.ssr)==="true")?Fa(ao):$a(ao),s=Gf({vueApp:r});async function o(c){await s.callHook("app:error",c),s.payload.error=s.payload.error||Jr(c)}r.config.errorHandler=o;try{await Qf(s,Ed)}catch(c){o(c)}try{await s.hooks.callHook("app:created",r),await s.hooks.callHook("app:beforeMount",r),r.mount(Kf),await s.hooks.callHook("app:mounted",r),await Nr()}catch(c){o(c)}return r.config.errorHandler===o&&(r.config.errorHandler=void 0),r},e=fo().catch(t=>{throw console.error("Error while mounting app:",t),t})}export{ie as A,Vo as B,Ci as C,jd as D,$d as E,Sd as _,ae as a,zr as b,io as c,Zo as d,fu as e,Qo as f,Bd as g,fa as h,Fd as i,Oi as j,Pt as k,Nn as l,au as m,Ud as n,vc as o,Li as p,Ye as q,Oe as r,Vr as s,Qr as t,lt as u,je as v,mr as w,Ti as x,ke as y,Rl as z}; +`);const r=Number(n.statusCode||500),s=r===404,o=n.statusMessage??(s?"Page Not Found":"Internal Server Error"),i=n.message||n.toString(),l=void 0,f=s?ys(()=>co(()=>import("./tr5hBR7C.js"),__vite__mapDeps([0,1]),import.meta.url).then(a=>a.default||a)):ys(()=>co(()=>import("./DTJR8xyR.js"),__vite__mapDeps([2,3]),import.meta.url).then(a=>a.default||a));return(a,h)=>(je(),ut(se(f),El(Ri({statusCode:se(r),statusMessage:se(o),description:se(i),stack:se(l)})),null,16))}},Nd={key:0},ao={__name:"nuxt-root",setup(e){const t=()=>null,n=ae(),r=n.deferHydration();if(n.isHydrating){const c=n.hooks.hookOnce("app:error",r);lt().beforeEach(c)}const s=!1;ni(zi,Zi()),n.hooks.callHookWith(c=>c.map(u=>u()),"vue:setup");const o=Gr(),i=!1;zo((c,u,f)=>{if(n.hooks.callHook("vue:error",c,u,f).catch(a=>console.error("[nuxt] Error in `vue:error` hook",a)),hu(c)&&(c.fatal||c.unhandled))return n.runWithContext(()=>uu(c)),!1});const l=!1;return(c,u)=>(je(),ut(pc,{onResolve:se(r)},{default:Vo(()=>[se(i)?(je(),Ti("div",Nd)):se(o)?(je(),ut(se(Ld),{key:1,error:se(o)},null,8,["error"])):se(l)?(je(),ut(se(t),{key:2,context:se(l)},null,8,["context"])):se(s)?(je(),ut(uc(se(s)),{key:3})):(je(),ut(se(Md),{key:4}))]),_:1},8,["onResolve"]))}};let fo;{let e;fo=async function(){var i,l;if(e)return e;const r=!!((i=window.__NUXT__)!=null&&i.serverRendered||((l=document.getElementById("__NUXT_DATA__"))==null?void 0:l.dataset.ssr)==="true")?Fa(ao):$a(ao),s=Gf({vueApp:r});async function o(c){await s.callHook("app:error",c),s.payload.error=s.payload.error||Jr(c)}r.config.errorHandler=o;try{await Qf(s,Ed)}catch(c){o(c)}try{await s.hooks.callHook("app:created",r),await s.hooks.callHook("app:beforeMount",r),r.mount(Kf),await s.hooks.callHook("app:mounted",r),await Nr()}catch(c){o(c)}return r.config.errorHandler===o&&(r.config.errorHandler=void 0),r},e=fo().catch(t=>{throw console.error("Error while mounting app:",t),t})}export{ie as A,Vo as B,Ci as C,jd as D,$d as E,Sd as _,ae as a,zr as b,io as c,Zo as d,fu as e,Qo as f,Bd as g,fa as h,Fd as i,Oi as j,Pt as k,Nn as l,au as m,Ud as n,vc as o,Li as p,Ye as q,Oe as r,Vr as s,Qr as t,lt as u,je as v,mr as w,Ti as x,ke as y,Rl as z}; diff --git a/playground/.output/public/_nuxt/mJS2XvxE.js b/playground/.output/public/_nuxt/tr5hBR7C.js similarity index 99% rename from playground/.output/public/_nuxt/mJS2XvxE.js rename to playground/.output/public/_nuxt/tr5hBR7C.js index 8bd9448..5e96508 100644 --- a/playground/.output/public/_nuxt/mJS2XvxE.js +++ b/playground/.output/public/_nuxt/tr5hBR7C.js @@ -1 +1 @@ -import{u as w,d as E,r as S,a as q,o as I,b as T,c as U,e as P,f as V,g as D,h as N,i as R,p as H,n as O,j as x,k as z,l as F,m as $,q as M,w as G,s as Q,_ as W,t as J,v as K,x as X,y as _,z as k,A as Y,B as Z,C as ee,D as te,E as ae}from"./D_X2kP3v.js";async function j(t,a=w()){const{path:i,matched:v}=a.resolve(t);if(!v.length||(a._routePreloaded||(a._routePreloaded=new Set),a._routePreloaded.has(i)))return;const e=a._preloadPromises=a._preloadPromises||[];if(e.length>4)return Promise.all(e).then(()=>j(t,a));a._routePreloaded.add(i);const n=v.map(l=>{var r;return(r=l.components)==null?void 0:r.default}).filter(l=>typeof l=="function");for(const l of n){const r=Promise.resolve(l()).catch(()=>{}).finally(()=>e.splice(e.indexOf(r)));e.push(r)}await Promise.all(e)}const ne=(...t)=>t.find(a=>a!==void 0);function re(t){const a=t.componentName||"NuxtLink";function i(e,n){if(!e||t.trailingSlash!=="append"&&t.trailingSlash!=="remove")return e;if(typeof e=="string")return A(e,t.trailingSlash);const l="path"in e&&e.path!==void 0?e.path:n(e).path;return{...e,name:void 0,path:A(l,t.trailingSlash)}}function v(e){const n=w(),l=M(),r=x(()=>!!e.target&&e.target!=="_self"),c=x(()=>{const d=e.to||e.href||"";return typeof d=="string"&&z(d,{acceptRelative:!0})}),b=R("RouterLink"),p=b&&typeof b!="string"?b.useLink:void 0,h=x(()=>{if(e.external)return!0;const d=e.to||e.href||"";return typeof d=="object"?!1:d===""||c.value}),s=x(()=>{const d=e.to||e.href||"";return h.value?d:i(d,n.resolve)}),f=h.value||p==null?void 0:p({...e,to:s}),g=x(()=>{var d;if(!s.value||c.value)return s.value;if(h.value){const u=typeof s.value=="object"&&"path"in s.value?P(s.value):s.value,m=typeof u=="object"?n.resolve(u).href:u;return i(m,n.resolve)}return typeof s.value=="object"?((d=n.resolve(s.value))==null?void 0:d.href)??null:i(F(l.app.baseURL,s.value),n.resolve)});return{to:s,hasTarget:r,isAbsoluteUrl:c,isExternal:h,href:g,isActive:(f==null?void 0:f.isActive)??x(()=>s.value===n.currentRoute.value.path),isExactActive:(f==null?void 0:f.isExactActive)??x(()=>s.value===n.currentRoute.value.path),route:(f==null?void 0:f.route)??x(()=>n.resolve(s.value)),async navigate(){await $(g.value,{replace:e.replace,external:h.value||r.value})}}}return E({name:a,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},useLink:v,setup(e,{slots:n}){const l=w(),{to:r,href:c,navigate:b,isExternal:p,hasTarget:h,isAbsoluteUrl:s}=v(e),f=S(!1),g=S(null),d=u=>{var m;g.value=e.custom?(m=u==null?void 0:u.$el)==null?void 0:m.nextElementSibling:u==null?void 0:u.$el};if(e.prefetch!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!ie()){const m=q();let y,o=null;I(()=>{const L=se();T(()=>{y=U(()=>{var C;(C=g==null?void 0:g.value)!=null&&C.tagName&&(o=L.observe(g.value,async()=>{o==null||o(),o=null;const B=typeof r.value=="string"?r.value:p.value?P(r.value):l.resolve(r.value).fullPath;await Promise.all([m.hooks.callHook("link:prefetch",B).catch(()=>{}),!p.value&&!h.value&&j(r.value,l).catch(()=>{})]),f.value=!0}))})})}),V(()=>{y&&D(y),o==null||o(),o=null})}return()=>{var y;if(!p.value&&!h.value){const o={ref:d,to:r.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(f.value&&(o.class=e.prefetchedClass||t.prefetchedClass),o.rel=e.rel||void 0),N(R("RouterLink"),o,n.default)}const u=e.target||null,m=ne(e.noRel?"":e.rel,t.externalRelAttribute,s.value||h.value?"noopener noreferrer":"")||null;return e.custom?n.default?n.default({href:c.value,navigate:b,get route(){if(!c.value)return;const o=new URL(c.value,window.location.href);return{path:o.pathname,fullPath:o.pathname,get query(){return H(o.search)},hash:o.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:c.value}},rel:m,target:u,isExternal:p.value||h.value,isActive:!1,isExactActive:!1}):null:N("a",{ref:g,href:c.value||null,rel:m,target:u},(y=n.default)==null?void 0:y.call(n))}}})}const oe=re(O);function A(t,a){const i=a==="append"?G:Q;return z(t)&&!t.startsWith("http")?t:i(t,!0)}function se(){const t=q();if(t._observer)return t._observer;let a=null;const i=new Map,v=(n,l)=>(a||(a=new IntersectionObserver(r=>{for(const c of r){const b=i.get(c.target);(c.isIntersecting||c.intersectionRatio>0)&&b&&b()}})),i.set(n,l),a.observe(n),()=>{i.delete(n),a.unobserve(n),i.size===0&&(a.disconnect(),a=null)});return t._observer={observe:v}}function ie(){const t=navigator.connection;return!!(t&&(t.saveData||/2g/.test(t.effectiveType)))}const le=t=>(te("data-v-1dd3fda0"),t=t(),ae(),t),ue={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},ce=le(()=>_("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),de={class:"max-w-520px text-center z-20"},fe=["textContent"],he=["textContent"],ve={class:"w-full flex items-center justify-center"},pe={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const a=t;return J({title:`${a.statusCode} - ${a.statusMessage} | ${a.appName}`,script:[],style:[{children:'*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}h1{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}h1,p{margin:0}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(i,v)=>{const e=oe;return K(),X("div",ue,[ce,_("div",de,[_("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:k(t.statusCode)},null,8,fe),_("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:k(t.description)},null,8,he),_("div",ve,[Y(e,{to:"/",class:"gradient-border text-md sm:text-xl py-2 px-4 sm:py-3 sm:px-6 cursor-pointer"},{default:Z(()=>[ee(k(t.backHome),1)]),_:1})])])])}}},me=W(pe,[["__scopeId","data-v-1dd3fda0"]]);export{me as default}; +import{u as w,d as E,r as S,a as q,o as I,b as T,c as U,e as P,f as V,g as D,h as N,i as R,p as H,n as O,j as x,k as z,l as F,m as $,q as M,w as G,s as Q,_ as W,t as J,v as K,x as X,y as _,z as k,A as Y,B as Z,C as ee,D as te,E as ae}from"./q-QPnIUX.js";async function j(t,a=w()){const{path:i,matched:v}=a.resolve(t);if(!v.length||(a._routePreloaded||(a._routePreloaded=new Set),a._routePreloaded.has(i)))return;const e=a._preloadPromises=a._preloadPromises||[];if(e.length>4)return Promise.all(e).then(()=>j(t,a));a._routePreloaded.add(i);const n=v.map(l=>{var r;return(r=l.components)==null?void 0:r.default}).filter(l=>typeof l=="function");for(const l of n){const r=Promise.resolve(l()).catch(()=>{}).finally(()=>e.splice(e.indexOf(r)));e.push(r)}await Promise.all(e)}const ne=(...t)=>t.find(a=>a!==void 0);function re(t){const a=t.componentName||"NuxtLink";function i(e,n){if(!e||t.trailingSlash!=="append"&&t.trailingSlash!=="remove")return e;if(typeof e=="string")return A(e,t.trailingSlash);const l="path"in e&&e.path!==void 0?e.path:n(e).path;return{...e,name:void 0,path:A(l,t.trailingSlash)}}function v(e){const n=w(),l=M(),r=x(()=>!!e.target&&e.target!=="_self"),c=x(()=>{const d=e.to||e.href||"";return typeof d=="string"&&z(d,{acceptRelative:!0})}),b=R("RouterLink"),p=b&&typeof b!="string"?b.useLink:void 0,h=x(()=>{if(e.external)return!0;const d=e.to||e.href||"";return typeof d=="object"?!1:d===""||c.value}),s=x(()=>{const d=e.to||e.href||"";return h.value?d:i(d,n.resolve)}),f=h.value||p==null?void 0:p({...e,to:s}),g=x(()=>{var d;if(!s.value||c.value)return s.value;if(h.value){const u=typeof s.value=="object"&&"path"in s.value?P(s.value):s.value,m=typeof u=="object"?n.resolve(u).href:u;return i(m,n.resolve)}return typeof s.value=="object"?((d=n.resolve(s.value))==null?void 0:d.href)??null:i(F(l.app.baseURL,s.value),n.resolve)});return{to:s,hasTarget:r,isAbsoluteUrl:c,isExternal:h,href:g,isActive:(f==null?void 0:f.isActive)??x(()=>s.value===n.currentRoute.value.path),isExactActive:(f==null?void 0:f.isExactActive)??x(()=>s.value===n.currentRoute.value.path),route:(f==null?void 0:f.route)??x(()=>n.resolve(s.value)),async navigate(){await $(g.value,{replace:e.replace,external:h.value||r.value})}}}return E({name:a,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},useLink:v,setup(e,{slots:n}){const l=w(),{to:r,href:c,navigate:b,isExternal:p,hasTarget:h,isAbsoluteUrl:s}=v(e),f=S(!1),g=S(null),d=u=>{var m;g.value=e.custom?(m=u==null?void 0:u.$el)==null?void 0:m.nextElementSibling:u==null?void 0:u.$el};if(e.prefetch!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!ie()){const m=q();let y,o=null;I(()=>{const L=se();T(()=>{y=U(()=>{var C;(C=g==null?void 0:g.value)!=null&&C.tagName&&(o=L.observe(g.value,async()=>{o==null||o(),o=null;const B=typeof r.value=="string"?r.value:p.value?P(r.value):l.resolve(r.value).fullPath;await Promise.all([m.hooks.callHook("link:prefetch",B).catch(()=>{}),!p.value&&!h.value&&j(r.value,l).catch(()=>{})]),f.value=!0}))})})}),V(()=>{y&&D(y),o==null||o(),o=null})}return()=>{var y;if(!p.value&&!h.value){const o={ref:d,to:r.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(f.value&&(o.class=e.prefetchedClass||t.prefetchedClass),o.rel=e.rel||void 0),N(R("RouterLink"),o,n.default)}const u=e.target||null,m=ne(e.noRel?"":e.rel,t.externalRelAttribute,s.value||h.value?"noopener noreferrer":"")||null;return e.custom?n.default?n.default({href:c.value,navigate:b,get route(){if(!c.value)return;const o=new URL(c.value,window.location.href);return{path:o.pathname,fullPath:o.pathname,get query(){return H(o.search)},hash:o.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:c.value}},rel:m,target:u,isExternal:p.value||h.value,isActive:!1,isExactActive:!1}):null:N("a",{ref:g,href:c.value||null,rel:m,target:u},(y=n.default)==null?void 0:y.call(n))}}})}const oe=re(O);function A(t,a){const i=a==="append"?G:Q;return z(t)&&!t.startsWith("http")?t:i(t,!0)}function se(){const t=q();if(t._observer)return t._observer;let a=null;const i=new Map,v=(n,l)=>(a||(a=new IntersectionObserver(r=>{for(const c of r){const b=i.get(c.target);(c.isIntersecting||c.intersectionRatio>0)&&b&&b()}})),i.set(n,l),a.observe(n),()=>{i.delete(n),a.unobserve(n),i.size===0&&(a.disconnect(),a=null)});return t._observer={observe:v}}function ie(){const t=navigator.connection;return!!(t&&(t.saveData||/2g/.test(t.effectiveType)))}const le=t=>(te("data-v-1dd3fda0"),t=t(),ae(),t),ue={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},ce=le(()=>_("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),de={class:"max-w-520px text-center z-20"},fe=["textContent"],he=["textContent"],ve={class:"w-full flex items-center justify-center"},pe={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const a=t;return J({title:`${a.statusCode} - ${a.statusMessage} | ${a.appName}`,script:[],style:[{children:'*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}h1{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}h1,p{margin:0}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(i,v)=>{const e=oe;return K(),X("div",ue,[ce,_("div",de,[_("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:k(t.statusCode)},null,8,fe),_("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:k(t.description)},null,8,he),_("div",ve,[Y(e,{to:"/",class:"gradient-border text-md sm:text-xl py-2 px-4 sm:py-3 sm:px-6 cursor-pointer"},{default:Z(()=>[ee(k(t.backHome),1)]),_:1})])])])}}},me=W(pe,[["__scopeId","data-v-1dd3fda0"]]);export{me as default}; diff --git a/playground/.output/server/chunks/build/client.manifest.mjs b/playground/.output/server/chunks/build/client.manifest.mjs index 4d4f889..f61293b 100644 --- a/playground/.output/server/chunks/build/client.manifest.mjs +++ b/playground/.output/server/chunks/build/client.manifest.mjs @@ -4,7 +4,7 @@ const client_manifest = { "module": true, "prefetch": true, "preload": true, - "file": "mJS2XvxE.js", + "file": "tr5hBR7C.js", "name": "error-404", "src": "../node_modules/.pnpm/nuxt@3.12.3_@opentelemetry+api@1.9.0_@parcel+watcher@2.4.1_@types+node@20.14.9_eslint@9.6.0_i_f25eyvu7tzx3ixeamhjp2papoy/node_modules/nuxt/dist/app/components/error-404.vue", "isDynamicEntry": true, @@ -24,7 +24,7 @@ const client_manifest = { "module": true, "prefetch": true, "preload": true, - "file": "N-EqdTw2.js", + "file": "DTJR8xyR.js", "name": "error-500", "src": "../node_modules/.pnpm/nuxt@3.12.3_@opentelemetry+api@1.9.0_@parcel+watcher@2.4.1_@types+node@20.14.9_eslint@9.6.0_i_f25eyvu7tzx3ixeamhjp2papoy/node_modules/nuxt/dist/app/components/error-500.vue", "isDynamicEntry": true, @@ -44,7 +44,7 @@ const client_manifest = { "module": true, "prefetch": true, "preload": true, - "file": "D_X2kP3v.js", + "file": "q-QPnIUX.js", "name": "entry", "src": "../node_modules/.pnpm/nuxt@3.12.3_@opentelemetry+api@1.9.0_@parcel+watcher@2.4.1_@types+node@20.14.9_eslint@9.6.0_i_f25eyvu7tzx3ixeamhjp2papoy/node_modules/nuxt/dist/app/entry.js", "isEntry": true, diff --git a/playground/.output/server/chunks/build/server.mjs b/playground/.output/server/chunks/build/server.mjs index fe74f59..f18f977 100644 --- a/playground/.output/server/chunks/build/server.mjs +++ b/playground/.output/server/chunks/build/server.mjs @@ -925,8 +925,11 @@ watch(hidden, (value) => { }); const toggleBadge = (value) => hidden.value = value; function useRecaptcha() { - const { gsuite } = (/* @__PURE__ */ useRuntimeConfig()).public; - const execute = async (action) => await grecaptcha.execute(gsuite.recaptcha.siteKey, { action }); + const gsuite = (/* @__PURE__ */ useRuntimeConfig()).public.gsuite; + const execute = async (action) => { + var _a; + return await grecaptcha.execute((_a = gsuite.recaptcha) == null ? void 0 : _a.siteKey, { action }); + }; const verify = async (token) => await $fetch(`/recaptcha/${token}`); return { hidden, diff --git a/playground/.output/server/chunks/runtime.mjs b/playground/.output/server/chunks/runtime.mjs index 54d02b4..3c32e0b 100644 --- a/playground/.output/server/chunks/runtime.mjs +++ b/playground/.output/server/chunks/runtime.mjs @@ -3933,7 +3933,7 @@ const appConfig = defuFn(inlineAppConfig); const _inlineRuntimeConfig = { "app": { "baseURL": "/", - "buildId": "64d2b9bd-b625-4a69-8c63-52de8d6690a9", + "buildId": "292d48f5-a1a3-449e-9846-880116a142d2", "buildAssetsDir": "/_nuxt/", "cdnURL": "" }, @@ -5222,54 +5222,54 @@ const errorHandler = (async function errorhandler(error, event) { }); const assets = { - "/_nuxt/D_X2kP3v.js": { + "/_nuxt/DTJR8xyR.js": { "type": "text/javascript; charset=utf-8", - "etag": "\"1cb2a-eRCJOYkbpFkiEfoffmQTXzrQpcY\"", - "mtime": "2024-07-05T23:33:41.839Z", - "size": 117546, - "path": "../public/_nuxt/D_X2kP3v.js" + "etag": "\"ab3-Hw66/AuMN7HMNh9DcWfIMGZKWNs\"", + "mtime": "2024-07-06T18:13:15.167Z", + "size": 2739, + "path": "../public/_nuxt/DTJR8xyR.js" }, "/_nuxt/error-404.CPoJt-Mw.css": { "type": "text/css; charset=utf-8", "etag": "\"de4-HoYY+VULRLxo9INpsMyVuP/BSaU\"", - "mtime": "2024-07-05T23:33:41.842Z", + "mtime": "2024-07-06T18:13:15.167Z", "size": 3556, "path": "../public/_nuxt/error-404.CPoJt-Mw.css" }, "/_nuxt/error-500.CRm5MgNe.css": { "type": "text/css; charset=utf-8", "etag": "\"75c-aZv8f9SzIABfsNN4kJWna4Zm66U\"", - "mtime": "2024-07-05T23:33:41.840Z", + "mtime": "2024-07-06T18:13:15.163Z", "size": 1884, "path": "../public/_nuxt/error-500.CRm5MgNe.css" }, - "/_nuxt/mJS2XvxE.js": { + "/_nuxt/q-QPnIUX.js": { "type": "text/javascript; charset=utf-8", - "etag": "\"200e-KJhGBfa3yJ9jT625vww0DixXBEY\"", - "mtime": "2024-07-05T23:33:41.842Z", - "size": 8206, - "path": "../public/_nuxt/mJS2XvxE.js" + "etag": "\"1cb4b-LfjiVsggRq6ZnMvHUjnTaQO27mw\"", + "mtime": "2024-07-06T18:13:15.167Z", + "size": 117579, + "path": "../public/_nuxt/q-QPnIUX.js" }, - "/_nuxt/N-EqdTw2.js": { + "/_nuxt/tr5hBR7C.js": { "type": "text/javascript; charset=utf-8", - "etag": "\"ab3-3Seg6G2rgSTyoPT3MI8LX4CwfB4\"", - "mtime": "2024-07-05T23:33:41.842Z", - "size": 2739, - "path": "../public/_nuxt/N-EqdTw2.js" + "etag": "\"200e-BFrr+q4DJEzbhPzMloMYcz7GmTk\"", + "mtime": "2024-07-06T18:13:15.167Z", + "size": 8206, + "path": "../public/_nuxt/tr5hBR7C.js" }, "/_nuxt/builds/latest.json": { "type": "application/json", - "etag": "\"47-8d8GCNMAY/JeL1fWdanTNVQJl/4\"", - "mtime": "2024-07-05T23:33:42.609Z", + "etag": "\"47-ua3aHiLcf4MppjA4T6nIMNs8Adk\"", + "mtime": "2024-07-06T18:13:16.186Z", "size": 71, "path": "../public/_nuxt/builds/latest.json" }, - "/_nuxt/builds/meta/64d2b9bd-b625-4a69-8c63-52de8d6690a9.json": { + "/_nuxt/builds/meta/292d48f5-a1a3-449e-9846-880116a142d2.json": { "type": "application/json", - "etag": "\"8b-IPtv/Jj9YwYywBQx1xuaxoarLYc\"", - "mtime": "2024-07-05T23:33:42.609Z", + "etag": "\"8b-poaS9IuwCsVzAuJSsAA8rOcdxSA\"", + "mtime": "2024-07-06T18:13:16.187Z", "size": 139, - "path": "../public/_nuxt/builds/meta/64d2b9bd-b625-4a69-8c63-52de8d6690a9.json" + "path": "../public/_nuxt/builds/meta/292d48f5-a1a3-449e-9846-880116a142d2.json" } }; diff --git a/playground/.output/server/package.json b/playground/.output/server/package.json index dfb6e93..09b87d9 100644 --- a/playground/.output/server/package.json +++ b/playground/.output/server/package.json @@ -1 +1 @@ -{"name":"nuxt-gsuite-prod","version":"1.0.0","type":"module","private":true,"dependencies":{"@babel/parser":"7.24.7","@unhead/dom":"1.9.15","@unhead/shared":"1.9.15","@unhead/ssr":"1.9.15","@vue/compiler-core":"3.4.31","@vue/compiler-dom":"3.4.31","@vue/compiler-ssr":"3.4.31","@vue/reactivity":"3.4.31","@vue/runtime-core":"3.4.31","@vue/runtime-dom":"3.4.31","@vue/server-renderer":"3.4.31","@vue/shared":"3.4.31","devalue":"5.0.0","entities":"4.5.0","estree-walker":"2.0.2","hookable":"5.5.3","source-map-js":"1.2.0","ufo":"1.5.3","unhead":"1.9.15","vue":"3.4.31","vue-bundle-renderer":"2.1.0"}} \ No newline at end of file +{"name":"nuxt-gsuite-prod","version":"0.1.1","type":"module","private":true,"dependencies":{"@babel/parser":"7.24.7","@unhead/dom":"1.9.15","@unhead/shared":"1.9.15","@unhead/ssr":"1.9.15","@vue/compiler-core":"3.4.31","@vue/compiler-dom":"3.4.31","@vue/compiler-ssr":"3.4.31","@vue/reactivity":"3.4.31","@vue/runtime-core":"3.4.31","@vue/runtime-dom":"3.4.31","@vue/server-renderer":"3.4.31","@vue/shared":"3.4.31","devalue":"5.0.0","entities":"4.5.0","estree-walker":"2.0.2","hookable":"5.5.3","source-map-js":"1.2.0","ufo":"1.5.3","unhead":"1.9.15","vue":"3.4.31","vue-bundle-renderer":"2.1.0"}} \ No newline at end of file diff --git a/src/module.ts b/src/module.ts index d66e37b..60e7513 100644 --- a/src/module.ts +++ b/src/module.ts @@ -1,49 +1,9 @@ import process from 'node:process' import { addImports, addPlugin, addServerHandler, createResolver, defineNuxtModule, logger } from '@nuxt/kit' import defu from 'defu' +import type { NuxtGSuiteOptions } from './types' -// Module options TypeScript interface definition -export interface ModuleOptions { - recaptcha?: { - /** - * Site key for Recaptcha. - * - * @default process.env.GSUITE_RECAPTCHA_SITEKEY - * - */ - siteKey: string - /** - * Secret key for Recaptcha. - * - * @default process.env.GSUITE_RECAPTCHA_SECRETKEY - * - */ - secretKey?: string - /** - * Minimum score to use for Recaptcha verification. - * - * @default 0.5 - * - */ - minScore?: number - /** - * Version of Recaptcha to use. - * - * @default 'v3' - * - */ - version?: string - } - analytics?: { - /** - * Measurement Id for Analytics. - * - * @default process.env.GSUITE_ANALYTICS_MEASUREMENTID - * - */ - measurementId: string - } -} +export * from './types' declare module '#app' { const grecaptcha: any @@ -53,7 +13,7 @@ declare module '#app' { } } -export default defineNuxtModule({ +export default defineNuxtModule({ meta: { name: 'nuxt-gsuite', configKey: 'gsuite', diff --git a/src/runtime/compostables/useRecaptcha.ts b/src/runtime/compostables/useRecaptcha.ts index 0069c48..89fb36d 100644 --- a/src/runtime/compostables/useRecaptcha.ts +++ b/src/runtime/compostables/useRecaptcha.ts @@ -1,4 +1,5 @@ import { ref, watch } from 'vue' +import type { NuxtGSuiteOptions, RecaptchaResponse } from '../../types' import { useHead, useRuntimeConfig } from '#imports' const hidden = ref(false) @@ -17,9 +18,9 @@ watch(hidden, (value) => { const toggleBadge = (value: boolean) => hidden.value = value export function useRecaptcha() { - const { gsuite } = useRuntimeConfig().public + const gsuite = useRuntimeConfig().public.gsuite as NuxtGSuiteOptions - const execute = async (action: string) => await grecaptcha.execute(gsuite.recaptcha.siteKey, { action }) + const execute = async (action: string) => await grecaptcha.execute(gsuite.recaptcha?.siteKey, { action }) const verify = async (token: string) => await $fetch(`/recaptcha/${token}`) diff --git a/src/runtime/types/index.d.ts b/src/runtime/types/index.d.ts deleted file mode 100644 index d8f1f8c..0000000 --- a/src/runtime/types/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -declare global { - interface RecaptchaResponse { - 'success': boolean - 'challenge_ts'?: string - 'hostname'?: string - 'score'?: number - 'action'?: string - 'error-codes'?: string[] - } - export type { RecaptchaResponse } -} diff --git a/src/types.ts b/src/types.ts new file mode 100644 index 0000000..cd13872 --- /dev/null +++ b/src/types.ts @@ -0,0 +1,50 @@ +export declare interface RecaptchaResponse { + 'success': boolean + 'challenge_ts'?: string + 'hostname'?: string + 'score'?: number + 'action'?: string + 'error-codes'?: string[] +} + +export interface NuxtGSuiteOptions { + recaptcha?: { + /** + * Site key for Recaptcha. + * + * @default process.env.GSUITE_RECAPTCHA_SITEKEY + * + */ + siteKey: string + /** + * Secret key for Recaptcha. + * + * @default process.env.GSUITE_RECAPTCHA_SECRETKEY + * + */ + secretKey?: string + /** + * Minimum score to use for Recaptcha verification. + * + * @default 0.5 + * + */ + minScore?: number + /** + * Version of Recaptcha to use. + * + * @default 'v3' + * + */ + version?: string + } + analytics?: { + /** + * Measurement Id for Analytics. + * + * @default process.env.GSUITE_ANALYTICS_MEASUREMENTID + * + */ + measurementId: string + } +}