- `:a}};l([s({type:Object,attribute:`displayed-job`})],f.prototype,`displayedJob`,void 0),l([s({type:Boolean,attribute:`has-reserved-jobs`})],f.prototype,`hasReservedJobs`,void 0),l([s({type:Boolean,attribute:`has-waiting-jobs`})],f.prototype,`hasWaitingJobs`,void 0),f=l([c(`cp-queue-indicator`)],f);var p=f;export{d as t};
\ No newline at end of file
+ `:i}};c([o({type:Object,attribute:`displayed-job`})],u.prototype,`displayedJob`,void 0),c([o({type:Boolean,attribute:`has-reserved-jobs`})],u.prototype,`hasReservedJobs`,void 0),c([o({type:Boolean,attribute:`has-waiting-jobs`})],u.prototype,`hasWaitingJobs`,void 0),u=c([s(`cp-queue-indicator`)],u);var d=u;export{d as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftCombobox-B64mFprO.js b/resources/build/assets/CraftCombobox-B64mFprO.js
deleted file mode 100644
index 421dddef12f..00000000000
--- a/resources/build/assets/CraftCombobox-B64mFprO.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{$ as t,B as n,E as r,G as i,K as a,M as o,N as s,O as c,R as l,S as u,T as d,V as f,X as p,_ as m,b as h,dt as g,tt as _,v,w as y,x as b}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{t as x}from"./InputCombobox-DyQ9GfLq.js";var S=[`label`,`id`,`name`,`disabled`,`has-feedback-for`,`require-options-match`],C={slot:`after`},w={key:0,variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},T={href:`https://craftcms.com/docs/5.x/configure.html#control-panel-settings`},E={slot:`feedback`},D={key:0,class:`error-list`},O=r({__name:`CraftCombobox`,props:o({label:{},id:{},name:{},disabled:{type:Boolean},options:{},callouts:{},error:{},requireOptionMatch:{type:Boolean}},{modelValue:{type:[String,Number,Boolean]},modelModifiers:{}}),emits:[`update:modelValue`],setup(r){let o=i(r,`modelValue`),O=a(),k=m(()=>{let{default:e,...t}=O;return t});return(i,a)=>(l(),b(`craft-input`,s({label:r.label,id:r.id,name:r.name,disabled:r.disabled,"has-feedback-for":r.error?`error`:``,"require-options-match":r.requireOptionMatch},i.$attrs),[d(x,{slot:`input`,modelValue:o.value,"onUpdate:modelValue":a[0]||=e=>o.value=e,options:r.options,label:r.label},u({_:2},[n(k.value,(e,n)=>({name:n,fn:p(e=>[f(i.$slots,n,t(c(e||{})))])}))]),1032,[`modelValue`,`options`,`label`]),v(`div`,C,[f(i.$slots,`after`,{},()=>[r.callouts?.includes(`envVars`)?(l(),b(`craft-callout`,w,[y(_(g(e)(`This can begin with an environment variable.`))+` `,1),v(`a`,T,_(g(e)(`Learn more`)),1)])):h(``,!0)])]),v(`div`,E,[r.error?(l(),b(`ul`,D,[v(`li`,null,_(r.error),1)])):h(``,!0)])],16,S))}});export{O as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftCombobox-BkCjs3xZ.js b/resources/build/assets/CraftCombobox-BkCjs3xZ.js
new file mode 100644
index 00000000000..673594f2465
--- /dev/null
+++ b/resources/build/assets/CraftCombobox-BkCjs3xZ.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{B as t,C as n,D as r,G as i,L as a,M as o,Q as s,T as c,W as l,Y as u,_ as d,b as f,et as p,g as m,j as h,ut as g,w as _,x as v,y,z as b}from"./dist-LYoVBFtL.js";import{t as x}from"./InputCombobox-Ct35tX5Z.js";var S=[`label`,`id`,`name`,`disabled`,`has-feedback-for`,`require-options-match`],C={slot:`after`},w={key:0,variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},T={href:`https://craftcms.com/docs/5.x/configure.html#control-panel-settings`},E={slot:`feedback`},D={key:0,class:`error-list`},O=c({__name:`CraftCombobox`,props:h({label:{},id:{},name:{},disabled:{type:Boolean},options:{},callouts:{},error:{},requireOptionMatch:{type:Boolean}},{modelValue:{type:[String,Number,Boolean]},modelModifiers:{}}),emits:[`update:modelValue`],setup(c){let h=l(c,`modelValue`),O=i(),k=m(()=>{let{default:e,...t}=O;return t});return(i,l)=>(a(),f(`craft-input`,o({label:c.label,id:c.id,name:c.name,disabled:c.disabled,"has-feedback-for":c.error?`error`:``,"require-options-match":c.requireOptionMatch},i.$attrs),[_(x,{slot:`input`,modelValue:h.value,"onUpdate:modelValue":l[0]||=e=>h.value=e,options:c.options,label:c.label},v({_:2},[b(k.value,(e,n)=>({name:n,fn:u(e=>[t(i.$slots,n,s(r(e||{})))])}))]),1032,[`modelValue`,`options`,`label`]),d(`div`,C,[t(i.$slots,`after`,{},()=>[c.callouts?.includes(`envVars`)?(a(),f(`craft-callout`,w,[n(p(g(e)(`This can begin with an environment variable.`))+` `,1),d(`a`,T,p(g(e)(`Learn more`)),1)])):y(``,!0)])]),d(`div`,E,[c.error?(a(),f(`ul`,D,[d(`li`,null,p(c.error),1)])):y(``,!0)])],16,S))}});export{O as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftInput-CGOATOXU.js b/resources/build/assets/CraftInput-CGOATOXU.js
new file mode 100644
index 00000000000..e4eedc599a4
--- /dev/null
+++ b/resources/build/assets/CraftInput-CGOATOXU.js
@@ -0,0 +1 @@
+import{B as e,L as t,M as n,T as r,W as i,_ as a,b as o,et as s,j as c,y as l}from"./dist-LYoVBFtL.js";var u=[`.modelValue`,`has-feedback-for`],d={slot:`feedback`},f={key:0,class:`error-list`},p=r({name:`CraftInput`,__name:`CraftInput`,props:c({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(r){let c=i(r,`modelValue`);return(i,p)=>(t(),o(`craft-input`,n(i.$attrs,{".modelValue":c.value,onModelValueChanged:p[0]||=e=>c.value=e.target?.modelValue,"has-feedback-for":r.error?`error`:``}),[e(i.$slots,`default`),a(`div`,d,[r.error?(t(),o(`ul`,f,[a(`li`,null,s(r.error),1)])):l(``,!0)])],48,u))}});export{p as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftInput-OjhrLWw-.js b/resources/build/assets/CraftInput-OjhrLWw-.js
deleted file mode 100644
index da8c6ebf43e..00000000000
--- a/resources/build/assets/CraftInput-OjhrLWw-.js
+++ /dev/null
@@ -1 +0,0 @@
-import{E as e,G as t,M as n,N as r,R as i,V as a,b as o,tt as s,v as c,x as l}from"./_plugin-vue_export-helper-B5xWb4v9.js";var u=[`.modelValue`,`has-feedback-for`],d={slot:`feedback`},f={key:0,class:`error-list`},p=e({name:`CraftInput`,__name:`CraftInput`,props:n({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let n=t(e,`modelValue`);return(t,p)=>(i(),l(`craft-input`,r(t.$attrs,{".modelValue":n.value,onModelValueChanged:p[0]||=e=>n.value=e.target?.modelValue,"has-feedback-for":e.error?`error`:``}),[a(t.$slots,`default`),c(`div`,d,[e.error?(i(),l(`ul`,f,[c(`li`,null,s(e.error),1)])):o(``,!0)])],48,u))}});export{p as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftInputHandle-B8rgmia_.js b/resources/build/assets/CraftInputHandle-B8rgmia_.js
new file mode 100644
index 00000000000..b327f618b58
--- /dev/null
+++ b/resources/build/assets/CraftInputHandle-B8rgmia_.js
@@ -0,0 +1 @@
+import{B as e,L as t,M as n,T as r,W as i,_ as a,b as o,et as s,j as c,y as l}from"./dist-LYoVBFtL.js";var u=[`.modelValue`,`has-feedback-for`],d={slot:`feedback`},f={key:0,class:`error-list`},p=r({name:`CraftInputHandle`,__name:`CraftInputHandle`,props:c({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(r){let c=i(r,`modelValue`);return(i,p)=>(t(),o(`craft-input-handle`,n(i.$attrs,{".modelValue":c.value,onModelValueChanged:p[0]||=e=>c.value=e.target?.modelValue,"has-feedback-for":r.error?`error`:``}),[e(i.$slots,`default`),a(`div`,d,[r.error?(t(),o(`ul`,f,[a(`li`,null,s(r.error),1)])):l(``,!0)])],48,u))}});export{p as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftInputHandle-QcuBEwPz.js b/resources/build/assets/CraftInputHandle-QcuBEwPz.js
deleted file mode 100644
index b9e9b5dbf6b..00000000000
--- a/resources/build/assets/CraftInputHandle-QcuBEwPz.js
+++ /dev/null
@@ -1 +0,0 @@
-import{E as e,G as t,M as n,N as r,R as i,V as a,b as o,tt as s,v as c,x as l}from"./_plugin-vue_export-helper-B5xWb4v9.js";var u=[`.modelValue`,`has-feedback-for`],d={slot:`feedback`},f={key:0,class:`error-list`},p=e({name:`CraftInputHandle`,__name:`CraftInputHandle`,props:n({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let n=t(e,`modelValue`);return(t,p)=>(i(),l(`craft-input-handle`,r(t.$attrs,{".modelValue":n.value,onModelValueChanged:p[0]||=e=>n.value=e.target?.modelValue,"has-feedback-for":e.error?`error`:``}),[a(t.$slots,`default`),c(`div`,d,[e.error?(i(),l(`ul`,f,[c(`li`,null,s(e.error),1)])):o(``,!0)])],48,u))}});export{p as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftTextarea-BLYGCwJA.js b/resources/build/assets/CraftTextarea-BLYGCwJA.js
new file mode 100644
index 00000000000..57d4c3ce139
--- /dev/null
+++ b/resources/build/assets/CraftTextarea-BLYGCwJA.js
@@ -0,0 +1 @@
+import{B as e,L as t,M as n,T as r,W as i,_ as a,b as o,et as s,j as c,y as l}from"./dist-LYoVBFtL.js";var u=[`.checked`,`has-feedback-for`],d={slot:`feedback`},f={key:0,class:`error-list`},p=r({name:`CraftCheckbox`,__name:`CraftCheckbox`,props:c({error:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(r){let c=i(r,`modelValue`);return(i,p)=>(t(),o(`craft-checkbox`,n(i.$attrs,{".checked":c.value,onModelValueChanged:p[0]||=e=>c.value=e.target?.checked,"has-feedback-for":r.error?`error`:``}),[e(i.$slots,`default`),a(`div`,d,[r.error?(t(),o(`ul`,f,[a(`li`,null,s(r.error),1)])):l(``,!0)])],48,u))}}),m=[`.modelValue`,`has-feedback-for`],h={slot:`feedback`},g={key:0,class:`error-list`},_=r({name:`CraftTextarea`,__name:`CraftTextarea`,props:c({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(r){let c=i(r,`modelValue`);return(i,u)=>(t(),o(`craft-textarea`,n(i.$attrs,{".modelValue":c.value,onModelValueChanged:u[0]||=e=>c.value=e.target?.modelValue,"has-feedback-for":r.error?`error`:``}),[e(i.$slots,`default`),a(`div`,h,[r.error?(t(),o(`ul`,g,[a(`li`,null,s(r.error),1)])):l(``,!0)])],48,m))}});export{p as n,_ as t};
\ No newline at end of file
diff --git a/resources/build/assets/CraftTextarea-Dsy8Ztwt.js b/resources/build/assets/CraftTextarea-Dsy8Ztwt.js
deleted file mode 100644
index 8e84101c6f4..00000000000
--- a/resources/build/assets/CraftTextarea-Dsy8Ztwt.js
+++ /dev/null
@@ -1 +0,0 @@
-import{E as e,G as t,M as n,N as r,R as i,V as a,b as o,tt as s,v as c,x as l}from"./_plugin-vue_export-helper-B5xWb4v9.js";var u=[`.checked`,`has-feedback-for`],d={slot:`feedback`},f={key:0,class:`error-list`},p=e({name:`CraftCheckbox`,__name:`CraftCheckbox`,props:n({error:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let n=t(e,`modelValue`);return(t,p)=>(i(),l(`craft-checkbox`,r(t.$attrs,{".checked":n.value,onModelValueChanged:p[0]||=e=>n.value=e.target?.checked,"has-feedback-for":e.error?`error`:``}),[a(t.$slots,`default`),c(`div`,d,[e.error?(i(),l(`ul`,f,[c(`li`,null,s(e.error),1)])):o(``,!0)])],48,u))}}),m=[`.modelValue`,`has-feedback-for`],h={slot:`feedback`},g={key:0,class:`error-list`},_=e({name:`CraftTextarea`,__name:`CraftTextarea`,props:n({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let n=t(e,`modelValue`);return(t,u)=>(i(),l(`craft-textarea`,r(t.$attrs,{".modelValue":n.value,onModelValueChanged:u[0]||=e=>n.value=e.target?.modelValue,"has-feedback-for":e.error?`error`:``}),[a(t.$slots,`default`),c(`div`,h,[e.error?(i(),l(`ul`,g,[c(`li`,null,s(e.error),1)])):o(``,!0)])],48,m))}});export{p as n,_ as t};
\ No newline at end of file
diff --git a/resources/build/assets/DeleteButton-B6fT-tEn.js b/resources/build/assets/DeleteButton-B6fT-tEn.js
deleted file mode 100644
index 6ca844c0467..00000000000
--- a/resources/build/assets/DeleteButton-B6fT-tEn.js
+++ /dev/null
@@ -1 +0,0 @@
-import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{E as t,N as n,R as r,v as i,x as a}from"./_plugin-vue_export-helper-B5xWb4v9.js";var o=[`name`,`label`],s=t({__name:`DeleteButton`,props:{label:{default:e(`Delete item`)},icon:{default:`x`}},emits:[`click`],setup(e,{emit:t}){let s=t;return(t,c)=>(r(),a(`craft-button`,n({type:`button`,onClick:c[0]||=e=>s(`click`),size:`small`,appearance:`plain`,variant:`danger`},t.$attrs),[i(`craft-icon`,{name:e.icon,label:e.label},null,8,o)],16))}});export{s as t};
\ No newline at end of file
diff --git a/resources/build/assets/DeleteButton-Diwghn7k.js b/resources/build/assets/DeleteButton-Diwghn7k.js
new file mode 100644
index 00000000000..9f83eddc805
--- /dev/null
+++ b/resources/build/assets/DeleteButton-Diwghn7k.js
@@ -0,0 +1 @@
+import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{L as t,M as n,T as r,_ as i,b as a}from"./dist-LYoVBFtL.js";var o=[`name`,`label`],s=r({__name:`DeleteButton`,props:{label:{default:e(`Delete item`)},icon:{default:`x`}},emits:[`click`],setup(e,{emit:r}){let s=r;return(r,c)=>(t(),a(`craft-button`,n({type:`button`,onClick:c[0]||=e=>s(`click`),size:`small`,appearance:`plain`,variant:`danger`},r.$attrs),[i(`craft-icon`,{name:e.icon,label:e.label},null,8,o)],16))}});export{s as t};
\ No newline at end of file
diff --git a/resources/build/assets/DeleteSiteModal-D1_4llb0.js b/resources/build/assets/DeleteSiteModal-D1_4llb0.js
deleted file mode 100644
index a1800c272d2..00000000000
--- a/resources/build/assets/DeleteSiteModal-D1_4llb0.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{B as t,E as n,R as r,X as i,_ as a,b as o,dt as s,l as c,m as l,r as u,s as d,tt as f,v as p,x as m,y as h}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{n as g,t as _}from"./wayfinder-BO4LFEOp.js";import{t as v}from"./ModalForm-ThXtiTAf.js";var y=e=>({url:y.url(e),method:`get`});y.definition={methods:[`get`,`head`],url:`/admin/settings/sites`},y.url=e=>y.definition.url+g(e),y.get=e=>({url:y.url(e),method:`get`}),y.head=e=>({url:y.url(e),method:`head`});var b=e=>({url:b.url(e),method:`get`});b.definition={methods:[`get`,`head`],url:`/admin/settings/sites/new`},b.url=e=>b.definition.url+g(e),b.get=e=>({url:b.url(e),method:`get`}),b.head=e=>({url:b.url(e),method:`head`});var x=e=>({url:x.url(e),method:`post`});x.definition={methods:[`post`],url:`/admin/settings/sites/reorder`},x.url=e=>x.definition.url+g(e),x.post=e=>({url:x.url(e),method:`post`});var S=e=>({url:S.url(e),method:`post`});S.definition={methods:[`post`],url:`/admin/settings/sites`},S.url=e=>S.definition.url+g(e),S.post=e=>({url:S.url(e),method:`post`});var C=(e,t)=>({url:C.url(e,t),method:`delete`});C.definition={methods:[`delete`],url:`/admin/settings/sites/{site}`},C.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={site:e}),Array.isArray(e)&&(e={site:e[0]}),e=_(e);let n={site:e.site};return C.definition.url.replace(`{site}`,n.site.toString()).replace(/\/+$/,``)+g(t)},C.delete=(e,t)=>({url:C.url(e,t),method:`delete`});var w=(e,t)=>({url:w.url(e,t),method:`get`});w.definition={methods:[`get`,`head`],url:`/admin/settings/sites/{site}`},w.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={site:e}),typeof e==`object`&&!Array.isArray(e)&&`id`in e&&(e={site:e.id}),Array.isArray(e)&&(e={site:e[0]}),e=_(e);let n={site:typeof e.site==`object`?e.site.id:e.site};return w.definition.url.replace(`{site}`,n.site.toString()).replace(/\/+$/,``)+g(t)},w.get=(e,t)=>({url:w.url(e,t),method:`get`}),w.head=(e,t)=>({url:w.url(e,t),method:`head`});var T={class:`grid gap-3`},E=[`label`,`help-text`,`.model-value`],D=[`label`,`checked`],O=[`label`,`checked`],k=[`label`],A=[`label`,`.model-value`],j={slot:`input`},M={value:``},N=[`selected`,`value`],P={slot:`feedback`},F={key:0,class:`error-list`},I=n({__name:`DeleteSiteModal`,props:{open:{type:Boolean,default:!1},site:{}},emits:[`close`],setup(n,{emit:g}){let _=g,y=n,b=c(),x=a(()=>b.props.transferContentOptions?b.props.transferContentOptions.filter(e=>e.id!==y.site.id):[]),S=d({id:y.site.id,contentDestination:`transfer`,transferContentTo:null});async function w(){I()}function I(){S.clearErrors().delete(C(y.site.id).url,{onSuccess:()=>{_(`close`),S.reset()}})}function L(){_(`close`),S.clearErrors(),S.reset()}return(a,c)=>(r(),h(v,{title:s(e)(`Delete {site}`,{site:n.site.name}),"is-active":n.open,onClose:L,onSubmit:w,loading:s(S).processing,"submit-label":s(e)(`Delete`)},{default:i(()=>[p(`div`,T,[p(`craft-radio-group`,{name:`contentDestination`,label:s(e)(`Content Destination`),"help-text":s(e)(`What do you want to do with any content that is only available in {siteName}?`,{siteName:n.site.name}),".model-value":s(S).contentDestination,onModelValueChanged:c[0]||=e=>s(S).contentDestination=e.target.modelValue},[p(`craft-radio`,{label:s(e)(`Transfer it`),".choice-value":`transfer`,checked:s(S).contentDestination===`transfer`},null,40,D),p(`craft-radio`,{label:s(e)(`Delete it`),".choice-value":`delete`,checked:s(S).contentDestination===`delete`},null,40,O)],40,E),s(S).contentDestination===`transfer`?(r(),h(s(u),{key:0,data:`transferContentOptions`},{fallback:i(()=>[p(`craft-input`,{disabled:``,label:s(e)(`Transfer content to`)},null,8,k)]),default:i(()=>[p(`craft-select`,{label:s(e)(`Transfer content to`),id:`transfer-to`,name:`transferContentTo`,".model-value":s(S).transferContentTo,onModelValueChanged:c[1]||=e=>s(S).transferContentTo=e.target.modelValue},[p(`select`,j,[p(`option`,M,f(s(e)(`Select site`)),1),(r(!0),m(l,null,t(x.value,e=>(r(),m(`option`,{key:e.id,selected:e.id===s(S).transferContentTo,value:e.id},f(e.name),9,N))),128))]),p(`div`,P,[s(S).errors?.transferContentTo?(r(),m(`ul`,F,[p(`li`,null,f(s(S).errors.transferContentTo),1)])):o(``,!0)])],40,A)]),_:1})):o(``,!0)])]),_:1},8,[`title`,`is-active`,`loading`,`submit-label`]))}});export{S as a,x as i,b as n,w as r,I as t};
\ No newline at end of file
diff --git a/resources/build/assets/DeleteSiteModal-e4__1e4n.js b/resources/build/assets/DeleteSiteModal-e4__1e4n.js
new file mode 100644
index 00000000000..307d230bf8d
--- /dev/null
+++ b/resources/build/assets/DeleteSiteModal-e4__1e4n.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{L as t,T as n,Y as r,_ as i,b as a,c as o,et as s,g as c,n as l,o as u,p as d,ut as f,v as p,y as m,z as h}from"./dist-LYoVBFtL.js";import{n as g,t as _}from"./wayfinder-K3R1_Wej.js";import{t as v}from"./ModalForm-B4zcBt7u.js";var y=e=>({url:y.url(e),method:`get`});y.definition={methods:[`get`,`head`],url:`/admin/settings/sites`},y.url=e=>y.definition.url+g(e),y.get=e=>({url:y.url(e),method:`get`}),y.head=e=>({url:y.url(e),method:`head`});var b=e=>({url:b.url(e),method:`get`});b.definition={methods:[`get`,`head`],url:`/admin/settings/sites/new`},b.url=e=>b.definition.url+g(e),b.get=e=>({url:b.url(e),method:`get`}),b.head=e=>({url:b.url(e),method:`head`});var x=e=>({url:x.url(e),method:`post`});x.definition={methods:[`post`],url:`/admin/settings/sites/reorder`},x.url=e=>x.definition.url+g(e),x.post=e=>({url:x.url(e),method:`post`});var S=e=>({url:S.url(e),method:`post`});S.definition={methods:[`post`],url:`/admin/settings/sites`},S.url=e=>S.definition.url+g(e),S.post=e=>({url:S.url(e),method:`post`});var C=(e,t)=>({url:C.url(e,t),method:`delete`});C.definition={methods:[`delete`],url:`/admin/settings/sites/{site}`},C.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={site:e}),Array.isArray(e)&&(e={site:e[0]}),e=_(e);let n={site:e.site};return C.definition.url.replace(`{site}`,n.site.toString()).replace(/\/+$/,``)+g(t)},C.delete=(e,t)=>({url:C.url(e,t),method:`delete`});var w=(e,t)=>({url:w.url(e,t),method:`get`});w.definition={methods:[`get`,`head`],url:`/admin/settings/sites/{site}`},w.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={site:e}),typeof e==`object`&&!Array.isArray(e)&&`id`in e&&(e={site:e.id}),Array.isArray(e)&&(e={site:e[0]}),e=_(e);let n={site:typeof e.site==`object`?e.site.id:e.site};return w.definition.url.replace(`{site}`,n.site.toString()).replace(/\/+$/,``)+g(t)},w.get=(e,t)=>({url:w.url(e,t),method:`get`}),w.head=(e,t)=>({url:w.url(e,t),method:`head`});var T={class:`grid gap-3`},E=[`label`,`help-text`,`.model-value`],D=[`label`,`checked`],O=[`label`,`checked`],k=[`label`],A=[`label`,`.model-value`],j={slot:`input`},M={value:``},N=[`selected`,`value`],P={slot:`feedback`},F={key:0,class:`error-list`},I=n({__name:`DeleteSiteModal`,props:{open:{type:Boolean,default:!1},site:{}},emits:[`close`],setup(n,{emit:g}){let _=g,y=n,b=o(),x=c(()=>b.props.transferContentOptions?b.props.transferContentOptions.filter(e=>e.id!==y.site.id):[]),S=u({id:y.site.id,contentDestination:`transfer`,transferContentTo:null});async function w(){I()}function I(){S.clearErrors().delete(C(y.site.id).url,{onSuccess:()=>{_(`close`),S.reset()}})}function L(){_(`close`),S.clearErrors(),S.reset()}return(o,c)=>(t(),p(v,{title:f(e)(`Delete {site}`,{site:n.site.name}),"is-active":n.open,onClose:L,onSubmit:w,loading:f(S).processing,"submit-label":f(e)(`Delete`)},{default:r(()=>[i(`div`,T,[i(`craft-radio-group`,{name:`contentDestination`,label:f(e)(`Content Destination`),"help-text":f(e)(`What do you want to do with any content that is only available in {siteName}?`,{siteName:n.site.name}),".model-value":f(S).contentDestination,onModelValueChanged:c[0]||=e=>f(S).contentDestination=e.target.modelValue},[i(`craft-radio`,{label:f(e)(`Transfer it`),".choice-value":`transfer`,checked:f(S).contentDestination===`transfer`},null,40,D),i(`craft-radio`,{label:f(e)(`Delete it`),".choice-value":`delete`,checked:f(S).contentDestination===`delete`},null,40,O)],40,E),f(S).contentDestination===`transfer`?(t(),p(f(l),{key:0,data:`transferContentOptions`},{fallback:r(()=>[i(`craft-input`,{disabled:``,label:f(e)(`Transfer content to`)},null,8,k)]),default:r(()=>[i(`craft-select`,{label:f(e)(`Transfer content to`),id:`transfer-to`,name:`transferContentTo`,".model-value":f(S).transferContentTo,onModelValueChanged:c[1]||=e=>f(S).transferContentTo=e.target.modelValue},[i(`select`,j,[i(`option`,M,s(f(e)(`Select site`)),1),(t(!0),a(d,null,h(x.value,e=>(t(),a(`option`,{key:e.id,selected:e.id===f(S).transferContentTo,value:e.id},s(e.name),9,N))),128))]),i(`div`,P,[f(S).errors?.transferContentTo?(t(),a(`ul`,F,[i(`li`,null,s(f(S).errors.transferContentTo),1)])):m(``,!0)])],40,A)]),_:1})):m(``,!0)])]),_:1},8,[`title`,`is-active`,`loading`,`submit-label`]))}});export{S as a,x as i,b as n,w as r,I as t};
\ No newline at end of file
diff --git a/resources/build/assets/DynamicHtmlRenderer-D3xDJWOm.js b/resources/build/assets/DynamicHtmlRenderer-D3xDJWOm.js
new file mode 100644
index 00000000000..1ac4cf50fd5
--- /dev/null
+++ b/resources/build/assets/DynamicHtmlRenderer-D3xDJWOm.js
@@ -0,0 +1 @@
+import{H as e,L as t,T as n,g as r,v as i,y as a}from"./dist-LYoVBFtL.js";var o=n({__name:`DynamicHtmlRenderer`,props:{html:{}},setup(o){let s=o,c=r(()=>n({template:s.html}));return(n,r)=>o.html?(t(),i(e(c.value),{key:0})):a(``,!0)}});export{o as t};
\ No newline at end of file
diff --git a/resources/build/assets/DynamicHtmlRenderer-D9wFz2Y2.js b/resources/build/assets/DynamicHtmlRenderer-D9wFz2Y2.js
deleted file mode 100644
index a3db21038e5..00000000000
--- a/resources/build/assets/DynamicHtmlRenderer-D9wFz2Y2.js
+++ /dev/null
@@ -1 +0,0 @@
-import{E as e,R as t,U as n,_ as r,b as i,y as a}from"./_plugin-vue_export-helper-B5xWb4v9.js";var o=e({__name:`DynamicHtmlRenderer`,props:{html:{}},setup(o){let s=o,c=r(()=>e({template:s.html}));return(e,r)=>o.html?(t(),a(n(c.value),{key:0})):i(``,!0)}});export{o as t};
\ No newline at end of file
diff --git a/resources/build/assets/Email-C3EjskGK.js b/resources/build/assets/Email-C3EjskGK.js
new file mode 100644
index 00000000000..c053b5f3aad
--- /dev/null
+++ b/resources/build/assets/Email-C3EjskGK.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{L as t,T as n,Y as r,_ as i,b as a,c as o,et as s,g as c,o as l,p as u,ut as d,v as f,w as p,y as m}from"./dist-LYoVBFtL.js";import{t as h}from"./AdminTable-3rUkyUV7.js";import{t as g}from"./Pane-_ECBrQIr.js";import{t as _}from"./InlineFlash-Cp9tUHHi.js";import{n as v}from"./wayfinder-K3R1_Wej.js";import{t as y}from"./CraftInput-CGOATOXU.js";import{t as b}from"./AppLayout-DjmoYmre.js";import{t as x}from"./CraftCombobox-BkCjs3xZ.js";import{t as S}from"./useEditableTable-CkjMpOvH.js";import{t as C}from"./useSettingsSave-Bi4IyL5Y.js";var w=n({__name:`SiteOverridesTable`,props:{sites:{},modelValue:{}},emits:[`update:modelValue`],setup(n,{emit:i}){let a=i,s=n,l=o(),u=c(()=>l.props.envSuggestions),m=c(()=>l.props.templateSuggestions);function _(e){return s.sites.find(t=>t.uid===e)?.name??e}let{table:v}=S({data:()=>s.modelValue,key:`uid`,name:`siteOverrides`,onChange:e=>a(`update:modelValue`,e),columns:({columnHelper:t})=>[t.display({id:`name`,header:e(`Site`),cell:({row:e})=>_(e.original.uid),meta:{cellTag:`th`}}),t.autocomplete(`fromEmail`,{header:e(`System Email Address`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:u.value}),t.autocomplete(`fromName`,{header:e(`Sender Name`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:u.value}),t.autocomplete(`replyToEmail`,{header:e(`Reply-To Address`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:u.value}),t.autocomplete(`template`,{header:e(`HTML Email Template`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:m.value})]});return(e,n)=>(t(),f(g,{padding:0,appearance:`raised`},{default:r(()=>[p(h,{table:d(v),reorderable:!1},null,8,[`table`])]),_:1}))}}),T=e=>({url:T.url(e),method:`get`});T.definition={methods:[`get`,`head`],url:`/admin/settings/email`},T.url=e=>T.definition.url+v(e),T.get=e=>({url:T.url(e),method:`get`}),T.head=e=>({url:T.url(e),method:`head`});var E=e=>({url:E.url(e),method:`post`});E.definition={methods:[`post`],url:`/admin/settings/email`},E.url=e=>E.definition.url+v(e),E.post=e=>({url:E.url(e),method:`post`});var D=e=>({url:D.url(e),method:`post`});D.definition={methods:[`post`],url:`/admin/settings/email/test`},D.url=e=>D.definition.url+v(e),D.post=e=>({url:D.url(e),method:`post`}),Object.assign(T,T),Object.assign(E,E),Object.assign(D,D);var O={class:`grid gap-3`},k={class:`grid gap-3`},A={class:`mb-4`},j={class:`text-base`},M={class:`text-sm text-neutral-text-quiet`},N={class:`mb-3`},P={class:`grid gap-3`},F={class:`flex gap-2 items-center`},I=[`loading`],L=n({__name:`Email`,props:{readOnly:{type:Boolean},emailConfig:{},mailerOptions:{},envSuggestions:{},templateSuggestions:{},sites:{},defaultToEmail:{},redirectUrl:{}},setup(n){let o=n,h=c(()=>o.sites.length>1),v={};for(let e of o.sites){let t=o.emailConfig.siteOverrides?.[e.uid]??{};v[e.uid]={uid:e.uid,fromEmail:t.fromEmail??``,fromName:t.fromName??``,replyToEmail:t.replyToEmail??``,template:t.template??``}}let S=l({fromEmail:o.emailConfig.fromEmail??``,fromName:o.emailConfig.fromName??``,replyToEmail:o.emailConfig.replyToEmail??``,mailer:o.emailConfig.mailer??``,template:o.emailConfig.template??``,siteOverrides:v}),T=l({to:o.defaultToEmail}),{save:L}=C(S,E);function R(){T.clearErrors().submit(D(),{onSuccess:()=>{T.reset()}})}return(o,c)=>(t(),f(b,{title:d(e)(`Email Settings`),form:d(S),onSave:d(L)},{default:r(()=>[i(`div`,O,[p(g,{appearance:`raised`},{default:r(()=>[i(`div`,k,[p(x,{label:d(e)(`System Email Address`),"help-text":d(e)(`The email address Craft CMS will use when sending email.`),id:`fromEmail`,name:`fromEmail`,modelValue:d(S).fromEmail,"onUpdate:modelValue":c[0]||=e=>d(S).fromEmail=e,error:d(S).errors?.fromEmail,options:n.envSuggestions,disabled:n.readOnly,"require-option-match":!1,"show-all-on-empty":``,callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`options`,`disabled`]),p(x,{label:d(e)(`Sender Name`),"help-text":d(e)(`The “From” name Craft CMS will use when sending email.`),id:`fromName`,name:`fromName`,modelValue:d(S).fromName,"onUpdate:modelValue":c[1]||=e=>d(S).fromName=e,error:d(S).errors?.fromName,disabled:n.readOnly,"require-option-match":!1,"show-all-on-empty":``,options:n.envSuggestions,callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`]),p(x,{label:d(e)(`Reply-To Address`),"help-text":d(e)(`The Reply-To email address Craft CMS should use when sending email.`),id:`replyToEmail`,name:`replyToEmail`,modelValue:d(S).replyToEmail,"onUpdate:modelValue":c[2]||=e=>d(S).replyToEmail=e,error:d(S).errors?.replyToEmail,disabled:n.readOnly,"require-option-match":!1,options:n.envSuggestions,"show-all-on-empty":``,callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`]),p(x,{label:d(e)(`HTML Email Template`),"help-text":d(e)(`The template Craft CMS will use for HTML emails. Leave blank to use the default template.`),id:`template`,name:`template`,modelValue:d(S).template,"onUpdate:modelValue":c[3]||=e=>d(S).template=e,error:d(S).errors?.template,disabled:n.readOnly,"require-option-match":!1,"show-all-on-empty":``,options:[...n.templateSuggestions??[],...n.envSuggestions??[]],callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`])]),h.value?(t(),a(u,{key:0},[c[7]||=i(`hr`,{class:`my-6`},null,-1),i(`div`,null,[i(`div`,A,[i(`h2`,j,s(d(e)(`Site Overrides`)),1),i(`p`,M,s(d(e)(`Override the default email settings on a per-site basis. Blank values will use the defaults above.`)),1)]),p(w,{modelValue:d(S).siteOverrides,"onUpdate:modelValue":c[4]||=e=>d(S).siteOverrides=e,sites:n.sites},null,8,[`modelValue`,`sites`])])],64)):m(``,!0),c[8]||=i(`hr`,{class:`my-6`},null,-1),i(`div`,null,[p(x,{label:d(e)(`Mailer`),"help-text":d(e)(`How should Craft CMS send the emails?`),id:`mailer`,name:`mailer`,modelValue:d(S).mailer,"onUpdate:modelValue":c[5]||=e=>d(S).mailer=e,error:d(S).errors?.mailer,disabled:n.readOnly,"require-option-match":!1,"show-all-on-empty":``,options:[...n.mailerOptions.map(e=>({...e,value:e.value??``})),...n.envSuggestions??[]],callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`])])]),_:1}),p(g,{appearance:`raised`},{default:r(()=>[i(`h2`,N,s(d(e)(`Send a test email`)),1),i(`div`,P,[p(y,{label:d(e)(`To`),modelValue:d(T).to,"onUpdate:modelValue":c[6]||=e=>d(T).to=e,name:`to`,error:d(T).errors.to},null,8,[`label`,`modelValue`,`error`]),i(`div`,F,[i(`craft-button`,{type:`button`,variant:`primary`,loading:d(T).processing,onClick:R},s(d(e)(`Test`)),9,I),p(_,{"is-active":d(T).recentlySuccessful||d(T).hasErrors},null,8,[`is-active`])])])]),_:1})])]),_:1},8,[`title`,`form`,`onSave`]))}});export{L as default};
\ No newline at end of file
diff --git a/resources/build/assets/Email-KnC4LAQv.js b/resources/build/assets/Email-KnC4LAQv.js
deleted file mode 100644
index 4f09caf5b73..00000000000
--- a/resources/build/assets/Email-KnC4LAQv.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{E as t,R as n,T as r,X as i,_ as a,b as o,dt as s,l as c,m as l,s as u,tt as d,v as f,x as p,y as m}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{t as h}from"./AdminTable-fmWBDoLo.js";import{t as g}from"./Pane-CukoaDZn.js";import{t as _}from"./InlineFlash-CASXlxQJ.js";import{n as v}from"./wayfinder-BO4LFEOp.js";import{t as y}from"./CraftInput-OjhrLWw-.js";import{t as b}from"./AppLayout-CMfRP4dO.js";import{t as x}from"./CraftCombobox-B64mFprO.js";import{t as S}from"./useEditableTable-CvZkA1nY.js";import{t as C}from"./useSettingsSave-Ddp2zTwK.js";var w=t({__name:`SiteOverridesTable`,props:{sites:{},modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:o}){let l=o,u=t,d=c(),f=a(()=>d.props.envSuggestions),p=a(()=>d.props.templateSuggestions);function _(e){return u.sites.find(t=>t.uid===e)?.name??e}let{table:v}=S({data:()=>u.modelValue,key:`uid`,name:`siteOverrides`,onChange:e=>l(`update:modelValue`,e),columns:({columnHelper:t})=>[t.display({id:`name`,header:e(`Site`),cell:({row:e})=>_(e.original.uid),meta:{cellTag:`th`}}),t.autocomplete(`fromEmail`,{header:e(`System Email Address`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:f.value}),t.autocomplete(`fromName`,{header:e(`Sender Name`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:f.value}),t.autocomplete(`replyToEmail`,{header:e(`Reply-To Address`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:f.value}),t.autocomplete(`template`,{header:e(`HTML Email Template`),class:`font-mono text-xs !px-[var(--_cell-spacing-inline)]`,options:p.value})]});return(e,t)=>(n(),m(g,{padding:0,appearance:`raised`},{default:i(()=>[r(h,{table:s(v),reorderable:!1},null,8,[`table`])]),_:1}))}}),T=e=>({url:T.url(e),method:`get`});T.definition={methods:[`get`,`head`],url:`/admin/settings/email`},T.url=e=>T.definition.url+v(e),T.get=e=>({url:T.url(e),method:`get`}),T.head=e=>({url:T.url(e),method:`head`});var E=e=>({url:E.url(e),method:`post`});E.definition={methods:[`post`],url:`/admin/settings/email`},E.url=e=>E.definition.url+v(e),E.post=e=>({url:E.url(e),method:`post`});var D=e=>({url:D.url(e),method:`post`});D.definition={methods:[`post`],url:`/admin/settings/email/test`},D.url=e=>D.definition.url+v(e),D.post=e=>({url:D.url(e),method:`post`}),Object.assign(T,T),Object.assign(E,E),Object.assign(D,D);var O={class:`grid gap-3`},k={class:`grid gap-3`},A={class:`mb-4`},j={class:`text-base`},M={class:`text-sm text-neutral-text-quiet`},N={class:`mb-3`},P={class:`grid gap-3`},F={class:`flex gap-2 items-center`},I=[`loading`],L=t({__name:`Email`,props:{readOnly:{type:Boolean},emailConfig:{},mailerOptions:{},envSuggestions:{},templateSuggestions:{},sites:{},defaultToEmail:{},redirectUrl:{}},setup(t){let c=t,h=a(()=>c.sites.length>1),v={};for(let e of c.sites){let t=c.emailConfig.siteOverrides?.[e.uid]??{};v[e.uid]={uid:e.uid,fromEmail:t.fromEmail??``,fromName:t.fromName??``,replyToEmail:t.replyToEmail??``,template:t.template??``}}let S=u({fromEmail:c.emailConfig.fromEmail??``,fromName:c.emailConfig.fromName??``,replyToEmail:c.emailConfig.replyToEmail??``,mailer:c.emailConfig.mailer??``,template:c.emailConfig.template??``,siteOverrides:v}),T=u({to:c.defaultToEmail}),{save:L}=C(S,E);function R(){T.clearErrors().submit(D(),{onSuccess:()=>{T.reset()}})}return(a,c)=>(n(),m(b,{title:s(e)(`Email Settings`),form:s(S),onSave:s(L)},{default:i(()=>[f(`div`,O,[r(g,{appearance:`raised`},{default:i(()=>[f(`div`,k,[r(x,{label:s(e)(`System Email Address`),"help-text":s(e)(`The email address Craft CMS will use when sending email.`),id:`fromEmail`,name:`fromEmail`,modelValue:s(S).fromEmail,"onUpdate:modelValue":c[0]||=e=>s(S).fromEmail=e,error:s(S).errors?.fromEmail,options:t.envSuggestions,disabled:t.readOnly,"require-option-match":!1,"show-all-on-empty":``,callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`options`,`disabled`]),r(x,{label:s(e)(`Sender Name`),"help-text":s(e)(`The “From” name Craft CMS will use when sending email.`),id:`fromName`,name:`fromName`,modelValue:s(S).fromName,"onUpdate:modelValue":c[1]||=e=>s(S).fromName=e,error:s(S).errors?.fromName,disabled:t.readOnly,"require-option-match":!1,"show-all-on-empty":``,options:t.envSuggestions,callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`]),r(x,{label:s(e)(`Reply-To Address`),"help-text":s(e)(`The Reply-To email address Craft CMS should use when sending email.`),id:`replyToEmail`,name:`replyToEmail`,modelValue:s(S).replyToEmail,"onUpdate:modelValue":c[2]||=e=>s(S).replyToEmail=e,error:s(S).errors?.replyToEmail,disabled:t.readOnly,"require-option-match":!1,options:t.envSuggestions,"show-all-on-empty":``,callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`]),r(x,{label:s(e)(`HTML Email Template`),"help-text":s(e)(`The template Craft CMS will use for HTML emails. Leave blank to use the default template.`),id:`template`,name:`template`,modelValue:s(S).template,"onUpdate:modelValue":c[3]||=e=>s(S).template=e,error:s(S).errors?.template,disabled:t.readOnly,"require-option-match":!1,"show-all-on-empty":``,options:[...t.templateSuggestions??[],...t.envSuggestions??[]],callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`])]),h.value?(n(),p(l,{key:0},[c[7]||=f(`hr`,{class:`my-6`},null,-1),f(`div`,null,[f(`div`,A,[f(`h2`,j,d(s(e)(`Site Overrides`)),1),f(`p`,M,d(s(e)(`Override the default email settings on a per-site basis. Blank values will use the defaults above.`)),1)]),r(w,{modelValue:s(S).siteOverrides,"onUpdate:modelValue":c[4]||=e=>s(S).siteOverrides=e,sites:t.sites},null,8,[`modelValue`,`sites`])])],64)):o(``,!0),c[8]||=f(`hr`,{class:`my-6`},null,-1),f(`div`,null,[r(x,{label:s(e)(`Mailer`),"help-text":s(e)(`How should Craft CMS send the emails?`),id:`mailer`,name:`mailer`,modelValue:s(S).mailer,"onUpdate:modelValue":c[5]||=e=>s(S).mailer=e,error:s(S).errors?.mailer,disabled:t.readOnly,"require-option-match":!1,"show-all-on-empty":``,options:[...t.mailerOptions.map(e=>({...e,value:e.value??``})),...t.envSuggestions??[]],callouts:[`envVars`]},null,8,[`label`,`help-text`,`modelValue`,`error`,`disabled`,`options`])])]),_:1}),r(g,{appearance:`raised`},{default:i(()=>[f(`h2`,N,d(s(e)(`Send a test email`)),1),f(`div`,P,[r(y,{label:s(e)(`To`),modelValue:s(T).to,"onUpdate:modelValue":c[6]||=e=>s(T).to=e,name:`to`,error:s(T).errors.to},null,8,[`label`,`modelValue`,`error`]),f(`div`,F,[f(`craft-button`,{type:`button`,variant:`primary`,loading:s(T).processing,onClick:R},d(s(e)(`Test`)),9,I),r(_,{"is-active":s(T).recentlySuccessful||s(T).hasErrors},null,8,[`is-active`])])])]),_:1})])]),_:1},8,[`title`,`form`,`onSave`]))}});export{L as default};
\ No newline at end of file
diff --git a/resources/build/assets/EntryTypes-BwCE_lYJ.js b/resources/build/assets/EntryTypes-BwCE_lYJ.js
new file mode 100644
index 00000000000..99c1a763519
--- /dev/null
+++ b/resources/build/assets/EntryTypes-BwCE_lYJ.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{C as t,L as n,O as r,T as i,Y as a,at as o,dt as s,et as c,g as l,ut as u,v as d,w as f}from"./dist-LYoVBFtL.js";import{a as p,l as m,n as h,s as g,t as _}from"./AdminTable-3rUkyUV7.js";import{t as v}from"./Pane-_ECBrQIr.js";import{o as y}from"./InlineFlash-Cp9tUHHi.js";import{t as b}from"./DeleteButton-Diwghn7k.js";import{t as x}from"./createCraftColumnHelper-WT83RxkC.js";import{t as S}from"./AppLayout-DjmoYmre.js";import{t as C}from"./DynamicHtmlRenderer-D3xDJWOm.js";import{i as w,n as T,r as E}from"./EntryTypesController-Ca96qjev.js";import{n as D,r as O,t as k}from"./useServerSort-Bb_paQEM.js";var A=i({__name:`EntryTypes`,props:{title:{},pagination:{},sort:{},searchTerm:{},data:{},readOnly:{type:Boolean}},setup(i){let A=i;function j(t){confirm(e(`Are you sure you want to delete “{name}” and all entries of that type?`,{name:t.title}))&&s.delete(E(t.id))}let M=o(A.searchTerm??``),N=l(()=>A.data),P=x(),F=l(()=>({name:!0,handle:!0,usages:!0,actions:!A.readOnly})),I=l(()=>[P.display({id:`name`,header:e(`Entry Type`),cell:({row:e})=>r(C,{html:e.original.chip})}),P.accessor(`handle`,{header:e(`Handle`),meta:{cellClass:`justify-center`},cell:({getValue:e})=>r(`craft-copy-attribute`,{value:e()},e())}),P.accessor(`usages`,{header:e(`Usages`),cell:({getValue:e})=>r(C,{html:e()})}),P.actions(({row:e})=>[r(b,{onClick:()=>j(e.original)})])]),{paginationState:L,paginationConfig:R}=O({initialState:A.pagination,onChange:({query:e})=>{s.visit(w({query:e}),{only:[`data`,`pagination`],preserveScroll:!0})}}),{sortingState:z,sortingConfig:B}=k({initialState:A.sort,onChange:({query:e})=>{s.visit(w({query:e}),{only:[`data`,`sort`],preserveScroll:!0})}}),V=g({get data(){return N.value},get columns(){return I.value},state:{get pagination(){return L.value},get sorting(){return z.value},get columnVisibility(){return F.value}},getCoreRowModel:m(),...R,...B});return(r,o)=>(n(),d(S,{title:i.title},{actions:a(()=>[f(y,{appearance:`button`,href:u(T)[`/admin/settings/entry-types/new`]().url,variant:`primary`,inertia:!1,icon:`plus`},{default:a(()=>[t(c(u(e)(`New entry type`)),1)]),_:1},8,[`href`])]),default:a(()=>[f(v,{padding:0,appearance:`raised`},{default:a(()=>[f(_,{spacing:u(p).Relaxed,table:u(V),reorderable:!1,from:i.pagination.from,to:i.pagination.to,total:i.pagination.total,"enable-adjust-page-size":!0},{"empty-row":a(()=>[f(h,{icon:`light/files`,label:u(e)(`No entry types exist yet.`)},null,8,[`label`])]),"search-form":a(()=>[f(D,{action:u(w)(),modelValue:M.value,"onUpdate:modelValue":o[0]||=e=>M.value=e},null,8,[`action`,`modelValue`])]),_:1},8,[`spacing`,`table`,`from`,`to`,`total`])]),_:1})]),_:1},8,[`title`]))}});export{A as default};
\ No newline at end of file
diff --git a/resources/build/assets/EntryTypes-CFAdvH6n.js b/resources/build/assets/EntryTypes-CFAdvH6n.js
deleted file mode 100644
index 870447034a9..00000000000
--- a/resources/build/assets/EntryTypes-CFAdvH6n.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{E as t,R as n,T as r,X as i,_ as a,dt as o,ft as s,k as c,ot as l,tt as u,w as d,y as f}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{a as p,l as m,n as h,s as g,t as _}from"./AdminTable-fmWBDoLo.js";import{t as v}from"./Pane-CukoaDZn.js";import{s as y}from"./InlineFlash-CASXlxQJ.js";import{t as b}from"./DeleteButton-B6fT-tEn.js";import{t as x}from"./createCraftColumnHelper-DmeFY1c4.js";import{t as S}from"./AppLayout-CMfRP4dO.js";import{t as C}from"./DynamicHtmlRenderer-D9wFz2Y2.js";import{i as w,n as T,r as E}from"./EntryTypesController-Dp1B-3A3.js";import{n as D,r as O,t as k}from"./useServerSort-DMoG73XS.js";var A=t({__name:`EntryTypes`,props:{title:{},pagination:{},sort:{},searchTerm:{},data:{},readOnly:{type:Boolean}},setup(t){let A=t;function j(t){confirm(e(`Are you sure you want to delete “{name}” and all entries of that type?`,{name:t.title}))&&s.delete(E(t.id))}let M=l(A.searchTerm??``),N=a(()=>A.data),P=x(),F=a(()=>({name:!0,handle:!0,usages:!0,actions:!A.readOnly})),I=a(()=>[P.display({id:`name`,header:e(`Entry Type`),cell:({row:e})=>c(C,{html:e.original.chip})}),P.accessor(`handle`,{header:e(`Handle`),meta:{cellClass:`justify-center`},cell:({getValue:e})=>c(`craft-copy-attribute`,{value:e()},e())}),P.accessor(`usages`,{header:e(`Usages`),cell:({getValue:e})=>c(C,{html:e()})}),P.actions(({row:e})=>[c(b,{onClick:()=>j(e.original)})])]),{paginationState:L,paginationConfig:R}=O({initialState:A.pagination,onChange:({query:e})=>{s.visit(w({query:e}),{only:[`data`,`pagination`],preserveScroll:!0})}}),{sortingState:z,sortingConfig:B}=k({initialState:A.sort,onChange:({query:e})=>{s.visit(w({query:e}),{only:[`data`,`sort`],preserveScroll:!0})}}),V=g({get data(){return N.value},get columns(){return I.value},state:{get pagination(){return L.value},get sorting(){return z.value},get columnVisibility(){return F.value}},getCoreRowModel:m(),...R,...B});return(a,s)=>(n(),f(S,{title:t.title},{actions:i(()=>[r(y,{appearance:`button`,href:o(T)[`/admin/settings/entry-types/new`]().url,variant:`primary`,inertia:!1,icon:`plus`},{default:i(()=>[d(u(o(e)(`New entry type`)),1)]),_:1},8,[`href`])]),default:i(()=>[r(v,{padding:0,appearance:`raised`},{default:i(()=>[r(_,{spacing:o(p).Relaxed,table:o(V),reorderable:!1,from:t.pagination.from,to:t.pagination.to,total:t.pagination.total,"enable-adjust-page-size":!0},{"empty-row":i(()=>[r(h,{icon:`light/files`,label:o(e)(`No entry types exist yet.`)},null,8,[`label`])]),"search-form":i(()=>[r(D,{action:o(w)(),modelValue:M.value,"onUpdate:modelValue":s[0]||=e=>M.value=e},null,8,[`action`,`modelValue`])]),_:1},8,[`spacing`,`table`,`from`,`to`,`total`])]),_:1})]),_:1},8,[`title`]))}});export{A as default};
\ No newline at end of file
diff --git a/resources/build/assets/EntryTypesController-Dp1B-3A3.js b/resources/build/assets/EntryTypesController-Ca96qjev.js
similarity index 98%
rename from resources/build/assets/EntryTypesController-Dp1B-3A3.js
rename to resources/build/assets/EntryTypesController-Ca96qjev.js
index 085588426b7..0ac3bc9f600 100644
--- a/resources/build/assets/EntryTypesController-Dp1B-3A3.js
+++ b/resources/build/assets/EntryTypesController-Ca96qjev.js
@@ -1 +1 @@
-import{n as e,r as t,t as n}from"./wayfinder-BO4LFEOp.js";var r=e=>({url:r.url(e),method:`get`});r.definition={methods:[`get`,`head`],url:`/admin/actions/entry-types/table-data`},r.url=t=>r.definition.url+e(t),r.get=e=>({url:r.url(e),method:`get`}),r.head=e=>({url:r.url(e),method:`head`});var i=(e,t)=>({url:i.url(e,t),method:`get`});i.definition={methods:[`get`,`head`],url:`/admin/actions/entry-types/edit/{entryType?}`},i.url=(r,a)=>{(typeof r==`string`||typeof r==`number`)&&(r={entryType:r}),typeof r==`object`&&!Array.isArray(r)&&`id`in r&&(r={entryType:r.id}),Array.isArray(r)&&(r={entryType:r[0]}),r=n(r),t(r,[`entryType`]);let o={entryType:typeof r?.entryType==`object`?r.entryType.id:r?.entryType};return i.definition.url.replace(`{entryType?}`,o.entryType?.toString()??``).replace(/\/+$/,``)+e(a)},i.get=(e,t)=>({url:i.url(e,t),method:`get`}),i.head=(e,t)=>({url:i.url(e,t),method:`head`});var a=(e,t)=>({url:a.url(e,t),method:`get`});a.definition={methods:[`get`,`head`],url:`/admin/settings/entry-types/{entryType}`},a.url=(t,r)=>{(typeof t==`string`||typeof t==`number`)&&(t={entryType:t}),typeof t==`object`&&!Array.isArray(t)&&`id`in t&&(t={entryType:t.id}),Array.isArray(t)&&(t={entryType:t[0]}),t=n(t);let i={entryType:typeof t.entryType==`object`?t.entryType.id:t.entryType};return a.definition.url.replace(`{entryType}`,i.entryType.toString()).replace(/\/+$/,``)+e(r)},a.get=(e,t)=>({url:a.url(e,t),method:`get`}),a.head=(e,t)=>({url:a.url(e,t),method:`head`});var o=e=>({url:o.url(e),method:`get`});o.definition={methods:[`get`,`head`],url:`/admin/actions/entry-types/new`},o.url=t=>o.definition.url+e(t),o.get=e=>({url:o.url(e),method:`get`}),o.head=e=>({url:o.url(e),method:`head`});var s=e=>({url:s.url(e),method:`get`});s.definition={methods:[`get`,`head`],url:`/admin/settings/entry-types/new`},s.url=t=>s.definition.url+e(t),s.get=e=>({url:s.url(e),method:`get`}),s.head=e=>({url:s.url(e),method:`head`});var c={"/admin/actions/entry-types/new":o,"/admin/settings/entry-types/new":s},l=e=>({url:l.url(e),method:`post`});l.definition={methods:[`post`],url:`/admin/actions/entry-types/save`},l.url=t=>l.definition.url+e(t),l.post=e=>({url:l.url(e),method:`post`});var u=e=>({url:u.url(e),method:`post`});u.definition={methods:[`post`],url:`/admin/actions/entry-types/render-override-settings`},u.url=t=>u.definition.url+e(t),u.post=e=>({url:u.url(e),method:`post`});var d=e=>({url:d.url(e),method:`post`});d.definition={methods:[`post`],url:`/admin/actions/entry-types/apply-override-settings`},d.url=t=>d.definition.url+e(t),d.post=e=>({url:d.url(e),method:`post`});var f=e=>({url:f.url(e),method:`get`});f.definition={methods:[`get`,`head`],url:`/admin/settings/entry-types`},f.url=t=>f.definition.url+e(t),f.get=e=>({url:f.url(e),method:`get`}),f.head=e=>({url:f.url(e),method:`head`});var p=(e,t)=>({url:p.url(e,t),method:`delete`});p.definition={methods:[`delete`],url:`/admin/settings/entry-types/{entryType}`},p.url=(t,r)=>{(typeof t==`string`||typeof t==`number`)&&(t={entryType:t}),typeof t==`object`&&!Array.isArray(t)&&`id`in t&&(t={entryType:t.id}),Array.isArray(t)&&(t={entryType:t[0]}),t=n(t);let i={entryType:typeof t.entryType==`object`?t.entryType.id:t.entryType};return p.definition.url.replace(`{entryType}`,i.entryType.toString()).replace(/\/+$/,``)+e(r)},p.delete=(e,t)=>({url:p.url(e,t),method:`delete`});export{u as a,f as i,c as n,p as r,d as t};
\ No newline at end of file
+import{n as e,r as t,t as n}from"./wayfinder-K3R1_Wej.js";var r=e=>({url:r.url(e),method:`get`});r.definition={methods:[`get`,`head`],url:`/admin/actions/entry-types/table-data`},r.url=t=>r.definition.url+e(t),r.get=e=>({url:r.url(e),method:`get`}),r.head=e=>({url:r.url(e),method:`head`});var i=(e,t)=>({url:i.url(e,t),method:`get`});i.definition={methods:[`get`,`head`],url:`/admin/actions/entry-types/edit/{entryType?}`},i.url=(r,a)=>{(typeof r==`string`||typeof r==`number`)&&(r={entryType:r}),typeof r==`object`&&!Array.isArray(r)&&`id`in r&&(r={entryType:r.id}),Array.isArray(r)&&(r={entryType:r[0]}),r=n(r),t(r,[`entryType`]);let o={entryType:typeof r?.entryType==`object`?r.entryType.id:r?.entryType};return i.definition.url.replace(`{entryType?}`,o.entryType?.toString()??``).replace(/\/+$/,``)+e(a)},i.get=(e,t)=>({url:i.url(e,t),method:`get`}),i.head=(e,t)=>({url:i.url(e,t),method:`head`});var a=(e,t)=>({url:a.url(e,t),method:`get`});a.definition={methods:[`get`,`head`],url:`/admin/settings/entry-types/{entryType}`},a.url=(t,r)=>{(typeof t==`string`||typeof t==`number`)&&(t={entryType:t}),typeof t==`object`&&!Array.isArray(t)&&`id`in t&&(t={entryType:t.id}),Array.isArray(t)&&(t={entryType:t[0]}),t=n(t);let i={entryType:typeof t.entryType==`object`?t.entryType.id:t.entryType};return a.definition.url.replace(`{entryType}`,i.entryType.toString()).replace(/\/+$/,``)+e(r)},a.get=(e,t)=>({url:a.url(e,t),method:`get`}),a.head=(e,t)=>({url:a.url(e,t),method:`head`});var o=e=>({url:o.url(e),method:`get`});o.definition={methods:[`get`,`head`],url:`/admin/actions/entry-types/new`},o.url=t=>o.definition.url+e(t),o.get=e=>({url:o.url(e),method:`get`}),o.head=e=>({url:o.url(e),method:`head`});var s=e=>({url:s.url(e),method:`get`});s.definition={methods:[`get`,`head`],url:`/admin/settings/entry-types/new`},s.url=t=>s.definition.url+e(t),s.get=e=>({url:s.url(e),method:`get`}),s.head=e=>({url:s.url(e),method:`head`});var c={"/admin/actions/entry-types/new":o,"/admin/settings/entry-types/new":s},l=e=>({url:l.url(e),method:`post`});l.definition={methods:[`post`],url:`/admin/actions/entry-types/save`},l.url=t=>l.definition.url+e(t),l.post=e=>({url:l.url(e),method:`post`});var u=e=>({url:u.url(e),method:`post`});u.definition={methods:[`post`],url:`/admin/actions/entry-types/render-override-settings`},u.url=t=>u.definition.url+e(t),u.post=e=>({url:u.url(e),method:`post`});var d=e=>({url:d.url(e),method:`post`});d.definition={methods:[`post`],url:`/admin/actions/entry-types/apply-override-settings`},d.url=t=>d.definition.url+e(t),d.post=e=>({url:d.url(e),method:`post`});var f=e=>({url:f.url(e),method:`get`});f.definition={methods:[`get`,`head`],url:`/admin/settings/entry-types`},f.url=t=>f.definition.url+e(t),f.get=e=>({url:f.url(e),method:`get`}),f.head=e=>({url:f.url(e),method:`head`});var p=(e,t)=>({url:p.url(e,t),method:`delete`});p.definition={methods:[`delete`],url:`/admin/settings/entry-types/{entryType}`},p.url=(t,r)=>{(typeof t==`string`||typeof t==`number`)&&(t={entryType:t}),typeof t==`object`&&!Array.isArray(t)&&`id`in t&&(t={entryType:t.id}),Array.isArray(t)&&(t={entryType:t[0]}),t=n(t);let i={entryType:typeof t.entryType==`object`?t.entryType.id:t.entryType};return p.definition.url.replace(`{entryType}`,i.entryType.toString()).replace(/\/+$/,``)+e(r)},p.delete=(e,t)=>({url:p.url(e,t),method:`delete`});export{u as a,f as i,c as n,p as r,d as t};
\ No newline at end of file
diff --git a/resources/build/assets/Fields-Cu2TbJNq.js b/resources/build/assets/Fields-Cu2TbJNq.js
new file mode 100644
index 00000000000..8f51b59ce97
--- /dev/null
+++ b/resources/build/assets/Fields-Cu2TbJNq.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{C as t,L as n,O as r,T as i,Y as a,at as o,dt as s,et as c,g as l,ut as u,v as d,w as f}from"./dist-LYoVBFtL.js";import{c as p,l as m,n as h,s as g,t as _}from"./AdminTable-3rUkyUV7.js";import{t as v}from"./Pane-_ECBrQIr.js";import{o as y}from"./InlineFlash-Cp9tUHHi.js";import{n as b,t as x}from"./wayfinder-K3R1_Wej.js";import{t as S}from"./DeleteButton-Diwghn7k.js";import{t as C}from"./AppLayout-DjmoYmre.js";import{n as w,r as T,t as E}from"./useServerSort-Bb_paQEM.js";var D=e=>({url:D.url(e),method:`get`});D.definition={methods:[`get`,`head`],url:`/admin/actions/fields/edit-field`},D.url=e=>D.definition.url+b(e),D.get=e=>({url:D.url(e),method:`get`}),D.head=e=>({url:D.url(e),method:`head`});var O=(e,t)=>({url:O.url(e,t),method:`get`});O.definition={methods:[`get`,`head`],url:`/admin/settings/fields/edit/{fieldId}`},O.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={fieldId:e}),Array.isArray(e)&&(e={fieldId:e[0]}),e=x(e);let n={fieldId:e.fieldId};return O.definition.url.replace(`{fieldId}`,n.fieldId.toString()).replace(/\/+$/,``)+b(t)},O.get=(e,t)=>({url:O.url(e,t),method:`get`}),O.head=(e,t)=>({url:O.url(e,t),method:`head`});var k=e=>({url:k.url(e),method:`post`});k.definition={methods:[`post`],url:`/admin/actions/fields/render-settings`},k.url=e=>k.definition.url+b(e),k.post=e=>({url:k.url(e),method:`post`});var A=e=>({url:A.url(e),method:`post`});A.definition={methods:[`post`],url:`/admin/actions/fields/save-field`},A.url=e=>A.definition.url+b(e),A.post=e=>({url:A.url(e),method:`post`});var j=e=>({url:j.url(e),method:`post`});j.definition={methods:[`post`],url:`/admin/actions/fields/render-layout-component-settings`},j.url=e=>j.definition.url+b(e),j.post=e=>({url:j.url(e),method:`post`});var M=e=>({url:M.url(e),method:`post`});M.definition={methods:[`post`],url:`/admin/actions/fields/apply-layout-tab-settings`},M.url=e=>M.definition.url+b(e),M.post=e=>({url:M.url(e),method:`post`});var N=e=>({url:N.url(e),method:`post`});N.definition={methods:[`post`],url:`/admin/actions/fields/apply-layout-element-settings`},N.url=e=>N.definition.url+b(e),N.post=e=>({url:N.url(e),method:`post`});var P=e=>({url:P.url(e),method:`post`});P.definition={methods:[`post`],url:`/admin/actions/fields/render-card-preview`},P.url=e=>P.definition.url+b(e),P.post=e=>({url:P.url(e),method:`post`});var F=e=>({url:F.url(e),method:`get`});F.definition={methods:[`get`,`head`],url:`/admin/actions/fields/table-data`},F.url=e=>F.definition.url+b(e),F.get=e=>({url:F.url(e),method:`get`}),F.head=e=>({url:F.url(e),method:`head`});var I=e=>({url:I.url(e),method:`get`});I.definition={methods:[`get`,`head`],url:`/admin/settings/fields`},I.url=e=>I.definition.url+b(e),I.get=e=>({url:I.url(e),method:`get`}),I.head=e=>({url:I.url(e),method:`head`});var L=e=>({url:L.url(e),method:`get`});L.definition={methods:[`get`,`head`],url:`/admin/settings/fields/new`},L.url=e=>L.definition.url+b(e),L.get=e=>({url:L.url(e),method:`get`}),L.head=e=>({url:L.url(e),method:`head`});var R=(e,t)=>({url:R.url(e,t),method:`delete`});R.definition={methods:[`delete`],url:`/admin/settings/fields/{fieldId}`},R.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={fieldId:e}),Array.isArray(e)&&(e={fieldId:e[0]}),e=x(e);let n={fieldId:e.fieldId};return R.definition.url.replace(`{fieldId}`,n.fieldId.toString()).replace(/\/+$/,``)+b(t)},R.delete=(e,t)=>({url:R.url(e,t),method:`delete`});var z=i({__name:`Fields`,props:{title:{},readOnly:{type:Boolean},data:{},sort:{},searchTerm:{},pagination:{},isMultiSite:{type:Boolean}},setup(i){let b=i;function x(t){confirm(e(`Are you sure you want to delete “{name}”?`,{name:t.title}))&&s.delete(R({fieldId:t.id}))}let D=o(b.searchTerm??``),O=p(),k=l(()=>({name:!0,searchable:!0,translatable:b.isMultiSite,handle:!0,type:!0,usages:!0,actions:!b.readOnly})),A=o([O.accessor(`title`,{header:e(`Name`),meta:{trackSize:`1.5fr`},cell:({row:e,getValue:t})=>r(y,{href:e.original.url,inertia:!1,class:`font-bold`},t)}),O.accessor(`searchable`,{header:e(`Searchable`),meta:{trackSize:`34px`,headerSrOnly:!0},enableSorting:!1,cell:({row:t})=>{if(t.original.searchable)return r(`craft-icon`,{appearance:`badge`,name:`magnifying-glass`,label:e(`This field’s values are used as search keywords.`)})}}),O.accessor(`translatable`,{header:e(`Translatable`),meta:{trackSize:`34px`,headerSrOnly:!0},enableSorting:!1,cell:({getValue:e})=>{if(e())return r(`craft-icon`,{appearance:`badge`,name:`custom-icons/language`,label:e()})}}),O.accessor(`handle`,{header:e(`Handle`),cell:({getValue:e})=>r(`craft-copy-attribute`,{value:e()},e)}),O.display({id:`type`,header:e(`Type`),cell:({row:t})=>t.original.type.isMissing?e(`Missing`):r(`div`,{class:`flex items-center gap-2`},[r(`craft-icon`,t.original.type.icon),r(`span`,t.original.type.label)])}),O.accessor(`usages`,{header:e(`Used by`)}),O.display({id:`actions`,meta:{trackSize:`60px`},cell:({row:e})=>r(`div`,{class:`self-end flex justify-end`},[r(S,{onClick:()=>x(e.original)})])})]),{paginationState:j,paginationConfig:M}=T({initialState:b.pagination,onChange:({query:e})=>{s.visit(I({query:e}),{only:[`data`,`pagination`],preserveScroll:!0})}}),{sortingState:N,sortingConfig:P}=E({initialState:b.sort,onChange:({query:e})=>{s.visit(I({query:e}),{only:[`data`,`sort`],preserveScroll:!0})}}),F=g({get data(){return b.data},get columns(){return A.value},state:{get pagination(){return j.value},get columnVisibility(){return k.value},get sorting(){return N.value}},getCoreRowModel:m(),...M,...P});return(r,o)=>(n(),d(C,{title:i.title},{actions:a(()=>[f(y,{inertia:!1,appearance:`button`,variant:`primary`,href:u(L)(),icon:`plus`},{default:a(()=>[t(c(u(e)(`New field`)),1)]),_:1},8,[`href`])]),default:a(()=>[f(v,{padding:0,appearance:`raised`},{default:a(()=>[f(_,{table:u(F),reorderable:!1,from:i.pagination.from,to:i.pagination.to,total:i.pagination.total,"enable-adjust-page-size":!0},{"empty-row":a(()=>[f(h,{icon:`light/pen-to-square`,label:u(e)(`No fields exist yet.`)},null,8,[`label`])]),"search-form":a(()=>[f(w,{modelValue:D.value,"onUpdate:modelValue":o[0]||=e=>D.value=e},null,8,[`modelValue`])]),_:1},8,[`table`,`from`,`to`,`total`])]),_:1})]),_:1},8,[`title`]))}});export{z as default};
\ No newline at end of file
diff --git a/resources/build/assets/Fields-DZc5YARJ.js b/resources/build/assets/Fields-DZc5YARJ.js
deleted file mode 100644
index eb6520773f2..00000000000
--- a/resources/build/assets/Fields-DZc5YARJ.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{E as t,R as n,T as r,X as i,_ as a,dt as o,ft as s,k as c,ot as l,tt as u,w as d,y as f}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{c as p,l as m,n as h,s as g,t as _}from"./AdminTable-fmWBDoLo.js";import{t as v}from"./Pane-CukoaDZn.js";import{s as y}from"./InlineFlash-CASXlxQJ.js";import{n as b,t as x}from"./wayfinder-BO4LFEOp.js";import{t as S}from"./DeleteButton-B6fT-tEn.js";import{t as C}from"./AppLayout-CMfRP4dO.js";import{n as w,r as T,t as E}from"./useServerSort-DMoG73XS.js";var D=e=>({url:D.url(e),method:`get`});D.definition={methods:[`get`,`head`],url:`/admin/actions/fields/edit-field`},D.url=e=>D.definition.url+b(e),D.get=e=>({url:D.url(e),method:`get`}),D.head=e=>({url:D.url(e),method:`head`});var O=(e,t)=>({url:O.url(e,t),method:`get`});O.definition={methods:[`get`,`head`],url:`/admin/settings/fields/edit/{fieldId}`},O.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={fieldId:e}),Array.isArray(e)&&(e={fieldId:e[0]}),e=x(e);let n={fieldId:e.fieldId};return O.definition.url.replace(`{fieldId}`,n.fieldId.toString()).replace(/\/+$/,``)+b(t)},O.get=(e,t)=>({url:O.url(e,t),method:`get`}),O.head=(e,t)=>({url:O.url(e,t),method:`head`});var k=e=>({url:k.url(e),method:`post`});k.definition={methods:[`post`],url:`/admin/actions/fields/render-settings`},k.url=e=>k.definition.url+b(e),k.post=e=>({url:k.url(e),method:`post`});var A=e=>({url:A.url(e),method:`post`});A.definition={methods:[`post`],url:`/admin/actions/fields/save-field`},A.url=e=>A.definition.url+b(e),A.post=e=>({url:A.url(e),method:`post`});var j=e=>({url:j.url(e),method:`post`});j.definition={methods:[`post`],url:`/admin/actions/fields/render-layout-component-settings`},j.url=e=>j.definition.url+b(e),j.post=e=>({url:j.url(e),method:`post`});var M=e=>({url:M.url(e),method:`post`});M.definition={methods:[`post`],url:`/admin/actions/fields/apply-layout-tab-settings`},M.url=e=>M.definition.url+b(e),M.post=e=>({url:M.url(e),method:`post`});var N=e=>({url:N.url(e),method:`post`});N.definition={methods:[`post`],url:`/admin/actions/fields/apply-layout-element-settings`},N.url=e=>N.definition.url+b(e),N.post=e=>({url:N.url(e),method:`post`});var P=e=>({url:P.url(e),method:`post`});P.definition={methods:[`post`],url:`/admin/actions/fields/render-card-preview`},P.url=e=>P.definition.url+b(e),P.post=e=>({url:P.url(e),method:`post`});var F=e=>({url:F.url(e),method:`get`});F.definition={methods:[`get`,`head`],url:`/admin/actions/fields/table-data`},F.url=e=>F.definition.url+b(e),F.get=e=>({url:F.url(e),method:`get`}),F.head=e=>({url:F.url(e),method:`head`});var I=e=>({url:I.url(e),method:`get`});I.definition={methods:[`get`,`head`],url:`/admin/settings/fields`},I.url=e=>I.definition.url+b(e),I.get=e=>({url:I.url(e),method:`get`}),I.head=e=>({url:I.url(e),method:`head`});var L=e=>({url:L.url(e),method:`get`});L.definition={methods:[`get`,`head`],url:`/admin/settings/fields/new`},L.url=e=>L.definition.url+b(e),L.get=e=>({url:L.url(e),method:`get`}),L.head=e=>({url:L.url(e),method:`head`});var R=(e,t)=>({url:R.url(e,t),method:`delete`});R.definition={methods:[`delete`],url:`/admin/settings/fields/{fieldId}`},R.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={fieldId:e}),Array.isArray(e)&&(e={fieldId:e[0]}),e=x(e);let n={fieldId:e.fieldId};return R.definition.url.replace(`{fieldId}`,n.fieldId.toString()).replace(/\/+$/,``)+b(t)},R.delete=(e,t)=>({url:R.url(e,t),method:`delete`});var z=t({__name:`Fields`,props:{title:{},readOnly:{type:Boolean},data:{},sort:{},searchTerm:{},pagination:{},isMultiSite:{type:Boolean}},setup(t){let b=t;function x(t){confirm(e(`Are you sure you want to delete “{name}”?`,{name:t.title}))&&s.delete(R({fieldId:t.id}))}let D=l(b.searchTerm??``),O=p(),k=a(()=>({name:!0,searchable:!0,translatable:b.isMultiSite,handle:!0,type:!0,usages:!0,actions:!b.readOnly})),A=l([O.accessor(`title`,{header:e(`Name`),meta:{trackSize:`1.5fr`},cell:({row:e,getValue:t})=>c(y,{href:e.original.url,inertia:!1,class:`font-bold`},t)}),O.accessor(`searchable`,{header:e(`Searchable`),meta:{trackSize:`34px`,headerSrOnly:!0},enableSorting:!1,cell:({row:t})=>{if(t.original.searchable)return c(`craft-icon`,{appearance:`badge`,name:`magnifying-glass`,label:e(`This field’s values are used as search keywords.`)})}}),O.accessor(`translatable`,{header:e(`Translatable`),meta:{trackSize:`34px`,headerSrOnly:!0},enableSorting:!1,cell:({getValue:e})=>{if(e())return c(`craft-icon`,{appearance:`badge`,name:`custom-icons/language`,label:e()})}}),O.accessor(`handle`,{header:e(`Handle`),cell:({getValue:e})=>c(`craft-copy-attribute`,{value:e()},e)}),O.display({id:`type`,header:e(`Type`),cell:({row:t})=>t.original.type.isMissing?e(`Missing`):c(`div`,{class:`flex items-center gap-2`},[c(`craft-icon`,t.original.type.icon),c(`span`,t.original.type.label)])}),O.accessor(`usages`,{header:e(`Used by`)}),O.display({id:`actions`,meta:{trackSize:`60px`},cell:({row:e})=>c(`div`,{class:`self-end flex justify-end`},[c(S,{onClick:()=>x(e.original)})])})]),{paginationState:j,paginationConfig:M}=T({initialState:b.pagination,onChange:({query:e})=>{s.visit(I({query:e}),{only:[`data`,`pagination`],preserveScroll:!0})}}),{sortingState:N,sortingConfig:P}=E({initialState:b.sort,onChange:({query:e})=>{s.visit(I({query:e}),{only:[`data`,`sort`],preserveScroll:!0})}}),F=g({get data(){return b.data},get columns(){return A.value},state:{get pagination(){return j.value},get columnVisibility(){return k.value},get sorting(){return N.value}},getCoreRowModel:m(),...M,...P});return(a,s)=>(n(),f(C,{title:t.title},{actions:i(()=>[r(y,{inertia:!1,appearance:`button`,variant:`primary`,href:o(L)(),icon:`plus`},{default:i(()=>[d(u(o(e)(`New field`)),1)]),_:1},8,[`href`])]),default:i(()=>[r(v,{padding:0,appearance:`raised`},{default:i(()=>[r(_,{table:o(F),reorderable:!1,from:t.pagination.from,to:t.pagination.to,total:t.pagination.total,"enable-adjust-page-size":!0},{"empty-row":i(()=>[r(h,{icon:`light/pen-to-square`,label:o(e)(`No fields exist yet.`)},null,8,[`label`])]),"search-form":i(()=>[r(w,{modelValue:D.value,"onUpdate:modelValue":s[0]||=e=>D.value=e},null,8,[`modelValue`])]),_:1},8,[`table`,`from`,`to`,`total`])]),_:1})]),_:1},8,[`title`]))}});export{z as default};
\ No newline at end of file
diff --git a/resources/build/assets/Filesystems-CDXiu2q2.js b/resources/build/assets/Filesystems-CDXiu2q2.js
new file mode 100644
index 00000000000..85787fc452c
--- /dev/null
+++ b/resources/build/assets/Filesystems-CDXiu2q2.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{C as t,L as n,O as r,T as i,Y as a,at as o,dt as s,et as c,g as l,ut as u,v as d,w as f}from"./dist-LYoVBFtL.js";import{l as p,n as m,s as h,t as g}from"./AdminTable-3rUkyUV7.js";import{t as _}from"./Pane-_ECBrQIr.js";import{o as v}from"./InlineFlash-Cp9tUHHi.js";import{n as y,t as b}from"./wayfinder-K3R1_Wej.js";import{t as x}from"./DeleteButton-Diwghn7k.js";import{t as S}from"./createCraftColumnHelper-WT83RxkC.js";import{t as C}from"./AppLayout-DjmoYmre.js";var w=e=>({url:w.url(e),method:`get`});w.definition={methods:[`get`,`head`],url:`/admin/actions/fs/edit`},w.url=e=>w.definition.url+y(e),w.get=e=>({url:w.url(e),method:`get`}),w.head=e=>({url:w.url(e),method:`head`});var T=(e,t)=>({url:T.url(e,t),method:`get`});T.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems/{handle}`},T.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return T.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},T.get=(e,t)=>({url:T.url(e,t),method:`get`}),T.head=(e,t)=>({url:T.url(e,t),method:`head`});var E=(e,t)=>({url:E.url(e,t),method:`get`});E.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems/{handle}/edit`},E.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return E.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},E.get=(e,t)=>({url:E.url(e,t),method:`get`}),E.head=(e,t)=>({url:E.url(e,t),method:`head`});var D={"/admin/actions/fs/edit":w,"/admin/settings/filesystems/{handle}":T,"/admin/settings/filesystems/{handle}/edit":E},O=e=>({url:O.url(e),method:`post`});O.definition={methods:[`post`],url:`/admin/actions/fs/save`},O.url=e=>O.definition.url+y(e),O.post=e=>({url:O.url(e),method:`post`});var k=(e,t)=>({url:k.url(e,t),method:`post`});k.definition={methods:[`post`],url:`/admin/settings/filesystems/{handle}`},k.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return k.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},k.post=(e,t)=>({url:k.url(e,t),method:`post`});var A=e=>({url:A.url(e),method:`get`});A.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems`},A.url=e=>A.definition.url+y(e),A.get=e=>({url:A.url(e),method:`get`}),A.head=e=>({url:A.url(e),method:`head`});var j=e=>({url:j.url(e),method:`get`});j.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems/new`},j.url=e=>j.definition.url+y(e),j.get=e=>({url:j.url(e),method:`get`}),j.head=e=>({url:j.url(e),method:`head`});var M=(e,t)=>({url:M.url(e,t),method:`delete`});M.definition={methods:[`delete`],url:`/admin/settings/filesystems/{handle}`},M.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return M.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},M.delete=(e,t)=>({url:M.url(e,t),method:`delete`});var N=i({__name:`Filesystems`,props:{filesystems:{},readOnly:{type:Boolean}},setup(i){let y=i;function b(t){confirm(e(`Are you sure you want to delete “{name}”`,{name:t.name}))&&s.delete(M(t.handle))}let w=S(),T=l(()=>({name:!0,handle:!0,type:!0,actions:!y.readOnly})),E=o([w.link(`name`,{header:e(`Name`),props:({row:e})=>({href:D[`/admin/settings/filesystems/{handle}/edit`]({handle:e.original.handle}).url,inertia:!1})}),w.handle(`handle`),w.accessor(`type`,{header:e(`Type`),cell:({row:e,getValue:t})=>e.original.missing?r(`span`,{class:`c-color-error`},t()):t()}),w.actions(({row:e})=>[r(x,{onClick:()=>b(e.original)})])]),O=h({get data(){return y.filesystems},get columns(){return E.value},state:{get columnVisibility(){return T.value}},enableSorting:!1,getCoreRowModel:p()});return(r,i)=>(n(),d(C,null,{actions:a(()=>[f(v,{variant:`primary`,appearance:`button`,href:u(j)().url,inertia:!1},{default:a(()=>[t(c(u(e)(`New filesystem`)),1)]),_:1},8,[`href`])]),default:a(()=>[f(_,{padding:0,appearance:`raised`},{default:a(()=>[f(g,{table:u(O),reorderable:!1},{"empty-row":a(()=>[f(m,{label:u(e)(`No filesystems exist yet.`),icon:`light/folder-open`},{default:a(()=>[f(v,{appearance:`button`,href:u(j)().url,inertia:!1},{default:a(()=>[t(c(u(e)(`New filesystem`)),1)]),_:1},8,[`href`])]),_:1},8,[`label`])]),_:1},8,[`table`])]),_:1})]),_:1}))}});export{N as default};
\ No newline at end of file
diff --git a/resources/build/assets/Filesystems-D1Z5CWFD.js b/resources/build/assets/Filesystems-D1Z5CWFD.js
deleted file mode 100644
index 2f324ec311e..00000000000
--- a/resources/build/assets/Filesystems-D1Z5CWFD.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{E as t,R as n,T as r,X as i,_ as a,dt as o,ft as s,k as c,ot as l,tt as u,w as d,y as f}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{l as p,n as m,s as h,t as g}from"./AdminTable-fmWBDoLo.js";import{t as _}from"./Pane-CukoaDZn.js";import{s as v}from"./InlineFlash-CASXlxQJ.js";import{n as y,t as b}from"./wayfinder-BO4LFEOp.js";import{t as x}from"./DeleteButton-B6fT-tEn.js";import{t as S}from"./createCraftColumnHelper-DmeFY1c4.js";import{t as C}from"./AppLayout-CMfRP4dO.js";var w=e=>({url:w.url(e),method:`get`});w.definition={methods:[`get`,`head`],url:`/admin/actions/fs/edit`},w.url=e=>w.definition.url+y(e),w.get=e=>({url:w.url(e),method:`get`}),w.head=e=>({url:w.url(e),method:`head`});var T=(e,t)=>({url:T.url(e,t),method:`get`});T.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems/{handle}`},T.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return T.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},T.get=(e,t)=>({url:T.url(e,t),method:`get`}),T.head=(e,t)=>({url:T.url(e,t),method:`head`});var E=(e,t)=>({url:E.url(e,t),method:`get`});E.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems/{handle}/edit`},E.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return E.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},E.get=(e,t)=>({url:E.url(e,t),method:`get`}),E.head=(e,t)=>({url:E.url(e,t),method:`head`});var D={"/admin/actions/fs/edit":w,"/admin/settings/filesystems/{handle}":T,"/admin/settings/filesystems/{handle}/edit":E},O=e=>({url:O.url(e),method:`post`});O.definition={methods:[`post`],url:`/admin/actions/fs/save`},O.url=e=>O.definition.url+y(e),O.post=e=>({url:O.url(e),method:`post`});var k=(e,t)=>({url:k.url(e,t),method:`post`});k.definition={methods:[`post`],url:`/admin/settings/filesystems/{handle}`},k.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return k.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},k.post=(e,t)=>({url:k.url(e,t),method:`post`});var A=e=>({url:A.url(e),method:`get`});A.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems`},A.url=e=>A.definition.url+y(e),A.get=e=>({url:A.url(e),method:`get`}),A.head=e=>({url:A.url(e),method:`head`});var j=e=>({url:j.url(e),method:`get`});j.definition={methods:[`get`,`head`],url:`/admin/settings/filesystems/new`},j.url=e=>j.definition.url+y(e),j.get=e=>({url:j.url(e),method:`get`}),j.head=e=>({url:j.url(e),method:`head`});var M=(e,t)=>({url:M.url(e,t),method:`delete`});M.definition={methods:[`delete`],url:`/admin/settings/filesystems/{handle}`},M.url=(e,t)=>{(typeof e==`string`||typeof e==`number`)&&(e={handle:e}),Array.isArray(e)&&(e={handle:e[0]}),e=b(e);let n={handle:e.handle};return M.definition.url.replace(`{handle}`,n.handle.toString()).replace(/\/+$/,``)+y(t)},M.delete=(e,t)=>({url:M.url(e,t),method:`delete`});var N=t({__name:`Filesystems`,props:{filesystems:{},readOnly:{type:Boolean}},setup(t){let y=t;function b(t){confirm(e(`Are you sure you want to delete “{name}”`,{name:t.name}))&&s.delete(M(t.handle))}let w=S(),T=a(()=>({name:!0,handle:!0,type:!0,actions:!y.readOnly})),E=l([w.link(`name`,{header:e(`Name`),props:({row:e})=>({href:D[`/admin/settings/filesystems/{handle}/edit`]({handle:e.original.handle}).url,inertia:!1})}),w.handle(`handle`),w.accessor(`type`,{header:e(`Type`),cell:({row:e,getValue:t})=>e.original.missing?c(`span`,{class:`c-color-error`},t()):t()}),w.actions(({row:e})=>[c(x,{onClick:()=>b(e.original)})])]),O=h({get data(){return y.filesystems},get columns(){return E.value},state:{get columnVisibility(){return T.value}},enableSorting:!1,getCoreRowModel:p()});return(t,a)=>(n(),f(C,null,{actions:i(()=>[r(v,{variant:`primary`,appearance:`button`,href:o(j)().url,inertia:!1},{default:i(()=>[d(u(o(e)(`New filesystem`)),1)]),_:1},8,[`href`])]),default:i(()=>[r(_,{padding:0,appearance:`raised`},{default:i(()=>[r(g,{table:o(O),reorderable:!1},{"empty-row":i(()=>[r(m,{label:o(e)(`No filesystems exist yet.`),icon:`light/folder-open`},{default:i(()=>[r(v,{appearance:`button`,href:o(j)().url,inertia:!1},{default:i(()=>[d(u(o(e)(`New filesystem`)),1)]),_:1},8,[`href`])]),_:1},8,[`label`])]),_:1},8,[`table`])]),_:1})]),_:1}))}});export{N as default};
\ No newline at end of file
diff --git a/resources/build/assets/General-BICvMtYY.js b/resources/build/assets/General-BICvMtYY.js
deleted file mode 100644
index 0b1a16a1e3e..00000000000
--- a/resources/build/assets/General-BICvMtYY.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{E as t,R as n,T as r,X as i,_ as a,dt as o,s,t as c,tt as l,v as u,w as d,y as f}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{t as p}from"./Pane-CukoaDZn.js";import{i as m,n as h}from"./wayfinder-BO4LFEOp.js";import{t as g}from"./CraftInput-OjhrLWw-.js";import{t as _}from"./AppLayout-CMfRP4dO.js";import{t as v}from"./CraftCombobox-B64mFprO.js";import{t as y}from"./useSettingsSave-Ddp2zTwK.js";import{t as b}from"./transformBooleanOptions-CGCIZkUn.js";var x=e=>({url:x.url(e),method:`get`});x.definition={methods:[`get`,`head`],url:`/admin/settings/general`},x.url=e=>x.definition.url+h(e),x.get=e=>({url:x.url(e),method:`get`}),x.head=e=>({url:x.url(e),method:`head`});var S=e=>({url:S.url(e),method:`post`});S.definition={methods:[`post`],url:`/admin/settings/general`},S.url=e=>S.definition.url+h(e),S.post=e=>({url:S.url(e),method:`post`});var C={class:`grid gap-3`},w={variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},T={href:`https://craftcms.com/docs/5.x/configure.html#control-panel-settings`},E=[`innerHTML`],D=[`innerHTML`],O=c(t({__name:`General`,props:{system:{},nameSuggestions:{default:()=>[]},timezoneOptions:{default:()=>[]},systemStatusOptions:{default:()=>[]},flash:{},errors:{}},setup(t){let c=t,h=a(()=>c.errors),{readOnly:x}=m(),O=s({name:c.system.name??``,live:c.system.live,retryDuration:c.system.retryDuration,timeZone:c.system.timeZone}),{save:k}=y(O,S),A=a(()=>b(c.systemStatusOptions,{trueLabel:e(`Online`),falseLabel:e(`Offline`)})),j=a(()=>[{value:`1`,label:e(`Online`),data:{indicator:{variant:`success`}}},{value:`0`,label:e(`Offline`),data:{indicator:{variant:`empty`}}},...A.value]);return(a,s)=>(n(),f(_,{title:o(e)(`General Settings`),form:o(O),onSave:o(k)},{default:i(()=>[r(p,{appearance:`raised`},{default:i(()=>[u(`div`,C,[r(v,{label:o(e)(`System Name`),id:`name`,name:`name`,modelValue:o(O).name,"onUpdate:modelValue":s[0]||=e=>o(O).name=e,"has-feedback-for":h.value?.name?`error`:``,disabled:o(x),"require-option-match":!1,"show-all-on-empty":``,options:t.nameSuggestions,error:h.value?.name},{after:i(()=>[u(`craft-callout`,w,[d(l(o(e)(`This can begin with an environment variable.`))+` `,1),u(`a`,T,l(o(e)(`Learn more`)),1)])]),_:1},8,[`label`,`modelValue`,`has-feedback-for`,`disabled`,`options`,`error`]),r(v,{label:o(e)(`System Status`),id:`live`,name:`live`,modelValue:o(O).live,"onUpdate:modelValue":s[1]||=e=>o(O).live=e,error:h.value?.live,disabled:o(x),"show-all-on-empty":``,options:j.value},{after:i(()=>[u(`craft-callout`,{variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`,innerHTML:o(e)(`This can be set to an environment variable with a boolean value ({examples})`,{examples:`yes/no/true/false/on/off/0/1`})},null,8,E)]),_:1},8,[`label`,`modelValue`,`error`,`disabled`,`options`]),r(g,{label:o(e)(`Retry Duration`),id:`retry-duration`,name:`retryDuration`,modelValue:o(O).retryDuration,"onUpdate:modelValue":s[2]||=e=>o(O).retryDuration=e,error:h.value?.retryDuration,inputmode:`numeric`,maxlength:`4`,disabled:o(x)},{default:i(()=>[u(`div`,{slot:`help-text`,innerHTML:o(e)(`The number of seconds that the Retry-After HTTP header should be set to for 503 responses when the system is offline.`)},null,8,D)]),_:1},8,[`label`,`modelValue`,`error`,`disabled`]),r(v,{label:o(e)(`Time Zone`),id:`time-zone`,name:`timeZone`,modelValue:o(O).timeZone,"onUpdate:modelValue":s[3]||=e=>o(O).timeZone=e,error:h.value?.timeZone,disabled:o(x),"show-all-on-empty":``,options:t.timezoneOptions},{item:i(({item:e})=>[d(l(e.label)+l(e.data?.hint?` — ${e.data.hint}`:``),1)]),after:i(()=>[...s[4]||=[u(`craft-callout`,{variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},[d(` This can be set to an environment variable with a value of a `),u(`a`,{href:`https://www.php.net/manual/en/timezones.php`,rel:`noopener`,target:`_blank`},`supported time zone`),d(`. `)],-1)]]),_:1},8,[`label`,`modelValue`,`error`,`disabled`,`options`])])]),_:1})]),_:1},8,[`title`,`form`,`onSave`]))}}),[[`__scopeId`,`data-v-743087f9`]]);export{O as default};
\ No newline at end of file
diff --git a/resources/build/assets/General-BqjoWfiz.js b/resources/build/assets/General-BqjoWfiz.js
new file mode 100644
index 00000000000..7feccb1c400
--- /dev/null
+++ b/resources/build/assets/General-BqjoWfiz.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{C as t,L as n,T as r,Y as i,_ as a,et as o,g as s,o as c,ut as l,v as u,w as d}from"./dist-LYoVBFtL.js";import{t as f}from"./_plugin-vue_export-helper-QKFMMAHA.js";import{t as p}from"./Pane-_ECBrQIr.js";import{t as m}from"./useCraftData-DQ9Mg_KR.js";import{n as h}from"./wayfinder-K3R1_Wej.js";import{t as g}from"./CraftInput-CGOATOXU.js";import{t as _}from"./AppLayout-DjmoYmre.js";import{t as v}from"./CraftCombobox-BkCjs3xZ.js";import{t as y}from"./useSettingsSave-Bi4IyL5Y.js";import{t as b}from"./transformBooleanOptions-Dx4stn2M.js";var x=e=>({url:x.url(e),method:`get`});x.definition={methods:[`get`,`head`],url:`/admin/settings/general`},x.url=e=>x.definition.url+h(e),x.get=e=>({url:x.url(e),method:`get`}),x.head=e=>({url:x.url(e),method:`head`});var S=e=>({url:S.url(e),method:`post`});S.definition={methods:[`post`],url:`/admin/settings/general`},S.url=e=>S.definition.url+h(e),S.post=e=>({url:S.url(e),method:`post`});var C={class:`grid gap-3`},w={variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},T={href:`https://craftcms.com/docs/5.x/configure.html#control-panel-settings`},E=[`innerHTML`],D=[`innerHTML`],O=f(r({__name:`General`,props:{system:{},nameSuggestions:{default:()=>[]},timezoneOptions:{default:()=>[]},systemStatusOptions:{default:()=>[]},flash:{},errors:{}},setup(r){let f=r,h=s(()=>f.errors),{readOnly:x}=m(),O=c({name:f.system.name??``,live:f.system.live,retryDuration:f.system.retryDuration,timeZone:f.system.timeZone}),{save:k}=y(O,S),A=s(()=>b(f.systemStatusOptions,{trueLabel:e(`Online`),falseLabel:e(`Offline`)})),j=s(()=>[{value:`1`,label:e(`Online`),data:{indicator:{variant:`success`}}},{value:`0`,label:e(`Offline`),data:{indicator:{variant:`empty`}}},...A.value]);return(s,c)=>(n(),u(_,{title:l(e)(`General Settings`),form:l(O),onSave:l(k)},{default:i(()=>[d(p,{appearance:`raised`},{default:i(()=>[a(`div`,C,[d(v,{label:l(e)(`System Name`),id:`name`,name:`name`,modelValue:l(O).name,"onUpdate:modelValue":c[0]||=e=>l(O).name=e,"has-feedback-for":h.value?.name?`error`:``,disabled:l(x),"require-option-match":!1,"show-all-on-empty":``,options:r.nameSuggestions,error:h.value?.name},{after:i(()=>[a(`craft-callout`,w,[t(o(l(e)(`This can begin with an environment variable.`))+` `,1),a(`a`,T,o(l(e)(`Learn more`)),1)])]),_:1},8,[`label`,`modelValue`,`has-feedback-for`,`disabled`,`options`,`error`]),d(v,{label:l(e)(`System Status`),id:`live`,name:`live`,modelValue:l(O).live,"onUpdate:modelValue":c[1]||=e=>l(O).live=e,error:h.value?.live,disabled:l(x),"show-all-on-empty":``,options:j.value},{after:i(()=>[a(`craft-callout`,{variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`,innerHTML:l(e)(`This can be set to an environment variable with a boolean value ({examples})`,{examples:`yes/no/true/false/on/off/0/1`})},null,8,E)]),_:1},8,[`label`,`modelValue`,`error`,`disabled`,`options`]),d(g,{label:l(e)(`Retry Duration`),id:`retry-duration`,name:`retryDuration`,modelValue:l(O).retryDuration,"onUpdate:modelValue":c[2]||=e=>l(O).retryDuration=e,error:h.value?.retryDuration,inputmode:`numeric`,maxlength:`4`,disabled:l(x)},{default:i(()=>[a(`div`,{slot:`help-text`,innerHTML:l(e)(`The number of seconds that the Retry-After HTTP header should be set to for 503 responses when the system is offline.`)},null,8,D)]),_:1},8,[`label`,`modelValue`,`error`,`disabled`]),d(v,{label:l(e)(`Time Zone`),id:`time-zone`,name:`timeZone`,modelValue:l(O).timeZone,"onUpdate:modelValue":c[3]||=e=>l(O).timeZone=e,error:h.value?.timeZone,disabled:l(x),"show-all-on-empty":``,options:r.timezoneOptions},{item:i(({item:e})=>[t(o(e.label)+o(e.data?.hint?` — ${e.data.hint}`:``),1)]),after:i(()=>[...c[4]||=[a(`craft-callout`,{variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},[t(` This can be set to an environment variable with a value of a `),a(`a`,{href:`https://www.php.net/manual/en/timezones.php`,rel:`noopener`,target:`_blank`},`supported time zone`),t(`. `)],-1)]]),_:1},8,[`label`,`modelValue`,`error`,`disabled`,`options`])])]),_:1})]),_:1},8,[`title`,`form`,`onSave`]))}}),[[`__scopeId`,`data-v-743087f9`]]);export{O as default};
\ No newline at end of file
diff --git a/resources/build/assets/ImageTransforms-C1IhlCYp.js b/resources/build/assets/ImageTransforms-C1IhlCYp.js
new file mode 100644
index 00000000000..0e70bd235eb
--- /dev/null
+++ b/resources/build/assets/ImageTransforms-C1IhlCYp.js
@@ -0,0 +1 @@
+import{r as e}from"./cp-DBw9TANf.js";import{l as t}from"./nav-item-CDlDuMpT-DENemU4x.js";import{C as n,L as r,O as i,T as a,Y as o,_ as s,at as c,b as l,dt as u,et as d,g as f,p,ut as m,v as h,w as g,z as _}from"./dist-LYoVBFtL.js";import{l as v,n as y,s as b,t as x}from"./AdminTable-3rUkyUV7.js";import{o as S}from"./InlineFlash-Cp9tUHHi.js";import{t as C}from"./DeleteButton-Diwghn7k.js";import{t as w}from"./createCraftColumnHelper-WT83RxkC.js";import{t as T}from"./IndexLayout-CTK-6Z_C.js";import{c as E,i as D,o as O,s as k}from"./VolumesController-BFLK-4gE.js";var A=a({__name:`ImageTransforms`,props:{transforms:{}},setup(a){function A(e){confirm(t(`Are you sure you want to delete the “{name}” transform?`,{name:e.name}))&&u.delete(k(e.id))}let j=a,M=c({name:!0,handle:!0}),N=w(),P=c([N.link(`name`,{header:t(`Name`)}),N.handle(`handle`),N.accessor(`mode`,{header:t(`Mode`)}),N.display({id:`dimensions`,header:t(`Dimensions`),cell:({row:e})=>`${e.original.width??`Auto`} x ${e.original.height??`Auto`}`}),N.accessor(`interlace`,{header:t(`Interlace`),cell:({row:t})=>t.original.interlace?e(t.original.interlace):`None`}),N.accessor(`format`,{header:t(`Format`),cell:({row:t})=>t.original.format?e(t.original.format):`Auto`}),N.actions(({row:e})=>[i(C,{onClick:()=>A(e.original)})])]),F=b({get data(){return j.transforms},get columns(){return P.value},enableSorting:!1,getCoreRowModel:v(),state:{get columnVisibility(){return M.value}}}),I=f(()=>({volumes:{label:t(`Volumes`),url:D().url},transforms:{label:t(`Image Transforms`),url:E().url,active:!0}}));return(e,i)=>(r(),h(T,null,{actions:o(()=>[g(S,{appearance:`button`,inertia:!1,href:m(O)().url,variant:`primary`,icon:`plus`},{default:o(()=>[n(d(m(t)(`New image transform`)),1)]),_:1},8,[`href`])]),"interior-nav":o(()=>[s(`craft-nav-list`,null,[(r(!0),l(p,null,_(I.value,(e,t)=>(r(),h(S,{key:t,as:`craft-nav-item`,active:e.active??!1,href:e.url,block:``,flush:``,inertia:e.inertia??!0},{default:o(()=>[n(d(e.label),1)]),_:2},1032,[`active`,`href`,`inertia`]))),128))])]),default:o(()=>[g(x,{table:m(F)},{"empty-row":o(()=>[g(y,{label:m(t)(`No image transforms exist yet.`),icon:`image`},{default:o(()=>[g(S,{appearance:`button`,inertia:!1,href:m(O)().url,variant:`default`,icon:`plus`},{default:o(()=>[n(d(m(t)(`New image transform`)),1)]),_:1},8,[`href`])]),_:1},8,[`label`])]),_:1},8,[`table`])]),_:1}))}});export{A as default};
\ No newline at end of file
diff --git a/resources/build/assets/ImageTransforms-Cx-vC0NT.js b/resources/build/assets/ImageTransforms-Cx-vC0NT.js
deleted file mode 100644
index 5ab966fac9d..00000000000
--- a/resources/build/assets/ImageTransforms-Cx-vC0NT.js
+++ /dev/null
@@ -1 +0,0 @@
-import{r as e}from"./cp-DdGjhisW.js";import{l as t}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{B as n,E as r,R as i,T as a,X as o,_ as s,dt as c,ft as l,k as u,m as d,ot as f,tt as p,v as m,w as h,x as g,y as _}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{l as v,n as y,s as b,t as x}from"./AdminTable-fmWBDoLo.js";import{s as S}from"./InlineFlash-CASXlxQJ.js";import{t as C}from"./DeleteButton-B6fT-tEn.js";import{t as w}from"./createCraftColumnHelper-DmeFY1c4.js";import{t as T}from"./IndexLayout-pvGJ0smu.js";import{c as E,i as D,o as O,s as k}from"./VolumesController-RT9K4v-C.js";var A=r({__name:`ImageTransforms`,props:{transforms:{}},setup(r){function A(e){confirm(t(`Are you sure you want to delete the “{name}” transform?`,{name:e.name}))&&l.delete(k(e.id))}let j=r,M=f({name:!0,handle:!0}),N=w(),P=f([N.link(`name`,{header:t(`Name`)}),N.handle(`handle`),N.accessor(`mode`,{header:t(`Mode`)}),N.display({id:`dimensions`,header:t(`Dimensions`),cell:({row:e})=>`${e.original.width??`Auto`} x ${e.original.height??`Auto`}`}),N.accessor(`interlace`,{header:t(`Interlace`),cell:({row:t})=>t.original.interlace?e(t.original.interlace):`None`}),N.accessor(`format`,{header:t(`Format`),cell:({row:t})=>t.original.format?e(t.original.format):`Auto`}),N.actions(({row:e})=>[u(C,{onClick:()=>A(e.original)})])]),F=b({get data(){return j.transforms},get columns(){return P.value},enableSorting:!1,getCoreRowModel:v(),state:{get columnVisibility(){return M.value}}}),I=s(()=>({volumes:{label:t(`Volumes`),url:D().url},transforms:{label:t(`Image Transforms`),url:E().url,active:!0}}));return(e,r)=>(i(),_(T,null,{actions:o(()=>[a(S,{appearance:`button`,inertia:!1,href:c(O)().url,variant:`primary`,icon:`plus`},{default:o(()=>[h(p(c(t)(`New image transform`)),1)]),_:1},8,[`href`])]),"interior-nav":o(()=>[m(`craft-nav-list`,null,[(i(!0),g(d,null,n(I.value,(e,t)=>(i(),_(S,{key:t,as:`craft-nav-item`,active:e.active??!1,href:e.url,block:``,flush:``,inertia:e.inertia??!0},{default:o(()=>[h(p(e.label),1)]),_:2},1032,[`active`,`href`,`inertia`]))),128))])]),default:o(()=>[a(x,{table:c(F)},{"empty-row":o(()=>[a(y,{label:c(t)(`No image transforms exist yet.`),icon:`image`},{default:o(()=>[a(S,{appearance:`button`,inertia:!1,href:c(O)().url,variant:`default`,icon:`plus`},{default:o(()=>[h(p(c(t)(`New image transform`)),1)]),_:1},8,[`href`])]),_:1},8,[`label`])]),_:1},8,[`table`])]),_:1}))}});export{A as default};
\ No newline at end of file
diff --git a/resources/build/assets/Index-BIInLoJb.js b/resources/build/assets/Index-BIInLoJb.js
deleted file mode 100644
index 6889a412860..00000000000
--- a/resources/build/assets/Index-BIInLoJb.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{B as t,E as n,R as r,T as i,X as a,b as o,dt as s,m as c,t as l,tt as u,v as d,w as f,x as p,y as m}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{s as h}from"./InlineFlash-CASXlxQJ.js";import{n as g}from"./wayfinder-BO4LFEOp.js";import{n as _,t as v}from"./AppLayout-CMfRP4dO.js";var y=e=>({url:y.url(e),method:`get`});y.definition={methods:[`get`,`head`],url:`/admin/settings`},y.url=e=>y.definition.url+g(e),y.get=e=>({url:y.url(e),method:`get`}),y.head=e=>({url:y.url(e),method:`head`});var b={class:`py-3`},x={class:`grid gap-6`},S=[`id`],C=[`aria-labelledby`],w={class:`settings-grid`},T={class:`settings-content`},E={class:`settings-icon`},D=[`name`],O=[`innerHTML`],k={class:`sr-only`},A=l(n({__name:`Index`,props:{readOnly:{type:Boolean},settings:{}},setup(n){return(l,g)=>(r(),m(v,{title:s(e)(`Settings`)},{default:a(()=>[d(`div`,b,[n.readOnly?(r(),m(_,{key:0})):o(``,!0),d(`div`,x,[(r(!0),p(c,null,t(n.settings,(n,l,m)=>(r(),p(`div`,{key:l},[d(`h2`,{id:`category-heading-${m}`,class:`mb-2 text-lg leading-tight`},u(l),9,S),d(`nav`,{"aria-labelledby":`category-heading-${m}`},[d(`ul`,w,[(r(!0),p(c,null,t(n,(t,n)=>(r(),p(`li`,{key:n},[i(h,{href:t.url||`${s(y)().url}/${n}`,class:`settings-item`},{default:a(()=>[d(`div`,T,[d(`div`,E,[t.iconName?(r(),p(`craft-icon`,{key:0,name:t.iconName,style:{"font-size":`calc(40rem / 16)`}},null,8,D)):t.icon?(r(),p(`div`,{key:1,innerHTML:t.icon,class:`w-[40px] h-[40px] inline-block align-self-center`},null,8,O)):o(``,!0)]),f(` `+u(t.label),1),d(`span`,k,` - `+u(s(e)(`Settings`)),1)])]),_:2},1032,[`href`])]))),128))])],8,C)]))),128))])])]),_:1},8,[`title`]))}}),[[`__scopeId`,`data-v-b00fbfa2`]]);export{A as default};
\ No newline at end of file
diff --git a/resources/build/assets/Index-CoQkToLa.js b/resources/build/assets/Index-CoQkToLa.js
deleted file mode 100644
index b8674462cb3..00000000000
--- a/resources/build/assets/Index-CoQkToLa.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import{m as e}from"./cp-DdGjhisW.js";import{l as t}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{B as n,E as r,I as i,J as a,R as o,T as s,_ as c,a as l,b as u,dt as d,m as f,ot as p,t as m,tt as h,v as g,x as _}from"./_plugin-vue_export-helper-B5xWb4v9.js";function v(n,r){let i=p({...r}),a=p(!1),o=c(()=>!!i.value.error),s=c(()=>!!i.value.finished);async function l(t){a.value=!0;let r;try{r=await e.post(`/admin/actions/${n}/${t}`,{data:i.value.data},{headers:{"Content-Type":`application/json`,Accept:`application/json`}})}catch(e){f(e)}finally{a.value=!1}r&&u(r.data)}function u(e){e.data&&(i.value.data=e.data),i.value={...i.value,status:e.status,error:e.error,errorDetails:e.errorDetails,options:e.options,finished:e.finished,returnUrl:e.returnUrl??i.value.returnUrl,nextAction:e.nextAction},e.nextAction&&l(e.nextAction)}function d(e){e.nextAction&&(i.value.error=void 0,i.value.errorDetails=void 0,i.value.options=void 0,e.status&&(i.value.status=e.status),e.data&&(i.value.data=e.data),l(e.nextAction))}function f(r){let a=r.response?.data?.message||r.message||`Unknown error`,o=r.response?.statusText||`Error`;i.value.error=t(`A fatal error has occurred:`),i.value.errorDetails=`${t(`Status:`)} ${o}\n\n${t(`Response:`)} ${a}`,i.value.options=[{label:t(`Troubleshoot`),url:`https://craftcms.com/knowledge-base/failed-updates`},{label:t(`Send for help`),email:`support@craftcms.com`}],e.post(`/admin/actions/${n}/finish`,{data:i.value.data},{headers:{"Content-Type":`application/json`,Accept:`application/json`}}).catch(()=>{})}function m(e){let t=encodeURIComponent(e.subject||`Craft update failure`),n=`Describe what happened here.`;return i.value.errorDetails&&(n+=`
-
------------------------------------------------------------
-
-`+i.value.errorDetails),`mailto:${e.email}?subject=${t}&body=${encodeURIComponent(n)}`}return{state:i,isLoading:a,hasError:o,isFinished:s,executeAction:l,handleOptionClick:d,getEmailLink:m}}var y={class:`updater`},b={class:`updater-graphic`},x={key:0,visible:!0,class:`spinner`},S={key:1,name:`circle-check`,class:`icon-success`},C={key:2,name:`alert-circle`,class:`icon-error`},w={class:`updater-status`},T=[`innerHTML`],E={key:0,class:`error-details`,tabindex:`0`},D=[`innerHTML`],O=[`innerHTML`],k={key:0,class:`updater-options`},A=[`href`,`target`],j=[`onClick`,`variant`],M=m(r({__name:`Index`,props:{title:{},initialState:{},actionPrefix:{},returnUrl:{}},setup(e){let t=e,{state:r,isLoading:c,hasError:p,isFinished:m,executeAction:M,handleOptionClick:N,getEmailLink:P}=v(t.actionPrefix,t.initialState);function F(e){return e.replace(/\n{2,}/g,`
`).replace(/\n/g,` `).replace(/`(.*?)`/g,`$1`)}function I(){setTimeout(()=>{window.location.href=r.value.returnUrl||t.returnUrl||`/admin/dashboard`},750)}function L(e){return!!(e.url||e.email)}function R(e){return e.url?e.url:e.email?P(e):`#`}return i(()=>{t.initialState.nextAction&&M(t.initialState.nextAction)}),a(m,e=>{e&&I()}),(t,i)=>(o(),_(f,null,[s(d(l),{title:e.title},null,8,[`title`]),g(`div`,y,[g(`div`,b,[d(c)&&!d(p)?(o(),_(`craft-spinner`,x)):d(m)?(o(),_(`craft-icon`,S)):d(p)?(o(),_(`craft-icon`,C)):u(``,!0)]),g(`div`,w,[d(r).error?(o(),_(f,{key:0},[g(`p`,{class:`error-message`,innerHTML:F(d(r).error)},null,8,T),d(r).errorDetails?(o(),_(`div`,E,[g(`p`,{innerHTML:F(d(r).errorDetails)},null,8,D)])):u(``,!0)],64)):d(r).status?(o(),_(`p`,{key:1,innerHTML:F(d(r).status)},null,8,O)):u(``,!0)]),d(r).options&&!d(c)?(o(),_(`div`,k,[(o(!0),_(f,null,n(d(r).options,e=>(o(),_(f,{key:e.label},[L(e)?(o(),_(`a`,{key:0,href:R(e),target:e.url?`_blank`:void 0,class:`btn big`},h(e.label),9,A)):(o(),_(`craft-button`,{key:1,type:`button`,onClick:t=>d(N)(e),variant:e.submit?`primary`:`default`,size:`lg`},h(e.label),9,j))],64))),128))])):u(``,!0)])],64))}}),[[`__scopeId`,`data-v-9d349217`]]);export{M as default};
\ No newline at end of file
diff --git a/resources/build/assets/Index-DTW7y2oC.js b/resources/build/assets/Index-DTW7y2oC.js
new file mode 100644
index 00000000000..cdf1539c4c4
--- /dev/null
+++ b/resources/build/assets/Index-DTW7y2oC.js
@@ -0,0 +1,5 @@
+import{p as e}from"./cp-DBw9TANf.js";import{l as t}from"./nav-item-CDlDuMpT-DENemU4x.js";import{F as n,L as r,T as i,_ as a,at as o,b as s,et as c,g as l,i as u,p as d,q as f,ut as p,w as m,y as h,z as g}from"./dist-LYoVBFtL.js";import{t as _}from"./_plugin-vue_export-helper-QKFMMAHA.js";function v(n,r){let i=o({...r}),a=o(!1),s=l(()=>!!i.value.error),c=l(()=>!!i.value.finished);async function u(t){a.value=!0;let r;try{r=await e.post(`/admin/actions/${n}/${t}`,{data:i.value.data},{headers:{"Content-Type":`application/json`,Accept:`application/json`}})}catch(e){p(e)}finally{a.value=!1}r&&d(r.data)}function d(e){e.data&&(i.value.data=e.data),i.value={...i.value,status:e.status,error:e.error,errorDetails:e.errorDetails,options:e.options,finished:e.finished,returnUrl:e.returnUrl??i.value.returnUrl,nextAction:e.nextAction},e.nextAction&&u(e.nextAction)}function f(e){e.nextAction&&(i.value.error=void 0,i.value.errorDetails=void 0,i.value.options=void 0,e.status&&(i.value.status=e.status),e.data&&(i.value.data=e.data),u(e.nextAction))}function p(r){let a=r.response?.data?.message||r.message||`Unknown error`,o=r.response?.statusText||`Error`;i.value.error=t(`A fatal error has occurred:`),i.value.errorDetails=`${t(`Status:`)} ${o}\n\n${t(`Response:`)} ${a}`,i.value.options=[{label:t(`Troubleshoot`),url:`https://craftcms.com/knowledge-base/failed-updates`},{label:t(`Send for help`),email:`support@craftcms.com`}],e.post(`/admin/actions/${n}/finish`,{data:i.value.data},{headers:{"Content-Type":`application/json`,Accept:`application/json`}}).catch(()=>{})}function m(e){let t=encodeURIComponent(e.subject||`Craft update failure`),n=`Describe what happened here.`;return i.value.errorDetails&&(n+=`
+
+-----------------------------------------------------------
+
+`+i.value.errorDetails),`mailto:${e.email}?subject=${t}&body=${encodeURIComponent(n)}`}return{state:i,isLoading:a,hasError:s,isFinished:c,executeAction:u,handleOptionClick:f,getEmailLink:m}}var y={class:`updater`},b={class:`updater-graphic`},x={key:0,visible:!0,class:`spinner`},S={key:1,name:`circle-check`,class:`icon-success`},C={key:2,name:`alert-circle`,class:`icon-error`},w={class:`updater-status`},T=[`innerHTML`],E={key:0,class:`error-details`,tabindex:`0`},D=[`innerHTML`],O=[`innerHTML`],k={key:0,class:`updater-options`},A=[`href`,`target`],j=[`onClick`,`variant`],M=_(i({__name:`Index`,props:{title:{},initialState:{},actionPrefix:{},returnUrl:{}},setup(e){let t=e,{state:i,isLoading:o,hasError:l,isFinished:_,executeAction:M,handleOptionClick:N,getEmailLink:P}=v(t.actionPrefix,t.initialState);function F(e){return e.replace(/\n{2,}/g,`
`).replace(/\n/g,` `).replace(/`(.*?)`/g,`$1`)}function I(){setTimeout(()=>{window.location.href=i.value.returnUrl||t.returnUrl||`/admin/dashboard`},750)}function L(e){return!!(e.url||e.email)}function R(e){return e.url?e.url:e.email?P(e):`#`}return n(()=>{t.initialState.nextAction&&M(t.initialState.nextAction)}),f(_,e=>{e&&I()}),(t,n)=>(r(),s(d,null,[m(p(u),{title:e.title},null,8,[`title`]),a(`div`,y,[a(`div`,b,[p(o)&&!p(l)?(r(),s(`craft-spinner`,x)):p(_)?(r(),s(`craft-icon`,S)):p(l)?(r(),s(`craft-icon`,C)):h(``,!0)]),a(`div`,w,[p(i).error?(r(),s(d,{key:0},[a(`p`,{class:`error-message`,innerHTML:F(p(i).error)},null,8,T),p(i).errorDetails?(r(),s(`div`,E,[a(`p`,{innerHTML:F(p(i).errorDetails)},null,8,D)])):h(``,!0)],64)):p(i).status?(r(),s(`p`,{key:1,innerHTML:F(p(i).status)},null,8,O)):h(``,!0)]),p(i).options&&!p(o)?(r(),s(`div`,k,[(r(!0),s(d,null,g(p(i).options,e=>(r(),s(d,{key:e.label},[L(e)?(r(),s(`a`,{key:0,href:R(e),target:e.url?`_blank`:void 0,class:`btn big`},c(e.label),9,A)):(r(),s(`craft-button`,{key:1,type:`button`,onClick:t=>p(N)(e),variant:e.submit?`primary`:`default`,size:`lg`},c(e.label),9,j))],64))),128))])):h(``,!0)])],64))}}),[[`__scopeId`,`data-v-9d349217`]]);export{M as default};
\ No newline at end of file
diff --git a/resources/build/assets/Index-qOGfSOZH.js b/resources/build/assets/Index-qOGfSOZH.js
new file mode 100644
index 00000000000..b84934dd2ba
--- /dev/null
+++ b/resources/build/assets/Index-qOGfSOZH.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{C as t,L as n,T as r,Y as i,_ as a,b as o,et as s,p as c,ut as l,v as u,w as d,y as f,z as p}from"./dist-LYoVBFtL.js";import{t as m}from"./_plugin-vue_export-helper-QKFMMAHA.js";import{o as h}from"./InlineFlash-Cp9tUHHi.js";import{n as g}from"./wayfinder-K3R1_Wej.js";import{n as _,t as v}from"./AppLayout-DjmoYmre.js";var y=e=>({url:y.url(e),method:`get`});y.definition={methods:[`get`,`head`],url:`/admin/settings`},y.url=e=>y.definition.url+g(e),y.get=e=>({url:y.url(e),method:`get`}),y.head=e=>({url:y.url(e),method:`head`});var b={class:`py-3`},x={class:`grid gap-6`},S=[`id`],C=[`aria-labelledby`],w={class:`settings-grid`},T={class:`settings-content`},E={class:`settings-icon`},D=[`name`],O=[`innerHTML`],k={class:`sr-only`},A=m(r({__name:`Index`,props:{readOnly:{type:Boolean},settings:{}},setup(r){return(m,g)=>(n(),u(v,{title:l(e)(`Settings`)},{default:i(()=>[a(`div`,b,[r.readOnly?(n(),u(_,{key:0})):f(``,!0),a(`div`,x,[(n(!0),o(c,null,p(r.settings,(r,u,m)=>(n(),o(`div`,{key:u},[a(`h2`,{id:`category-heading-${m}`,class:`mb-2 text-lg leading-tight`},s(u),9,S),a(`nav`,{"aria-labelledby":`category-heading-${m}`},[a(`ul`,w,[(n(!0),o(c,null,p(r,(r,c)=>(n(),o(`li`,{key:c},[d(h,{href:r.url||`${l(y)().url}/${c}`,class:`settings-item`},{default:i(()=>[a(`div`,T,[a(`div`,E,[r.iconName?(n(),o(`craft-icon`,{key:0,name:r.iconName,style:{"font-size":`calc(40rem / 16)`}},null,8,D)):r.icon?(n(),o(`div`,{key:1,innerHTML:r.icon,class:`w-[40px] h-[40px] inline-block align-self-center`},null,8,O)):f(``,!0)]),t(` `+s(r.label),1),a(`span`,k,` - `+s(l(e)(`Settings`)),1)])]),_:2},1032,[`href`])]))),128))])],8,C)]))),128))])])]),_:1},8,[`title`]))}}),[[`__scopeId`,`data-v-b00fbfa2`]]);export{A as default};
\ No newline at end of file
diff --git a/resources/build/assets/IndexLayout-CTK-6Z_C.js b/resources/build/assets/IndexLayout-CTK-6Z_C.js
new file mode 100644
index 00000000000..7c32ba0018e
--- /dev/null
+++ b/resources/build/assets/IndexLayout-CTK-6Z_C.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{$ as t,B as n,C as r,D as i,G as a,L as o,Q as s,T as c,Y as l,_ as u,at as d,b as f,et as p,g as m,q as h,ut as g,v as _,x as v,y,z as b}from"./dist-LYoVBFtL.js";import{t as x}from"./_plugin-vue_export-helper-QKFMMAHA.js";import{r as S}from"./dist-DfEcHFCI.js";import{t as C}from"./AppLayout-DjmoYmre.js";var w={class:`index-grid`},T=[`aria-label`],E=[`aria-expanded`],D=[`name`],O={key:1,id:`nav-container`},k={id:`content-pane`,class:`bg-white border border-neutral-border-quiet rounded-sm shadow-sm @container`,tabindex:`-1`},A=x(c({__name:`IndexLayout`,props:{title:{},debug:{},fullWidth:{type:Boolean},form:{},formActions:{},additionalSkipLinks:{}},setup(c){let x=a(),A=S(`(min-width: 768px)`),j=d(`expanded`),M=m(()=>{let{default:e,...t}=x;return t}),N=m(()=>j.value===`expanded`?e(`Hide sidebar`):e(`Show sidebar`));function P(){j.value=j.value===`expanded`?`collapsed`:`expanded`}let F=[{label:e(`Skip to secondary navigation`),url:`#secondary-nav`},{label:e(`Skip to content`),url:`#content-pane`}];return h(A,e=>{j.value=e?`expanded`:`collapsed`},{immediate:!0}),(a,d)=>(o(),_(C,{"full-width":!0,title:c.title,debug:c.debug,"additional-skip-links":F},v({default:l(()=>[u(`div`,w,[u(`nav`,{id:`secondary-nav`,"aria-label":g(e)(`Secondary`),tabindex:`-1`},[g(A)?y(``,!0):(o(),f(`craft-button`,{key:0,type:`button`,"aria-controls":`nav-container`,"aria-expanded":j.value===`expanded`,onClick:P,align:`start`,class:`text-sm py-0 min-h-0`},[u(`craft-icon`,{slot:`suffix`,name:j.value===`expanded`?`chevron-up`:`chevron-down`,style:t({fontSize:`0.8em`,position:`relative`,insetBlockStart:j.value===`expanded`?`1px`:0})},null,12,D),r(` `+p(N.value),1)],8,E)),j.value===`expanded`?(o(),f(`div`,O,[n(a.$slots,`interior-nav`,{state:j.value},void 0,!0)])):y(``,!0)],8,T),u(`div`,k,[n(a.$slots,`default`,{},void 0,!0)])])]),_:2},[b(M.value,(e,t)=>({name:t,fn:l(e=>[n(a.$slots,t,s(i(e||{})),void 0,!0)])}))]),1032,[`title`,`debug`]))}}),[[`__scopeId`,`data-v-e8e3a455`]]);export{A as t};
\ No newline at end of file
diff --git a/resources/build/assets/IndexLayout-pvGJ0smu.js b/resources/build/assets/IndexLayout-pvGJ0smu.js
deleted file mode 100644
index 7cb26b21e3e..00000000000
--- a/resources/build/assets/IndexLayout-pvGJ0smu.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import{$ as t,B as n,E as r,J as i,K as a,O as o,R as s,S as c,V as l,X as u,_ as d,b as f,dt as p,et as m,ot as h,t as g,tt as _,v,w as y,x as b,y as x}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{r as S}from"./dist-CpsNQjmZ.js";import{t as C}from"./AppLayout-CMfRP4dO.js";var w={class:`index-grid`},T=[`aria-label`],E=[`aria-expanded`],D=[`name`],O={key:1,id:`nav-container`},k={id:`content-pane`,class:`bg-white border border-neutral-border-quiet rounded-sm shadow-sm @container`,tabindex:`-1`},A=g(r({__name:`IndexLayout`,props:{title:{},debug:{},fullWidth:{type:Boolean},form:{},formActions:{},additionalSkipLinks:{}},setup(r){let g=a(),A=S(`(min-width: 768px)`),j=h(`expanded`),M=d(()=>{let{default:e,...t}=g;return t}),N=d(()=>j.value===`expanded`?e(`Hide sidebar`):e(`Show sidebar`));function P(){j.value=j.value===`expanded`?`collapsed`:`expanded`}let F=[{label:e(`Skip to secondary navigation`),url:`#secondary-nav`},{label:e(`Skip to content`),url:`#content-pane`}];return i(A,e=>{j.value=e?`expanded`:`collapsed`},{immediate:!0}),(i,a)=>(s(),x(C,{"full-width":!0,title:r.title,debug:r.debug,"additional-skip-links":F},c({default:u(()=>[v(`div`,w,[v(`nav`,{id:`secondary-nav`,"aria-label":p(e)(`Secondary`),tabindex:`-1`},[p(A)?f(``,!0):(s(),b(`craft-button`,{key:0,type:`button`,"aria-controls":`nav-container`,"aria-expanded":j.value===`expanded`,onClick:P,align:`start`,class:`text-sm py-0 min-h-0`},[v(`craft-icon`,{slot:`suffix`,name:j.value===`expanded`?`chevron-up`:`chevron-down`,style:m({fontSize:`0.8em`,position:`relative`,insetBlockStart:j.value===`expanded`?`1px`:0})},null,12,D),y(` `+_(N.value),1)],8,E)),j.value===`expanded`?(s(),b(`div`,O,[l(i.$slots,`interior-nav`,{state:j.value},void 0,!0)])):f(``,!0)],8,T),v(`div`,k,[l(i.$slots,`default`,{},void 0,!0)])])]),_:2},[n(M.value,(e,n)=>({name:n,fn:u(e=>[l(i.$slots,n,t(o(e||{})),void 0,!0)])}))]),1032,[`title`,`debug`]))}}),[[`__scopeId`,`data-v-e8e3a455`]]);export{A as t};
\ No newline at end of file
diff --git a/resources/build/assets/InlineFlash-CASXlxQJ.js b/resources/build/assets/InlineFlash-CASXlxQJ.js
deleted file mode 100644
index 98124e54c63..00000000000
--- a/resources/build/assets/InlineFlash-CASXlxQJ.js
+++ /dev/null
@@ -1 +0,0 @@
-import{$ as e,E as t,O as n,Q as r,R as i,V as a,X as o,_ as s,b as c,dt as l,l as u,o as d,ot as f,t as p,tt as m,u as h,v as g,x as _,y as v}from"./_plugin-vue_export-helper-B5xWb4v9.js";var y={class:`flex gap-1 items-center`},b=[`name`],x=[`href`],S={class:`flex gap-1 items-center`},C=[`name`],w=p(t({__name:`CpLink`,props:{as:{},onClick:{},component:{},data:{},method:{},replace:{type:Boolean},preserveScroll:{type:[Boolean,String,Function]},preserveState:{type:[Boolean,String,Function]},preserveUrl:{type:Boolean},only:{},except:{},headers:{},queryStringArrayFormat:{},async:{type:Boolean},viewTransition:{type:[Boolean,Function]},onCancelToken:{},onBefore:{},onBeforeUpdate:{},onStart:{},onProgress:{},onFinish:{},onCancel:{},onSuccess:{},onError:{},onHttpException:{},onNetworkError:{},onFlash:{},onPrefetched:{},onPrefetching:{},href:{},instant:{type:Boolean},pageProps:{},prefetch:{type:[Boolean,String,Array]},cacheFor:{},cacheTags:{},variant:{default:`default`},size:{default:`medium`},appearance:{default:`inline`},icon:{},block:{type:Boolean,default:!1},inertia:{type:Boolean,default:!0}},setup(e){let t=e,n=s(()=>({block:t.block,"inline-flex":!t.block,"cp-link":!0,"cp-link--zero":t.size===`zero`,"cp-link--small":t.size===`small`,"cp-link--medium":t.size===`medium`,"cp-link--large":t.size===`large`,"cp-link--inline":t.appearance===`inline`,"cp-link--button":t.appearance===`button`,"cp-link--default":t.variant===`default`,"cp-link--primary":t.variant===`primary`,"cp-link--danger":t.variant===`danger`})),u=s(()=>typeof t.href==`string`?t.href:t.href?.url);return(t,s)=>e.inertia?(i(),v(l(d),{key:0,as:e.as,href:e.href,class:r(n.value)},{default:o(()=>[g(`div`,y,[e.icon?(i(),_(`craft-icon`,{key:0,name:e.icon},null,8,b)):c(``,!0),a(t.$slots,`default`,{},void 0,!0)])]),_:3},8,[`as`,`href`,`class`])):(i(),_(`a`,{key:1,href:u.value,class:r(n.value)},[g(`div`,S,[e.icon?(i(),_(`craft-icon`,{key:0,name:e.icon},null,8,C)):c(``,!0),a(t.$slots,`default`,{},void 0,!0)])],10,x))}}),[[`__scopeId`,`data-v-e0e842f4`]]),T=f({success:null,error:null});function E(e={duration:2e3}){e.initialMessages&&(T.value=l(e.initialMessages));function t(e,t,n={}){let{duration:r=n.duration??5e3}=n;T.value[e]=t,r!==-1&&setTimeout(()=>{T.value[e]=null},r)}function n(e){T.value[e]=null}function r(){T.value={success:null,error:null}}return{flash:t,clear:n,clearAll:r,messages:T}}var D=p(t({__name:`VarDump`,props:{data:{}},setup(t){return(r,a)=>(i(),_(`pre`,e(n(r.$attrs)),m(JSON.stringify(t.data,null,2)),17))}}),[[`__scopeId`,`data-v-9d6b32cd`]]),O={};function k(e,t){return i(),v(h,{name:`fade`},{default:o(()=>[a(e.$slots,`default`,{},void 0,!0)]),_:3})}var A=p(O,[[`render`,k],[`__scopeId`,`data-v-472cd7f2`]]),j=f(null),M=f(null);function N(e={}){function t(t){t&&(M.value!==null&&clearTimeout(M.value),j.value=t,M.value=setTimeout(()=>{j.value=null},e.timeout||5e3))}return{announcement:j,announce:t}}function P(){let e=u(),t=s(()=>e.props.flash);return{flash:t,successFlash:s(()=>t.value.success),errorFlash:s(()=>t.value.error)}}var F={key:0,variant:`success`,appearance:`plain`,icon:`circle-check`,inline:``,class:`p-0`},I={key:1,variant:`danger`,appearance:`plain`,icon:`triangle-exclamation`,inline:``,class:`p-0`},L=t({__name:`InlineFlash`,props:{isActive:{type:Boolean,default:!1}},setup(e){let{successFlash:t,errorFlash:n}=P();return(r,a)=>(i(),v(A,null,{default:o(()=>[e.isActive&&l(t)?(i(),_(`craft-callout`,F,m(l(t)),1)):c(``,!0),e.isActive&&l(n)?(i(),_(`craft-callout`,I,m(l(n)),1)):c(``,!0)]),_:1}))}});export{D as a,A as i,P as n,E as o,N as r,w as s,L as t};
\ No newline at end of file
diff --git a/resources/build/assets/InlineFlash-Cp9tUHHi.js b/resources/build/assets/InlineFlash-Cp9tUHHi.js
new file mode 100644
index 00000000000..1c7c076e460
--- /dev/null
+++ b/resources/build/assets/InlineFlash-Cp9tUHHi.js
@@ -0,0 +1 @@
+import{B as e,D as t,L as n,Q as r,T as i,Y as a,Z as o,_ as s,a as c,at as l,b as u,c as d,et as f,g as p,l as m,ut as h,v as g,y as _}from"./dist-LYoVBFtL.js";import{t as v}from"./_plugin-vue_export-helper-QKFMMAHA.js";var y={class:`flex gap-1 items-center`},b=[`name`],x=[`href`],S={class:`flex gap-1 items-center`},C=[`name`],w=v(i({__name:`CpLink`,props:{as:{},onClick:{},component:{},data:{},method:{},replace:{type:Boolean},preserveScroll:{type:[Boolean,String,Function]},preserveState:{type:[Boolean,String,Function]},preserveUrl:{type:Boolean},only:{},except:{},headers:{},queryStringArrayFormat:{},async:{type:Boolean},viewTransition:{type:[Boolean,Function]},onCancelToken:{},onBefore:{},onBeforeUpdate:{},onStart:{},onProgress:{},onFinish:{},onCancel:{},onSuccess:{},onError:{},onHttpException:{},onNetworkError:{},onFlash:{},onPrefetched:{},onPrefetching:{},href:{},instant:{type:Boolean},pageProps:{},prefetch:{type:[Boolean,String,Array]},cacheFor:{},cacheTags:{},variant:{default:`default`},size:{default:`medium`},appearance:{default:`inline`},icon:{},block:{type:Boolean,default:!1},inertia:{type:Boolean,default:!0}},setup(t){let r=t,i=p(()=>({block:r.block,"inline-flex":!r.block,"cp-link":!0,"cp-link--zero":r.size===`zero`,"cp-link--small":r.size===`small`,"cp-link--medium":r.size===`medium`,"cp-link--large":r.size===`large`,"cp-link--inline":r.appearance===`inline`,"cp-link--button":r.appearance===`button`,"cp-link--default":r.variant===`default`,"cp-link--primary":r.variant===`primary`,"cp-link--danger":r.variant===`danger`})),l=p(()=>typeof r.href==`string`?r.href:r.href?.url);return(r,d)=>t.inertia?(n(),g(h(c),{key:0,as:t.as,href:t.href,class:o(i.value)},{default:a(()=>[s(`div`,y,[t.icon?(n(),u(`craft-icon`,{key:0,name:t.icon},null,8,b)):_(``,!0),e(r.$slots,`default`,{},void 0,!0)])]),_:3},8,[`as`,`href`,`class`])):(n(),u(`a`,{key:1,href:l.value,class:o(i.value)},[s(`div`,S,[t.icon?(n(),u(`craft-icon`,{key:0,name:t.icon},null,8,C)):_(``,!0),e(r.$slots,`default`,{},void 0,!0)])],10,x))}}),[[`__scopeId`,`data-v-e0e842f4`]]),T=v(i({__name:`VarDump`,props:{data:{}},setup(e){return(i,a)=>(n(),u(`pre`,r(t(i.$attrs)),f(JSON.stringify(e.data,null,2)),17))}}),[[`__scopeId`,`data-v-9d6b32cd`]]),E={};function D(t,r){return n(),g(m,{name:`fade`},{default:a(()=>[e(t.$slots,`default`,{},void 0,!0)]),_:3})}var O=v(E,[[`render`,D],[`__scopeId`,`data-v-472cd7f2`]]),k=l(null),A=l(null);function j(e={}){function t(t){t&&(A.value!==null&&clearTimeout(A.value),k.value=t,A.value=setTimeout(()=>{k.value=null},e.timeout||5e3))}return{announcement:k,announce:t}}function M(){let e=d(),t=p(()=>e.props.flash);return{flash:t,successFlash:p(()=>t.value.success),errorFlash:p(()=>t.value.error)}}var N={key:0,variant:`success`,appearance:`plain`,icon:`circle-check`,inline:``,class:`p-0`},P={key:1,variant:`danger`,appearance:`plain`,icon:`triangle-exclamation`,inline:``,class:`p-0`},F=i({__name:`InlineFlash`,props:{isActive:{type:Boolean,default:!1}},setup(e){let{successFlash:t,errorFlash:r}=M();return(i,o)=>(n(),g(O,null,{default:a(()=>[e.isActive&&h(t)?(n(),u(`craft-callout`,N,f(h(t)),1)):_(``,!0),e.isActive&&h(r)?(n(),u(`craft-callout`,P,f(h(r)),1)):_(``,!0)]),_:1}))}});export{T as a,O as i,M as n,w as o,j as r,F as t};
\ No newline at end of file
diff --git a/resources/build/assets/InputCombobox-Ct35tX5Z.js b/resources/build/assets/InputCombobox-Ct35tX5Z.js
new file mode 100644
index 00000000000..5ce5669b87b
--- /dev/null
+++ b/resources/build/assets/InputCombobox-Ct35tX5Z.js
@@ -0,0 +1,4 @@
+import{$ as e,A as t,B as n,C as r,F as i,I as a,J as o,K as s,L as c,M as l,N as u,O as d,Q as f,R as p,T as m,Y as h,Z as g,_,at as v,b as y,et as b,g as x,h as S,it as C,lt as w,ot as T,p as E,q as D,rt as O,st as k,ut as A,v as j,w as M,y as N,z as ee}from"./dist-LYoVBFtL.js";import{t as te}from"./_plugin-vue_export-helper-QKFMMAHA.js";import{a as ne,c as P,d as re,f as F,i as ie,l as I,m as L,n as R,o as z,p as B,r as ae,s as oe,t as V,u as H}from"./keyboard-BaKqbFDa.js";function U(e,t,n){let r=n.initialDeps??[],i,a=!0;function o(){let o;n.key&&n.debug?.call(n)&&(o=Date.now());let s=e();if(!(s.length!==r.length||s.some((e,t)=>r[t]!==e)))return i;r=s;let c;if(n.key&&n.debug?.call(n)&&(c=Date.now()),i=t(...s),n.key&&n.debug?.call(n)){let e=Math.round((Date.now()-o)*100)/100,t=Math.round((Date.now()-c)*100)/100,r=t/16,i=(e,t)=>{for(e=String(e);e.length{r=e},o}function se(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var ce=(e,t)=>Math.abs(e-t)<1.01,le=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},ue=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},de=e=>e,fe=e=>{let t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1),r=[];for(let e=t;e<=n;e++)r.push(e);return r},pe=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(ue(n)),!r.ResizeObserver)return()=>{};let a=new r.ResizeObserver(t=>{let r=()=>{let e=t[0];if(e?.borderBoxSize){let t=e.borderBoxSize[0];if(t){i({width:t.inlineSize,height:t.blockSize});return}}i(ue(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},me={passive:!0},he=typeof window>`u`?!0:`onscrollend`in window,ge=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=0,a=e.options.useScrollendEvent&&he?()=>void 0:le(r,()=>{t(i,!1)},e.options.isScrollingResetDelay),o=r=>()=>{let{horizontal:o,isRtl:s}=e.options;i=o?n.scrollLeft*(s&&-1||1):n.scrollTop,a(),t(i,r)},s=o(!0),c=o(!1);n.addEventListener(`scroll`,s,me);let l=e.options.useScrollendEvent&&he;return l&&n.addEventListener(`scrollend`,c,me),()=>{n.removeEventListener(`scroll`,s),l&&n.removeEventListener(`scrollend`,c)}},_e=(e,t,n)=>{if(t?.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}return e[n.options.horizontal?`offsetWidth`:`offsetHeight`]},ve=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;let o=e+t;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:o,behavior:n})},ye=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.currentScrollToIndex=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.laneAssignments=new Map,this.pendingMeasuredCacheIndexes=[],this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let e=null,t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{let t=()=>{this._measureElement(e.target,e)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(t):t()})}));return{disconnect:()=>{var n;(n=t())==null||n.disconnect(),e=null},observe:e=>t()?.observe(e,{box:`border-box`}),unobserve:e=>t()?.unobserve(e)}})(),this.range=null,this.setOptions=e=>{Object.entries(e).forEach(([t,n])=>{n===void 0&&delete e[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:de,rangeExtractor:fe,onChange:()=>{},measureElement:_e,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...e}},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=U(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{let e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e){this.maybeNotify();return}this.scrollElement=e,this.scrollElement&&`ownerDocument`in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=this.scrollElement?.window??null,this.elementsCache.forEach(e=>{this.observer.observe(e)}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{this.scrollAdjustments=0,this.scrollDirection=t?this.getScrollOffset()this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(e,t)=>{let n=new Map,r=new Map;for(let i=t-1;i>=0;i--){let t=e[i];if(n.has(t.lane))continue;let a=r.get(t.lane);if(a==null||t.end>a.end?r.set(t.lane,t):t.ende.end===t.end?e.index-t.index:e.end-t.end)[0]:void 0},this.getMeasurementOptions=U(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes],(e,t,n,r,i,a)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a}),{key:!1}),this.getMeasurements=U(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a},o)=>{if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(let t of this.laneAssignments.keys())t>=e&&this.laneAssignments.delete(t);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMeasuredCacheIndexes=[]),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let s=this.lanesSettling?0:this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[],this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1);let c=this.measurementsCache.slice(0,s),l=Array(a).fill(void 0);for(let e=0;e1){s=a;let e=l[s],r=e===void 0?void 0:c[e];u=r?r.end+this.options.gap:t+n}else{let e=this.options.lanes===1?c[i-1]:this.getFurthestMeasurement(c,i);u=e?e.end+this.options.gap:t+n,s=e?e.lane:i%this.options.lanes,this.options.lanes>1&&this.laneAssignments.set(i,s)}let d=o.get(e),f=typeof d==`number`?d:this.options.estimateSize(i),p=u+f;c[i]={index:i,start:u,size:f,end:p,key:e,lane:s},l[s]=i}return this.measurementsCache=c,c},{key:!1,debug:()=>this.options.debug}),this.calculateRange=U(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>this.range=e.length>0&&t>0?xe({measurements:e,outerSize:t,scrollOffset:n,lanes:r}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=U(()=>{let e=null,t=null,n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,n,r,i)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(e,t)=>{let n=this.indexFromElement(e),r=this.measurementsCache[n];if(!r)return;let i=r.key,a=this.elementsCache.get(i);a!==e&&(a&&this.observer.unobserve(a),this.observer.observe(e),this.elementsCache.set(i,e)),e.isConnected&&this.resizeItem(n,this.options.measureElement(e,t,this))},this.resizeItem=(e,t)=>{let n=this.measurementsCache[e];if(!n)return;let r=t-(this.itemSizeCache.get(n.key)??n.size);r!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange===void 0?n.start{if(!e){this.elementsCache.forEach((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))});return}this._measureElement(e,void 0)},this.getVirtualItems=U(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{let n=[];for(let r=0,i=e.length;rthis.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length!==0)return se(t[be(0,t.length-1,e=>se(t[e]).start,e)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if(`scrollHeight`in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{let e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;let r=this.getSize(),i=this.getScrollOffset();t===`auto`&&(t=e>=i+r?`end`:`start`),t===`center`?e+=(n-r)/2:t===`end`&&(e-=r);let a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.measurementsCache[e];if(!n)return;let r=this.getSize(),i=this.getScrollOffset();if(t===`auto`)if(n.end>=i+r-this.options.scrollPaddingEnd)t=`end`;else if(n.start<=i+this.options.scrollPaddingStart)t=`start`;else return[i,t];if(t===`end`&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];let a=t===`end`?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,n.size),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(e,{align:t=`start`,behavior:n}={})=>{n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})},this.scrollToIndex=(e,{align:t=`auto`,behavior:n}={})=>{n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),e=Math.max(0,Math.min(e,this.options.count-1)),this.currentScrollToIndex=e;let r=0,i=t=>{if(!this.targetWindow)return;let r=this.getOffsetForIndex(e,t);if(!r){console.warn(`Failed to get offset for index:`,e);return}let[i,o]=r;this._scrollToOffset(i,{adjustments:void 0,behavior:n}),this.targetWindow.requestAnimationFrame(()=>{let t=()=>{if(this.currentScrollToIndex!==e)return;let t=this.getScrollOffset(),n=this.getOffsetForIndex(e,o);if(!n){console.warn(`Failed to get offset for index:`,e);return}ce(n[0],t)||a(o)};this.isDynamicMode()?this.targetWindow.requestAnimationFrame(t):t()})},a=t=>{this.targetWindow&&this.currentScrollToIndex===e&&(r++,r<10?this.targetWindow.requestAnimationFrame(()=>i(t)):console.warn(`Failed to scroll to index ${e} after 10 attempts.`))};i(t)},this.scrollBy=(e,{behavior:t}={})=>{t===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{let e=this.getMeasurements(),t;if(e.length===0)t=this.options.paddingStart;else if(this.options.lanes===1)t=e[e.length-1]?.end??0;else{let n=Array(this.options.lanes).fill(null),r=e.length-1;for(;r>=0&&n.some(e=>e===null);){let t=e[r];n[t.lane]===null&&(n[t.lane]=t.end),r--}t=Math.max(...n.filter(e=>e!==null))}return Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{this.itemSizeCache=new Map,this.laneAssignments=new Map,this.notify(!1)},this.setOptions(e)}},be=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(ar)t=i-1;else return i}return e>0?e-1:0};function xe({measurements:e,outerSize:t,scrollOffset:n,lanes:r}){let i=e.length-1,a=t=>e[t].start;if(e.length<=r)return{startIndex:0,endIndex:i};let o=be(0,i,a,n),s=o;if(r===1)for(;s1){let a=Array(r).fill(0);for(;se=0&&c.some(e=>e>=n);){let t=e[o];c[t.lane]=t.start,o--}o=Math.max(0,o-o%r),s=Math.min(i,s+(r-1-s%r))}return{startIndex:o,endIndex:s}}function Se(e){let t=new ye(A(e)),n=T(t),r=t._didMount();return D(()=>A(e).getScrollElement(),e=>{e&&t._willUpdate()},{immediate:!0}),D(()=>A(e),e=>{t.setOptions({...e,onChange:(t,r)=>{var i;w(n),(i=e.onChange)==null||i.call(e,t,r)}}),t._willUpdate(),w(n)},{immediate:!0}),O(r),n}function Ce(e){return Se(x(()=>({observeElementRect:pe,observeElementOffset:ge,scrollToFn:ve,...A(e)})))}function we(e,t,n){let r=v(n?.value),i=x(()=>e.value!==void 0);return[x(()=>i.value?e.value:r.value),function(e){return i.value||(r.value=e),t?.(e)}]}function Te(e){typeof queueMicrotask==`function`?queueMicrotask(e):Promise.resolve().then(e).catch(e=>setTimeout(()=>{throw e}))}function W(){let e=[],t={addEventListener(e,n,r,i){return e.addEventListener(n,r,i),t.add(()=>e.removeEventListener(n,r,i))},requestAnimationFrame(...e){let n=requestAnimationFrame(...e);t.add(()=>cancelAnimationFrame(n))},nextFrame(...e){t.requestAnimationFrame(()=>{t.requestAnimationFrame(...e)})},setTimeout(...e){let n=setTimeout(...e);t.add(()=>clearTimeout(n))},microTask(...e){let n={current:!0};return Te(()=>{n.current&&e[0]()}),t.add(()=>{n.current=!1})},style(e,t,n){let r=e.style.getPropertyValue(t);return Object.assign(e.style,{[t]:n}),this.add(()=>{Object.assign(e.style,{[t]:r})})},group(e){let t=W();return e(t),this.add(()=>t.dispose())},add(t){return e.push(t),()=>{let n=e.indexOf(t);if(n>=0)for(let t of e.splice(n,1))t()}},dispose(){for(let t of e.splice(0))t()}};return t}function Ee(){let e=W();return a(()=>e.dispose()),e}function De(){let e=Ee();return t=>{e.dispose(),e.nextFrame(t)}}var Oe=Object.defineProperty,ke=(e,t,n)=>t in e?Oe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Ae=(e,t,n)=>(ke(e,typeof t==`symbol`?t:t+``,n),n),G=new class{constructor(){Ae(this,`current`,this.detect()),Ae(this,`currentId`,0)}set(e){this.current!==e&&(this.currentId=0,this.current=e)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current===`server`}get isClient(){return this.current===`client`}detect(){return typeof window>`u`||typeof document>`u`?`server`:`client`}};function je(e){if(G.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e!=null&&e.hasOwnProperty(`value`)){let t=B(e);if(t)return t.ownerDocument}return document}var Me=[`[contentEditable=true]`,`[tabindex]`,`a[href]`,`area[href]`,`button:not([disabled])`,`iframe`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`].map(e=>`${e}:not([tabindex='-1'])`).join(`,`),Ne=(e=>(e[e.First=1]=`First`,e[e.Previous=2]=`Previous`,e[e.Next=4]=`Next`,e[e.Last=8]=`Last`,e[e.WrapAround=16]=`WrapAround`,e[e.NoScroll=32]=`NoScroll`,e))(Ne||{}),Pe=(e=>(e[e.Error=0]=`Error`,e[e.Overflow=1]=`Overflow`,e[e.Success=2]=`Success`,e[e.Underflow=3]=`Underflow`,e))(Pe||{}),Fe=(e=>(e[e.Previous=-1]=`Previous`,e[e.Next=1]=`Next`,e))(Fe||{}),Ie=(e=>(e[e.Strict=0]=`Strict`,e[e.Loose=1]=`Loose`,e))(Ie||{});function Le(e,t=0){return e===je(e)?.body?!1:F(t,{0(){return e.matches(Me)},1(){let t=e;for(;t!==null;){if(t.matches(Me))return!0;t=t.parentElement}return!1}})}var Re=(e=>(e[e.Keyboard=0]=`Keyboard`,e[e.Mouse=1]=`Mouse`,e))(Re||{});typeof window<`u`&&typeof document<`u`&&(document.addEventListener(`keydown`,e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible=``)},!0),document.addEventListener(`click`,e=>{e.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:e.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible=``)},!0)),[`textarea`,`input`].join(`,`);function ze(e,t=e=>e){return e.slice().sort((e,n)=>{let r=t(e),i=t(n);if(r===null||i===null)return 0;let a=r.compareDocumentPosition(i);return a&Node.DOCUMENT_POSITION_FOLLOWING?-1:a&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function Be(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function Ve(){return/Android/gi.test(window.navigator.userAgent)}function He(){return Be()||Ve()}function K(e,t,n){G.isServer||o(r=>{document.addEventListener(e,t,n),r(()=>document.removeEventListener(e,t,n))})}function Ue(e,t,n){G.isServer||o(r=>{window.addEventListener(e,t,n),r(()=>window.removeEventListener(e,t,n))})}function We(e,t,n=x(()=>!0)){function r(r,i){if(!n.value||r.defaultPrevented)return;let a=i(r);if(a===null||!a.getRootNode().contains(a))return;let o=function e(t){return typeof t==`function`?e(t()):Array.isArray(t)||t instanceof Set?t:[t]}(e);for(let e of o){if(e===null)continue;let t=e instanceof HTMLElement?e:B(e);if(t!=null&&t.contains(a)||r.composed&&r.composedPath().includes(t))return}return!Le(a,Ie.Loose)&&a.tabIndex!==-1&&r.preventDefault(),t(r,a)}let i=v(null);K(`pointerdown`,e=>{n.value&&(i.value=e.composedPath?.call(e)?.[0]||e.target)},!0),K(`mousedown`,e=>{n.value&&(i.value=e.composedPath?.call(e)?.[0]||e.target)},!0),K(`click`,e=>{He()||(i.value&&=(r(e,()=>i.value),null))},!0),K(`touchend`,e=>r(e,()=>e.target instanceof HTMLElement?e.target:null),!0),Ue(`blur`,e=>r(e,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function Ge(e){return[e.screenX,e.screenY]}function Ke(){let e=v([-1,-1]);return{wasMoved(t){let n=Ge(t);return e.value[0]===n[0]&&e.value[1]===n[1]?!1:(e.value=n,!0)},update(t){e.value=Ge(t)}}}function qe({container:e,accept:t,walk:n,enabled:r}){o(()=>{let i=e.value;if(!i||r!==void 0&&!r.value)return;let a=je(e);if(!a)return;let o=Object.assign(e=>t(e),{acceptNode:t}),s=a.createTreeWalker(i,NodeFilter.SHOW_ELEMENT,o,!1);for(;s.nextNode();)n(s.currentNode)})}var Je=(e=>(e[e.None=1]=`None`,e[e.Focusable=2]=`Focusable`,e[e.Hidden=4]=`Hidden`,e))(Je||{}),Ye=m({name:`Hidden`,props:{as:{type:[Object,String],default:`div`},features:{type:Number,default:1}},setup(e,{slots:t,attrs:n}){return()=>{let{features:r,...i}=e;return z({ourProps:{"aria-hidden":(r&2)==2?!0:i[`aria-hidden`]??void 0,hidden:(r&4)==4?!0:void 0,style:{position:`fixed`,top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`,...(r&4)==4&&(r&2)!=2&&{display:`none`}}},theirProps:i,slot:{},attrs:n,slots:t,name:`Hidden`})}}}),Xe=(e=>(e[e.Left=0]=`Left`,e[e.Right=2]=`Right`,e))(Xe||{});function Ze(e){function t(){document.readyState!==`loading`&&(e(),document.removeEventListener(`DOMContentLoaded`,t))}typeof window<`u`&&typeof document<`u`&&(document.addEventListener(`DOMContentLoaded`,t),t())}var q=[];Ze(()=>{function e(e){e.target instanceof HTMLElement&&e.target!==document.body&&q[0]!==e.target&&(q.unshift(e.target),q=q.filter(e=>e!=null&&e.isConnected),q.splice(10))}window.addEventListener(`click`,e,{capture:!0}),window.addEventListener(`mousedown`,e,{capture:!0}),window.addEventListener(`focus`,e,{capture:!0}),document.body.addEventListener(`click`,e,{capture:!0}),document.body.addEventListener(`mousedown`,e,{capture:!0}),document.body.addEventListener(`focus`,e,{capture:!0})});function Qe(e){throw Error(`Unexpected object: `+e)}var J=(e=>(e[e.First=0]=`First`,e[e.Previous=1]=`Previous`,e[e.Next=2]=`Next`,e[e.Last=3]=`Last`,e[e.Specific=4]=`Specific`,e[e.Nothing=5]=`Nothing`,e))(J||{});function $e(e,t){let n=t.resolveItems();if(n.length<=0)return null;let r=t.resolveActiveIndex(),i=r??-1;switch(e.focus){case 0:for(let e=0;e=0;--e)if(!t.resolveDisabled(n[e],e,n))return e;return r;case 2:for(let e=i+1;e=0;--e)if(!t.resolveDisabled(n[e],e,n))return e;return r;case 4:for(let r=0;r(e[e.Open=0]=`Open`,e[e.Closed=1]=`Closed`,e))(it||{}),at=(e=>(e[e.Single=0]=`Single`,e[e.Multi=1]=`Multi`,e))(at||{}),ot=(e=>(e[e.Pointer=0]=`Pointer`,e[e.Focus=1]=`Focus`,e[e.Other=2]=`Other`,e))(ot||{}),st=Symbol(`ComboboxContext`);function Y(e){let n=t(st,null);if(n===null){let t=Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,Y),t}return n}var ct=Symbol(`VirtualContext`),lt=m({name:`VirtualProvider`,setup(e,{slots:t}){let n=Y(`VirtualProvider`),r=x(()=>{let e=B(n.optionsRef);if(!e)return{start:0,end:0};let t=window.getComputedStyle(e);return{start:parseFloat(t.paddingBlockStart||t.paddingTop),end:parseFloat(t.paddingBlockEnd||t.paddingBottom)}}),i=Ce(x(()=>({scrollPaddingStart:r.value.start,scrollPaddingEnd:r.value.end,count:n.virtual.value.options.length,estimateSize(){return 40},getScrollElement(){return B(n.optionsRef)},overscan:12}))),a=x(()=>n.virtual.value?.options),o=v(0);return D([a],()=>{o.value+=1}),p(ct,n.virtual.value?i:null),()=>[d(`div`,{style:{position:`relative`,width:`100%`,height:`${i.value.getTotalSize()}px`},ref:e=>{if(e){if(typeof process<`u`&&{}.JEST_WORKER_ID!==void 0||n.activationTrigger.value===0)return;n.activeOptionIndex.value!==null&&n.virtual.value.options.length>n.activeOptionIndex.value&&i.value.scrollToIndex(n.activeOptionIndex.value)}}},i.value.getVirtualItems().map(e=>S(t.default({option:n.virtual.value.options[e.index],open:n.comboboxState.value===0})[0],{key:`${o.value}-${e.index}`,"data-index":e.index,"aria-setsize":n.virtual.value.options.length,"aria-posinset":e.index+1,style:{position:`absolute`,top:0,left:0,transform:`translateY(${e.start}px)`,overflowAnchor:`none`}})))]}}),ut=m({name:`Combobox`,emits:{"update:modelValue":e=>!0},props:{as:{type:[Object,String],default:`template`},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],nullable:!0,default:null},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},nullable:{type:Boolean,default:!1},multiple:{type:[Boolean],default:!1},immediate:{type:[Boolean],default:!1},virtual:{type:Object,default:null}},inheritAttrs:!1,setup(e,{slots:t,attrs:n,emit:r}){let a=v(1),o=v(null),s=v(null),c=v(null),l=v(null),u=v({static:!1,hold:!1}),f=v([]),m=v(null),h=v(2),g=v(!1);function _(e=e=>e){let t=m.value===null?null:f.value[m.value],n=e(f.value.slice()),r=n.length>0&&n[0].dataRef.order.value!==null?n.sort((e,t)=>e.dataRef.order.value-t.dataRef.order.value):ze(n,e=>B(e.dataRef.domRef)),i=t?r.indexOf(t):null;return i===-1&&(i=null),{options:r,activeOptionIndex:i}}let y=x(()=>+!!e.multiple),b=x(()=>e.nullable),[S,w]=we(x(()=>e.modelValue),e=>r(`update:modelValue`,e),x(()=>e.defaultValue)),T=x(()=>S.value===void 0?F(y.value,{1:[],0:void 0}):S.value),O=null,A=null;function j(e){return F(y.value,{0(){return w?.(e)},1:()=>{let t=k(M.value.value).slice(),n=k(e),r=t.findIndex(e=>M.compare(n,k(e)));return r===-1?t.push(n):t.splice(r,1),w?.(t)}})}D([x(()=>{})],([e],[t])=>{if(M.virtual.value&&e&&t&&m.value!==null){let n=e.indexOf(t[m.value]);n===-1?m.value=null:m.value=n}});let M={comboboxState:a,value:T,mode:y,compare(t,n){if(typeof e.by==`string`){let r=e.by;return t?.[r]===n?.[r]}return e.by===null?rt(t,n):e.by(t,n)},calculateIndex(t){return M.virtual.value?e.by===null?M.virtual.value.options.indexOf(t):M.virtual.value.options.findIndex(e=>M.compare(e,t)):f.value.findIndex(e=>M.compare(e.dataRef.value,t))},defaultValue:x(()=>e.defaultValue),nullable:b,immediate:x(()=>!1),virtual:x(()=>null),inputRef:s,labelRef:o,buttonRef:c,optionsRef:l,disabled:x(()=>e.disabled),options:f,change(e){w(e)},activeOptionIndex:x(()=>{if(g.value&&m.value===null&&(M.virtual.value?M.virtual.value.options.length>0:f.value.length>0)){if(M.virtual.value){let e=M.virtual.value.options.findIndex(e=>{var t;return!((t=M.virtual.value)!=null&&t.disabled(e))});if(e!==-1)return e}let e=f.value.findIndex(e=>!e.dataRef.disabled);if(e!==-1)return e}return m.value}),activationTrigger:h,optionsPropsRef:u,closeCombobox(){g.value=!1,!e.disabled&&a.value!==1&&(a.value=1,m.value=null)},openCombobox(){if(g.value=!0,!e.disabled&&a.value!==0){if(M.value.value){let e=M.calculateIndex(M.value.value);e!==-1&&(m.value=e)}a.value=0}},setActivationTrigger(e){h.value=e},goToOption(t,n,r){g.value=!1,O!==null&&cancelAnimationFrame(O),O=requestAnimationFrame(()=>{if(e.disabled||l.value&&!u.value.static&&a.value===1)return;if(M.virtual.value){m.value=t===J.Specific?n:$e({focus:t},{resolveItems:()=>M.virtual.value.options,resolveActiveIndex:()=>M.activeOptionIndex.value??M.virtual.value.options.findIndex(e=>{var t;return!((t=M.virtual.value)!=null&&t.disabled(e))})??null,resolveDisabled:e=>M.virtual.value.disabled(e),resolveId(){throw Error(`Function not implemented.`)}}),h.value=r??2;return}let i=_();if(i.activeOptionIndex===null){let e=i.options.findIndex(e=>!e.dataRef.disabled);e!==-1&&(i.activeOptionIndex=e)}m.value=t===J.Specific?n:$e({focus:t},{resolveItems:()=>i.options,resolveActiveIndex:()=>i.activeOptionIndex,resolveId:e=>e.id,resolveDisabled:e=>e.dataRef.disabled}),h.value=r??2,f.value=i.options})},selectOption(e){let t=f.value.find(t=>t.id===e);if(!t)return;let{dataRef:n}=t;j(n.value)},selectActiveOption(){if(M.activeOptionIndex.value!==null){if(M.virtual.value)j(M.virtual.value.options[M.activeOptionIndex.value]);else{let{dataRef:e}=f.value[M.activeOptionIndex.value];j(e.value)}M.goToOption(J.Specific,M.activeOptionIndex.value)}},registerOption(e,t){let n=C({id:e,dataRef:t});if(M.virtual.value){f.value.push(n);return}A&&cancelAnimationFrame(A);let r=_(e=>(e.push(n),e));m.value===null&&M.isSelected(t.value.value)&&(r.activeOptionIndex=r.options.indexOf(n)),f.value=r.options,m.value=r.activeOptionIndex,h.value=2,r.options.some(e=>!B(e.dataRef.domRef))&&(A=requestAnimationFrame(()=>{let e=_();f.value=e.options,m.value=e.activeOptionIndex}))},unregisterOption(e,t){if(O!==null&&cancelAnimationFrame(O),t&&(g.value=!0),M.virtual.value){f.value=f.value.filter(t=>t.id!==e);return}let n=_(t=>{let n=t.findIndex(t=>t.id===e);return n!==-1&&t.splice(n,1),t});f.value=n.options,m.value=n.activeOptionIndex,h.value=2},isSelected(e){return F(y.value,{0:()=>M.compare(k(M.value.value),k(e)),1:()=>k(M.value.value).some(t=>M.compare(k(t),k(e)))})},isActive(e){return m.value===M.calculateIndex(e)}};We([s,c,l],()=>M.closeCombobox(),x(()=>a.value===0)),p(st,M),ne(x(()=>F(a.value,{0:R.Open,1:R.Closed})));let N=x(()=>B(s)?.closest(`form`));return i(()=>{D([N],()=>{if(!N.value||e.defaultValue===void 0)return;function t(){M.change(e.defaultValue)}return N.value.addEventListener(`reset`,t),()=>{var e;(e=N.value)==null||e.removeEventListener(`reset`,t)}},{immediate:!0})}),()=>{let{name:r,disabled:i,form:o,...s}=e,c={open:a.value===0,disabled:i,activeIndex:M.activeOptionIndex.value,activeOption:M.activeOptionIndex.value===null?null:M.virtual.value?M.virtual.value.options[M.activeOptionIndex.value??0]:M.options.value[M.activeOptionIndex.value]?.dataRef.value??null,value:T.value};return d(E,[...r!=null&&T.value!=null?et({[r]:T.value}).map(([e,t])=>d(Ye,oe({features:Je.Hidden,key:e,as:`input`,type:`hidden`,hidden:!0,readOnly:!0,form:o,disabled:i,name:e,value:t}))):[],z({theirProps:{...n,...H(s,[`by`,`defaultValue`,`immediate`,`modelValue`,`multiple`,`nullable`,`onUpdate:modelValue`,`virtual`])},ourProps:{},slot:c,slots:t,attrs:n,name:`Combobox`})])}}});m({name:`ComboboxLabel`,props:{as:{type:[Object,String],default:`label`},id:{type:String,default:null}},setup(e,{attrs:t,slots:n}){let r=e.id??`headlessui-combobox-label-${L()}`,i=Y(`ComboboxLabel`);function a(){var e;(e=B(i.inputRef))==null||e.focus({preventScroll:!0})}return()=>{let o={open:i.comboboxState.value===0,disabled:i.disabled.value},{...s}=e;return z({ourProps:{id:r,ref:i.labelRef,onClick:a},theirProps:s,slot:o,attrs:t,slots:n,name:`ComboboxLabel`})}}});var dt=m({name:`ComboboxButton`,props:{as:{type:[Object,String],default:`button`},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){let i=e.id??`headlessui-combobox-button-${L()}`,a=Y(`ComboboxButton`);r({el:a.buttonRef,$el:a.buttonRef});function o(e){a.disabled.value||(a.comboboxState.value===0?a.closeCombobox():(e.preventDefault(),a.openCombobox()),u(()=>B(a.inputRef)?.focus({preventScroll:!0})))}function s(e){switch(e.key){case V.ArrowDown:e.preventDefault(),e.stopPropagation(),a.comboboxState.value===1&&a.openCombobox(),u(()=>a.inputRef.value?.focus({preventScroll:!0}));return;case V.ArrowUp:e.preventDefault(),e.stopPropagation(),a.comboboxState.value===1&&(a.openCombobox(),u(()=>{a.value.value||a.goToOption(J.Last)})),u(()=>a.inputRef.value?.focus({preventScroll:!0}));return;case V.Escape:if(a.comboboxState.value!==0)return;e.preventDefault(),a.optionsRef.value&&!a.optionsPropsRef.value.static&&e.stopPropagation(),a.closeCombobox(),u(()=>a.inputRef.value?.focus({preventScroll:!0}));return}}let c=re(x(()=>({as:e.as,type:t.type})),a.buttonRef);return()=>{let r={open:a.comboboxState.value===0,disabled:a.disabled.value,value:a.value.value},{...l}=e;return z({ourProps:{ref:a.buttonRef,id:i,type:c.value,tabindex:`-1`,"aria-haspopup":`listbox`,"aria-controls":B(a.optionsRef)?.id,"aria-expanded":a.comboboxState.value===0,"aria-labelledby":a.labelRef.value?[B(a.labelRef)?.id,i].join(` `):void 0,disabled:a.disabled.value===!0?!0:void 0,onKeydown:s,onClick:o},theirProps:l,slot:r,attrs:t,slots:n,name:`ComboboxButton`})}}}),ft=m({name:`ComboboxInput`,props:{as:{type:[Object,String],default:`input`},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},displayValue:{type:Function},defaultValue:{type:String,default:void 0},id:{type:String,default:null}},emits:{change:e=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:a}){let o=e.id??`headlessui-combobox-input-${L()}`,s=Y(`ComboboxInput`),c=x(()=>je(B(s.inputRef))),l={value:!1};a({el:s.inputRef,$el:s.inputRef});function d(){s.change(null);let e=B(s.optionsRef);e&&(e.scrollTop=0),s.goToOption(J.Nothing)}let f=x(()=>{let t=s.value.value;return B(s.inputRef)?e.displayValue!==void 0&&t!==void 0?e.displayValue(t)??``:typeof t==`string`?t:``:``});i(()=>{D([f,s.comboboxState,c],([e,t],[n,r])=>{if(l.value)return;let i=B(s.inputRef);i&&((r===0&&t===1||e!==n)&&(i.value=e),requestAnimationFrame(()=>{if(l.value||!i||c.value?.activeElement!==i)return;let{selectionStart:e,selectionEnd:t}=i;Math.abs((t??0)-(e??0))===0&&e===0&&i.setSelectionRange(i.value.length,i.value.length)}))},{immediate:!0}),D([s.comboboxState],([e],[t])=>{if(e===0&&t===1){if(l.value)return;let e=B(s.inputRef);if(!e)return;let t=e.value,{selectionStart:n,selectionEnd:r,selectionDirection:i}=e;e.value=``,e.value=t,i===null?e.setSelectionRange(n,r):e.setSelectionRange(n,r,i)}})});let p=v(!1);function m(){p.value=!0}function h(){W().nextFrame(()=>{p.value=!1})}let g=De();function _(e){switch(l.value=!0,g(()=>{l.value=!1}),e.key){case V.Enter:if(l.value=!1,s.comboboxState.value!==0||p.value)return;if(e.preventDefault(),e.stopPropagation(),s.activeOptionIndex.value===null){s.closeCombobox();return}s.selectActiveOption(),s.mode.value===0&&s.closeCombobox();break;case V.ArrowDown:return l.value=!1,e.preventDefault(),e.stopPropagation(),F(s.comboboxState.value,{0:()=>s.goToOption(J.Next),1:()=>s.openCombobox()});case V.ArrowUp:return l.value=!1,e.preventDefault(),e.stopPropagation(),F(s.comboboxState.value,{0:()=>s.goToOption(J.Previous),1:()=>{s.openCombobox(),u(()=>{s.value.value||s.goToOption(J.Last)})}});case V.Home:if(e.shiftKey)break;return l.value=!1,e.preventDefault(),e.stopPropagation(),s.goToOption(J.First);case V.PageUp:return l.value=!1,e.preventDefault(),e.stopPropagation(),s.goToOption(J.First);case V.End:if(e.shiftKey)break;return l.value=!1,e.preventDefault(),e.stopPropagation(),s.goToOption(J.Last);case V.PageDown:return l.value=!1,e.preventDefault(),e.stopPropagation(),s.goToOption(J.Last);case V.Escape:if(l.value=!1,s.comboboxState.value!==0)return;e.preventDefault(),s.optionsRef.value&&!s.optionsPropsRef.value.static&&e.stopPropagation(),s.nullable.value&&s.mode.value===0&&s.value.value===null&&d(),s.closeCombobox();break;case V.Tab:if(l.value=!1,s.comboboxState.value!==0)return;s.mode.value===0&&s.activationTrigger.value!==1&&s.selectActiveOption(),s.closeCombobox();break}}function y(e){t(`change`,e),s.nullable.value&&s.mode.value===0&&e.target.value===``&&d(),s.openCombobox()}function b(e){var t,n;let r=e.relatedTarget??q.find(t=>t!==e.currentTarget);if(l.value=!1,!((t=B(s.optionsRef))!=null&&t.contains(r))&&!((n=B(s.buttonRef))!=null&&n.contains(r))&&s.comboboxState.value===0)return e.preventDefault(),s.mode.value===0&&(s.nullable.value&&s.value.value===null?d():s.activationTrigger.value!==1&&s.selectActiveOption()),s.closeCombobox()}function S(e){var t,n;let r=e.relatedTarget??q.find(t=>t!==e.currentTarget);(t=B(s.buttonRef))!=null&&t.contains(r)||(n=B(s.optionsRef))!=null&&n.contains(r)||s.disabled.value||s.immediate.value&&s.comboboxState.value!==0&&(s.openCombobox(),W().nextFrame(()=>{s.setActivationTrigger(1)}))}let C=x(()=>e.defaultValue??(s.defaultValue.value===void 0?null:e.displayValue?.call(e,s.defaultValue.value))??s.defaultValue.value??``);return()=>{let t={open:s.comboboxState.value===0},{displayValue:i,onChange:a,...c}=e;return z({ourProps:{"aria-controls":s.optionsRef.value?.id,"aria-expanded":s.comboboxState.value===0,"aria-activedescendant":s.activeOptionIndex.value===null?void 0:s.virtual.value?s.options.value.find(e=>!s.virtual.value.disabled(e.dataRef.value)&&s.compare(e.dataRef.value,s.virtual.value.options[s.activeOptionIndex.value]))?.id:s.options.value[s.activeOptionIndex.value]?.id,"aria-labelledby":B(s.labelRef)?.id??B(s.buttonRef)?.id,"aria-autocomplete":`list`,id:o,onCompositionstart:m,onCompositionend:h,onKeydown:_,onInput:y,onFocus:S,onBlur:b,role:`combobox`,type:n.type??`text`,tabIndex:0,ref:s.inputRef,defaultValue:C.value,disabled:s.disabled.value===!0?!0:void 0},theirProps:c,slot:t,attrs:n,slots:r,features:P.RenderStrategy|P.Static,name:`ComboboxInput`})}}}),pt=m({name:`ComboboxOptions`,props:{as:{type:[Object,String],default:`ul`},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},hold:{type:[Boolean],default:!1}},setup(e,{attrs:t,slots:n,expose:r}){let i=Y(`ComboboxOptions`),a=`headlessui-combobox-options-${L()}`;r({el:i.optionsRef,$el:i.optionsRef}),o(()=>{i.optionsPropsRef.value.static=e.static}),o(()=>{i.optionsPropsRef.value.hold=e.hold});let s=ae(),c=x(()=>s===null?i.comboboxState.value===0:(s.value&R.Open)===R.Open);qe({container:x(()=>B(i.optionsRef)),enabled:x(()=>i.comboboxState.value===0),accept(e){return e.getAttribute(`role`)===`option`?NodeFilter.FILTER_REJECT:e.hasAttribute(`role`)?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(e){e.setAttribute(`role`,`none`)}});function l(e){e.preventDefault()}return()=>{let r={open:i.comboboxState.value===0};return z({ourProps:{"aria-labelledby":B(i.labelRef)?.id??B(i.buttonRef)?.id,id:a,ref:i.optionsRef,role:`listbox`,"aria-multiselectable":i.mode.value===1?!0:void 0,onMousedown:l},theirProps:H(e,[`hold`]),slot:r,attrs:t,slots:i.virtual.value&&i.comboboxState.value===0?{...n,default:()=>[d(lt,{},n.default)]}:n,features:P.RenderStrategy|P.Static,visible:c.value,name:`ComboboxOptions`})}}}),mt=m({name:`ComboboxOption`,props:{as:{type:[Object,String],default:`li`},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},order:{type:[Number],default:null}},setup(e,{slots:n,attrs:r,expose:s}){let c=Y(`ComboboxOption`),l=`headlessui-combobox-option-${L()}`,d=v(null),f=x(()=>e.disabled);s({el:d,$el:d});let p=x(()=>c.virtual.value?c.activeOptionIndex.value===c.calculateIndex(e.value):c.activeOptionIndex.value===null?!1:c.options.value[c.activeOptionIndex.value]?.id===l),m=x(()=>c.isSelected(e.value)),h=t(ct,null),g=x(()=>({disabled:e.disabled,value:e.value,domRef:d,order:x(()=>e.order)}));i(()=>c.registerOption(l,g)),a(()=>c.unregisterOption(l,p.value)),o(()=>{let e=B(d);e&&h?.value.measureElement(e)}),o(()=>{c.comboboxState.value===0&&p.value&&(c.virtual.value||c.activationTrigger.value!==0&&u(()=>{var e;return((e=B(d))?.scrollIntoView)?.call(e,{block:`nearest`})}))});function _(e){e.preventDefault(),e.button===Xe.Left&&(f.value||(c.selectOption(l),He()||requestAnimationFrame(()=>B(c.inputRef)?.focus({preventScroll:!0})),c.mode.value===0&&c.closeCombobox()))}function y(){var t;if(e.disabled||(t=c.virtual.value)!=null&&t.disabled(e.value))return c.goToOption(J.Nothing);let n=c.calculateIndex(e.value);c.goToOption(J.Specific,n)}let b=Ke();function S(e){b.update(e)}function C(t){var n;if(!b.wasMoved(t)||e.disabled||(n=c.virtual.value)!=null&&n.disabled(e.value)||p.value)return;let r=c.calculateIndex(e.value);c.goToOption(J.Specific,r,0)}function w(t){var n;b.wasMoved(t)&&(e.disabled||(n=c.virtual.value)!=null&&n.disabled(e.value)||p.value&&(c.optionsPropsRef.value.hold||c.goToOption(J.Nothing)))}return()=>{let{disabled:t}=e,i={active:p.value,selected:m.value,disabled:t};return z({ourProps:{id:l,ref:d,role:`option`,tabIndex:t===!0?void 0:-1,"aria-disabled":t===!0?!0:void 0,"aria-selected":m.value,disabled:void 0,onMousedown:_,onFocus:y,onPointerenter:S,onMouseenter:S,onPointermove:C,onMousemove:C,onPointerleave:w,onMouseleave:w},theirProps:H(e,[`order`,`value`]),slot:i,attrs:r,slots:n,name:`ComboboxOption`})}}});function ht(e){let t={called:!1};return(...n)=>{if(!t.called)return t.called=!0,e(...n)}}function gt(e,...t){e&&t.length>0&&e.classList.add(...t)}function X(e,...t){e&&t.length>0&&e.classList.remove(...t)}var _t=(e=>(e.Finished=`finished`,e.Cancelled=`cancelled`,e))(_t||{});function vt(e,t){let n=W();if(!e)return n.dispose;let{transitionDuration:r,transitionDelay:i}=getComputedStyle(e),[a,o]=[r,i].map(e=>{let[t=0]=e.split(`,`).filter(Boolean).map(e=>e.includes(`ms`)?parseFloat(e):parseFloat(e)*1e3).sort((e,t)=>t-e);return t});return a===0?t(`finished`):n.setTimeout(()=>t(`finished`),a+o),n.add(()=>t(`cancelled`)),n.dispose}function yt(e,t,n,r,i,a){let o=W(),s=a===void 0?()=>{}:ht(a);return X(e,...i),gt(e,...t,...n),o.nextFrame(()=>{X(e,...n),gt(e,...r),o.add(vt(e,n=>(X(e,...r,...t),gt(e,...i),s(n))))}),o.add(()=>X(e,...t,...n,...r,...i)),o.add(()=>s(`cancelled`)),o.dispose}function Z(e=``){return e.split(/\s+/).filter(e=>e.length>1)}var Q=Symbol(`TransitionContext`),bt=(e=>(e.Visible=`visible`,e.Hidden=`hidden`,e))(bt||{});function xt(){return t(Q,null)!==null}function St(){let e=t(Q,null);if(e===null)throw Error(`A is used but it is missing a parent .`);return e}function Ct(){let e=t(wt,null);if(e===null)throw Error(`A is used but it is missing a parent .`);return e}var wt=Symbol(`NestingContext`);function $(e){return`children`in e?$(e.children):e.value.filter(({state:e})=>e===`visible`).length>0}function Tt(e){let t=v([]),n=v(!1);i(()=>n.value=!0),a(()=>n.value=!1);function r(r,i=I.Hidden){let a=t.value.findIndex(({id:e})=>e===r);a!==-1&&(F(i,{[I.Unmount](){t.value.splice(a,1)},[I.Hidden](){t.value[a].state=`hidden`}}),!$(t)&&n.value&&e?.())}function o(e){let n=t.value.find(({id:t})=>t===e);return n?n.state!==`visible`&&(n.state=`visible`):t.value.push({id:e,state:`visible`}),()=>r(e,I.Unmount)}return{children:t,register:o,unregister:r}}var Et=P.RenderStrategy,Dt=m({props:{as:{type:[Object,String],default:`div`},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:``},enterFrom:{type:[String],default:``},enterTo:{type:[String],default:``},entered:{type:[String],default:``},leave:{type:[String],default:``},leaveFrom:{type:[String],default:``},leaveTo:{type:[String],default:``}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:s}){let c=v(0);function l(){c.value|=R.Opening,t(`beforeEnter`)}function u(){c.value&=~R.Opening,t(`afterEnter`)}function f(){c.value|=R.Closing,t(`beforeLeave`)}function m(){c.value&=~R.Closing,t(`afterLeave`)}if(!xt()&&ie())return()=>d(Ot,{...e,onBeforeEnter:l,onAfterEnter:u,onBeforeLeave:f,onAfterLeave:m},r);let h=v(null),_=x(()=>e.unmount?I.Unmount:I.Hidden);s({el:h,$el:h});let{show:y,appear:b}=St(),{register:S,unregister:C}=Ct(),w=v(y.value?`visible`:`hidden`),T={value:!0},E=L(),O={value:!1},k=Tt(()=>{!O.value&&w.value!==`hidden`&&(w.value=`hidden`,C(E),m())});i(()=>{a(S(E))}),o(()=>{if(_.value===I.Hidden&&E){if(y.value&&w.value!==`visible`){w.value=`visible`;return}F(w.value,{hidden:()=>C(E),visible:()=>S(E)})}});let A=Z(e.enter),j=Z(e.enterFrom),M=Z(e.enterTo),N=Z(e.entered),ee=Z(e.leave),te=Z(e.leaveFrom),P=Z(e.leaveTo);i(()=>{o(()=>{if(w.value===`visible`){let e=B(h);if(e instanceof Comment&&e.data===``)throw Error("Did you forget to passthrough the `ref` to the actual DOM node?")}})});function re(e){let t=T.value&&!b.value,n=B(h);!n||!(n instanceof HTMLElement)||t||(O.value=!0,y.value&&l(),y.value||f(),e(y.value?yt(n,A,j,M,N,e=>{O.value=!1,e===_t.Finished&&u()}):yt(n,ee,te,P,N,e=>{O.value=!1,e===_t.Finished&&($(k)||(w.value=`hidden`,C(E),m()))})))}return i(()=>{D([y],(e,t,n)=>{re(n),T.value=!1},{immediate:!0})}),p(wt,k),ne(x(()=>F(w.value,{visible:R.Open,hidden:R.Closed})|c.value)),()=>{let{appear:t,show:i,enter:a,enterFrom:o,enterTo:s,entered:c,leave:l,leaveFrom:u,leaveTo:d,...f}=e,p={ref:h};return z({theirProps:{...f,...b.value&&y.value&&G.isServer?{class:g([n.class,f.class,...A,...j])}:{}},ourProps:p,slot:{},slots:r,attrs:n,features:Et,visible:w.value===`visible`,name:`TransitionChild`})}}}),Ot=m({inheritAttrs:!1,props:{as:{type:[Object,String],default:`div`},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:``},enterFrom:{type:[String],default:``},enterTo:{type:[String],default:``},entered:{type:[String],default:``},leave:{type:[String],default:``},leaveFrom:{type:[String],default:``},leaveTo:{type:[String],default:``}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r}){let a=ae(),s=x(()=>e.show===null&&a!==null?(a.value&R.Open)===R.Open:e.show);o(()=>{if(![!0,!1].includes(s.value))throw Error('A is used but it is missing a `:show="true | false"` prop.')});let c=v(s.value?`visible`:`hidden`),l=Tt(()=>{c.value=`hidden`}),u=v(!0),f={show:s,appear:x(()=>e.appear||!u.value)};return i(()=>{o(()=>{u.value=!1,s.value?c.value=`visible`:$(l)||(c.value=`hidden`)})}),p(wt,l),p(Q,f),()=>{let i=H(e,[`show`,`appear`,`unmount`,`onBeforeEnter`,`onBeforeLeave`,`onAfterEnter`,`onAfterLeave`]),a={unmount:e.unmount};return z({ourProps:{...a,as:`template`},theirProps:{},slot:{},slots:{...r,default:()=>[d(Dt,{onBeforeEnter:()=>t(`beforeEnter`),onAfterEnter:()=>t(`afterEnter`),onBeforeLeave:()=>t(`beforeLeave`),onAfterLeave:()=>t(`afterLeave`),...n,...a,...i},r.default)]},attrs:{},features:Et,visible:c.value===`visible`,name:`Transition`})}}}),kt=[`active`,`checked`,`hint`],At={class:`flex gap-2 items-center`},jt={key:1},Mt=m({__name:`InputComboboxOption`,props:{option:{}},setup(e){return(t,i)=>(c(),j(A(mt),{value:e.option,as:`template`},{default:h(({active:i,selected:a})=>[n(t.$slots,`option`,{option:e.option,active:i,selected:a},()=>[_(`craft-option`,{active:i,checked:a,hint:e.option.data?.hint},[_(`div`,At,[e.option.data?.indicator?(c(),y(`craft-indicator`,f(l({key:0},e.option.data.indicator)),null,16)):N(``,!0),e.option.label.startsWith(`$`)||e.option.label.startsWith(`@`)?(c(),y(`code`,jt,b(e.option.label),1)):(c(),y(E,{key:2},[r(b(e.option.label),1)],64))])],8,kt)])]),_:3},8,[`value`]))}}),Nt={key:1},Pt={class:`group-label`},Ft=te(m({__name:`InputCombobox`,props:{label:{},options:{default:()=>[]},modelValue:{type:[String,Number,Boolean],default:``},requireOptionMatch:{type:Boolean,default:!1},transformModelValue:{type:Function,default:e=>e?e.value:``},class:{type:[Boolean,null,String,Object,Array]},placeholder:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(t,{emit:r}){let i=r,a=t,o=x({get(){let e=null;return a.options.forEach(t=>{t.type===`optgroup`?t.options.forEach(t=>{t.value===a.modelValue&&(e=t)}):t.value===a.modelValue&&(e=t)}),!e&&!a.requireOptionMatch&&(e={label:String(a.modelValue),value:a.modelValue}),e},set(e){i(`update:modelValue`,a.transformModelValue(e))}}),l=s(`reference`),u=v(String(a.modelValue??``)),d=x(()=>l.value?.getBoundingClientRect()||new DOMRect);function f(e,t){let n=String(A(e)).toLowerCase(),r=A(t);return r.label.toLowerCase().includes(n)||r.value.toString().toLowerCase().includes(n)||(r.data?.keywords?.toLowerCase().includes(n)??!1)}function p(e,t){return A(t).map(t=>{if(t.type===`optgroup`){let n=t.options.filter(t=>f(e,t));return n.length>0?{...t,options:n}:null}return f(e,t)?t:null}).filter(e=>e!==null)}let m=x(()=>u.value===``?a.options:p(u,a.options));function S(e){return e?e.label:``}let C=x(()=>[``,`@`,`$`].includes(u.value)?null:{value:u.value,label:u.value});return(r,i)=>(c(),y(`div`,{class:`relative w-full`,ref_key:`reference`,ref:l},[M(A(ut),{modelValue:o.value,"onUpdate:modelValue":i[2]||=e=>o.value=e,disabled:a.disabled},{default:h(()=>[M(A(ft),{onChange:i[0]||=e=>u.value=e.target.value,class:g([`input`,a.class]),"display-value":S,placeholder:t.placeholder},null,8,[`class`,`placeholder`]),M(A(dt),{class:`absolute inset-y-1 right-1 flex items-center`,type:`button`,as:`craft-button`,appearance:`plain`,size:`small`,icon:``,"aria-label":t.label},{default:h(()=>[...i[3]||=[_(`craft-icon`,{name:`chevron-down`,style:{"font-size":`0.8em`}},null,-1)]]),_:1},8,[`aria-label`]),M(A(Ot),{leave:`transition ease-in duration-100`,"leave-from":`opacity-100`,"leave-to":`opacity-0`,onAfterLeave:i[1]||=e=>u.value=``},{default:h(()=>[M(A(pt),{class:`options`,style:e({position:`fixed`,insetInlineStart:`${d.value.left}px`,width:`${d.value.width}px`,insetBlockStart:`${d.value.bottom}px`})},{default:h(()=>[!t.requireOptionMatch&&C.value?(c(),j(Mt,{key:0,option:C.value},null,8,[`option`])):m.value.length===0&&u.value!==``?(c(),y(`div`,Nt,` Nothing found. `)):N(``,!0),(c(!0),y(E,null,ee(m.value,(e,t)=>(c(),y(E,{key:t},[e.type===`optgroup`?(c(),y(E,{key:0},[_(`div`,Pt,b(e.label),1),(c(!0),y(E,null,ee(e.options,(e,t)=>n(r.$slots,`option`,{key:t,option:e},()=>[M(Mt,{option:e},null,8,[`option`])],!0)),128))],64)):n(r.$slots,`option`,{key:1,option:e},()=>[M(Mt,{option:e},null,8,[`option`])],!0)],64))),128))]),_:3},8,[`style`])]),_:3})]),_:3},8,[`modelValue`,`disabled`])],512))}}),[[`__scopeId`,`data-v-60ff9649`]]);export{Ft as t};
\ No newline at end of file
diff --git a/resources/build/assets/InputCombobox-DyQ9GfLq.js b/resources/build/assets/InputCombobox-DyQ9GfLq.js
deleted file mode 100644
index 8652a34dcdd..00000000000
--- a/resources/build/assets/InputCombobox-DyQ9GfLq.js
+++ /dev/null
@@ -1,4 +0,0 @@
-import{$ as e,B as t,E as n,I as r,J as i,L as a,N as o,P as s,Q as c,R as l,T as u,V as d,X as f,Y as p,_ as m,at as h,b as g,ct as _,dt as v,et as y,g as b,it as x,j as S,k as C,m as w,ot as T,q as E,st as D,t as O,tt as k,ut as A,v as j,w as M,x as N,y as ee,z as P}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{a as te,c as F,d as ne,f as I,i as re,l as L,m as R,n as z,o as B,p as V,r as ie,s as ae,t as H,u as U}from"./keyboard-CnTkv6a2.js";function W(e,t,n){let r=n.initialDeps??[],i,a=!0;function o(){let o;n.key&&n.debug?.call(n)&&(o=Date.now());let s=e();if(!(s.length!==r.length||s.some((e,t)=>r[t]!==e)))return i;r=s;let c;if(n.key&&n.debug?.call(n)&&(c=Date.now()),i=t(...s),n.key&&n.debug?.call(n)){let e=Math.round((Date.now()-o)*100)/100,t=Math.round((Date.now()-c)*100)/100,r=t/16,i=(e,t)=>{for(e=String(e);e.length{r=e},o}function oe(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var se=(e,t)=>Math.abs(e-t)<1.01,ce=(e,t,n)=>{let r;return function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)}},le=e=>{let{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},ue=e=>e,de=e=>{let t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1),r=[];for(let e=t;e<=n;e++)r.push(e);return r},fe=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(le(n)),!r.ResizeObserver)return()=>{};let a=new r.ResizeObserver(t=>{let r=()=>{let e=t[0];if(e?.borderBoxSize){let t=e.borderBoxSize[0];if(t){i({width:t.inlineSize,height:t.blockSize});return}}i(le(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(r):r()});return a.observe(n,{box:`border-box`}),()=>{a.unobserve(n)}},pe={passive:!0},me=typeof window>`u`?!0:`onscrollend`in window,he=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=0,a=e.options.useScrollendEvent&&me?()=>void 0:ce(r,()=>{t(i,!1)},e.options.isScrollingResetDelay),o=r=>()=>{let{horizontal:o,isRtl:s}=e.options;i=o?n.scrollLeft*(s&&-1||1):n.scrollTop,a(),t(i,r)},s=o(!0),c=o(!1);n.addEventListener(`scroll`,s,pe);let l=e.options.useScrollendEvent&&me;return l&&n.addEventListener(`scrollend`,c,pe),()=>{n.removeEventListener(`scroll`,s),l&&n.removeEventListener(`scrollend`,c)}},ge=(e,t,n)=>{if(t?.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}return e[n.options.horizontal?`offsetWidth`:`offsetHeight`]},_e=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;let o=e+t;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:o,behavior:n})},ve=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.currentScrollToIndex=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.laneAssignments=new Map,this.pendingMeasuredCacheIndexes=[],this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let e=null,t=()=>e||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:e=new this.targetWindow.ResizeObserver(e=>{e.forEach(e=>{let t=()=>{this._measureElement(e.target,e)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(t):t()})}));return{disconnect:()=>{var n;(n=t())==null||n.disconnect(),e=null},observe:e=>t()?.observe(e,{box:`border-box`}),unobserve:e=>t()?.unobserve(e)}})(),this.range=null,this.setOptions=e=>{Object.entries(e).forEach(([t,n])=>{n===void 0&&delete e[t]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:ue,rangeExtractor:de,onChange:()=>{},measureElement:ge,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...e}},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=W(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{let e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e){this.maybeNotify();return}this.scrollElement=e,this.scrollElement&&`ownerDocument`in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=this.scrollElement?.window??null,this.elementsCache.forEach(e=>{this.observer.observe(e)}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{this.scrollAdjustments=0,this.scrollDirection=t?this.getScrollOffset()this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(e,t)=>{let n=new Map,r=new Map;for(let i=t-1;i>=0;i--){let t=e[i];if(n.has(t.lane))continue;let a=r.get(t.lane);if(a==null||t.end>a.end?r.set(t.lane,t):t.ende.end===t.end?e.index-t.index:e.end-t.end)[0]:void 0},this.getMeasurementOptions=W(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes],(e,t,n,r,i,a)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a}),{key:!1}),this.getMeasurements=W(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a},o)=>{if(!i)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(let t of this.laneAssignments.keys())t>=e&&this.laneAssignments.delete(t);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMeasuredCacheIndexes=[]),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let s=this.lanesSettling?0:this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[],this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1);let c=this.measurementsCache.slice(0,s),l=Array(a).fill(void 0);for(let e=0;e1){s=a;let e=l[s],r=e===void 0?void 0:c[e];u=r?r.end+this.options.gap:t+n}else{let e=this.options.lanes===1?c[i-1]:this.getFurthestMeasurement(c,i);u=e?e.end+this.options.gap:t+n,s=e?e.lane:i%this.options.lanes,this.options.lanes>1&&this.laneAssignments.set(i,s)}let d=o.get(e),f=typeof d==`number`?d:this.options.estimateSize(i),p=u+f;c[i]={index:i,start:u,size:f,end:p,key:e,lane:s},l[s]=i}return this.measurementsCache=c,c},{key:!1,debug:()=>this.options.debug}),this.calculateRange=W(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>this.range=e.length>0&&t>0?be({measurements:e,outerSize:t,scrollOffset:n,lanes:r}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=W(()=>{let e=null,t=null,n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]},(e,t,n,r,i)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this._measureElement=(e,t)=>{let n=this.indexFromElement(e),r=this.measurementsCache[n];if(!r)return;let i=r.key,a=this.elementsCache.get(i);a!==e&&(a&&this.observer.unobserve(a),this.observer.observe(e),this.elementsCache.set(i,e)),e.isConnected&&this.resizeItem(n,this.options.measureElement(e,t,this))},this.resizeItem=(e,t)=>{let n=this.measurementsCache[e];if(!n)return;let r=t-(this.itemSizeCache.get(n.key)??n.size);r!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange===void 0?n.start{if(!e){this.elementsCache.forEach((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))});return}this._measureElement(e,void 0)},this.getVirtualItems=W(()=>[this.getVirtualIndexes(),this.getMeasurements()],(e,t)=>{let n=[];for(let r=0,i=e.length;rthis.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length!==0)return oe(t[ye(0,t.length-1,e=>oe(t[e]).start,e)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if(`scrollHeight`in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{let e=this.scrollElement.document.documentElement;return this.options.horizontal?e.scrollWidth-this.scrollElement.innerWidth:e.scrollHeight-this.scrollElement.innerHeight}},this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;let r=this.getSize(),i=this.getScrollOffset();t===`auto`&&(t=e>=i+r?`end`:`start`),t===`center`?e+=(n-r)/2:t===`end`&&(e-=r);let a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.measurementsCache[e];if(!n)return;let r=this.getSize(),i=this.getScrollOffset();if(t===`auto`)if(n.end>=i+r-this.options.scrollPaddingEnd)t=`end`;else if(n.start<=i+this.options.scrollPaddingStart)t=`start`;else return[i,t];if(t===`end`&&e===this.options.count-1)return[this.getMaxScrollOffset(),t];let a=t===`end`?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,n.size),t]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(e,{align:t=`start`,behavior:n}={})=>{n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})},this.scrollToIndex=(e,{align:t=`auto`,behavior:n}={})=>{n===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),e=Math.max(0,Math.min(e,this.options.count-1)),this.currentScrollToIndex=e;let r=0,i=t=>{if(!this.targetWindow)return;let r=this.getOffsetForIndex(e,t);if(!r){console.warn(`Failed to get offset for index:`,e);return}let[i,o]=r;this._scrollToOffset(i,{adjustments:void 0,behavior:n}),this.targetWindow.requestAnimationFrame(()=>{let t=()=>{if(this.currentScrollToIndex!==e)return;let t=this.getScrollOffset(),n=this.getOffsetForIndex(e,o);if(!n){console.warn(`Failed to get offset for index:`,e);return}se(n[0],t)||a(o)};this.isDynamicMode()?this.targetWindow.requestAnimationFrame(t):t()})},a=t=>{this.targetWindow&&this.currentScrollToIndex===e&&(r++,r<10?this.targetWindow.requestAnimationFrame(()=>i(t)):console.warn(`Failed to scroll to index ${e} after 10 attempts.`))};i(t)},this.scrollBy=(e,{behavior:t}={})=>{t===`smooth`&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})},this.getTotalSize=()=>{let e=this.getMeasurements(),t;if(e.length===0)t=this.options.paddingStart;else if(this.options.lanes===1)t=e[e.length-1]?.end??0;else{let n=Array(this.options.lanes).fill(null),r=e.length-1;for(;r>=0&&n.some(e=>e===null);){let t=e[r];n[t.lane]===null&&(n[t.lane]=t.end),r--}t=Math.max(...n.filter(e=>e!==null))}return Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)},this.measure=()=>{this.itemSizeCache=new Map,this.laneAssignments=new Map,this.notify(!1)},this.setOptions(e)}},ye=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(ar)t=i-1;else return i}return e>0?e-1:0};function be({measurements:e,outerSize:t,scrollOffset:n,lanes:r}){let i=e.length-1,a=t=>e[t].start;if(e.length<=r)return{startIndex:0,endIndex:i};let o=ye(0,i,a,n),s=o;if(r===1)for(;s1){let a=Array(r).fill(0);for(;se=0&&c.some(e=>e>=n);){let t=e[o];c[t.lane]=t.start,o--}o=Math.max(0,o-o%r),s=Math.min(i,s+(r-1-s%r))}return{startIndex:o,endIndex:s}}function xe(e){let t=new ve(v(e)),n=D(t),r=t._didMount();return i(()=>v(e).getScrollElement(),e=>{e&&t._willUpdate()},{immediate:!0}),i(()=>v(e),e=>{t.setOptions({...e,onChange:(t,r)=>{var i;A(n),(i=e.onChange)==null||i.call(e,t,r)}}),t._willUpdate(),A(n)},{immediate:!0}),x(r),n}function Se(e){return xe(m(()=>({observeElementRect:fe,observeElementOffset:he,scrollToFn:_e,...v(e)})))}function Ce(e,t,n){let r=T(n?.value),i=m(()=>e.value!==void 0);return[m(()=>i.value?e.value:r.value),function(e){return i.value||(r.value=e),t?.(e)}]}function we(e){typeof queueMicrotask==`function`?queueMicrotask(e):Promise.resolve().then(e).catch(e=>setTimeout(()=>{throw e}))}function G(){let e=[],t={addEventListener(e,n,r,i){return e.addEventListener(n,r,i),t.add(()=>e.removeEventListener(n,r,i))},requestAnimationFrame(...e){let n=requestAnimationFrame(...e);t.add(()=>cancelAnimationFrame(n))},nextFrame(...e){t.requestAnimationFrame(()=>{t.requestAnimationFrame(...e)})},setTimeout(...e){let n=setTimeout(...e);t.add(()=>clearTimeout(n))},microTask(...e){let n={current:!0};return we(()=>{n.current&&e[0]()}),t.add(()=>{n.current=!1})},style(e,t,n){let r=e.style.getPropertyValue(t);return Object.assign(e.style,{[t]:n}),this.add(()=>{Object.assign(e.style,{[t]:r})})},group(e){let t=G();return e(t),this.add(()=>t.dispose())},add(t){return e.push(t),()=>{let n=e.indexOf(t);if(n>=0)for(let t of e.splice(n,1))t()}},dispose(){for(let t of e.splice(0))t()}};return t}function Te(){let e=G();return a(()=>e.dispose()),e}function Ee(){let e=Te();return t=>{e.dispose(),e.nextFrame(t)}}var De=Object.defineProperty,Oe=(e,t,n)=>t in e?De(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ke=(e,t,n)=>(Oe(e,typeof t==`symbol`?t:t+``,n),n),K=new class{constructor(){ke(this,`current`,this.detect()),ke(this,`currentId`,0)}set(e){this.current!==e&&(this.currentId=0,this.current=e)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current===`server`}get isClient(){return this.current===`client`}detect(){return typeof window>`u`||typeof document>`u`?`server`:`client`}};function Ae(e){if(K.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e!=null&&e.hasOwnProperty(`value`)){let t=V(e);if(t)return t.ownerDocument}return document}var je=[`[contentEditable=true]`,`[tabindex]`,`a[href]`,`area[href]`,`button:not([disabled])`,`iframe`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`].map(e=>`${e}:not([tabindex='-1'])`).join(`,`),Me=(e=>(e[e.First=1]=`First`,e[e.Previous=2]=`Previous`,e[e.Next=4]=`Next`,e[e.Last=8]=`Last`,e[e.WrapAround=16]=`WrapAround`,e[e.NoScroll=32]=`NoScroll`,e))(Me||{}),Ne=(e=>(e[e.Error=0]=`Error`,e[e.Overflow=1]=`Overflow`,e[e.Success=2]=`Success`,e[e.Underflow=3]=`Underflow`,e))(Ne||{}),Pe=(e=>(e[e.Previous=-1]=`Previous`,e[e.Next=1]=`Next`,e))(Pe||{}),Fe=(e=>(e[e.Strict=0]=`Strict`,e[e.Loose=1]=`Loose`,e))(Fe||{});function Ie(e,t=0){return e===Ae(e)?.body?!1:I(t,{0(){return e.matches(je)},1(){let t=e;for(;t!==null;){if(t.matches(je))return!0;t=t.parentElement}return!1}})}var Le=(e=>(e[e.Keyboard=0]=`Keyboard`,e[e.Mouse=1]=`Mouse`,e))(Le||{});typeof window<`u`&&typeof document<`u`&&(document.addEventListener(`keydown`,e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible=``)},!0),document.addEventListener(`click`,e=>{e.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:e.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible=``)},!0)),[`textarea`,`input`].join(`,`);function Re(e,t=e=>e){return e.slice().sort((e,n)=>{let r=t(e),i=t(n);if(r===null||i===null)return 0;let a=r.compareDocumentPosition(i);return a&Node.DOCUMENT_POSITION_FOLLOWING?-1:a&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function ze(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function Be(){return/Android/gi.test(window.navigator.userAgent)}function Ve(){return ze()||Be()}function q(e,t,n){K.isServer||p(r=>{document.addEventListener(e,t,n),r(()=>document.removeEventListener(e,t,n))})}function He(e,t,n){K.isServer||p(r=>{window.addEventListener(e,t,n),r(()=>window.removeEventListener(e,t,n))})}function Ue(e,t,n=m(()=>!0)){function r(r,i){if(!n.value||r.defaultPrevented)return;let a=i(r);if(a===null||!a.getRootNode().contains(a))return;let o=function e(t){return typeof t==`function`?e(t()):Array.isArray(t)||t instanceof Set?t:[t]}(e);for(let e of o){if(e===null)continue;let t=e instanceof HTMLElement?e:V(e);if(t!=null&&t.contains(a)||r.composed&&r.composedPath().includes(t))return}return!Ie(a,Fe.Loose)&&a.tabIndex!==-1&&r.preventDefault(),t(r,a)}let i=T(null);q(`pointerdown`,e=>{n.value&&(i.value=e.composedPath?.call(e)?.[0]||e.target)},!0),q(`mousedown`,e=>{n.value&&(i.value=e.composedPath?.call(e)?.[0]||e.target)},!0),q(`click`,e=>{Ve()||(i.value&&=(r(e,()=>i.value),null))},!0),q(`touchend`,e=>r(e,()=>e.target instanceof HTMLElement?e.target:null),!0),He(`blur`,e=>r(e,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function We(e){return[e.screenX,e.screenY]}function Ge(){let e=T([-1,-1]);return{wasMoved(t){let n=We(t);return e.value[0]===n[0]&&e.value[1]===n[1]?!1:(e.value=n,!0)},update(t){e.value=We(t)}}}function Ke({container:e,accept:t,walk:n,enabled:r}){p(()=>{let i=e.value;if(!i||r!==void 0&&!r.value)return;let a=Ae(e);if(!a)return;let o=Object.assign(e=>t(e),{acceptNode:t}),s=a.createTreeWalker(i,NodeFilter.SHOW_ELEMENT,o,!1);for(;s.nextNode();)n(s.currentNode)})}var qe=(e=>(e[e.None=1]=`None`,e[e.Focusable=2]=`Focusable`,e[e.Hidden=4]=`Hidden`,e))(qe||{}),Je=n({name:`Hidden`,props:{as:{type:[Object,String],default:`div`},features:{type:Number,default:1}},setup(e,{slots:t,attrs:n}){return()=>{let{features:r,...i}=e;return B({ourProps:{"aria-hidden":(r&2)==2?!0:i[`aria-hidden`]??void 0,hidden:(r&4)==4?!0:void 0,style:{position:`fixed`,top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`,...(r&4)==4&&(r&2)!=2&&{display:`none`}}},theirProps:i,slot:{},attrs:n,slots:t,name:`Hidden`})}}}),Ye=(e=>(e[e.Left=0]=`Left`,e[e.Right=2]=`Right`,e))(Ye||{});function Xe(e){function t(){document.readyState!==`loading`&&(e(),document.removeEventListener(`DOMContentLoaded`,t))}typeof window<`u`&&typeof document<`u`&&(document.addEventListener(`DOMContentLoaded`,t),t())}var J=[];Xe(()=>{function e(e){e.target instanceof HTMLElement&&e.target!==document.body&&J[0]!==e.target&&(J.unshift(e.target),J=J.filter(e=>e!=null&&e.isConnected),J.splice(10))}window.addEventListener(`click`,e,{capture:!0}),window.addEventListener(`mousedown`,e,{capture:!0}),window.addEventListener(`focus`,e,{capture:!0}),document.body.addEventListener(`click`,e,{capture:!0}),document.body.addEventListener(`mousedown`,e,{capture:!0}),document.body.addEventListener(`focus`,e,{capture:!0})});function Ze(e){throw Error(`Unexpected object: `+e)}var Y=(e=>(e[e.First=0]=`First`,e[e.Previous=1]=`Previous`,e[e.Next=2]=`Next`,e[e.Last=3]=`Last`,e[e.Specific=4]=`Specific`,e[e.Nothing=5]=`Nothing`,e))(Y||{});function Qe(e,t){let n=t.resolveItems();if(n.length<=0)return null;let r=t.resolveActiveIndex(),i=r??-1;switch(e.focus){case 0:for(let e=0;e=0;--e)if(!t.resolveDisabled(n[e],e,n))return e;return r;case 2:for(let e=i+1;e=0;--e)if(!t.resolveDisabled(n[e],e,n))return e;return r;case 4:for(let r=0;r(e[e.Open=0]=`Open`,e[e.Closed=1]=`Closed`,e))(rt||{}),it=(e=>(e[e.Single=0]=`Single`,e[e.Multi=1]=`Multi`,e))(it||{}),at=(e=>(e[e.Pointer=0]=`Pointer`,e[e.Focus=1]=`Focus`,e[e.Other=2]=`Other`,e))(at||{}),ot=Symbol(`ComboboxContext`);function X(e){let t=S(ot,null);if(t===null){let t=Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,X),t}return t}var st=Symbol(`VirtualContext`),ct=n({name:`VirtualProvider`,setup(e,{slots:t}){let n=X(`VirtualProvider`),r=m(()=>{let e=V(n.optionsRef);if(!e)return{start:0,end:0};let t=window.getComputedStyle(e);return{start:parseFloat(t.paddingBlockStart||t.paddingTop),end:parseFloat(t.paddingBlockEnd||t.paddingBottom)}}),a=Se(m(()=>({scrollPaddingStart:r.value.start,scrollPaddingEnd:r.value.end,count:n.virtual.value.options.length,estimateSize(){return 40},getScrollElement(){return V(n.optionsRef)},overscan:12}))),o=m(()=>n.virtual.value?.options),s=T(0);return i([o],()=>{s.value+=1}),P(st,n.virtual.value?a:null),()=>[C(`div`,{style:{position:`relative`,width:`100%`,height:`${a.value.getTotalSize()}px`},ref:e=>{if(e){if(typeof process<`u`&&{}.JEST_WORKER_ID!==void 0||n.activationTrigger.value===0)return;n.activeOptionIndex.value!==null&&n.virtual.value.options.length>n.activeOptionIndex.value&&a.value.scrollToIndex(n.activeOptionIndex.value)}}},a.value.getVirtualItems().map(e=>b(t.default({option:n.virtual.value.options[e.index],open:n.comboboxState.value===0})[0],{key:`${s.value}-${e.index}`,"data-index":e.index,"aria-setsize":n.virtual.value.options.length,"aria-posinset":e.index+1,style:{position:`absolute`,top:0,left:0,transform:`translateY(${e.start}px)`,overflowAnchor:`none`}})))]}}),lt=n({name:`Combobox`,emits:{"update:modelValue":e=>!0},props:{as:{type:[Object,String],default:`template`},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],nullable:!0,default:null},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},nullable:{type:Boolean,default:!1},multiple:{type:[Boolean],default:!1},immediate:{type:[Boolean],default:!1},virtual:{type:Object,default:null}},inheritAttrs:!1,setup(e,{slots:t,attrs:n,emit:a}){let o=T(1),s=T(null),c=T(null),l=T(null),u=T(null),d=T({static:!1,hold:!1}),f=T([]),p=T(null),g=T(2),v=T(!1);function y(e=e=>e){let t=p.value===null?null:f.value[p.value],n=e(f.value.slice()),r=n.length>0&&n[0].dataRef.order.value!==null?n.sort((e,t)=>e.dataRef.order.value-t.dataRef.order.value):Re(n,e=>V(e.dataRef.domRef)),i=t?r.indexOf(t):null;return i===-1&&(i=null),{options:r,activeOptionIndex:i}}let b=m(()=>+!!e.multiple),x=m(()=>e.nullable),[S,E]=Ce(m(()=>e.modelValue),e=>a(`update:modelValue`,e),m(()=>e.defaultValue)),D=m(()=>S.value===void 0?I(b.value,{1:[],0:void 0}):S.value),O=null,k=null;function A(e){return I(b.value,{0(){return E?.(e)},1:()=>{let t=_(j.value.value).slice(),n=_(e),r=t.findIndex(e=>j.compare(n,_(e)));return r===-1?t.push(n):t.splice(r,1),E?.(t)}})}i([m(()=>{})],([e],[t])=>{if(j.virtual.value&&e&&t&&p.value!==null){let n=e.indexOf(t[p.value]);n===-1?p.value=null:p.value=n}});let j={comboboxState:o,value:D,mode:b,compare(t,n){if(typeof e.by==`string`){let r=e.by;return t?.[r]===n?.[r]}return e.by===null?nt(t,n):e.by(t,n)},calculateIndex(t){return j.virtual.value?e.by===null?j.virtual.value.options.indexOf(t):j.virtual.value.options.findIndex(e=>j.compare(e,t)):f.value.findIndex(e=>j.compare(e.dataRef.value,t))},defaultValue:m(()=>e.defaultValue),nullable:x,immediate:m(()=>!1),virtual:m(()=>null),inputRef:c,labelRef:s,buttonRef:l,optionsRef:u,disabled:m(()=>e.disabled),options:f,change(e){E(e)},activeOptionIndex:m(()=>{if(v.value&&p.value===null&&(j.virtual.value?j.virtual.value.options.length>0:f.value.length>0)){if(j.virtual.value){let e=j.virtual.value.options.findIndex(e=>{var t;return!((t=j.virtual.value)!=null&&t.disabled(e))});if(e!==-1)return e}let e=f.value.findIndex(e=>!e.dataRef.disabled);if(e!==-1)return e}return p.value}),activationTrigger:g,optionsPropsRef:d,closeCombobox(){v.value=!1,!e.disabled&&o.value!==1&&(o.value=1,p.value=null)},openCombobox(){if(v.value=!0,!e.disabled&&o.value!==0){if(j.value.value){let e=j.calculateIndex(j.value.value);e!==-1&&(p.value=e)}o.value=0}},setActivationTrigger(e){g.value=e},goToOption(t,n,r){v.value=!1,O!==null&&cancelAnimationFrame(O),O=requestAnimationFrame(()=>{if(e.disabled||u.value&&!d.value.static&&o.value===1)return;if(j.virtual.value){p.value=t===Y.Specific?n:Qe({focus:t},{resolveItems:()=>j.virtual.value.options,resolveActiveIndex:()=>j.activeOptionIndex.value??j.virtual.value.options.findIndex(e=>{var t;return!((t=j.virtual.value)!=null&&t.disabled(e))})??null,resolveDisabled:e=>j.virtual.value.disabled(e),resolveId(){throw Error(`Function not implemented.`)}}),g.value=r??2;return}let i=y();if(i.activeOptionIndex===null){let e=i.options.findIndex(e=>!e.dataRef.disabled);e!==-1&&(i.activeOptionIndex=e)}p.value=t===Y.Specific?n:Qe({focus:t},{resolveItems:()=>i.options,resolveActiveIndex:()=>i.activeOptionIndex,resolveId:e=>e.id,resolveDisabled:e=>e.dataRef.disabled}),g.value=r??2,f.value=i.options})},selectOption(e){let t=f.value.find(t=>t.id===e);if(!t)return;let{dataRef:n}=t;A(n.value)},selectActiveOption(){if(j.activeOptionIndex.value!==null){if(j.virtual.value)A(j.virtual.value.options[j.activeOptionIndex.value]);else{let{dataRef:e}=f.value[j.activeOptionIndex.value];A(e.value)}j.goToOption(Y.Specific,j.activeOptionIndex.value)}},registerOption(e,t){let n=h({id:e,dataRef:t});if(j.virtual.value){f.value.push(n);return}k&&cancelAnimationFrame(k);let r=y(e=>(e.push(n),e));p.value===null&&j.isSelected(t.value.value)&&(r.activeOptionIndex=r.options.indexOf(n)),f.value=r.options,p.value=r.activeOptionIndex,g.value=2,r.options.some(e=>!V(e.dataRef.domRef))&&(k=requestAnimationFrame(()=>{let e=y();f.value=e.options,p.value=e.activeOptionIndex}))},unregisterOption(e,t){if(O!==null&&cancelAnimationFrame(O),t&&(v.value=!0),j.virtual.value){f.value=f.value.filter(t=>t.id!==e);return}let n=y(t=>{let n=t.findIndex(t=>t.id===e);return n!==-1&&t.splice(n,1),t});f.value=n.options,p.value=n.activeOptionIndex,g.value=2},isSelected(e){return I(b.value,{0:()=>j.compare(_(j.value.value),_(e)),1:()=>_(j.value.value).some(t=>j.compare(_(t),_(e)))})},isActive(e){return p.value===j.calculateIndex(e)}};Ue([c,l,u],()=>j.closeCombobox(),m(()=>o.value===0)),P(ot,j),te(m(()=>I(o.value,{0:z.Open,1:z.Closed})));let M=m(()=>V(c)?.closest(`form`));return r(()=>{i([M],()=>{if(!M.value||e.defaultValue===void 0)return;function t(){j.change(e.defaultValue)}return M.value.addEventListener(`reset`,t),()=>{var e;(e=M.value)==null||e.removeEventListener(`reset`,t)}},{immediate:!0})}),()=>{let{name:r,disabled:i,form:a,...s}=e,c={open:o.value===0,disabled:i,activeIndex:j.activeOptionIndex.value,activeOption:j.activeOptionIndex.value===null?null:j.virtual.value?j.virtual.value.options[j.activeOptionIndex.value??0]:j.options.value[j.activeOptionIndex.value]?.dataRef.value??null,value:D.value};return C(w,[...r!=null&&D.value!=null?$e({[r]:D.value}).map(([e,t])=>C(Je,ae({features:qe.Hidden,key:e,as:`input`,type:`hidden`,hidden:!0,readOnly:!0,form:a,disabled:i,name:e,value:t}))):[],B({theirProps:{...n,...U(s,[`by`,`defaultValue`,`immediate`,`modelValue`,`multiple`,`nullable`,`onUpdate:modelValue`,`virtual`])},ourProps:{},slot:c,slots:t,attrs:n,name:`Combobox`})])}}});n({name:`ComboboxLabel`,props:{as:{type:[Object,String],default:`label`},id:{type:String,default:null}},setup(e,{attrs:t,slots:n}){let r=e.id??`headlessui-combobox-label-${R()}`,i=X(`ComboboxLabel`);function a(){var e;(e=V(i.inputRef))==null||e.focus({preventScroll:!0})}return()=>{let o={open:i.comboboxState.value===0,disabled:i.disabled.value},{...s}=e;return B({ourProps:{id:r,ref:i.labelRef,onClick:a},theirProps:s,slot:o,attrs:t,slots:n,name:`ComboboxLabel`})}}});var ut=n({name:`ComboboxButton`,props:{as:{type:[Object,String],default:`button`},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){let i=e.id??`headlessui-combobox-button-${R()}`,a=X(`ComboboxButton`);r({el:a.buttonRef,$el:a.buttonRef});function o(e){a.disabled.value||(a.comboboxState.value===0?a.closeCombobox():(e.preventDefault(),a.openCombobox()),s(()=>V(a.inputRef)?.focus({preventScroll:!0})))}function c(e){switch(e.key){case H.ArrowDown:e.preventDefault(),e.stopPropagation(),a.comboboxState.value===1&&a.openCombobox(),s(()=>a.inputRef.value?.focus({preventScroll:!0}));return;case H.ArrowUp:e.preventDefault(),e.stopPropagation(),a.comboboxState.value===1&&(a.openCombobox(),s(()=>{a.value.value||a.goToOption(Y.Last)})),s(()=>a.inputRef.value?.focus({preventScroll:!0}));return;case H.Escape:if(a.comboboxState.value!==0)return;e.preventDefault(),a.optionsRef.value&&!a.optionsPropsRef.value.static&&e.stopPropagation(),a.closeCombobox(),s(()=>a.inputRef.value?.focus({preventScroll:!0}));return}}let l=ne(m(()=>({as:e.as,type:t.type})),a.buttonRef);return()=>{let r={open:a.comboboxState.value===0,disabled:a.disabled.value,value:a.value.value},{...s}=e;return B({ourProps:{ref:a.buttonRef,id:i,type:l.value,tabindex:`-1`,"aria-haspopup":`listbox`,"aria-controls":V(a.optionsRef)?.id,"aria-expanded":a.comboboxState.value===0,"aria-labelledby":a.labelRef.value?[V(a.labelRef)?.id,i].join(` `):void 0,disabled:a.disabled.value===!0?!0:void 0,onKeydown:c,onClick:o},theirProps:s,slot:r,attrs:t,slots:n,name:`ComboboxButton`})}}}),dt=n({name:`ComboboxInput`,props:{as:{type:[Object,String],default:`input`},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},displayValue:{type:Function},defaultValue:{type:String,default:void 0},id:{type:String,default:null}},emits:{change:e=>!0},setup(e,{emit:t,attrs:n,slots:a,expose:o}){let c=e.id??`headlessui-combobox-input-${R()}`,l=X(`ComboboxInput`),u=m(()=>Ae(V(l.inputRef))),d={value:!1};o({el:l.inputRef,$el:l.inputRef});function f(){l.change(null);let e=V(l.optionsRef);e&&(e.scrollTop=0),l.goToOption(Y.Nothing)}let p=m(()=>{let t=l.value.value;return V(l.inputRef)?e.displayValue!==void 0&&t!==void 0?e.displayValue(t)??``:typeof t==`string`?t:``:``});r(()=>{i([p,l.comboboxState,u],([e,t],[n,r])=>{if(d.value)return;let i=V(l.inputRef);i&&((r===0&&t===1||e!==n)&&(i.value=e),requestAnimationFrame(()=>{if(d.value||!i||u.value?.activeElement!==i)return;let{selectionStart:e,selectionEnd:t}=i;Math.abs((t??0)-(e??0))===0&&e===0&&i.setSelectionRange(i.value.length,i.value.length)}))},{immediate:!0}),i([l.comboboxState],([e],[t])=>{if(e===0&&t===1){if(d.value)return;let e=V(l.inputRef);if(!e)return;let t=e.value,{selectionStart:n,selectionEnd:r,selectionDirection:i}=e;e.value=``,e.value=t,i===null?e.setSelectionRange(n,r):e.setSelectionRange(n,r,i)}})});let h=T(!1);function g(){h.value=!0}function _(){G().nextFrame(()=>{h.value=!1})}let v=Ee();function y(e){switch(d.value=!0,v(()=>{d.value=!1}),e.key){case H.Enter:if(d.value=!1,l.comboboxState.value!==0||h.value)return;if(e.preventDefault(),e.stopPropagation(),l.activeOptionIndex.value===null){l.closeCombobox();return}l.selectActiveOption(),l.mode.value===0&&l.closeCombobox();break;case H.ArrowDown:return d.value=!1,e.preventDefault(),e.stopPropagation(),I(l.comboboxState.value,{0:()=>l.goToOption(Y.Next),1:()=>l.openCombobox()});case H.ArrowUp:return d.value=!1,e.preventDefault(),e.stopPropagation(),I(l.comboboxState.value,{0:()=>l.goToOption(Y.Previous),1:()=>{l.openCombobox(),s(()=>{l.value.value||l.goToOption(Y.Last)})}});case H.Home:if(e.shiftKey)break;return d.value=!1,e.preventDefault(),e.stopPropagation(),l.goToOption(Y.First);case H.PageUp:return d.value=!1,e.preventDefault(),e.stopPropagation(),l.goToOption(Y.First);case H.End:if(e.shiftKey)break;return d.value=!1,e.preventDefault(),e.stopPropagation(),l.goToOption(Y.Last);case H.PageDown:return d.value=!1,e.preventDefault(),e.stopPropagation(),l.goToOption(Y.Last);case H.Escape:if(d.value=!1,l.comboboxState.value!==0)return;e.preventDefault(),l.optionsRef.value&&!l.optionsPropsRef.value.static&&e.stopPropagation(),l.nullable.value&&l.mode.value===0&&l.value.value===null&&f(),l.closeCombobox();break;case H.Tab:if(d.value=!1,l.comboboxState.value!==0)return;l.mode.value===0&&l.activationTrigger.value!==1&&l.selectActiveOption(),l.closeCombobox();break}}function b(e){t(`change`,e),l.nullable.value&&l.mode.value===0&&e.target.value===``&&f(),l.openCombobox()}function x(e){var t,n;let r=e.relatedTarget??J.find(t=>t!==e.currentTarget);if(d.value=!1,!((t=V(l.optionsRef))!=null&&t.contains(r))&&!((n=V(l.buttonRef))!=null&&n.contains(r))&&l.comboboxState.value===0)return e.preventDefault(),l.mode.value===0&&(l.nullable.value&&l.value.value===null?f():l.activationTrigger.value!==1&&l.selectActiveOption()),l.closeCombobox()}function S(e){var t,n;let r=e.relatedTarget??J.find(t=>t!==e.currentTarget);(t=V(l.buttonRef))!=null&&t.contains(r)||(n=V(l.optionsRef))!=null&&n.contains(r)||l.disabled.value||l.immediate.value&&l.comboboxState.value!==0&&(l.openCombobox(),G().nextFrame(()=>{l.setActivationTrigger(1)}))}let C=m(()=>e.defaultValue??(l.defaultValue.value===void 0?null:e.displayValue?.call(e,l.defaultValue.value))??l.defaultValue.value??``);return()=>{let t={open:l.comboboxState.value===0},{displayValue:r,onChange:i,...o}=e;return B({ourProps:{"aria-controls":l.optionsRef.value?.id,"aria-expanded":l.comboboxState.value===0,"aria-activedescendant":l.activeOptionIndex.value===null?void 0:l.virtual.value?l.options.value.find(e=>!l.virtual.value.disabled(e.dataRef.value)&&l.compare(e.dataRef.value,l.virtual.value.options[l.activeOptionIndex.value]))?.id:l.options.value[l.activeOptionIndex.value]?.id,"aria-labelledby":V(l.labelRef)?.id??V(l.buttonRef)?.id,"aria-autocomplete":`list`,id:c,onCompositionstart:g,onCompositionend:_,onKeydown:y,onInput:b,onFocus:S,onBlur:x,role:`combobox`,type:n.type??`text`,tabIndex:0,ref:l.inputRef,defaultValue:C.value,disabled:l.disabled.value===!0?!0:void 0},theirProps:o,slot:t,attrs:n,slots:a,features:F.RenderStrategy|F.Static,name:`ComboboxInput`})}}}),ft=n({name:`ComboboxOptions`,props:{as:{type:[Object,String],default:`ul`},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},hold:{type:[Boolean],default:!1}},setup(e,{attrs:t,slots:n,expose:r}){let i=X(`ComboboxOptions`),a=`headlessui-combobox-options-${R()}`;r({el:i.optionsRef,$el:i.optionsRef}),p(()=>{i.optionsPropsRef.value.static=e.static}),p(()=>{i.optionsPropsRef.value.hold=e.hold});let o=ie(),s=m(()=>o===null?i.comboboxState.value===0:(o.value&z.Open)===z.Open);Ke({container:m(()=>V(i.optionsRef)),enabled:m(()=>i.comboboxState.value===0),accept(e){return e.getAttribute(`role`)===`option`?NodeFilter.FILTER_REJECT:e.hasAttribute(`role`)?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(e){e.setAttribute(`role`,`none`)}});function c(e){e.preventDefault()}return()=>{let r={open:i.comboboxState.value===0};return B({ourProps:{"aria-labelledby":V(i.labelRef)?.id??V(i.buttonRef)?.id,id:a,ref:i.optionsRef,role:`listbox`,"aria-multiselectable":i.mode.value===1?!0:void 0,onMousedown:c},theirProps:U(e,[`hold`]),slot:r,attrs:t,slots:i.virtual.value&&i.comboboxState.value===0?{...n,default:()=>[C(ct,{},n.default)]}:n,features:F.RenderStrategy|F.Static,visible:s.value,name:`ComboboxOptions`})}}}),pt=n({name:`ComboboxOption`,props:{as:{type:[Object,String],default:`li`},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},order:{type:[Number],default:null}},setup(e,{slots:t,attrs:n,expose:i}){let o=X(`ComboboxOption`),c=`headlessui-combobox-option-${R()}`,l=T(null),u=m(()=>e.disabled);i({el:l,$el:l});let d=m(()=>o.virtual.value?o.activeOptionIndex.value===o.calculateIndex(e.value):o.activeOptionIndex.value===null?!1:o.options.value[o.activeOptionIndex.value]?.id===c),f=m(()=>o.isSelected(e.value)),h=S(st,null),g=m(()=>({disabled:e.disabled,value:e.value,domRef:l,order:m(()=>e.order)}));r(()=>o.registerOption(c,g)),a(()=>o.unregisterOption(c,d.value)),p(()=>{let e=V(l);e&&h?.value.measureElement(e)}),p(()=>{o.comboboxState.value===0&&d.value&&(o.virtual.value||o.activationTrigger.value!==0&&s(()=>{var e;return((e=V(l))?.scrollIntoView)?.call(e,{block:`nearest`})}))});function _(e){e.preventDefault(),e.button===Ye.Left&&(u.value||(o.selectOption(c),Ve()||requestAnimationFrame(()=>V(o.inputRef)?.focus({preventScroll:!0})),o.mode.value===0&&o.closeCombobox()))}function v(){var t;if(e.disabled||(t=o.virtual.value)!=null&&t.disabled(e.value))return o.goToOption(Y.Nothing);let n=o.calculateIndex(e.value);o.goToOption(Y.Specific,n)}let y=Ge();function b(e){y.update(e)}function x(t){var n;if(!y.wasMoved(t)||e.disabled||(n=o.virtual.value)!=null&&n.disabled(e.value)||d.value)return;let r=o.calculateIndex(e.value);o.goToOption(Y.Specific,r,0)}function C(t){var n;y.wasMoved(t)&&(e.disabled||(n=o.virtual.value)!=null&&n.disabled(e.value)||d.value&&(o.optionsPropsRef.value.hold||o.goToOption(Y.Nothing)))}return()=>{let{disabled:r}=e,i={active:d.value,selected:f.value,disabled:r};return B({ourProps:{id:c,ref:l,role:`option`,tabIndex:r===!0?void 0:-1,"aria-disabled":r===!0?!0:void 0,"aria-selected":f.value,disabled:void 0,onMousedown:_,onFocus:v,onPointerenter:b,onMouseenter:b,onPointermove:x,onMousemove:x,onPointerleave:C,onMouseleave:C},theirProps:U(e,[`order`,`value`]),slot:i,attrs:n,slots:t,name:`ComboboxOption`})}}});function mt(e){let t={called:!1};return(...n)=>{if(!t.called)return t.called=!0,e(...n)}}function ht(e,...t){e&&t.length>0&&e.classList.add(...t)}function Z(e,...t){e&&t.length>0&&e.classList.remove(...t)}var gt=(e=>(e.Finished=`finished`,e.Cancelled=`cancelled`,e))(gt||{});function _t(e,t){let n=G();if(!e)return n.dispose;let{transitionDuration:r,transitionDelay:i}=getComputedStyle(e),[a,o]=[r,i].map(e=>{let[t=0]=e.split(`,`).filter(Boolean).map(e=>e.includes(`ms`)?parseFloat(e):parseFloat(e)*1e3).sort((e,t)=>t-e);return t});return a===0?t(`finished`):n.setTimeout(()=>t(`finished`),a+o),n.add(()=>t(`cancelled`)),n.dispose}function vt(e,t,n,r,i,a){let o=G(),s=a===void 0?()=>{}:mt(a);return Z(e,...i),ht(e,...t,...n),o.nextFrame(()=>{Z(e,...n),ht(e,...r),o.add(_t(e,n=>(Z(e,...r,...t),ht(e,...i),s(n))))}),o.add(()=>Z(e,...t,...n,...r,...i)),o.add(()=>s(`cancelled`)),o.dispose}function Q(e=``){return e.split(/\s+/).filter(e=>e.length>1)}var yt=Symbol(`TransitionContext`),bt=(e=>(e.Visible=`visible`,e.Hidden=`hidden`,e))(bt||{});function xt(){return S(yt,null)!==null}function St(){let e=S(yt,null);if(e===null)throw Error(`A is used but it is missing a parent .`);return e}function Ct(){let e=S(wt,null);if(e===null)throw Error(`A is used but it is missing a parent .`);return e}var wt=Symbol(`NestingContext`);function $(e){return`children`in e?$(e.children):e.value.filter(({state:e})=>e===`visible`).length>0}function Tt(e){let t=T([]),n=T(!1);r(()=>n.value=!0),a(()=>n.value=!1);function i(r,i=L.Hidden){let a=t.value.findIndex(({id:e})=>e===r);a!==-1&&(I(i,{[L.Unmount](){t.value.splice(a,1)},[L.Hidden](){t.value[a].state=`hidden`}}),!$(t)&&n.value&&e?.())}function o(e){let n=t.value.find(({id:t})=>t===e);return n?n.state!==`visible`&&(n.state=`visible`):t.value.push({id:e,state:`visible`}),()=>i(e,L.Unmount)}return{children:t,register:o,unregister:i}}var Et=F.RenderStrategy,Dt=n({props:{as:{type:[Object,String],default:`div`},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:``},enterFrom:{type:[String],default:``},enterTo:{type:[String],default:``},entered:{type:[String],default:``},leave:{type:[String],default:``},leaveFrom:{type:[String],default:``},leaveTo:{type:[String],default:``}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:o,expose:s}){let l=T(0);function u(){l.value|=z.Opening,t(`beforeEnter`)}function d(){l.value&=~z.Opening,t(`afterEnter`)}function f(){l.value|=z.Closing,t(`beforeLeave`)}function h(){l.value&=~z.Closing,t(`afterLeave`)}if(!xt()&&re())return()=>C(Ot,{...e,onBeforeEnter:u,onAfterEnter:d,onBeforeLeave:f,onAfterLeave:h},o);let g=T(null),_=m(()=>e.unmount?L.Unmount:L.Hidden);s({el:g,$el:g});let{show:v,appear:y}=St(),{register:b,unregister:x}=Ct(),S=T(v.value?`visible`:`hidden`),w={value:!0},E=R(),D={value:!1},O=Tt(()=>{!D.value&&S.value!==`hidden`&&(S.value=`hidden`,x(E),h())});r(()=>{a(b(E))}),p(()=>{if(_.value===L.Hidden&&E){if(v.value&&S.value!==`visible`){S.value=`visible`;return}I(S.value,{hidden:()=>x(E),visible:()=>b(E)})}});let k=Q(e.enter),A=Q(e.enterFrom),j=Q(e.enterTo),M=Q(e.entered),N=Q(e.leave),ee=Q(e.leaveFrom),F=Q(e.leaveTo);r(()=>{p(()=>{if(S.value===`visible`){let e=V(g);if(e instanceof Comment&&e.data===``)throw Error("Did you forget to passthrough the `ref` to the actual DOM node?")}})});function ne(e){let t=w.value&&!y.value,n=V(g);!n||!(n instanceof HTMLElement)||t||(D.value=!0,v.value&&u(),v.value||f(),e(v.value?vt(n,k,A,j,M,e=>{D.value=!1,e===gt.Finished&&d()}):vt(n,N,ee,F,M,e=>{D.value=!1,e===gt.Finished&&($(O)||(S.value=`hidden`,x(E),h()))})))}return r(()=>{i([v],(e,t,n)=>{ne(n),w.value=!1},{immediate:!0})}),P(wt,O),te(m(()=>I(S.value,{visible:z.Open,hidden:z.Closed})|l.value)),()=>{let{appear:t,show:r,enter:i,enterFrom:a,enterTo:s,entered:l,leave:u,leaveFrom:d,leaveTo:f,...p}=e,m={ref:g};return B({theirProps:{...p,...y.value&&v.value&&K.isServer?{class:c([n.class,p.class,...k,...A])}:{}},ourProps:m,slot:{},slots:o,attrs:n,features:Et,visible:S.value===`visible`,name:`TransitionChild`})}}}),Ot=n({inheritAttrs:!1,props:{as:{type:[Object,String],default:`div`},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:``},enterFrom:{type:[String],default:``},enterTo:{type:[String],default:``},entered:{type:[String],default:``},leave:{type:[String],default:``},leaveFrom:{type:[String],default:``},leaveTo:{type:[String],default:``}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:i}){let a=ie(),o=m(()=>e.show===null&&a!==null?(a.value&z.Open)===z.Open:e.show);p(()=>{if(![!0,!1].includes(o.value))throw Error('A is used but it is missing a `:show="true | false"` prop.')});let s=T(o.value?`visible`:`hidden`),c=Tt(()=>{s.value=`hidden`}),l=T(!0),u={show:o,appear:m(()=>e.appear||!l.value)};return r(()=>{p(()=>{l.value=!1,o.value?s.value=`visible`:$(c)||(s.value=`hidden`)})}),P(wt,c),P(yt,u),()=>{let r=U(e,[`show`,`appear`,`unmount`,`onBeforeEnter`,`onBeforeLeave`,`onAfterEnter`,`onAfterLeave`]),a={unmount:e.unmount};return B({ourProps:{...a,as:`template`},theirProps:{},slot:{},slots:{...i,default:()=>[C(Dt,{onBeforeEnter:()=>t(`beforeEnter`),onAfterEnter:()=>t(`afterEnter`),onBeforeLeave:()=>t(`beforeLeave`),onAfterLeave:()=>t(`afterLeave`),...n,...a,...r},i.default)]},attrs:{},features:Et,visible:s.value===`visible`,name:`Transition`})}}}),kt=[`active`,`checked`,`hint`],At={class:`flex gap-2 items-center`},jt={key:1},Mt=n({__name:`InputComboboxOption`,props:{option:{}},setup(t){return(n,r)=>(l(),ee(v(pt),{value:t.option,as:`template`},{default:f(({active:r,selected:i})=>[d(n.$slots,`option`,{option:t.option,active:r,selected:i},()=>[j(`craft-option`,{active:r,checked:i,hint:t.option.data?.hint},[j(`div`,At,[t.option.data?.indicator?(l(),N(`craft-indicator`,e(o({key:0},t.option.data.indicator)),null,16)):g(``,!0),t.option.label.startsWith(`$`)||t.option.label.startsWith(`@`)?(l(),N(`code`,jt,k(t.option.label),1)):(l(),N(w,{key:2},[M(k(t.option.label),1)],64))])],8,kt)])]),_:3},8,[`value`]))}}),Nt={key:1},Pt={class:`group-label`},Ft=O(n({__name:`InputCombobox`,props:{label:{},options:{default:()=>[]},modelValue:{type:[String,Number,Boolean],default:``},requireOptionMatch:{type:Boolean,default:!1},transformModelValue:{type:Function,default:e=>e?e.value:``},class:{type:[Boolean,null,String,Object,Array]},placeholder:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=n,i=e,a=m({get(){let e=null;return i.options.forEach(t=>{t.type===`optgroup`?t.options.forEach(t=>{t.value===i.modelValue&&(e=t)}):t.value===i.modelValue&&(e=t)}),!e&&!i.requireOptionMatch&&(e={label:String(i.modelValue),value:i.modelValue}),e},set(e){r(`update:modelValue`,i.transformModelValue(e))}}),o=E(`reference`),s=T(String(i.modelValue??``)),p=m(()=>o.value?.getBoundingClientRect()||new DOMRect);function h(e,t){let n=String(v(e)).toLowerCase(),r=v(t);return r.label.toLowerCase().includes(n)||r.value.toString().toLowerCase().includes(n)||(r.data?.keywords?.toLowerCase().includes(n)??!1)}function _(e,t){return v(t).map(t=>{if(t.type===`optgroup`){let n=t.options.filter(t=>h(e,t));return n.length>0?{...t,options:n}:null}return h(e,t)?t:null}).filter(e=>e!==null)}let b=m(()=>s.value===``?i.options:_(s,i.options));function x(e){return e?e.label:``}let S=m(()=>[``,`@`,`$`].includes(s.value)?null:{value:s.value,label:s.value});return(n,r)=>(l(),N(`div`,{class:`relative w-full`,ref_key:`reference`,ref:o},[u(v(lt),{modelValue:a.value,"onUpdate:modelValue":r[2]||=e=>a.value=e,disabled:i.disabled},{default:f(()=>[u(v(dt),{onChange:r[0]||=e=>s.value=e.target.value,class:c([`input`,i.class]),"display-value":x,placeholder:e.placeholder},null,8,[`class`,`placeholder`]),u(v(ut),{class:`absolute inset-y-1 right-1 flex items-center`,type:`button`,as:`craft-button`,appearance:`plain`,size:`small`,icon:``,"aria-label":e.label},{default:f(()=>[...r[3]||=[j(`craft-icon`,{name:`chevron-down`,style:{"font-size":`0.8em`}},null,-1)]]),_:1},8,[`aria-label`]),u(v(Ot),{leave:`transition ease-in duration-100`,"leave-from":`opacity-100`,"leave-to":`opacity-0`,onAfterLeave:r[1]||=e=>s.value=``},{default:f(()=>[u(v(ft),{class:`options`,style:y({position:`fixed`,insetInlineStart:`${p.value.left}px`,width:`${p.value.width}px`,insetBlockStart:`${p.value.bottom}px`})},{default:f(()=>[!e.requireOptionMatch&&S.value?(l(),ee(Mt,{key:0,option:S.value},null,8,[`option`])):b.value.length===0&&s.value!==``?(l(),N(`div`,Nt,` Nothing found. `)):g(``,!0),(l(!0),N(w,null,t(b.value,(e,r)=>(l(),N(w,{key:r},[e.type===`optgroup`?(l(),N(w,{key:0},[j(`div`,Pt,k(e.label),1),(l(!0),N(w,null,t(e.options,(e,t)=>d(n.$slots,`option`,{key:t,option:e},()=>[u(Mt,{option:e},null,8,[`option`])],!0)),128))],64)):d(n.$slots,`option`,{key:1,option:e},()=>[u(Mt,{option:e},null,8,[`option`])],!0)],64))),128))]),_:3},8,[`style`])]),_:3})]),_:3},8,[`modelValue`,`disabled`])],512))}}),[[`__scopeId`,`data-v-60ff9649`]]);export{Ft as t};
\ No newline at end of file
diff --git a/resources/build/assets/Install-C2AqAj63.js b/resources/build/assets/Install-C2AqAj63.js
deleted file mode 100644
index ca59a61e8ee..00000000000
--- a/resources/build/assets/Install-C2AqAj63.js
+++ /dev/null
@@ -1 +0,0 @@
-import"./cp-DdGjhisW.js";import{l as e}from"./nav-item-ixoxjtrg-BwccWdU9.js";import"./lit-BpPOIUnZ.js";import{B as t,E as n,G as r,I as i,J as a,M as o,N as s,Q as c,R as l,T as u,V as d,X as f,Y as p,_ as m,a as ee,at as te,b as h,c as g,d as _,dt as v,l as y,m as b,ot as x,p as S,q as C,r as w,t as T,tt as E,v as D,w as O,x as k,y as A}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{t as j}from"./Select-DjNjrJvy.js";import{t as M}from"./Pane-CukoaDZn.js";import{n as N}from"./wayfinder-BO4LFEOp.js";import{i as P}from"./useFetch-Cy5lqSMM.js";import{i as F}from"./dist-CpsNQjmZ.js";import{t as I}from"./Modal-CL0jkx8C.js";import{t as L}from"./CraftInput-OjhrLWw-.js";import{t as ne}from"./CraftCombobox-B64mFprO.js";var re=``+new URL(`installer-bg-D5zoDR_3.png`,import.meta.url).href,R=e=>{a(C(e),async e=>{e?.tagName.includes(`CRAFT-`)&&(await customElements.whenDefined(e.tagName.toLowerCase()),await e?.updateComplete),e?.focus()})},z=[`.modelValue`,`has-feedback-for`],B={slot:`feedback`},V={key:0,class:`error-list`},H=n({name:`CraftInputPassword`,__name:`CraftInputPassword`,props:o({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=r(e,`modelValue`);return(n,r)=>(l(),k(`craft-input-password`,s(n.$attrs,{".modelValue":t.value,onModelValueChanged:r[0]||=e=>t.value=e.target?.modelValue,"has-feedback-for":e.error?`error`:``}),[d(n.$slots,`default`),D(`div`,B,[e.error?(l(),k(`ul`,V,[D(`li`,null,E(e.error),1)])):h(``,!0)])],48,z))}}),U=n({__name:`AccountFields`,props:{modelValue:{default:()=>({email:``,username:``,password:``})},errors:{default:()=>({email:``,username:``,password:``})}},emits:[`success`,`click:back`,`update:modelValue`],setup(t,{emit:n}){let r=n,i=t,a=y(),o=m(()=>!a.props.useEmailAsUsername),s=m({get(){return i.modelValue},set(e){r(`update:modelValue`,e)}});return R(`username-input`),(n,r)=>(l(),k(b,null,[o.value?(l(),A(L,{key:0,label:v(e)(`Username`),id:`account-username`,name:`username`,modelValue:s.value.username,"onUpdate:modelValue":r[0]||=e=>s.value.username=e,error:t.errors?.username,maxlength:`255`,required:``,autofocus:``},null,8,[`label`,`modelValue`,`error`])):h(``,!0),u(L,{label:v(e)(`Email`),id:`account-email`,name:`email`,modelValue:s.value.email,"onUpdate:modelValue":r[1]||=e=>s.value.email=e,maxlength:`255`,autocomplete:`email`,error:t.errors?.email,required:``,type:`email`},null,8,[`label`,`modelValue`,`error`]),u(H,{label:v(e)(`Password`),id:`account-password`,name:`password`,modelValue:s.value.password,"onUpdate:modelValue":r[2]||=e=>s.value.password=e,error:t.errors?.password,required:``,autocomplete:`new-password`},null,8,[`label`,`modelValue`,`error`])],64))}}),W={variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},G={href:`https://craftcms.com/docs/5.x/configure.html#control-panel-settings`},K=n({__name:`SiteFields`,props:{modelValue:{default:()=>({})},localeOptions:{default:()=>[]},errors:{default:()=>({})}},emits:[`update:modelValue`],setup(t,{emit:n}){let r=n,i=t,a=y(),o=m({get(){return i.modelValue},set(e){r(`update:modelValue`,e)}});return R(`site-name`),(n,r)=>(l(),k(b,null,[u(L,{name:`name`,label:v(e)(`System Name`),id:`site-name`,modelValue:o.value.name,"onUpdate:modelValue":r[0]||=e=>o.value.name=e,maxlength:`255`,ref:`site-name`,error:t.errors?.name},null,8,[`label`,`modelValue`,`error`]),u(ne,{modelValue:o.value.baseUrl,"onUpdate:modelValue":r[1]||=e=>o.value.baseUrl=e,label:v(e)(`Base URL`),"help-text":v(e)(`The base URL for the site.`),id:`base-url`,name:`baseUrl`,error:t.errors?.baseUrl,options:v(a).props.baseUrlSuggestions},{after:f(()=>[D(`craft-callout`,W,[O(E(v(e)(`This can begin with an environment variable or alias.`))+` `,1),D(`a`,G,E(v(e)(`Learn more`)),1)])]),_:1},8,[`modelValue`,`label`,`help-text`,`error`,`options`]),u(j,{modelValue:o.value.language,"onUpdate:modelValue":r[2]||=e=>o.value.language=e,options:t.localeOptions,label:v(e)(`Language`),id:`site-language`,name:`language`},{"option-label":f(({option:e})=>[O(E(e.value)+` (`+E(e.label)+`) `,1)]),_:1},8,[`modelValue`,`options`,`label`])],64))}}),q=e=>({url:q.url(e),method:`post`});q.definition={methods:[`post`],url:`/admin/actions/install/validate-db`},q.url=e=>q.definition.url+N(e),q.post=e=>({url:q.url(e),method:`post`});var J=e=>({url:J.url(e),method:`post`});J.definition={methods:[`post`],url:`/admin/actions/install/validate-account`},J.url=e=>J.definition.url+N(e),J.post=e=>({url:J.url(e),method:`post`});var Y=e=>({url:Y.url(e),method:`post`});Y.definition={methods:[`post`],url:`/admin/actions/install/validate-site`},Y.url=e=>Y.definition.url+N(e),Y.post=e=>({url:Y.url(e),method:`post`});var X=e=>({url:X.url(e),method:`post`});X.definition={methods:[`post`],url:`/admin/actions/install/install`},X.url=e=>X.definition.url+N(e),X.post=e=>({url:X.url(e),method:`post`});var Z=e=>({url:Z.url(e),method:`get`});Z.definition={methods:[`get`,`head`],url:`/admin/install`},Z.url=e=>Z.definition.url+N(e),Z.get=e=>({url:Z.url(e),method:`get`}),Z.head=e=>({url:Z.url(e),method:`head`});var ie=()=>{let t=x({start:{},license:{id:`license`,label:`License`},account:{id:`account`,label:`Account`,action:J().url,heading:e(`Create your account`)},db:{id:`db`,label:`Database`,action:q().url,heading:e(`Connect to your database`)},site:{id:`site`,label:`Site`,action:Y().url,heading:e(`Set up your site`),submitLabel:e(`Finish up`)},installing:{label:`Installing`,id:`installing`}}),n=m(()=>Object.keys(t.value).reduce((e,n)=>{let r=t.value[n];return(r.hidden??!1)||(e[n]=r),e},{})),r=m(()=>Object.keys(n.value).reduce((e,t)=>{let r=n.value[t];return(r.label??!1)&&(e[t]=r),e},{})),i=F(n),a=m(()=>i.stepNames.value[i.index.value]);return{...i,possibleSteps:t,currentId:a,dotSteps:r}},ae=``+new URL(`account-Bwr2nbaw.png`,import.meta.url).href,oe=``+new URL(`site-DFRpgmW9.png`,import.meta.url).href,se=``+new URL(`db-BfYMxU0Q.png`,import.meta.url).href,ce=T(n({__name:`Callout`,props:{variant:{default:`info`},appearance:{default:`default`}},setup(e){return(t,n)=>(l(),k(`div`,{class:c({callout:!0,"callout--danger":e.variant===`danger`,"callout--info":e.variant===`info`,"callout--success":e.variant===`success`,"callout--warning":e.variant===`warning`,"callout--emphasis":e.appearance===`emphasis`,"callout--default":e.appearance===`default`,"callout--outline":e.appearance===`outline`,"callout--plain":e.appearance===`plain`})},[d(t.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-65fa67e2`]]),le={class:`grid grid-cols-5 gap-2`},ue={class:`col-span-2`},de={class:`col-span-2`},fe={key:0,class:`error-list col-span-5`},pe={class:`grid grid-cols-2 gap-2`},me={key:0,class:`error-list col-span-2`},he={class:`grid grid-cols-4 gap-2`},ge={class:`col-span-2`},_e=n({__name:`DbFields`,props:{modelValue:{default:()=>({})},errors:{default:()=>({})}},emits:[`update:modelValue`],setup(n,{emit:r}){let i=r,a=n,o=m({get(){return a.modelValue},set(e){i(`update:modelValue`,e)}}),s=[{value:`mysql`,label:`MySQL`},{value:`pgsql`,label:`PostgreSQL`}];return R(`db-driver`),(r,i)=>(l(),k(b,null,[n.errors&&n.errors[`*`]?(l(),A(ce,{key:0,variant:`danger`},{default:f(()=>[D(`ul`,null,[(l(!0),k(b,null,t(n.errors[`*`],e=>(l(),k(`li`,{key:e},E(e),1))),128))])]),_:1})):h(``,!0),D(`div`,le,[D(`div`,ue,[u(j,{label:v(e)(`Driver`),name:`driver`,id:`db-driver`,modelValue:o.value.driver,"onUpdate:modelValue":i[0]||=e=>o.value.driver=e,ref:`db-driver`,options:s,error:n.errors?.drive},null,8,[`label`,`modelValue`,`error`])]),D(`div`,de,[u(L,{label:v(e)(`Host`),name:`host`,id:`db-host`,modelValue:o.value.host,"onUpdate:modelValue":i[1]||=e=>o.value.host=e,placeholder:`127.0.0.1`,error:n.errors?.host},null,8,[`label`,`modelValue`,`error`])]),D(`div`,null,[u(L,{label:v(e)(`Port`),name:`port`,id:`db-port`,modelValue:o.value.port,"onUpdate:modelValue":i[2]||=e=>o.value.port=e,size:`7`,error:n.errors?.port},null,8,[`label`,`modelValue`,`error`])]),n.errors?.server?(l(),k(`ul`,fe,[D(`li`,null,E(n.errors?.server),1)])):h(``,!0)]),D(`div`,pe,[D(`div`,null,[u(L,{label:v(e)(`Username`),name:`username`,id:`db-username`,modelValue:o.value.username,"onUpdate:modelValue":i[3]||=e=>o.value.username=e,placeholder:`root`,error:n.errors?.username},null,8,[`label`,`modelValue`,`error`])]),D(`div`,null,[u(H,{label:v(e)(`Password`),name:`password`,id:`db-password`,modelValue:o.value.password,"onUpdate:modelValue":i[4]||=e=>o.value.password=e,error:n.errors?.password},null,8,[`label`,`modelValue`,`error`])]),n.errors?.user?(l(),k(`ul`,me,[D(`li`,null,E(n.errors?.user),1)])):h(``,!0)]),D(`div`,he,[D(`div`,ge,[u(L,{label:v(e)(`Database Name`),name:`name`,id:`db-database`,modelValue:o.value.database,"onUpdate:modelValue":i[5]||=e=>o.value.database=e,errors:n.errors?.database},null,8,[`label`,`modelValue`,`errors`])]),D(`div`,null,[u(L,{label:v(e)(`Prefix`),name:`prefix`,id:`db-prefix`,modelValue:o.value.prefix,"onUpdate:modelValue":i[6]||=e=>o.value.prefix=e,maxlength:`5`,size:`7`,error:n.errors?.prefix},null,8,[`label`,`modelValue`,`error`])])])],64))}}),ve={key:0,class:`content`},ye={key:1,class:`content`},be={key:2,class:`content`},xe={class:`text-left border border-red-500 rounded p-4 text-red-800 bg-red-50 font-mono text-xs`},Se=T(n({__name:`InstallingScreen`,props:{data:{}},setup(t){let{props:n}=y(),r=t,{execute:a,error:o,isSuccess:s,isLoading:c,isError:u}=P(`/admin/actions/install/install`,{onSuccess:()=>{setTimeout(()=>{window.location.href=n.postCpLoginRedirect},1e3)}});return i(async()=>{await a(r.data)}),(t,n)=>(l(),A(M,{class:`max-w-[80ch] mx-auto`},{default:f(()=>[v(c)?(l(),k(`div`,ve,[D(`h2`,null,E(v(e)(`Installing Craft CMS…`)),1),n[0]||=D(`craft-spinner`,null,null,-1)])):v(s)?(l(),k(`div`,ye,[D(`h2`,null,E(v(e)(`Craft is installed! 🎉`)),1),n[1]||=D(`div`,{class:`flex justify-center items-center`},[D(`craft-icon`,{name:`circle-check`,variant:`regular`,style:{color:`var(--c-color-success-fill-loud)`,"font-size":`2.5rem`}})],-1)])):h(``,!0),v(u)?(l(),k(`div`,be,[D(`h2`,null,E(v(e)(`Install failed 😞`)),1),D(`div`,xe,E(v(o).message),1)])):h(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-c35f1a74`]]),Ce={class:`grid md:grid-cols-2 gap-4 items-center`},we={class:`aspect-[352/455] w-1/2 md:w-3/4 mx-auto`},Te=[`src`],Ee={class:`mb-4`},De={class:`grid gap-3 md:pr-6`},Q=n({__name:`StepScreen`,props:{illustrationSrc:{default:``},heading:{default:``}},setup(e){return(t,n)=>(l(),k(`div`,Ce,[D(`div`,we,[D(`img`,{loading:`lazy`,src:e.illustrationSrc,alt:``,width:`368`},null,8,Te)]),D(`div`,null,[D(`h2`,Ee,E(e.heading),1),D(`div`,De,[d(t.$slots,`default`)])])]))}}),$={class:`install`},Oe=[`innerHTML`],ke={class:`flex justify-center w-full`},Ae={key:2},je={class:`grid grid-cols-3 items-center gap-2 w-full`},Me={class:`flex gap-2 justify-center`},Ne={class:`sr-only`},Pe=[`loading`],Fe=T(n({__name:`Install`,props:{dbConfig:{},localeOptions:{},licenseHtml:{},defaultSystemName:{},defaultSiteUrl:{},defaultSiteLanguage:{},showDbScreen:{type:Boolean}},setup(n){_(e=>({v3a7bf6d4:r.value}));let r=m(()=>`url(${re})`),i=n,{dotSteps:a,current:o,currentId:s,goTo:d,goToNext:y,goToPrevious:x,isCurrent:C,possibleSteps:T}=ie();p(()=>{T.value.db.hidden=!i.showDbScreen});function j(){d(`license`)}let N=te({account:{},db:{},site:{}}),P=g({account:{username:``,email:``,password:``},db:{driver:i.dbConfig.driver,host:i.dbConfig.host,port:i.dbConfig.port,database:i.dbConfig.database,username:i.dbConfig.username,password:i.dbConfig.password,prefix:i.dbConfig.prefix},site:{name:i.defaultSystemName,baseUrl:i.defaultSiteUrl,language:i.defaultSiteLanguage}}),F=m(()=>!C(`start`));function L(e){if(P.processing)return;N[s.value]={};let t=e.currentTarget;P.transform(e=>e[s.value]).post(t.action,{onSuccess:()=>{y()},onError:e=>{N[s.value]=e}})}return(r,i)=>(l(),k(b,null,[u(v(ee),{title:v(e)(`Install Craft CMS`)},null,8,[`title`]),D(`div`,$,[v(C)(`start`)?(l(),k(`craft-button`,{key:0,type:`button`,onClick:j,variant:`primary`,class:`begin-button`},[O(E(v(e)(`Install Craft CMS`))+` `,1),i[6]||=D(`craft-icon`,{name:`arrow-right`,slot:`suffix`},null,-1)])):h(``,!0),u(I,{"is-active":F.value,overlay:!1,width:`2xl`},{default:f(()=>[v(C)(`license`)?(l(),A(M,{key:0,class:`max-w-[80ch] mx-auto`},{actions:f(()=>[D(`div`,ke,[D(`craft-button`,{type:`button`,variant:`primary`,onClick:i[0]||=e=>v(d)(`account`)},E(v(e)(`Got it`)),1)])]),default:f(()=>[u(v(w),{data:`licenseHtml`},{fallback:f(()=>[...i[7]||=[D(`div`,{class:`flex justify-center`},[D(`craft-spinner`)],-1)]]),default:f(()=>[D(`div`,{class:`license`,innerHTML:n.licenseHtml},null,8,Oe)]),_:1})]),_:1})):v(C)(`installing`)?(l(),A(Se,{key:1,data:v(P),onSuccess:i[1]||=e=>v(y)()},null,8,[`data`])):(l(),k(`div`,Ae,[u(M,{as:`form`,action:v(o).action,onSubmit:S(L,[`prevent`])},{"footer-content":f(()=>[D(`div`,je,[D(`craft-button`,{type:`button`,onClick:i[5]||=(...e)=>v(x)&&v(x)(...e),appearance:`plain`,class:`justify-self-start`},[O(E(v(e)(`Back`))+` `,1),i[9]||=D(`craft-icon`,{name:`arrow-left`,slot:`prefix`},null,-1)]),D(`ul`,Me,[(l(!0),k(b,null,t(v(a),(e,t)=>(l(),k(`li`,{key:t},[D(`span`,{class:c([`dot`,{"dot--active":v(C)(t)}])},[D(`span`,Ne,E(e.label),1)],2)]))),128))]),D(`craft-button`,{class:`justify-self-end`,type:`submit`,variant:`primary`,loading:v(P).processing},[O(E(v(o).submitLabel??v(e)(`Next`))+` `,1),i[10]||=D(`craft-icon`,{name:`arrow-right`,slot:`suffix`},null,-1)],8,Pe)])]),default:f(()=>[v(C)(`account`)?(l(),A(Q,{key:0,"illustration-src":v(ae),heading:v(o).heading,class:`screen`},{default:f(()=>[v(C)(`account`)?(l(),A(U,{key:0,modelValue:v(P).account,"onUpdate:modelValue":i[2]||=e=>v(P).account=e,errors:N.account},null,8,[`modelValue`,`errors`])):h(``,!0)]),_:1},8,[`illustration-src`,`heading`])):h(``,!0),v(C)(`db`)?(l(),A(Q,{key:1,"illustration-src":v(se),heading:v(o).heading,class:`screen`},{default:f(()=>[u(_e,{modelValue:v(P).db,"onUpdate:modelValue":i[3]||=e=>v(P).db=e,errors:N.db},null,8,[`modelValue`,`errors`])]),_:1},8,[`illustration-src`,`heading`])):h(``,!0),v(C)(`site`)?(l(),A(Q,{key:2,"illustration-src":v(oe),heading:v(o).heading,class:`screen`},{default:f(()=>[u(v(w),{data:`localeOptions`},{fallback:f(()=>[...i[8]||=[D(`craft-spinner`,null,null,-1)]]),default:f(()=>[u(K,{modelValue:v(P).site,"onUpdate:modelValue":i[4]||=e=>v(P).site=e,"locale-options":(n.localeOptions??[]).map(e=>({id:e.id,label:e.name,value:e.id})),errors:N.site},null,8,[`modelValue`,`locale-options`,`errors`])]),_:1})]),_:1},8,[`illustration-src`,`heading`])):h(``,!0)]),_:1},8,[`action`])]))]),_:1},8,[`is-active`])])],64))}}),[[`__scopeId`,`data-v-5853f0c6`]]);export{Fe as default};
\ No newline at end of file
diff --git a/resources/build/assets/Install-CNkD7Lu5.js b/resources/build/assets/Install-CNkD7Lu5.js
new file mode 100644
index 00000000000..87abe65d571
--- /dev/null
+++ b/resources/build/assets/Install-CNkD7Lu5.js
@@ -0,0 +1 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import"./lit-BpPOIUnZ.js";import{B as t,C as n,F as r,J as i,K as a,L as o,M as s,T as c,W as l,Y as u,Z as d,_ as f,at as p,b as m,c as h,et as g,f as ee,g as _,i as v,it as y,j as b,n as x,p as S,q as C,s as w,u as T,ut as E,v as D,w as O,y as k,z as A}from"./dist-LYoVBFtL.js";import{t as j}from"./_plugin-vue_export-helper-QKFMMAHA.js";import{t as M}from"./Select-Ze13S8oO.js";import{t as N}from"./Pane-_ECBrQIr.js";import{i as P}from"./useFetch-DHLgd4Dp.js";import{n as F}from"./wayfinder-K3R1_Wej.js";import{i as I}from"./dist-DfEcHFCI.js";import{t as L}from"./Modal-6I0u77G6.js";import{t as R}from"./CraftInput-CGOATOXU.js";import{t as te}from"./CraftCombobox-BkCjs3xZ.js";var ne=``+new URL(`installer-bg-D5zoDR_3.png`,import.meta.url).href,z=e=>{C(a(e),async e=>{e?.tagName.includes(`CRAFT-`)&&(await customElements.whenDefined(e.tagName.toLowerCase()),await e?.updateComplete),e?.focus()})},re=[`.modelValue`,`has-feedback-for`],B={slot:`feedback`},V={key:0,class:`error-list`},H=c({name:`CraftInputPassword`,__name:`CraftInputPassword`,props:b({error:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let n=l(e,`modelValue`);return(r,i)=>(o(),m(`craft-input-password`,s(r.$attrs,{".modelValue":n.value,onModelValueChanged:i[0]||=e=>n.value=e.target?.modelValue,"has-feedback-for":e.error?`error`:``}),[t(r.$slots,`default`),f(`div`,B,[e.error?(o(),m(`ul`,V,[f(`li`,null,g(e.error),1)])):k(``,!0)])],48,re))}}),U=c({__name:`AccountFields`,props:{modelValue:{default:()=>({email:``,username:``,password:``})},errors:{default:()=>({email:``,username:``,password:``})}},emits:[`success`,`click:back`,`update:modelValue`],setup(t,{emit:n}){let r=n,i=t,a=h(),s=_(()=>!a.props.useEmailAsUsername),c=_({get(){return i.modelValue},set(e){r(`update:modelValue`,e)}});return z(`username-input`),(n,r)=>(o(),m(S,null,[s.value?(o(),D(R,{key:0,label:E(e)(`Username`),id:`account-username`,name:`username`,modelValue:c.value.username,"onUpdate:modelValue":r[0]||=e=>c.value.username=e,error:t.errors?.username,maxlength:`255`,required:``,autofocus:``},null,8,[`label`,`modelValue`,`error`])):k(``,!0),O(R,{label:E(e)(`Email`),id:`account-email`,name:`email`,modelValue:c.value.email,"onUpdate:modelValue":r[1]||=e=>c.value.email=e,maxlength:`255`,autocomplete:`email`,error:t.errors?.email,required:``,type:`email`},null,8,[`label`,`modelValue`,`error`]),O(H,{label:E(e)(`Password`),id:`account-password`,name:`password`,modelValue:c.value.password,"onUpdate:modelValue":r[2]||=e=>c.value.password=e,error:t.errors?.password,required:``,autocomplete:`new-password`},null,8,[`label`,`modelValue`,`error`])],64))}}),W={variant:`info`,appearance:`plain`,class:`p-0`,icon:`lightbulb`},G={href:`https://craftcms.com/docs/5.x/configure.html#control-panel-settings`},K=c({__name:`SiteFields`,props:{modelValue:{default:()=>({})},localeOptions:{default:()=>[]},errors:{default:()=>({})}},emits:[`update:modelValue`],setup(t,{emit:r}){let i=r,a=t,s=h(),c=_({get(){return a.modelValue},set(e){i(`update:modelValue`,e)}});return z(`site-name`),(r,i)=>(o(),m(S,null,[O(R,{name:`name`,label:E(e)(`System Name`),id:`site-name`,modelValue:c.value.name,"onUpdate:modelValue":i[0]||=e=>c.value.name=e,maxlength:`255`,ref:`site-name`,error:t.errors?.name},null,8,[`label`,`modelValue`,`error`]),O(te,{modelValue:c.value.baseUrl,"onUpdate:modelValue":i[1]||=e=>c.value.baseUrl=e,label:E(e)(`Base URL`),"help-text":E(e)(`The base URL for the site.`),id:`base-url`,name:`baseUrl`,error:t.errors?.baseUrl,options:E(s).props.baseUrlSuggestions},{after:u(()=>[f(`craft-callout`,W,[n(g(E(e)(`This can begin with an environment variable or alias.`))+` `,1),f(`a`,G,g(E(e)(`Learn more`)),1)])]),_:1},8,[`modelValue`,`label`,`help-text`,`error`,`options`]),O(M,{modelValue:c.value.language,"onUpdate:modelValue":i[2]||=e=>c.value.language=e,options:t.localeOptions,label:E(e)(`Language`),id:`site-language`,name:`language`},{"option-label":u(({option:e})=>[n(g(e.value)+` (`+g(e.label)+`) `,1)]),_:1},8,[`modelValue`,`options`,`label`])],64))}}),q=e=>({url:q.url(e),method:`post`});q.definition={methods:[`post`],url:`/admin/actions/install/validate-db`},q.url=e=>q.definition.url+F(e),q.post=e=>({url:q.url(e),method:`post`});var J=e=>({url:J.url(e),method:`post`});J.definition={methods:[`post`],url:`/admin/actions/install/validate-account`},J.url=e=>J.definition.url+F(e),J.post=e=>({url:J.url(e),method:`post`});var Y=e=>({url:Y.url(e),method:`post`});Y.definition={methods:[`post`],url:`/admin/actions/install/validate-site`},Y.url=e=>Y.definition.url+F(e),Y.post=e=>({url:Y.url(e),method:`post`});var X=e=>({url:X.url(e),method:`post`});X.definition={methods:[`post`],url:`/admin/actions/install/install`},X.url=e=>X.definition.url+F(e),X.post=e=>({url:X.url(e),method:`post`});var Z=e=>({url:Z.url(e),method:`get`});Z.definition={methods:[`get`,`head`],url:`/admin/install`},Z.url=e=>Z.definition.url+F(e),Z.get=e=>({url:Z.url(e),method:`get`}),Z.head=e=>({url:Z.url(e),method:`head`});var ie=()=>{let t=p({start:{},license:{id:`license`,label:`License`},account:{id:`account`,label:`Account`,action:J().url,heading:e(`Create your account`)},db:{id:`db`,label:`Database`,action:q().url,heading:e(`Connect to your database`)},site:{id:`site`,label:`Site`,action:Y().url,heading:e(`Set up your site`),submitLabel:e(`Finish up`)},installing:{label:`Installing`,id:`installing`}}),n=_(()=>Object.keys(t.value).reduce((e,n)=>{let r=t.value[n];return(r.hidden??!1)||(e[n]=r),e},{})),r=_(()=>Object.keys(n.value).reduce((e,t)=>{let r=n.value[t];return(r.label??!1)&&(e[t]=r),e},{})),i=I(n),a=_(()=>i.stepNames.value[i.index.value]);return{...i,possibleSteps:t,currentId:a,dotSteps:r}},ae=``+new URL(`account-Bwr2nbaw.png`,import.meta.url).href,oe=``+new URL(`site-DFRpgmW9.png`,import.meta.url).href,se=``+new URL(`db-BfYMxU0Q.png`,import.meta.url).href,ce=j(c({__name:`Callout`,props:{variant:{default:`info`},appearance:{default:`default`}},setup(e){return(n,r)=>(o(),m(`div`,{class:d({callout:!0,"callout--danger":e.variant===`danger`,"callout--info":e.variant===`info`,"callout--success":e.variant===`success`,"callout--warning":e.variant===`warning`,"callout--emphasis":e.appearance===`emphasis`,"callout--default":e.appearance===`default`,"callout--outline":e.appearance===`outline`,"callout--plain":e.appearance===`plain`})},[t(n.$slots,`default`,{},void 0,!0)],2))}}),[[`__scopeId`,`data-v-65fa67e2`]]),le={class:`grid grid-cols-5 gap-2`},ue={class:`col-span-2`},de={class:`col-span-2`},fe={key:0,class:`error-list col-span-5`},pe={class:`grid grid-cols-2 gap-2`},me={key:0,class:`error-list col-span-2`},he={class:`grid grid-cols-4 gap-2`},ge={class:`col-span-2`},_e=c({__name:`DbFields`,props:{modelValue:{default:()=>({})},errors:{default:()=>({})}},emits:[`update:modelValue`],setup(t,{emit:n}){let r=n,i=t,a=_({get(){return i.modelValue},set(e){r(`update:modelValue`,e)}}),s=[{value:`mysql`,label:`MySQL`},{value:`pgsql`,label:`PostgreSQL`}];return z(`db-driver`),(n,r)=>(o(),m(S,null,[t.errors&&t.errors[`*`]?(o(),D(ce,{key:0,variant:`danger`},{default:u(()=>[f(`ul`,null,[(o(!0),m(S,null,A(t.errors[`*`],e=>(o(),m(`li`,{key:e},g(e),1))),128))])]),_:1})):k(``,!0),f(`div`,le,[f(`div`,ue,[O(M,{label:E(e)(`Driver`),name:`driver`,id:`db-driver`,modelValue:a.value.driver,"onUpdate:modelValue":r[0]||=e=>a.value.driver=e,ref:`db-driver`,options:s,error:t.errors?.drive},null,8,[`label`,`modelValue`,`error`])]),f(`div`,de,[O(R,{label:E(e)(`Host`),name:`host`,id:`db-host`,modelValue:a.value.host,"onUpdate:modelValue":r[1]||=e=>a.value.host=e,placeholder:`127.0.0.1`,error:t.errors?.host},null,8,[`label`,`modelValue`,`error`])]),f(`div`,null,[O(R,{label:E(e)(`Port`),name:`port`,id:`db-port`,modelValue:a.value.port,"onUpdate:modelValue":r[2]||=e=>a.value.port=e,size:`7`,error:t.errors?.port},null,8,[`label`,`modelValue`,`error`])]),t.errors?.server?(o(),m(`ul`,fe,[f(`li`,null,g(t.errors?.server),1)])):k(``,!0)]),f(`div`,pe,[f(`div`,null,[O(R,{label:E(e)(`Username`),name:`username`,id:`db-username`,modelValue:a.value.username,"onUpdate:modelValue":r[3]||=e=>a.value.username=e,placeholder:`root`,error:t.errors?.username},null,8,[`label`,`modelValue`,`error`])]),f(`div`,null,[O(H,{label:E(e)(`Password`),name:`password`,id:`db-password`,modelValue:a.value.password,"onUpdate:modelValue":r[4]||=e=>a.value.password=e,error:t.errors?.password},null,8,[`label`,`modelValue`,`error`])]),t.errors?.user?(o(),m(`ul`,me,[f(`li`,null,g(t.errors?.user),1)])):k(``,!0)]),f(`div`,he,[f(`div`,ge,[O(R,{label:E(e)(`Database Name`),name:`name`,id:`db-database`,modelValue:a.value.database,"onUpdate:modelValue":r[5]||=e=>a.value.database=e,errors:t.errors?.database},null,8,[`label`,`modelValue`,`errors`])]),f(`div`,null,[O(R,{label:E(e)(`Prefix`),name:`prefix`,id:`db-prefix`,modelValue:a.value.prefix,"onUpdate:modelValue":r[6]||=e=>a.value.prefix=e,maxlength:`5`,size:`7`,error:t.errors?.prefix},null,8,[`label`,`modelValue`,`error`])])])],64))}}),ve={key:0,class:`content`},ye={key:1,class:`content`},be={key:2,class:`content`},xe={class:`text-left border border-red-500 rounded p-4 text-red-800 bg-red-50 font-mono text-xs`},Se=j(c({__name:`InstallingScreen`,props:{data:{}},setup(t){let{props:n}=h(),i=t,{execute:a,error:s,isSuccess:c,isLoading:l,isError:d}=P(`/admin/actions/install/install`,{onSuccess:()=>{setTimeout(()=>{window.location.href=n.postCpLoginRedirect},1e3)}});return r(async()=>{await a(i.data)}),(t,n)=>(o(),D(N,{class:`max-w-[80ch] mx-auto`},{default:u(()=>[E(l)?(o(),m(`div`,ve,[f(`h2`,null,g(E(e)(`Installing Craft CMS…`)),1),n[0]||=f(`craft-spinner`,null,null,-1)])):E(c)?(o(),m(`div`,ye,[f(`h2`,null,g(E(e)(`Craft is installed! 🎉`)),1),n[1]||=f(`div`,{class:`flex justify-center items-center`},[f(`craft-icon`,{name:`circle-check`,variant:`regular`,style:{color:`var(--c-color-success-fill-loud)`,"font-size":`2.5rem`}})],-1)])):k(``,!0),E(d)?(o(),m(`div`,be,[f(`h2`,null,g(E(e)(`Install failed 😞`)),1),f(`div`,xe,g(E(s).message),1)])):k(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-c35f1a74`]]),Ce={class:`grid md:grid-cols-2 gap-4 items-center`},we={class:`aspect-[352/455] w-1/2 md:w-3/4 mx-auto`},Te=[`src`],Ee={class:`mb-4`},De={class:`grid gap-3 md:pr-6`},Q=c({__name:`StepScreen`,props:{illustrationSrc:{default:``},heading:{default:``}},setup(e){return(n,r)=>(o(),m(`div`,Ce,[f(`div`,we,[f(`img`,{loading:`lazy`,src:e.illustrationSrc,alt:``,width:`368`},null,8,Te)]),f(`div`,null,[f(`h2`,Ee,g(e.heading),1),f(`div`,De,[t(n.$slots,`default`)])])]))}}),$={class:`install`},Oe=[`innerHTML`],ke={class:`flex justify-center w-full`},Ae={key:2},je={class:`grid grid-cols-3 items-center gap-2 w-full`},Me={class:`flex gap-2 justify-center`},Ne={class:`sr-only`},Pe=[`loading`],Fe=j(c({__name:`Install`,props:{dbConfig:{},localeOptions:{},licenseHtml:{},defaultSystemName:{},defaultSiteUrl:{},defaultSiteLanguage:{},showDbScreen:{type:Boolean}},setup(t){T(e=>({v3a7bf6d4:r.value}));let r=_(()=>`url(${ne})`),a=t,{dotSteps:s,current:c,currentId:l,goTo:p,goToNext:h,goToPrevious:b,isCurrent:C,possibleSteps:j}=ie();i(()=>{j.value.db.hidden=!a.showDbScreen});function M(){p(`license`)}let P=y({account:{},db:{},site:{}}),F=w({account:{username:``,email:``,password:``},db:{driver:a.dbConfig.driver,host:a.dbConfig.host,port:a.dbConfig.port,database:a.dbConfig.database,username:a.dbConfig.username,password:a.dbConfig.password,prefix:a.dbConfig.prefix},site:{name:a.defaultSystemName,baseUrl:a.defaultSiteUrl,language:a.defaultSiteLanguage}}),I=_(()=>!C(`start`));function R(e){if(F.processing)return;P[l.value]={};let t=e.currentTarget;F.transform(e=>e[l.value]).post(t.action,{onSuccess:()=>{h()},onError:e=>{P[l.value]=e}})}return(r,i)=>(o(),m(S,null,[O(E(v),{title:E(e)(`Install Craft CMS`)},null,8,[`title`]),f(`div`,$,[E(C)(`start`)?(o(),m(`craft-button`,{key:0,type:`button`,onClick:M,variant:`primary`,class:`begin-button`},[n(g(E(e)(`Install Craft CMS`))+` `,1),i[6]||=f(`craft-icon`,{name:`arrow-right`,slot:`suffix`},null,-1)])):k(``,!0),O(L,{"is-active":I.value,overlay:!1,width:`2xl`},{default:u(()=>[E(C)(`license`)?(o(),D(N,{key:0,class:`max-w-[80ch] mx-auto`},{actions:u(()=>[f(`div`,ke,[f(`craft-button`,{type:`button`,variant:`primary`,onClick:i[0]||=e=>E(p)(`account`)},g(E(e)(`Got it`)),1)])]),default:u(()=>[O(E(x),{data:`licenseHtml`},{fallback:u(()=>[...i[7]||=[f(`div`,{class:`flex justify-center`},[f(`craft-spinner`)],-1)]]),default:u(()=>[f(`div`,{class:`license`,innerHTML:t.licenseHtml},null,8,Oe)]),_:1})]),_:1})):E(C)(`installing`)?(o(),D(Se,{key:1,data:E(F),onSuccess:i[1]||=e=>E(h)()},null,8,[`data`])):(o(),m(`div`,Ae,[O(N,{as:`form`,action:E(c).action,onSubmit:ee(R,[`prevent`])},{"footer-content":u(()=>[f(`div`,je,[f(`craft-button`,{type:`button`,onClick:i[5]||=(...e)=>E(b)&&E(b)(...e),appearance:`plain`,class:`justify-self-start`},[n(g(E(e)(`Back`))+` `,1),i[9]||=f(`craft-icon`,{name:`arrow-left`,slot:`prefix`},null,-1)]),f(`ul`,Me,[(o(!0),m(S,null,A(E(s),(e,t)=>(o(),m(`li`,{key:t},[f(`span`,{class:d([`dot`,{"dot--active":E(C)(t)}])},[f(`span`,Ne,g(e.label),1)],2)]))),128))]),f(`craft-button`,{class:`justify-self-end`,type:`submit`,variant:`primary`,loading:E(F).processing},[n(g(E(c).submitLabel??E(e)(`Next`))+` `,1),i[10]||=f(`craft-icon`,{name:`arrow-right`,slot:`suffix`},null,-1)],8,Pe)])]),default:u(()=>[E(C)(`account`)?(o(),D(Q,{key:0,"illustration-src":E(ae),heading:E(c).heading,class:`screen`},{default:u(()=>[E(C)(`account`)?(o(),D(U,{key:0,modelValue:E(F).account,"onUpdate:modelValue":i[2]||=e=>E(F).account=e,errors:P.account},null,8,[`modelValue`,`errors`])):k(``,!0)]),_:1},8,[`illustration-src`,`heading`])):k(``,!0),E(C)(`db`)?(o(),D(Q,{key:1,"illustration-src":E(se),heading:E(c).heading,class:`screen`},{default:u(()=>[O(_e,{modelValue:E(F).db,"onUpdate:modelValue":i[3]||=e=>E(F).db=e,errors:P.db},null,8,[`modelValue`,`errors`])]),_:1},8,[`illustration-src`,`heading`])):k(``,!0),E(C)(`site`)?(o(),D(Q,{key:2,"illustration-src":E(oe),heading:E(c).heading,class:`screen`},{default:u(()=>[O(E(x),{data:`localeOptions`},{fallback:u(()=>[...i[8]||=[f(`craft-spinner`,null,null,-1)]]),default:u(()=>[O(K,{modelValue:E(F).site,"onUpdate:modelValue":i[4]||=e=>E(F).site=e,"locale-options":(t.localeOptions??[]).map(e=>({id:e.id,label:e.name,value:e.id})),errors:P.site},null,8,[`modelValue`,`locale-options`,`errors`])]),_:1})]),_:1},8,[`illustration-src`,`heading`])):k(``,!0)]),_:1},8,[`action`])]))]),_:1},8,[`is-active`])])],64))}}),[[`__scopeId`,`data-v-5853f0c6`]]);export{Fe as default};
\ No newline at end of file
diff --git a/resources/build/assets/Login-C2hh2SSE.js b/resources/build/assets/Login-C2hh2SSE.js
deleted file mode 100644
index 5b553d60e51..00000000000
--- a/resources/build/assets/Login-C2hh2SSE.js
+++ /dev/null
@@ -1 +0,0 @@
-import{E as e,R as t,V as n,X as r,b as i,dt as a,l as o,t as s,v as c,x as l,y as u}from"./_plugin-vue_export-helper-B5xWb4v9.js";import{i as d}from"./wayfinder-BO4LFEOp.js";import"./login-form-D4iZYHEp.js";import{n as f}from"./LoginController-CcEGM60c.js";var p=``+new URL(`craftcms-Dn6fy_A6.svg`,import.meta.url).href,m={class:`cp-login`},h={class:`grid gap-3 justify-items-center`},g={key:0,class:`flex justify-center`},_=[`src`,`alt`],v={class:`w-sm`},y={class:`cp-login__powered-by`,href:`http://craftcms.com/`,title:`Powered by Craft CMS`,"aria-label":`Craft CMS`},b=[`src`],x=s(e({__name:`AuthBase`,setup(e){let{general:r,system:o}=d();return(e,s)=>(t(),l(`div`,m,[c(`div`,h,[a(r).cpLogoUrl?(t(),l(`h1`,g,[c(`img`,{src:a(r).cpLogoUrl,alt:a(o).name,class:`cp-login__logo`,width:`288px`},null,8,_)])):i(``,!0),c(`div`,v,[n(e.$slots,`default`,{},void 0,!0)]),c(`a`,y,[c(`img`,{src:a(p),alt:``,class:`cp-login__craft-logo`,width:`104`,height:`26`},null,8,b)])])]))}}),[[`__scopeId`,`data-v-3149ff92`]]),S=[`action`,`username`,`use-email-as-username`],C=e({__name:`Login`,props:{errors:{},authFormData:{}},setup(e){let n=o(),{general:i}=d();return(e,o)=>(t(),u(x,null,{default:r(()=>[c(`craft-login-form`,{action:a(f)().url,"show-reset-password":``,"show-remember-me":``,username:a(n).props.username,"use-email-as-username":a(i).useEmailAsUsername?``:null},null,8,S)]),_:1}))}});export{C as default};
\ No newline at end of file
diff --git a/resources/build/assets/Login-DNeuAmEl.js b/resources/build/assets/Login-DNeuAmEl.js
new file mode 100644
index 00000000000..9bd161ff014
--- /dev/null
+++ b/resources/build/assets/Login-DNeuAmEl.js
@@ -0,0 +1 @@
+import{B as e,L as t,T as n,Y as r,_ as i,b as a,c as o,ut as s,v as c,y as l}from"./dist-LYoVBFtL.js";import{t as u}from"./_plugin-vue_export-helper-QKFMMAHA.js";import{t as d}from"./useCraftData-DQ9Mg_KR.js";import"./login-form-CWxGitPF.js";import{n as f}from"./LoginController-B8rT91UZ.js";var p=``+new URL(`craftcms-Dn6fy_A6.svg`,import.meta.url).href,m={class:`cp-login`},h={class:`grid gap-3 justify-items-center`},g={key:0,class:`flex justify-center`},_=[`src`,`alt`],v={class:`w-sm`},y={class:`cp-login__powered-by`,href:`http://craftcms.com/`,title:`Powered by Craft CMS`,"aria-label":`Craft CMS`},b=[`src`],x=u(n({__name:`AuthBase`,setup(n){let{general:r,system:o}=d();return(n,c)=>(t(),a(`div`,m,[i(`div`,h,[s(r).cpLogoUrl?(t(),a(`h1`,g,[i(`img`,{src:s(r).cpLogoUrl,alt:s(o).name,class:`cp-login__logo`,width:`288px`},null,8,_)])):l(``,!0),i(`div`,v,[e(n.$slots,`default`,{},void 0,!0)]),i(`a`,y,[i(`img`,{src:s(p),alt:``,class:`cp-login__craft-logo`,width:`104`,height:`26`},null,8,b)])])]))}}),[[`__scopeId`,`data-v-3149ff92`]]),S=[`action`,`username`,`use-email-as-username`],C=n({__name:`Login`,props:{errors:{},authFormData:{}},setup(e){let n=o(),{general:a}=d();return(e,o)=>(t(),c(x,null,{default:r(()=>[i(`craft-login-form`,{action:s(f)().url,"show-reset-password":``,"show-remember-me":``,username:s(n).props.username,"use-email-as-username":s(a).useEmailAsUsername?``:null},null,8,S)]),_:1}))}});export{C as default};
\ No newline at end of file
diff --git a/resources/build/assets/LoginController-CcEGM60c.js b/resources/build/assets/LoginController-B8rT91UZ.js
similarity index 97%
rename from resources/build/assets/LoginController-CcEGM60c.js
rename to resources/build/assets/LoginController-B8rT91UZ.js
index a5e4a5df902..527e33070ee 100644
--- a/resources/build/assets/LoginController-CcEGM60c.js
+++ b/resources/build/assets/LoginController-B8rT91UZ.js
@@ -1 +1 @@
-import{n as e}from"./wayfinder-BO4LFEOp.js";var t=e=>({url:t.url(e),method:`post`});t.definition={methods:[`post`],url:`/actions/users/login-modal`},t.url=n=>t.definition.url+e(n),t.post=e=>({url:t.url(e),method:`post`});var n=e=>({url:n.url(e),method:`post`});n.definition={methods:[`post`],url:`/admin/actions/users/login-modal`},n.url=t=>n.definition.url+e(t),n.post=e=>({url:n.url(e),method:`post`});var r={"/actions/users/login-modal":t,"/admin/actions/users/login-modal":n},i=e=>({url:i.url(e),method:`get`});i.definition={methods:[`get`,`head`,`post`,`put`,`patch`,`delete`,`options`],url:`/actions/users/redirect`},i.url=t=>i.definition.url+e(t),i.get=e=>({url:i.url(e),method:`get`}),i.head=e=>({url:i.url(e),method:`head`}),i.post=e=>({url:i.url(e),method:`post`}),i.put=e=>({url:i.url(e),method:`put`}),i.patch=e=>({url:i.url(e),method:`patch`}),i.delete=e=>({url:i.url(e),method:`delete`}),i.options=e=>({url:i.url(e),method:`options`});var a=e=>({url:a.url(e),method:`get`});a.definition={methods:[`get`,`head`,`post`,`put`,`patch`,`delete`,`options`],url:`/admin/actions/users/redirect`},a.url=t=>a.definition.url+e(t),a.get=e=>({url:a.url(e),method:`get`}),a.head=e=>({url:a.url(e),method:`head`}),a.post=e=>({url:a.url(e),method:`post`}),a.put=e=>({url:a.url(e),method:`put`}),a.patch=e=>({url:a.url(e),method:`patch`}),a.delete=e=>({url:a.url(e),method:`delete`}),a.options=e=>({url:a.url(e),method:`options`});var o={"/actions/users/redirect":i,"/admin/actions/users/redirect":a},s=e=>({url:s.url(e),method:`get`});s.definition={methods:[`get`,`head`],url:`/admin/login`},s.url=t=>s.definition.url+e(t),s.get=e=>({url:s.url(e),method:`get`}),s.head=e=>({url:s.url(e),method:`head`});var c=e=>({url:c.url(e),method:`post`});c.definition={methods:[`post`],url:`/admin/login`},c.url=t=>c.definition.url+e(t),c.post=e=>({url:c.url(e),method:`post`});var l=e=>({url:l.url(e),method:`get`});l.definition={methods:[`get`,`head`],url:`/admin/logout`},l.url=t=>l.definition.url+e(t),l.get=e=>({url:l.url(e),method:`get`}),l.head=e=>({url:l.url(e),method:`head`});var u={showLoginModal:r,redirect:o,showLogin:s,attemptLogin:c,logout:l};export{c as n,u as t};
\ No newline at end of file
+import{n as e}from"./wayfinder-K3R1_Wej.js";var t=e=>({url:t.url(e),method:`post`});t.definition={methods:[`post`],url:`/actions/users/login-modal`},t.url=n=>t.definition.url+e(n),t.post=e=>({url:t.url(e),method:`post`});var n=e=>({url:n.url(e),method:`post`});n.definition={methods:[`post`],url:`/admin/actions/users/login-modal`},n.url=t=>n.definition.url+e(t),n.post=e=>({url:n.url(e),method:`post`});var r={"/actions/users/login-modal":t,"/admin/actions/users/login-modal":n},i=e=>({url:i.url(e),method:`get`});i.definition={methods:[`get`,`head`,`post`,`put`,`patch`,`delete`,`options`],url:`/actions/users/redirect`},i.url=t=>i.definition.url+e(t),i.get=e=>({url:i.url(e),method:`get`}),i.head=e=>({url:i.url(e),method:`head`}),i.post=e=>({url:i.url(e),method:`post`}),i.put=e=>({url:i.url(e),method:`put`}),i.patch=e=>({url:i.url(e),method:`patch`}),i.delete=e=>({url:i.url(e),method:`delete`}),i.options=e=>({url:i.url(e),method:`options`});var a=e=>({url:a.url(e),method:`get`});a.definition={methods:[`get`,`head`,`post`,`put`,`patch`,`delete`,`options`],url:`/admin/actions/users/redirect`},a.url=t=>a.definition.url+e(t),a.get=e=>({url:a.url(e),method:`get`}),a.head=e=>({url:a.url(e),method:`head`}),a.post=e=>({url:a.url(e),method:`post`}),a.put=e=>({url:a.url(e),method:`put`}),a.patch=e=>({url:a.url(e),method:`patch`}),a.delete=e=>({url:a.url(e),method:`delete`}),a.options=e=>({url:a.url(e),method:`options`});var o={"/actions/users/redirect":i,"/admin/actions/users/redirect":a},s=e=>({url:s.url(e),method:`get`});s.definition={methods:[`get`,`head`],url:`/admin/login`},s.url=t=>s.definition.url+e(t),s.get=e=>({url:s.url(e),method:`get`}),s.head=e=>({url:s.url(e),method:`head`});var c=e=>({url:c.url(e),method:`post`});c.definition={methods:[`post`],url:`/admin/login`},c.url=t=>c.definition.url+e(t),c.post=e=>({url:c.url(e),method:`post`});var l=e=>({url:l.url(e),method:`get`});l.definition={methods:[`get`,`head`],url:`/admin/logout`},l.url=t=>l.definition.url+e(t),l.get=e=>({url:l.url(e),method:`get`}),l.head=e=>({url:l.url(e),method:`head`});var u={showLoginModal:r,redirect:o,showLogin:s,attemptLogin:c,logout:l};export{c as n,u as t};
\ No newline at end of file
diff --git a/resources/build/assets/MarkdownField-B9C38m4g.js b/resources/build/assets/MarkdownField-B9C38m4g.js
new file mode 100644
index 00000000000..3055c812876
--- /dev/null
+++ b/resources/build/assets/MarkdownField-B9C38m4g.js
@@ -0,0 +1,1105 @@
+import"./cp-DBw9TANf.js";import{l as e}from"./nav-item-CDlDuMpT-DENemU4x.js";import{c as t,r as n,t as r}from"./lit-BpPOIUnZ.js";import{a as i,i as a,o}from"./decorators-BOwDFZC2.js";import{s}from"./dist-LYoVBFtL.js";import{n as c}from"./wayfinder-K3R1_Wej.js";import{t as l}from"./useFlashMessages-Cdd9gEAV.js";import{t as u}from"./decorate-CpzDR30L.js";var d=Object.defineProperty,f=(e,t,n)=>t in e?d(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,p=(e,t)=>{for(var n in t)d(e,n,{get:t[n],enumerable:!0})},m=(e,t,n)=>(f(e,typeof t==`symbol`?t:t+``,n),n),h=class{static resetLinkIndex(){this.linkIndex=0}static setCodeHighlighter(e){this.codeHighlighter=e}static setCustomSyntax(e){this.customSyntax=e}static applyCustomSyntax(e){return this.customSyntax?this.customSyntax(e):e}static escapeHtml(e){let t={"&":`&`,"<":`<`,">":`>`,'"':`"`,"'":`'`};return e.replace(/[&<>"']/g,e=>t[e])}static preserveIndentation(e,t){let n=t.match(/^(\s*)/)[1].replace(/ /g,` `);return e.replace(/^\s*/,n)}static parseHeader(e){return e.replace(/^(#{1,3})\s(.+)$/,(e,t,n)=>{let r=t.length;return n=this.parseInlineElements(n),`${t} ${n}`})}static parseHorizontalRule(e){return e.match(/^(-{3,}|\*{3,}|_{3,})$/)?`
(.*?)<\/div>/s,`$1`).replace(/ /g,` `)).join(`
+`),o=n.slice(3).trim(),s=o?` class="language-${o}"`:``,c=a,l=t||this.codeHighlighter;if(l)try{let e=l(a.replace(/"/g,`"`).replace(/'/g,`'`).replace(/</g,`<`).replace(/>/g,`>`).replace(/&/g,`&`),o);e&&typeof e.then==`function`?console.warn(`Async highlighters are not supported in Node.js (non-DOM) context. Use synchronous highlighters for server-side rendering.`):e&&typeof e==`string`&&e.trim()&&(c=e)}catch(e){console.warn(`Code highlighting failed:`,e)}let u=`
\n");
+});
+
+it('renders as safe html in twig while raw markdown remains accessible', function () {
+ $value = new MarkdownData('**bold**', MarkdownService::FLAVOR_GFM);
+ $renderer = app(TemplateRenderer::class);
+
+ expect($renderer->renderString('{{ body }}', ['body' => $value], escapeHtml: true))->toBe("
bold
\n")
+ ->and($renderer->renderString('{{ body.raw }}', ['body' => $value], escapeHtml: true))->toBe('**bold**');
+});
+
+it('returns rendered html by default and raw markdown when requested through graphql', function () {
+ $field = new MarkdownField([
+ 'handle' => 'body',
+ 'flavor' => MarkdownService::FLAVOR_GFM_COMMENT,
+ ]);
+ $type = $field->getContentGqlType();
+ $source = new class
+ {
+ public function getFieldValue(string $fieldName): MarkdownData
+ {
+ expect($fieldName)->toBe('body');
+
+ return new MarkdownData("line one\nline two", MarkdownService::FLAVOR_GFM_COMMENT);
+ }
+ };
+
+ expect($type['args']['raw']['defaultValue'])->toBeFalse()
+ ->and($type['resolve']($source, [], null, markdownFieldResolveInfo('body')))->toBe("