vibe64 0.1.21 → 0.1.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/ProjectTypeGate-B3NHteXC.js +1 -0
- package/dist/assets/ProjectTypeGate-fJcYj6sR.css +1 -0
- package/dist/assets/{SetupReadinessGate-DkkorR2Y.js → SetupReadinessGate-2twHjoYZ.js} +1 -1
- package/dist/assets/{ShellLayout-BcKS2HG9.js → ShellLayout-BjAbXfzf.js} +1 -1
- package/dist/assets/{VTabs-BJ8MKoig.js → VTabs-BLGGdbms.js} +1 -1
- package/dist/assets/{error-CwT53qTu.js → error-DvUPciuh.js} +1 -1
- package/dist/assets/history-DfM4ewyV.js +1 -0
- package/dist/assets/home-sh4v0vz7.js +1 -0
- package/dist/assets/index-C4JbNnml.css +1 -0
- package/dist/assets/{index-BJxDQvyK.js → index-CdFWokfE.js} +1 -1
- package/dist/assets/index-D4oqjV9n.js +132 -0
- package/dist/assets/{index-CY-wDjNv.js → index-DqoYKexs.js} +15 -15
- package/dist/assets/{placement-7FCYadh2.js → placement-QfRaYTFY.js} +1 -1
- package/dist/assets/{setup-BzzdD38G.js → setup-B-WOti3H.js} +2 -2
- package/dist/assets/{streamEvents-Ba9kHw-1.js → streamEvents-CIqegoLa.js} +1 -1
- package/dist/assets/{studioGateApi-hkZdLr1Y.js → studioGateApi-CFtez6lH.js} +1 -1
- package/dist/assets/{target-scripts-8hczu84t.js → target-scripts-CI-nAISO.js} +1 -1
- package/dist/assets/useStudioTerminal-I8tuBymw.js +1 -0
- package/dist/assets/vibe64SessionPanelModel-DLdexNxC.js +1 -0
- package/dist/index.html +1 -1
- package/node_modules/@local/setup-doctor-core/src/server/doctorToolchain.js +4 -0
- package/node_modules/@local/studio-terminal-core/src/server/gitGithubTransport.js +33 -0
- package/node_modules/@local/studio-terminal-core/src/server/index.js +1 -0
- package/node_modules/@local/studio-terminal-core/src/server/terminalSessions.js +51 -1
- package/node_modules/@local/vibe64-adapters/src/server/adapter.js +4 -0
- package/node_modules/@local/vibe64-adapters/src/server/adapters/laravel/adapter.js +5 -0
- package/node_modules/@local/vibe64-adapters/src/server/adapters/laravel/databaseRuntime.js +50 -0
- package/node_modules/@local/vibe64-adapters/src/server/configStore.js +22 -1
- package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/agent_conversation.txt +0 -2
- package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/draft_issue.txt +18 -0
- package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/make_plan.txt +14 -2
- package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/prepare_for_merge.txt +2 -0
- package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/resolve_pull_request.txt +1 -0
- package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/run_deep_ui_check.txt +7 -3
- package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/commitPush.js +4 -22
- package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/factMetadata.js +21 -20
- package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/issuePr.js +27 -4
- package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/mergeSync.js +65 -8
- package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/worktreeDependencies.js +12 -25
- package/node_modules/@local/vibe64-adapters/src/server/workflowSessionActions.js +77 -20
- package/node_modules/@local/vibe64-core/src/server/terminalWebSocketRoutes.js +14 -5
- package/node_modules/@local/vibe64-project/src/server/actions.js +21 -0
- package/node_modules/@local/vibe64-project/src/server/registerRoutes.js +6 -0
- package/node_modules/@local/vibe64-project/src/server/service.js +125 -8
- package/node_modules/@local/vibe64-runtime/src/server/coreProjectTools.js +135 -0
- package/node_modules/@local/vibe64-runtime/src/server/index.js +4 -0
- package/node_modules/@local/vibe64-runtime/src/server/projectToolRegistry.js +434 -0
- package/node_modules/@local/vibe64-runtime/src/server/runtime.js +40 -16
- package/node_modules/@local/vibe64-runtime/src/server/sessionWorktreeState.js +25 -0
- package/node_modules/@local/vibe64-runtime/src/server/terminalFailureFixRequest.js +112 -0
- package/node_modules/@local/vibe64-runtime/src/server/workflowArtifacts.js +2 -2
- package/node_modules/@local/vibe64-runtime/src/server/workflowDefinitionBuilders.js +1 -0
- package/node_modules/@local/vibe64-runtime/src/server/workflowDefinitionComposers.js +192 -0
- package/node_modules/@local/vibe64-runtime/src/server/workflowMachine.js +5 -0
- package/node_modules/@local/vibe64-runtime/src/server/workflowModules/coreCoding.js +1309 -419
- package/node_modules/@local/vibe64-runtime/src/server/workflowModules/coreLifecycle.js +540 -358
- package/node_modules/@local/vibe64-runtime/src/server/workflowModules/coreMaintenance.js +5 -26
- package/node_modules/@local/vibe64-runtime/src/server/workflowPresentation.js +153 -26
- package/node_modules/@local/vibe64-runtime/src/server/workflowStepMachineHelpers.js +63 -10
- package/node_modules/@local/vibe64-runtime/src/server/workflowStepMachines.js +63 -2
- package/node_modules/@local/vibe64-sessions/src/server/inputSchemas.js +5 -0
- package/node_modules/@local/vibe64-sessions/src/server/service.js +8 -9
- package/node_modules/@local/vibe64-terminals/src/server/actions.js +65 -0
- package/node_modules/@local/vibe64-terminals/src/server/codexTerminal.js +608 -23
- package/node_modules/@local/vibe64-terminals/src/server/commandTerminal.js +261 -4
- package/node_modules/@local/vibe64-terminals/src/server/fixCodexJobs.js +420 -0
- package/node_modules/@local/vibe64-terminals/src/server/inputSchemas.js +240 -0
- package/node_modules/@local/vibe64-terminals/src/server/launchTargetTerminal.js +2 -0
- package/node_modules/@local/vibe64-terminals/src/server/registerRoutes.js +226 -0
- package/node_modules/@local/vibe64-terminals/src/server/service.js +140 -1
- package/node_modules/@local/vibe64-terminals/src/server/targetToolchainTerminal.js +1 -1
- package/node_modules/@local/vibe64-terminals/src/server/terminalShared.js +34 -0
- package/node_modules/node-pty/build/Makefile +369 -0
- package/node_modules/node-pty/build/Release/pty.node +0 -0
- package/node_modules/node-pty/build/binding.Makefile +6 -0
- package/node_modules/node-pty/build/config.gypi +440 -0
- package/node_modules/node-pty/build/pty.target.mk +166 -0
- package/node_modules/node-pty/node-addon-api/node_addon_api.Makefile +6 -0
- package/node_modules/node-pty/node-addon-api/node_addon_api.target.mk +104 -0
- package/node_modules/node-pty/node-addon-api/node_addon_api_except.target.mk +108 -0
- package/node_modules/node-pty/node-addon-api/node_addon_api_maybe.target.mk +104 -0
- package/node_modules/which/CHANGELOG.md +166 -0
- package/package.json +2 -2
- package/packages/setup-doctor-core/src/server/doctorToolchain.js +4 -0
- package/packages/studio-terminal-core/src/server/gitGithubTransport.js +33 -0
- package/packages/studio-terminal-core/src/server/index.js +1 -0
- package/packages/studio-terminal-core/src/server/terminalSessions.js +51 -1
- package/packages/vibe64-adapters/src/server/adapter.js +4 -0
- package/packages/vibe64-adapters/src/server/adapters/laravel/adapter.js +5 -0
- package/packages/vibe64-adapters/src/server/adapters/laravel/databaseRuntime.js +50 -0
- package/packages/vibe64-adapters/src/server/configStore.js +22 -1
- package/packages/vibe64-adapters/src/server/systemPrompts/agent_conversation.txt +0 -2
- package/packages/vibe64-adapters/src/server/systemPrompts/draft_issue.txt +18 -0
- package/packages/vibe64-adapters/src/server/systemPrompts/make_plan.txt +14 -2
- package/packages/vibe64-adapters/src/server/systemPrompts/prepare_for_merge.txt +2 -0
- package/packages/vibe64-adapters/src/server/systemPrompts/resolve_pull_request.txt +1 -0
- package/packages/vibe64-adapters/src/server/systemPrompts/run_deep_ui_check.txt +7 -3
- package/packages/vibe64-adapters/src/server/workflowCommandTerminal/commitPush.js +4 -22
- package/packages/vibe64-adapters/src/server/workflowCommandTerminal/factMetadata.js +21 -20
- package/packages/vibe64-adapters/src/server/workflowCommandTerminal/issuePr.js +27 -4
- package/packages/vibe64-adapters/src/server/workflowCommandTerminal/mergeSync.js +65 -8
- package/packages/vibe64-adapters/src/server/workflowCommandTerminal/worktreeDependencies.js +12 -25
- package/packages/vibe64-adapters/src/server/workflowSessionActions.js +77 -20
- package/packages/vibe64-core/src/server/terminalWebSocketRoutes.js +14 -5
- package/packages/vibe64-project/src/server/actions.js +21 -0
- package/packages/vibe64-project/src/server/registerRoutes.js +6 -0
- package/packages/vibe64-project/src/server/service.js +125 -8
- package/packages/vibe64-runtime/src/server/coreProjectTools.js +135 -0
- package/packages/vibe64-runtime/src/server/index.js +4 -0
- package/packages/vibe64-runtime/src/server/projectToolRegistry.js +434 -0
- package/packages/vibe64-runtime/src/server/runtime.js +40 -16
- package/packages/vibe64-runtime/src/server/sessionWorktreeState.js +25 -0
- package/packages/vibe64-runtime/src/server/terminalFailureFixRequest.js +112 -0
- package/packages/vibe64-runtime/src/server/workflowArtifacts.js +2 -2
- package/packages/vibe64-runtime/src/server/workflowDefinitionBuilders.js +1 -0
- package/packages/vibe64-runtime/src/server/workflowDefinitionComposers.js +192 -0
- package/packages/vibe64-runtime/src/server/workflowMachine.js +5 -0
- package/packages/vibe64-runtime/src/server/workflowModules/coreCoding.js +1309 -419
- package/packages/vibe64-runtime/src/server/workflowModules/coreLifecycle.js +540 -358
- package/packages/vibe64-runtime/src/server/workflowModules/coreMaintenance.js +5 -26
- package/packages/vibe64-runtime/src/server/workflowPresentation.js +153 -26
- package/packages/vibe64-runtime/src/server/workflowStepMachineHelpers.js +63 -10
- package/packages/vibe64-runtime/src/server/workflowStepMachines.js +63 -2
- package/packages/vibe64-sessions/src/server/inputSchemas.js +5 -0
- package/packages/vibe64-sessions/src/server/service.js +8 -9
- package/packages/vibe64-terminals/src/server/actions.js +65 -0
- package/packages/vibe64-terminals/src/server/codexTerminal.js +608 -23
- package/packages/vibe64-terminals/src/server/commandTerminal.js +261 -4
- package/packages/vibe64-terminals/src/server/fixCodexJobs.js +420 -0
- package/packages/vibe64-terminals/src/server/inputSchemas.js +240 -0
- package/packages/vibe64-terminals/src/server/launchTargetTerminal.js +2 -0
- package/packages/vibe64-terminals/src/server/registerRoutes.js +226 -0
- package/packages/vibe64-terminals/src/server/service.js +140 -1
- package/packages/vibe64-terminals/src/server/targetToolchainTerminal.js +1 -1
- package/packages/vibe64-terminals/src/server/terminalShared.js +34 -0
- package/dist/assets/ProjectTypeGate-DStq4W4X.js +0 -1
- package/dist/assets/ProjectTypeGate-Dh2ycSoM.css +0 -1
- package/dist/assets/history-HQ_XliX2.js +0 -1
- package/dist/assets/home-B89EbUmA.js +0 -1
- package/dist/assets/index-16P0GeGq.js +0 -134
- package/dist/assets/index-eMhOXhf_.css +0 -1
- package/dist/assets/useStudioTerminal-D9TNb50w.js +0 -1
- package/dist/assets/vibe64SessionPanelModel-DvY_IbW3.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{N as ua,p as ca,z as mn,G as da,D as fa,m as He,q as va,n as ma,R as Ct,B as ya,M as pa,r as ha,C as ga,F as ba,E as Sa,I as _a,K as yn,g as Ca,t as Pa,P as ka,s as Ia,k as st,j as Va,L as Jt,i as wa}from"./studioGateApi-hkZdLr1Y.js";import{bU as de,bR as De,bP as xa,c4 as q,a as ve,aH as pn,aQ as nt,aE as Aa,aB as me,ai as ie,d2 as Pt,cK as hn,cN as gn,c_ as Ye,cM as Ea,I as Ke,de as ee,cZ as ce,a6 as w,$ as v,t as Qt,u as ye,bO as Y,bS as he,Y as b,ct as te,af as bn,a8 as $e,aU as Sn,aR as ze,c7 as qe,c6 as _n,bK as H,cB as z,e as Xe,cU as kt,cH as Cn,cI as It,c$ as Vt,d6 as ja,cX as pe,cO as Yt,cS as Ra,da as Ta,dh as Fe,ah as Oa,s as Pn,n as Te,dd as at,F as ne,h as vt,cA as K,cL as kn,aP as Fa,aO as za,aN as wt,aG as Ma,aF as In,aC as xt,aA as Vn,E as we,cG as At,cV as $a,cW as La,aM as Ba,aL as Da,aD as Et,cJ as jt,_ as lt,c1 as B,a0 as Pe,dg as _e,cE as ue,aY as Na,a4 as Ee,a1 as Se,a3 as J,i as Ze,bc as Ua,b3 as Ka,b2 as Ga,r as Ha,cb as Q,ch as wn,db as xn,d0 as qa,cj as Wa,co as Ja,d4 as Qa,cn as An,ck as Ya,bT as Xt,cl as Xa,d5 as En,c9 as jn,c8 as Rn,M as Tn,aS as Rt,D as On,N as Fn,am as zn,aK as Za,cT as Mn,cP as je,d8 as Tt,L as $n,P as el,bX as tl,B as nl,K as al,cv as ll,Z as Ue,dk as Ie,av as Ot,al as Ln,bZ as ol,b_ as rl,b$ as Bn,d9 as mt,bL as Oe,c3 as il,b as Zt,ag as Ft,bY as ot,ad as zt,X as sl,c5 as ul,c0 as Mt,aV as yt,df as pt,a7 as cl,U as ut,ao as Dn,ap as dl,cD as ht,cQ as fl,p as vl,aI as ml,y as yl,v as pl,w as gt,O as hl,q as gl,x as bl,aa as Sl,Q as en,S as _l,C as Cl,z as Pl,cc as Le,bo as kl,cd as Il,cx as Vl,R as ct,A as wl}from"./index-CY-wDjNv.js";function Nn(e){const t=Array.isArray(e)?e:[e],n=new Set;for(const a of t){const o=de(a);o&&n.add(o)}return[...n]}function xl(e=[],t=""){const n=de(t);if(!n)return!0;const a=Nn(e);if(a.includes("*")||a.includes(n))return!0;for(const o of a){if(!o.endsWith(".*"))continue;const l=o.slice(0,-2);if(l&&n.startsWith(`${l}.`))return!0}return!1}const Al=new Set(["create","replace","patch"]),El=Object.freeze({REQUIRED:"required",TYPE_CAST_FAILED:"default",NOT_NULLABLE:"default",MIN_LENGTH:"minLength",MAX_LENGTH:"maxLength",MIN_VALUE:"min",MAX_VALUE:"max",PATTERN:"pattern",ENUM_VALUE:"enum",FIELD_NOT_ALLOWED:"additionalProperties",CUSTOM_VALIDATOR_FAILED:"default"});function $t(e){return!!e&&typeof e=="object"&&typeof e.create=="function"&&typeof e.replace=="function"&&typeof e.patch=="function"&&typeof e.toJsonSchema=="function"}function jl(e=null,{context:t="schema definition.schema"}={}){const n=De(e).schema;if(!$t(n))throw new TypeError(`${t} must be a json-rest-schema schema instance.`);return n}function Un(e=null,{defaultMode:t="create",context:n="schema definition.mode"}={}){const a=De(e),o=de(t).toLowerCase()||"create",l=Object.prototype.hasOwnProperty.call(a,"mode")?de(a.mode).toLowerCase():"";if(!l)return o;if(!Al.has(l))throw new TypeError(`${n} must be one of: create, replace, patch.`);return l}function Rl(e=null,t,n={}){const a=jl(e,{context:`${(n==null?void 0:n.context)||"schema definition"}.schema`}),o=Un(e,n);return a[o](t)}function Tl(e=null,t=""){const n=de(t);if(!n)return{};const a=De(e);return $t(a.schema)?De(a.schema.getFieldMessages(n)):{}}function Ol(e,t,n=null){const a=Tl(n,e),o=de(t==null?void 0:t.code).toUpperCase(),l=El[o];if(l&&typeof a[l]=="string"){const i=de(a[l]);if(i)return i}if(typeof a.default=="string"){const i=de(a.default);if(i)return i}return de((t==null?void 0:t.message)||(t==null?void 0:t.code)||"Invalid value.")}function Fl(e={},t=null){const n=De(e),a={};for(const[o,l]of Object.entries(n)){const i=de(o);if(!i)continue;if(typeof l=="string"){a[i]=l;continue}const r=Ol(i,l,t);a[i]=r||"Invalid value."}return a}function zl(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&(Object.prototype.hasOwnProperty.call(e,"schema")||Object.prototype.hasOwnProperty.call(e,"mode"))}function Ml(e,{context:t="schema definition",defaultMode:n=""}={}){if(e==null)return null;if(!zl(e))throw new TypeError(`${t} must be a schema definition object.`);const a=De(e);if(!Object.prototype.hasOwnProperty.call(a,"schema"))throw new TypeError(`${t}.schema is required.`);if(!$t(a.schema))throw new TypeError(`${t}.schema must be a json-rest-schema schema instance.`);const o={schema:a.schema},l=de(n).toLowerCase();return o.mode=Un(a,{defaultMode:l||"patch",context:`${t}.mode`}),Object.freeze(o)}function $l(e,{context:t="schema definition",defaultMode:n=""}={}){return Ml(e,{context:t,defaultMode:n})}function Ll(e,t,{context:n="schema definition",defaultMode:a=""}={}){const o=$l(e,{context:n,defaultMode:a});return o?Rl(o,t,{defaultMode:a||"patch",context:`${n}.mode`}):null}function Bl({message:e="Schema validation failed.",fieldErrors:t=null,errors:n=null,cause:a,statusCode:o=null}={}){const l=new Error(e,a?{cause:a}:void 0);return Number.isInteger(o)&&o>=400&&o<=599&&(l.statusCode=o),t&&typeof t=="object"?(l.fieldErrors=t,l.details={...l.details||{},fieldErrors:t}):n!=null&&(l.details={...l.details||{},errors:n}),l}function Dl(e,t,{phase:n="input",context:a="schema definition",statusCode:o=null}={}){if(e==null)return t;const l=Ll(e,t,{defaultMode:n==="output"?"replace":"patch",context:a});if(!l)throw new TypeError(`${a}.schema must be a json-rest-schema schema instance.`);const i=Fl(l==null?void 0:l.errors,e);if(Object.keys(i).length>0)throw Bl({fieldErrors:i,statusCode:o});return(l==null?void 0:l.validatedObject)??t}function Nl({error:e="Validation failed.",code:t="validation_failed",fieldErrors:n={}}={}){const a=xa(n);return{error:String(e||"Validation failed.").trim()||"Validation failed.",code:String(t||"validation_failed").trim()||"validation_failed",fieldErrors:a,details:{fieldErrors:a}}}function Ul({selectedElement:e,containerElement:t,isRtl:n,isHorizontal:a}){const o=Ge(a,t),l=Kn(a,n,t),i=Ge(a,e),r=Gn(a,e),u=i*.4;return l>r?r-u:l+o<r+i?r-o+i+u:l}function Kl({selectedElement:e,containerElement:t,isHorizontal:n}){const a=Ge(n,t),o=Gn(n,e),l=Ge(n,e);return o-a/2+l/2}function Gl(e,t){const n=e?"scrollWidth":"scrollHeight";return(t==null?void 0:t[n])||0}function Kn(e,t,n){if(!n)return 0;const{scrollLeft:a,offsetWidth:o,scrollWidth:l}=n;return e?t?l-o+a:a:n.scrollTop}function Ge(e,t){const n=e?"offsetWidth":"offsetHeight";return(t==null?void 0:t[n])||0}function Gn(e,t){const n=e?"offsetLeft":"offsetTop";return(t==null?void 0:t[n])||0}const Hn=Symbol.for("vuetify:v-slide-group"),qn=q({centerActive:Boolean,scrollToActive:{type:Boolean,default:!0},contentClass:null,direction:{type:String,default:"horizontal"},symbol:{type:null,default:Hn},nextIcon:{type:ve,default:"$next"},prevIcon:{type:ve,default:"$prev"},showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||["always","desktop","mobile","never"].includes(e)},...me(),...Aa({mobile:null}),...nt(),...pn({selectedClass:"v-slide-group-item--active"})},"VSlideGroup"),tn=ie()({name:"VSlideGroup",props:qn(),emits:{"update:modelValue":e=>!0},setup(e,{slots:t}){const{isRtl:n}=Pt(),{displayClasses:a,mobile:o}=hn(e),l=gn(e,e.symbol),i=te(!1),r=te(0),u=te(0),p=te(0),h=b(()=>e.direction==="horizontal"),{resizeRef:c,contentRect:m}=Ye(),{resizeRef:d,contentRect:y}=Ye(),S=Ea(),s=b(()=>({container:c.el,duration:200,easing:"easeOutQuart"})),f=b(()=>l.selected.value.length?l.items.value.findIndex(k=>k.id===l.selected.value[0]):-1),g=b(()=>l.selected.value.length?l.items.value.findIndex(k=>k.id===l.selected.value[l.selected.value.length-1]):-1);if(Ke){let k=-1;ee(()=>[l.selected.value,m.value,y.value,h.value],()=>{cancelAnimationFrame(k),k=requestAnimationFrame(()=>{if(m.value&&y.value){const x=h.value?"width":"height";u.value=m.value[x],p.value=y.value[x],i.value=u.value+1<p.value}if(e.scrollToActive&&f.value>=0&&d.el){const x=d.el.children[g.value];C(x,e.centerActive)}})})}const _=te(!1);function C(k,x){let F=0;x?F=Kl({containerElement:c.el,isHorizontal:h.value,selectedElement:k}):F=Ul({containerElement:c.el,isHorizontal:h.value,isRtl:n.value,selectedElement:k}),I(F)}function I(k){if(!Ke||!c.el)return;const x=Ge(h.value,c.el),F=Kn(h.value,n.value,c.el);if(!(Gl(h.value,c.el)<=x||Math.abs(k-F)<16)){if(h.value&&n.value&&c.el){const{scrollWidth:fe,offsetWidth:Ve}=c.el;k=fe-Ve-k}h.value?S.horizontal(k,s.value):S(k,s.value)}}function P(k){const{scrollTop:x,scrollLeft:F}=k.target;r.value=h.value?F:x}function V(k){if(_.value=!0,!(!i.value||!d.el)){for(const x of k.composedPath())for(const F of d.el.children)if(F===x){C(F);return}}}function T(k){_.value=!1}let j=!1;function M(k){var x;!j&&!_.value&&!(k.relatedTarget&&((x=d.el)!=null&&x.contains(k.relatedTarget)))&&D(),j=!1}function E(){j=!0}function R(k){if(!d.el)return;function x(F){k.preventDefault(),D(F)}h.value?k.key==="ArrowRight"?x(n.value?"prev":"next"):k.key==="ArrowLeft"&&x(n.value?"next":"prev"):k.key==="ArrowDown"?x("next"):k.key==="ArrowUp"&&x("prev"),k.key==="Home"?x("first"):k.key==="End"&&x("last")}function $(k,x){if(!k)return;let F=k;do F=F==null?void 0:F[x==="next"?"nextElementSibling":"previousElementSibling"];while(F!=null&&F.hasAttribute("disabled"));return F}function D(k){if(!d.el)return;let x;if(!k)x=bn(d.el)[0];else if(k==="next"){if(x=$(d.el.querySelector(":focus"),k),!x)return D("first")}else if(k==="prev"){if(x=$(d.el.querySelector(":focus"),k),!x)return D("last")}else k==="first"?(x=d.el.firstElementChild,x!=null&&x.hasAttribute("disabled")&&(x=$(x,"next"))):k==="last"&&(x=d.el.lastElementChild,x!=null&&x.hasAttribute("disabled")&&(x=$(x,"prev")));x&&x.focus({preventScroll:!0})}function N(k){const x=h.value&&n.value?-1:1,F=(k==="prev"?-x:x)*u.value;let le=r.value+F;if(h.value&&n.value&&c.el){const{scrollWidth:fe,offsetWidth:Ve}=c.el;le+=fe-Ve}I(le)}const G=b(()=>({next:l.next,prev:l.prev,select:l.select,isSelected:l.isSelected})),U=b(()=>i.value||Math.abs(r.value)>0),ae=b(()=>{switch(e.showArrows){case"never":return!1;case"always":return!0;case"desktop":return!o.value;case!0:return U.value;case"mobile":return o.value||U.value;default:return!o.value&&U.value}}),se=b(()=>Math.abs(r.value)>1),O=b(()=>U.value?p.value-u.value-Math.abs(r.value)>1:!1);return ce(()=>w(e.tag,{class:Y(["v-slide-group",{"v-slide-group--vertical":!h.value,"v-slide-group--has-affixes":ae.value,"v-slide-group--is-overflowing":i.value},a.value,e.class]),style:he(e.style),tabindex:_.value||l.selected.value.length?-1:0,onFocus:M},{default:()=>{var k,x,F;return[ae.value&&v("div",{key:"prev",class:Y(["v-slide-group__prev",{"v-slide-group__prev--disabled":!se.value}]),onMousedown:E,onClick:()=>se.value&&N("prev")},[((k=t.prev)==null?void 0:k.call(t,G.value))??w(Qt,null,{default:()=>[w(ye,{icon:n.value?e.nextIcon:e.prevIcon},null)]})]),v("div",{key:"container",ref:c,class:Y(["v-slide-group__container",e.contentClass]),onScroll:P},[v("div",{ref:d,class:"v-slide-group__content",onFocusin:V,onFocusout:T,onKeydown:R},[(x=t.default)==null?void 0:x.call(t,G.value)])]),ae.value&&v("div",{key:"next",class:Y(["v-slide-group__next",{"v-slide-group__next--disabled":!O.value}]),onMousedown:E,onClick:()=>O.value&&N("next")},[((F=t.next)==null?void 0:F.call(t,G.value))??w(Qt,null,{default:()=>[w(ye,{icon:n.value?e.prevIcon:e.nextIcon},null)]})])]}})),{selected:l.selected,scrollTo:N,scrollOffset:r,focus:D,hasPrev:se,hasNext:O}}}),Wn=Symbol.for("vuetify:v-chip-group"),Hl=q({baseColor:String,column:Boolean,filter:Boolean,valueComparator:{type:Function,default:$e},...qn({scrollToActive:!1}),...me(),...pn({selectedClass:"v-chip--selected"}),...nt(),...ze(),...Sn({variant:"tonal"})},"VChipGroup");ie()({name:"VChipGroup",props:Hl(),emits:{"update:modelValue":e=>!0},setup(e,{slots:t}){const{themeClasses:n}=qe(e),{isSelected:a,select:o,next:l,prev:i,selected:r}=gn(e,Wn);return _n({VChip:{baseColor:z(()=>e.baseColor),color:z(()=>e.color),disabled:z(()=>e.disabled),filter:z(()=>e.filter),variant:z(()=>e.variant)}}),ce(()=>{const u=tn.filterProps(e);return w(tn,H(u,{class:["v-chip-group",{"v-chip-group--column":e.column},n.value,e.class],style:e.style}),{default:()=>{var p;return[(p=t.default)==null?void 0:p.call(t,{isSelected:a,select:o,next:l,prev:i,selected:r.value})]}})}),{}}});const ql=q({activeClass:String,appendAvatar:String,appendIcon:ve,baseColor:String,closable:Boolean,closeIcon:{type:ve,default:"$delete"},closeLabel:{type:String,default:"$vuetify.close"},draggable:Boolean,filter:Boolean,filterIcon:{type:ve,default:"$complete"},label:Boolean,link:{type:Boolean,default:void 0},pill:Boolean,prependAvatar:String,prependIcon:ve,ripple:{type:[Boolean,Object],default:!0},text:{type:[String,Number,Boolean],default:void 0},modelValue:{type:Boolean,default:!0},onClick:we(),onClickOnce:we(),...Vn(),...me(),...xt(),...In(),...Ma(),...wt(),...za(),...Fa(),...nt({tag:"span"}),...ze(),...Sn({variant:"tonal"})},"VChip"),Be=ie()({name:"VChip",directives:{vRipple:Xe},props:ql(),emits:{"click:close":e=>!0,"update:modelValue":e=>!0,"group:selected":e=>!0,click:e=>!0},setup(e,{attrs:t,emit:n,slots:a}){const{t:o}=kt(),{borderClasses:l}=Cn(e),{densityClasses:i}=It(e),{elevationClasses:r}=kn(e),{roundedClasses:u}=Vt(e),{sizeClasses:p}=ja(e),{themeClasses:h}=qe(e),c=pe(e,"modelValue"),m=Yt(e,Wn,!1),d=Yt(e,Hn,!1),y=Ra(e,t),S=z(()=>e.link!==!1&&y.isLink.value),s=b(()=>!e.disabled&&e.link!==!1&&(!!m||e.link||y.isClickable.value)),f=z(()=>({"aria-label":o(e.closeLabel),disabled:e.disabled,onClick(V){V.preventDefault(),V.stopPropagation(),c.value=!1,n("click:close",V)}}));ee(c,V=>{V?(m==null||m.register(),d==null||d.register()):(m==null||m.unregister(),d==null||d.unregister())});const{colorClasses:g,colorStyles:_,variantClasses:C}=Ta(()=>({color:!m||m.isSelected.value?e.color??e.baseColor:e.baseColor,variant:e.variant}));function I(V){var T,j;n("click",V),s.value&&((j=(T=y.navigate).value)==null||j.call(T,V),m==null||m.toggle())}function P(V){(V.key==="Enter"||V.key===" ")&&(V.preventDefault(),I(V))}return()=>{var D;const V=y.isLink.value?"a":e.tag,T=!!(e.appendIcon||e.appendAvatar),j=!!(T||a.append),M=!!(a.close||e.closable),E=!!(a.filter||e.filter)&&m,R=!!(e.prependIcon||e.prependAvatar),$=!!(R||a.prepend);return c.value&&Fe(w(V,H(y.linkProps,{class:["v-chip",{"v-chip--disabled":e.disabled,"v-chip--label":e.label,"v-chip--link":s.value,"v-chip--filter":E,"v-chip--pill":e.pill,[`${e.activeClass}`]:e.activeClass&&((D=y.isActive)==null?void 0:D.value)},h.value,l.value,g.value,i.value,r.value,u.value,p.value,C.value,m==null?void 0:m.selectedClass.value,e.class],style:[_.value,e.style],disabled:e.disabled||void 0,draggable:e.draggable,tabindex:s.value?0:void 0,onClick:I,onKeydown:s.value&&!S.value&&P}),{default:()=>{var N;return[Oa(s.value,"v-chip"),E&&w(Pn,{key:"filter"},{default:()=>[Fe(v("div",{class:"v-chip__filter"},[a.filter?w(Te,{key:"filter-defaults",disabled:!e.filterIcon,defaults:{VIcon:{icon:e.filterIcon}}},a.filter):w(ye,{key:"filter-icon",icon:e.filterIcon},null)]),[[at,m.isSelected.value]])]}),$&&v("div",{key:"prepend",class:"v-chip__prepend"},[a.prepend?w(Te,{key:"prepend-defaults",disabled:!R,defaults:{VAvatar:{image:e.prependAvatar,start:!0},VIcon:{icon:e.prependIcon,start:!0}}},a.prepend):v(ne,null,[e.prependIcon&&w(ye,{key:"prepend-icon",icon:e.prependIcon,start:!0},null),e.prependAvatar&&w(vt,{key:"prepend-avatar",image:e.prependAvatar,start:!0},null)])]),v("div",{class:"v-chip__content","data-no-activator":""},[((N=a.default)==null?void 0:N.call(a,{isSelected:m==null?void 0:m.isSelected.value,selectedClass:m==null?void 0:m.selectedClass.value,select:m==null?void 0:m.select,toggle:m==null?void 0:m.toggle,value:m==null?void 0:m.value.value,disabled:e.disabled}))??K(e.text)]),j&&v("div",{key:"append",class:"v-chip__append"},[a.append?w(Te,{key:"append-defaults",disabled:!T,defaults:{VAvatar:{end:!0,image:e.appendAvatar},VIcon:{end:!0,icon:e.appendIcon}}},a.append):v(ne,null,[e.appendIcon&&w(ye,{key:"append-icon",end:!0,icon:e.appendIcon},null),e.appendAvatar&&w(vt,{key:"append-avatar",end:!0,image:e.appendAvatar},null)])]),M&&v("button",H({key:"close",class:"v-chip__close",type:"button","data-testid":"close-chip"},f.value),[a.close?w(Te,{key:"close-defaults",defaults:{VIcon:{icon:e.closeIcon,size:"x-small"}}},a.close):w(ye,{key:"close-icon",icon:e.closeIcon,size:"x-small"},null)])]}}),[[Xe,s.value&&e.ripple,null]])}}}),Wl=q({color:String,...Vn(),...me(),...Et(),...In(),...Da(),...Ba(),...wt(),...nt(),...ze()},"VSheet"),Lt=ie()({name:"VSheet",props:Wl(),setup(e,{slots:t}){const{themeClasses:n}=qe(e),{backgroundColorClasses:a,backgroundColorStyles:o}=At(()=>e.color),{borderClasses:l}=Cn(e),{dimensionStyles:i}=jt(e),{elevationClasses:r}=kn(e),{locationStyles:u}=$a(e),{positionClasses:p}=La(e),{roundedClasses:h}=Vt(e);return ce(()=>w(e.tag,{class:Y(["v-sheet",n.value,a.value,l.value,r.value,p.value,h.value,e.class]),style:he([o.value,i.value,u.value,e.style])},t)),{}}}),Jl={class:"studio-error-notice__icon"},Ql={class:"studio-error-notice__body"},Yl={class:"studio-error-notice__header"},Xl={key:0,class:"studio-error-notice__message"},Zl={key:1,class:"studio-error-notice__repair"},eo={key:2,class:"studio-error-notice__details"},to={key:3,class:"studio-error-notice__copy-status"},no={__name:"StudioErrorNotice",props:{code:{type:String,default:""},compact:{type:Boolean,default:!1},details:{type:[String,Object,Array],default:""},error:{type:[String,Object],default:""},message:{type:String,default:""},repairCommand:{type:String,default:""},title:{type:String,default:""}},setup(e){const t=e,n=Q(!1),a=Q(""),o=b(()=>t.error&&typeof t.error=="object"&&!Array.isArray(t.error)?t.error:{}),l=b(()=>String(t.code||o.value.code||"").trim()),i=b(()=>{const c=String(t.title||o.value.title||"").trim();return c||(l.value?l.value.replace(/[_-]+/gu," ").replace(/\b\w/gu,m=>m.toUpperCase()):"Something needs attention")}),r=b(()=>String(t.message||o.value.message||(typeof t.error=="string"?t.error:"")||"").trim()),u=b(()=>String(t.repairCommand||o.value.repairCommand||"").trim()),p=b(()=>{const c=t.details||o.value.details||o.value.output||o.value.stderr||o.value.stdout||"";if(!c)return"";if(typeof c=="string")return c.trim();try{return JSON.stringify(c,null,2)}catch{return String(c||"").trim()}});async function h(){const c=u.value;if(c)try{await navigator.clipboard.writeText(c),a.value="Repair command copied."}catch{a.value="Copy failed."}}return(c,m)=>(B(),Pe(Lt,{border:"",rounded:"lg",role:"alert",class:Y(["studio-error-notice",{"studio-error-notice--compact":e.compact}])},{default:_e(()=>[v("div",Jl,[w(ye,{icon:ue(Na),size:"22"},null,8,["icon"])]),v("div",Ql,[v("div",Yl,[v("strong",null,K(i.value),1),l.value?(B(),Pe(Be,{key:0,color:"error",size:"x-small",variant:"tonal"},{default:_e(()=>[Ee(K(l.value),1)]),_:1})):Se("",!0)]),r.value?(B(),J("p",Xl,K(r.value),1)):Se("",!0),u.value?(B(),J("div",Zl,[v("code",null,K(u.value),1),w(Ze,{icon:ue(Ua),"aria-label":"Copy repair command",size:"x-small",variant:"text",onClick:h},null,8,["icon"])])):Se("",!0),p.value?(B(),J("div",eo,[w(Ze,{"append-icon":n.value?ue(Ka):ue(Ga),color:"error",size:"small",variant:"text",onClick:m[0]||(m[0]=d=>n.value=!n.value)},{default:_e(()=>[...m[1]||(m[1]=[Ee(" Details ",-1)])]),_:1},8,["append-icon"]),w(Ha,null,{default:_e(()=>[Fe(v("pre",null,K(p.value),513),[[at,n.value]])]),_:1})])):Se("",!0),a.value?(B(),J("p",to,K(a.value),1)):Se("",!0)])]),_:1},8,["class"]))}},ao=lt(no,[["__scopeId","data-v-ecc7a488"]]);function lo({input:e,rawPayload:t={},fieldBag:n=null,feedback:a=null,validationMessage:o="Validation failed."}={}){var l,i;if(!e)return{ok:!0,parsedInput:t};try{return{ok:!0,parsedInput:Dl(e,t,{phase:"input",context:"operation input"})}}catch(r){if(!(r!=null&&r.fieldErrors)||typeof r.fieldErrors!="object")throw r;const u=Nl({error:String(o||"Validation failed."),code:"validation_failed",fieldErrors:r==null?void 0:r.fieldErrors});return(l=n==null?void 0:n.apply)==null||l.call(n,wn(u)),(i=a==null?void 0:a.error)==null||i.call(a,u,u.error),{ok:!1,failure:u,parsedInput:null}}}function oo({model:e,resource:t,writeMethod:n="POST",canRun:a,fieldBag:o,feedback:l,input:i,buildRawPayload:r,buildCommandPayload:u,buildCommandOptions:p,onRunSuccess:h,onRunError:c,suppressSuccessMessage:m=!1,messages:d={}}={}){const y=ua(),S=String(n||"POST").trim().toUpperCase(),s=t==null?void 0:t.isSaving,f=o==null?void 0:o.errors,g=l==null?void 0:l.message,_=l==null?void 0:l.messageType;async function C(I={}){var E,R,$,D,N;if(!(a!=null&&a.value)||s!=null&&s.value)return null;(E=l==null?void 0:l.clear)==null||E.call(l),(R=o==null?void 0:o.clear)==null||R.call(o);const P=typeof r=="function"?r(e,{queryClient:y,resource:t,context:I}):{},V=lo({input:i,rawPayload:P,fieldBag:o,feedback:l,validationMessage:String(d.validation||"Validation failed.")});if(!V.ok)return null;const{parsedInput:T}=V,j=typeof u=="function"?u(T,{rawPayload:P,queryClient:y,resource:t,context:I}):S==="DELETE"?void 0:T,M=typeof p=="function"?p(T,{rawPayload:P,queryClient:y,resource:t,context:I}):{};try{const G=await t.save(j,M);return typeof h=="function"&&await h(G,{parsed:T,rawPayload:P,payload:j,options:M,queryClient:y,resource:t,context:I}),m||($=l==null?void 0:l.success)==null||$.call(l,String(d.success||"Completed.")),G}catch(G){throw(D=o==null?void 0:o.apply)==null||D.call(o,wn(G)),typeof c=="function"&&await c(G,{parsed:T,rawPayload:P,payload:j,options:M,queryClient:y,resource:t,context:I}),(N=l==null?void 0:l.error)==null||N.call(l,G,String(d.error||"Unable to complete action.")),G}}return Object.freeze({running:s,fieldErrors:f,message:g,messageType:_,run:C})}function nn(e){return Array.isArray(e)?e:e==null||e===""?[]:[e]}function ro({scopeParamValue:e="",enabled:t=!0,access:n="always",hasPermissionRequirements:a=!1}={}){const o=ca(n),l=mn(o,{hasPermissionRequirements:a===!0}),{context:i}=xn(),r=b(()=>da(e)),u=b(()=>fa(t)&&l),p=b(()=>{const g=i.value;return!g||typeof g!="object"?!1:Object.hasOwn(g,"permissions")}),h=b(()=>{var g;return Nn((g=i.value)==null?void 0:g.permissions)}),c=b(()=>!u.value||!p.value?[]:h.value),m=b(()=>!u.value||p.value?"":"Permissions are unavailable in placement context."),d=b(()=>u.value&&!p.value);function y(g){return xl(c.value,g)}function S(g){const _=nn(g);if(_.length<1)return!0;for(const C of _)if(y(C))return!0;return!1}function s(g){const _=nn(g);if(_.length<1)return!0;for(const C of _)if(!y(C))return!1;return!0}async function f(){return null}return Object.freeze({accessMode:o,accessRequired:l,scopeParamValue:r,permissions:c,bootstrapError:m,isBootstrapping:d,can:y,canAny:S,canAll:s,refreshBootstrap:f})}function Jn(){const e=qa(),{context:t,mergeContext:n}=xn(),a=b(()=>Wa(e==null?void 0:e.path)),o=b(()=>Ja(t.value,a.value));return Object.freeze({route:e,routePath:a,placementContext:t,mergePlacementContext:n,currentSurfaceId:o})}function io(e=""){const t=de(ue(e));return t?t.startsWith("/")?t:`/${t}`:""}function bt(e,t=""){const n=de(ue(e)).toLowerCase();if(n&&n!=="*")return n;const a=de(ue(t)).toLowerCase();return a&&a!=="*"?a:""}function an(e=null){var t;return bt((t=e==null?void 0:e.surfaceConfig)==null?void 0:t.defaultSurfaceId,"")}function St(e=null){if(!e||typeof e!="object"||Array.isArray(e))return{};const t={};for(const[n,a]of Object.entries(e)){const o=de(n);if(!o)continue;const l=Array.isArray(a)?a[0]:a,i=de(l);i&&(t[o]=i)}return t}function ln(e={},t=null){return{...St(e),...St(t)}}function so({routeContext:e=null}={}){const t=e||Jn(),n=Qa(),a=b(()=>{var i;return St((i=t.route)==null?void 0:i.params)});function o(i="/",r={}){const u=r&&typeof r=="object"&&!Array.isArray(r)?r:{},p=bt(u.surface,t.currentSurfaceId.value)||an(t.placementContext.value);return p?n.resolve(i,{surface:p,explicitTo:u.explicitTo,surfaceRelativePath:u.surfaceRelativePath,params:ln(a.value,u.params),strictParams:u.strictParams!==!1}):""}function l(i="",r={}){var m;const u=r&&typeof r=="object"&&!Array.isArray(r)?r:{},p=bt(u.surface,t.currentSurfaceId.value)||an(t.placementContext.value),h=io(i);if(!h)throw new TypeError("usePaths().api(relativePath) requires a non-empty relativePath.");const c=((m=An(t.placementContext.value,p))==null?void 0:m.routeBase)||"/";return Ya({routeBase:c,relativePath:h,params:ln(a.value,u.params),strictParams:u.strictParams!==!1})}return Object.freeze({route:t.route,placementContext:t.placementContext,currentSurfaceId:t.currentSurfaceId,routeParams:a,page:o,api:l})}const uo=/^[A-Za-z][A-Za-z0-9_]*$/;function oi(e="",{context:t="users-web route param"}={}){const n=String(e||"").trim();if(!n)throw new TypeError(`${t} must be a non-empty route parameter name.`);if(!uo.test(n))throw new TypeError(`${t} "${n}" is invalid. Use letters, numbers, and underscores only.`);return n}function Ne(e){return Array.isArray(e)?Ne(e[0]):e==null?"":String(e).trim()}function Bt(e=null){return typeof e=="function"?e():ue(e)}function ri(e=null){return He(Bt(e))}function co(e=[]){return(Array.isArray(e)?e:[]).map(n=>String(n||"").trim()).filter(Boolean)}function fo(e=[]){return co(Bt(e))}function vo(e=""){const n=String(e||"").trim().split(/[?#]/u,1)[0]||"";return n?n.startsWith("/")?n:`/${n}`:"/"}function Qn(e=""){return vo(Bt(e))}function mo(e="",t=""){const n=String(e||"").trim(),a=Ne(t);if(!n||!a)return!1;const o=encodeURIComponent(a);if(n===o)return!0;try{return decodeURIComponent(n)===a}catch{return!1}}function on(e=[],t="",n=0){const a=Array.isArray(e)?e:[],o=Number.isInteger(n)&&n>0?n:0;for(let l=o;l<a.length;l+=1)if(mo(a[l],t))return l;return-1}function rn(e=[],t=-1){const n=Array.isArray(e)?e:[];return!Number.isInteger(t)||t<0?"/":`/${n.slice(0,t+1).join("/")}`}function sn(e=-1,t=0,n="at"){const a=Number.isInteger(e)?e:-1;if(a<0)return-1;const o=Number.isInteger(t)&&t>0?t:0,l=String(n||"at").trim().toLowerCase();return l==="before"?a-1:l==="after"?o>0?Math.min(a+1,o-1):a+1:a}function ii({currentPathname:e="/",params:t={},orderedParamNames:n=[],anchorParamName:a="",anchorParamValue:o="",anchorMode:l="at"}={}){const i=Qn(e),r=String(a||"").trim();if(!r)return i;const u=He(t),p=i.split("/").filter(Boolean);if(p.length<1)return i;const h=fo(n);let c=0;for(const S of h){const s=on(p,u[S],c);if(!(s<0)){if(S===r){const f=sn(s,p.length,l);return rn(p,f)}c=s+1}}const m=Ne(o)||Ne(u[r]);if(!m)return i;const d=on(p,m,0);if(d<0)return i;const y=sn(d,p.length,l);return rn(p,y)}function yo(e="",t={}){const n=String(e||"").trim();if(!n)return"";const a=He(t),o=[],l=n.replace(/:([A-Za-z][A-Za-z0-9_]*)/g,(i,r)=>{const u=Ne(a[r]);return u?encodeURIComponent(u):(o.push(r),`:${r}`)});return o.length>0?"":l}function si(e="",{params:t={},currentPathname:n="/"}={}){const a=yo(e,t);if(!a)return"";if(a.startsWith("/"))return a;const o=Qn(n),l=o.endsWith("/")?o:`${o}/`,i=new URL(a,`https://jskit.local${l}`).pathname;return i.length>1&&i.endsWith("/")?i.slice(0,-1):i}function Yn(e=""){const t=String(e||"").trim();if(!t)return[];const n=[],a=new Set,o=/:([A-Za-z][A-Za-z0-9_]*)/g;let l=null;for(;(l=o.exec(t))!=null;){const i=String(l[1]||"").trim();!i||a.has(i)||(a.add(i),n.push(i))}return n}function ui(e=null){const t=e&&typeof e=="object"?e:{},n=Array.isArray(t.matched)?t.matched:[],a=[],o=new Set;for(const l of n){const i=String((l==null?void 0:l.path)||"").trim();if(i)for(const r of Yn(i))o.has(r)||(o.add(r),a.push(r))}return a.length>0?a:Object.keys(He(t.params)).map(l=>String(l||"").trim()).filter(Boolean)}function po(e=null,t=""){var a;const n=((a=An(e,t))==null?void 0:a.routeBase)||"/";return Yn(Xa(n))}function ho({ownershipFilter:e=Ct,surfaceId:t="",accessMode:n="auto",hasPermissionRequirements:a=!1,placementSource:o="users-web.scope-runtime"}={}){const l=va(e),i=ma({accessMode:n,hasPermissionRequirements:a,caller:"useScopeRuntime"}),r=mn(i,{hasPermissionRequirements:a}),u=Jn(),p=so({routeContext:u}),h=b(()=>{const I=Xt(t);return I||Xt(u.currentSurfaceId.value)}),c=b(()=>po(u.placementContext.value,h.value)),m=b(()=>{const I=p.routeParams.value,P={};for(const V of c.value){const T=Ne(I[V]);T&&(P[V]=T)}return Object.freeze(P)}),d=b(()=>c.value.filter(I=>!m.value[I])),y=b(()=>c.value.length>0),S=b(()=>d.value.length<1),s=b(()=>{const[I=""]=c.value;return I&&m.value[I]||""}),f=b(()=>!y.value||S.value?"":`Route parameters ${d.value.join(", ")} are required for surface "${h.value||"<unknown>"}".`),g=ro({scopeParamValue:s,enabled:b(()=>r&&S.value),access:i,hasPermissionRequirements:a});function _(I="",P={}){if(f.value)return"";const V=ya(I,{surfaceId:u.currentSurfaceId.value,scopeParamValue:s.value,ownershipFilter:l,...He(P)});return p.api(V,{surface:h.value,params:m.value})}function C(I="useScopeRuntime"){if(f.value)throw new Error(`${I}: ${f.value}`)}return Object.freeze({normalizedOwnershipFilter:l,requiresScopedRouteParams:y.value,resolvedSurfaceId:h,accessMode:i,accessRequired:r,routeContext:u,scopedRouteParamNames:c,routeScopeParams:m,scopeParamValue:s,hasRequiredRouteScope:S,routeScopeError:f,access:g,resolveApiPath:_,requireRouteScope:C})}function go(e={}){const t=e&&typeof e=="object"&&!Array.isArray(e)?e:{},n={};for(const[a,o]of Object.entries(t))n[a]=ha(o);return n}function bo(e={}){for(const t of Object.values(e))if(Array.isArray(t)&&t.length>0)return!0;return!1}function So({ownershipFilter:e=Ct,surfaceId:t="",access:n="auto",placementSource:a="users-web.operation",apiSuffix:o="",model:l,readEnabled:i=!0,queryKeyFactory:r=null,permissionSets:u={},realtime:p=null}={}){const h=go(u),c=ho({ownershipFilter:e,surfaceId:t,accessMode:n,hasPermissionRequirements:bo(h),placementSource:a}),m=c.normalizedOwnershipFilter,d=c.routeContext,y=c.scopeParamValue,S=c.hasRequiredRouteScope,s=c.access,f=b(()=>c.resolveApiPath(o,{model:l})),g=b(()=>ga(i,{surfaceId:d.currentSurfaceId.value,scopeParamValue:y.value,ownershipFilter:m,model:l})),_=b(()=>ba(r,{surfaceId:d.currentSurfaceId.value,scopeParamValue:y.value,ownershipFilter:m})),C=pa({realtime:p,queryKey:typeof r=="function"?_:null,enabled:b(()=>S.value&&!!f.value)});function I(j=!0){return b(()=>g.value&&S.value&&!!f.value&&!!ue(j))}function P(j=""){const M=h[String(j||"")]||[];return b(()=>Sa(s,M))}function V(j=""){return b(()=>{if(c.routeScopeError.value)return c.routeScopeError.value;const M=String(s.bootstrapError.value||"").trim();return M||(j==null||j===""?"":String(ue(j)||"").trim())})}function T(j=!1){return b(()=>!!ue(j)||s.isBootstrapping.value)}return Object.freeze({scopeRuntime:c,routeContext:d,normalizedOwnershipFilter:m,scopeParamValue:y,hasRequiredRouteScope:S,access:s,apiPath:f,queryEnabled:g,queryKey:_,queryCanRun:I,realtime:C,permissionGate:P,loadError:V,isLoading:T})}function _o({initialType:e="success",source:t="users-web.ui-feedback",successChannel:n="",errorChannel:a="",dedupeWindowMs:o=2e3}={}){const l=Q(""),i=Q(String(e||"success")),r=En(),u=String(t||"").trim()||"users-web.ui-feedback";let p=null;function h(S=null){var g;const s=String((S==null?void 0:S.presentationId)||"").trim(),f=String(((g=S==null?void 0:S.decision)==null?void 0:g.presenterId)||"").trim();!s||!f||(p=Object.freeze({presentationId:s,presenterId:f}))}function c(){p&&(r.dismiss(p.presentationId,{presenterId:p.presenterId}),p=null)}function m(){l.value=""}function d(S=""){i.value="success";const s=String(S||"").trim();l.value=s,c(),s&&r.report({source:u,message:s,intent:"action-feedback",severity:"success",channel:n,dedupeKey:`${u}:success:${s}`,dedupeWindowMs:o})}function y(S,s=""){if(i.value="error",l.value=_a(S,s,"Request failed."),!l.value)return;const f=r.report({source:u,message:l.value,cause:S||null,intent:"action-feedback",severity:"error",channel:a,dedupeKey:`${u}:error:${l.value}`,dedupeWindowMs:o});f!=null&&f.skipped||h(f)}return Object.freeze({message:l,messageType:i,clear:m,success:d,error:y})}function Co(e){return Array.isArray(e)?e.map(t=>String(t||"").trim()).filter(Boolean):[]}function Po(e=[]){const t=Co(e),n=t.length>0,a=jn(Object.fromEntries(t.map(r=>[r,""])));function o(){const r=n?t:Object.keys(a);for(const u of r)a[u]=""}function l(r={}){const u=r&&typeof r=="object"?r:{};if(n){for(const p of t)a[p]=String(u[p]||"");return}o();for(const[p,h]of Object.entries(u)){const c=String(p||"").trim();c&&(a[c]=String(h||""))}}function i(r,u){const p=String(r||"").trim();p&&(n&&!(p in a)||(a[p]=String(u||"")))}return Object.freeze({errors:a,clear:o,apply:l,set:i})}function un(e){return String(e||"").trim()}function ko({enabled:e=!0,source:t="users-web.operation",loadError:n=null,notFoundError:a=null,loadActionFactory:o=null,notFoundActionFactory:l=null,loadChannel:i="",notFoundChannel:r="",loadSeverity:u="error",notFoundSeverity:p="warning",dedupeWindowMs:h=2e3}={}){if(!e)return;const c=En(),m=un(t)||"users-web.operation";function d(y,{kind:S="load",channel:s="",intent:f="resource-load",severity:g="error",actionFactory:_=null}={}){let C="",I="";ee(()=>un(y==null?void 0:y.value),P=>{if(!P){C="",I&&(c.dismiss(I),I="");return}if(P===C)return;C=P;const V=typeof _=="function"?_({message:P,kind:S}):null,T=c.report({source:m,message:P,intent:f,severity:g,channel:s,action:V,dedupeKey:`${m}:${S}:${P}`,dedupeWindowMs:h}),j=String((T==null?void 0:T.presentationId)||"").trim();j&&(I&&I!==j&&c.dismiss(I),I=j)},{immediate:!0})}n&&d(n,{kind:"load",channel:i,intent:"resource-load",severity:u,actionFactory:o}),a&&d(a,{kind:"not-found",channel:r,intent:"resource-load",severity:p,actionFactory:l})}function Io({enabled:e=!0,route:t=null,feedback:n=null,fieldBag:a=null}={}){e&&ee(()=>t==null?void 0:t.fullPath,()=>{var o,l;(o=n==null?void 0:n.clear)==null||o.call(n),(l=a==null?void 0:a.clear)==null||l.call(a)})}function cn({ownershipFilter:e=Ct,surfaceId:t="",access:n="auto",apiSuffix:a="",runPermissions:o=[],writeMethod:l="POST",transport:i=null,placementSource:r="users-web.command",fallbackRunError:u="Unable to complete action.",fieldErrorKeys:p=[],clearOnRouteChange:h=!0,model:c,input:m,buildRawPayload:d,buildCommandPayload:y,buildCommandOptions:S,onRunSuccess:s,onRunError:f,suppressSuccessMessage:g=!1,messages:_={},realtime:C=null}={}){const I=So({ownershipFilter:e,surfaceId:t,access:n,placementSource:r,apiSuffix:a,model:c,readEnabled:!1,permissionSets:{run:o},realtime:C}),P=I.routeContext,V=I.permissionGate("run"),T=yn({path:I.apiPath,enabled:!1,writeMethod:l,transport:i,fallbackSaveError:u}),j=_o({source:`${r}.feedback`}),M=Po(p),E=oo({model:c,resource:T,writeMethod:l,canRun:V,fieldBag:M,feedback:j,input:m,buildRawPayload:d,buildCommandPayload:y,buildCommandOptions:S,onRunSuccess:s,onRunError:f,suppressSuccessMessage:!!g,messages:{validation:"Fix invalid values and try again.",success:"Completed.",error:String(u||"Unable to complete action."),..._&&typeof _=="object"?_:{}}});Io({enabled:h,route:P.route,feedback:j,fieldBag:M});const R=I.loadError(),$=I.isLoading();return ko({source:`${r}.load`,loadError:R}),Rn({canRun:V,isLoading:$,loadError:R,isRunning:E.running,fieldErrors:E.fieldErrors,message:E.message,messageType:E.messageType,run:E.run,resource:T})}const Vo=q({active:Boolean,disabled:Boolean,max:[Number,String],value:{type:[Number,String],default:0},...me(),...Rt({transition:{component:On}})},"VCounter"),wo=ie()({name:"VCounter",functional:!0,props:Vo(),setup(e,{slots:t}){const n=z(()=>e.max?`${e.value} / ${e.max}`:String(e.value));return ce(()=>w(Tn,{transition:e.transition},{default:()=>[Fe(v("div",{class:Y(["v-counter",{"text-error":e.max&&!e.disabled&&parseFloat(e.value)>parseFloat(e.max)},e.class]),style:he(e.style)},[t.default?t.default({counter:n.value,max:e.max,value:e.value}):n.value]),[[at,e.active]])]})),{}}}),xo=q({text:String,onClick:we(),...me(),...ze()},"VLabel"),Xn=ie()({name:"VLabel",props:xo(),setup(e,{slots:t}){return ce(()=>{var n;return v("label",{class:Y(["v-label",{"v-label--clickable":!!e.onClick},e.class]),style:he(e.style),onClick:e.onClick},[e.text,(n=t.default)==null?void 0:n.call(t)])}),{}}}),Ao=q({floating:Boolean,...me()},"VFieldLabel"),Qe=ie()({name:"VFieldLabel",props:Ao(),setup(e,{slots:t}){return ce(()=>w(Xn,{class:Y(["v-field-label",{"v-field-label--floating":e.floating},e.class]),style:he(e.style)},t)),{}}});function Dt(e){const{t}=kt();function n({name:a,color:o,...l}){const i={prepend:"prependAction",prependInner:"prependAction",append:"appendAction",appendInner:"appendAction",clear:"clear"}[a],r=e[`onClick:${a}`];function u(h){h.key!=="Enter"&&h.key!==" "||(h.preventDefault(),h.stopPropagation(),Fn(r,new PointerEvent("click",h)))}const p=r&&i?t(`$vuetify.input.${i}`,e.label??""):void 0;return w(ye,H({icon:e[`${a}Icon`],"aria-label":p,onClick:r,onKeydown:u,color:o},l),null)}return{InputIcon:n}}const Zn=q({focused:Boolean,"onUpdate:focused":we()},"focus");function Nt(e,t=zn()){const n=pe(e,"focused"),a=z(()=>({[`${t}--focused`]:n.value}));function o(){n.value=!0}function l(){n.value=!1}return{focusClasses:a,isFocused:n,focus:o,blur:l}}const Eo=["underlined","outlined","filled","solo","solo-inverted","solo-filled","plain"],ea=q({appendInnerIcon:ve,bgColor:String,clearable:Boolean,clearIcon:{type:ve,default:"$clear"},active:Boolean,centerAffix:{type:Boolean,default:void 0},color:String,baseColor:String,dirty:Boolean,disabled:{type:Boolean,default:null},glow:Boolean,error:Boolean,flat:Boolean,iconColor:[Boolean,String],label:String,persistentClear:Boolean,prependInnerIcon:ve,reverse:Boolean,singleLine:Boolean,variant:{type:String,default:"filled",validator:e=>Eo.includes(e)},"onClick:clear":we(),"onClick:appendInner":we(),"onClick:prependInner":we(),...me(),...Za(),...wt(),...ze()},"VField"),dn=ie()({name:"VField",inheritAttrs:!1,props:{id:String,details:Boolean,labelId:String,...Zn(),...ea()},emits:{"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,{attrs:t,emit:n,slots:a}){const{themeClasses:o}=qe(e),{loaderClasses:l}=Mn(e),{focusClasses:i,isFocused:r,focus:u,blur:p}=Nt(e),{InputIcon:h}=Dt(e),{roundedClasses:c}=Vt(e),{rtlClasses:m}=Pt(),d=z(()=>e.dirty||e.active),y=z(()=>!!(e.label||a.label)),S=z(()=>!e.singleLine&&y.value),s=je(),f=b(()=>e.id||`input-${s}`),g=z(()=>e.details?`${f.value}-messages`:void 0),_=Q(),C=Q(),I=Q(),P=b(()=>["plain","underlined"].includes(e.variant)),V=b(()=>e.error||e.disabled?void 0:d.value&&r.value?e.color:e.baseColor),T=b(()=>{if(e.iconColor===!0||!e.iconColor&&e.glow&&r.value)return V.value;if(!(!e.iconColor||e.glow&&!r.value))return e.iconColor}),{backgroundColorClasses:j,backgroundColorStyles:M}=At(()=>e.bgColor),{textColorClasses:E,textColorStyles:R}=Tt(V);ee(d,U=>{if(S.value&&!el()){const ae=_.value.$el,se=C.value.$el;requestAnimationFrame(()=>{const O=tl(ae),k=new nl(se),x=k.x-O.x,F=k.y-O.y-(O.height/2-k.height/2),le=k.width/.75,fe=Math.abs(le-O.width)>1?{maxWidth:Ue(le)}:void 0,Ve=getComputedStyle(ae),Me=getComputedStyle(se),We=parseFloat(Ve.transitionDuration)*1e3||150,rt=parseFloat(Me.getPropertyValue("--v-field-label-scale")),it=Me.getPropertyValue("color");ae.style.visibility="visible",se.style.visibility="hidden",al(ae,{transform:`translate(${x}px, ${F}px) scale(${rt})`,color:it,...fe},{duration:We,easing:ll,direction:U?"normal":"reverse"}).finished.then(()=>{ae.style.removeProperty("visibility"),se.style.removeProperty("visibility")})})}},{flush:"post"});const $=b(()=>({isActive:d,isFocused:r,controlRef:I,iconColor:T,blur:p,focus:u})),D=z(()=>{const U=!d.value;return{"aria-hidden":U,for:U?void 0:f.value}}),N=z(()=>{const U=S.value&&d.value;return{"aria-hidden":U,for:U?void 0:f.value}});function G(U){U.target!==document.activeElement&&U.preventDefault()}return ce(()=>{var x;const U=e.variant==="outlined",ae=!!(a["prepend-inner"]||e.prependInnerIcon),se=!!(e.clearable||a.clear)&&!e.disabled,O=!!(a["append-inner"]||e.appendInnerIcon||se),k=()=>a.label?a.label({...$.value,label:e.label,props:{for:f.value}}):e.label;return v("div",H({class:["v-field",{"v-field--active":d.value,"v-field--appended":O,"v-field--center-affix":e.centerAffix??!P.value,"v-field--disabled":e.disabled,"v-field--dirty":e.dirty,"v-field--error":e.error,"v-field--glow":e.glow,"v-field--flat":e.flat,"v-field--has-background":!!e.bgColor,"v-field--persistent-clear":e.persistentClear,"v-field--prepended":ae,"v-field--reverse":e.reverse,"v-field--single-line":e.singleLine,"v-field--no-label":!k(),[`v-field--variant-${e.variant}`]:!0},o.value,j.value,i.value,l.value,c.value,m.value,e.class],style:[M.value,e.style],onClick:G},t),[v("div",{class:"v-field__overlay"},null),w($n,{name:"v-field",active:!!e.loading,color:e.error?"error":typeof e.loading=="string"?e.loading:e.color},{default:a.loader}),ae&&v("div",{key:"prepend",class:"v-field__prepend-inner"},[a["prepend-inner"]?a["prepend-inner"]($.value):e.prependInnerIcon&&w(h,{key:"prepend-icon",name:"prependInner",color:T.value},null)]),v("div",{class:"v-field__field","data-no-activator":""},[["filled","solo","solo-inverted","solo-filled"].includes(e.variant)&&S.value&&w(Qe,H({key:"floating-label",ref:C,class:[E.value],floating:!0},D.value,{style:R.value}),{default:()=>[k()]}),y.value&&w(Qe,H({key:"label",ref:_,id:e.labelId},N.value),{default:()=>[k()]}),((x=a.default)==null?void 0:x.call(a,{...$.value,props:{id:f.value,class:"v-field__input","aria-describedby":g.value},focus:u,blur:p}))??v("div",{id:f.value,class:"v-field__input","aria-describedby":g.value},null)]),se&&w(Pn,{key:"clear"},{default:()=>[Fe(v("div",{class:"v-field__clearable",onMousedown:F=>{F.preventDefault(),F.stopPropagation()}},[w(Te,{defaults:{VIcon:{icon:e.clearIcon}}},{default:()=>[a.clear?a.clear({...$.value,props:{onFocus:u,onBlur:p,onClick:e["onClick:clear"],tabindex:-1}}):w(h,{name:"clear",onFocus:u,onBlur:p,tabindex:-1},null)]})]),[[at,e.dirty]])]}),O&&v("div",{key:"append",class:"v-field__append-inner"},[a["append-inner"]?a["append-inner"]($.value):e.appendInnerIcon&&w(h,{key:"append-icon",name:"appendInner",color:T.value},null)]),v("div",{class:Y(["v-field__outline",E.value]),style:he(R.value)},[U&&v(ne,null,[v("div",{class:"v-field__outline__start"},null),S.value&&v("div",{class:"v-field__outline__notch"},[w(Qe,H({ref:C,floating:!0},D.value),{default:()=>[k()]})]),v("div",{class:"v-field__outline__end"},null)]),P.value&&S.value&&w(Qe,H({ref:C,floating:!0},D.value),{default:()=>[k()]})])])}),{controlRef:I,fieldIconColor:T}}}),jo=q({active:Boolean,color:String,messages:{type:[Array,String],default:()=>[]},...me(),...Rt({transition:{component:On,leaveAbsolute:!0,group:!0}})},"VMessages"),Ro=ie()({name:"VMessages",props:jo(),setup(e,{slots:t}){const n=b(()=>Ie(e.messages)),{textColorClasses:a,textColorStyles:o}=Tt(()=>e.color);return ce(()=>w(Tn,{transition:e.transition,tag:"div",class:Y(["v-messages",a.value,e.class]),style:he([o.value,e.style])},{default:()=>[e.active&&n.value.map((l,i)=>v("div",{class:"v-messages__message",key:`${i}-${n.value}`},[t.message?t.message({message:l}):l]))]})),{}}}),To=Symbol.for("vuetify:form");function ta(e){const t=Ot(To,null);return{...t,isReadonly:b(()=>!!((e==null?void 0:e.readonly)??(t==null?void 0:t.isReadonly.value))),isDisabled:b(()=>!!((e==null?void 0:e.disabled)??(t==null?void 0:t.isDisabled.value)))}}const Oo=Symbol.for("vuetify:rules");function Fo(e){const t=Ot(Oo,null);if(!e){if(!t)throw new Error("Could not find Vuetify rules injection");return t.aliases}return(t==null?void 0:t.resolve(e))??z(e)}const zo=q({disabled:{type:Boolean,default:null},error:Boolean,errorMessages:{type:[Array,String],default:()=>[]},maxErrors:{type:[Number,String],default:1},name:String,label:String,readonly:{type:Boolean,default:null},rules:{type:Array,default:()=>[]},modelValue:null,validateOn:String,validationValue:null,...Zn()},"validation");function Mo(e,t=zn(),n=je()){const a=pe(e,"modelValue"),o=b(()=>e.validationValue===void 0?a.value:e.validationValue),l=ta(e),i=Fo(()=>e.rules),r=Q([]),u=te(!0),p=b(()=>!!(Ie(a.value===""?null:a.value).length||Ie(o.value===""?null:o.value).length)),h=b(()=>{var C;return(C=e.errorMessages)!=null&&C.length?Ie(e.errorMessages).concat(r.value).slice(0,Math.max(0,Number(e.maxErrors))):r.value}),c=b(()=>{var P;let C=(e.validateOn??((P=l.validateOn)==null?void 0:P.value))||"input";C==="lazy"&&(C="input lazy"),C==="eager"&&(C="input eager");const I=new Set((C==null?void 0:C.split(" "))??[]);return{input:I.has("input"),blur:I.has("blur")||I.has("input")||I.has("invalid-input"),invalidInput:I.has("invalid-input"),lazy:I.has("lazy"),eager:I.has("eager")}}),m=b(()=>{var C;return e.error||(C=e.errorMessages)!=null&&C.length?!1:e.rules.length?u.value?r.value.length||c.value.lazy?null:!0:!r.value.length:!0}),d=te(!1),y=b(()=>({[`${t}--error`]:m.value===!1,[`${t}--dirty`]:p.value,[`${t}--disabled`]:l.isDisabled.value,[`${t}--readonly`]:l.isReadonly.value})),S=Ln("validation"),s=b(()=>e.name??ue(n));ol(()=>{var C;(C=l.register)==null||C.call(l,{id:s.value,vm:S,validate:_,reset:f,resetValidation:g})}),rl(()=>{var C;(C=l.unregister)==null||C.call(l,s.value)}),Bn(async()=>{var C;c.value.lazy||await _(!c.value.eager),(C=l.update)==null||C.call(l,s.value,m.value,h.value)}),mt(()=>c.value.input||c.value.invalidInput&&m.value===!1,()=>{ee(o,()=>{if(o.value!=null)_();else if(e.focused){const C=ee(()=>e.focused,I=>{I||_(),C()})}})}),mt(()=>c.value.blur,()=>{ee(()=>e.focused,C=>{C||_()})}),ee([m,h],()=>{var C;(C=l.update)==null||C.call(l,s.value,m.value,h.value)});async function f(){a.value=null,await Oe(),await g()}async function g(){u.value=!0,c.value.lazy?r.value=[]:await _(!c.value.eager)}async function _(C=!1){const I=[];d.value=!0;for(const P of i.value){if(I.length>=Number(e.maxErrors??1))break;const T=await(typeof P=="function"?P:()=>P)(o.value);if(T!==!0){if(T!==!1&&typeof T!="string"){console.warn(`${T} is not a valid value. Rule functions must return boolean true or a string.`);continue}I.push(T||"")}}return r.value=I,d.value=!1,u.value=C,r.value}return{errorMessages:h,isDirty:p,isDisabled:l.isDisabled,isReadonly:l.isReadonly,isPristine:u,isValid:m,isValidating:d,reset:f,resetValidation:g,validate:_,validationClasses:y}}const Ut=q({id:String,appendIcon:ve,baseColor:String,centerAffix:{type:Boolean,default:!0},color:String,glow:Boolean,iconColor:[Boolean,String],prependIcon:ve,hideDetails:[Boolean,String],hideSpinButtons:Boolean,hint:String,indentDetails:{type:Boolean,default:null},persistentHint:Boolean,messages:{type:[Array,String],default:()=>[]},direction:{type:String,default:"horizontal",validator:e=>["horizontal","vertical"].includes(e)},"onClick:prepend":we(),"onClick:append":we(),...me(),...xt(),...il(Et(),["maxWidth","minWidth","width"]),...ze(),...zo()},"VInput"),et=ie()({name:"VInput",props:{...Ut()},emits:{"update:modelValue":e=>!0},setup(e,{attrs:t,slots:n,emit:a}){const{densityClasses:o}=It(e),{dimensionStyles:l}=jt(e),{themeClasses:i}=qe(e),{rtlClasses:r}=Pt(),{InputIcon:u}=Dt(e),p=je(),h=b(()=>e.id||`input-${p}`),{errorMessages:c,isDirty:m,isDisabled:d,isReadonly:y,isPristine:S,isValid:s,isValidating:f,reset:g,resetValidation:_,validate:C,validationClasses:I}=Mo(e,"v-input",h),P=b(()=>{var $;return($=e.errorMessages)!=null&&$.length||!S.value&&c.value.length?c.value:e.hint&&(e.persistentHint||e.focused)?e.hint:e.messages}),V=z(()=>P.value.length>0),T=z(()=>!e.hideDetails||e.hideDetails==="auto"&&(V.value||!!n.details)),j=b(()=>T.value?`${h.value}-messages`:void 0),M=b(()=>({id:h,messagesId:j,isDirty:m,isDisabled:d,isReadonly:y,isPristine:S,isValid:s,isValidating:f,hasDetails:T,reset:g,resetValidation:_,validate:C})),E=z(()=>e.error||e.disabled?void 0:e.focused?e.color:e.baseColor),R=z(()=>{if(e.iconColor)return e.iconColor===!0?E.value:e.iconColor});return ce(()=>{var N,G;const $=!!(n.prepend||e.prependIcon),D=!!(n.append||e.appendIcon);return v("div",{class:Y(["v-input",`v-input--${e.direction}`,{"v-input--center-affix":e.centerAffix,"v-input--focused":e.focused,"v-input--glow":e.glow,"v-input--hide-spin-buttons":e.hideSpinButtons,"v-input--indent-details":e.indentDetails},o.value,i.value,r.value,I.value,e.class]),style:he([l.value,e.style])},[$&&v("div",{key:"prepend",class:"v-input__prepend"},[n.prepend?n.prepend(M.value):e.prependIcon&&w(u,{key:"prepend-icon",name:"prepend",color:R.value},null)]),n.default&&v("div",{class:"v-input__control"},[(N=n.default)==null?void 0:N.call(n,M.value)]),D&&v("div",{key:"append",class:"v-input__append"},[n.append?n.append(M.value):e.appendIcon&&w(u,{key:"append-icon",name:"append",color:R.value},null)]),T.value&&v("div",{id:j.value,class:"v-input__details",role:"alert","aria-live":"polite"},[w(Ro,{active:V.value,messages:P.value},{message:n.message}),(G=n.details)==null?void 0:G.call(n,M.value)])])}),{reset:g,resetValidation:_,validate:C,isValid:s,errorMessages:c}}}),$o=q({autocomplete:String},"autocomplete");function na(e){const t=je(),n=te(0),a=z(()=>e.autocomplete==="suppress"),o=z(()=>{if(e.name)return a.value?`${e.name}-${t}-${n.value}`:e.name}),l=z(()=>a.value?"off":e.autocomplete);return{isSuppressing:a,fieldAutocomplete:l,fieldName:o,update:()=>n.value=new Date().getTime()}}function Lo(e){function t(n,a){if(!e.autofocus||!n)return;const o=a[0].target,l=o.matches("input,textarea")?o:o.querySelector("input,textarea");l==null||l.focus()}return{onIntersect:t}}const Bo=["color","file","time","date","datetime-local","week","month"],aa=q({autofocus:Boolean,counter:[Boolean,Number,String],counterValue:[Number,Function],prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,suffix:String,role:String,type:{type:String,default:"text"},modelModifiers:Object,...$o(),...ot(Ut(),["direction"]),...ea()},"VTextField"),_t=ie()({name:"VTextField",directives:{vIntersect:Zt},inheritAttrs:!1,props:aa(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,{attrs:t,emit:n,slots:a}){const o=pe(e,"modelValue",void 0,P=>Object.is(P,-0)?"-0":P),{isFocused:l,focus:i,blur:r}=Nt(e),{onIntersect:u}=Lo(e),p=b(()=>typeof e.counterValue=="function"?e.counterValue(o.value):typeof e.counterValue=="number"?e.counterValue:(o.value??"").toString().length),h=b(()=>{if(t.maxlength)return t.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter}),c=b(()=>["plain","underlined"].includes(e.variant)),m=Q(),d=Q(),y=Q(),S=na(e),s=b(()=>Bo.includes(e.type)||e.persistentPlaceholder||l.value||e.active);function f(){S.isSuppressing.value&&S.update(),l.value||i(),Oe(()=>{var P;y.value!==document.activeElement&&((P=y.value)==null||P.focus())})}function g(P){n("mousedown:control",P),P.target!==y.value&&(f(),P.preventDefault())}function _(P){n("click:control",P)}function C(P,V){P.stopPropagation(),f(),Oe(()=>{V(),Fn(e["onClick:clear"],P)})}function I(P){var E;const V=P.target;if(!((E=e.modelModifiers)!=null&&E.trim&&["text","search","password","tel","url"].includes(e.type))){o.value=V.value;return}const T=V.value,j=V.selectionStart,M=V.selectionEnd;o.value=T,Oe(()=>{let R=0;T.trimStart().length===V.value.length&&(R=T.length-V.value.length),j!=null&&(V.selectionStart=j-R),M!=null&&(V.selectionEnd=M-R)})}return ce(()=>{const P=!!(a.counter||e.counter!==!1&&e.counter!=null),V=!!(P||a.details),[T,j]=zt(t),{modelValue:M,...E}=et.filterProps(e),R=dn.filterProps(e);return w(et,H({ref:m,modelValue:o.value,"onUpdate:modelValue":$=>o.value=$,class:["v-text-field",{"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-input--plain-underlined":c.value},e.class],style:e.style},T,E,{centerAffix:!c.value,focused:l.value,indentDetails:e.indentDetails??!c.value}),{...a,default:({id:$,isDisabled:D,isDirty:N,isReadonly:G,isValid:U,hasDetails:ae,reset:se})=>w(dn,H({ref:d,onMousedown:g,onClick:_,"onClick:clear":O=>C(O,se),role:e.role},ot(R,["onClick:clear"]),{id:$.value,labelId:`${$.value}-label`,active:s.value||N.value,dirty:N.value||e.dirty,disabled:D.value,focused:l.value,details:ae.value,error:U.value===!1}),{...a,default:({props:{class:O,...k},controlRef:x})=>{const F=v("input",H({ref:le=>y.value=x.value=le,value:o.value,onInput:I,autofocus:e.autofocus,readonly:G.value,disabled:D.value,name:S.fieldName.value,autocomplete:S.fieldAutocomplete.value,placeholder:e.placeholder,size:1,role:e.role,type:e.type,onFocus:i,onBlur:r,"aria-labelledby":`${$.value}-label`},k,j),null);return v(ne,null,[e.prefix&&v("span",{class:"v-text-field__prefix"},[v("span",{class:"v-text-field__prefix__text"},[e.prefix])]),Fe(a.default?v("div",{class:Y(O),"data-no-activator":""},[a.default({id:$}),F]):sl(F,{class:O}),[[Zt,u,null,{once:!0}]]),e.suffix&&v("span",{class:"v-text-field__suffix"},[v("span",{class:"v-text-field__suffix__text"},[e.suffix])])])}}),details:V?$=>{var D;return v(ne,null,[(D=a.details)==null?void 0:D.call(a,$),P&&v(ne,null,[v("span",null,null),w(wo,{active:e.persistentCounter||l.value,value:p.value,max:h.value,disabled:e.disabled},a.counter)])])}:void 0})}),Ft({},m,d,y)}}),la=Symbol.for("vuetify:selection-control-group"),oa=q({color:String,disabled:{type:Boolean,default:null},defaultsTarget:String,error:Boolean,id:String,inline:Boolean,falseIcon:ve,trueIcon:ve,ripple:{type:[Boolean,Object],default:!0},multiple:{type:Boolean,default:null},name:String,readonly:{type:Boolean,default:null},modelValue:null,type:String,valueComparator:{type:Function,default:$e},...me(),...xt(),...ze()},"SelectionControlGroup"),Do=q({...oa({defaultsTarget:"VSelectionControl"})},"VSelectionControlGroup");ie()({name:"VSelectionControlGroup",props:Do(),emits:{"update:modelValue":e=>!0},setup(e,{slots:t}){const n=pe(e,"modelValue"),a=je(),o=z(()=>e.id||`v-selection-control-group-${a}`),l=z(()=>e.name||o.value),i=new Set;return ul(la,{modelValue:n,forceUpdate:()=>{i.forEach(r=>r())},onForceUpdate:r=>{i.add(r),Mt(()=>{i.delete(r)})}}),_n({[e.defaultsTarget]:{color:z(()=>e.color),disabled:z(()=>e.disabled),density:z(()=>e.density),error:z(()=>e.error),inline:z(()=>e.inline),modelValue:n,multiple:z(()=>!!e.multiple||e.multiple==null&&Array.isArray(n.value)),name:l,falseIcon:z(()=>e.falseIcon),trueIcon:z(()=>e.trueIcon),readonly:z(()=>e.readonly),ripple:z(()=>e.ripple),type:z(()=>e.type),valueComparator:z(()=>e.valueComparator)}}),ce(()=>{var r;return v("div",{class:Y(["v-selection-control-group",{"v-selection-control-group--inline":e.inline},e.class]),style:he(e.style),role:e.type==="radio"?"radiogroup":void 0},[(r=t.default)==null?void 0:r.call(t)])}),{}}});const Kt=q({label:String,baseColor:String,trueValue:null,falseValue:null,value:null,...me(),...oa()},"VSelectionControl");function No(e){const t=Ot(la,void 0),{densityClasses:n}=It(e),a=pe(e,"modelValue"),o=b(()=>e.trueValue!==void 0?e.trueValue:e.value!==void 0?e.value:!0),l=b(()=>e.falseValue!==void 0?e.falseValue:!1),i=b(()=>!!e.multiple||e.multiple==null&&Array.isArray(a.value)),r=b({get(){const d=t?t.modelValue.value:a.value;return i.value?Ie(d).some(y=>e.valueComparator(y,o.value)):e.valueComparator(d,o.value)},set(d){if(e.readonly)return;const y=d?o.value:l.value;let S=y;i.value&&(S=d?[...Ie(a.value),y]:Ie(a.value).filter(s=>!e.valueComparator(s,o.value))),t?t.modelValue.value=S:a.value=S}}),{textColorClasses:u,textColorStyles:p}=Tt(()=>{if(!(e.error||e.disabled))return r.value?e.color:e.baseColor}),{backgroundColorClasses:h,backgroundColorStyles:c}=At(()=>r.value&&!e.error&&!e.disabled?e.color:e.baseColor),m=b(()=>r.value?e.trueIcon:e.falseIcon);return{group:t,densityClasses:n,trueValue:o,falseValue:l,model:r,textColorClasses:u,textColorStyles:p,backgroundColorClasses:h,backgroundColorStyles:c,icon:m}}const tt=ie()({name:"VSelectionControl",directives:{vRipple:Xe},inheritAttrs:!1,props:Kt(),emits:{"update:modelValue":e=>!0},setup(e,{attrs:t,slots:n}){const{group:a,densityClasses:o,icon:l,model:i,textColorClasses:r,textColorStyles:u,backgroundColorClasses:p,backgroundColorStyles:h,trueValue:c}=No(e),m=je(),d=te(!1),y=te(!1),S=Q(),s=z(()=>e.id||`input-${m}`),f=z(()=>!e.disabled&&!e.readonly);a==null||a.onForceUpdate(()=>{S.value&&(S.value.checked=i.value)});function g(P){e.disabled||(d.value=!0,yt(P.target,":focus-visible")!==!1&&(y.value=!0))}function _(){d.value=!1,y.value=!1}function C(P){P.stopPropagation()}function I(P){if(!f.value){S.value&&(S.value.checked=i.value);return}e.readonly&&a&&Oe(()=>a.forceUpdate()),i.value=P.target.checked}return ce(()=>{var M,E;const P=n.label?n.label({label:e.label,props:{for:s.value}}):e.label,[V,T]=zt(t),j=v("input",H({ref:S,checked:i.value,disabled:!!e.disabled,id:s.value,onBlur:_,onFocus:g,onInput:I,"aria-disabled":!!e.disabled,"aria-label":e.label,type:e.type,value:c.value,name:e.name,"aria-checked":e.type==="checkbox"?i.value:void 0},T),null);return v("div",H({class:["v-selection-control",{"v-selection-control--dirty":i.value,"v-selection-control--disabled":e.disabled,"v-selection-control--error":e.error,"v-selection-control--focused":d.value,"v-selection-control--focus-visible":y.value,"v-selection-control--inline":e.inline},o.value,e.class]},V,{style:e.style}),[v("div",{class:Y(["v-selection-control__wrapper",r.value]),style:he(u.value)},[(M=n.default)==null?void 0:M.call(n,{backgroundColorClasses:p,backgroundColorStyles:h}),Fe(v("div",{class:Y(["v-selection-control__input"])},[((E=n.input)==null?void 0:E.call(n,{model:i,textColorClasses:r,textColorStyles:u,backgroundColorClasses:p,backgroundColorStyles:h,inputNode:j,icon:l.value,props:{onFocus:g,onBlur:_,id:s.value}}))??v(ne,null,[l.value&&w(ye,{key:"icon",icon:l.value},null),j])]),[[Xe,!e.disabled&&!e.readonly&&e.ripple,null,{center:!0,circle:!0}]])]),P&&w(Xn,{for:s.value,onClick:C},{default:()=>[P]})])}),{isFocused:d,input:S}}}),Uo=q({indeterminate:Boolean,indeterminateIcon:{type:ve,default:"$checkboxIndeterminate"},...Kt({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),Ko=ie()({name:"VCheckboxBtn",props:Uo(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,{slots:t}){const n=pe(e,"indeterminate"),a=pe(e,"modelValue");function o(r){n.value&&(n.value=!1)}const l=z(()=>n.value?e.indeterminateIcon:e.falseIcon),i=z(()=>n.value?e.indeterminateIcon:e.trueIcon);return ce(()=>{const r=ot(tt.filterProps(e),["modelValue"]);return w(tt,H(r,{modelValue:a.value,"onUpdate:modelValue":[u=>a.value=u,o],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:l.value,trueIcon:i.value,"aria-checked":n.value?"mixed":void 0}),t)}),{}}}),Go=q({renderless:Boolean,...me()},"VVirtualScrollItem"),Ho=ie()({name:"VVirtualScrollItem",inheritAttrs:!1,props:Go(),emits:{"update:height":e=>!0},setup(e,{attrs:t,emit:n,slots:a}){const{resizeRef:o,contentRect:l}=Ye(void 0,"border");ee(()=>{var i;return(i=l.value)==null?void 0:i.height},i=>{i!=null&&n("update:height",i)}),ce(()=>{var i,r;return e.renderless?v(ne,null,[(i=a.default)==null?void 0:i.call(a,{itemRef:o})]):v("div",H({ref:o,class:["v-virtual-scroll__item",e.class],style:e.style},t),[(r=a.default)==null?void 0:r.call(a)])})}}),qo=-1,Wo=1,dt=100,Jo=q({itemHeight:{type:[Number,String],default:null},itemKey:{type:[String,Array,Function],default:null},height:[Number,String]},"virtual");function Qo(e,t){const n=hn(),a=te(0);pt(()=>{a.value=parseFloat(e.itemHeight||0)});const o=te(0),l=te(Math.ceil((parseInt(e.height)||n.height.value)/(a.value||16))||1),i=te(0),r=te(0),u=Q(),p=Q();let h=0;const{resizeRef:c,contentRect:m}=Ye();pt(()=>{c.value=u.value});const d=b(()=>{var O;return u.value===document.documentElement?n.height.value:((O=m.value)==null?void 0:O.height)||parseInt(e.height)||0}),y=b(()=>!!(u.value&&p.value&&d.value&&a.value));let S=Array.from({length:t.value.length}),s=Array.from({length:t.value.length});const f=te(0);let g=-1;function _(O){return S[O]||a.value}const C=cl(()=>{const O=performance.now();s[0]=0;const k=t.value.length;for(let x=1;x<=k;x++)s[x]=(s[x-1]||0)+_(x-1);f.value=Math.max(f.value,performance.now()-O)},f),I=ee(y,O=>{O&&(I(),h=p.value.offsetTop,C.immediate(),G(),~g&&Oe(()=>{Ke&&window.requestAnimationFrame(()=>{ae(g),g=-1})}))});Mt(()=>{C.clear()});function P(O,k){const x=S[O],F=a.value;a.value=F?Math.min(a.value,k):k,(x!==k||F!==a.value)&&(S[O]=k,C())}function V(O){O=ut(O,0,t.value.length);const k=Math.floor(O),x=O%1,F=k+1,le=s[k]||0,fe=s[F]||le;return le+(fe-le)*x}function T(O){return Yo(s,O)}let j=0,M=0,E=0;ee(d,(O,k)=>{G(),O<k&&requestAnimationFrame(()=>{M=0,G()})});let R=-1;function $(){if(!u.value||!p.value)return;const O=u.value.scrollTop,k=performance.now();k-E>500?(M=Math.sign(O-j),h=p.value.offsetTop):M=O-j,j=O,E=k,window.clearTimeout(R),R=window.setTimeout(D,500),G()}function D(){!u.value||!p.value||(M=0,E=0,window.clearTimeout(R),G())}let N=-1;function G(){cancelAnimationFrame(N),N=requestAnimationFrame(U)}function U(){if(!u.value||!d.value||!a.value)return;const O=j-h,k=Math.sign(M),x=Math.max(0,O-dt),F=ut(T(x),0,t.value.length),le=O+d.value+dt,fe=ut(T(le)+1,F+1,t.value.length);if((k!==qo||F<o.value)&&(k!==Wo||fe>l.value)){const Ve=V(o.value)-V(F),Me=V(fe)-V(l.value);Math.max(Ve,Me)>dt?(o.value=F,l.value=fe):(F<=0&&(o.value=F),fe>=t.value.length&&(l.value=fe))}i.value=V(o.value),r.value=V(t.value.length)-V(l.value)}function ae(O){const k=V(O);!u.value||O&&!k?g=O:u.value.scrollTop=k}const se=b(()=>t.value.slice(o.value,l.value).map((O,k)=>{const x=k+o.value;return{raw:O,index:x,key:Dn(O,e.itemKey,x)}}));return ee(t,()=>{S=Array.from({length:t.value.length}),s=Array.from({length:t.value.length}),C.immediate(),G()},{deep:1}),{calculateVisibleItems:G,containerRef:u,markerRef:p,computedItems:se,paddingTop:i,paddingBottom:r,scrollToIndex:ae,handleScroll:$,handleScrollend:D,handleItemResize:P}}function Yo(e,t){let n=e.length-1,a=0,o=0,l=null,i=-1;if(e[n]<t)return n;for(;a<=n;)if(o=a+n>>1,l=e[o],l>t)n=o-1;else if(l<t)i=o,a=o+1;else return l===t?o:a;return i}const Xo=q({items:{type:Array,default:()=>[]},renderless:Boolean,...Jo(),...me(),...Et()},"VVirtualScroll"),Zo=ie()({name:"VVirtualScroll",props:Xo(),setup(e,{slots:t}){const n=Ln("VVirtualScroll"),{dimensionStyles:a}=jt(e),{calculateVisibleItems:o,containerRef:l,markerRef:i,handleScroll:r,handleScrollend:u,handleItemResize:p,scrollToIndex:h,paddingTop:c,paddingBottom:m,computedItems:d}=Qo(e,z(()=>e.items));return mt(()=>e.renderless,()=>{function y(S=!1){var f,g;const s=S?"addEventListener":"removeEventListener";Ke&&(l.value===document.documentElement?(document[s]("scroll",r,{passive:!0}),document[s]("scrollend",u)):((f=l.value)==null||f[s]("scroll",r,{passive:!0}),(g=l.value)==null||g[s]("scrollend",u)))}Bn(()=>{l.value=dl(n.vnode.el,!0),y(!0)}),Mt(y)}),ce(()=>{const y=d.value.map(S=>w(Ho,{key:S.key,renderless:e.renderless,"onUpdate:height":s=>p(S.index,s)},{default:s=>{var f;return(f=t.default)==null?void 0:f.call(t,{item:S.raw,index:S.index,...s})}}));return e.renderless?v(ne,null,[v("div",{ref:i,class:"v-virtual-scroll__spacer",style:{paddingTop:Ue(c.value)}},null),y,v("div",{class:"v-virtual-scroll__spacer",style:{paddingBottom:Ue(m.value)}},null)]):v("div",{ref:l,class:Y(["v-virtual-scroll",e.class]),onScrollPassive:r,onScrollend:u,style:he([a.value,e.style])},[v("div",{ref:i,class:"v-virtual-scroll__container",style:{paddingTop:Ue(c.value),paddingBottom:Ue(m.value)}},[y])])}),{calculateVisibleItems:o,scrollToIndex:h}}});function er(e,t){const n=te(!1);let a;function o(r){cancelAnimationFrame(a),n.value=!0,a=requestAnimationFrame(()=>{a=requestAnimationFrame(()=>{n.value=!1})})}async function l(){await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>{if(n.value){const u=ee(n,()=>{u(),r()})}else r()})}async function i(r){var h,c;if(r.key==="Tab"&&((h=t.value)==null||h.focus()),!["PageDown","PageUp","Home","End"].includes(r.key))return;const u=(c=e.value)==null?void 0:c.$el;if(!u)return;(r.key==="Home"||r.key==="End")&&u.scrollTo({top:r.key==="Home"?0:u.scrollHeight,behavior:"smooth"}),await l();const p=u.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(r.key==="PageDown"||r.key==="Home"){const m=u.getBoundingClientRect().top;for(const d of p)if(d.getBoundingClientRect().top>=m){d.focus();break}}else{const m=u.getBoundingClientRect().bottom;for(const d of[...p].reverse())if(d.getBoundingClientRect().bottom<=m){d.focus();break}}}return{onScrollPassive:o,onKeydown:i}}function tr({groups:e,onLeave:t}){function n(i){var r;return i.type==="list"?(r=i.contentRef.value)==null?void 0:r.$el:i.contentRef.value}function a(i){const r=n(i);return r?bn(r):[]}function o(i){var m;const r=i.target,u=i.shiftKey?"backward":"forward",p=e.map(a),h=e.map(d=>{var y;return d.type==="list"?(y=d.contentRef.value)==null?void 0:y.$el:d.contentRef.value}).findIndex(d=>d==null?void 0:d.contains(r)),c=l(p,h,u,r);if(c===null){const d=e[h],y=p[h];(d.type==="list"||(u==="forward"?y.at(-1)===i.target:y.at(0)===i.target))&&t()}else{i.preventDefault(),i.stopImmediatePropagation();const d=e[c];if(d.type==="list"&&ht(d.displayItemsCount)>0)(m=d.contentRef.value)==null||m.focus(0);else{const y=u==="forward";p[c].at(y?0:-1).focus()}}}function l(i,r,u,p){const h=e[r],c=i[r];if(h.type!=="list"&&!(u==="forward"?c.at(-1)===p:c.at(0)===p))return null;const m=u==="forward"?1:-1;for(let d=r+m;d>=0&&d<e.length;d+=m){const y=e[d];if(i[d].length>0||y.type==="list"&&ht(y.displayItemsCount)>0)return d}return null}return{onTabKeydown:o}}const nr=(e,t,n)=>{if(e==null||t==null)return-1;if(!t.length)return 0;e=e.toString().toLocaleLowerCase(),t=t.toString().toLocaleLowerCase();const a=[];let o=e.indexOf(t);for(;~o;)a.push([o,o+t.length]),o=e.indexOf(t,o+t.length);return a.length?a:-1};function ft(e,t){if(!(e==null||typeof e=="boolean"||e===-1))return typeof e=="number"?[[e,e+t.length]]:Array.isArray(e[0])?e:[e]}const ar=q({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function lr(e,t,n){var u,p;const a=[],o=(n==null?void 0:n.default)??nr,l=n!=null&&n.filterKeys?Ie(n.filterKeys):!1,i=Object.keys((n==null?void 0:n.customKeyFilter)??{}).length;if(!(e!=null&&e.length))return a;let r=[];e:for(let h=0;h<e.length;h++){const[c,m=c]=Ie(e[h]),d={},y={};let S=-1;if((t||i>0)&&!(n!=null&&n.noFilter)){let s=!1;if(typeof c=="object"){if(c.type==="divider"||c.type==="subheader"){(((u=r.at(-1))==null?void 0:u.type)!=="divider"||c.type!=="subheader")&&(r=[]),r.push({index:h,matches:{},type:c.type});continue}const _=l||Object.keys(m);s=_.length===i;for(const C of _){const I=Dn(m,C),P=(p=n==null?void 0:n.customKeyFilter)==null?void 0:p[C];if(S=P?P(I,t,c):o(I,t,c),S!==-1&&S!==!1)P?d[C]=ft(S,t):y[C]=ft(S,t);else if((n==null?void 0:n.filterMode)==="every")continue e}}else S=o(c,t,c),S!==-1&&S!==!1&&(y.title=ft(S,t));const f=Object.keys(y).length,g=Object.keys(d).length;if(!f&&!g||(n==null?void 0:n.filterMode)==="union"&&g!==i&&!f||(n==null?void 0:n.filterMode)==="intersection"&&(g!==i||!f&&i>0&&!s))continue}r.length&&(a.push(...r),r=[]),a.push({index:h,matches:{...y,...d}})}return a}function or(e,t,n,a){const o=te([]),l=te(new Map),i=b(()=>ue(t));pt(()=>{const u=typeof n=="function"?n():ue(n),p=typeof u!="string"&&typeof u!="number"?"":String(u),h=lr(i.value,p,{customKeyFilter:{...e.customKeyFilter,...ue(a==null?void 0:a.customKeyFilter)},default:e.customFilter,filterKeys:e.filterKeys,filterMode:e.filterMode,noFilter:e.noFilter}),c=ue(t),m=[],d=new Map;h.forEach(({index:y,matches:S})=>{const s=c[y];m.push(s),d.set(s.value,S)}),o.value=m,l.value=d});function r(u){return l.value.get(u.value)}return{filteredItems:o,filteredMatches:l,getMatches:r}}function rr(e,t,n){return n==null||!n.length?t:n.map((a,o)=>{const l=o===0?0:n[o-1][1],i=[v("span",{class:Y(`${e}__unmask`)},[t.slice(l,a[0])]),v("span",{class:Y(`${e}__mask`)},[t.slice(a[0],a[1])])];return o===n.length-1&&i.push(v("span",{class:Y(`${e}__unmask`)},[t.slice(a[1])])),v(ne,null,[i])})}const ir=q({closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"}},"autocomplete");function sr(e,t){const n=je(),a=b(()=>`menu-${n}`),o=z(()=>ht(t)),l=z(()=>a.value);return{menuId:a,ariaExpanded:o,ariaControls:l}}const ur=q({chips:Boolean,closableChips:Boolean,eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuElevation:[Number,String],menuIcon:{type:ve,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,noAutoScroll:Boolean,...ir(),...ml({itemChildren:!1})},"Select"),cr=q({search:String,...ar({filterKeys:["title"]}),...ur(),...ot(aa({modelValue:null,role:"combobox"}),["validationValue","dirty"]),...Rt({transition:{component:vl}})},"VSelect"),dr=ie()({name:"VSelect",props:cr(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0,"update:search":e=>!0},setup(e,{slots:t}){const{t:n}=kt(),a=Q(),o=Q(),l=Q(),i=Q(),r=Q(),{items:u,transformIn:p,transformOut:h}=fl(e),c=pe(e,"search",""),{filteredItems:m,getMatches:d}=or(e,u,()=>c.value),y=pe(e,"modelValue",[],A=>p(A===null?[null]:Ie(A)),A=>{const L=h(A);return e.multiple?L:L[0]??null}),S=b(()=>typeof e.counterValue=="function"?e.counterValue(y.value):typeof e.counterValue=="number"?e.counterValue:y.value.length),s=ta(e),f=na(e),g=b(()=>y.value.map(A=>A.value)),_=te(!1),C=z(()=>e.closableChips&&!s.isReadonly.value&&!s.isDisabled.value),{InputIcon:I}=Dt(e);let P="",V=0,T;const j=b(()=>{const A=c.value?m.value:u.value;return e.hideSelected?A.filter(L=>!y.value.some(X=>(e.valueComparator||$e)(X,L))):A}),M=b(()=>e.hideNoData&&!j.value.length||s.isReadonly.value||s.isDisabled.value),E=pe(e,"menu"),R=b({get:()=>E.value,set:A=>{var L;E.value&&!A&&((L=o.value)!=null&&L.ΨopenChildren.size)||A&&M.value||(E.value=A)}}),{menuId:$,ariaExpanded:D,ariaControls:N}=sr(e,R),G=b(()=>{var A;return{...e.menuProps,activatorProps:{...((A=e.menuProps)==null?void 0:A.activatorProps)||{},"aria-haspopup":"listbox"}}}),U=Q(),ae=er(U,a),{onTabKeydown:se}=tr({groups:[{type:"element",contentRef:l},{type:"list",contentRef:U,displayItemsCount:()=>j.value.length},{type:"element",contentRef:i}],onLeave:()=>{var A;R.value=!1,(A=a.value)==null||A.focus()}});function O(A){e.openOnClear&&(R.value=!0)}function k(){M.value||(R.value=!R.value)}function x(A){var L;A.key==="Tab"&&se(A),(L=U.value)!=null&&L.$el.contains(A.target)&&en(A)&&F(A)}function F(A){var Ae,Z,be;if(!A.key||s.isReadonly.value)return;if(["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(A.key)&&A.preventDefault(),["Enter","ArrowDown"," "].includes(A.key)&&(R.value=!0),["Escape","Tab"].includes(A.key)&&(R.value=!1),e.clearable&&A.key==="Backspace"){A.preventDefault(),y.value=[],O();return}A.key==="Home"?(Ae=U.value)==null||Ae.focus("first"):A.key==="End"&&((Z=U.value)==null||Z.focus("last"));const L=1e3;if(!en(A))return;const X=performance.now();X-T>L&&(P="",V=0),P+=A.key.toLowerCase(),T=X;const xe=j.value;function ke(){let oe=Re();return oe||P.at(-1)===P.at(-2)&&(P=P.slice(0,-1),V++,oe=Re(),oe)||(V=0,oe=Re(),oe)?oe:(P=A.key.toLowerCase(),Re())}function Re(){for(let oe=V;oe<xe.length;oe++){const re=xe[oe];if(re.title.toLowerCase().startsWith(P))return[re,oe]}}const Ce=ke();if(!Ce)return;const[W,ge]=Ce;V=ge,(be=U.value)==null||be.focus(ge),e.multiple||(y.value=[W])}function le(A,L=!0){if(!A.props.disabled)if(e.multiple){const X=y.value.findIndex(ke=>(e.valueComparator||$e)(ke.value,A.value)),xe=L??!~X;if(~X){const ke=xe?[...y.value,A]:[...y.value];ke.splice(X,1),y.value=ke}else xe&&(y.value=[...y.value,A])}else{const X=L!==!1;y.value=X?[A]:[],Oe(()=>{R.value=!1})}}function fe(A){var X;const L=A.target;(X=a.value)!=null&&X.$el.contains(L)||(R.value=!1)}function Ve(){return j.value.findIndex(A=>y.value.some(L=>(e.valueComparator||$e)(L.value,A.value)))}function Me(){if(!y.value.length)return-1;const A=e.valueComparator||$e;let L=0;for(const X of j.value){if(y.value.some(ke=>A(ke.value,X.value)))return X.props.disabled?-1:L;X.props.disabled||L++}return-1}function We(){var A;if(e.eager&&((A=r.value)==null||A.calculateVisibleItems()),U.value&&_.value){const L=Me();U.value.focus(L>=0?L:"first",{focusVisible:!1})}}function rt(){var A;c.value="",_.value&&((A=a.value)==null||A.focus())}function it(A){_.value=!0}function ra(A){var L;!((L=a.value)!=null&&L.$el.contains(A.relatedTarget))&&!A.currentTarget.contains(A.relatedTarget)&&(_.value=!1)}function ia(A){if(A==null)y.value=[];else if(yt(a.value,":autofill")||yt(a.value,":-webkit-autofill")){const L=u.value.find(X=>X.title===A);L&&le(L)}else a.value&&(a.value.value="")}return ee(R,()=>{if(!e.hideSelected&&R.value&&y.value.length){const A=Ve();Ke&&!e.noAutoScroll&&window.requestAnimationFrame(()=>{var L;A>=0&&((L=r.value)==null||L.scrollToIndex(A))})}}),ee(u,(A,L)=>{R.value||_.value&&e.hideNoData&&!L.length&&A.length&&(R.value=!0)}),ce(()=>{const A=!!(e.chips||t.chip),L=!!(!e.hideNoData||j.value.length||t["prepend-item"]||t["append-item"]||t["no-data"]),X=y.value.length>0,xe=_t.filterProps(e),ke=X||!_.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder,Re={search:c,filteredItems:m.value};return w(_t,H({ref:a},xe,{modelValue:y.value.map(Ce=>Ce.props.title).join(", "),name:void 0,"onUpdate:modelValue":ia,focused:_.value,"onUpdate:focused":Ce=>_.value=Ce,validationValue:y.externalValue,counterValue:S.value,dirty:X,class:["v-select",{"v-select--active-menu":R.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":y.value.length,"v-select--selection-slot":!!t.selection},e.class],style:e.style,inputmode:"none",placeholder:ke,"onClick:clear":O,"onMousedown:control":k,onBlur:fe,onKeydown:F,"aria-expanded":D.value,"aria-controls":N.value}),{...t,default:({id:Ce})=>v(ne,null,[v("select",{hidden:!0,multiple:e.multiple,name:f.fieldName.value},[u.value.map(W=>v("option",{key:W.value,value:W.value,selected:g.value.includes(W.value)},null))]),w(yl,H({id:$.value,ref:o,modelValue:R.value,"onUpdate:modelValue":W=>R.value=W,activator:"parent",disabled:M.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:We,onAfterLeave:rt},G.value,{contentClass:["v-select__content",G.value.contentClass]}),{default:()=>[w(Lt,{elevation:e.menuElevation,onFocusin:it,onFocusout:ra,onKeydown:x},{default:()=>[t["menu-header"]&&v("header",{ref:l},[t["menu-header"](Re)]),L&&w(pl,H({key:"select-list",ref:U,selected:g.value,selectStrategy:e.multiple?"independent":"single-independent",tabindex:"-1",selectable:!!j.value.length,"aria-live":"polite","aria-labelledby":`${Ce.value}-label`,"aria-multiselectable":e.multiple,color:e.itemColor??e.color},ae,e.listProps),{default:()=>{var W,ge,Ae;return[(W=t["prepend-item"])==null?void 0:W.call(t),!j.value.length&&!e.hideNoData&&(((ge=t["no-data"])==null?void 0:ge.call(t))??w(gt,{key:"no-data",title:n(e.noDataText)},null)),w(Zo,{ref:r,renderless:!0,items:j.value,itemKey:"value"},{default:({item:Z,index:be,itemRef:oe})=>{var Ht,qt,Wt;const re=hl(Z.props),Gt=H(Z.props,{ref:oe,key:Z.value,onClick:()=>le(Z,null),"aria-posinset":be+1,"aria-setsize":j.value.length});return Z.type==="divider"?((Ht=t.divider)==null?void 0:Ht.call(t,{props:Z.raw,index:be}))??w(gl,H(Z.props,{key:`divider-${be}`}),null):Z.type==="subheader"?((qt=t.subheader)==null?void 0:qt.call(t,{props:Z.raw,index:be}))??w(bl,H(Z.props,{key:`subheader-${be}`}),null):((Wt=t.item)==null?void 0:Wt.call(t,{item:Z.raw,internalItem:Z,index:be,props:Gt}))??w(gt,H(Gt,{role:"option"}),{prepend:({isSelected:Je})=>v(ne,null,[e.multiple&&!e.hideSelected?w(Ko,{key:Z.value,modelValue:Je,ripple:!1,tabindex:"-1","aria-hidden":!0,onClick:sa=>sa.preventDefault()},null):void 0,re.prependAvatar&&w(vt,{image:re.prependAvatar},null),re.prependIcon&&w(ye,{icon:re.prependIcon},null)]),title:()=>{var Je;return c.value?rr("v-select",Z.title,(Je=d(Z))==null?void 0:Je.title):Z.title}})}}),(Ae=t["append-item"])==null?void 0:Ae.call(t)]}}),t["menu-footer"]&&v("footer",{ref:i},[t["menu-footer"](Re)])]})]}),y.value.map((W,ge)=>{function Ae(re){re.stopPropagation(),re.preventDefault(),le(W,!1)}const Z=H(Be.filterProps(W.props),{"onClick:close":Ae,onKeydown(re){re.key!=="Enter"&&re.key!==" "||(re.preventDefault(),re.stopPropagation(),Ae(re))},onMousedown(re){re.preventDefault(),re.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),be=A?!!t.chip:!!t.selection,oe=be?Sl(A?t.chip({item:W.raw,internalItem:W,index:ge,props:Z}):t.selection({item:W.raw,internalItem:W,index:ge})):void 0;if(!(be&&!oe))return v("div",{key:W.value,class:"v-select__selection"},[A?t.chip?w(Te,{key:"chip-defaults",defaults:{VChip:{closable:C.value,size:"small",text:W.title}}},{default:()=>[oe]}):w(Be,H({key:"chip",closable:C.value,size:"small",text:W.title,disabled:W.props.disabled},Z),null):oe??v("span",{class:"v-select__selection-text"},[W.title,e.multiple&&ge<y.value.length-1&&v("span",{class:"v-select__selection-comma"},[Ee(",")])])])})]),"append-inner":(...Ce)=>{var W,ge;return v(ne,null,[(W=t["append-inner"])==null?void 0:W.call(t,...Ce),e.menuIcon?w(ye,{class:"v-select__menu-icon",color:(ge=a.value)==null?void 0:ge.fieldIconColor,icon:e.menuIcon,"aria-hidden":!0},null):void 0,e.appendInnerIcon&&w(I,{key:"append-icon",name:"appendInner",color:Ce[0].iconColor.value},null)])}})}),Ft({isFocused:_,menu:R,search:c,filteredItems:m,select:le},a)}}),fr=q({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...Ut(),...Kt()},"VSwitch"),vr=ie()({name:"VSwitch",inheritAttrs:!1,props:fr(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,{attrs:t,slots:n}){const a=pe(e,"indeterminate"),o=pe(e,"modelValue"),{loaderClasses:l}=Mn(e),{isFocused:i,focus:r,blur:u}=Nt(e),p=Q(),h=Q(),c=_l&&window.matchMedia("(forced-colors: active)").matches,m=z(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),d=je(),y=z(()=>e.id||`switch-${d}`);function S(){a.value&&(a.value=!1)}function s(f){var g,_;f.stopPropagation(),f.preventDefault(),(_=(g=p.value)==null?void 0:g.input)==null||_.click()}return ce(()=>{const[f,g]=zt(t),_=et.filterProps(e),C=tt.filterProps(e);return w(et,H({ref:h,class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":a.value},l.value,e.class]},f,_,{modelValue:o.value,"onUpdate:modelValue":I=>o.value=I,id:y.value,focused:i.value,style:e.style}),{...n,default:({id:I,messagesId:P,isDisabled:V,isReadonly:T,isValid:j})=>{const M={model:o,isValid:j};return w(tt,H({ref:p},C,{modelValue:o.value,"onUpdate:modelValue":[E=>o.value=E,S],id:I.value,"aria-describedby":P.value,type:"checkbox","aria-checked":a.value?"mixed":void 0,disabled:V.value,readonly:T.value,onFocus:r,onBlur:u},g),{...n,default:({backgroundColorClasses:E,backgroundColorStyles:R})=>v("div",{class:Y(["v-switch__track",c?void 0:E.value]),style:he(R.value),onClick:s},[n["track-true"]&&v("div",{key:"prepend",class:"v-switch__track-true"},[n["track-true"](M)]),n["track-false"]&&v("div",{key:"append",class:"v-switch__track-false"},[n["track-false"](M)])]),input:({inputNode:E,icon:R,backgroundColorClasses:$,backgroundColorStyles:D})=>v(ne,null,[E,v("div",{class:Y(["v-switch__thumb",{"v-switch__thumb--filled":R||e.loading},e.inset||c?void 0:$.value]),style:he(e.inset?void 0:D.value)},[n.thumb?w(Te,{defaults:{VIcon:{icon:R,size:"x-small"}}},{default:()=>[n.thumb({...M,icon:R})]}):w(Cl,null,{default:()=>[e.loading?w($n,{name:"v-switch",active:!0,color:j.value===!1?void 0:m.value},{default:N=>n.loader?n.loader(N):w(Pl,{active:N.isActive,color:N.color,indeterminate:!0,size:"16",width:"2"},null)}):R&&w(ye,{key:String(R),icon:R,size:"x-small"},null)]})])])})}})}),Ft({},h)}}),mr={class:"project-config-setup__heading"},yr={class:"project-config-setup__message"},pr={class:"project-config-setup__sections"},hr={class:"project-config-setup__section-title"},gr={class:"project-config-setup__fields"},br={class:"project-config-setup__field-copy"},Sr={class:"project-config-setup__field-id"},_r={class:"project-config-setup__field-control"},Cr={key:0},Pr={key:3,class:"project-config-setup__selected-option"},kr={class:"project-config-setup__actions"},Ir={__name:"ProjectConfigSetup",props:{saving:{type:Boolean,default:!1},state:{type:Object,default:()=>({})}},emits:["save"],setup(e,{emit:t}){const n=e,a=t,o=jn({}),l=b(()=>{var s;return Array.isArray((s=n.state)==null?void 0:s.fields)?n.state.fields:[]}),i=b(()=>{var s;return Array.isArray((s=n.state)==null?void 0:s.sections)?n.state.sections:[]}),r=b(()=>{var s,f;return(s=n.state)!=null&&s.message?n.state.message:((f=n.state)==null?void 0:f.ready)===!0?"Project configuration is saved.":"Save these values before Studio prepares the target project."});function u(s={}){var f,g;return Object.hasOwn(((f=n.state)==null?void 0:f.values)||{},s.id)?n.state.values[s.id]:Object.hasOwn(((g=n.state)==null?void 0:g.defaults)||{},s.id)?n.state.defaults[s.id]:s.type==="boolean"?!1:""}function p(s={}){return s.type==="string"||s.type==="path"?"text":s.type}function h(s={}){return String(s.description||"This setting is provided by the selected project adapter.")}function c(s={}){return o[s.id]?"Enabled":"Disabled"}function m(s={}){if(s.type!=="select")return null;const f=String(o[s.id]??"");return(Array.isArray(s.options)?s.options:[]).find(g=>String(g.value||"")===f)||null}function d(s={}){var f;return String(((f=m(s))==null?void 0:f.description)||"")}function y(s={}){var g,_,C;const f=(C=(_=(g=n.state)==null?void 0:g.fieldValues)==null?void 0:_[s.id])==null?void 0:C.invalid;return f!=null&&f.message?[f.message]:[]}function S(){const s=new Set(l.value.map(f=>f.id));for(const f of Object.keys(o))s.has(f)||delete o[f];for(const f of l.value)o[f.id]=u(f)}return ee(()=>n.state,S,{deep:!0,immediate:!0}),(s,f)=>(B(),Pe(Lt,{rounded:"lg",border:"",class:"project-config-setup"},{default:_e(()=>[v("div",mr,[f[1]||(f[1]=v("p",{class:"project-config-setup__eyebrow"},"Vibe64",-1)),f[2]||(f[2]=v("h2",{class:"project-config-setup__title"},"Configure project",-1)),v("p",yr,K(r.value),1)]),v("div",pr,[(B(!0),J(ne,null,Le(i.value,g=>(B(),J("section",{key:g.id,class:"project-config-setup__section"},[v("h3",hr,K(g.label),1),v("div",gr,[(B(!0),J(ne,null,Le(g.fields,_=>(B(),J("div",{key:_.id,class:"project-config-setup__field"},[v("div",br,[v("h4",null,K(_.label),1),v("p",null,K(h(_)),1),v("span",Sr,K(_.id),1)]),v("div",_r,[_.type==="boolean"?(B(),Pe(vr,{key:0,modelValue:o[_.id],"onUpdate:modelValue":C=>o[_.id]=C,color:"primary",density:"compact","hide-details":"auto","error-messages":y(_),label:c(_)},null,8,["modelValue","onUpdate:modelValue","error-messages","label"])):_.type==="select"?(B(),Pe(dr,{key:1,modelValue:o[_.id],"onUpdate:modelValue":C=>o[_.id]=C,density:"compact","error-messages":y(_),"item-title":"label","item-value":"value",items:_.options,label:"Selected option",variant:"outlined"},{item:_e(({props:C,item:I})=>[w(gt,H({ref_for:!0},C),{subtitle:_e(()=>{var P;return[(P=I.raw)!=null&&P.description?(B(),J("span",Cr,K(I.raw.description),1)):Se("",!0)]}),_:2},1040)]),_:1},8,["modelValue","onUpdate:modelValue","error-messages","items"])):(B(),Pe(_t,{key:2,modelValue:o[_.id],"onUpdate:modelValue":C=>o[_.id]=C,density:"compact","error-messages":y(_),label:"Value",type:p(_),variant:"outlined"},null,8,["modelValue","onUpdate:modelValue","error-messages","type"])),d(_)?(B(),J("p",Pr,K(d(_)),1)):Se("",!0)])]))),128))])]))),128))]),v("div",kr,[w(Ze,{color:"primary",disabled:e.saving,loading:e.saving,variant:"flat",onClick:f[0]||(f[0]=g=>a("save",{...o}))},{default:_e(()=>[...f[3]||(f[3]=[Ee(" Save config ",-1)])]),_:1},8,["disabled","loading"])])]),_:1}))}},Vr=lt(Ir,[["__scopeId","data-v-1c4cc960"]]),wr={class:"project-type-setup"},xr={class:"project-type-setup__heading"},Ar={class:"project-type-setup__message"},Er={class:"project-type-setup__application-grid"},jr=["aria-pressed","onClick"],Rr=["viewBox"],Tr=["d"],Or={class:"project-type-setup__application-label"},Fr={class:"project-type-setup__application-summary"},zr=["aria-labelledby"],Mr={key:0,class:"project-type-setup__technology-heading"},$r={class:"project-type-setup__technology-copy"},Lr={class:"project-type-setup__technology-description"},Br={class:"project-type-setup__selected-type"},Dr={class:"project-type-setup__selected-type-name"},Nr={class:"project-type-setup__options"},Ur=["title"],Kr={class:"project-type-setup__option-top"},Gr={class:"project-type-setup__option-kicker"},Hr={class:"project-type-setup__option-title"},qr={class:"project-type-setup__summary"},Wr={class:"project-type-setup__details"},Jr={key:0,class:"project-type-setup__stack","aria-label":"Technology stack"},Qr={class:"project-type-setup__option-actions"},Yr=["href"],Xr={key:1,class:"project-type-setup__project-link project-type-setup__project-link--empty"},fn="project-type-setup-application-heading",vn="project-type-setup-technology-heading",Zr={__name:"ProjectTypeSetup",props:{savingType:{type:String,default:""},state:{type:Object,default:()=>({})}},emits:["select"],setup(e,{emit:t}){const n=e,a=t,o=Q(""),l=b(()=>!!n.savingType),i=b(()=>{var s;return(s=n.state)!=null&&s.status&&n.state.status!=="missing"&&n.state.message?n.state.message:"Choose the kind of app first, then pick the technology Studio and Codex should use for it."}),r=b(()=>{var s;return Array.isArray((s=n.state)==null?void 0:s.availableProjectTypes)?n.state.availableProjectTypes.map(m).filter(f=>f.enabled===!0):[]}),u=b(()=>{var s;return Array.isArray((s=n.state)==null?void 0:s.availableApplicationTypes)?n.state.availableApplicationTypes.map(d).filter(f=>f.adapters.length>0):[]}),p=b(()=>u.value.length>0),h=b(()=>u.value.find(s=>s.id===o.value)||u.value[0]||null),c=b(()=>h.value?h.value.adapters:r.value);function m(s={}){return{...s,applicationTypeId:String(s.applicationTypeId||""),explanation:String(s.explanation||""),techStack:Array.isArray(s.techStack)?s.techStack:[]}}function d(s={}){return{...s,adapters:Array.isArray(s.adapters)?s.adapters.map(m):[],iconPaths:Array.isArray(s.iconPaths)?s.iconPaths:[],iconViewBox:String(s.iconViewBox||"0 0 64 64")}}function y(s={}){return s.explanation||s.summary||s.description||"A configured Vibe64 adapter for this project type."}function S(s){o.value=String(s||"")}return ee(u,s=>{s.length>0&&!s.some(f=>f.id===o.value)&&(o.value=s[0].id)},{immediate:!0}),(s,f)=>(B(),J("section",wr,[v("div",xr,[f[0]||(f[0]=v("p",{class:"project-type-setup__eyebrow"},"Vibe64",-1)),f[1]||(f[1]=v("h2",{class:"project-type-setup__title"},"What do you want to build?",-1)),v("p",Ar,K(i.value),1)]),p.value?(B(),J("section",{key:0,class:"project-type-setup__application-section","aria-labelledby":fn},[v("div",{class:"project-type-setup__application-heading"},[f[2]||(f[2]=v("p",{class:"project-type-setup__section-kicker"},"Step 1",-1)),v("h3",{id:fn},"Choose app type")]),v("div",Er,[(B(!0),J(ne,null,Le(u.value,g=>(B(),J("button",{key:g.id,"aria-pressed":g.id===o.value,class:Y(["project-type-setup__application-card",{"project-type-setup__application-card--selected":g.id===o.value}]),type:"button",onClick:_=>S(g.id)},[(B(),J("svg",{class:"project-type-setup__application-icon",viewBox:g.iconViewBox,"aria-hidden":"true",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"4"},[(B(!0),J(ne,null,Le(g.iconPaths,_=>(B(),J("path",{key:_,d:_},null,8,Tr))),128))],8,Rr)),v("span",Or,K(g.label),1),v("span",Fr,K(g.summary),1),w(Be,{class:"project-type-setup__application-count",density:"comfortable",size:"small",variant:"tonal"},{default:_e(()=>[Ee(K(g.adapters.length)+" "+K(g.adapters.length===1?"option":"options"),1)]),_:2},1024)],10,jr))),128))])])):Se("",!0),v("section",{class:"project-type-setup__technology-section","aria-labelledby":h.value?vn:void 0},[h.value?(B(),J("div",Mr,[v("div",$r,[f[3]||(f[3]=v("p",{class:"project-type-setup__section-kicker"},"Step 2",-1)),v("h3",{id:vn},"Choose technology for "+K(h.value.label),1),v("p",Lr,K(h.value.description),1)]),v("div",Br,[f[4]||(f[4]=v("span",{class:"project-type-setup__selected-type-label"},"Selected app type",-1)),v("span",Dr,K(h.value.label),1)])])):Se("",!0),v("div",Nr,[(B(!0),J(ne,null,Le(c.value,g=>(B(),J("article",{key:g.id,class:"project-type-setup__option",title:g.label},[v("div",Kr,[v("div",null,[v("p",Gr,K(g.id),1),v("h3",Hr,K(g.label),1)]),w(Be,{color:"success",density:"comfortable",size:"small",variant:"tonal"},{default:_e(()=>[...f[5]||(f[5]=[Ee(" Ready ",-1)])]),_:1})]),v("p",qr,K(y(g)),1),v("dl",Wr,[v("div",null,[f[6]||(f[6]=v("dt",null,"Best for",-1)),v("dd",null,K(g.bestFor||"Project-specific Vibe64 workflows."),1)]),v("div",null,[f[7]||(f[7]=v("dt",null,"End result",-1)),v("dd",null,K(g.outcome||"Studio will use this adapter once it is implemented."),1)])]),g.techStack.length?(B(),J("div",Jr,[(B(!0),J(ne,null,Le(g.techStack,_=>(B(),Pe(Be,{key:_,class:"project-type-setup__stack-chip",density:"comfortable",size:"small",variant:"tonal"},{default:_e(()=>[Ee(K(_),1)]),_:2},1024))),128))])):Se("",!0),v("div",Qr,[g.projectUrl?(B(),J("a",{key:0,class:"project-type-setup__project-link",href:g.projectUrl,rel:"noreferrer",target:"_blank"},[v("span",null,K(g.projectUrlLabel||"Open project"),1),w(ye,{icon:ue(kl),size:"16"},null,8,["icon"])],8,Yr)):(B(),J("span",Xr," Project link coming later ")),w(Ze,{color:"primary",variant:"flat",disabled:l.value,loading:e.savingType===g.id,onClick:_=>a("select",g.id)},{default:_e(()=>[Ee(" Use "+K(g.label),1)]),_:2},1032,["disabled","loading","onClick"])])],8,Ur))),128))])],8,zr)]))}},ei=lt(Zr,[["__scopeId","data-v-576c154a"]]),ti={class:"project-type-gate"},ni={__name:"ProjectTypeGate",props:{configureProject:{default:!1,type:Boolean}},emits:["ready","missing","error"],setup(e,{emit:t}){const n=t,a=e,o=Q(!1),l=Q("");function i(E){return b(()=>E(st,ct))}function r({enabled:E=!0,fallbackLoadError:R="Request failed.",path:$,queryKeyFactory:D}){const N=yn({client:Vl,enabled:E,fallbackLoadError:R,path:$,queryKey:i(D),refreshOnPull:!0});return Rn({isLoading:N.isLoading,loadError:N.loadError,record:N.data,refresh:N.reload,resource:N})}const u=r({fallbackLoadError:"Project type could not load.",path:Ca,queryKeyFactory:Pa}),p=b(()=>{var E;return((E=u.record)==null?void 0:E.projectType)||{}}),h=r({enabled:b(()=>p.value.ready===!0),fallbackLoadError:"Project config could not load.",path:ka,queryKeyFactory:Ia}),c=cn({access:"never",apiSuffix:Va,buildCommandOptions:()=>({method:"PUT",options:Jt}),buildRawPayload:(E,{context:R})=>({projectType:String(R.projectType||"")}),fallbackRunError:"Project type could not be saved.",messages:{error:"Project type could not be saved.",success:"Project type saved."},onRunSuccess:T,ownershipFilter:ct,placementSource:"vibe64.project-type.save",surfaceId:st,writeMethod:"PUT"}),m=cn({access:"never",apiSuffix:wa,buildCommandOptions:()=>({method:"PUT",options:Jt}),buildRawPayload:(E,{context:R})=>({values:R.values||{}}),fallbackRunError:"Project config could not be saved.",messages:{error:"Project config could not be saved.",success:"Project config saved."},onRunSuccess:T,ownershipFilter:ct,placementSource:"vibe64.project-config.save",surfaceId:st,writeMethod:"PUT"}),d=b(()=>{var E;return((E=h.record)==null?void 0:E.config)||{}}),y=b(()=>{var E;return!!((E=u.record)!=null&&E.projectType)}),S=b(()=>{var E;return!!((E=h.record)!=null&&E.config)}),s=b(()=>p.value.ready===!0&&d.value.ready===!0),f=b(()=>({projectConfig:d.value,projectType:p.value})),g=b(()=>y.value&&p.value.ready!==!0),_=b(()=>p.value.ready===!0&&S.value&&(a.configureProject||d.value.ready!==!0)),C=b(()=>p.value.ready===!0&&!S.value&&h.isLoading),I=b(()=>!!(u.isLoading||C.value)),P=b(()=>c.messageType==="error"?String(c.message||""):m.messageType==="error"?String(m.message||""):""),V=b(()=>String(u.loadError||h.loadError||P.value||""));async function T(){await u.refresh(),p.value.ready===!0&&await h.refresh()}async function j(E){l.value=String(E||"");try{await c.run({projectType:l.value})}finally{l.value=""}}async function M(E){o.value=!0;try{await m.run({values:E||{}})}finally{o.value=!1}}return ee([f,()=>a.configureProject],([E,R])=>{if(y.value){if(s.value&&R!==!0){n("ready",E);return}n("missing",E)}},{immediate:!0}),ee(()=>p.value.ready,E=>{E===!0&&!S.value&&h.refresh()},{immediate:!0}),ee(V,E=>{E&&n("error",E)}),(E,R)=>(B(),J("div",ti,[V.value?(B(),Pe(ao,{key:0,title:"Project setup could not load",error:V.value,compact:""},null,8,["error"])):Se("",!0),I.value?(B(),Pe(wl,{key:1,color:"primary",height:"6",indeterminate:"",rounded:""})):g.value?(B(),Pe(ei,{key:2,"saving-type":l.value,state:p.value,onSelect:j},null,8,["saving-type","state"])):_.value?(B(),Pe(Vr,{key:3,saving:o.value,state:d.value,onSave:M},null,8,["saving","state"])):s.value?Il(E.$slots,"default",{key:4,targetProject:f.value,reload:T},void 0):Se("",!0)]))}},ci=lt(ni,[["__scopeId","data-v-c5f6203e"]]);export{ci as P,ao as S,Be as V,wo as a,dn as b,et as c,Lt as d,tn as e,_t as f,ea as g,Ut as h,qn as i,ri as j,si as k,ii as l,$o as m,oi as n,Lo as o,cn as p,Nt as q,ui as r,ko as s,Ne as t,na as u,So as v,so as w};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.studio-error-notice[data-v-ecc7a488]{align-items:flex-start;background:linear-gradient(135deg,rgba(var(--v-theme-error),.1),rgba(var(--v-theme-error),.035)),rgb(var(--v-theme-surface));border-color:rgba(var(--v-theme-error),.34)!important;color:rgb(var(--v-theme-on-surface));display:grid;gap:.75rem;grid-template-columns:auto minmax(0,1fr);padding:.85rem}.studio-error-notice--compact[data-v-ecc7a488]{gap:.6rem;padding:.65rem}.studio-error-notice__icon[data-v-ecc7a488]{align-items:center;background:rgba(var(--v-theme-error),.14);border:1px solid rgba(var(--v-theme-error),.24);border-radius:999px;color:rgb(var(--v-theme-error));display:inline-flex;height:2.25rem;justify-content:center;width:2.25rem}.studio-error-notice--compact .studio-error-notice__icon[data-v-ecc7a488]{height:2rem;width:2rem}.studio-error-notice__body[data-v-ecc7a488]{display:grid;gap:.45rem;min-width:0}.studio-error-notice__header[data-v-ecc7a488]{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem;min-width:0}.studio-error-notice__header strong[data-v-ecc7a488]{font-size:.9rem;letter-spacing:0;line-height:1.25}.studio-error-notice__message[data-v-ecc7a488]{color:rgba(var(--v-theme-on-surface),.78);font-size:.85rem;line-height:1.45;margin:0}.studio-error-notice__repair[data-v-ecc7a488]{align-items:center;background:rgba(var(--v-theme-error),.08);border:1px solid rgba(var(--v-theme-error),.18);border-radius:6px;display:grid;gap:.4rem;grid-template-columns:minmax(0,1fr) auto;padding:.45rem .45rem .45rem .6rem}.studio-error-notice__repair code[data-v-ecc7a488],.studio-error-notice__details pre[data-v-ecc7a488]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.studio-error-notice__repair code[data-v-ecc7a488]{font-size:.78rem;min-width:0;overflow-x:auto;white-space:nowrap}.studio-error-notice__details[data-v-ecc7a488]{display:grid;justify-items:start}.studio-error-notice__details pre[data-v-ecc7a488]{background:rgba(var(--v-theme-surface-variant),.42);border:1px solid rgba(var(--v-theme-outline),.18);border-radius:6px;color:rgb(var(--v-theme-on-surface));font-size:.76rem;line-height:1.45;margin:.25rem 0 0;max-height:16rem;max-width:100%;overflow:auto;padding:.6rem}.studio-error-notice__copy-status[data-v-ecc7a488]{color:rgba(var(--v-theme-on-surface),.66);font-size:.75rem;margin:0}@media(max-width:700px){.studio-error-notice[data-v-ecc7a488]{grid-template-columns:minmax(0,1fr)}.studio-error-notice__icon[data-v-ecc7a488]{display:none}}@layer vuetify-components{.v-chip{align-items:center;display:inline-flex;font-weight:400;max-width:100%;min-width:0;overflow:hidden;position:relative;text-decoration:none;white-space:nowrap;vertical-align:middle}.v-chip .v-icon{--v-icon-size-multiplier: .8571428571}.v-chip.v-chip--size-x-small{--v-chip-size: .625rem;--v-chip-height: 20px;font-size:.625rem;padding:0 8px}.v-chip.v-chip--size-x-small .v-avatar{--v-avatar-height: 14px}.v-chip--pill.v-chip.v-chip--size-x-small .v-avatar{--v-avatar-height: 20px}.v-chip.v-chip--size-x-small .v-avatar--start{margin-inline-start:-5.6px;margin-inline-end:4px}.v-chip--pill.v-chip.v-chip--size-x-small .v-avatar--start{margin-inline-start:-8px}.v-chip.v-chip--size-x-small .v-avatar--end{margin-inline-start:4px;margin-inline-end:-5.6px}.v-chip--pill.v-chip.v-chip--size-x-small .v-avatar--end{margin-inline-end:-8px}.v-chip--pill.v-chip.v-chip--size-x-small .v-avatar--end+.v-chip__close{margin-inline-start:12px}.v-chip.v-chip--size-x-small .v-icon--start,.v-chip.v-chip--size-x-small .v-chip__filter{margin-inline-start:-4px;margin-inline-end:4px}.v-chip.v-chip--size-x-small .v-icon--end,.v-chip.v-chip--size-x-small .v-chip__close{margin-inline-start:4px;margin-inline-end:-4px}.v-chip.v-chip--size-x-small .v-icon--end+.v-chip__close,.v-chip.v-chip--size-x-small .v-avatar--end+.v-chip__close,.v-chip.v-chip--size-x-small .v-chip__append+.v-chip__close{margin-inline-start:8px}.v-chip.v-chip--size-small{--v-chip-size: .75rem;--v-chip-height: 26px;font-size:.75rem;padding:0 10px}.v-chip.v-chip--size-small .v-avatar{--v-avatar-height: 20px}.v-chip--pill.v-chip.v-chip--size-small .v-avatar{--v-avatar-height: 26px}.v-chip.v-chip--size-small .v-avatar--start{margin-inline-start:-7px;margin-inline-end:5px}.v-chip--pill.v-chip.v-chip--size-small .v-avatar--start{margin-inline-start:-10px}.v-chip.v-chip--size-small .v-avatar--end{margin-inline-start:5px;margin-inline-end:-7px}.v-chip--pill.v-chip.v-chip--size-small .v-avatar--end{margin-inline-end:-10px}.v-chip--pill.v-chip.v-chip--size-small .v-avatar--end+.v-chip__close{margin-inline-start:15px}.v-chip.v-chip--size-small .v-icon--start,.v-chip.v-chip--size-small .v-chip__filter{margin-inline-start:-5px;margin-inline-end:5px}.v-chip.v-chip--size-small .v-icon--end,.v-chip.v-chip--size-small .v-chip__close{margin-inline-start:5px;margin-inline-end:-5px}.v-chip.v-chip--size-small .v-icon--end+.v-chip__close,.v-chip.v-chip--size-small .v-avatar--end+.v-chip__close,.v-chip.v-chip--size-small .v-chip__append+.v-chip__close{margin-inline-start:10px}.v-chip.v-chip--size-default{--v-chip-size: .875rem;--v-chip-height: 32px;font-size:.875rem;padding:0 12px}.v-chip.v-chip--size-default .v-avatar{--v-avatar-height: 26px}.v-chip--pill.v-chip.v-chip--size-default .v-avatar{--v-avatar-height: 32px}.v-chip.v-chip--size-default .v-avatar--start{margin-inline-start:-8.4px;margin-inline-end:6px}.v-chip--pill.v-chip.v-chip--size-default .v-avatar--start{margin-inline-start:-12px}.v-chip.v-chip--size-default .v-avatar--end{margin-inline-start:6px;margin-inline-end:-8.4px}.v-chip--pill.v-chip.v-chip--size-default .v-avatar--end{margin-inline-end:-12px}.v-chip--pill.v-chip.v-chip--size-default .v-avatar--end+.v-chip__close{margin-inline-start:18px}.v-chip.v-chip--size-default .v-icon--start,.v-chip.v-chip--size-default .v-chip__filter{margin-inline-start:-6px;margin-inline-end:6px}.v-chip.v-chip--size-default .v-icon--end,.v-chip.v-chip--size-default .v-chip__close{margin-inline-start:6px;margin-inline-end:-6px}.v-chip.v-chip--size-default .v-icon--end+.v-chip__close,.v-chip.v-chip--size-default .v-avatar--end+.v-chip__close,.v-chip.v-chip--size-default .v-chip__append+.v-chip__close{margin-inline-start:12px}.v-chip.v-chip--size-large{--v-chip-size: 1rem;--v-chip-height: 38px;font-size:1rem;padding:0 14px}.v-chip.v-chip--size-large .v-avatar{--v-avatar-height: 32px}.v-chip--pill.v-chip.v-chip--size-large .v-avatar{--v-avatar-height: 38px}.v-chip.v-chip--size-large .v-avatar--start{margin-inline-start:-9.8px;margin-inline-end:7px}.v-chip--pill.v-chip.v-chip--size-large .v-avatar--start{margin-inline-start:-14px}.v-chip.v-chip--size-large .v-avatar--end{margin-inline-start:7px;margin-inline-end:-9.8px}.v-chip--pill.v-chip.v-chip--size-large .v-avatar--end{margin-inline-end:-14px}.v-chip--pill.v-chip.v-chip--size-large .v-avatar--end+.v-chip__close{margin-inline-start:21px}.v-chip.v-chip--size-large .v-icon--start,.v-chip.v-chip--size-large .v-chip__filter{margin-inline-start:-7px;margin-inline-end:7px}.v-chip.v-chip--size-large .v-icon--end,.v-chip.v-chip--size-large .v-chip__close{margin-inline-start:7px;margin-inline-end:-7px}.v-chip.v-chip--size-large .v-icon--end+.v-chip__close,.v-chip.v-chip--size-large .v-avatar--end+.v-chip__close,.v-chip.v-chip--size-large .v-chip__append+.v-chip__close{margin-inline-start:14px}.v-chip.v-chip--size-x-large{--v-chip-size: 1.125rem;--v-chip-height: 44px;font-size:1.125rem;padding:0 17px}.v-chip.v-chip--size-x-large .v-avatar{--v-avatar-height: 38px}.v-chip--pill.v-chip.v-chip--size-x-large .v-avatar{--v-avatar-height: 44px}.v-chip.v-chip--size-x-large .v-avatar--start{margin-inline-start:-11.9px;margin-inline-end:8.5px}.v-chip--pill.v-chip.v-chip--size-x-large .v-avatar--start{margin-inline-start:-17px}.v-chip.v-chip--size-x-large .v-avatar--end{margin-inline-start:8.5px;margin-inline-end:-11.9px}.v-chip--pill.v-chip.v-chip--size-x-large .v-avatar--end{margin-inline-end:-17px}.v-chip--pill.v-chip.v-chip--size-x-large .v-avatar--end+.v-chip__close{margin-inline-start:25.5px}.v-chip.v-chip--size-x-large .v-icon--start,.v-chip.v-chip--size-x-large .v-chip__filter{margin-inline-start:-8.5px;margin-inline-end:8.5px}.v-chip.v-chip--size-x-large .v-icon--end,.v-chip.v-chip--size-x-large .v-chip__close{margin-inline-start:8.5px;margin-inline-end:-8.5px}.v-chip.v-chip--size-x-large .v-icon--end+.v-chip__close,.v-chip.v-chip--size-x-large .v-avatar--end+.v-chip__close,.v-chip.v-chip--size-x-large .v-chip__append+.v-chip__close{margin-inline-start:17px}.v-chip.v-chip--density-default{height:calc(var(--v-chip-height) + 0px)}.v-chip.v-chip--density-comfortable{height:calc(var(--v-chip-height) + -4px)}.v-chip.v-chip--density-compact{height:calc(var(--v-chip-height) + -8px)}.v-chip{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-chip:hover>.v-chip__overlay{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-chip:focus-visible>.v-chip__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-chip:focus>.v-chip__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}}.v-chip--active>.v-chip__overlay,.v-chip[aria-haspopup=menu][aria-expanded=true]>.v-chip__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-chip--active:hover>.v-chip__overlay,.v-chip[aria-haspopup=menu][aria-expanded=true]:hover>.v-chip__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}.v-chip--active:focus-visible>.v-chip__overlay,.v-chip[aria-haspopup=menu][aria-expanded=true]:focus-visible>.v-chip__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-chip--active:focus>.v-chip__overlay,.v-chip[aria-haspopup=menu][aria-expanded=true]:focus>.v-chip__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}}.v-chip{border-radius:9999px}.v-chip--variant-plain,.v-chip--variant-outlined,.v-chip--variant-text,.v-chip--variant-tonal{background:transparent;color:inherit}.v-chip--variant-plain{opacity:.62}.v-chip--variant-plain:focus,.v-chip--variant-plain:hover{opacity:1}.v-chip--variant-plain .v-chip__overlay{display:none}.v-chip--variant-elevated,.v-chip--variant-flat{background:rgb(var(--v-theme-surface-variant));color:rgb(var(--v-theme-on-surface-variant))}.v-chip--variant-elevated{box-shadow:0 1px 2px rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 1px 3px 1px rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 2%, transparent)}.v-chip--variant-flat{box-shadow:0 0 rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 0 rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 0%, transparent)}.v-chip--variant-outlined{border:thin solid currentColor}.v-chip--variant-text .v-chip__overlay{background:currentColor}.v-chip--variant-tonal .v-chip__underlay{background:currentColor;opacity:var(--v-activated-opacity);border-radius:inherit;top:0;right:0;bottom:0;left:0;pointer-events:none}.v-chip .v-chip__underlay{position:absolute}.v-chip--border{border-width:thin}.v-chip--link{cursor:pointer}.v-chip--link,.v-chip--filter{-webkit-user-select:none;user-select:none}.v-chip__content{align-items:center;display:inline-flex}.v-autocomplete__selection .v-chip__content,.v-combobox__selection .v-chip__content,.v-select__selection .v-chip__content{overflow:hidden}.v-chip__filter,.v-chip__prepend,.v-chip__append,.v-chip__close{align-items:center;display:inline-flex}.v-chip__close{padding:0;margin:0;font:inherit;overflow:visible;text-transform:none;background-color:transparent;border-style:none;color:inherit;cursor:pointer;flex:0 1 auto;font-size:18px;max-height:18px;max-width:18px;-webkit-user-select:none;user-select:none}.v-chip__close .v-icon{font-size:inherit}.v-chip__filter{transition:.15s cubic-bezier(.4,0,.2,1)}.v-chip__overlay{background-color:currentColor;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .2s ease-in-out}.v-chip__overlay{position:absolute;top:0;left:0;width:100%;height:100%}.v-chip--disabled{opacity:.3;pointer-events:none;-webkit-user-select:none;user-select:none}.v-chip--label{border-radius:4px}@media(forced-colors:active){.v-chip:not(.v-chip--variant-text,.v-chip--variant-plain){border:thin solid}}}@layer vuetify-components{.v-chip-group{display:flex;max-width:100%;min-width:0;overflow-x:auto;padding:4px 0}.v-chip-group .v-chip{margin:4px 8px 4px 0}}@layer vuetify-final.trumps{@media(forced-colors:active){.v-chip-group .v-chip{background-color:buttonface;color:buttontext}.v-chip-group .v-chip:hover{color:highlight}}}@layer vuetify-components{.v-chip-group .v-chip.v-chip--selected:not(.v-chip--disabled) .v-chip__overlay{opacity:var(--v-activated-opacity)}}@layer vuetify-final.trumps{@media(forced-colors:active){.v-chip-group .v-chip.v-chip--selected:not(.v-chip--disabled){color:highlight;forced-color-adjust:preserve-parent-color}.v-chip-group .v-chip.v-chip--selected:not(.v-chip--disabled):focus-visible{outline-offset:2px}.v-chip-group .v-chip.v-chip--selected:not(.v-chip--disabled).v-chip--variant-elevated,.v-chip-group .v-chip.v-chip--selected:not(.v-chip--disabled).v-chip--variant-flat{background-color:highlight;color:highlighttext}.v-chip-group .v-chip.v-chip--selected:not(.v-chip--disabled).v-chip--variant-outlined,.v-chip-group .v-chip.v-chip--selected:not(.v-chip--disabled).v-chip--variant-tonal{border-width:medium}}}@layer vuetify-components{.v-chip-group--column .v-slide-group__content{white-space:normal;flex-wrap:wrap;max-width:100%}}@layer vuetify-components{.v-slide-group{display:flex;overflow:hidden}.v-slide-group__next,.v-slide-group__prev{align-items:center;display:flex;flex:0 1 52px;justify-content:center;min-width:52px;cursor:pointer}.v-slide-group__next--disabled,.v-slide-group__prev--disabled{pointer-events:none;opacity:var(--v-disabled-opacity)}.v-slide-group__content{display:flex;flex:1 0 auto;position:relative;transition:.2s all cubic-bezier(.4,0,.2,1);white-space:nowrap}.v-slide-group__content>*{white-space:initial}.v-slide-group__container{contain:content;display:flex;flex:1 1 auto;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scrollbar-color:rgba(0,0,0,0)}.v-slide-group__container::-webkit-scrollbar{display:none}.v-slide-group--vertical{max-height:inherit}.v-slide-group--vertical,.v-slide-group--vertical .v-slide-group__container,.v-slide-group--vertical .v-slide-group__content{flex-direction:column}.v-slide-group--vertical .v-slide-group__container{overflow-x:hidden;overflow-y:auto}}@layer vuetify-components{.v-sheet{display:block}.v-sheet{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-sheet--border{border-width:thin;box-shadow:none}.v-sheet{box-shadow:0 0 rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 0 rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 0%, transparent)}.v-sheet--absolute{position:absolute}.v-sheet--fixed{position:fixed}.v-sheet--relative{position:relative}.v-sheet--sticky{position:sticky}.v-sheet{border-radius:0}.v-sheet{background:rgb(var(--v-theme-surface));color:color-mix(in srgb,rgb(var(--v-theme-on-surface)) calc(var(--v-high-emphasis-opacity) * 100%),transparent)}.v-sheet--rounded{border-radius:4px}}@layer vuetify-components{.v-text-field input{color:inherit;flex:1;transition:.15s opacity cubic-bezier(.4,0,.2,1);min-width:0}.v-text-field input:focus,.v-text-field input:active{outline:none}.v-text-field input:invalid{box-shadow:none}.v-text-field .v-field{cursor:text}.v-text-field--prefixed.v-text-field .v-field:not(.v-field--reverse) .v-field__input{--v-field-padding-start: 6px}.v-text-field--suffixed.v-text-field .v-field:not(.v-field--reverse) .v-field__input{--v-field-padding-end: 0}.v-text-field--prefixed.v-text-field .v-field.v-field--reverse .v-field__input{--v-field-padding-end: 6px}.v-text-field--suffixed.v-text-field .v-field.v-field--reverse .v-field__input{--v-field-padding-start: 0}.v-text-field .v-field:not(.v-field--no-label,.v-field--active) input::placeholder{opacity:0}.v-text-field .v-field--single-line input{transition:none}.v-text-field__prefix,.v-text-field__suffix{align-items:center;color:color-mix(in srgb,rgb(var(--v-theme-on-surface)) calc(var(--v-medium-emphasis-opacity) * 100%),transparent);cursor:default;display:flex;opacity:0;transition:inherit;white-space:nowrap;min-height:max(var(--v-input-control-height, 56px),1.5rem + var(--v-field-input-padding-top) + var(--v-field-input-padding-bottom));padding-top:calc(var(--v-field-padding-top, 4px) + var(--v-input-padding-top, 0));padding-bottom:var(--v-field-padding-bottom, 6px)}.v-field--active .v-text-field__prefix,.v-field--active .v-text-field__suffix{opacity:1}.v-field--disabled .v-text-field__prefix,.v-field--disabled .v-text-field__suffix{color:color-mix(in srgb,rgb(var(--v-theme-on-surface)) calc(var(--v-disabled-opacity) * 100%),transparent)}.v-field:not(.v-field--reverse) .v-text-field__prefix{padding-inline-start:var(--v-field-padding-start)}.v-field.v-field--reverse .v-text-field__prefix{padding-inline-end:var(--v-field-padding-end)}.v-field:not(.v-field--reverse) .v-text-field__suffix{padding-inline-end:var(--v-field-padding-end)}.v-field.v-field--reverse .v-text-field__suffix{padding-inline-start:var(--v-field-padding-start)}}@layer vuetify-components{.v-counter{opacity:var(--v-medium-emphasis-opacity);flex:0 1 auto;font-size:12px;transition-duration:.15s;white-space:nowrap}}@layer vuetify-components{.v-field{display:grid;grid-template-areas:"prepend-inner field clear append-inner";grid-template-columns:min-content minmax(0,1fr) min-content min-content;font-size:16px;letter-spacing:.009375em;max-width:100%;border-radius:4px;flex:1 0;grid-area:control;position:relative;--v-theme-overlay-multiplier: 1;--v-field-padding-start: 16px;--v-field-padding-end: 16px;--v-field-padding-top: 8px;--v-field-padding-bottom: 4px;--v-field-input-padding-top: calc(var(--v-field-padding-top, 8px) + var(--v-input-padding-top, 0px));--v-field-input-padding-bottom: var(--v-field-padding-bottom, 4px)}.v-field--disabled{opacity:var(--v-disabled-opacity);pointer-events:none}.v-field .v-chip{--v-chip-height: 24px}.v-field--prepended{padding-inline-start:12px}.v-field--appended{padding-inline-end:12px}.v-field--variant-solo,.v-field--variant-solo-filled{background:rgb(var(--v-theme-surface));border-color:transparent;color:color-mix(in srgb,rgb(var(--v-theme-on-surface)) calc(var(--v-high-emphasis-opacity) * 100%),transparent)}.v-field--variant-solo,.v-field--variant-solo-filled{box-shadow:0 1px 2px rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 1px 3px 1px rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 2%, transparent)}.v-field--variant-solo-inverted{background:rgb(var(--v-theme-surface));border-color:transparent;color:color-mix(in srgb,rgb(var(--v-theme-on-surface)) calc(var(--v-high-emphasis-opacity) * 100%),transparent)}.v-field--variant-solo-inverted{box-shadow:0 1px 2px rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 1px 3px 1px rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 2%, transparent)}.v-field--variant-solo-inverted.v-field--focused{color:rgb(var(--v-theme-on-surface-variant))}.v-field--variant-filled{border-bottom-left-radius:0;border-bottom-right-radius:0}.v-input--density-default .v-field--variant-solo,.v-input--density-default .v-field--variant-solo-inverted,.v-input--density-default .v-field--variant-solo-filled,.v-input--density-default .v-field--variant-filled{--v-input-control-height: 56px;--v-field-padding-bottom: 4px}.v-input--density-comfortable .v-field--variant-solo,.v-input--density-comfortable .v-field--variant-solo-inverted,.v-input--density-comfortable .v-field--variant-solo-filled,.v-input--density-comfortable .v-field--variant-filled{--v-input-control-height: 48px;--v-field-padding-bottom: 0px}.v-input--density-compact .v-field--variant-solo,.v-input--density-compact .v-field--variant-solo-inverted,.v-input--density-compact .v-field--variant-solo-filled,.v-input--density-compact .v-field--variant-filled{--v-input-control-height: 40px;--v-field-padding-bottom: 0px}.v-field--variant-outlined,.v-field--single-line,.v-field--no-label{--v-field-padding-top: 0px}.v-input--density-default .v-field--variant-outlined,.v-input--density-default .v-field--single-line,.v-input--density-default .v-field--no-label{--v-field-padding-bottom: 16px}.v-input--density-comfortable .v-field--variant-outlined,.v-input--density-comfortable .v-field--single-line,.v-input--density-comfortable .v-field--no-label{--v-field-padding-bottom: 12px}.v-input--density-compact .v-field--variant-outlined,.v-input--density-compact .v-field--single-line,.v-input--density-compact .v-field--no-label{--v-field-padding-bottom: 8px}.v-field--variant-plain,.v-field--variant-underlined{border-radius:0;padding:0}.v-field--variant-plain.v-field,.v-field--variant-underlined.v-field{--v-field-padding-start: 0px;--v-field-padding-end: 0px}.v-input--density-default .v-field--variant-plain,.v-input--density-default .v-field--variant-underlined{--v-input-control-height: 48px;--v-field-padding-top: 4px;--v-field-padding-bottom: 4px}.v-input--density-comfortable .v-field--variant-plain,.v-input--density-comfortable .v-field--variant-underlined{--v-input-control-height: 40px;--v-field-padding-top: 2px;--v-field-padding-bottom: 0px}.v-input--density-compact .v-field--variant-plain,.v-input--density-compact .v-field--variant-underlined{--v-input-control-height: 32px;--v-field-padding-top: 0px;--v-field-padding-bottom: 0px}.v-field--flat{box-shadow:none}.v-field--rounded{border-radius:24px}.v-field.v-field--prepended{--v-field-padding-start: 6px}.v-field.v-field--appended{--v-field-padding-end: 6px}.v-field__input{align-items:center;color:inherit;column-gap:2px;display:flex;flex-wrap:wrap;letter-spacing:.009375em;opacity:var(--v-high-emphasis-opacity);min-height:max(var(--v-input-control-height, 56px),1.5rem + var(--v-field-input-padding-top) + var(--v-field-input-padding-bottom));min-width:0;padding-inline:var(--v-field-padding-start) var(--v-field-padding-end);padding-top:var(--v-field-input-padding-top);padding-bottom:var(--v-field-input-padding-bottom);position:relative;width:100%}.v-input--density-default .v-field__input{row-gap:8px}.v-input--density-comfortable .v-field__input{row-gap:6px}.v-input--density-compact .v-field__input{row-gap:4px}.v-field__input input{letter-spacing:inherit}:where(.v-field__input input,input.v-field__input,textarea.v-field__input,select.v-field__input){background-color:transparent;border-style:none;padding:0;margin:0}:where(.v-field__input input,input.v-field__input,textarea.v-field__input,select.v-field__input)::placeholder{color:currentColor;opacity:var(--v-disabled-opacity)}.v-field__input:focus,.v-field__input:active{outline:none}.v-field__input:invalid{box-shadow:none}.v-field__field{flex:1 0;grid-area:field;position:relative;align-items:flex-start;display:flex}.v-field__prepend-inner{grid-area:prepend-inner;padding-inline-end:var(--v-field-padding-after)}.v-field__clearable{grid-area:clear}.v-field__append-inner{grid-area:append-inner;padding-inline-start:var(--v-field-padding-after)}.v-field__append-inner,.v-field__clearable,.v-field__prepend-inner{display:flex;align-items:flex-start;padding-top:var(--v-input-padding-top, 8px)}.v-field--center-affix .v-field__append-inner,.v-field--center-affix .v-field__clearable,.v-field--center-affix .v-field__prepend-inner{align-items:center;padding-top:0}.v-field.v-field--variant-underlined .v-field__append-inner,.v-field.v-field--variant-underlined .v-field__clearable,.v-field.v-field--variant-underlined .v-field__prepend-inner,.v-field.v-field--variant-plain .v-field__append-inner,.v-field.v-field--variant-plain .v-field__clearable,.v-field.v-field--variant-plain .v-field__prepend-inner{align-items:flex-start;padding-top:calc(var(--v-field-padding-top, 8px) + var(--v-input-padding-top, 0px));padding-bottom:var(--v-field-padding-bottom, 4px)}.v-field--focused .v-field__prepend-inner,.v-field--focused .v-field__append-inner{opacity:1}.v-field__prepend-inner>.v-icon,.v-field__append-inner>.v-icon,.v-field__clearable>.v-icon{opacity:var(--v-medium-emphasis-opacity)}.v-field--disabled .v-field__prepend-inner>.v-icon,.v-field--error .v-field__prepend-inner>.v-icon,.v-field--glow.v-field--focused .v-field__prepend-inner>.v-icon,.v-field--disabled .v-field__append-inner>.v-icon,.v-field--error .v-field__append-inner>.v-icon,.v-field--glow.v-field--focused .v-field__append-inner>.v-icon,.v-field--disabled .v-field__clearable>.v-icon,.v-field--error .v-field__clearable>.v-icon,.v-field--glow.v-field--focused .v-field__clearable>.v-icon{opacity:1}.v-field--error:not(.v-field--disabled) .v-field__prepend-inner>.v-icon,.v-field--error:not(.v-field--disabled) .v-field__append-inner>.v-icon,.v-field--error:not(.v-field--disabled) .v-field__clearable>.v-icon{color:rgb(var(--v-theme-error))}.v-field__clearable{cursor:pointer;opacity:0;overflow:hidden;margin-inline:4px;transition:.15s cubic-bezier(.4,0,.2,1);transition-property:opacity,transform,width}@media(prefers-reduced-motion:reduce){.v-field__clearable{transition-property:opacity}}.v-field--focused .v-field__clearable,.v-field--persistent-clear .v-field__clearable{opacity:1}@media(hover:hover){.v-field:hover .v-field__clearable{opacity:1}}@media(hover:none){.v-field__clearable{opacity:1}}.v-label.v-field-label{contain:layout paint;display:block;margin-inline-start:var(--v-field-padding-start);margin-inline-end:var(--v-field-padding-end);max-width:calc(100% - var(--v-field-padding-start) - var(--v-field-padding-end));pointer-events:none;position:absolute;top:var(--v-input-padding-top);transform-origin:left center;z-index:1}@media(prefers-reduced-motion:no-preference){.v-label.v-field-label{transition:.15s cubic-bezier(.4,0,.2,1);transition-property:opacity,transform}}.v-field--variant-underlined .v-label.v-field-label,.v-field--variant-plain .v-label.v-field-label{top:calc(var(--v-input-padding-top) + var(--v-field-padding-top))}.v-field--center-affix .v-label.v-field-label{top:50%;transform:translateY(-50%)}.v-field--active .v-label.v-field-label{visibility:hidden}.v-field--focused .v-label.v-field-label,.v-field--error .v-label.v-field-label{opacity:1}.v-field--error:not(.v-field--disabled) .v-label.v-field-label{color:rgb(var(--v-theme-error))}.v-label.v-field-label--floating{--v-field-label-scale: .75em;font-size:var(--v-field-label-scale);visibility:hidden}.v-field--variant-outlined .v-label.v-field-label--floating{max-width:100%}.v-field--center-affix .v-label.v-field-label--floating{transform:none}.v-field.v-field--active .v-label.v-field-label--floating{visibility:unset}.v-input--density-default .v-field--variant-solo .v-label.v-field-label--floating,.v-input--density-default .v-field--variant-solo-inverted .v-label.v-field-label--floating,.v-input--density-default .v-field--variant-filled .v-label.v-field-label--floating,.v-input--density-default .v-field--variant-solo-filled .v-label.v-field-label--floating{top:7px}.v-input--density-comfortable .v-field--variant-solo .v-label.v-field-label--floating,.v-input--density-comfortable .v-field--variant-solo-inverted .v-label.v-field-label--floating,.v-input--density-comfortable .v-field--variant-filled .v-label.v-field-label--floating,.v-input--density-comfortable .v-field--variant-solo-filled .v-label.v-field-label--floating{top:5px}.v-input--density-compact .v-field--variant-solo .v-label.v-field-label--floating,.v-input--density-compact .v-field--variant-solo-inverted .v-label.v-field-label--floating,.v-input--density-compact .v-field--variant-filled .v-label.v-field-label--floating,.v-input--density-compact .v-field--variant-solo-filled .v-label.v-field-label--floating{top:3px}.v-field--variant-plain .v-label.v-field-label--floating,.v-field--variant-underlined .v-label.v-field-label--floating{transform:translateY(-16px);margin:0;top:var(--v-input-padding-top)}.v-field--variant-outlined .v-label.v-field-label--floating{transform:translateY(-50%);transform-origin:center;position:static;margin:0 4px}.v-field__outline{--v-field-border-width: 1px;--v-field-border-opacity: .38;align-items:stretch;contain:layout;display:flex;height:100%;left:0;pointer-events:none;position:absolute;right:0;width:100%}@media(hover:hover){.v-field:hover .v-field__outline{--v-field-border-opacity: var(--v-high-emphasis-opacity)}}.v-field--error:not(.v-field--disabled) .v-field__outline{color:rgb(var(--v-theme-error))}.v-field.v-field--focused .v-field__outline,.v-input.v-input--error .v-field__outline{--v-field-border-opacity: 1}.v-field--variant-outlined.v-field--focused .v-field__outline{--v-field-border-width: 2px}.v-field--variant-filled .v-field__outline:before,.v-field--variant-underlined .v-field__outline:before{border-color:currentColor;border-style:solid;border-width:0 0 var(--v-field-border-width);opacity:var(--v-field-border-opacity);transition:opacity .25s cubic-bezier(.4,0,.2,1)}.v-field--variant-filled .v-field__outline:before,.v-field--variant-underlined .v-field__outline:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-field--variant-filled .v-field__outline:after,.v-field--variant-underlined .v-field__outline:after{border-color:currentColor;border-style:solid;border-width:0 0 2px;transform:scaleX(0);transition:transform .15s cubic-bezier(.4,0,.2,1)}.v-field--variant-filled .v-field__outline:after,.v-field--variant-underlined .v-field__outline:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-field--focused.v-field--variant-filled .v-field__outline:after,.v-field--focused.v-field--variant-underlined .v-field__outline:after{transform:scaleX(1)}.v-field--variant-outlined .v-field__outline{border-radius:inherit}.v-field--variant-outlined .v-field__outline__start,.v-field--variant-outlined .v-field__outline__notch:before,.v-field--variant-outlined .v-field__outline__notch:after,.v-field--variant-outlined .v-field__outline__end{border:0 solid currentColor;opacity:var(--v-field-border-opacity)}@media(prefers-reduced-motion:no-preference){.v-field--variant-outlined .v-field__outline__start,.v-field--variant-outlined .v-field__outline__notch:before,.v-field--variant-outlined .v-field__outline__notch:after,.v-field--variant-outlined .v-field__outline__end{transition:opacity .25s cubic-bezier(.4,0,.2,1)}}.v-field--variant-outlined .v-field__outline__start{flex:0 0 12px;border-top-width:var(--v-field-border-width);border-bottom-width:var(--v-field-border-width);border-inline-start-width:var(--v-field-border-width);border-start-start-radius:inherit;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:inherit}.v-field--rounded.v-field--variant-outlined .v-field__outline__start,[class^=rounded-].v-field--variant-outlined .v-field__outline__start,[class*=" rounded-"].v-field--variant-outlined .v-field__outline__start{flex-basis:calc(var(--v-input-control-height) / 2 + 2px)}.v-field--reverse.v-field--variant-outlined .v-field__outline__start{border-start-start-radius:0;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:0;border-inline-end-width:var(--v-field-border-width);border-inline-start-width:0}.v-field--variant-outlined .v-field__outline__notch{flex:none;position:relative;max-width:calc(100% - 24px)}.v-field--rounded.v-field--variant-outlined .v-field__outline__notch,[class^=rounded-].v-field--variant-outlined .v-field__outline__notch,[class*=" rounded-"].v-field--variant-outlined .v-field__outline__notch{max-width:calc(100% - var(--v-input-control-height))}.v-field--variant-outlined .v-field__outline__notch:before,.v-field--variant-outlined .v-field__outline__notch:after{opacity:var(--v-field-border-opacity)}.v-field--variant-outlined .v-field__outline__notch:before,.v-field--variant-outlined .v-field__outline__notch:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-field--variant-outlined .v-field__outline__notch:before{border-width:var(--v-field-border-width) 0 0}.v-field--variant-outlined .v-field__outline__notch:after{bottom:0;border-width:0 0 var(--v-field-border-width)}.v-field--active.v-field--variant-outlined .v-field__outline__notch:before{opacity:0}.v-field--variant-outlined .v-field__outline__end{flex:1;border-top-width:var(--v-field-border-width);border-bottom-width:var(--v-field-border-width);border-inline-end-width:var(--v-field-border-width);border-start-start-radius:0;border-start-end-radius:inherit;border-end-end-radius:inherit;border-end-start-radius:0}.v-field--reverse.v-field--variant-outlined .v-field__outline__end{border-start-start-radius:inherit;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:inherit;border-inline-end-width:0;border-inline-start-width:var(--v-field-border-width)}.v-field__loader{top:calc(100% - 2px);left:0;position:absolute;right:0;width:100%;border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:hidden}.v-field--variant-outlined .v-field__loader{top:calc(100% - 3px);width:calc(100% - 2px);left:1px}.v-field__overlay{border-radius:inherit;pointer-events:none}.v-field__overlay{position:absolute;top:0;left:0;width:100%;height:100%}.v-field--variant-filled .v-field__overlay{background-color:currentColor;opacity:.04;transition:opacity .25s cubic-bezier(.4,0,.2,1)}.v-field--variant-filled.v-field--has-background .v-field__overlay{opacity:0}@media(hover:hover){.v-field--variant-filled:hover .v-field__overlay{opacity:calc((.04 + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}}.v-field--variant-filled.v-field--focused .v-field__overlay{opacity:calc((.04 + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}.v-field--variant-solo-filled .v-field__overlay{background-color:currentColor;opacity:.04;transition:opacity .25s cubic-bezier(.4,0,.2,1)}@media(hover:hover){.v-field--variant-solo-filled:hover .v-field__overlay{opacity:calc((.04 + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}}.v-field--variant-solo-filled.v-field--focused .v-field__overlay{opacity:calc((.04 + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}.v-field--variant-solo-inverted .v-field__overlay{transition:opacity .25s cubic-bezier(.4,0,.2,1)}.v-field--variant-solo-inverted.v-field--has-background .v-field__overlay{opacity:0}@media(hover:hover){.v-field--variant-solo-inverted:hover .v-field__overlay{opacity:calc((.04 + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}}.v-field--variant-solo-inverted.v-field--focused .v-field__overlay{background-color:rgb(var(--v-theme-surface-variant));opacity:1}.v-field--reverse .v-field__field,.v-field--reverse .v-field__input,.v-field--reverse .v-field__outline{flex-direction:row-reverse}.v-field--reverse .v-field__input,.v-field--reverse input{text-align:end}.v-input--disabled .v-field--variant-filled .v-field__outline:before,.v-input--disabled .v-field--variant-underlined .v-field__outline:before{border-image:repeating-linear-gradient(to right,color-mix(in srgb,rgb(var(--v-theme-on-surface)) calc(var(--v-disabled-opacity) * 100%),transparent) 0px,color-mix(in srgb,rgb(var(--v-theme-on-surface)) calc(var(--v-disabled-opacity) * 100%),transparent) 2px,transparent 2px,transparent 4px) 1 repeat}.v-field--loading .v-field__outline:after,.v-field--loading .v-field__outline:before{opacity:0}@media(forced-colors:active){.v-field .v-progress-linear{border:none}}}@layer vuetify-components{.v-label{align-items:center;color:inherit;display:inline-flex;font-size:1rem;letter-spacing:.009375em;min-width:0;opacity:var(--v-medium-emphasis-opacity);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-label--clickable{cursor:pointer}}@layer vuetify-components{.v-input{display:grid;flex:1 1 auto;font-size:1rem;font-weight:400;line-height:1.5}.v-input--disabled{pointer-events:none}.v-input--indent-details .v-input__details{padding-inline:16px}.v-input--density-default{--v-input-control-height: 56px;--v-input-padding-top: 16px}.v-input--density-comfortable{--v-input-control-height: 48px;--v-input-padding-top: 12px}.v-input--density-compact{--v-input-control-height: 40px;--v-input-padding-top: 8px}.v-input--vertical{grid-template-areas:"append" "control" "prepend";grid-template-rows:max-content auto max-content;grid-template-columns:min-content}.v-input--vertical .v-input__prepend{margin-block-start:16px}.v-input--vertical .v-input__append{margin-block-end:16px}.v-input--horizontal{grid-template-areas:"prepend control append" "a messages b";grid-template-columns:max-content minmax(0,1fr) max-content;grid-template-rows:1fr auto}.v-input--horizontal .v-input__prepend{margin-inline-end:16px}.v-input--horizontal .v-input__append{margin-inline-start:16px}.v-input__details{align-items:flex-end;display:flex;font-size:.75rem;font-weight:400;grid-area:messages;letter-spacing:.0333333333em;line-height:normal;min-height:22px;padding-top:6px;overflow:hidden;justify-content:space-between}.v-input__details>.v-icon,.v-input__prepend>.v-icon,.v-input__append>.v-icon{opacity:var(--v-medium-emphasis-opacity)}.v-input--disabled .v-input__details>.v-icon,.v-input--disabled .v-input__details .v-messages,.v-input--error .v-input__details>.v-icon,.v-input--error .v-input__details .v-messages,.v-input--disabled .v-input__prepend>.v-icon,.v-input--disabled .v-input__prepend .v-messages,.v-input--error .v-input__prepend>.v-icon,.v-input--error .v-input__prepend .v-messages,.v-input--disabled .v-input__append>.v-icon,.v-input--disabled .v-input__append .v-messages,.v-input--error .v-input__append>.v-icon,.v-input--error .v-input__append .v-messages{opacity:1}.v-input--glow.v-input--focused .v-input__details>.v-icon,.v-input--glow.v-input--focused .v-input__prepend>.v-icon,.v-input--glow.v-input--focused .v-input__append>.v-icon{opacity:1}.v-input--disabled .v-input__details,.v-input--disabled .v-input__prepend,.v-input--disabled .v-input__append{opacity:var(--v-disabled-opacity)}.v-input--error:not(.v-input--disabled) .v-input__details>.v-icon,.v-input--error:not(.v-input--disabled) .v-input__details .v-messages,.v-input--error:not(.v-input--disabled) .v-input__prepend>.v-icon,.v-input--error:not(.v-input--disabled) .v-input__prepend .v-messages,.v-input--error:not(.v-input--disabled) .v-input__append>.v-icon,.v-input--error:not(.v-input--disabled) .v-input__append .v-messages{color:rgb(var(--v-theme-error))}.v-input__prepend,.v-input__append{display:flex;align-items:flex-start;padding-top:var(--v-input-padding-top)}.v-input--center-affix .v-input__prepend,.v-input--center-affix .v-input__append{align-items:center;padding-top:0}.v-input__prepend{grid-area:prepend}.v-input__append{grid-area:append}.v-input__control{display:flex;grid-area:control}.v-input--hide-spin-buttons input::-webkit-outer-spin-button,.v-input--hide-spin-buttons input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.v-input--hide-spin-buttons input[type=number]{-moz-appearance:textfield}.v-input--plain-underlined .v-input__prepend,.v-input--plain-underlined .v-input__append{align-items:flex-start}.v-input--density-default.v-input--plain-underlined .v-input__prepend,.v-input--density-default.v-input--plain-underlined .v-input__append{padding-top:calc(var(--v-input-padding-top) + 4px)}.v-input--density-comfortable.v-input--plain-underlined .v-input__prepend,.v-input--density-comfortable.v-input--plain-underlined .v-input__append{padding-top:calc(var(--v-input-padding-top) + 2px)}.v-input--density-compact.v-input--plain-underlined .v-input__prepend,.v-input--density-compact.v-input--plain-underlined .v-input__append{padding-top:calc(var(--v-input-padding-top) + 0px)}}@layer vuetify-components{.v-messages{flex:1 1 auto;font-size:12px;min-height:14px;min-width:1px;opacity:var(--v-medium-emphasis-opacity);position:relative}.v-messages__message{line-height:12px;word-break:break-word;overflow-wrap:break-word;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;transition-duration:.15s}}.project-config-setup[data-v-1c4cc960]{display:grid;gap:1rem;padding:1rem}.project-config-setup__heading[data-v-1c4cc960]{display:grid;gap:.25rem}.project-config-setup__eyebrow[data-v-1c4cc960]{color:rgba(var(--v-theme-on-surface),.62);font-size:.72rem;font-weight:750;letter-spacing:0;line-height:1.1;margin:0;text-transform:uppercase}.project-config-setup__title[data-v-1c4cc960]{font-size:1.18rem;font-weight:760;letter-spacing:0;line-height:1.16;margin:0}.project-config-setup__message[data-v-1c4cc960]{color:rgba(var(--v-theme-on-surface),.68);font-size:.9rem;line-height:1.35;margin:0}.project-config-setup__sections[data-v-1c4cc960]{display:grid;gap:.9rem}.project-config-setup__section[data-v-1c4cc960]{display:grid;gap:.55rem}.project-config-setup__section-title[data-v-1c4cc960]{font-size:.92rem;font-weight:720;letter-spacing:0;line-height:1.2;margin:0}.project-config-setup__fields[data-v-1c4cc960]{display:grid;gap:0}.project-config-setup__field[data-v-1c4cc960]{border-top:1px solid rgba(var(--v-theme-outline),.18);display:grid;gap:.85rem;grid-template-columns:minmax(0,1fr) minmax(min(20rem,100%),.9fr);padding-block:.9rem}.project-config-setup__field[data-v-1c4cc960]:first-child{border-top:0;padding-top:0}.project-config-setup__field-copy[data-v-1c4cc960]{align-content:start;display:grid;gap:.35rem}.project-config-setup__field-copy h4[data-v-1c4cc960]{font-size:.98rem;font-weight:720;letter-spacing:0;line-height:1.25;margin:0}.project-config-setup__field-copy p[data-v-1c4cc960],.project-config-setup__selected-option[data-v-1c4cc960]{color:rgba(var(--v-theme-on-surface),.68);font-size:.86rem;line-height:1.4;margin:0}.project-config-setup__field-id[data-v-1c4cc960]{color:rgba(var(--v-theme-on-surface),.5);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.72rem;line-height:1.2;overflow-wrap:anywhere}.project-config-setup__field-control[data-v-1c4cc960]{display:grid;gap:.35rem;min-width:0}.project-config-setup__actions[data-v-1c4cc960]{display:flex;justify-content:flex-end}@media(max-width:720px){.project-config-setup__field[data-v-1c4cc960]{grid-template-columns:1fr}}@layer vuetify-components{.v-select--chips.v-input--density-compact .v-field--variant-solo .v-label.v-field-label--floating,.v-select--chips.v-input--density-compact .v-field--variant-solo-inverted .v-label.v-field-label--floating,.v-select--chips.v-input--density-compact .v-field--variant-filled .v-label.v-field-label--floating,.v-select--chips.v-input--density-compact .v-field--variant-solo-filled .v-label.v-field-label--floating{top:0}.v-select .v-field .v-text-field__prefix,.v-select .v-field .v-text-field__suffix,.v-select .v-field .v-field__input,.v-select .v-field.v-field{cursor:pointer}.v-select .v-field .v-field__input>input{align-self:flex-start;opacity:1;flex:0 0;position:absolute;left:0;right:0;width:100%;transition:none;pointer-events:none;caret-color:transparent;padding-inline:inherit}.v-select .v-field--dirty .v-select__selection{margin-inline-end:2px}.v-select .v-select__selection-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-select__content{overflow:hidden}.v-select__content{box-shadow:0 1px 2px rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 2px 6px 2px rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 4%, transparent)}.v-menu>.v-overlay__content.v-select__content{border-radius:4px}.v-select__content>.v-sheet{display:flex;flex-direction:column}.v-select__mask{background:rgb(var(--v-theme-surface-light))}.v-select__selection{display:inline-flex;align-items:center;letter-spacing:inherit;line-height:inherit;max-width:100%}.v-select .v-select__selection:first-child{margin-inline-start:0}.v-select--selected .v-field .v-field__input>input{opacity:0}.v-select__menu-icon{margin-inline-start:4px;transition:.2s cubic-bezier(.4,0,.2,1)}.v-select--active-menu .v-select__menu-icon{transform:rotate(180deg)}}@layer vuetify-components{.v-selection-control{align-items:center;contain:layout;display:flex;flex:1 0;grid-area:control;position:relative;-webkit-user-select:none;user-select:none}.v-selection-control .v-label{white-space:normal;word-break:break-word;height:100%;opacity:1}.v-selection-control--disabled{opacity:var(--v-disabled-opacity);pointer-events:none}.v-selection-control--error:not(.v-selection-control--disabled) .v-label{color:rgb(var(--v-theme-error))}.v-selection-control--inline{display:inline-flex;flex:0 0 auto;min-width:0;max-width:100%}.v-selection-control--inline .v-label{width:auto}.v-selection-control--density-default{--v-selection-control-size: 40px}.v-selection-control--density-comfortable{--v-selection-control-size: 36px}.v-selection-control--density-compact{--v-selection-control-size: 28px}.v-selection-control__wrapper{width:var(--v-selection-control-size);height:var(--v-selection-control-size);display:inline-flex;align-items:center;position:relative;justify-content:center;flex:none}.v-selection-control__input{width:var(--v-selection-control-size);height:var(--v-selection-control-size);align-items:center;display:flex;flex:none;justify-content:center;position:relative;border-radius:50%}.v-selection-control__input input{cursor:pointer;position:absolute;left:0;top:0;width:100%;height:100%;opacity:0}.v-selection-control__input:before{border-radius:100%;background-color:currentColor;opacity:0;pointer-events:none}.v-selection-control__input:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-selection-control__input:hover:before{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-selection-control__input>.v-icon{opacity:var(--v-medium-emphasis-opacity)}.v-selection-control--disabled .v-selection-control__input>.v-icon,.v-selection-control--dirty .v-selection-control__input>.v-icon,.v-selection-control--error .v-selection-control__input>.v-icon{opacity:1}.v-selection-control--error:not(.v-selection-control--disabled) .v-selection-control__input>.v-icon{color:rgb(var(--v-theme-error))}.v-selection-control--focus-visible .v-selection-control__input:before{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}}@layer vuetify-components{.v-selection-control-group{grid-area:control;display:flex;flex-direction:column}.v-selection-control-group--inline{flex-direction:row;flex-wrap:wrap}}@layer vuetify-components{.v-virtual-scroll{display:block;flex:1 1 auto;max-width:100%;overflow:auto;position:relative}.v-virtual-scroll__container{display:block}}@layer vuetify-components{.v-switch .v-label{padding-inline-start:10px}.v-switch__loader{display:flex}.v-switch__loader .v-progress-circular{color:rgb(var(--v-theme-surface))}.v-switch__track,.v-switch__thumb{transition:none}.v-selection-control--error:not(.v-selection-control--disabled) .v-switch__track,.v-selection-control--error:not(.v-selection-control--disabled) .v-switch__thumb{background-color:rgb(var(--v-theme-error));color:rgb(var(--v-theme-on-error))}.v-switch__track-true{margin-inline-end:auto}.v-selection-control:not(.v-selection-control--dirty) .v-switch__track-true{opacity:0}.v-switch__track-false{margin-inline-start:auto}.v-selection-control--dirty .v-switch__track-false{opacity:0}.v-switch__track{display:inline-flex;align-items:center;font-size:.5rem;padding:0 5px;background-color:rgb(var(--v-theme-surface-variant));border-radius:9999px;height:14px;opacity:.6;min-width:36px;cursor:pointer;transition:.2s background-color cubic-bezier(.4,0,.2,1)}.v-switch--inset .v-switch__track{border-radius:9999px;font-size:.75rem;height:32px;min-width:52px}.v-switch__thumb{align-items:center;background-color:rgb(var(--v-theme-surface-bright));color:rgb(var(--v-theme-on-surface-bright));border-radius:50%;display:flex;font-size:.75rem;height:20px;justify-content:center;width:20px;pointer-events:none;transition:.15s .05s transform cubic-bezier(0,0,.2,1),.2s color cubic-bezier(.4,0,.2,1),.2s background-color cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.v-switch:not(.v-switch--inset) .v-switch__thumb{box-shadow:0 1px 2px rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 2px 6px 2px rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 4%, transparent)}.v-switch.v-switch--flat:not(.v-switch--inset) .v-switch__thumb{background:rgb(var(--v-theme-surface-variant));color:rgb(var(--v-theme-on-surface-variant))}.v-switch.v-switch--flat:not(.v-switch--inset) .v-switch__thumb{box-shadow:0 0 rgba(var(--v-shadow-color),var(--v-shadow-key-opacity, .3)),0 0 rgba(var(--v-shadow-color),var(--v-shadow-ambient-opacity, .15));--v-elevation-overlay: color-mix(in srgb, var(--v-elevation-overlay-color) 0%, transparent)}.v-switch--inset .v-switch__thumb{height:24px;width:24px;transform:scale(.6666666667)}.v-switch--inset .v-switch__thumb--filled{transform:none}.v-switch--inset .v-selection-control--dirty .v-switch__thumb{transform:none;transition:.15s .05s transform cubic-bezier(0,0,.2,1)}.v-switch.v-input{flex:0 1 auto}.v-switch .v-selection-control{min-height:var(--v-input-control-height)}.v-switch .v-selection-control__input{border-radius:50%;transition:.2s transform cubic-bezier(.4,0,.2,1);position:absolute}.v-locale--is-ltr.v-switch .v-selection-control__input,.v-locale--is-ltr .v-switch .v-selection-control__input{transform:translate(-10px)}.v-locale--is-rtl.v-switch .v-selection-control__input,.v-locale--is-rtl .v-switch .v-selection-control__input{transform:translate(10px)}.v-switch .v-selection-control__input .v-icon{position:absolute}.v-locale--is-ltr.v-switch .v-selection-control--dirty .v-selection-control__input,.v-locale--is-ltr .v-switch .v-selection-control--dirty .v-selection-control__input{transform:translate(10px)}.v-locale--is-rtl.v-switch .v-selection-control--dirty .v-selection-control__input,.v-locale--is-rtl .v-switch .v-selection-control--dirty .v-selection-control__input{transform:translate(-10px)}.v-switch.v-switch--indeterminate .v-selection-control__input{transform:scale(.8)}.v-switch.v-switch--indeterminate .v-switch__thumb{transform:scale(.75);box-shadow:none}.v-switch.v-switch--inset .v-selection-control__wrapper{width:auto}.v-switch.v-input--vertical .v-label{min-width:max-content}.v-switch.v-input--vertical .v-selection-control__wrapper{transform:rotate(-90deg)}@media(forced-colors:active){.v-switch .v-switch__loader .v-progress-circular{color:currentColor}.v-switch .v-switch__thumb{background-color:buttontext}.v-switch .v-switch__track,.v-switch .v-switch__thumb{border:1px solid;color:buttontext}.v-switch:not(.v-switch--loading):not(.v-input--disabled) .v-selection-control--dirty .v-switch__thumb{background-color:highlight}.v-switch:not(.v-input--disabled) .v-selection-control--dirty .v-switch__track{background-color:highlight}.v-switch:not(.v-input--disabled) .v-selection-control--dirty .v-switch__track,.v-switch:not(.v-input--disabled) .v-selection-control--dirty .v-switch__thumb{color:highlight}.v-switch.v-switch--inset .v-switch__track{border-width:2px}.v-switch.v-switch--inset:not(.v-switch--loading):not(.v-input--disabled) .v-selection-control--dirty .v-switch__thumb{background-color:highlighttext;color:highlighttext}.v-switch.v-input--disabled .v-switch__thumb{background-color:graytext}.v-switch.v-input--disabled .v-switch__track,.v-switch.v-input--disabled .v-switch__thumb{color:graytext}.v-switch.v-switch--loading .v-switch__thumb{background-color:canvas}.v-switch.v-switch--loading.v-switch--inset .v-switch__thumb,.v-switch.v-switch--loading.v-switch--indeterminate .v-switch__thumb{border-width:0}}}.project-type-setup[data-v-576c154a]{display:grid;gap:1rem;margin-inline:auto;max-width:82rem}.project-type-setup__heading[data-v-576c154a]{display:grid;gap:.25rem;max-width:58rem}.project-type-setup__eyebrow[data-v-576c154a],.project-type-setup__section-kicker[data-v-576c154a],.project-type-setup__option-kicker[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.56);font-size:.72rem;font-weight:750;letter-spacing:.06em;line-height:1.1;margin:0;text-transform:uppercase}.project-type-setup__title[data-v-576c154a]{font-size:clamp(1.55rem,2.4vw,2.2rem);font-weight:760;letter-spacing:0;line-height:1.08;margin:0}.project-type-setup__message[data-v-576c154a],.project-type-setup__technology-description[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.68);font-size:.98rem;line-height:1.45;margin:0}.project-type-setup__application-section[data-v-576c154a]{display:grid;gap:.75rem}.project-type-setup__application-heading[data-v-576c154a]{display:grid;gap:.2rem}.project-type-setup__application-heading h3[data-v-576c154a]{font-size:1.1rem;font-weight:760;letter-spacing:0;line-height:1.12;margin:0}.project-type-setup__application-grid[data-v-576c154a]{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}.project-type-setup__application-card[data-v-576c154a]{align-content:start;background:rgb(var(--v-theme-surface));border:1px solid rgba(var(--v-border-color),var(--v-border-opacity));border-radius:8px;color:rgb(var(--v-theme-on-surface));cursor:pointer;display:grid;font:inherit;gap:.55rem;min-height:13.5rem;padding:1rem;text-align:left}.project-type-setup__application-card[data-v-576c154a]:hover,.project-type-setup__application-card--selected[data-v-576c154a]{border-color:rgba(var(--v-theme-primary),.56)}.project-type-setup__application-card--selected[data-v-576c154a]{background:rgba(var(--v-theme-primary),.06)}.project-type-setup__application-icon[data-v-576c154a]{color:rgb(var(--v-theme-primary));height:4.8rem;width:4.8rem}.project-type-setup__application-label[data-v-576c154a]{font-size:1.1rem;font-weight:760;line-height:1.15}.project-type-setup__application-summary[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.68);font-size:.88rem;line-height:1.35}.project-type-setup__application-count[data-v-576c154a]{justify-self:start}.project-type-setup__technology-section[data-v-576c154a]{background:rgba(var(--v-theme-primary),.035);border-top:3px solid rgba(var(--v-theme-primary),.34);display:grid;gap:.9rem;margin-top:.35rem;padding:1rem 0 0}.project-type-setup__technology-heading[data-v-576c154a]{align-items:start;display:flex;gap:1rem;justify-content:space-between}.project-type-setup__technology-heading h3[data-v-576c154a]{font-size:1.25rem;font-weight:760;letter-spacing:0;line-height:1.12;margin:0}.project-type-setup__technology-copy[data-v-576c154a]{display:grid;gap:.2rem;max-width:54rem}.project-type-setup__selected-type[data-v-576c154a]{background:rgb(var(--v-theme-surface));border:1px solid rgba(var(--v-theme-primary),.32);border-radius:8px;display:grid;gap:.18rem;min-width:13rem;padding:.7rem .85rem}.project-type-setup__selected-type-label[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.56);font-size:.72rem;font-weight:760;letter-spacing:.04em;line-height:1.15;text-transform:uppercase}.project-type-setup__selected-type-name[data-v-576c154a]{color:rgb(var(--v-theme-primary));font-size:1rem;font-weight:780;line-height:1.2}.project-type-setup__options[data-v-576c154a]{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr))}.project-type-setup__option[data-v-576c154a]{align-content:start;background:rgb(var(--v-theme-surface));border:1px solid rgba(var(--v-border-color),var(--v-border-opacity));border-radius:8px;display:grid;gap:.8rem;min-height:100%;padding:1rem}.project-type-setup__option-top[data-v-576c154a],.project-type-setup__option-actions[data-v-576c154a]{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.project-type-setup__option-title[data-v-576c154a]{font-size:1.18rem;font-weight:760;letter-spacing:0;line-height:1.12;margin:0}.project-type-setup__summary[data-v-576c154a]{color:rgb(var(--v-theme-on-surface));font-size:.95rem;font-weight:650;line-height:1.38;margin:0}.project-type-setup__details[data-v-576c154a]{display:grid;gap:.65rem;margin:0}.project-type-setup__details div[data-v-576c154a]{display:grid;gap:.18rem}.project-type-setup__details dt[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.55);font-size:.72rem;font-weight:760;letter-spacing:.04em;line-height:1.15;text-transform:uppercase}.project-type-setup__details dd[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.74);font-size:.88rem;line-height:1.42;margin:0}.project-type-setup__stack[data-v-576c154a]{display:flex;flex-wrap:wrap;gap:.4rem}.project-type-setup__stack-chip[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.78)}.project-type-setup__project-link[data-v-576c154a]{align-items:center;color:rgb(var(--v-theme-primary));display:inline-flex;font-size:.86rem;font-weight:700;gap:.25rem;min-height:2.25rem;text-decoration:none}.project-type-setup__project-link[data-v-576c154a]:hover{text-decoration:underline}.project-type-setup__project-link--empty[data-v-576c154a]{color:rgba(var(--v-theme-on-surface),.5)}@media(max-width:700px){.project-type-setup__technology-heading[data-v-576c154a]{display:grid}.project-type-setup__selected-type[data-v-576c154a]{min-width:0}.project-type-setup__option-actions[data-v-576c154a]{align-items:stretch;flex-direction:column}.project-type-setup__project-link[data-v-576c154a]{min-height:1.5rem}}.project-type-gate[data-v-c5f6203e]{display:grid;gap:.85rem;min-width:0}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as z,R as G,Y as y,de as P,c1 as t,a3 as m,bO as Q,$ as i,cA as u,a1 as c,a0 as _,dg as r,a4 as b,cE as T,bv as U,i as F,V as $,F as N,cc as O,a6 as l,l as H,u as R,bA as K,bi as B,j as Y,b0 as X,aZ as Z,A as J,d0 as M,d1 as W,cb as L}from"./index-CY-wDjNv.js";import{k as ee}from"./studioGateApi-hkZdLr1Y.js";import{u as se,S as te}from"./SetupReadinessGate-DkkorR2Y.js";import{V as ie,H as ae,j as re,E as oe,F as ne,p as le,g as de}from"./vibe64SessionPanelModel-DvY_IbW3.js";import{d as j,V as q,P as ce}from"./ProjectTypeGate-DStq4W4X.js";import{c as ue,V as he,b as me,a as ve,e as fe,d as _e}from"./VTabs-BJ8MKoig.js";const pe={class:"studio-archived-sessions d-flex flex-column ga-3"},ye={key:0,class:"studio-archived-sessions__copy"},be={class:"studio-archived-sessions__title"},ge={key:0,class:"text-body-2 text-medium-emphasis mb-0"},Se={class:"text-subtitle-1 mb-1"},xe={class:"text-body-2 text-medium-emphasis mb-0"},ke={key:4,class:"studio-archived-sessions__grid"},Ve={class:"studio-archived-sessions__card-heading"},Te={class:"studio-archived-sessions__icon"},Ae={class:"studio-archived-sessions__identity"},Ie={class:"studio-archived-sessions__session-id"},Ce={class:"studio-archived-sessions__meta"},Re={class:"studio-archived-sessions__quick-facts"},we={key:0,class:"studio-archived-sessions__quick-fact"},Ee=["href"],Be=["href"],Le={__name:"ArchivedVibe64Sessions",props:{archive:{required:!0,type:String},description:{default:"",type:String},emptyText:{default:"",type:String},emptyTitle:{default:"No sessions",type:String},showRefresh:{default:!0,type:Boolean},title:{default:"",type:String}},emits:["loading-changed"],setup(o,{expose:A,emit:x}){const k=o,I=x,v=se({access:"never",apiSuffix:ie,fallbackLoadError:"Archived sessions could not be loaded.",ownershipFilter:G,placementSource:"vibe64.sessions.archive",queryKeyFactory:ae,requestQueryParams:y(()=>({archive:k.archive})),selectItems:e=>Array.isArray(e==null?void 0:e.sessions)?e.sessions:[],surfaceId:ee}),p=y(()=>!!v.isLoading),g=y(()=>String(v.loadError||"")),f=y(()=>(Array.isArray(v.items)?v.items:[]).map(de).filter(D)),C=y(()=>k.archive==="completed"?X:Z);function S(e={}){const d=Number(e.completedStepCount);return Number.isSafeInteger(d)&&d>=0?d:Array.isArray(e.completedSteps)?e.completedSteps.length:0}function V(e){return re(e)}function w(e){return ne(e)}function s(e){return oe(e)}function a(e,d){return le(e,d==="PR"?"pr":"issue").label}function h(e={}){return!!e.finalReportText}function D(e={}){const d=String(e.status||"");return k.archive==="abandoned"?d==="abandoned":d==="finished"||d==="completed"}async function E(){await v.reload()}return A({refresh:E}),P(p,e=>{I("loading-changed",e)},{immediate:!0}),(e,d)=>(t(),m("section",pe,[o.title||o.description||o.showRefresh?(t(),m("div",{key:0,class:Q(["studio-archived-sessions__header",{"studio-archived-sessions__header--actions-only":!o.title&&!o.description}])},[o.title||o.description?(t(),m("div",ye,[i("h2",be,u(o.title),1),o.description?(t(),m("p",ge,u(o.description),1)):c("",!0)])):c("",!0),o.showRefresh?(t(),_(F,{key:1,class:"studio-archived-sessions__refresh",loading:p.value,"prepend-icon":T(U),size:"small",variant:"tonal",onClick:E},{default:r(()=>[...d[0]||(d[0]=[b(" Refresh ",-1)])]),_:1},8,["loading","prepend-icon"])):c("",!0)],2)):c("",!0),g.value?(t(),_($,{key:1,type:"error",variant:"tonal",density:"comfortable"},{default:r(()=>[b(u(g.value),1)]),_:1})):c("",!0),p.value&&f.value.length<1?(t(),_(J,{key:2,color:"primary",height:"6",indeterminate:"",rounded:""})):c("",!0),!p.value&&f.value.length<1&&!g.value?(t(),_(j,{key:3,rounded:"lg",border:"",class:"studio-archived-sessions__empty"},{default:r(()=>[i("h2",Se,u(o.emptyTitle),1),i("p",xe,u(o.emptyText),1)]),_:1})):c("",!0),f.value.length?(t(),m("div",ke,[(t(!0),m(N,null,O(f.value,n=>(t(),_(Y,{key:n.sessionId,class:"studio-archived-sessions__card",rounded:"lg",variant:"outlined"},{default:r(()=>[l(H,{class:"studio-archived-sessions__card-body"},{default:r(()=>[i("div",Ve,[i("div",Te,[l(R,{icon:C.value,size:"22"},null,8,["icon"])]),i("div",Ae,[i("div",Ie,u(V(n.sessionId)),1),i("div",Ce,[l(q,{color:s(n.status),size:"x-small",variant:"tonal"},{default:r(()=>[b(u(w(n.status||o.archive)),1)]),_:2},1032,["color"]),l(q,{size:"x-small",variant:"tonal"},{default:r(()=>[b(u(S(n))+" steps ",1)]),_:2},1024)])])]),i("div",Re,[n.branch?(t(),m("div",we,[l(R,{icon:T(K),size:"16"},null,8,["icon"]),i("span",null,u(n.branch),1)])):c("",!0),n.issueUrl?(t(),m("a",{key:1,class:"studio-archived-sessions__quick-fact studio-archived-sessions__quick-link",href:n.issueUrl,target:"_blank",rel:"noreferrer"},[l(R,{icon:T(B),size:"16"},null,8,["icon"]),i("span",null,u(a(n.issueUrl,"Issue")),1)],8,Ee)):c("",!0),n.prUrl?(t(),m("a",{key:2,class:"studio-archived-sessions__quick-fact studio-archived-sessions__quick-link",href:n.prUrl,target:"_blank",rel:"noreferrer"},[l(R,{icon:T(B),size:"16"},null,8,["icon"]),i("span",null,u(a(n.prUrl,"PR")),1)],8,Be)):c("",!0)]),h(n)?(t(),_(ue,{key:0,class:"studio-archived-sessions__details",multiple:"",variant:"accordion"},{default:r(()=>[n.finalReportText?(t(),_(he,{key:0},{default:r(()=>[l(me,null,{default:r(()=>[...d[1]||(d[1]=[b("Final Report",-1)])]),_:1}),l(ve,null,{default:r(()=>[i("pre",null,u(n.finalReportText),1)]),_:2},1024)]),_:2},1024)):c("",!0)]),_:2},1024)):c("",!0)]),_:2},1024)]),_:2},1024))),128))])):c("",!0)]))}},qe=z(Le,[["__scopeId","data-v-6a7cfc23"]]),ze={class:"generated-ui-screen generated-ui-screen--studio studio-session-history d-flex flex-column ga-4"},Pe={class:"studio-session-history__controls"},Ue={__name:"history",setup(o){const A=[{archive:"completed",emptyText:"Completed sessions will appear here after a session is finalized.",emptyTitle:"No completed sessions",label:"Completed",value:"completed"},{archive:"abandoned",emptyText:"Abandoned sessions will appear here after their worktrees are removed.",emptyTitle:"No abandoned sessions",label:"Abandoned",value:"abandoned"}],x=M(),k=W(),I=L(!1),v=L(null),p=Object.fromEntries(A.map(s=>[s.value,s]));function g(s){return Array.isArray(s)?s[0]:s}function f(s){return s==="abandoned"?"abandoned":"completed"}function C(s){k.replace({path:"/home/history",query:{...x.query,tab:s}})}const S=y({get(){return f(g(x.query.tab))},set(s){C(f(s))}}),V=y(()=>p[S.value]||p.completed);function w(){var s,a;(a=(s=v.value)==null?void 0:s.refresh)==null||a.call(s)}return P(()=>x.query.tab,s=>{const a=g(s),h=f(a);a!==h&&C(h)},{immediate:!0}),(s,a)=>(t(),m("section",ze,[a[3]||(a[3]=i("header",{class:"studio-session-history__header"},[i("div",null,[i("p",{class:"studio-session-history__eyebrow text-caption text-medium-emphasis mb-1"}," Session archive "),i("h1",{class:"studio-session-history__title"},"Session History"),i("p",{class:"text-body-2 text-medium-emphasis mb-0"}," Review completed and abandoned Vibe64 sessions without crowding the active session workspace. ")])],-1)),l(ce,null,{default:r(()=>[l(te,null,{default:r(()=>[i("div",Pe,[l(j,{class:"studio-session-history__tabs",rounded:"lg",border:""},{default:r(()=>[l(fe,{modelValue:S.value,"onUpdate:modelValue":a[0]||(a[0]=h=>S.value=h),color:"primary",density:"comfortable",grow:""},{default:r(()=>[(t(),m(N,null,O(A,h=>l(_e,{key:h.value,value:h.value},{default:r(()=>[b(u(h.label),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"])]),_:1}),l(F,{class:"studio-session-history__refresh",loading:I.value,"prepend-icon":T(U),size:"small",variant:"tonal",onClick:w},{default:r(()=>[...a[2]||(a[2]=[b(" Refresh ",-1)])]),_:1},8,["loading","prepend-icon"])]),(t(),_(qe,{ref_key:"archiveSessions",ref:v,key:S.value,archive:V.value.archive,"empty-text":V.value.emptyText,"empty-title":V.value.emptyTitle,"show-refresh":!1,onLoadingChanged:a[1]||(a[1]=h=>I.value=h)},null,8,["archive","empty-text","empty-title"]))]),_:1})]),_:1})]))}},Qe=z(Ue,[["__scopeId","data-v-8280507e"]]);export{Qe as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as g}from"./ShellLayout-BcKS2HG9.js";import{_ as y,de as T,a0 as i,dg as o,d0 as v,Y as a,cx as E,c1 as s,a6 as P,cE as R,f as I,cg as B,$ as c,a3 as C,cA as k,a1 as S,cb as b,R as N}from"./index-CY-wDjNv.js";import{K as V,g as x,t as j,k as D}from"./studioGateApi-hkZdLr1Y.js";import{b as u}from"./route-block-B_A1xBdJ.js";const O={class:"studio-home-shell-heading"},w=["title"],m={__name:"home",setup(K){const d=v(),p=b(""),f=V({client:E,fallbackLoadError:"Project type could not load.",path:x,queryKey:a(()=>j(D,N)),refreshOnPull:!0}),r=a(()=>{var e,t;return String(((t=(e=f.data.value)==null?void 0:e.projectType)==null?void 0:t.targetRoot)||"").trim()}),l=a(()=>_(r.value));function _(e=""){const t=String(e||"").trim().replace(/[\\/]+$/u,"");return t&&t.split(/[\\/]+/u).filter(Boolean).at(-1)||""}function n(e=""){p.value=String(e||"").trim()}return T(()=>d.path,e=>{e!=="/home"&&e!=="/home/"&&n()},{immediate:!0}),(e,t)=>(s(),i(g,null,{"top-left":o(()=>[c("div",O,[l.value?(s(),C("h1",{key:0,class:"studio-home-shell-target-folder",title:r.value},k(l.value),9,w)):S("",!0)])]),"top-right":o(()=>[...t[0]||(t[0]=[c("div",{id:"studio-home-app-bar-actions",class:"studio-home-shell-actions"},null,-1)])]),default:o(()=>[P(R(I),null,{default:o(({Component:h})=>[(s(),i(B(h),{onPageTitleChange:n},null,32))]),_:1})]),_:1}))}};typeof u=="function"&&u(m);const A=y(m,[["__scopeId","data-v-c976728b"]]);export{A as default};
|