midsomar 0.1.0 → 0.1.2
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/package.json +1 -1
- package/web-ui/assets/ar-dmlRltPj.js +1 -1
- package/web-ui/assets/br-CS-UU6Fg.js +1 -1
- package/web-ui/assets/bs-BjpweuBW.js +1 -1
- package/web-ui/assets/da-2MqhfWgT.js +1 -1
- package/web-ui/assets/de-CdqM0zME.js +1 -1
- package/web-ui/assets/dialog-connect-provider-DLnpNUTc.js +1 -1
- package/web-ui/assets/es-_-j_uksi.js +1 -1
- package/web-ui/assets/fr-DZbGGwqB.js +1 -1
- package/web-ui/assets/index-BfNxi3ev.js +2 -2
- package/web-ui/assets/ja-B9nKmZ4y.js +1 -1
- package/web-ui/assets/ko-Dq1_Aq_h.js +1 -1
- package/web-ui/assets/no-lkr3H0wq.js +1 -1
- package/web-ui/assets/pl-sy_5meMH.js +1 -1
- package/web-ui/assets/ru-a87EhzgL.js +1 -1
- package/web-ui/assets/sprite-Chb7ocDN.svg +2 -2
- package/web-ui/assets/th-BdqWeqlh.js +1 -1
- package/web-ui/assets/tr-BiDFBY-2.js +1 -1
- package/web-ui/assets/uk-BVQd30TS.js +1 -1
- package/web-ui/assets/zh-BPUvYPSS.js +1 -1
- package/web-ui/assets/zht-zA5x0W7N.js +1 -1
- package/web-ui/favicon-v3.ico +0 -0
- package/web-ui/favicon-v3.svg +0 -0
- package/web-ui/favicon.ico +0 -0
- package/web-ui/favicon.svg +0 -0
- package/web-ui/index.html +4 -6
- package/web-ui/midsomar_black.png +0 -0
- package/web-ui/midsomar_logo.png +0 -0
- package/web-ui/midsomar_white.png +0 -0
- package/web-ui/assets/midsomar_black.png +0 -0
- package/web-ui/assets/midsomar_logo.png +0 -0
- package/web-ui/assets/midsomar_white.png +0 -0
|
@@ -1002,7 +1002,7 @@ ${s(u)}}`;return o(c,f)}return String(c)}return l(e,0)}const MM="[Circular]";fun
|
|
|
1002
1002
|
`);n.splice(1,3),t.stack=n.join(`
|
|
1003
1003
|
`)}return t},V2e=(e,t)=>{if(e.mutable)return t(e.mapUnsafe),e;const n=new Map(e.mapUnsafe);return t(n),$4(n)},dh=L2e,Vw="~effect/time/Duration",z2e=BigInt(0),H2e=BigInt(1),j2e=BigInt(1e3),zw=e=>BigInt(e<0?Math.ceil(e-.5):Math.floor(e+.5)),wU=e=>zw(e*1e6),NM=(e,t)=>e.includes(".")?zw(Number(e)*Number(t)):BigInt(e)*t,q2e=/^(-?\d+(?:\.\d+)?)\s+(nanos?|micros?|millis?|seconds?|minutes?|hours?|days?|weeks?)$/,E9=e=>{switch(typeof e){case"number":return qM(e);case"bigint":return O5(e);case"string":{if(e==="Infinity")return HM;if(e==="-Infinity")return jM;const t=q2e.exec(e);if(!t)break;const[n,r,i]=t;if(i==="nano"||i==="nanos")return O5(NM(r,H2e));if(i==="micro"||i==="micros")return O5(NM(r,j2e));const s=Number(r);switch(i){case"milli":case"millis":return qM(s);case"second":case"seconds":return Z2e(s);case"minute":case"minutes":return Y2e(s);case"hour":case"hours":return X2e(s);case"day":case"days":return Q2e(s);case"week":case"weeks":return J2e(s)}break}case"object":{if(e===null)break;if(Vw in e)return e;if(Array.isArray(e))return e.length!==2||!e.every(GB)?VM(e):Number.isNaN(e[0])||Number.isNaN(e[1])?G2e:e[0]===-1/0||e[1]===-1/0?jM:e[0]===1/0||e[1]===1/0?HM:ta(zw(e[0]*1e9+e[1]));const t=e;let n=0;return t.weeks&&(n+=t.weeks*6048e5),t.days&&(n+=t.days*864e5),t.hours&&(n+=t.hours*36e5),t.minutes&&(n+=t.minutes*6e4),t.seconds&&(n+=t.seconds*1e3),t.milliseconds&&(n+=t.milliseconds),!t.microseconds&&!t.nanoseconds?ta(n):ta(zw(n*1e6+(t.microseconds??0)*1e3+(t.nanoseconds??0)))}}return VM(e)},VM=e=>{throw new Error(`Invalid Input: ${e}`)},zM={_tag:"Millis",millis:0},B2e={_tag:"Infinity"},U2e={_tag:"NegativeInfinity"},W2e={[Vw]:Vw,[Ao](){return ZB(this.value)},[Mo](e){return K2e(e)&&iwe(this,e)},toString(){switch(this.value._tag){case"Infinity":return"Infinity";case"NegativeInfinity":return"-Infinity";case"Nanos":return`${this.value.nanos} nanos`;case"Millis":return`${this.value.millis} millis`}},toJSON(){switch(this.value._tag){case"Millis":return{_id:"Duration",_tag:"Millis",millis:this.value.millis};case"Nanos":return{_id:"Duration",_tag:"Nanos",nanos:String(this.value.nanos)};case"Infinity":return{_id:"Duration",_tag:"Infinity"};case"NegativeInfinity":return{_id:"Duration",_tag:"NegativeInfinity"}}},[$1](){return this.toJSON()},pipe(){return Tl(this,arguments)}},ta=e=>{const t=Object.create(W2e);return typeof e=="number"?isNaN(e)||e===0||Object.is(e,-0)?t.value=zM:Number.isFinite(e)?Number.isInteger(e)?t.value={_tag:"Millis",millis:e}:t.value={_tag:"Nanos",nanos:wU(e)}:t.value=e>0?B2e:U2e:e===z2e?t.value=zM:t.value={_tag:"Nanos",nanos:e},t},K2e=e=>hs(e,Vw),G2e=ta(0),HM=ta(1/0),jM=ta(-1/0),O5=e=>ta(e),qM=e=>ta(e),Z2e=e=>ta(e*1e3),Y2e=e=>ta(e*6e4),X2e=e=>ta(e*36e5),Q2e=e=>ta(e*864e5),J2e=e=>ta(e*6048e5),ewe=e=>twe(E9(e),{onMillis:Om,onNanos:t=>Number(t)/1e6,onInfinity:()=>1/0,onNegativeInfinity:()=>-1/0}),BM=e=>{const t=E9(e);switch(t.value._tag){case"Infinity":case"NegativeInfinity":throw new Error("Cannot convert infinite duration to nanos");case"Nanos":return t.value.nanos;case"Millis":return wU(t.value.millis)}},twe=Zn(2,(e,t)=>{switch(e.value._tag){case"Millis":return t.onMillis(e.value.millis);case"Nanos":return t.onNanos(e.value.nanos);case"Infinity":return t.onInfinity();case"NegativeInfinity":return(t.onNegativeInfinity??t.onInfinity)()}}),nwe=Zn(3,(e,t,n)=>e.value._tag==="Infinity"||e.value._tag==="NegativeInfinity"||t.value._tag==="Infinity"||t.value._tag==="NegativeInfinity"?n.onInfinity(e,t):e.value._tag==="Millis"?t.value._tag==="Millis"?n.onMillis(e.value.millis,t.value.millis):n.onNanos(BM(e),t.value.nanos):n.onNanos(e.value.nanos,BM(t))),rwe=(e,t)=>nwe(e,t,{onMillis:(n,r)=>n===r,onNanos:(n,r)=>n===r,onInfinity:(n,r)=>n.value._tag===r.value._tag}),iwe=Zn(2,(e,t)=>rwe(e,t)),xU=dh("effect/Scheduler",{defaultValue:()=>new SU}),kU="setImmediate"in globalThis?e=>{const t=globalThis.setImmediate(e);return()=>globalThis.clearImmediate(t)}:e=>{const t=setTimeout(e,0);return()=>clearTimeout(t)};class swe{buckets=[];scheduleTask(t,n){const r=this.buckets,i=r.length;let s,o=0;for(;o<i&&!(r[o][0]>n);o++)s=r[o];s&&s[0]===n?s[1].push(t):o===i?r.push([n,[t]]):r.splice(o,0,[n,[t]])}drain(){const t=this.buckets;return this.buckets=[],t}}class SU{executionMode;setImmediate;constructor(t="async",n=kU){this.executionMode=t,this.setImmediate=n}shouldYield(t){return t.currentOpCount>=t.maxOpsBeforeYield}makeDispatcher(){return new owe(this.setImmediate)}}class owe{tasks=new swe;running=void 0;setImmediate;constructor(t=kU){this.setImmediate=t}scheduleTask(t,n){this.tasks.scheduleTask(t,n),this.running===void 0&&(this.running=this.setImmediate(this.afterScheduled))}afterScheduled=()=>{this.running=void 0,this.runTasks()};runTasks(){const t=this.tasks.drain();for(let n=0;n<t.length;n++){const r=t[n][1];for(let i=0;i<r.length;i++)r[i]()}}flush(){for(;this.tasks.buckets.length>0;)this.running!==void 0&&(this.running(),this.running=void 0),this.runTasks()}}const awe=dh("effect/Scheduler/MaxOpsBeforeYield",{defaultValue:()=>2048}),lwe=dh("effect/Scheduler/PreventSchedulerYield",{defaultValue:()=>!1}),cwe="effect/Tracer/ParentSpan",uwe="effect/Tracer",dwe="effect/observability/Metric/FiberRuntimeMetricsKey",fwe=dh("effect/References/CurrentStackFrame",{defaultValue:w9}),hwe=dh("effect/References/CurrentLogLevel",{defaultValue:()=>"Info"}),mwe=dh("effect/References/MinimumLogLevel",{defaultValue:()=>"Info"}),gwe="dev";class pwe extends C9{fiberId;constructor(t,n=A4){super("Interrupt",n,"Interrupted"),this.fiberId=t}toString(){return`Interrupt(${this.fiberId})`}toJSON(){return{_tag:"Interrupt",fiberId:this.fiberId}}[Mo](t){return tU(t)&&this.fiberId===t.fiberId&&this.annotations===t.annotations}[Ao](){return wl(is(`${this._tag}:${this.fiberId}`))(T7(this.annotations))}}const vwe=e=>new $g([new pwe(e)]),P4=e=>{for(let t=0;t<e.reasons.length;t++){const n=e.reasons[t];if(n._tag==="Fail")return v2e(n.error)}return y2e(e)},ywe=e=>e.reasons.some(tU),bwe=Zn(2,(e,t)=>{if(e.reasons.length===0)return t;if(t.reasons.length===0)return e;const n=new $g(_2e(e.reasons,t.reasons));return oa(e,n)?e:n}),wwe=e=>{const t={Fail:[],Die:[],Interrupt:[]};for(let n=0;n<e.reasons.length;n++)t[e.reasons[n]._tag].push(e.reasons[n]);return t},CU=e=>{const t=wwe(e);return t.Fail.length>0?t.Fail[0].error:t.Die.length>0?t.Die[0].defect:t.Interrupt.length>0?new globalThis.Error("All fibers interrupted without error"):new globalThis.Error("Empty cause")},UM=`~effect/Fiber/${gwe}`,xwe={_A:Om,_E:Om},kwe={id:0},Swe=()=>globalThis[Hp];class _U{constructor(t,n=!0){this[UM]=xwe,this.setContext(t),this.id=++kwe.id,this.currentOpCount=0,this.currentLoopCount=0,this.interruptible=n,this._stack=[],this._observers=[],this._exit=void 0,this._children=void 0,this._interruptedCause=void 0,this._yielded=void 0,this.runtimeMetrics?.recordFiberStart(this.context)}[UM];id;interruptible;currentOpCount;currentLoopCount;_stack;_observers;_exit;_currentExit;_children;_interruptedCause;_yielded;context;currentScheduler;currentTracerContext;currentSpan;currentLogLevel;minimumLogLevel;currentStackFrame;runtimeMetrics;maxOpsBeforeYield;currentPreventYield;_dispatcher=void 0;get currentDispatcher(){return this._dispatcher??=this.currentScheduler.makeDispatcher()}getRef(t){return F2e(this.context,t)}addObserver(t){return this._exit?(t(this._exit),dbe):(this._observers.push(t),()=>{const n=this._observers.indexOf(t);n>=0&&this._observers.splice(n,1)})}interruptUnsafe(t,n){if(this._exit)return;let r=vwe(t);this.currentStackFrame&&(r=E7(r,yU(_9,this.currentStackFrame))),n&&(r=E7(r,n)),this._interruptedCause=this._interruptedCause?bwe(this._interruptedCause,r):r,this.interruptible&&this.evaluate(Ov(this._interruptedCause))}pollUnsafe(){return this._exit}evaluate(t){if(this._exit)return;if(this._yielded!==void 0){const r=this._yielded;this._yielded=void 0,r()}const n=this.runLoop(t);if(n!==pf){this._exit=n,this.runtimeMetrics?.recordFiberEnd(this.context,this._exit);for(let r=0;r<this._observers.length;r++)this._observers[r](n);this._observers.length=0}}runLoop(t){const n=globalThis[Hp];globalThis[Hp]=this;let r=!1,i=t;this.currentOpCount=0;const s=++this.currentLoopCount;try{for(;;){if(this.currentOpCount++,!r&&!this.currentPreventYield&&this.currentScheduler.shouldYield(this)){r=!0;const o=i;i=qa(EU,()=>o)}if(i=this.currentTracerContext?this.currentTracerContext(i,this):i[ls](this),s!==this.currentLoopCount)return pf;if(i===pf){const o=this._yielded;return Mv in o?(this._yielded=void 0,o):pf}}}catch(o){return hs(i,ls)?this.runLoop($v(o)):$v(`Fiber.runLoop: Not a valid effect: ${String(i)}`)}finally{globalThis[Hp]=n}}getCont(t){for(;;){const n=this._stack.pop();if(!n)return;const r=n[Hf]&&n[Hf](this);if(r)return r[t]=r,r;if(n[t])return n}}yieldWith(t){return this._yielded=t,pf}children(){return this._children??=new Set}pipe(){return Tl(this,arguments)}setContext(t){this.context=t;const n=this.getRef(xU);n!==this.currentScheduler&&(this.currentScheduler=n,this._dispatcher=void 0),this.currentSpan=t.mapUnsafe.get(cwe),this.currentLogLevel=this.getRef(hwe),this.minimumLogLevel=this.getRef(mwe),this.currentStackFrame=t.mapUnsafe.get(fwe.key),this.maxOpsBeforeYield=this.getRef(awe),this.currentPreventYield=this.getRef(lwe),this.runtimeMetrics=t.mapUnsafe.get(dwe);const r=t.mapUnsafe.get(uwe);this.currentTracerContext=r?r.context:void 0}get currentSpanLocal(){return this.currentSpan?._tag==="Span"?this.currentSpan:void 0}}const TU=e=>{if(!e.currentStackFrame)return;const t=new Map;return t.set(_9.key,e.currentStackFrame),$4(t)},Cwe=e=>O4(t=>{const n=e[Symbol.iterator](),r=[];let i;function s(){let o=n.next();for(;!o.done;){if(o.value._exit){r.push(o.value._exit),o=n.next();continue}i=o.value.addObserver(a=>{r.push(a),s()});return}t(ja(r))}return s(),jp(()=>i?.())}),D7=e=>tg(t=>{const n=TU(t);for(const r of e)r.interruptUnsafe(t.id,n);return Owe(Cwe(e))}),ja=iu,Ov=dd,I9=M4,jp=uc({op:"Sync",[ls](e){const t=this[gr](),n=e.getCont(xl);return n?n[xl](t,e):e.yieldWith(iu(t))}}),ng=uc({op:"Suspend",[ls](e){return this[gr]()}}),_we=uc({op:"Yield",[ls](e){let t=!1;return e.currentDispatcher.scheduleTask(()=>{t||e.evaluate(rg)},this[gr]??0),e.yieldWith(()=>{t=!0})}}),EU=_we(0),Twe=e=>ja(Qr(e)),Ewe=ja(jf()),IU=e=>$v(e),Iwe=e=>ng(()=>I9(zf(e))),ep=ja(void 0),Dwe=e=>ng(()=>{try{return ja(zf(e.try))}catch(t){return I9(zf(()=>e.catch(t)))}}),Lwe=e=>DU(function(t,n){zf(()=>e(n)).then(r=>t(ja(r)),r=>t(IU(r)))},e.length!==0),DU=uc({op:"Async",single:!1,[ls](e){const t=zf(()=>this[gr][0].bind(e.currentScheduler));let n=!1,r=!1;const i=this[gr][1]?new AbortController:void 0,s=t(o=>{n||(n=!0,r?e.evaluate(o):r=o)},i?.signal);return r!==!1?r:(r=!0,e._yielded=()=>{n=!0},i===void 0&&s===void 0||e._stack.push(Awe(()=>(n=!0,i?.abort(),s??rg))),pf)}}),Awe=uc({op:"AsyncFinalizer",[Hf](e){e.interruptible&&(e.interruptible=!1,e._stack.push(D9))},[Gc](e,t){return ywe(e)?qa(this[gr](),()=>Ov(e)):Ov(e)}}),O4=e=>DU(e,e.length>=2),Mwe=(...e)=>ng(()=>L7(e.length===1?e[0]():e[1].call(e[0].self))),$we=(e,t)=>Object.defineProperty(t,"length",{value:e,configurable:!0}),Pwe=(e,...t)=>$we(e.length,t.length===0?function(){return WM(()=>e.apply(this,arguments))}:function(){let n=WM(()=>e.apply(this,arguments));for(const r of t)n=r(n);return n}),WM=e=>{try{const t=e();let n;for(;;){const r=t.next(n);if(r.done)return ja(r.value);const i=r.value;if(i&&i._tag==="Success"){n=i.value;continue}else{if(i&&i._tag==="Failure")return r.value;{let s=!0;return ng(()=>s?(s=!1,qa(r.value,o=>L7(t,o))):ng(()=>L7(e())))}}}}catch(t){return IU(t)}},L7=uc({op:"Iterator",single:!1,[xl](e,t){const n=this[gr][0];for(;;){const r=n.next(e);if(r.done)return ja(r.value);if(nc(r.value)){if(r.value._tag==="Failure")return r.value}else return t._stack.push(this),r.value;e=r.value.value}},[ls](e){return this[xl](this[gr][1],e)}}),Owe=e=>qa(e,t=>rg),Rwe=(e,t)=>tg(n=>O4(r=>{let i=!1;const s=new Set,o=l=>{i=!0,r(s.size===0?l:qa(rxe(D7(s)),()=>l))};let a=0;for(const l of e){if(i)break;const c=a++,u=MU(n,l,!0,!0,!1);s.add(u),u.addObserver(d=>{s.delete(u);const f=!i;o(d),f&&t?.onWinner&&t.onWinner({fiber:u,index:c,parentFiber:n})})}return D7(s)})),Fwe=Zn(e=>qbe(e[1]),(e,t,n)=>Rwe([e,t],n)),qa=Zn(2,(e,t)=>{const n=Object.create(Nwe);return n[gr]=e,n[xl]=t.length!==1?r=>t(r):t,n}),Nwe=Pg({op:"OnSuccess",[ls](e){return e._stack.push(this),this[gr]}}),nc=e=>Mv in e,Vwe=Zn(2,(e,t)=>nc(e)?e._tag==="Success"?t(e.value):e:qa(e,t)),zwe=Zn(2,(e,t)=>qa(e,n=>ja(zf(()=>t(n))))),Hwe=Zn(2,(e,t)=>nc(e)?Uwe(e,t):zwe(e,t)),jwe=Zn(2,(e,t)=>nc(e)?Wwe(e,t):Xwe(e,t)),qwe=Zn(2,(e,t)=>{if(nc(e)){if(e._tag==="Success")return e;const n=P4(e.cause);return O1(n)?e:t(n.success)}return LU(e,t)}),Bwe=e=>e._tag==="Success",rg=iu(void 0),Uwe=Zn(2,(e,t)=>e._tag==="Success"?iu(t(e.value)):e),Wwe=Zn(2,(e,t)=>{if(e._tag==="Success")return e;const n=P4(e.cause);return O1(n)?e:M4(t(n.success))}),Kwe=e=>Bwe(e)?Qr(e.value):jf(),Gwe=Zn(2,(e,t)=>{const n=Object.create(Zwe);return n[gr]=e,n[Gc]=t.length!==1?r=>t(r):t,n}),Zwe=Pg({op:"OnFailure",[ls](e){return e._stack.push(this),this[gr]}}),Ywe=Zn(3,(e,t,n)=>Gwe(e,r=>{const i=t(r);return O1(i)?Ov(i.failure):zf(()=>n(i.success,r))})),LU=Zn(2,(e,t)=>Ywe(e,P4,n=>t(n))),Xwe=Zn(2,(e,t)=>LU(e,n=>Iwe(()=>t(n)))),AU=e=>nc(e)?iu(e):Qwe(e),Qwe=uc({op:"Exit",[ls](e){return e._stack.push(this),this[gr]},[xl](e,t,n){return ja(n??iu(e))},[Gc](e,t,n){return ja(n??dd(e))}}),Jwe=Zn(2,(e,t)=>Fwe(e,qa(vxe(t.duration),t.orElse))),exe=uc({op:"OnExit",single:!1,[ls](e){return e._stack.push(this),this[gr][0]},[Hf](e){e.interruptible&&this[gr][2]!==!0&&(e._stack.push(D9),e.interruptible=!1)},[xl](e,t,n){n??=iu(e);const r=this[gr][1](n);return r?qa(r,i=>n):n},[Gc](e,t,n){n??=dd(e);const r=this[gr][1](n);return r?qa(r,i=>n):n}}),txe=Zn(2,exe),nxe=Zn(2,(e,t)=>txe(e,n=>t)),rxe=e=>tg(t=>(t.interruptible&&(t.interruptible=!1,t._stack.push(D9)),e)),ixe=uc({op:"SetInterruptible",[Hf](e){if(e.interruptible=this[gr],e._interruptedCause&&e.interruptible)return()=>Ov(e._interruptedCause)}}),D9=ixe(!0),sxe=e=>{const t=e.onItem,n=e.step;return(r,i,s)=>{let o=s?.start??0;const a=s?.end??i.length,l=s?.concurrency??1;let c=!1,u,d,f,m=!1,g,p;const y=()=>{let v=!1;for(;!g&&o<a;o++){const b=i[o],w=p??t(r,b,o);if(nc(w)){if(g=n(r,b,w,o),g)break}else{if(l===1)return qa(AU(w),x=>(g=n(r,b,x,o),o++,g??y()??ep));if(u){p=void 0;const x=MU(u,w,!0,!0,"inherit");if(x._exit){if(g=n(r,b,x._exit,o),g)break;continue}d?d.add(x):d=new Set([x]);const k=o;if(x.addObserver(C=>{if(d.delete(x),g){if(!m&&C._tag==="Failure")for(const E of C.cause.reasons)E._tag!=="Interrupt"&&(g._tag==="Failure"?g.cause.reasons.push(E):g=dd(PM([E])))}else{const E=n(r,b,C,k);E&&(g=E._tag==="Failure"?dd(PM(E.cause.reasons.slice())):E,y())}if(v){const E=y();E&&f(E)}else c&&d.size===0&&f(g??ep)}),d.size<l)continue;v=!0,o++;return}else return O4(x=>{u=Swe(),p=w,f=x;const k=y();return k?x(k):ng(()=>(g=rg,m=!0,d?D7(d):ep))})}}if(c=!0,g){if(d&&d.size>0){const b=TU(u);d.forEach(w=>w.interruptUnsafe(u.id,b));return}if(f||g._tag==="Failure")return g}else if(f)if(d)d.size===0&&f(ep);else return rg};return y()}},L9=()=>sxe,MU=(e,t,n=!1,r=!1,i=!1)=>{const s=i==="inherit"?e.interruptible:!i,o=new _U(e.context,s);return n?o.evaluate(t):e.currentDispatcher.scheduleTask(()=>o.evaluate(t),0),!r&&!o._exit&&(e.children().add(o),o.addObserver(()=>e._children.delete(o))),o},$U=e=>(t,n)=>{const r=new _U(n?.scheduler?O2e(e,xU,n.scheduler):e,n?.uninterruptible!==!0);if(r.evaluate(t),r._exit)return r;if(n?.signal)if(n.signal.aborted)r.interruptUnsafe();else{const i=()=>r.interruptUnsafe();n.signal.addEventListener("abort",i,{once:!0}),r.addObserver(()=>n.signal.removeEventListener("abort",i))}return n?.onFiberStart&&n.onFiberStart(r),r},oxe=e=>{const t=$U(e);return(n,r)=>{const i=t(n,r);return new Promise(s=>{i.addObserver(o=>s(o))})}},axe=e=>{const t=oxe(e);return(n,r)=>t(n,r).then(i=>{if(i._tag==="Failure")throw CU(i.cause);return i.value})},lxe=axe(T9()),PU=e=>{const t=$U(e);return n=>{if(nc(n))return n;const r=new SU("sync"),i=t(n,{scheduler:r});return i.currentDispatcher?.flush(),i._exit??$v(new bxe(i))}},cxe=PU(T9()),uxe=e=>{const t=PU(e);return n=>{const r=t(n);if(r._tag==="Failure")throw CU(r.cause);return r.value}},dxe=uxe(T9()),fxe=dh("effect/Clock",{defaultValue:()=>new mxe}),hxe=2**31-1;class mxe{currentTimeMillisUnsafe(){return Date.now()}currentTimeMillis=jp(()=>this.currentTimeMillisUnsafe());currentTimeNanosUnsafe(){return gxe()}currentTimeNanos=jp(()=>this.currentTimeNanosUnsafe());sleep(t){const n=ewe(t);return n<=0?EU:O4(r=>{if(n>hxe)return;const i=setTimeout(()=>r(ep),n);return jp(()=>clearTimeout(i))})}}const KM=(function(){const e=BigInt(1e6);if(typeof performance>"u"||typeof performance.now>"u")return()=>BigInt(Date.now())*e;if(typeof performance.timeOrigin=="number"&&performance.timeOrigin===0)return()=>BigInt(Math.round(performance.now()*1e6));const t=BigInt(Date.now())*e-BigInt(Math.round(performance.now()*1e6));return()=>t+BigInt(Math.round(performance.now()*1e6))})(),gxe=(function(){const e=typeof process=="object"&&"hrtime"in process&&typeof process.hrtime.bigint=="function"?process.hrtime:void 0;if(!e)return KM;const t=KM()-e.bigint();return()=>t+e.bigint()})(),pxe=e=>tg(t=>e(t.getRef(fxe))),vxe=e=>pxe(t=>t.sleep(E9(e))),GM="~effect/Cause/IllegalArgumentError";let yxe=class extends rU("IllegalArgumentError"){[GM]=GM;constructor(t){super({message:t})}};const ZM="~effect/Cause/AsyncFiberError";class bxe extends rU("AsyncFiberError"){[ZM]=ZM;constructor(t){super({message:"An asynchronous Effect was executed with Effect.runSync",fiber:t})}}const OU=P4,wxe=yxe,A9=M4,xxe=rg,RU=Kwe,FU=class extends T4{constructor(t){super(),t&&Object.assign(this,t)}},Cc=e=>class extends FU{_tag=e},A7="~effect/time/DateTime",kxe={[A7]:A7,pipe(){return Tl(this,arguments)},[$1](){return this.toString()},toJSON(){return R4(this).toJSON()}},Sxe={...kxe,_tag:"Utc",[Ao](){return I4(this.epochMilliseconds)},[Mo](e){return M9(e)&&e._tag==="Utc"&&this.epochMilliseconds===e.epochMilliseconds},toString(){return`DateTime.Utc(${R4(this).toJSON()})`}},M9=e=>hs(e,A7),Cxe=e=>e._tag==="Utc",_xe=$be((e,t)=>e.epochMilliseconds===t.epochMilliseconds),Txe=hU((e,t)=>e.epochMilliseconds<t.epochMilliseconds?-1:e.epochMilliseconds>t.epochMilliseconds?1:0),$9=e=>{const t=Object.create(Sxe);return t.epochMilliseconds=e,Object.defineProperty(t,"partsUtc",{value:void 0,enumerable:!1,writable:!0}),t},tp=e=>{const t=e.getTime();if(Number.isNaN(t))throw new wxe("Invalid date");return $9(t)},NU=e=>{if(M9(e))return e;if(e instanceof Date)return tp(e);if(typeof e=="object"){if("epochMilliseconds"in e)return $9(e.epochMilliseconds);const t=new Date(0);return Axe(t,e),tp(t)}else if(typeof e=="string"&&!Exe(e))return tp(new Date(e+"Z"));return tp(new Date(e))},Exe=e=>/Z|GMT|[+-]\d{2}$|[+-]\d{2}:?\d{2}$|\]$/.test(e),Ixe=g2e(NU),Dxe=e=>$9(e.epochMilliseconds),R4=e=>new Date(e.epochMilliseconds),Lxe=e=>e.epochMilliseconds,Axe=(e,t)=>{if(t.year!==void 0&&e.setUTCFullYear(t.year),t.month!==void 0&&e.setUTCMonth(t.month-1),t.day!==void 0&&e.setUTCDate(t.day),t.weekDay!==void 0){const n=t.weekDay-e.getUTCDay();e.setUTCDate(e.getUTCDate()+n)}t.hour!==void 0&&e.setUTCHours(t.hour),t.minute!==void 0&&e.setUTCMinutes(t.minute),t.second!==void 0&&e.setUTCSeconds(t.second),t.millisecond!==void 0&&e.setUTCMilliseconds(t.millisecond)},Mxe=e=>R4(e).toISOString(),$xe=Lwe,Co=ja,F4=Ewe,Pxe=Twe,Oxe=jp,Rxe=Mwe,_o=I9,VU=Dwe,Fxe=qa,YM=AU,Nxe=Jwe,Vxe=nxe,zxe=lxe,Hxe=dxe,zU=cxe,P9=Hwe,O9=jwe,vf=Vwe,jxe=qwe,XM=Pwe;function np(e,t,n){return t==="__proto__"?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n,e}function qxe(e){return e.checks?e.checks[e.checks.length-1].annotations:e.annotations}function HU(e){return t=>qxe(t)?.[e]}const Bxe=HU("identifier"),Uxe=HU("brands"),R9=Dd(e=>{const t=Bxe(e);return typeof t=="string"?t:e.getExpected(R9)}),Wxe=e=>e.replace(/[/\\^$*+?.()|[\]{}]/g,"\\$&"),Kxe=M9,Gxe=Cxe,Zxe=_xe,Yxe=Txe,Xxe=tp,Qxe=NU,Jxe=Ixe,e4e=Dxe,t4e=R4,n4e=Lxe,r4e=Mxe,M7="~effect/SchemaIssue/Issue";function i4e(e){return hs(e,M7)}let dc=class{[M7]=M7;toString(){return g4e(this)}},s4e=class extends dc{_tag="Filter";actual;filter;issue;constructor(t,n,r){super(),this.actual=t,this.filter=n,this.issue=r}};class o4e extends dc{_tag="Encoding";ast;actual;issue;constructor(t,n,r){super(),this.ast=t,this.actual=n,this.issue=r}}class N4 extends dc{_tag="Pointer";path;issue;constructor(t,n){super(),this.path=t,this.issue=n}}class a4e extends dc{_tag="MissingKey";annotations;constructor(t){super(),this.annotations=t}}class l4e extends dc{_tag="UnexpectedKey";ast;actual;constructor(t,n){super(),this.ast=t,this.actual=n}}class Vc extends dc{_tag="Composite";ast;actual;issues;constructor(t,n,r){super(),this.ast=t,this.actual=n,this.issues=r}}class R1 extends dc{_tag="InvalidType";ast;actual;constructor(t,n){super(),this.ast=t,this.actual=n}}class qf extends dc{_tag="InvalidValue";actual;annotations;constructor(t,n){super(),this.actual=t,this.annotations=n}}class QM extends dc{_tag="AnyOf";ast;actual;issues;constructor(t,n,r){super(),this.ast=t,this.actual=n,this.issues=r}}class c4e extends dc{_tag="OneOf";ast;actual;successes;constructor(t,n,r){super(),this.ast=t,this.actual=n,this.successes=r}}function $7(e,t){if(i4e(t))return t;if(typeof t=="string")return new qf(Qr(e),{message:t});const n=typeof t.issue=="string"?new qf(Qr(e),{message:t.issue}):t.issue;return new N4(t.path,n)}function u4e(e,t){if(t!==void 0)return typeof t=="boolean"?t?void 0:new qf(Qr(e)):$7(e,t)}function d4e(e,t,n){return Array.isArray(n)?Nw(n)?n.length===1?$7(e,n[0]):new Vc(t,Qr(e),E2e(n,r=>$7(e,r))):void 0:u4e(e,n)}const f4e=e=>{const t=Rv(e);if(t!==void 0)return t;switch(e._tag){case"InvalidType":return P7(R9(e.ast),JM(e.actual));case"InvalidValue":return`Invalid data ${JM(e.actual)}`;case"MissingKey":return"Missing key";case"UnexpectedKey":return`Unexpected key with value ${Yi(e.actual)}`;case"Forbidden":return"Forbidden operation";case"OneOf":return`Expected exactly one member to match the input ${Yi(e.actual)}`}},h4e=e=>Rv(e.issue)??Rv(e);function P7(e,t){return`Expected ${e}, got ${t}`}function om(e,t,n,r){switch(e._tag){case"Filter":{const i=r(e);if(i!==void 0)return[{path:t,message:i}];switch(e.issue._tag){case"InvalidValue":return[{path:t,message:P7(jU(e.filter),Yi(e.actual))}];default:return om(e.issue,t,n,r)}}case"Encoding":return om(e.issue,t,n,r);case"Pointer":return om(e.issue,[...t,...e.path],n,r);case"Composite":return e.issues.flatMap(i=>om(i,t,n,r));case"AnyOf":{const i=Rv(e);if(e.issues.length===0){if(i!==void 0)return[{path:t,message:i}];const s=P7(R9(e.ast),Yi(e.actual));return[{path:t,message:s}]}return e.issues.flatMap(s=>om(s,t,n,r))}default:return[{path:t,message:n(e)}]}}function jU(e){const t=e.annotations?.expected;if(typeof t=="string")return t;switch(e._tag){case"Filter":return"<filter>";case"FilterGroup":return e.checks.map(n=>jU(n)).join(" & ")}}function m4e(){return e=>om(e,[],f4e,h4e).map(p4e).join(`
|
|
1004
1004
|
`)}const g4e=m4e();function p4e(e){let t=e.message;if(e.path&&e.path.length>0){const n=Fbe(e.path);t+=`
|
|
1005
|
-
at ${n}`}return t}function Rv(e){switch(e._tag){case"InvalidType":case"OneOf":case"Composite":case"AnyOf":return y0(e.ast.annotations);case"InvalidValue":case"Forbidden":return y0(e.annotations);case"MissingKey":return y0(e.annotations,"messageMissingKey");case"UnexpectedKey":return y0(e.ast.annotations,"messageUnexpectedKey");case"Filter":return y0(e.filter.annotations);case"Encoding":return Rv(e.issue)}}function y0(e,t="message"){const n=e?.[t];if(typeof n=="string")return n}function JM(e){return uh(e)?"no value provided":Yi(e.value)}class ig extends T4{run;constructor(t){super(),this.run=t}map(t){return new ig((n,r)=>this.run(n,r).pipe(P9(gU(t))))}compose(t){return e$(this)?t:e$(t)?this:new ig((n,r)=>this.run(n,r).pipe(vf(i=>t.run(i,r))))}}const qU=new ig(Co);function e$(e){return e.run===qU.run}function Hw(){return qU}function F9(e){return new ig((t,n)=>uh(t)?F4:e(t.value,n))}function rc(e){return BU(gU(e))}function t$(e){return F9((t,n)=>e(t,n).pipe(P9(Qr)))}function BU(e){return new ig(t=>Co(e(t)))}function v4e(){return rc(globalThis.String)}function UU(){return rc(globalThis.Number)}function y4e(e){return F9(t=>VU({try:()=>Qr(JSON.parse(t,e?.reviver)),catch:n=>new qf(Qr(t),{message:globalThis.String(n)})}))}function b4e(e){return F9(t=>VU({try:()=>Qr(JSON.stringify(t,e?.replacer,e?.space)),catch:n=>new qf(Qr(t),{message:globalThis.String(n)})}))}const O7="~effect/SchemaTransformation/Transformation";class Ba{[O7]=O7;_tag="Transformation";decode;encode;constructor(t,n){this.decode=t,this.encode=n}flip(){return new Ba(this.encode,this.decode)}compose(t){return new Ba(this.decode.compose(t.decode),t.encode.compose(this.encode))}}function w4e(e){return hs(e,O7)}const WU=e=>w4e(e)?e:new Ba(e.decode,e.encode);function x4e(e){return new Ba(t$(e.decode),t$(e.encode))}const k4e=new Ba(Hw(),Hw());function S4e(){return k4e}const KU=new Ba(UU(),v4e()),C4e=new Ba(y4e(),b4e()),_4e=x4e({decode:e=>f2e(Jxe(e),{onNone:()=>_o(new qf(Qr(e),{message:`Invalid UTC DateTime string: ${e}`})),onSome:t=>Co(e4e(t))}),encode:e=>Co(r4e(e))});function fh(e){return t=>t._tag===e}const T4e=fh("Declaration"),E4e=fh("Never"),jw=fh("Literal"),I4e=fh("UniqueSymbol"),D4e=fh("Arrays"),L4e=fh("Objects"),A4e=fh("Union");let aa=class{to;transformation;constructor(t,n){this.to=t,this.transformation=n}};const M4e={};let qw=class{isOptional;isMutable;defaultValue;annotations;constructor(t,n,r=void 0,i=void 0){this.isOptional=t,this.isMutable=n,this.defaultValue=r,this.annotations=i}};const n$="~effect/Schema";class hu{[n$]=n$;annotations;checks;encoding;context;constructor(t=void 0,n=void 0,r=void 0,i=void 0){this.annotations=t,this.checks=n,this.encoding=r,this.context=i}toString(){return`<${this._tag}>`}}class V4 extends hu{_tag="Declaration";typeParameters;run;encodingChecks;constructor(t,n,r,i,s,o,a){super(r,i,s,o),this.typeParameters=t,this.run=n,this.encodingChecks=a}getParser(){const t=this.run(this.typeParameters);return(n,r)=>uh(n)?F4:P9(t(n.value,this,r),Qr)}rebuild(t,n,r){const i=Ww(this.typeParameters,t);return i===this.typeParameters?this:new V4(i,this.run,this.annotations,n,void 0,this.context,r)}recur(t){return this.rebuild(t,this.checks,this.encodingChecks)}flip(t){return this.rebuild(t,this.encodingChecks,this.checks)}getExpected(){const t=this.annotations?.expected;return typeof t=="string"?t:"<Declaration>"}}class $4e extends hu{_tag="Null";getParser(){return B9(this,null)}getExpected(){return"null"}}const P4e=new $4e;let O4e=class extends hu{_tag="Undefined";getParser(){return B9(this,void 0)}toCodecJson(){return To(this,[R4e])}getExpected(){return"undefined"}};const R4e=new aa(P4e,new Ba(rc(()=>{}),rc(()=>null))),F4e=new O4e;let N4e=class extends hu{_tag="Unknown";getParser(){return H4(this,gbe)}getExpected(){return"unknown"}};const V4e=new N4e;class w2 extends hu{_tag="Literal";literal;constructor(t,n,r,i,s){if(super(n,r,i,s),typeof t=="number"&&!globalThis.Number.isFinite(t))throw new Error(`A numeric literal must be finite, got ${Yi(t)}`);this.literal=t}getParser(){return B9(this,this.literal)}toCodecJson(){return typeof this.literal=="bigint"?r$(this):this}toCodecStringTree(){return typeof this.literal=="string"?this:r$(this)}getExpected(){return typeof this.literal=="string"?JSON.stringify(this.literal):globalThis.String(this.literal)}}function r$(e){const t=globalThis.String(e.literal);return To(e,[new aa(new w2(t),new Ba(rc(()=>e.literal),rc(()=>t)))])}let z4e=class extends hu{_tag="String";getParser(){return H4(this,hbe)}getExpected(){return"string"}};const GU=new z4e;let H4e=class extends hu{_tag="Number";getParser(){return H4(this,GB)}toCodecJson(){return this.checks&&(rp(this.checks,"isFinite")||rp(this.checks,"isInt"))?this:To(this,[G4e])}toCodecStringTree(){return this.checks&&(rp(this.checks,"isFinite")||rp(this.checks,"isInt"))?To(this,[ake]):To(this,[lke])}getExpected(){return"number"}};function rp(e,t){return e.some(n=>{switch(n._tag){case"Filter":return n.annotations?.meta?._tag===t;case"FilterGroup":return rp(n.checks,t)}})}const ZU=new H4e,YU=e=>(e=e==="unbounded"?1/0:e??1,e>1?{concurrency:e}:void 0),R7=(e,t,n,r)=>{const i=OU(r.cause);if(O1(i))return r;const s=new N4([n],i.success);if(e.options.errors==="all")e.issues?e.issues.push(s):e.issues=[s];else return A9(new Vc(t,e.oinput,[s]))},N9="[+-]?\\d*\\.?\\d+(?:[Ee][+-]?\\d+)?",j4e=new globalThis.RegExp(`(?:${N9}|Infinity|-Infinity|NaN)`);function XU(e,t){const n=N1(t);switch(n._tag){case"String":return Object.keys(e);case"TemplateLiteral":{const r=nke(n);return Object.keys(e).filter(i=>r.test(i))}case"Symbol":return Object.getOwnPropertySymbols(e);case"Number":return Object.keys(e).filter(r=>j4e.test(r));case"Union":return[...new Set(n.types.flatMap(r=>XU(e,r)))];default:return[]}}class QU{name;type;constructor(t,n){this.name=t,this.type=n}}class q4e{parameter;type;merge;constructor(t,n,r){if(this.parameter=t,this.type=n,this.merge=r,Kw(n)&&!dW(n))throw new Error("Cannot use `Schema.optionalKey` with index signatures, use `Schema.optional` instead.")}}class V9 extends hu{_tag="Objects";propertySignatures;indexSignatures;encodingChecks;constructor(t,n,r,i,s,o,a){super(r,i,s,o),this.propertySignatures=t,this.indexSignatures=n,this.encodingChecks=a;const l=t.map(c=>c.name).filter((c,u,d)=>d.indexOf(c)!==u);if(l.length>0)throw new Error(`Duplicate identifiers: ${JSON.stringify(l)}. ts(2300)`)}getParser(t){const n=this,r=[],i=new Set,s=[];for(const l of n.propertySignatures)r.push(l.name),i.add(l.name),s.push({ps:l,parser:t(l.type),name:l.name,type:l.type});const o=n.indexSignatures.length;if(n.propertySignatures.length===0&&n.indexSignatures.length===0)return H4(n,mbe);const a=o>0?L9()({onItem:XM(function*(l,[c,u]){const f=t(mW(u.parameter))(Qr(c),l.options),m=nc(f)?f:yield*YM(f);if(m._tag==="Failure"){const b=R7(l,n,c,m);b&&(yield*b);return}const g=Qr(l.input[c]),y=t(u.type)(g,l.options),v=nc(y)?y:yield*YM(y);if(v._tag==="Failure"){const b=R7(l,n,c,v);b&&(yield*b);return}else if(m.value._tag==="Some"&&v.value._tag==="Some"){const b=m.value.value;if(i.has(c)||i.has(b))return;const w=v.value.value;if(u.merge&&u.merge.decode&&Object.hasOwn(l.out,b)){const[x,k]=u.merge.decode.combine([b,l.out[b]],[b,w]);np(l.out,x,k)}else np(l.out,b,w)}}),step:(l,c,u)=>u._tag==="Failure"?u:void 0}):void 0;return XM(function*(l,c){if(l._tag==="None")return l;const u=l.value;if(!(typeof u=="object"&&u!==null&&!Array.isArray(u)))return yield*_o(new R1(n,l));const d={},f={ast:n,oinput:l,input:u,out:d,issues:void 0,options:c},m=c.errors==="all",g=c.onExcessProperty==="error",p=c.onExcessProperty==="preserve";let y;if(n.indexSignatures.length===0&&(g||p)){y=Reflect.ownKeys(u);for(let w=0;w<y.length;w++){const x=y[w];if(!i.has(x))if(g){const k=new N4([x],new l4e(n,u[x]));if(m){f.issues?f.issues.push(k):f.issues=[k];continue}else return yield*_o(new Vc(n,l,[k]))}else np(d,x,u[x])}}const v=YU(c?.concurrency),b=B4e(f,s,v);if(b&&(yield*b),a){const w=T2e();for(let k=0;k<o;k++){const C=n.indexSignatures[k],E=XU(u,C.parameter);for(let _=0;_<E.length;_++){const L=E[_];w.push([L,C])}}const x=a(f,w,v);x&&(yield*x)}if(f.issues)return yield*_o(new Vc(n,l,f.issues));if(c.propertyOrder==="original"){const w=(y??Reflect.ownKeys(u)).concat(r),x={};for(const k of w)Object.hasOwn(d,k)&&np(x,k,d[k]);return Qr(x)}return Qr(d)})}rebuild(t,n,r,i){const s=Ww(this.propertySignatures,a=>{const l=t(a.type);return l===a.type?a:new QU(a.name,l)}),o=Ww(this.indexSignatures,a=>{const l=t(a.parameter),c=t(a.type),u=n?a.merge?.flip():a.merge;return l===a.parameter&&c===a.type&&u===a.merge?a:new q4e(l,c,u)});return s===this.propertySignatures&&o===this.indexSignatures?this:new V9(s,o,this.annotations,r,void 0,this.context,i)}flip(t){return this.rebuild(t,!0,this.encodingChecks,this.checks)}recur(t){return this.rebuild(t,!1,this.checks,this.encodingChecks)}getExpected(){return this.propertySignatures.length===0&&this.indexSignatures.length===0?"object | array":"object"}}const B4e=L9()({onItem(e,t){const n=Object.hasOwn(e.input,t.name)?Qr(e.input[t.name]):jf();return t.parser(n,e.options)},step(e,t,n){if(n._tag==="Failure")return R7(e,e.ast,t.name,n);if(n.value._tag==="Some")np(e.out,t.name,n.value.value);else if(!Kw(t.type)){const r=new N4([t.name],new a4e(t.type.context?.annotations));if(e.options.errors==="all"){e.issues?e.issues.push(r):e.issues=[r];return}else return A9(new Vc(e.ast,e.oinput,[r]))}}});function z9(e,t,n){return new V9(Reflect.ownKeys(e).map(r=>new QU(r,e[r].ast)),[],n,t)}function JU(e){return e.ast}function eW(e,t,n){return new z4(e.map(JU),t,void 0,n)}function tW(e){switch(e._tag){case"Null":return["null"];case"Undefined":case"Void":return["undefined"];case"String":case"TemplateLiteral":return["string"];case"Number":return["number"];case"Boolean":return["boolean"];case"Symbol":case"UniqueSymbol":return["symbol"];case"BigInt":return["bigint"];case"Arrays":return["array"];case"ObjectKeyword":return["object","array","function"];case"Objects":return e.propertySignatures.length||e.indexSignatures.length?["object"]:["object","array"];case"Enum":return Array.from(new Set(e.enums.map(([,t])=>typeof t)));case"Literal":return[typeof e.literal];case"Union":return Array.from(new Set(e.types.flatMap(tW)));default:return["null","undefined","string","number","boolean","symbol","bigint","object","array","function"]}}function H9(e){switch(e._tag){default:return[];case"Declaration":{const t=e.annotations?.["~sentinels"];return Array.isArray(t)?t:[]}case"Objects":return e.propertySignatures.flatMap(t=>{const n=t.type;if(!Kw(n)){if(jw(n))return[{key:t.name,literal:n.literal}];if(I4e(n))return[{key:t.name,literal:n.symbol}]}return[]});case"Arrays":return e.elements.flatMap((t,n)=>jw(t)&&!Kw(t)?[{key:n,literal:t.literal}]:[]);case"Suspend":return H9(e.thunk())}}const i$=new WeakMap;function U4e(e){let t=i$.get(e);if(t)return t;t={};for(const n of e){const r=N1(n);if(E4e(r))continue;const i=tW(r),s=H9(r);t.byType??={};for(const o of i)(t.byType[o]??=[]).push(n);if(s.length>0){t.bySentinel??=new Map;for(const{key:o,literal:a}of s){let l=t.bySentinel.get(o);l||t.bySentinel.set(o,l=new Map);let c=l.get(a);c||l.set(a,c=[]),c.push(n)}}else{t.otherwise??={};for(const o of i)(t.otherwise[o]??=[]).push(n)}}return i$.set(e,t),t}function s$(e){return t=>{const n=N1(t);return n._tag==="Literal"?n.literal===e:n._tag==="UniqueSymbol"?n.symbol===e:!0}}function W4e(e,t){const n=U4e(t),r=e===null?"null":Array.isArray(e)?"array":typeof e;if(n.bySentinel){const i=n.otherwise?.[r]??[];if(r==="object"||r==="array"){for(const[s,o]of n.bySentinel)if(Object.hasOwn(e,s)){const a=o.get(e[s]);if(a)return[...a,...i].filter(s$(e))}}return i}return(n.byType?.[r]??[]).filter(s$(e))}let z4=class nW extends hu{_tag="Union";types;mode;encodingChecks;constructor(t,n,r,i,s,o,a){super(r,i,s,o),this.types=t,this.mode=n,this.encodingChecks=a}getParser(t){const n=this;return(r,i)=>{if(r._tag==="None")return Co(r);const s=r.value,o=W4e(s,n.types),a={ast:n,recur:t,oinput:r,input:s,out:void 0,successes:[],issues:void 0,options:i},l=YU(i?.concurrency),c=K4e(a,o,l);return c?Fxe(c,u=>a.out?Co(a.out):_o(new QM(n,s,a.issues??[]))):a.out?Co(a.out):_o(new QM(n,s,a.issues??[]))}}rebuild(t,n,r){const i=Ww(this.types,t);return i===this.types?this:new nW(i,this.mode,this.annotations,n,void 0,this.context,r)}recur(t){return this.rebuild(t,this.checks,this.encodingChecks)}flip(t){return this.rebuild(t,this.encodingChecks,this.checks)}getExpected(t){const n=this.annotations?.expected;if(typeof n=="string")return n;if(this.types.length===0)return"never";const r=this.types.map(i=>{const s=N1(i);switch(s._tag){case"Arrays":{const o=s.elements.filter(jw);if(o.length>0)return`${o$(s.isMutable)}[ ${o.map(a=>t(a)+a$(a.context?.isOptional)).join(", ")}, ... ]`;break}case"Objects":{const o=s.propertySignatures.filter(a=>jw(a.type));if(o.length>0)return`{ ${o.map(a=>`${o$(a.type.context?.isMutable)}${Fw(a.name)}${a$(a.type.context?.isOptional)}: ${t(a.type)}`).join(", ")}, ... }`;break}}return t(s)});return Array.from(new Set(r)).join(" | ")}};const K4e=L9()({onItem(e,t){return e.recur(t)(e.oinput,e.options)},step(e,t,n){if(n._tag==="Failure"){const r=OU(n.cause);if(O1(r))return n;e.issues?e.issues.push(r.success):e.issues=[r.success]}else{if(e.out&&e.ast.mode==="oneOf")return e.successes.push(t),A9(new c4e(e.ast,e.input,e.successes));if(e.out=n.value,e.successes.push(t),e.ast.mode==="anyOf")return xxe}}}),rW=new z4([new w2("Infinity"),new w2("-Infinity"),new w2("NaN")],"anyOf"),G4e=new aa(new z4([ZU,rW],"anyOf"),new Ba(UU(),rc(e=>globalThis.Number.isFinite(e)?e:globalThis.String(e))));function o$(e){return e?"":"readonly "}function a$(e){return e?"?":""}function iW(e){switch(e._tag){case"Declaration":case"Arrays":case"Objects":case"Union":return e.encodingChecks;default:return}}class Bw extends T4{_tag="Filter";run;annotations;aborted;constructor(t,n=void 0,r=!1){super(),this.run=t,this.annotations=n,this.aborted=r}annotate(t){return new Bw(this.run,{...this.annotations,...t},this.aborted)}abort(){return new Bw(this.run,this.annotations,!0)}and(t,n){return new Uw([this,t],n)}}class Uw extends T4{_tag="FilterGroup";checks;annotations;constructor(t,n=void 0){super(),this.checks=t,this.annotations=n}annotate(t){return new Uw(this.checks,{...this.annotations,...t})}and(t,n){return new Uw([this,t],n)}}function sW(e,t,n=!1){return new Bw((r,i,s)=>d4e(r,i,e(r,i,s)),t,n)}function Z4e(e,t){const n=e.source;return sW(r=>e.test(r),{expected:`a string matching the RegExp ${n}`,meta:{_tag:"isPattern",regExp:e},arbitrary:{constraint:{patterns:[e.source]}},...t})}function F1(e,t){const n=Object.getOwnPropertyDescriptors(e);return t(n),Object.create(Object.getPrototypeOf(e),n)}function To(e,t){return e.encoding===t?e:F1(e,n=>{n.encoding.value=t})}function oW(e,t){return e.context===t?e:F1(e,n=>{n.context.value=t})}function j9(e,t){if(e.checks){const n=e.checks[e.checks.length-1];return aW(e,pU(e.checks.slice(0,-1),n.annotate(t)))}return F1(e,n=>{n.annotations.value={...n.annotations.value,...t}})}function aW(e,t){if(e._tag==="Suspend"&&t!==void 0)throw new Error("Cannot add checks to Suspend");return e.checks===t?e:F1(e,n=>{n.checks.value=t})}function q9(e,t){return aW(e,e.checks?[...e.checks,...t]:t)}function lW(e,t){const n=e,r=n[n.length-1],i=t(r.to);return i!==r.to?pU(e.slice(0,e.length-1),new aa(i,r.transformation)):e}function Y4e(e){return t=>t.encoding?To(t,lW(t.encoding,e)):t}function X4e(e,t,n){const r=new aa(e,t);return To(n,n.encoding?[...n.encoding,r]:[r])}function Q4e(e,t){const n=Uxe(e),r=n?[...n,t]:[t];return j9(e,{brands:r})}function Ww(e,t){let n=!1;const r=new Array(e.length);for(let i=0;i<e.length;i++){const s=e[i],o=t(s);o!==s&&(n=!0),r[i]=o}return n?r:e}function cW(e,t){const n=e.context?new qw(e.context.isOptional,e.context.isMutable,e.context.defaultValue,{...e.context.annotations,...t}):new qw(!1,!1,void 0,t);return oW(e,n)}const J4e=Y4e(uW);function uW(e){const t=e.context?e.context.isOptional===!1?new qw(!0,e.context.isMutable,e.context.defaultValue,e.context.annotations):e.context:new qw(!0,!1);return J4e(oW(e,t))}function eke(e,t,n){return X4e(e,n,t)}function Kw(e){return e.context?.isOptional??!1}const Fv=Dd(e=>{if(e.encoding)return Fv(To(e,void 0));const t=e,n=t.recur?.(Fv)??t;return iW(n)?F1(n,r=>{r.encodingChecks.value=void 0}):n}),N1=Dd(e=>Fv(Rm(e)));function tke(e,t){const n=t,r=n.length,i=n[r-1],s=[new aa(Rm(To(e,void 0)),n[0].transformation.flip())];for(let a=1;a<r;a++)s.unshift(new aa(Rm(n[a-1].to),n[a].transformation.flip()));const o=Rm(i.to);return o.encoding?To(o,[...o.encoding,...s]):To(o,s)}const Rm=Dd(e=>{if(e.encoding)return tke(e,e.encoding);const t=e;return t.flip?.(Rm)??t.recur?.(Rm)??t});function dW(e){switch(e._tag){case"Undefined":return!0;case"Union":return e.types.some(dW);default:return!1}}function fW(e,t){return e.encodedParts.map(n=>rke(n,hW(n),t)).join("")}const nke=Dd(e=>new globalThis.RegExp(`^${fW(e,!0)}$`));function hW(e){switch(e._tag){case"Literal":return Wxe(globalThis.String(e.literal));case"String":return ske;case"Number":return N9;case"BigInt":return cke;case"TemplateLiteral":return fW(e,!1);case"Union":return e.types.map(hW).join("|")}}function rke(e,t,n){if(A4e(e)){if(!n)return`(?:${t})`}else if(!n)return t;return`(${t})`}function B9(e,t){const n=Pxe(t);return r=>r._tag==="None"?F4:r.value===t?n:_o(new R1(e,r))}function H4(e,t){return n=>n._tag==="None"?F4:t(n.value)?Co(n):_o(new R1(e,n))}function ike(e){function t(n){return n.encoding?To(n,lW(n.encoding,t)):e(n)}return Dd(t)}const mW=ike(e=>{switch(e._tag){default:return e;case"Number":return e.toCodecStringTree();case"Union":return e.recur(mW)}}),ske="[\\s\\S]*?",l$=new globalThis.RegExp(`^${N9}$`);function oke(e){return Z4e(l$,{expected:"a string representing a finite number",meta:{_tag:"isStringFinite",regExp:l$},...e})}const gW=q9(GU,[oke()]),ake=new aa(gW,KU),lke=new aa(new z4([gW,rW],"anyOf"),KU),cke="-?\\d+";function x2(e,t,n,r,i){for(let s=0;s<e.length;s++){const o=e[s];if(o._tag==="FilterGroup")x2(o.checks,t,n,r,i);else{const a=o.run(t,r,i);if(a&&(n.push(new s4e(t,o,a)),o.aborted||i?.errors!=="all"))return}}}const pW="~effect/Schema/Class",uke="~structural",j4=e=>e,ip=Dd(e=>{switch(e._tag){case"Declaration":{const t=e.annotations?.[pW];if(x9(t)){const n=t(e.typeParameters),r=ip(n.to);return To(e,r===n.to?[n]:[new aa(r,n.transformation)])}return e}case"Objects":case"Arrays":return e.recur(t=>{const n=t.context?.defaultValue;return n?To(ip(t),n):ip(t)});case"Suspend":return e.recur(ip);default:return e}});function U9(e){const t=ip(Fv(e.ast)),n=yW(t);return(r,i)=>n(r,i?.disableChecks?i?.parseOptions?{...i.parseOptions,disableChecks:!0}:{disableChecks:!0}:i?.parseOptions)}function vW(e){const t=U9(e);return(n,r)=>RU(zU(t(n,r)))}function dke(e){const t=U9(e);return(n,r)=>Hxe(O9(t(n,r),i=>new Error(i.toString(),{cause:i})))}function fke(e,t){const n=yW(e.ast);return t===void 0?n:(r,i)=>n(r,mke(t,i))}function hke(e,t){return pke(fke(e,t))}const mke=(e,t)=>t===void 0?e:{...e,...t};function yW(e){const t=k2(e);return(n,r)=>vf(t(Qr(n),r??M4e),i=>i._tag==="None"?_o(new qf(i)):Co(i.value))}function gke(e){return(t,n)=>zU(e(t,n))}function pke(e){const t=gke(e);return(n,r)=>RU(t(n,r))}const k2=Dd(e=>{let t;const n=iW(e),r=e.checks??n,i=(r?r[r.length-1].annotations:e.annotations)?.parseOptions;if(!e.context&&!e.encoding&&!e.checks&&!n)return(o,a)=>(t??=e.getParser(k2),i&&(a={...a,...i}),t(o,a));const s=D4e(e)||L4e(e)||T4e(e)&&e.typeParameters.length>0;return(o,a)=>{i&&(a={...a,...i});const l=e.encoding;let c;if(l){const d=l,f=d.length;for(let m=f-1;m>=0;m--){const g=d[m],p=g.to,y=k2(p);if(c=c?vf(c,v=>y(v,a)):y(o,a),g.transformation._tag==="Transformation"){const v=g.transformation.decode;c=vf(c,b=>v.run(b,a))}else c=g.transformation.decode(c,a)}c=O9(c,m=>new o4e(e,o,m))}t??=e.getParser(k2);let u=c?vf(c,d=>t(d,a)):t(o,a);if(n&&!a?.disableChecks&&(u=vf(u,d=>{if(fb(o)&&fb(d)){const f=[];if(x2(n,o.value,f,e,a),M5(f))return _o(new Vc(e,o,f))}return Co(d)})),e.checks&&!a?.disableChecks){const d=e.checks;a?.errors==="all"&&s&&fb(o)&&(u=jxe(u,f=>{const m=[];x2(d.filter(p=>p.annotations?.[uke]),o.value,m,e,a);const g=M5(m)?f._tag==="Composite"&&f.ast===e?new Vc(e,f.actual,[...f.issues,...m]):new Vc(e,o,[f,...m]):f;return _o(g)})),u=vf(u,f=>{if(fb(f)){const m=f.value,g=[];if(x2(d,m,g,e,a),M5(g))return _o(new Vc(e,f,g))}return Co(f)})}return u}}),F7="~effect/Schema/Schema",vke={[F7]:F7,pipe(){return Tl(this,arguments)},annotate(e){return this.rebuild(j9(this.ast,e))},annotateKey(e){return this.rebuild(cW(this.ast,e))},check(...e){return this.rebuild(q9(this.ast,e))}};function bW(e,t){const n=Object.create(vke);return t&&Object.assign(n,t),n.ast=e,n.rebuild=r=>bW(r,t),n.makeEffect=fbe(U9(n),O9(r=>new yke(r))),n.make=dke(n),n.makeOption=vW(n),n}const c$="~effect/Schema/SchemaError";class yke{[c$]=c$;_tag="SchemaError";name="SchemaError";issue;constructor(t){this.issue=t}get message(){return this.issue.toString()}toString(){return`SchemaError(${this.message})`}}const qp=F7;function bke(){return(e,t,n)=>la(new V4(e.map(JU),r=>t(r.map(i=>la(i))),n))}function wke(e,t){return bke()([],()=>(n,r)=>e(n)?Co(n):_o(new R1(r,Qr(n))),t)}const xke=hke,la=bW;function kke(e){return hs(e,qp)&&e[qp]===qp}const wW=j4(e=>la(uW(e.ast),{schema:e})),Ske=j4(e=>wW(Ike(e))),Cke=j4(e=>la(Fv(e.ast),{schema:e})),_ke=la(V4e),Tke=la(F4e),Ad=la(GU),xW=la(ZU);function W9(e,t){return la(e,{fields:t,mapFields(n,r){const i=n(this.fields);return W9(z9(i,r?.unsafePreserveChecks?this.ast.checks:void 0),i)}})}function K9(e){return W9(z9(e,void 0),e)}function kW(e,t){return la(e,{members:t,mapMembers(n,r){const i=n(this.members);return kW(eW(i,this.ast.mode,r?.unsafePreserveChecks?this.ast.checks:void 0),i)}})}function Eke(e,t){return kW(eW(e,"anyOf",void 0),e)}const Ike=j4(e=>Eke([e,Tke]));function Og(e){return t=>la(Q4e(t.ast,e),{schema:t,identifier:e})}function q4(e,t){return n=>la(eke(n.ast,e.ast,t?WU(t):S4e()),{from:n,to:e})}function Dke(){return(e,t)=>new aa(e.ast,WU(t))}const V1=sW;function SW(e,t){const n=JSON.stringify(e);return V1(r=>r.startsWith(e),{expected:`a string starting with ${n}`,meta:{_tag:"isStartsWith",startsWith:e,regExp:new globalThis.RegExp(`^${e}`)},arbitrary:{constraint:{patterns:[`^${e}`]}},...t})}function Lke(e){return V1(t=>globalThis.Number.isFinite(t),{expected:"a finite number",meta:{_tag:"isFinite"},arbitrary:{constraint:{noInfinity:!0,noNaN:!0}},...e})}function Ake(e){const t=u2e(e.order),n=e.formatter??Yi;return(r,i)=>V1(s=>t(s,r),{expected:`a value greater than ${n(r)}`,arbitrary:{constraint:{ordered:{order:e.order,minimum:r,exclusiveMinimum:!0}}},...e.annotate?.(r),...i})}function Mke(e){const t=d2e(e.order),n=e.formatter??Yi;return(r,i)=>V1(s=>t(s,r),{expected:`a value greater than or equal to ${n(r)}`,arbitrary:{constraint:{ordered:{order:e.order,minimum:r}}},...e.annotate?.(r),...i})}const $ke=Ake({order:mU,annotate:e=>({meta:{_tag:"isGreaterThan",exclusiveMinimum:e}})}),Pke=Mke({order:mU,annotate:e=>({meta:{_tag:"isGreaterThanOrEqualTo",minimum:e}})});function Oke(e){return V1(t=>globalThis.Number.isSafeInteger(t),{expected:"an integer",meta:{_tag:"isInt"},arbitrary:{constraint:{integer:!0}},...e})}function Rke(e,t,n,r){const i={...n};if(delete i.valid,(n?.valid||e?.valid)&&(i.noInvalidDate=!0),t?.minimum!==void 0){const s=r===void 0?t.minimum:r(t.minimum),o=t.exclusiveMinimum?new globalThis.Date(s.getTime()+1):s;(i.min===void 0||o.getTime()>i.min.getTime())&&(i.min=o)}if(t?.maximum!==void 0){const s=r===void 0?t.maximum:r(t.maximum),o=t.exclusiveMaximum?new globalThis.Date(s.getTime()-1):s;(i.max===void 0||o.getTime()<i.max.getTime())&&(i.max=o)}return i}const Fke=Nke(_ke);function Nke(e){return Ad.annotate({expected:"a string that will be decoded as JSON",contentMediaType:"application/json",contentSchema:N1(e.ast)}).pipe(q4(e,C4e))}const Vke=xW.check(Lke()),CW=xW.check(Oke()),zke=wke(e=>Kxe(e)&&Gxe(e),{typeConstructor:{_tag:"effect/DateTime.Utc"},generation:{runtime:"Schema.DateTimeUtc",Type:"DateTime.Utc",importDeclaration:'import * as DateTime from "effect/DateTime"'},expected:"DateTime.Utc",toCodecJson:()=>Dke()(Ad,_4e),toArbitrary:()=>(e,t)=>e.date(Rke(t?.constraint,t?.constraint?.ordered?.order===Yxe?t.constraint.ordered:void 0,{valid:!0},t4e)).map(n=>Xxe(n)),toFormatter:()=>e=>e.toString(),toEquivalence:()=>Zxe}),Hke=globalThis.Symbol.for("immer-draftable");function _W(e,t,n,r,i){const s=qke(n,t,r),o=TW(t),a=class extends e{constructor(...[l,c]){l=l??{};const u=n.make(l,c);super({...l,...u},{...c,disableChecks:!0})}static[qp]=qp;get[o](){return o}static[Hke]=!0;static identifier=t;static fields=n.fields;static get ast(){return s(this).ast}static pipe(){return Tl(this,arguments)}static rebuild(l){return s(this).rebuild(l)}static make(l,c){return new this(l,c)}static makeOption(l,c){return vW(s(this))(l??{},c)}static makeEffect(l,c){return s(this).makeEffect(l??{},c)}static annotate(l){return this.rebuild(j9(this.ast,l))}static annotateKey(l){return this.rebuild(cW(this.ast,l))}static check(...l){return this.rebuild(q9(this.ast,l))}static extend(l){return(c,u)=>{const d={...n.fields,...c};return _W(this,l,W9(z9(d,n.ast.checks,{identifier:l}),d),u,i)}}static mapFields(l,c){return n.mapFields(l,c)}};return i!==void 0&&Object.assign(a.prototype,i(t)),a}function jke(e){return new Ba(rc(t=>new e(t)),Hw())}function TW(e){return`~effect/Schema/Class/${e}`}function qke(e,t,n){let r;return i=>{if(r===void 0){const s=jke(i),o=la(new V4([e.ast],()=>(a,l)=>a instanceof i||hs(a,TW(t))?Co(a):_o(new R1(l,Qr(a))),{identifier:t,[pW]:([a])=>new aa(a,s),toCodec:([a])=>new aa(a.ast,s),toArbitrary:([a])=>()=>({arbitrary:a.arbitrary.map(l=>new i(l)),terminal:a.terminal?.map(l=>new i(l))}),toFormatter:([a])=>l=>`${i.identifier}(${a(l)})`,"~sentinels":H9(e.ast),...n}));r=e.pipe(q4(o,s))}return r}}function Bke(e){return kke(e)}const Uke=e=>(t,n)=>{const r=Bke(t)?t:K9(t);return _W(FU,e,r,n,i=>({toString(){return`${i}(${Yi({...this})})`}}))},EW=e=>e!=null&&(e=Object.getPrototypeOf(e),e===Array.prototype||e===Object.prototype);function IW(e,t,n){for(const[r,i]of Object.entries(t)){const s=`${n}.${r}`;e[s]=i,EW(i)&&IW(e,i,s)}}function DW(e){const t={...e};for(const[n,r]of Object.entries(e))EW(r)&&IW(t,r,n);return t}const Wke=(e,t)=>{if(t)for(const[n,r]of Object.entries(t))e=e.replace(new RegExp(`{{\\s*${n}\\s*}}`,"g"),r);return e},Kke=(e=>e);function Gke(e,t=Kke){return(n,...r)=>{n[0]==="."&&(n=n.slice(1));const i=e()?.[n];switch(typeof i){case"function":return i(...r);case"string":return t(i,r[0]);default:return i}}}const{use:Tr,provider:Zke}=Gr({name:"Platform",init:e=>e.value});function Yke(e,t={}){const n=t.storage||globalThis.localStorage,r=t.name||`storage-${nr()}`;if(!n)return[e[0],e[1],null];const i=t.storageOptions,s=t.serialize||JSON.stringify.bind(JSON),o=t.deserialize||JSON.parse.bind(JSON),a=n.getItem(r,i),l=typeof e[0]=="function"?u=>{try{const d=o(u);e[1](()=>d)}catch{}}:u=>{try{const d=o(u);e[1](kn(d))}catch{}};let c=!0;if(a instanceof Promise?a.then(u=>c&&u&&l(u)):a&&l(a),typeof t.sync?.[0]=="function"){const u=typeof e[0]=="function"?e[0]:()=>e[0];t.sync[0](d=>{d.key!==r||(d.url||globalThis.location.href)!==globalThis.location.href||d.newValue===s(Wt(u))||l(d.newValue)})}return[e[0],typeof e[0]=="function"?u=>{const d=e[1](u),f=u!=null?s(d):u;return t.sync?.[1](r,f),f!=null?n.setItem(r,f,i):n.removeItem(r,i),c=!1,d}:(...u)=>{e[1](...u);const d=s(Wt(()=>e[0]));t.sync?.[1](r,d),n.setItem(r,d,i),c=!1},a]}const Xke=e=>{if(e.length!==2)return!1;const t=e.charCodeAt(0);return e[1]===":"&&(t>=65&&t<=90||t>=97&&t<=122)},Qke=e=>{for(let t=e.length-1;t>=0;t--)if(e[t]!=="/")return e.slice(0,t+1);return""},Jke=e=>e[1]===":"||e.startsWith("\\\\"),rt=e=>{const t=Jke(e)?e.replaceAll("\\","/"):e,n=Qke(t);return!n&&t.startsWith("/")?"/":Xke(n)?`${n}/`:n},id="\0";function sg(e,t){if(t.includes(id))throw new Error(`${e} cannot contain null bytes`);return t}function LW(e,t){return[sg("Server scope",e),...t.map(n=>sg("Scoped key part",n))].join(id)}const na={local:"local",fromServerKey(e,t){return sg("Server scope",e==="sidecar"||e===t?na.local:e)}},og={fromRoute(e,t){return sg("Session route",`${e??""}${t?"/"+t:""}`)},fromLegacy(e){return sg("Legacy session route",e)}},fd={from(e,t){return LW(e,[t])},route(e){const t=e.lastIndexOf(id);return og.fromLegacy(t===-1?e:e.slice(t+1))},scope(e){const t=e.indexOf(id);return t===-1?na.local:sg("Stored server scope",e.slice(0,t))}},fc={from(e,...t){return LW(e,t)},prefix(e,...t){return`${fc.from(e,...t)}${id}`}};function u$(e){if(!e||typeof e!="object"||Array.isArray(e))return e;const t=Object.entries(e);if(t.every(([r])=>r.includes(id)))return e;const n=Object.fromEntries(t.filter(([r])=>r.includes(id)));for(const[r,i]of t){if(r.includes(id))continue;const s=fd.from(na.local,og.fromLegacy(r));s in n||(n[s]=i)}return n}const e3e="default.dat",N7="opencode.global.dat",t3e="opencode.window",n3e="opencode.",AW=new Map,r3e=500,MW=8*1024*1024,Yl=new Map,Gw={bytes:0};function Rg(e){const t=Yl.get(e);t&&(Gw.bytes-=t.bytes,Yl.delete(e))}function i3e(){for(;;){if(Yl.size<=r3e&&Gw.bytes<=MW)return;const e=Yl.keys().next().value;if(!e)return;Rg(e)}}function Nv(e,t){const n=t.length*2;if(n>MW){Rg(e);return}const r=Yl.get(e);r&&(Gw.bytes-=r.bytes),Yl.delete(e),Yl.set(e,{value:t,bytes:n}),Gw.bytes+=n,i3e()}function $W(e){const t=Yl.get(e);if(t)return Yl.delete(e),Yl.set(e,t),t.value}function Fm(e){return AW.get(e)===!0}function Gu(e){AW.set(e,!0)}function V7(e){if(e instanceof DOMException)return e.name==="QuotaExceededError"||e.name==="NS_ERROR_DOM_QUOTA_REACHED"||e.name==="QUOTA_EXCEEDED_ERR"||e.code===22||e.code===1014;if(!e||typeof e!="object")return!1;const t=e.name;if(t==="QuotaExceededError"||t==="NS_ERROR_DOM_QUOTA_REACHED"||t&&/quota/i.test(t))return!0;const n=e.code;if(n===22||n===1014)return!0;const r=e.message;return typeof r!="string"?!1:!!/quota/i.test(r)}function s3e(e,t,n){const r=e.length,i=Array.from({length:r},(o,a)=>a),s=[];for(const o of i){const a=e.key(o);if(!a||!a.startsWith(n3e)||a===t)continue;const l=e.getItem(a);s.push({key:a,size:l?.length??0})}s.sort((o,a)=>a.size-o.size);for(const o of s){e.removeItem(o.key),Rg(o.key);try{return e.setItem(t,n),Nv(t,n),!0}catch(a){if(!V7(a))throw a}}return!1}function PW(e,t,n){try{return e.setItem(t,n),Nv(t,n),!0}catch(i){if(!V7(i))throw i}try{return e.removeItem(t),Rg(t),e.setItem(t,n),Nv(t,n),!0}catch(i){if(!V7(i))throw i}return s3e(e,t,n)}function o3e(e){return JSON.parse(JSON.stringify(e))}function d$(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function OW(e,t){if(t===void 0)return e;if(t===null)return t;if(Array.isArray(e))return Array.isArray(t)?t:e;if(d$(e)){if(!d$(t))return e;const n={...e};for(const r of Object.keys(t))r in e?n[r]=OW(e[r],t[r]):n[r]=t[r];return n}return t}function a3e(e){try{return JSON.parse(e)}catch{return}}function ag(e,t,n){const r=a3e(t);if(r===void 0)return;const i=n?n(r):r,s=OW(e,i);return JSON.stringify(s)}function l3e(e){const t=e.storage.getItem(e.key);if(t===null)return;const n=ag(e.defaults,t,e.migrate);return n===void 0?(e.storage.removeItem(e.key),null):(t!==n&&e.storage.setItem(e.key,n),n)}function c3e(e){for(const t of e.stores){const n=t.getItem(e.key);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){t.removeItem(e.key);continue}return e.current.setItem(e.key,r),t.removeItem(e.key),r}if(!e.legacyStore)return null;for(const t of e.keys){const n=e.legacyStore.getItem(t);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){e.legacyStore.removeItem(t);continue}return e.current.setItem(e.key,r),e.legacyStore.removeItem(t),r}return null}async function u3e(e){const t=await e.storage.getItem(e.key);if(t===null)return;const n=ag(e.defaults,t,e.migrate);return n===void 0?(await e.storage.removeItem(e.key).catch(()=>{}),null):(t!==n&&await e.storage.setItem(e.key,n),n)}async function f$(e,t){try{await e.removeItem(t)}catch{}}async function d3e(e){for(const t of e.stores){const n=await t.getItem(e.key);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){await f$(t,e.key);continue}return await e.current.setItem(e.key,r),await t.removeItem(e.key),r}if(!e.legacyStore)return null;for(const t of e.keys){const n=await e.legacyStore.getItem(t);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){await f$(e.legacyStore,t);continue}return await e.current.setItem(e.key,r),await e.legacyStore.removeItem(t),r}return null}function Bp(e){const t=(e.slice(0,12)||"workspace").replace(/[^a-zA-Z0-9._-]/g,"-"),n=so(e)??"0";return`opencode.workspace.${t}.${n}.dat`}function f3e(e){const t=(e.slice(0,12)||"draft").replace(/[^a-zA-Z0-9._-]/g,"-"),n=so(e)??"0";return`opencode.draft.${t}.${n}.dat`}function h3e(e){const t=(e||"browser").replace(/[^a-zA-Z0-9._-]/g,"-");return`${t3e}.${t}.dat`}function m3e(e){const t=Bp(rt(e)),n=new Set,r=Bp(e);r!==t&&n.add(r);const i=rt(e);if(i.length>=3&&i[1]===":"&&i[2]==="/"){const o=Bp(i.replaceAll("/","\\"));o!==t&&n.add(o)}if(n.size!==0)return[...n]}function hb(e,t,n,r){return e!==na.local?{storage:Bp(fc.from(e,rt(t))),key:n}:{storage:Bp(rt(t)),legacyStorageNames:m3e(t),key:n,legacy:r}}function Zw(e){const t=`${e}:`,n=`prefix:${e}`,r=i=>t+i;return{getItem:i=>{const s=r(i),o=$W(s);if(Fm(n))return o??null;const a=(()=>{try{return localStorage.getItem(s)}catch{return Gu(n),null}})();return a===null?o??null:(Nv(s,a),a)},setItem:(i,s)=>{const o=r(i);if(!Fm(n)){try{if(PW(localStorage,o,s))return}catch{Gu(n);return}Gu(n)}},removeItem:i=>{const s=r(i);if(Rg(s),!Fm(n))try{localStorage.removeItem(s)}catch{Gu(n)}}}}function z7(){const e="direct";return{getItem:t=>{const n=$W(t);if(Fm(e))return n??null;const r=(()=>{try{return localStorage.getItem(t)}catch{return Gu(e),null}})();return r===null?n??null:(Nv(t,r),r)},setItem:(t,n)=>{if(!Fm(e)){try{if(PW(localStorage,t,n))return}catch{Gu(e);return}Gu(e)}},removeItem:t=>{if(Rg(t),!Fm(e))try{localStorage.removeItem(t)}catch{Gu(e)}}}}const g3e=["prompt","comments","file-view","layout"];function p3e(){return g3e}const Jn={global(e,t){return{storage:N7,key:e,legacy:t}},window(e,t){return{scope:"window",key:e,legacy:t}},draft(e,t,n){return{storage:f3e(e),key:`draft:${t}`,legacy:n}},serverGlobal(e,t,n){return e===na.local?Jn.global(t,n):{storage:N7,key:fc.from(e,t)}},workspace(e,t,n){return hb(na.local,e,`workspace:${t}`,n)},serverWorkspace(e,t,n,r){return hb(e,t,`workspace:${n}`,r)},session(e,t,n,r){return hb(na.local,e,`session:${t}:${n}`,r)},serverSession(e,t,n,r,i){return hb(e,t,`session:${n}:${r}`,i)},scoped(e,t,n,r){return t?Jn.session(e,t,n,r):Jn.workspace(e,n,r)},serverScoped(e,t,n,r,i){return n?Jn.serverSession(e,t,n,r,i):Jn.serverWorkspace(e,t,r,i)}};function v3e(e,t){if(e.scope!=="window")return e;if(t.platform==="desktop"&&!t.windowID)return{...e,storage:N7};const n=t.platform==="desktop"?t.windowID??"browser":"browser";return{...e,storage:h3e(n)}}function Vv(e,t){if(t?.platform==="desktop"&&!!t.storage){t.storage?.(e.storage)?.removeItem(e.key);for(const r of e.legacyStorageNames??[])t.storage?.(r)?.removeItem(e.key);return}if(!e.storage){z7().removeItem(e.key);return}Zw(e.storage).removeItem(e.key);for(const r of e.legacyStorageNames??[])Zw(r).removeItem(e.key)}function _r(e,t){const n=Tr(),r=v3e(typeof e=="string"?{key:e}:e,n),i=o3e(t[0]),s=r.legacy??[],o=n.platform==="desktop"&&!!n.storage,a=o?n.storage?.(r.storage):r.storage?Zw(r.storage):z7(),l=o?r.storage?n.storage?.(e3e):n.storage?.():z7(),c=r.legacyStorageNames??[],u=(()=>{if(!o){const x=a,k=l,C=c.map(Zw);return{getItem:_=>{const L=l3e({storage:x,key:_,defaults:i,migrate:r.migrate});return L!==void 0?L:c3e({current:x,legacyStore:k,stores:C,keys:s,key:_,defaults:i,migrate:r.migrate})},setItem:(_,L)=>{x.setItem(_,L)},removeItem:_=>{x.removeItem(_)}}}const y=a,v=l,b=c.map(x=>n.storage?.(x)).filter(x=>!!x);return{getItem:async x=>{const k=await u3e({storage:y,key:x,defaults:i,migrate:r.migrate});return k!==void 0?k:d3e({current:y,legacyStore:v,stores:b,keys:s,key:x,defaults:i,migrate:r.migrate})},setItem:async(x,k)=>{await y.setItem(x,k)},removeItem:async x=>{await y.removeItem(x)}}})(),[d,f,m]=Yke(t,{name:r.key,storage:u}),g=m instanceof Promise,[p]=ai(()=>m,async y=>(y instanceof Promise&&await y,!0),{initialValue:!g});return[d,f,m,Object.assign(()=>p.loading?!1:p.latest===!0,{promise:m instanceof Promise?m:void 0})]}const RW={"command.category.suggested":"Suggested","command.category.view":"View","command.category.project":"Project","command.category.provider":"Provider","command.category.server":"Server","command.category.session":"Session","command.category.theme":"Theme","command.category.language":"Language","command.category.file":"File","command.category.context":"Context","command.category.terminal":"Terminal","command.category.model":"Model","command.category.mcp":"MCP","command.category.agent":"Agent","command.category.permissions":"Permissions","command.category.workspace":"Workspace","command.category.settings":"Settings","theme.scheme.system":"System","theme.scheme.light":"Light","theme.scheme.dark":"Dark","command.sidebar.toggle":"Toggle sidebar","command.project.open":"Open project","command.project.previous":"Previous project","command.project.next":"Next project","command.project.index":"Switch to project {{index}}","command.provider.connect":"Connect provider","command.server.switch":"Switch server","command.settings.open":"Open settings","command.session.previous":"Previous session","command.session.next":"Next session","command.session.previous.unseen":"Previous unread session","command.session.next.unseen":"Next unread session","command.session.archive":"Archive session","command.palette":"Command palette","command.theme.cycle":"Cycle theme","command.theme.set":"Use theme: {{theme}}","command.theme.scheme.cycle":"Cycle color scheme","command.theme.scheme.set":"Use color scheme: {{scheme}}","command.language.cycle":"Cycle language","command.language.set":"Use language: {{language}}","command.session.new":"New session","command.file.open":"Open file","command.tab.close":"Close tab","command.tab.reopenClosed":"Reopen closed tab","command.context.addSelection":"Add selection to context","command.context.addSelection.description":"Add selected lines from the current file","command.input.focus":"Focus input","command.terminal.toggle":"Toggle terminal","command.fileTree.toggle":"Toggle file tree","command.review.toggle":"Toggle review","command.terminal.new":"New terminal","command.terminal.new.description":"Create a new terminal tab","command.steps.toggle":"Toggle steps","command.steps.toggle.description":"Show or hide steps for the current message","command.message.previous":"Previous message","command.message.previous.description":"Go to the previous user message","command.message.next":"Next message","command.message.next.description":"Go to the next user message","command.model.choose":"Choose model","command.model.choose.description":"Select a different model","command.mcp.toggle":"Toggle MCPs","command.mcp.toggle.description":"Toggle MCPs","command.agent.cycle":"Cycle agent","command.agent.cycle.description":"Switch to the next agent","command.agent.cycle.reverse":"Cycle agent backwards","command.agent.cycle.reverse.description":"Switch to the previous agent","command.model.variant.cycle":"Cycle thinking effort","command.model.variant.cycle.description":"Switch to the next effort level","command.prompt.mode.shell":"Shell","command.prompt.mode.normal":"Prompt","command.permissions.autoaccept.enable":"Auto-accept permissions","command.permissions.autoaccept.disable":"Stop auto-accepting permissions","command.workspace.toggle":"Toggle workspaces","command.workspace.toggle.description":"Enable or disable multiple workspaces in the sidebar","command.session.undo":"Undo","command.session.undo.description":"Undo the last message","command.session.redo":"Redo","command.session.redo.description":"Redo the last undone message","command.session.compact":"Compact session","command.session.compact.description":"Summarize the session to reduce context size","command.session.fork":"Fork from message","command.session.fork.description":"Create a new session from a previous message","command.session.share":"Share session","command.session.share.description":"Share this session and copy the URL to clipboard","command.session.unshare":"Unshare session","command.session.unshare.description":"Stop sharing this session","palette.search.placeholder":"Search files, commands, and sessions","palette.search.placeholder.home":"Search commands and sessions","palette.empty":"No results found","palette.group.commands":"Commands","palette.group.files":"Files","dialog.provider.search.placeholder":"Search providers","dialog.provider.empty":"No providers found","dialog.provider.group.popular":"Popular","dialog.provider.group.other":"Other","dialog.provider.custom.label":"Custom OpenAI-compatible provider","dialog.provider.tag.recommended":"Recommended","dialog.provider.opencode.note":"Curated models including Claude, GPT, Gemini and more","dialog.provider.opencode.tagline":"Reliable optimized models","dialog.provider.opencodeGo.tagline":"Low cost subscription for everyone","dialog.provider.anthropic.note":"Direct access to Claude models, including Pro and Max","dialog.provider.copilot.note":"AI models for coding assistance via GitHub Copilot","dialog.provider.openai.note":"GPT models for fast, capable general AI tasks","dialog.provider.google.note":"Gemini models for fast, structured responses","dialog.provider.openrouter.note":"Access all supported models from one provider","dialog.provider.vercel.note":"Unified access to AI models with smart routing","dialog.model.select.title":"Select model","dialog.model.search.placeholder":"Search models","dialog.model.empty":"No model results","dialog.model.manage":"Manage models","dialog.model.manage.description":"Customize which models appear in the model selector.","dialog.model.manage.provider.toggle":"Toggle all {{provider}} models","dialog.model.unpaid.freeModels.title":"Free models provided by midsomar","dialog.model.unpaid.addMore.title":"Add more models from popular providers","dialog.model.unpaid.viewMoreProviders":"See 70+ more providers","dialog.provider.viewAll":"Show more providers","provider.connect.title":"Connect {{provider}}","provider.connect.title.anthropicProMax":"Login with Claude Pro/Max","provider.connect.selectMethod":"Select login method for {{provider}}.","provider.connect.method.apiKey":"API key","provider.connect.status.inProgress":"Authorization in progress...","provider.connect.status.waiting":"Waiting for authorization...","provider.connect.status.failed":"Authorization failed: {{error}}","provider.connect.apiKey.description":"Enter your {{provider}} API key to connect your account and use {{provider}} models in midsomar.","provider.connect.apiKey.label":"{{provider}} API key","provider.connect.apiKey.placeholder":"API key","provider.connect.apiKey.required":"API key is required","provider.connect.opencodeZen.line1":"midsomar Zen gives you access to a curated set of reliable optimized models for coding agents.","provider.connect.opencodeZen.line2":"With a single API key you'll get access to models such as Claude, GPT, Gemini, GLM and more.","provider.connect.opencodeZen.visit.prefix":"Visit ","provider.connect.opencodeZen.visit.link":"opencode.ai/zen","provider.connect.opencodeZen.visit.suffix":" to collect your API key.","provider.connect.oauth.code.visit.prefix":"Visit ","provider.connect.oauth.code.visit.link":"this link","provider.connect.oauth.code.visit.suffix":" to collect your authorization code to connect your account and use {{provider}} models in midsomar.","provider.connect.oauth.code.label":"{{method}} authorization code","provider.connect.oauth.code.placeholder":"Authorization code","provider.connect.oauth.code.required":"Authorization code is required","provider.connect.oauth.code.invalid":"Invalid authorization code","provider.connect.oauth.auto.visit.prefix":"Visit ","provider.connect.oauth.auto.visit.link":"this link","provider.connect.oauth.auto.visit.suffix":" and enter the code below to connect your account and use {{provider}} models in midsomar.","provider.connect.oauth.auto.confirmationCode":"Confirmation code","provider.connect.toast.connected.title":"{{provider}} connected","provider.connect.toast.connected.description":"{{provider}} models are now available to use.","provider.custom.title":"Custom provider","provider.custom.description.prefix":"Configure an OpenAI-compatible provider. See the ","provider.custom.description.link":"provider config docs","provider.custom.description.suffix":".","provider.custom.field.providerID.label":"Provider ID","provider.custom.field.providerID.placeholder":"myprovider","provider.custom.field.providerID.description":"Lowercase letters, numbers, hyphens, or underscores","provider.custom.field.name.label":"Display name","provider.custom.field.name.placeholder":"My AI Provider","provider.custom.field.baseURL.label":"Base URL","provider.custom.field.baseURL.placeholder":"https://api.myprovider.com/v1","provider.custom.field.apiKey.label":"API key","provider.custom.field.apiKey.placeholder":"API key","provider.custom.field.apiKey.description":"Optional. Leave empty if you manage auth via headers.","provider.custom.models.label":"Models","provider.custom.models.id.label":"ID","provider.custom.models.id.placeholder":"model-id","provider.custom.models.name.label":"Name","provider.custom.models.name.placeholder":"Display Name","provider.custom.models.remove":"Remove model","provider.custom.models.add":"Add model","provider.custom.headers.label":"Headers (optional)","provider.custom.headers.key.label":"Header","provider.custom.headers.key.placeholder":"Header-Name","provider.custom.headers.value.label":"Value","provider.custom.headers.value.placeholder":"value","provider.custom.headers.remove":"Remove header","provider.custom.headers.add":"Add header","provider.custom.error.providerID.required":"Provider ID is required","provider.custom.error.providerID.format":"Use lowercase letters, numbers, hyphens, or underscores","provider.custom.error.providerID.exists":"That provider ID already exists","provider.custom.error.name.required":"Display name is required","provider.custom.error.baseURL.required":"Base URL is required","provider.custom.error.baseURL.format":"Must start with http:// or https://","provider.custom.error.required":"Required","provider.custom.error.duplicate":"Duplicate","provider.disconnect.toast.disconnected.title":"{{provider}} disconnected","provider.disconnect.toast.disconnected.description":"{{provider}} models are no longer available.","model.tag.free":"Free","model.tag.latest":"Latest","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"text","model.input.image":"image","model.input.audio":"audio","model.input.video":"video","model.input.pdf":"pdf","model.tooltip.allows":"Allows: {{inputs}}","model.tooltip.context.label":"Context","model.tooltip.inputs":"Inputs","model.tooltip.model":"Model","model.tooltip.provider":"Provider","model.tooltip.reasoning":"Reasoning","model.tooltip.reasoning.allowed":"Allows reasoning","model.tooltip.reasoning.none":"No reasoning","model.tooltip.context":"Context limit {{limit}}","common.search.placeholder":"Search","common.goBack":"Navigate back","common.goForward":"Navigate forward","common.loading":"Loading","common.loading.ellipsis":"...","common.cancel":"Cancel","common.clear":"Clear","common.open":"Open","common.connect":"Connect","common.disconnect":"Disconnect","common.continue":"Continue","common.submit":"Submit","common.save":"Save","common.saving":"Saving...","common.default":"Default","common.attachment":"attachment","prompt.placeholder.shell":"Enter shell command... {{example}}","prompt.placeholder.normal":'Ask anything... "{{example}}"',"prompt.placeholder.simple":"Ask anything...","prompt.placeholder.summarizeComments":"Summarize comments…","prompt.placeholder.summarizeComment":"Summarize comment…","prompt.mode.shell":"Shell","prompt.mode.normal":"Prompt","prompt.mode.shell.exit":"esc to exit","session.child.promptDisabled":"Subagent sessions cannot be prompted.","session.child.backToParent":"Back to main session.","prompt.example.1":"Fix a TODO in the codebase","prompt.example.2":"What is the tech stack of this project?","prompt.example.3":"Fix broken tests","prompt.example.4":"Explain how authentication works","prompt.example.5":"Find and fix security vulnerabilities","prompt.example.6":"Add unit tests for the user service","prompt.example.7":"Refactor this function to be more readable","prompt.example.8":"What does this error mean?","prompt.example.9":"Help me debug this issue","prompt.example.10":"Generate API documentation","prompt.example.11":"Optimize database queries","prompt.example.12":"Add input validation","prompt.example.13":"Create a new component for...","prompt.example.14":"How do I deploy this project?","prompt.example.15":"Review my code for best practices","prompt.example.16":"Add error handling to this function","prompt.example.17":"Explain this regex pattern","prompt.example.18":"Convert this to TypeScript","prompt.example.19":"Add logging throughout the codebase","prompt.example.20":"What dependencies are outdated?","prompt.example.21":"Help me write a migration script","prompt.example.22":"Implement caching for this endpoint","prompt.example.23":"Add pagination to this list","prompt.example.24":"Create a CLI command for...","prompt.example.25":"How do environment variables work here?","prompt.popover.emptyResults":"No matching results","prompt.popover.emptyCommands":"No matching commands","prompt.dropzone.label":"Drop images, PDFs, or text files here","prompt.dropzone.file.label":"Drop to @mention file","prompt.slash.badge.custom":"custom","prompt.slash.badge.skill":"skill","prompt.slash.badge.mcp":"mcp","prompt.context.active":"active","prompt.context.includeActiveFile":"Include active file","prompt.context.removeActiveFile":"Remove active file from context","prompt.context.removeFile":"Remove file from context","prompt.action.attachFile":"Add files","prompt.menu.addImagesAndFiles":"Add files and more","prompt.menu.imagesAndFiles":"Images and files","prompt.menu.commands":"Commands","prompt.menu.context":"Context","prompt.menu.shellCommand":"Shell command","prompt.attachment.remove":"Remove attachment","prompt.action.send":"Send","prompt.action.stop":"Stop","prompt.toast.pasteUnsupported.title":"Unsupported attachment","prompt.toast.pasteUnsupported.description":"Only images, PDFs, or text files can be attached here.","prompt.toast.modelAgentRequired.title":"Select an agent and model","prompt.toast.modelAgentRequired.description":"Choose an agent and model before sending a prompt.","prompt.toast.worktreeCreateFailed.title":"Failed to create worktree","prompt.toast.sessionCreateFailed.title":"Failed to create session","prompt.toast.shellSendFailed.title":"Failed to send shell command","prompt.toast.commandSendFailed.title":"Failed to send command","prompt.toast.promptSendFailed.title":"Failed to send prompt","prompt.toast.promptSendFailed.description":"Unable to retrieve session","dialog.mcp.title":"MCPs","dialog.mcp.description":"{{enabled}} of {{total}} enabled","dialog.mcp.empty":"No MCPs configured","dialog.lsp.empty":"LSPs auto-detected from file types","dialog.plugins.empty":"Plugins configured in opencode.json","mcp.status.connected":"connected","mcp.status.failed":"failed","mcp.status.needs_auth":"needs auth","mcp.status.disabled":"disabled","mcp.auth.clickToAuthenticate":"Click to authenticate","dialog.fork.empty":"No messages to fork from","dialog.directory.search.placeholder":"Search folders","dialog.directory.empty":"No folders found","dialog.directory.action.selectFile":"Select file","dialog.directory.action.selectFolder":"Select folder","dialog.directory.root":"Root","dialog.directory.parent":"Parent","dialog.directory.readError":"Unable to read this folder","app.server.unreachable":"Could not reach {{server}}","app.server.retrying":"Retrying automatically...","app.server.otherServers":"Other servers","dialog.server.title":"Servers","dialog.server.description":"Switch which midsomar server this app connects to.","dialog.server.search.placeholder":"Search servers","dialog.server.empty":"No servers yet","dialog.server.add.title":"Add server","dialog.server.add.url":"Server address","dialog.server.add.placeholder":"http://localhost:4096","dialog.server.add.error":"Could not connect to server","dialog.server.add.checking":"Checking...","dialog.server.add.button":"Add server","dialog.server.add.name":"Server name (optional)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Username (optional)","dialog.server.add.usernamePlaceholder":"username","dialog.server.add.password":"Password (optional)","dialog.server.add.passwordPlaceholder":"password","dialog.server.edit.title":"Edit server","dialog.server.default.title":"Default server","dialog.server.default.description":"Connect to this server on app launch instead of starting a local server. Requires restart.","dialog.server.default.none":"No server selected","dialog.server.default.set":"Set current server as default","dialog.server.default.clear":"Clear","dialog.server.action.remove":"Remove server","dialog.server.menu.edit":"Edit","dialog.server.menu.default":"Set as default","dialog.server.menu.defaultRemove":"Remove default","dialog.server.menu.delete":"Delete","dialog.server.current":"Current Server","dialog.server.status.default":"Default","wsl.server.add":"Add WSL server","wsl.server.addShort":"Add WSL","wsl.server.label":"WSL","wsl.server.menu.label":"WSL server","wsl.server.retryStart":"Retry start","wsl.server.updating":"Updating...","wsl.onboarding.step.distro":"Choose distro","wsl.onboarding.step.opencode":"midsomar","wsl.onboarding.checkingRuntime":"Checking WSL...","wsl.onboarding.restartRequired":"Windows needs a restart to finish installing WSL.","wsl.onboarding.ready":"WSL is ready.","wsl.onboarding.required":"WSL is required to continue.","wsl.onboarding.checkingDistros":"Checking distros...","wsl.onboarding.installingDistro":"Installing {{distro}}...","wsl.onboarding.checkingDistro":"Checking {{distro}}...","wsl.onboarding.listingDistros":"Listing distros...","wsl.onboarding.distroReady":"{{distro}} is ready.","wsl.onboarding.distroNotInstalled":"{{distro}} is not installed yet.","wsl.onboarding.openDistroOnce":"Open {{distro}} once to finish setup.","wsl.onboarding.finishingDistro":"Finishing setup for {{distro}}.","wsl.onboarding.pickDistro":"Pick a distro or install one below.","wsl.onboarding.checkingOpencode":"Checking midsomar...","wsl.onboarding.checkingOpencodeIn":"Checking midsomar in {{distro}}...","wsl.onboarding.updatingOpencode":"Updating midsomar...","wsl.onboarding.updatingOpencodeIn":"Updating midsomar in {{distro}}...","wsl.onboarding.updateOpencodeIn":"Update midsomar in {{distro}}.","wsl.onboarding.updateOpencode":"Update midsomar","wsl.onboarding.opencodeReadyIn":"midsomar is ready in {{distro}}.","wsl.onboarding.opencodeReady":"midsomar is ready.","wsl.onboarding.installOpencodeIn":"Install midsomar in {{distro}}.","wsl.onboarding.installOpencode":"Install midsomar","wsl.onboarding.chooseDistroFirst":"Choose a distro first.","wsl.onboarding.loadFailed":"Failed to load WSL state.","wsl.onboarding.loading":"Loading...","wsl.onboarding.installedDistros":"Installed distros","wsl.onboarding.checkAgain":"Check again","wsl.onboarding.distroStatus.ready":"Ready","wsl.onboarding.distroStatus.checking":"Checking...","wsl.onboarding.distroStatus.opencodeMissing":"midsomar not installed","wsl.onboarding.distroStatus.missingTools":"Missing bash, curl","wsl.onboarding.distroStatus.unsupported":"Unsupported · Use WSL 2","wsl.onboarding.needAnotherDistro":"Need another distro?","wsl.onboarding.needAnotherDistroHint":"Install a Linux distribution from the WSL catalog","wsl.onboarding.wslNotInstalled.title":"WSL not installed","wsl.onboarding.wslNotInstalled.description":"WSL (Windows Subsystem for Linux) is required before midsomar can add a WSL server","wsl.onboarding.wslUnavailable.title":"WSL unavailable","wsl.onboarding.wslUnavailable.description":"midsomar could not verify WSL on this machine.","wsl.onboarding.installWsl":"Install WSL","wsl.onboarding.windowsRestartRequired":"Restart Windows to finish installing WSL, then reopen midsomar.","wsl.onboarding.next":"Next","wsl.onboarding.refresh":"Refresh","wsl.onboarding.allDistrosAdded":"All installed distros are already added.","wsl.onboarding.noDistros":"No distros detected yet.","wsl.onboarding.install":"Install","wsl.onboarding.installing":"Installing...","wsl.onboarding.installDistro":"Install distro","wsl.onboarding.searchDistros":"Search distros","wsl.onboarding.wsl2Required":"WSL 2 is required.","wsl.onboarding.toolsRequired":"This distro needs bash and curl.","wsl.onboarding.openTerminal":"Open terminal","wsl.onboarding.path":"Path: {{path}}","wsl.onboarding.notFound":"not found","wsl.onboarding.version":"Version: {{version}}","wsl.onboarding.unknown":"unknown","wsl.onboarding.desktopVersion":"desktop {{version}}","wsl.onboarding.versionMismatch":"Installed version does not match the desktop app version.","wsl.onboarding.adding":"Adding...","server.row.noUsername":"no username","dialog.project.edit.title":"Edit project","dialog.project.edit.name":"Name","dialog.project.edit.icon":"Icon","dialog.project.edit.icon.alt":"Project icon","dialog.project.edit.icon.hint":"Click or drag an image","dialog.project.edit.icon.recommended":"Recommended: 128x128px","dialog.project.edit.color":"Color","dialog.project.edit.color.select":"Select {{color}} color","dialog.project.edit.worktree.startup":"Workspace startup script","dialog.project.edit.worktree.startup.description":"Runs after creating a new workspace (worktree).","dialog.project.edit.worktree.startup.placeholder":"e.g. bun install","dialog.releaseNotes.action.getStarted":"Get started","dialog.releaseNotes.action.next":"Next","dialog.releaseNotes.action.hideFuture":"Don't show these in the future","dialog.releaseNotes.media.alt":"Release preview","context.breakdown.title":"Context Breakdown","context.breakdown.note":'Approximate breakdown of input tokens. "Other" includes tool definitions and overhead.',"context.breakdown.system":"System","context.breakdown.user":"User","context.breakdown.assistant":"Assistant","context.breakdown.tool":"Tool Calls","context.breakdown.other":"Other","context.systemPrompt.title":"System Prompt","context.rawMessages.title":"Raw messages","context.stats.session":"Session","context.stats.messages":"Messages","context.stats.provider":"Provider","context.stats.model":"Model","context.stats.limit":"Context Limit","context.stats.totalTokens":"Total Tokens","context.stats.usage":"Usage","context.stats.inputTokens":"Input Tokens","context.stats.outputTokens":"Output Tokens","context.stats.reasoningTokens":"Reasoning Tokens","context.stats.cacheTokens":"Cache Tokens (read/write)","context.stats.userMessages":"User Messages","context.stats.assistantMessages":"Assistant Messages","context.stats.totalCost":"Total Cost","context.stats.sessionCreated":"Session Created","context.stats.lastActivity":"Last Activity","context.usage.tokens":"Tokens","context.usage.usage":"Usage","context.usage.cost":"Cost","context.usage.clickToView":"Click to view context","context.usage.view":"View context usage","language.en":"English","language.zh":"简体中文","language.zht":"繁體中文","language.ko":"한국어","language.de":"Deutsch","language.es":"Español","language.fr":"Français","language.da":"Dansk","language.ja":"日本語","language.pl":"Polski","language.ru":"Русский","language.ar":"العربية","language.no":"Norsk","language.br":"Português (Brasil)","language.bs":"Bosanski","language.uk":"Українська","language.th":"ไทย","language.tr":"Türkçe","toast.language.title":"Language","toast.language.description":"Switched to {{language}}","toast.theme.title":"Theme switched","toast.scheme.title":"Color scheme","toast.workspace.enabled.title":"Workspaces enabled","toast.workspace.enabled.description":"Multiple worktrees are now shown in the sidebar","toast.workspace.disabled.title":"Workspaces disabled","toast.workspace.disabled.description":"Only the main worktree is shown in the sidebar","toast.permissions.autoaccept.on.title":"Auto-accepting permissions","toast.permissions.autoaccept.on.description":"Permission requests will be automatically approved","toast.permissions.autoaccept.off.title":"Stopped auto-accepting permissions","toast.permissions.autoaccept.off.description":"Permission requests will require approval","toast.model.none.title":"No model selected","toast.model.none.description":"Connect a provider to summarize this session","toast.file.loadFailed.title":"Failed to load file","toast.file.listFailed.title":"Failed to list files","toast.context.noLineSelection.title":"No line selection","toast.context.noLineSelection.description":"Select a line range in a file tab first.","toast.session.share.copyFailed.title":"Failed to copy URL to clipboard","toast.session.share.success.title":"Session shared","toast.session.share.success.description":"Share URL copied to clipboard!","toast.session.share.failed.title":"Failed to share session","toast.session.share.failed.description":"An error occurred while sharing the session","toast.session.unshare.success.title":"Session unshared","toast.session.unshare.success.description":"Session unshared successfully!","toast.session.unshare.failed.title":"Failed to unshare session","toast.session.unshare.failed.description":"An error occurred while unsharing the session","toast.session.listFailed.title":"Failed to load sessions for {{project}}","toast.project.reloadFailed.title":"Failed to reload {{project}}","toast.update.title":"Update available","toast.update.description":"A new version of midsomar ({{version}}) is now available to install.","toast.update.action.installRestart":"Install and restart","toast.update.action.notYet":"Not yet","error.page.title":"Something went wrong","error.page.description":"An error occurred while loading the application.","error.page.description.localServerStartup":"An error occurred while starting the local server.","error.page.details.label":"Error Details","error.page.action.restart":"Restart","error.page.action.report":"Report Error","error.page.action.reported":"Error Reported","error.page.action.exportLogs":"Export Logs","error.page.action.checking":"Checking...","error.page.action.checkUpdates":"Check for updates","error.page.action.updateTo":"Update to {{version}}","error.page.circular":"[Circular]","error.page.report.prefix":"Please report this error to the midsomar team","error.page.report.discord":"on Discord","error.page.version":"Version: {{version}}","error.dev.rootNotFound":"Root element not found. Did you forget to add it to your index.html? Or maybe the id attribute got misspelled?","error.serverSync.connectFailed":"Could not connect to server. Is there a server running at `{{url}}`?","error.serverSDK.noServerAvailable":"No server available","error.serverSDK.serverNotAvailable":"Server not available","error.childStore.persistedCacheCreateFailed":"Failed to create persisted cache","error.childStore.persistedProjectMetadataCreateFailed":"Failed to create persisted project metadata","error.childStore.persistedProjectIconCreateFailed":"Failed to create persisted project icon","error.childStore.storeCreateFailed":"Failed to create store","directory.error.invalidUrl":"Invalid directory in URL.","error.chain.unknown":"Unknown error","error.server.invalidConfiguration":"Invalid configuration","error.chain.causedBy":"Caused by:","error.chain.apiError":"API error","error.chain.status":"Status: {{status}}","error.chain.retryable":"Retryable: {{retryable}}","error.chain.responseBody":`Response body:
|
|
1005
|
+
at ${n}`}return t}function Rv(e){switch(e._tag){case"InvalidType":case"OneOf":case"Composite":case"AnyOf":return y0(e.ast.annotations);case"InvalidValue":case"Forbidden":return y0(e.annotations);case"MissingKey":return y0(e.annotations,"messageMissingKey");case"UnexpectedKey":return y0(e.ast.annotations,"messageUnexpectedKey");case"Filter":return y0(e.filter.annotations);case"Encoding":return Rv(e.issue)}}function y0(e,t="message"){const n=e?.[t];if(typeof n=="string")return n}function JM(e){return uh(e)?"no value provided":Yi(e.value)}class ig extends T4{run;constructor(t){super(),this.run=t}map(t){return new ig((n,r)=>this.run(n,r).pipe(P9(gU(t))))}compose(t){return e$(this)?t:e$(t)?this:new ig((n,r)=>this.run(n,r).pipe(vf(i=>t.run(i,r))))}}const qU=new ig(Co);function e$(e){return e.run===qU.run}function Hw(){return qU}function F9(e){return new ig((t,n)=>uh(t)?F4:e(t.value,n))}function rc(e){return BU(gU(e))}function t$(e){return F9((t,n)=>e(t,n).pipe(P9(Qr)))}function BU(e){return new ig(t=>Co(e(t)))}function v4e(){return rc(globalThis.String)}function UU(){return rc(globalThis.Number)}function y4e(e){return F9(t=>VU({try:()=>Qr(JSON.parse(t,e?.reviver)),catch:n=>new qf(Qr(t),{message:globalThis.String(n)})}))}function b4e(e){return F9(t=>VU({try:()=>Qr(JSON.stringify(t,e?.replacer,e?.space)),catch:n=>new qf(Qr(t),{message:globalThis.String(n)})}))}const O7="~effect/SchemaTransformation/Transformation";class Ba{[O7]=O7;_tag="Transformation";decode;encode;constructor(t,n){this.decode=t,this.encode=n}flip(){return new Ba(this.encode,this.decode)}compose(t){return new Ba(this.decode.compose(t.decode),t.encode.compose(this.encode))}}function w4e(e){return hs(e,O7)}const WU=e=>w4e(e)?e:new Ba(e.decode,e.encode);function x4e(e){return new Ba(t$(e.decode),t$(e.encode))}const k4e=new Ba(Hw(),Hw());function S4e(){return k4e}const KU=new Ba(UU(),v4e()),C4e=new Ba(y4e(),b4e()),_4e=x4e({decode:e=>f2e(Jxe(e),{onNone:()=>_o(new qf(Qr(e),{message:`Invalid UTC DateTime string: ${e}`})),onSome:t=>Co(e4e(t))}),encode:e=>Co(r4e(e))});function fh(e){return t=>t._tag===e}const T4e=fh("Declaration"),E4e=fh("Never"),jw=fh("Literal"),I4e=fh("UniqueSymbol"),D4e=fh("Arrays"),L4e=fh("Objects"),A4e=fh("Union");let aa=class{to;transformation;constructor(t,n){this.to=t,this.transformation=n}};const M4e={};let qw=class{isOptional;isMutable;defaultValue;annotations;constructor(t,n,r=void 0,i=void 0){this.isOptional=t,this.isMutable=n,this.defaultValue=r,this.annotations=i}};const n$="~effect/Schema";class hu{[n$]=n$;annotations;checks;encoding;context;constructor(t=void 0,n=void 0,r=void 0,i=void 0){this.annotations=t,this.checks=n,this.encoding=r,this.context=i}toString(){return`<${this._tag}>`}}class V4 extends hu{_tag="Declaration";typeParameters;run;encodingChecks;constructor(t,n,r,i,s,o,a){super(r,i,s,o),this.typeParameters=t,this.run=n,this.encodingChecks=a}getParser(){const t=this.run(this.typeParameters);return(n,r)=>uh(n)?F4:P9(t(n.value,this,r),Qr)}rebuild(t,n,r){const i=Ww(this.typeParameters,t);return i===this.typeParameters?this:new V4(i,this.run,this.annotations,n,void 0,this.context,r)}recur(t){return this.rebuild(t,this.checks,this.encodingChecks)}flip(t){return this.rebuild(t,this.encodingChecks,this.checks)}getExpected(){const t=this.annotations?.expected;return typeof t=="string"?t:"<Declaration>"}}class $4e extends hu{_tag="Null";getParser(){return B9(this,null)}getExpected(){return"null"}}const P4e=new $4e;let O4e=class extends hu{_tag="Undefined";getParser(){return B9(this,void 0)}toCodecJson(){return To(this,[R4e])}getExpected(){return"undefined"}};const R4e=new aa(P4e,new Ba(rc(()=>{}),rc(()=>null))),F4e=new O4e;let N4e=class extends hu{_tag="Unknown";getParser(){return H4(this,gbe)}getExpected(){return"unknown"}};const V4e=new N4e;class w2 extends hu{_tag="Literal";literal;constructor(t,n,r,i,s){if(super(n,r,i,s),typeof t=="number"&&!globalThis.Number.isFinite(t))throw new Error(`A numeric literal must be finite, got ${Yi(t)}`);this.literal=t}getParser(){return B9(this,this.literal)}toCodecJson(){return typeof this.literal=="bigint"?r$(this):this}toCodecStringTree(){return typeof this.literal=="string"?this:r$(this)}getExpected(){return typeof this.literal=="string"?JSON.stringify(this.literal):globalThis.String(this.literal)}}function r$(e){const t=globalThis.String(e.literal);return To(e,[new aa(new w2(t),new Ba(rc(()=>e.literal),rc(()=>t)))])}let z4e=class extends hu{_tag="String";getParser(){return H4(this,hbe)}getExpected(){return"string"}};const GU=new z4e;let H4e=class extends hu{_tag="Number";getParser(){return H4(this,GB)}toCodecJson(){return this.checks&&(rp(this.checks,"isFinite")||rp(this.checks,"isInt"))?this:To(this,[G4e])}toCodecStringTree(){return this.checks&&(rp(this.checks,"isFinite")||rp(this.checks,"isInt"))?To(this,[ake]):To(this,[lke])}getExpected(){return"number"}};function rp(e,t){return e.some(n=>{switch(n._tag){case"Filter":return n.annotations?.meta?._tag===t;case"FilterGroup":return rp(n.checks,t)}})}const ZU=new H4e,YU=e=>(e=e==="unbounded"?1/0:e??1,e>1?{concurrency:e}:void 0),R7=(e,t,n,r)=>{const i=OU(r.cause);if(O1(i))return r;const s=new N4([n],i.success);if(e.options.errors==="all")e.issues?e.issues.push(s):e.issues=[s];else return A9(new Vc(t,e.oinput,[s]))},N9="[+-]?\\d*\\.?\\d+(?:[Ee][+-]?\\d+)?",j4e=new globalThis.RegExp(`(?:${N9}|Infinity|-Infinity|NaN)`);function XU(e,t){const n=N1(t);switch(n._tag){case"String":return Object.keys(e);case"TemplateLiteral":{const r=nke(n);return Object.keys(e).filter(i=>r.test(i))}case"Symbol":return Object.getOwnPropertySymbols(e);case"Number":return Object.keys(e).filter(r=>j4e.test(r));case"Union":return[...new Set(n.types.flatMap(r=>XU(e,r)))];default:return[]}}class QU{name;type;constructor(t,n){this.name=t,this.type=n}}class q4e{parameter;type;merge;constructor(t,n,r){if(this.parameter=t,this.type=n,this.merge=r,Kw(n)&&!dW(n))throw new Error("Cannot use `Schema.optionalKey` with index signatures, use `Schema.optional` instead.")}}class V9 extends hu{_tag="Objects";propertySignatures;indexSignatures;encodingChecks;constructor(t,n,r,i,s,o,a){super(r,i,s,o),this.propertySignatures=t,this.indexSignatures=n,this.encodingChecks=a;const l=t.map(c=>c.name).filter((c,u,d)=>d.indexOf(c)!==u);if(l.length>0)throw new Error(`Duplicate identifiers: ${JSON.stringify(l)}. ts(2300)`)}getParser(t){const n=this,r=[],i=new Set,s=[];for(const l of n.propertySignatures)r.push(l.name),i.add(l.name),s.push({ps:l,parser:t(l.type),name:l.name,type:l.type});const o=n.indexSignatures.length;if(n.propertySignatures.length===0&&n.indexSignatures.length===0)return H4(n,mbe);const a=o>0?L9()({onItem:XM(function*(l,[c,u]){const f=t(mW(u.parameter))(Qr(c),l.options),m=nc(f)?f:yield*YM(f);if(m._tag==="Failure"){const b=R7(l,n,c,m);b&&(yield*b);return}const g=Qr(l.input[c]),y=t(u.type)(g,l.options),v=nc(y)?y:yield*YM(y);if(v._tag==="Failure"){const b=R7(l,n,c,v);b&&(yield*b);return}else if(m.value._tag==="Some"&&v.value._tag==="Some"){const b=m.value.value;if(i.has(c)||i.has(b))return;const w=v.value.value;if(u.merge&&u.merge.decode&&Object.hasOwn(l.out,b)){const[x,k]=u.merge.decode.combine([b,l.out[b]],[b,w]);np(l.out,x,k)}else np(l.out,b,w)}}),step:(l,c,u)=>u._tag==="Failure"?u:void 0}):void 0;return XM(function*(l,c){if(l._tag==="None")return l;const u=l.value;if(!(typeof u=="object"&&u!==null&&!Array.isArray(u)))return yield*_o(new R1(n,l));const d={},f={ast:n,oinput:l,input:u,out:d,issues:void 0,options:c},m=c.errors==="all",g=c.onExcessProperty==="error",p=c.onExcessProperty==="preserve";let y;if(n.indexSignatures.length===0&&(g||p)){y=Reflect.ownKeys(u);for(let w=0;w<y.length;w++){const x=y[w];if(!i.has(x))if(g){const k=new N4([x],new l4e(n,u[x]));if(m){f.issues?f.issues.push(k):f.issues=[k];continue}else return yield*_o(new Vc(n,l,[k]))}else np(d,x,u[x])}}const v=YU(c?.concurrency),b=B4e(f,s,v);if(b&&(yield*b),a){const w=T2e();for(let k=0;k<o;k++){const C=n.indexSignatures[k],E=XU(u,C.parameter);for(let _=0;_<E.length;_++){const L=E[_];w.push([L,C])}}const x=a(f,w,v);x&&(yield*x)}if(f.issues)return yield*_o(new Vc(n,l,f.issues));if(c.propertyOrder==="original"){const w=(y??Reflect.ownKeys(u)).concat(r),x={};for(const k of w)Object.hasOwn(d,k)&&np(x,k,d[k]);return Qr(x)}return Qr(d)})}rebuild(t,n,r,i){const s=Ww(this.propertySignatures,a=>{const l=t(a.type);return l===a.type?a:new QU(a.name,l)}),o=Ww(this.indexSignatures,a=>{const l=t(a.parameter),c=t(a.type),u=n?a.merge?.flip():a.merge;return l===a.parameter&&c===a.type&&u===a.merge?a:new q4e(l,c,u)});return s===this.propertySignatures&&o===this.indexSignatures?this:new V9(s,o,this.annotations,r,void 0,this.context,i)}flip(t){return this.rebuild(t,!0,this.encodingChecks,this.checks)}recur(t){return this.rebuild(t,!1,this.checks,this.encodingChecks)}getExpected(){return this.propertySignatures.length===0&&this.indexSignatures.length===0?"object | array":"object"}}const B4e=L9()({onItem(e,t){const n=Object.hasOwn(e.input,t.name)?Qr(e.input[t.name]):jf();return t.parser(n,e.options)},step(e,t,n){if(n._tag==="Failure")return R7(e,e.ast,t.name,n);if(n.value._tag==="Some")np(e.out,t.name,n.value.value);else if(!Kw(t.type)){const r=new N4([t.name],new a4e(t.type.context?.annotations));if(e.options.errors==="all"){e.issues?e.issues.push(r):e.issues=[r];return}else return A9(new Vc(e.ast,e.oinput,[r]))}}});function z9(e,t,n){return new V9(Reflect.ownKeys(e).map(r=>new QU(r,e[r].ast)),[],n,t)}function JU(e){return e.ast}function eW(e,t,n){return new z4(e.map(JU),t,void 0,n)}function tW(e){switch(e._tag){case"Null":return["null"];case"Undefined":case"Void":return["undefined"];case"String":case"TemplateLiteral":return["string"];case"Number":return["number"];case"Boolean":return["boolean"];case"Symbol":case"UniqueSymbol":return["symbol"];case"BigInt":return["bigint"];case"Arrays":return["array"];case"ObjectKeyword":return["object","array","function"];case"Objects":return e.propertySignatures.length||e.indexSignatures.length?["object"]:["object","array"];case"Enum":return Array.from(new Set(e.enums.map(([,t])=>typeof t)));case"Literal":return[typeof e.literal];case"Union":return Array.from(new Set(e.types.flatMap(tW)));default:return["null","undefined","string","number","boolean","symbol","bigint","object","array","function"]}}function H9(e){switch(e._tag){default:return[];case"Declaration":{const t=e.annotations?.["~sentinels"];return Array.isArray(t)?t:[]}case"Objects":return e.propertySignatures.flatMap(t=>{const n=t.type;if(!Kw(n)){if(jw(n))return[{key:t.name,literal:n.literal}];if(I4e(n))return[{key:t.name,literal:n.symbol}]}return[]});case"Arrays":return e.elements.flatMap((t,n)=>jw(t)&&!Kw(t)?[{key:n,literal:t.literal}]:[]);case"Suspend":return H9(e.thunk())}}const i$=new WeakMap;function U4e(e){let t=i$.get(e);if(t)return t;t={};for(const n of e){const r=N1(n);if(E4e(r))continue;const i=tW(r),s=H9(r);t.byType??={};for(const o of i)(t.byType[o]??=[]).push(n);if(s.length>0){t.bySentinel??=new Map;for(const{key:o,literal:a}of s){let l=t.bySentinel.get(o);l||t.bySentinel.set(o,l=new Map);let c=l.get(a);c||l.set(a,c=[]),c.push(n)}}else{t.otherwise??={};for(const o of i)(t.otherwise[o]??=[]).push(n)}}return i$.set(e,t),t}function s$(e){return t=>{const n=N1(t);return n._tag==="Literal"?n.literal===e:n._tag==="UniqueSymbol"?n.symbol===e:!0}}function W4e(e,t){const n=U4e(t),r=e===null?"null":Array.isArray(e)?"array":typeof e;if(n.bySentinel){const i=n.otherwise?.[r]??[];if(r==="object"||r==="array"){for(const[s,o]of n.bySentinel)if(Object.hasOwn(e,s)){const a=o.get(e[s]);if(a)return[...a,...i].filter(s$(e))}}return i}return(n.byType?.[r]??[]).filter(s$(e))}let z4=class nW extends hu{_tag="Union";types;mode;encodingChecks;constructor(t,n,r,i,s,o,a){super(r,i,s,o),this.types=t,this.mode=n,this.encodingChecks=a}getParser(t){const n=this;return(r,i)=>{if(r._tag==="None")return Co(r);const s=r.value,o=W4e(s,n.types),a={ast:n,recur:t,oinput:r,input:s,out:void 0,successes:[],issues:void 0,options:i},l=YU(i?.concurrency),c=K4e(a,o,l);return c?Fxe(c,u=>a.out?Co(a.out):_o(new QM(n,s,a.issues??[]))):a.out?Co(a.out):_o(new QM(n,s,a.issues??[]))}}rebuild(t,n,r){const i=Ww(this.types,t);return i===this.types?this:new nW(i,this.mode,this.annotations,n,void 0,this.context,r)}recur(t){return this.rebuild(t,this.checks,this.encodingChecks)}flip(t){return this.rebuild(t,this.encodingChecks,this.checks)}getExpected(t){const n=this.annotations?.expected;if(typeof n=="string")return n;if(this.types.length===0)return"never";const r=this.types.map(i=>{const s=N1(i);switch(s._tag){case"Arrays":{const o=s.elements.filter(jw);if(o.length>0)return`${o$(s.isMutable)}[ ${o.map(a=>t(a)+a$(a.context?.isOptional)).join(", ")}, ... ]`;break}case"Objects":{const o=s.propertySignatures.filter(a=>jw(a.type));if(o.length>0)return`{ ${o.map(a=>`${o$(a.type.context?.isMutable)}${Fw(a.name)}${a$(a.type.context?.isOptional)}: ${t(a.type)}`).join(", ")}, ... }`;break}}return t(s)});return Array.from(new Set(r)).join(" | ")}};const K4e=L9()({onItem(e,t){return e.recur(t)(e.oinput,e.options)},step(e,t,n){if(n._tag==="Failure"){const r=OU(n.cause);if(O1(r))return n;e.issues?e.issues.push(r.success):e.issues=[r.success]}else{if(e.out&&e.ast.mode==="oneOf")return e.successes.push(t),A9(new c4e(e.ast,e.input,e.successes));if(e.out=n.value,e.successes.push(t),e.ast.mode==="anyOf")return xxe}}}),rW=new z4([new w2("Infinity"),new w2("-Infinity"),new w2("NaN")],"anyOf"),G4e=new aa(new z4([ZU,rW],"anyOf"),new Ba(UU(),rc(e=>globalThis.Number.isFinite(e)?e:globalThis.String(e))));function o$(e){return e?"":"readonly "}function a$(e){return e?"?":""}function iW(e){switch(e._tag){case"Declaration":case"Arrays":case"Objects":case"Union":return e.encodingChecks;default:return}}class Bw extends T4{_tag="Filter";run;annotations;aborted;constructor(t,n=void 0,r=!1){super(),this.run=t,this.annotations=n,this.aborted=r}annotate(t){return new Bw(this.run,{...this.annotations,...t},this.aborted)}abort(){return new Bw(this.run,this.annotations,!0)}and(t,n){return new Uw([this,t],n)}}class Uw extends T4{_tag="FilterGroup";checks;annotations;constructor(t,n=void 0){super(),this.checks=t,this.annotations=n}annotate(t){return new Uw(this.checks,{...this.annotations,...t})}and(t,n){return new Uw([this,t],n)}}function sW(e,t,n=!1){return new Bw((r,i,s)=>d4e(r,i,e(r,i,s)),t,n)}function Z4e(e,t){const n=e.source;return sW(r=>e.test(r),{expected:`a string matching the RegExp ${n}`,meta:{_tag:"isPattern",regExp:e},arbitrary:{constraint:{patterns:[e.source]}},...t})}function F1(e,t){const n=Object.getOwnPropertyDescriptors(e);return t(n),Object.create(Object.getPrototypeOf(e),n)}function To(e,t){return e.encoding===t?e:F1(e,n=>{n.encoding.value=t})}function oW(e,t){return e.context===t?e:F1(e,n=>{n.context.value=t})}function j9(e,t){if(e.checks){const n=e.checks[e.checks.length-1];return aW(e,pU(e.checks.slice(0,-1),n.annotate(t)))}return F1(e,n=>{n.annotations.value={...n.annotations.value,...t}})}function aW(e,t){if(e._tag==="Suspend"&&t!==void 0)throw new Error("Cannot add checks to Suspend");return e.checks===t?e:F1(e,n=>{n.checks.value=t})}function q9(e,t){return aW(e,e.checks?[...e.checks,...t]:t)}function lW(e,t){const n=e,r=n[n.length-1],i=t(r.to);return i!==r.to?pU(e.slice(0,e.length-1),new aa(i,r.transformation)):e}function Y4e(e){return t=>t.encoding?To(t,lW(t.encoding,e)):t}function X4e(e,t,n){const r=new aa(e,t);return To(n,n.encoding?[...n.encoding,r]:[r])}function Q4e(e,t){const n=Uxe(e),r=n?[...n,t]:[t];return j9(e,{brands:r})}function Ww(e,t){let n=!1;const r=new Array(e.length);for(let i=0;i<e.length;i++){const s=e[i],o=t(s);o!==s&&(n=!0),r[i]=o}return n?r:e}function cW(e,t){const n=e.context?new qw(e.context.isOptional,e.context.isMutable,e.context.defaultValue,{...e.context.annotations,...t}):new qw(!1,!1,void 0,t);return oW(e,n)}const J4e=Y4e(uW);function uW(e){const t=e.context?e.context.isOptional===!1?new qw(!0,e.context.isMutable,e.context.defaultValue,e.context.annotations):e.context:new qw(!0,!1);return J4e(oW(e,t))}function eke(e,t,n){return X4e(e,n,t)}function Kw(e){return e.context?.isOptional??!1}const Fv=Dd(e=>{if(e.encoding)return Fv(To(e,void 0));const t=e,n=t.recur?.(Fv)??t;return iW(n)?F1(n,r=>{r.encodingChecks.value=void 0}):n}),N1=Dd(e=>Fv(Rm(e)));function tke(e,t){const n=t,r=n.length,i=n[r-1],s=[new aa(Rm(To(e,void 0)),n[0].transformation.flip())];for(let a=1;a<r;a++)s.unshift(new aa(Rm(n[a-1].to),n[a].transformation.flip()));const o=Rm(i.to);return o.encoding?To(o,[...o.encoding,...s]):To(o,s)}const Rm=Dd(e=>{if(e.encoding)return tke(e,e.encoding);const t=e;return t.flip?.(Rm)??t.recur?.(Rm)??t});function dW(e){switch(e._tag){case"Undefined":return!0;case"Union":return e.types.some(dW);default:return!1}}function fW(e,t){return e.encodedParts.map(n=>rke(n,hW(n),t)).join("")}const nke=Dd(e=>new globalThis.RegExp(`^${fW(e,!0)}$`));function hW(e){switch(e._tag){case"Literal":return Wxe(globalThis.String(e.literal));case"String":return ske;case"Number":return N9;case"BigInt":return cke;case"TemplateLiteral":return fW(e,!1);case"Union":return e.types.map(hW).join("|")}}function rke(e,t,n){if(A4e(e)){if(!n)return`(?:${t})`}else if(!n)return t;return`(${t})`}function B9(e,t){const n=Pxe(t);return r=>r._tag==="None"?F4:r.value===t?n:_o(new R1(e,r))}function H4(e,t){return n=>n._tag==="None"?F4:t(n.value)?Co(n):_o(new R1(e,n))}function ike(e){function t(n){return n.encoding?To(n,lW(n.encoding,t)):e(n)}return Dd(t)}const mW=ike(e=>{switch(e._tag){default:return e;case"Number":return e.toCodecStringTree();case"Union":return e.recur(mW)}}),ske="[\\s\\S]*?",l$=new globalThis.RegExp(`^${N9}$`);function oke(e){return Z4e(l$,{expected:"a string representing a finite number",meta:{_tag:"isStringFinite",regExp:l$},...e})}const gW=q9(GU,[oke()]),ake=new aa(gW,KU),lke=new aa(new z4([gW,rW],"anyOf"),KU),cke="-?\\d+";function x2(e,t,n,r,i){for(let s=0;s<e.length;s++){const o=e[s];if(o._tag==="FilterGroup")x2(o.checks,t,n,r,i);else{const a=o.run(t,r,i);if(a&&(n.push(new s4e(t,o,a)),o.aborted||i?.errors!=="all"))return}}}const pW="~effect/Schema/Class",uke="~structural",j4=e=>e,ip=Dd(e=>{switch(e._tag){case"Declaration":{const t=e.annotations?.[pW];if(x9(t)){const n=t(e.typeParameters),r=ip(n.to);return To(e,r===n.to?[n]:[new aa(r,n.transformation)])}return e}case"Objects":case"Arrays":return e.recur(t=>{const n=t.context?.defaultValue;return n?To(ip(t),n):ip(t)});case"Suspend":return e.recur(ip);default:return e}});function U9(e){const t=ip(Fv(e.ast)),n=yW(t);return(r,i)=>n(r,i?.disableChecks?i?.parseOptions?{...i.parseOptions,disableChecks:!0}:{disableChecks:!0}:i?.parseOptions)}function vW(e){const t=U9(e);return(n,r)=>RU(zU(t(n,r)))}function dke(e){const t=U9(e);return(n,r)=>Hxe(O9(t(n,r),i=>new Error(i.toString(),{cause:i})))}function fke(e,t){const n=yW(e.ast);return t===void 0?n:(r,i)=>n(r,mke(t,i))}function hke(e,t){return pke(fke(e,t))}const mke=(e,t)=>t===void 0?e:{...e,...t};function yW(e){const t=k2(e);return(n,r)=>vf(t(Qr(n),r??M4e),i=>i._tag==="None"?_o(new qf(i)):Co(i.value))}function gke(e){return(t,n)=>zU(e(t,n))}function pke(e){const t=gke(e);return(n,r)=>RU(t(n,r))}const k2=Dd(e=>{let t;const n=iW(e),r=e.checks??n,i=(r?r[r.length-1].annotations:e.annotations)?.parseOptions;if(!e.context&&!e.encoding&&!e.checks&&!n)return(o,a)=>(t??=e.getParser(k2),i&&(a={...a,...i}),t(o,a));const s=D4e(e)||L4e(e)||T4e(e)&&e.typeParameters.length>0;return(o,a)=>{i&&(a={...a,...i});const l=e.encoding;let c;if(l){const d=l,f=d.length;for(let m=f-1;m>=0;m--){const g=d[m],p=g.to,y=k2(p);if(c=c?vf(c,v=>y(v,a)):y(o,a),g.transformation._tag==="Transformation"){const v=g.transformation.decode;c=vf(c,b=>v.run(b,a))}else c=g.transformation.decode(c,a)}c=O9(c,m=>new o4e(e,o,m))}t??=e.getParser(k2);let u=c?vf(c,d=>t(d,a)):t(o,a);if(n&&!a?.disableChecks&&(u=vf(u,d=>{if(fb(o)&&fb(d)){const f=[];if(x2(n,o.value,f,e,a),M5(f))return _o(new Vc(e,o,f))}return Co(d)})),e.checks&&!a?.disableChecks){const d=e.checks;a?.errors==="all"&&s&&fb(o)&&(u=jxe(u,f=>{const m=[];x2(d.filter(p=>p.annotations?.[uke]),o.value,m,e,a);const g=M5(m)?f._tag==="Composite"&&f.ast===e?new Vc(e,f.actual,[...f.issues,...m]):new Vc(e,o,[f,...m]):f;return _o(g)})),u=vf(u,f=>{if(fb(f)){const m=f.value,g=[];if(x2(d,m,g,e,a),M5(g))return _o(new Vc(e,f,g))}return Co(f)})}return u}}),F7="~effect/Schema/Schema",vke={[F7]:F7,pipe(){return Tl(this,arguments)},annotate(e){return this.rebuild(j9(this.ast,e))},annotateKey(e){return this.rebuild(cW(this.ast,e))},check(...e){return this.rebuild(q9(this.ast,e))}};function bW(e,t){const n=Object.create(vke);return t&&Object.assign(n,t),n.ast=e,n.rebuild=r=>bW(r,t),n.makeEffect=fbe(U9(n),O9(r=>new yke(r))),n.make=dke(n),n.makeOption=vW(n),n}const c$="~effect/Schema/SchemaError";class yke{[c$]=c$;_tag="SchemaError";name="SchemaError";issue;constructor(t){this.issue=t}get message(){return this.issue.toString()}toString(){return`SchemaError(${this.message})`}}const qp=F7;function bke(){return(e,t,n)=>la(new V4(e.map(JU),r=>t(r.map(i=>la(i))),n))}function wke(e,t){return bke()([],()=>(n,r)=>e(n)?Co(n):_o(new R1(r,Qr(n))),t)}const xke=hke,la=bW;function kke(e){return hs(e,qp)&&e[qp]===qp}const wW=j4(e=>la(uW(e.ast),{schema:e})),Ske=j4(e=>wW(Ike(e))),Cke=j4(e=>la(Fv(e.ast),{schema:e})),_ke=la(V4e),Tke=la(F4e),Ad=la(GU),xW=la(ZU);function W9(e,t){return la(e,{fields:t,mapFields(n,r){const i=n(this.fields);return W9(z9(i,r?.unsafePreserveChecks?this.ast.checks:void 0),i)}})}function K9(e){return W9(z9(e,void 0),e)}function kW(e,t){return la(e,{members:t,mapMembers(n,r){const i=n(this.members);return kW(eW(i,this.ast.mode,r?.unsafePreserveChecks?this.ast.checks:void 0),i)}})}function Eke(e,t){return kW(eW(e,"anyOf",void 0),e)}const Ike=j4(e=>Eke([e,Tke]));function Og(e){return t=>la(Q4e(t.ast,e),{schema:t,identifier:e})}function q4(e,t){return n=>la(eke(n.ast,e.ast,t?WU(t):S4e()),{from:n,to:e})}function Dke(){return(e,t)=>new aa(e.ast,WU(t))}const V1=sW;function SW(e,t){const n=JSON.stringify(e);return V1(r=>r.startsWith(e),{expected:`a string starting with ${n}`,meta:{_tag:"isStartsWith",startsWith:e,regExp:new globalThis.RegExp(`^${e}`)},arbitrary:{constraint:{patterns:[`^${e}`]}},...t})}function Lke(e){return V1(t=>globalThis.Number.isFinite(t),{expected:"a finite number",meta:{_tag:"isFinite"},arbitrary:{constraint:{noInfinity:!0,noNaN:!0}},...e})}function Ake(e){const t=u2e(e.order),n=e.formatter??Yi;return(r,i)=>V1(s=>t(s,r),{expected:`a value greater than ${n(r)}`,arbitrary:{constraint:{ordered:{order:e.order,minimum:r,exclusiveMinimum:!0}}},...e.annotate?.(r),...i})}function Mke(e){const t=d2e(e.order),n=e.formatter??Yi;return(r,i)=>V1(s=>t(s,r),{expected:`a value greater than or equal to ${n(r)}`,arbitrary:{constraint:{ordered:{order:e.order,minimum:r}}},...e.annotate?.(r),...i})}const $ke=Ake({order:mU,annotate:e=>({meta:{_tag:"isGreaterThan",exclusiveMinimum:e}})}),Pke=Mke({order:mU,annotate:e=>({meta:{_tag:"isGreaterThanOrEqualTo",minimum:e}})});function Oke(e){return V1(t=>globalThis.Number.isSafeInteger(t),{expected:"an integer",meta:{_tag:"isInt"},arbitrary:{constraint:{integer:!0}},...e})}function Rke(e,t,n,r){const i={...n};if(delete i.valid,(n?.valid||e?.valid)&&(i.noInvalidDate=!0),t?.minimum!==void 0){const s=r===void 0?t.minimum:r(t.minimum),o=t.exclusiveMinimum?new globalThis.Date(s.getTime()+1):s;(i.min===void 0||o.getTime()>i.min.getTime())&&(i.min=o)}if(t?.maximum!==void 0){const s=r===void 0?t.maximum:r(t.maximum),o=t.exclusiveMaximum?new globalThis.Date(s.getTime()-1):s;(i.max===void 0||o.getTime()<i.max.getTime())&&(i.max=o)}return i}const Fke=Nke(_ke);function Nke(e){return Ad.annotate({expected:"a string that will be decoded as JSON",contentMediaType:"application/json",contentSchema:N1(e.ast)}).pipe(q4(e,C4e))}const Vke=xW.check(Lke()),CW=xW.check(Oke()),zke=wke(e=>Kxe(e)&&Gxe(e),{typeConstructor:{_tag:"effect/DateTime.Utc"},generation:{runtime:"Schema.DateTimeUtc",Type:"DateTime.Utc",importDeclaration:'import * as DateTime from "effect/DateTime"'},expected:"DateTime.Utc",toCodecJson:()=>Dke()(Ad,_4e),toArbitrary:()=>(e,t)=>e.date(Rke(t?.constraint,t?.constraint?.ordered?.order===Yxe?t.constraint.ordered:void 0,{valid:!0},t4e)).map(n=>Xxe(n)),toFormatter:()=>e=>e.toString(),toEquivalence:()=>Zxe}),Hke=globalThis.Symbol.for("immer-draftable");function _W(e,t,n,r,i){const s=qke(n,t,r),o=TW(t),a=class extends e{constructor(...[l,c]){l=l??{};const u=n.make(l,c);super({...l,...u},{...c,disableChecks:!0})}static[qp]=qp;get[o](){return o}static[Hke]=!0;static identifier=t;static fields=n.fields;static get ast(){return s(this).ast}static pipe(){return Tl(this,arguments)}static rebuild(l){return s(this).rebuild(l)}static make(l,c){return new this(l,c)}static makeOption(l,c){return vW(s(this))(l??{},c)}static makeEffect(l,c){return s(this).makeEffect(l??{},c)}static annotate(l){return this.rebuild(j9(this.ast,l))}static annotateKey(l){return this.rebuild(cW(this.ast,l))}static check(...l){return this.rebuild(q9(this.ast,l))}static extend(l){return(c,u)=>{const d={...n.fields,...c};return _W(this,l,W9(z9(d,n.ast.checks,{identifier:l}),d),u,i)}}static mapFields(l,c){return n.mapFields(l,c)}};return i!==void 0&&Object.assign(a.prototype,i(t)),a}function jke(e){return new Ba(rc(t=>new e(t)),Hw())}function TW(e){return`~effect/Schema/Class/${e}`}function qke(e,t,n){let r;return i=>{if(r===void 0){const s=jke(i),o=la(new V4([e.ast],()=>(a,l)=>a instanceof i||hs(a,TW(t))?Co(a):_o(new R1(l,Qr(a))),{identifier:t,[pW]:([a])=>new aa(a,s),toCodec:([a])=>new aa(a.ast,s),toArbitrary:([a])=>()=>({arbitrary:a.arbitrary.map(l=>new i(l)),terminal:a.terminal?.map(l=>new i(l))}),toFormatter:([a])=>l=>`${i.identifier}(${a(l)})`,"~sentinels":H9(e.ast),...n}));r=e.pipe(q4(o,s))}return r}}function Bke(e){return kke(e)}const Uke=e=>(t,n)=>{const r=Bke(t)?t:K9(t);return _W(FU,e,r,n,i=>({toString(){return`${i}(${Yi({...this})})`}}))},EW=e=>e!=null&&(e=Object.getPrototypeOf(e),e===Array.prototype||e===Object.prototype);function IW(e,t,n){for(const[r,i]of Object.entries(t)){const s=`${n}.${r}`;e[s]=i,EW(i)&&IW(e,i,s)}}function DW(e){const t={...e};for(const[n,r]of Object.entries(e))EW(r)&&IW(t,r,n);return t}const Wke=(e,t)=>{if(t)for(const[n,r]of Object.entries(t))e=e.replace(new RegExp(`{{\\s*${n}\\s*}}`,"g"),r);return e},Kke=(e=>e);function Gke(e,t=Kke){return(n,...r)=>{n[0]==="."&&(n=n.slice(1));const i=e()?.[n];switch(typeof i){case"function":return i(...r);case"string":return t(i,r[0]);default:return i}}}const{use:Tr,provider:Zke}=Gr({name:"Platform",init:e=>e.value});function Yke(e,t={}){const n=t.storage||globalThis.localStorage,r=t.name||`storage-${nr()}`;if(!n)return[e[0],e[1],null];const i=t.storageOptions,s=t.serialize||JSON.stringify.bind(JSON),o=t.deserialize||JSON.parse.bind(JSON),a=n.getItem(r,i),l=typeof e[0]=="function"?u=>{try{const d=o(u);e[1](()=>d)}catch{}}:u=>{try{const d=o(u);e[1](kn(d))}catch{}};let c=!0;if(a instanceof Promise?a.then(u=>c&&u&&l(u)):a&&l(a),typeof t.sync?.[0]=="function"){const u=typeof e[0]=="function"?e[0]:()=>e[0];t.sync[0](d=>{d.key!==r||(d.url||globalThis.location.href)!==globalThis.location.href||d.newValue===s(Wt(u))||l(d.newValue)})}return[e[0],typeof e[0]=="function"?u=>{const d=e[1](u),f=u!=null?s(d):u;return t.sync?.[1](r,f),f!=null?n.setItem(r,f,i):n.removeItem(r,i),c=!1,d}:(...u)=>{e[1](...u);const d=s(Wt(()=>e[0]));t.sync?.[1](r,d),n.setItem(r,d,i),c=!1},a]}const Xke=e=>{if(e.length!==2)return!1;const t=e.charCodeAt(0);return e[1]===":"&&(t>=65&&t<=90||t>=97&&t<=122)},Qke=e=>{for(let t=e.length-1;t>=0;t--)if(e[t]!=="/")return e.slice(0,t+1);return""},Jke=e=>e[1]===":"||e.startsWith("\\\\"),rt=e=>{const t=Jke(e)?e.replaceAll("\\","/"):e,n=Qke(t);return!n&&t.startsWith("/")?"/":Xke(n)?`${n}/`:n},id="\0";function sg(e,t){if(t.includes(id))throw new Error(`${e} cannot contain null bytes`);return t}function LW(e,t){return[sg("Server scope",e),...t.map(n=>sg("Scoped key part",n))].join(id)}const na={local:"local",fromServerKey(e,t){return sg("Server scope",e==="sidecar"||e===t?na.local:e)}},og={fromRoute(e,t){return sg("Session route",`${e??""}${t?"/"+t:""}`)},fromLegacy(e){return sg("Legacy session route",e)}},fd={from(e,t){return LW(e,[t])},route(e){const t=e.lastIndexOf(id);return og.fromLegacy(t===-1?e:e.slice(t+1))},scope(e){const t=e.indexOf(id);return t===-1?na.local:sg("Stored server scope",e.slice(0,t))}},fc={from(e,...t){return LW(e,t)},prefix(e,...t){return`${fc.from(e,...t)}${id}`}};function u$(e){if(!e||typeof e!="object"||Array.isArray(e))return e;const t=Object.entries(e);if(t.every(([r])=>r.includes(id)))return e;const n=Object.fromEntries(t.filter(([r])=>r.includes(id)));for(const[r,i]of t){if(r.includes(id))continue;const s=fd.from(na.local,og.fromLegacy(r));s in n||(n[s]=i)}return n}const e3e="default.dat",N7="opencode.global.dat",t3e="opencode.window",n3e="opencode.",AW=new Map,r3e=500,MW=8*1024*1024,Yl=new Map,Gw={bytes:0};function Rg(e){const t=Yl.get(e);t&&(Gw.bytes-=t.bytes,Yl.delete(e))}function i3e(){for(;;){if(Yl.size<=r3e&&Gw.bytes<=MW)return;const e=Yl.keys().next().value;if(!e)return;Rg(e)}}function Nv(e,t){const n=t.length*2;if(n>MW){Rg(e);return}const r=Yl.get(e);r&&(Gw.bytes-=r.bytes),Yl.delete(e),Yl.set(e,{value:t,bytes:n}),Gw.bytes+=n,i3e()}function $W(e){const t=Yl.get(e);if(t)return Yl.delete(e),Yl.set(e,t),t.value}function Fm(e){return AW.get(e)===!0}function Gu(e){AW.set(e,!0)}function V7(e){if(e instanceof DOMException)return e.name==="QuotaExceededError"||e.name==="NS_ERROR_DOM_QUOTA_REACHED"||e.name==="QUOTA_EXCEEDED_ERR"||e.code===22||e.code===1014;if(!e||typeof e!="object")return!1;const t=e.name;if(t==="QuotaExceededError"||t==="NS_ERROR_DOM_QUOTA_REACHED"||t&&/quota/i.test(t))return!0;const n=e.code;if(n===22||n===1014)return!0;const r=e.message;return typeof r!="string"?!1:!!/quota/i.test(r)}function s3e(e,t,n){const r=e.length,i=Array.from({length:r},(o,a)=>a),s=[];for(const o of i){const a=e.key(o);if(!a||!a.startsWith(n3e)||a===t)continue;const l=e.getItem(a);s.push({key:a,size:l?.length??0})}s.sort((o,a)=>a.size-o.size);for(const o of s){e.removeItem(o.key),Rg(o.key);try{return e.setItem(t,n),Nv(t,n),!0}catch(a){if(!V7(a))throw a}}return!1}function PW(e,t,n){try{return e.setItem(t,n),Nv(t,n),!0}catch(i){if(!V7(i))throw i}try{return e.removeItem(t),Rg(t),e.setItem(t,n),Nv(t,n),!0}catch(i){if(!V7(i))throw i}return s3e(e,t,n)}function o3e(e){return JSON.parse(JSON.stringify(e))}function d$(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function OW(e,t){if(t===void 0)return e;if(t===null)return t;if(Array.isArray(e))return Array.isArray(t)?t:e;if(d$(e)){if(!d$(t))return e;const n={...e};for(const r of Object.keys(t))r in e?n[r]=OW(e[r],t[r]):n[r]=t[r];return n}return t}function a3e(e){try{return JSON.parse(e)}catch{return}}function ag(e,t,n){const r=a3e(t);if(r===void 0)return;const i=n?n(r):r,s=OW(e,i);return JSON.stringify(s)}function l3e(e){const t=e.storage.getItem(e.key);if(t===null)return;const n=ag(e.defaults,t,e.migrate);return n===void 0?(e.storage.removeItem(e.key),null):(t!==n&&e.storage.setItem(e.key,n),n)}function c3e(e){for(const t of e.stores){const n=t.getItem(e.key);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){t.removeItem(e.key);continue}return e.current.setItem(e.key,r),t.removeItem(e.key),r}if(!e.legacyStore)return null;for(const t of e.keys){const n=e.legacyStore.getItem(t);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){e.legacyStore.removeItem(t);continue}return e.current.setItem(e.key,r),e.legacyStore.removeItem(t),r}return null}async function u3e(e){const t=await e.storage.getItem(e.key);if(t===null)return;const n=ag(e.defaults,t,e.migrate);return n===void 0?(await e.storage.removeItem(e.key).catch(()=>{}),null):(t!==n&&await e.storage.setItem(e.key,n),n)}async function f$(e,t){try{await e.removeItem(t)}catch{}}async function d3e(e){for(const t of e.stores){const n=await t.getItem(e.key);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){await f$(t,e.key);continue}return await e.current.setItem(e.key,r),await t.removeItem(e.key),r}if(!e.legacyStore)return null;for(const t of e.keys){const n=await e.legacyStore.getItem(t);if(n===null)continue;const r=ag(e.defaults,n,e.migrate);if(r===void 0){await f$(e.legacyStore,t);continue}return await e.current.setItem(e.key,r),await e.legacyStore.removeItem(t),r}return null}function Bp(e){const t=(e.slice(0,12)||"workspace").replace(/[^a-zA-Z0-9._-]/g,"-"),n=so(e)??"0";return`opencode.workspace.${t}.${n}.dat`}function f3e(e){const t=(e.slice(0,12)||"draft").replace(/[^a-zA-Z0-9._-]/g,"-"),n=so(e)??"0";return`opencode.draft.${t}.${n}.dat`}function h3e(e){const t=(e||"browser").replace(/[^a-zA-Z0-9._-]/g,"-");return`${t3e}.${t}.dat`}function m3e(e){const t=Bp(rt(e)),n=new Set,r=Bp(e);r!==t&&n.add(r);const i=rt(e);if(i.length>=3&&i[1]===":"&&i[2]==="/"){const o=Bp(i.replaceAll("/","\\"));o!==t&&n.add(o)}if(n.size!==0)return[...n]}function hb(e,t,n,r){return e!==na.local?{storage:Bp(fc.from(e,rt(t))),key:n}:{storage:Bp(rt(t)),legacyStorageNames:m3e(t),key:n,legacy:r}}function Zw(e){const t=`${e}:`,n=`prefix:${e}`,r=i=>t+i;return{getItem:i=>{const s=r(i),o=$W(s);if(Fm(n))return o??null;const a=(()=>{try{return localStorage.getItem(s)}catch{return Gu(n),null}})();return a===null?o??null:(Nv(s,a),a)},setItem:(i,s)=>{const o=r(i);if(!Fm(n)){try{if(PW(localStorage,o,s))return}catch{Gu(n);return}Gu(n)}},removeItem:i=>{const s=r(i);if(Rg(s),!Fm(n))try{localStorage.removeItem(s)}catch{Gu(n)}}}}function z7(){const e="direct";return{getItem:t=>{const n=$W(t);if(Fm(e))return n??null;const r=(()=>{try{return localStorage.getItem(t)}catch{return Gu(e),null}})();return r===null?n??null:(Nv(t,r),r)},setItem:(t,n)=>{if(!Fm(e)){try{if(PW(localStorage,t,n))return}catch{Gu(e);return}Gu(e)}},removeItem:t=>{if(Rg(t),!Fm(e))try{localStorage.removeItem(t)}catch{Gu(e)}}}}const g3e=["prompt","comments","file-view","layout"];function p3e(){return g3e}const Jn={global(e,t){return{storage:N7,key:e,legacy:t}},window(e,t){return{scope:"window",key:e,legacy:t}},draft(e,t,n){return{storage:f3e(e),key:`draft:${t}`,legacy:n}},serverGlobal(e,t,n){return e===na.local?Jn.global(t,n):{storage:N7,key:fc.from(e,t)}},workspace(e,t,n){return hb(na.local,e,`workspace:${t}`,n)},serverWorkspace(e,t,n,r){return hb(e,t,`workspace:${n}`,r)},session(e,t,n,r){return hb(na.local,e,`session:${t}:${n}`,r)},serverSession(e,t,n,r,i){return hb(e,t,`session:${n}:${r}`,i)},scoped(e,t,n,r){return t?Jn.session(e,t,n,r):Jn.workspace(e,n,r)},serverScoped(e,t,n,r,i){return n?Jn.serverSession(e,t,n,r,i):Jn.serverWorkspace(e,t,r,i)}};function v3e(e,t){if(e.scope!=="window")return e;if(t.platform==="desktop"&&!t.windowID)return{...e,storage:N7};const n=t.platform==="desktop"?t.windowID??"browser":"browser";return{...e,storage:h3e(n)}}function Vv(e,t){if(t?.platform==="desktop"&&!!t.storage){t.storage?.(e.storage)?.removeItem(e.key);for(const r of e.legacyStorageNames??[])t.storage?.(r)?.removeItem(e.key);return}if(!e.storage){z7().removeItem(e.key);return}Zw(e.storage).removeItem(e.key);for(const r of e.legacyStorageNames??[])Zw(r).removeItem(e.key)}function _r(e,t){const n=Tr(),r=v3e(typeof e=="string"?{key:e}:e,n),i=o3e(t[0]),s=r.legacy??[],o=n.platform==="desktop"&&!!n.storage,a=o?n.storage?.(r.storage):r.storage?Zw(r.storage):z7(),l=o?r.storage?n.storage?.(e3e):n.storage?.():z7(),c=r.legacyStorageNames??[],u=(()=>{if(!o){const x=a,k=l,C=c.map(Zw);return{getItem:_=>{const L=l3e({storage:x,key:_,defaults:i,migrate:r.migrate});return L!==void 0?L:c3e({current:x,legacyStore:k,stores:C,keys:s,key:_,defaults:i,migrate:r.migrate})},setItem:(_,L)=>{x.setItem(_,L)},removeItem:_=>{x.removeItem(_)}}}const y=a,v=l,b=c.map(x=>n.storage?.(x)).filter(x=>!!x);return{getItem:async x=>{const k=await u3e({storage:y,key:x,defaults:i,migrate:r.migrate});return k!==void 0?k:d3e({current:y,legacyStore:v,stores:b,keys:s,key:x,defaults:i,migrate:r.migrate})},setItem:async(x,k)=>{await y.setItem(x,k)},removeItem:async x=>{await y.removeItem(x)}}})(),[d,f,m]=Yke(t,{name:r.key,storage:u}),g=m instanceof Promise,[p]=ai(()=>m,async y=>(y instanceof Promise&&await y,!0),{initialValue:!g});return[d,f,m,Object.assign(()=>p.loading?!1:p.latest===!0,{promise:m instanceof Promise?m:void 0})]}const RW={"command.category.suggested":"Suggested","command.category.view":"View","command.category.project":"Project","command.category.provider":"Provider","command.category.server":"Server","command.category.session":"Session","command.category.theme":"Theme","command.category.language":"Language","command.category.file":"File","command.category.context":"Context","command.category.terminal":"Terminal","command.category.model":"Model","command.category.mcp":"MCP","command.category.agent":"Agent","command.category.permissions":"Permissions","command.category.workspace":"Workspace","command.category.settings":"Settings","theme.scheme.system":"System","theme.scheme.light":"Light","theme.scheme.dark":"Dark","command.sidebar.toggle":"Toggle sidebar","command.project.open":"Open project","command.project.previous":"Previous project","command.project.next":"Next project","command.project.index":"Switch to project {{index}}","command.provider.connect":"Connect provider","command.server.switch":"Switch server","command.settings.open":"Open settings","command.session.previous":"Previous session","command.session.next":"Next session","command.session.previous.unseen":"Previous unread session","command.session.next.unseen":"Next unread session","command.session.archive":"Archive session","command.palette":"Command palette","command.theme.cycle":"Cycle theme","command.theme.set":"Use theme: {{theme}}","command.theme.scheme.cycle":"Cycle color scheme","command.theme.scheme.set":"Use color scheme: {{scheme}}","command.language.cycle":"Cycle language","command.language.set":"Use language: {{language}}","command.session.new":"New session","command.file.open":"Open file","command.tab.close":"Close tab","command.tab.reopenClosed":"Reopen closed tab","command.context.addSelection":"Add selection to context","command.context.addSelection.description":"Add selected lines from the current file","command.input.focus":"Focus input","command.terminal.toggle":"Toggle terminal","command.fileTree.toggle":"Toggle file tree","command.review.toggle":"Toggle review","command.terminal.new":"New terminal","command.terminal.new.description":"Create a new terminal tab","command.steps.toggle":"Toggle steps","command.steps.toggle.description":"Show or hide steps for the current message","command.message.previous":"Previous message","command.message.previous.description":"Go to the previous user message","command.message.next":"Next message","command.message.next.description":"Go to the next user message","command.model.choose":"Choose model","command.model.choose.description":"Select a different model","command.mcp.toggle":"Toggle MCPs","command.mcp.toggle.description":"Toggle MCPs","command.agent.cycle":"Cycle agent","command.agent.cycle.description":"Switch to the next agent","command.agent.cycle.reverse":"Cycle agent backwards","command.agent.cycle.reverse.description":"Switch to the previous agent","command.model.variant.cycle":"Cycle thinking effort","command.model.variant.cycle.description":"Switch to the next effort level","command.prompt.mode.shell":"Shell","command.prompt.mode.normal":"Prompt","command.permissions.autoaccept.enable":"Auto-accept permissions","command.permissions.autoaccept.disable":"Stop auto-accepting permissions","command.workspace.toggle":"Toggle workspaces","command.workspace.toggle.description":"Enable or disable multiple workspaces in the sidebar","command.session.undo":"Undo","command.session.undo.description":"Undo the last message","command.session.redo":"Redo","command.session.redo.description":"Redo the last undone message","command.session.compact":"Compact session","command.session.compact.description":"Summarize the session to reduce context size","command.session.fork":"Fork from message","command.session.fork.description":"Create a new session from a previous message","command.session.share":"Share session","command.session.share.description":"Share this session and copy the URL to clipboard","command.session.unshare":"Unshare session","command.session.unshare.description":"Stop sharing this session","palette.search.placeholder":"Search files, commands, and sessions","palette.search.placeholder.home":"Search commands and sessions","palette.empty":"No results found","palette.group.commands":"Commands","palette.group.files":"Files","dialog.provider.search.placeholder":"Search providers","dialog.provider.empty":"No providers found","dialog.provider.group.popular":"Popular","dialog.provider.group.other":"Other","dialog.provider.custom.label":"Custom OpenAI-compatible provider","dialog.provider.tag.recommended":"Recommended","dialog.provider.opencode.note":"Curated models including Claude, GPT, Gemini and more","dialog.provider.opencode.tagline":"Reliable optimized models","dialog.provider.opencodeGo.tagline":"Low cost subscription for everyone","dialog.provider.anthropic.note":"Direct access to Claude models, including Pro and Max","dialog.provider.copilot.note":"AI models for coding assistance via GitHub Copilot","dialog.provider.openai.note":"GPT models for fast, capable general AI tasks","dialog.provider.google.note":"Gemini models for fast, structured responses","dialog.provider.openrouter.note":"Access all supported models from one provider","dialog.provider.vercel.note":"Unified access to AI models with smart routing","dialog.model.select.title":"Select model","dialog.model.search.placeholder":"Search models","dialog.model.empty":"No model results","dialog.model.manage":"Manage models","dialog.model.manage.description":"Customize which models appear in the model selector.","dialog.model.manage.provider.toggle":"Toggle all {{provider}} models","dialog.model.unpaid.freeModels.title":"Free models provided by midsomar","dialog.model.unpaid.addMore.title":"Add more models from popular providers","dialog.model.unpaid.viewMoreProviders":"See 70+ more providers","dialog.provider.viewAll":"Show more providers","provider.connect.title":"Connect {{provider}}","provider.connect.title.anthropicProMax":"Login with Claude Pro/Max","provider.connect.selectMethod":"Select login method for {{provider}}.","provider.connect.method.apiKey":"API key","provider.connect.status.inProgress":"Authorization in progress...","provider.connect.status.waiting":"Waiting for authorization...","provider.connect.status.failed":"Authorization failed: {{error}}","provider.connect.apiKey.description":"Enter your {{provider}} API key to connect your account and use {{provider}} models in midsomar.","provider.connect.apiKey.label":"{{provider}} API key","provider.connect.apiKey.placeholder":"API key","provider.connect.apiKey.required":"API key is required","provider.connect.opencodeZen.line1":"midsomar Zen gives you access to a curated set of reliable optimized models for coding agents.","provider.connect.opencodeZen.line2":"With a single API key you'll get access to models such as Claude, GPT, Gemini, GLM and more.","provider.connect.opencodeZen.visit.prefix":"Visit ","provider.connect.opencodeZen.visit.link":"","provider.connect.opencodeZen.visit.suffix":" to collect your API key.","provider.connect.oauth.code.visit.prefix":"Visit ","provider.connect.oauth.code.visit.link":"this link","provider.connect.oauth.code.visit.suffix":" to collect your authorization code to connect your account and use {{provider}} models in midsomar.","provider.connect.oauth.code.label":"{{method}} authorization code","provider.connect.oauth.code.placeholder":"Authorization code","provider.connect.oauth.code.required":"Authorization code is required","provider.connect.oauth.code.invalid":"Invalid authorization code","provider.connect.oauth.auto.visit.prefix":"Visit ","provider.connect.oauth.auto.visit.link":"this link","provider.connect.oauth.auto.visit.suffix":" and enter the code below to connect your account and use {{provider}} models in midsomar.","provider.connect.oauth.auto.confirmationCode":"Confirmation code","provider.connect.toast.connected.title":"{{provider}} connected","provider.connect.toast.connected.description":"{{provider}} models are now available to use.","provider.custom.title":"Custom provider","provider.custom.description.prefix":"Configure an OpenAI-compatible provider. See the ","provider.custom.description.link":"provider config docs","provider.custom.description.suffix":".","provider.custom.field.providerID.label":"Provider ID","provider.custom.field.providerID.placeholder":"myprovider","provider.custom.field.providerID.description":"Lowercase letters, numbers, hyphens, or underscores","provider.custom.field.name.label":"Display name","provider.custom.field.name.placeholder":"My AI Provider","provider.custom.field.baseURL.label":"Base URL","provider.custom.field.baseURL.placeholder":"https://api.myprovider.com/v1","provider.custom.field.apiKey.label":"API key","provider.custom.field.apiKey.placeholder":"API key","provider.custom.field.apiKey.description":"Optional. Leave empty if you manage auth via headers.","provider.custom.models.label":"Models","provider.custom.models.id.label":"ID","provider.custom.models.id.placeholder":"model-id","provider.custom.models.name.label":"Name","provider.custom.models.name.placeholder":"Display Name","provider.custom.models.remove":"Remove model","provider.custom.models.add":"Add model","provider.custom.headers.label":"Headers (optional)","provider.custom.headers.key.label":"Header","provider.custom.headers.key.placeholder":"Header-Name","provider.custom.headers.value.label":"Value","provider.custom.headers.value.placeholder":"value","provider.custom.headers.remove":"Remove header","provider.custom.headers.add":"Add header","provider.custom.error.providerID.required":"Provider ID is required","provider.custom.error.providerID.format":"Use lowercase letters, numbers, hyphens, or underscores","provider.custom.error.providerID.exists":"That provider ID already exists","provider.custom.error.name.required":"Display name is required","provider.custom.error.baseURL.required":"Base URL is required","provider.custom.error.baseURL.format":"Must start with http:// or https://","provider.custom.error.required":"Required","provider.custom.error.duplicate":"Duplicate","provider.disconnect.toast.disconnected.title":"{{provider}} disconnected","provider.disconnect.toast.disconnected.description":"{{provider}} models are no longer available.","model.tag.free":"Free","model.tag.latest":"Latest","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"text","model.input.image":"image","model.input.audio":"audio","model.input.video":"video","model.input.pdf":"pdf","model.tooltip.allows":"Allows: {{inputs}}","model.tooltip.context.label":"Context","model.tooltip.inputs":"Inputs","model.tooltip.model":"Model","model.tooltip.provider":"Provider","model.tooltip.reasoning":"Reasoning","model.tooltip.reasoning.allowed":"Allows reasoning","model.tooltip.reasoning.none":"No reasoning","model.tooltip.context":"Context limit {{limit}}","common.search.placeholder":"Search","common.goBack":"Navigate back","common.goForward":"Navigate forward","common.loading":"Loading","common.loading.ellipsis":"...","common.cancel":"Cancel","common.clear":"Clear","common.open":"Open","common.connect":"Connect","common.disconnect":"Disconnect","common.continue":"Continue","common.submit":"Submit","common.save":"Save","common.saving":"Saving...","common.default":"Default","common.attachment":"attachment","prompt.placeholder.shell":"Enter shell command... {{example}}","prompt.placeholder.normal":'Ask anything... "{{example}}"',"prompt.placeholder.simple":"Ask anything...","prompt.placeholder.summarizeComments":"Summarize comments…","prompt.placeholder.summarizeComment":"Summarize comment…","prompt.mode.shell":"Shell","prompt.mode.normal":"Prompt","prompt.mode.shell.exit":"esc to exit","session.child.promptDisabled":"Subagent sessions cannot be prompted.","session.child.backToParent":"Back to main session.","prompt.example.1":"Fix a TODO in the codebase","prompt.example.2":"What is the tech stack of this project?","prompt.example.3":"Fix broken tests","prompt.example.4":"Explain how authentication works","prompt.example.5":"Find and fix security vulnerabilities","prompt.example.6":"Add unit tests for the user service","prompt.example.7":"Refactor this function to be more readable","prompt.example.8":"What does this error mean?","prompt.example.9":"Help me debug this issue","prompt.example.10":"Generate API documentation","prompt.example.11":"Optimize database queries","prompt.example.12":"Add input validation","prompt.example.13":"Create a new component for...","prompt.example.14":"How do I deploy this project?","prompt.example.15":"Review my code for best practices","prompt.example.16":"Add error handling to this function","prompt.example.17":"Explain this regex pattern","prompt.example.18":"Convert this to TypeScript","prompt.example.19":"Add logging throughout the codebase","prompt.example.20":"What dependencies are outdated?","prompt.example.21":"Help me write a migration script","prompt.example.22":"Implement caching for this endpoint","prompt.example.23":"Add pagination to this list","prompt.example.24":"Create a CLI command for...","prompt.example.25":"How do environment variables work here?","prompt.popover.emptyResults":"No matching results","prompt.popover.emptyCommands":"No matching commands","prompt.dropzone.label":"Drop images, PDFs, or text files here","prompt.dropzone.file.label":"Drop to @mention file","prompt.slash.badge.custom":"custom","prompt.slash.badge.skill":"skill","prompt.slash.badge.mcp":"mcp","prompt.context.active":"active","prompt.context.includeActiveFile":"Include active file","prompt.context.removeActiveFile":"Remove active file from context","prompt.context.removeFile":"Remove file from context","prompt.action.attachFile":"Add files","prompt.menu.addImagesAndFiles":"Add files and more","prompt.menu.imagesAndFiles":"Images and files","prompt.menu.commands":"Commands","prompt.menu.context":"Context","prompt.menu.shellCommand":"Shell command","prompt.attachment.remove":"Remove attachment","prompt.action.send":"Send","prompt.action.stop":"Stop","prompt.toast.pasteUnsupported.title":"Unsupported attachment","prompt.toast.pasteUnsupported.description":"Only images, PDFs, or text files can be attached here.","prompt.toast.modelAgentRequired.title":"Select an agent and model","prompt.toast.modelAgentRequired.description":"Choose an agent and model before sending a prompt.","prompt.toast.worktreeCreateFailed.title":"Failed to create worktree","prompt.toast.sessionCreateFailed.title":"Failed to create session","prompt.toast.shellSendFailed.title":"Failed to send shell command","prompt.toast.commandSendFailed.title":"Failed to send command","prompt.toast.promptSendFailed.title":"Failed to send prompt","prompt.toast.promptSendFailed.description":"Unable to retrieve session","dialog.mcp.title":"MCPs","dialog.mcp.description":"{{enabled}} of {{total}} enabled","dialog.mcp.empty":"No MCPs configured","dialog.lsp.empty":"LSPs auto-detected from file types","dialog.plugins.empty":"Plugins configured in opencode.json","mcp.status.connected":"connected","mcp.status.failed":"failed","mcp.status.needs_auth":"needs auth","mcp.status.disabled":"disabled","mcp.auth.clickToAuthenticate":"Click to authenticate","dialog.fork.empty":"No messages to fork from","dialog.directory.search.placeholder":"Search folders","dialog.directory.empty":"No folders found","dialog.directory.action.selectFile":"Select file","dialog.directory.action.selectFolder":"Select folder","dialog.directory.root":"Root","dialog.directory.parent":"Parent","dialog.directory.readError":"Unable to read this folder","app.server.unreachable":"Could not reach {{server}}","app.server.retrying":"Retrying automatically...","app.server.otherServers":"Other servers","dialog.server.title":"Servers","dialog.server.description":"Switch which midsomar server this app connects to.","dialog.server.search.placeholder":"Search servers","dialog.server.empty":"No servers yet","dialog.server.add.title":"Add server","dialog.server.add.url":"Server address","dialog.server.add.placeholder":"http://localhost:4096","dialog.server.add.error":"Could not connect to server","dialog.server.add.checking":"Checking...","dialog.server.add.button":"Add server","dialog.server.add.name":"Server name (optional)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Username (optional)","dialog.server.add.usernamePlaceholder":"username","dialog.server.add.password":"Password (optional)","dialog.server.add.passwordPlaceholder":"password","dialog.server.edit.title":"Edit server","dialog.server.default.title":"Default server","dialog.server.default.description":"Connect to this server on app launch instead of starting a local server. Requires restart.","dialog.server.default.none":"No server selected","dialog.server.default.set":"Set current server as default","dialog.server.default.clear":"Clear","dialog.server.action.remove":"Remove server","dialog.server.menu.edit":"Edit","dialog.server.menu.default":"Set as default","dialog.server.menu.defaultRemove":"Remove default","dialog.server.menu.delete":"Delete","dialog.server.current":"Current Server","dialog.server.status.default":"Default","wsl.server.add":"Add WSL server","wsl.server.addShort":"Add WSL","wsl.server.label":"WSL","wsl.server.menu.label":"WSL server","wsl.server.retryStart":"Retry start","wsl.server.updating":"Updating...","wsl.onboarding.step.distro":"Choose distro","wsl.onboarding.step.opencode":"midsomar","wsl.onboarding.checkingRuntime":"Checking WSL...","wsl.onboarding.restartRequired":"Windows needs a restart to finish installing WSL.","wsl.onboarding.ready":"WSL is ready.","wsl.onboarding.required":"WSL is required to continue.","wsl.onboarding.checkingDistros":"Checking distros...","wsl.onboarding.installingDistro":"Installing {{distro}}...","wsl.onboarding.checkingDistro":"Checking {{distro}}...","wsl.onboarding.listingDistros":"Listing distros...","wsl.onboarding.distroReady":"{{distro}} is ready.","wsl.onboarding.distroNotInstalled":"{{distro}} is not installed yet.","wsl.onboarding.openDistroOnce":"Open {{distro}} once to finish setup.","wsl.onboarding.finishingDistro":"Finishing setup for {{distro}}.","wsl.onboarding.pickDistro":"Pick a distro or install one below.","wsl.onboarding.checkingOpencode":"Checking midsomar...","wsl.onboarding.checkingOpencodeIn":"Checking midsomar in {{distro}}...","wsl.onboarding.updatingOpencode":"Updating midsomar...","wsl.onboarding.updatingOpencodeIn":"Updating midsomar in {{distro}}...","wsl.onboarding.updateOpencodeIn":"Update midsomar in {{distro}}.","wsl.onboarding.updateOpencode":"Update midsomar","wsl.onboarding.opencodeReadyIn":"midsomar is ready in {{distro}}.","wsl.onboarding.opencodeReady":"midsomar is ready.","wsl.onboarding.installOpencodeIn":"Install midsomar in {{distro}}.","wsl.onboarding.installOpencode":"Install midsomar","wsl.onboarding.chooseDistroFirst":"Choose a distro first.","wsl.onboarding.loadFailed":"Failed to load WSL state.","wsl.onboarding.loading":"Loading...","wsl.onboarding.installedDistros":"Installed distros","wsl.onboarding.checkAgain":"Check again","wsl.onboarding.distroStatus.ready":"Ready","wsl.onboarding.distroStatus.checking":"Checking...","wsl.onboarding.distroStatus.opencodeMissing":"midsomar not installed","wsl.onboarding.distroStatus.missingTools":"Missing bash, curl","wsl.onboarding.distroStatus.unsupported":"Unsupported · Use WSL 2","wsl.onboarding.needAnotherDistro":"Need another distro?","wsl.onboarding.needAnotherDistroHint":"Install a Linux distribution from the WSL catalog","wsl.onboarding.wslNotInstalled.title":"WSL not installed","wsl.onboarding.wslNotInstalled.description":"WSL (Windows Subsystem for Linux) is required before midsomar can add a WSL server","wsl.onboarding.wslUnavailable.title":"WSL unavailable","wsl.onboarding.wslUnavailable.description":"midsomar could not verify WSL on this machine.","wsl.onboarding.installWsl":"Install WSL","wsl.onboarding.windowsRestartRequired":"Restart Windows to finish installing WSL, then reopen midsomar.","wsl.onboarding.next":"Next","wsl.onboarding.refresh":"Refresh","wsl.onboarding.allDistrosAdded":"All installed distros are already added.","wsl.onboarding.noDistros":"No distros detected yet.","wsl.onboarding.install":"Install","wsl.onboarding.installing":"Installing...","wsl.onboarding.installDistro":"Install distro","wsl.onboarding.searchDistros":"Search distros","wsl.onboarding.wsl2Required":"WSL 2 is required.","wsl.onboarding.toolsRequired":"This distro needs bash and curl.","wsl.onboarding.openTerminal":"Open terminal","wsl.onboarding.path":"Path: {{path}}","wsl.onboarding.notFound":"not found","wsl.onboarding.version":"Version: {{version}}","wsl.onboarding.unknown":"unknown","wsl.onboarding.desktopVersion":"desktop {{version}}","wsl.onboarding.versionMismatch":"Installed version does not match the desktop app version.","wsl.onboarding.adding":"Adding...","server.row.noUsername":"no username","dialog.project.edit.title":"Edit project","dialog.project.edit.name":"Name","dialog.project.edit.icon":"Icon","dialog.project.edit.icon.alt":"Project icon","dialog.project.edit.icon.hint":"Click or drag an image","dialog.project.edit.icon.recommended":"Recommended: 128x128px","dialog.project.edit.color":"Color","dialog.project.edit.color.select":"Select {{color}} color","dialog.project.edit.worktree.startup":"Workspace startup script","dialog.project.edit.worktree.startup.description":"Runs after creating a new workspace (worktree).","dialog.project.edit.worktree.startup.placeholder":"e.g. bun install","dialog.releaseNotes.action.getStarted":"Get started","dialog.releaseNotes.action.next":"Next","dialog.releaseNotes.action.hideFuture":"Don't show these in the future","dialog.releaseNotes.media.alt":"Release preview","context.breakdown.title":"Context Breakdown","context.breakdown.note":'Approximate breakdown of input tokens. "Other" includes tool definitions and overhead.',"context.breakdown.system":"System","context.breakdown.user":"User","context.breakdown.assistant":"Assistant","context.breakdown.tool":"Tool Calls","context.breakdown.other":"Other","context.systemPrompt.title":"System Prompt","context.rawMessages.title":"Raw messages","context.stats.session":"Session","context.stats.messages":"Messages","context.stats.provider":"Provider","context.stats.model":"Model","context.stats.limit":"Context Limit","context.stats.totalTokens":"Total Tokens","context.stats.usage":"Usage","context.stats.inputTokens":"Input Tokens","context.stats.outputTokens":"Output Tokens","context.stats.reasoningTokens":"Reasoning Tokens","context.stats.cacheTokens":"Cache Tokens (read/write)","context.stats.userMessages":"User Messages","context.stats.assistantMessages":"Assistant Messages","context.stats.totalCost":"Total Cost","context.stats.sessionCreated":"Session Created","context.stats.lastActivity":"Last Activity","context.usage.tokens":"Tokens","context.usage.usage":"Usage","context.usage.cost":"Cost","context.usage.clickToView":"Click to view context","context.usage.view":"View context usage","language.en":"English","language.zh":"简体中文","language.zht":"繁體中文","language.ko":"한국어","language.de":"Deutsch","language.es":"Español","language.fr":"Français","language.da":"Dansk","language.ja":"日本語","language.pl":"Polski","language.ru":"Русский","language.ar":"العربية","language.no":"Norsk","language.br":"Português (Brasil)","language.bs":"Bosanski","language.uk":"Українська","language.th":"ไทย","language.tr":"Türkçe","toast.language.title":"Language","toast.language.description":"Switched to {{language}}","toast.theme.title":"Theme switched","toast.scheme.title":"Color scheme","toast.workspace.enabled.title":"Workspaces enabled","toast.workspace.enabled.description":"Multiple worktrees are now shown in the sidebar","toast.workspace.disabled.title":"Workspaces disabled","toast.workspace.disabled.description":"Only the main worktree is shown in the sidebar","toast.permissions.autoaccept.on.title":"Auto-accepting permissions","toast.permissions.autoaccept.on.description":"Permission requests will be automatically approved","toast.permissions.autoaccept.off.title":"Stopped auto-accepting permissions","toast.permissions.autoaccept.off.description":"Permission requests will require approval","toast.model.none.title":"No model selected","toast.model.none.description":"Connect a provider to summarize this session","toast.file.loadFailed.title":"Failed to load file","toast.file.listFailed.title":"Failed to list files","toast.context.noLineSelection.title":"No line selection","toast.context.noLineSelection.description":"Select a line range in a file tab first.","toast.session.share.copyFailed.title":"Failed to copy URL to clipboard","toast.session.share.success.title":"Session shared","toast.session.share.success.description":"Share URL copied to clipboard!","toast.session.share.failed.title":"Failed to share session","toast.session.share.failed.description":"An error occurred while sharing the session","toast.session.unshare.success.title":"Session unshared","toast.session.unshare.success.description":"Session unshared successfully!","toast.session.unshare.failed.title":"Failed to unshare session","toast.session.unshare.failed.description":"An error occurred while unsharing the session","toast.session.listFailed.title":"Failed to load sessions for {{project}}","toast.project.reloadFailed.title":"Failed to reload {{project}}","toast.update.title":"Update available","toast.update.description":"A new version of midsomar ({{version}}) is now available to install.","toast.update.action.installRestart":"Install and restart","toast.update.action.notYet":"Not yet","error.page.title":"Something went wrong","error.page.description":"An error occurred while loading the application.","error.page.description.localServerStartup":"An error occurred while starting the local server.","error.page.details.label":"Error Details","error.page.action.restart":"Restart","error.page.action.report":"Report Error","error.page.action.reported":"Error Reported","error.page.action.exportLogs":"Export Logs","error.page.action.checking":"Checking...","error.page.action.checkUpdates":"Check for updates","error.page.action.updateTo":"Update to {{version}}","error.page.circular":"[Circular]","error.page.report.prefix":"Please report this error to the midsomar team","error.page.report.discord":"on Discord","error.page.version":"Version: {{version}}","error.dev.rootNotFound":"Root element not found. Did you forget to add it to your index.html? Or maybe the id attribute got misspelled?","error.serverSync.connectFailed":"Could not connect to server. Is there a server running at `{{url}}`?","error.serverSDK.noServerAvailable":"No server available","error.serverSDK.serverNotAvailable":"Server not available","error.childStore.persistedCacheCreateFailed":"Failed to create persisted cache","error.childStore.persistedProjectMetadataCreateFailed":"Failed to create persisted project metadata","error.childStore.persistedProjectIconCreateFailed":"Failed to create persisted project icon","error.childStore.storeCreateFailed":"Failed to create store","directory.error.invalidUrl":"Invalid directory in URL.","error.chain.unknown":"Unknown error","error.server.invalidConfiguration":"Invalid configuration","error.chain.causedBy":"Caused by:","error.chain.apiError":"API error","error.chain.status":"Status: {{status}}","error.chain.retryable":"Retryable: {{retryable}}","error.chain.responseBody":`Response body:
|
|
1006
1006
|
{{body}}`,"error.chain.didYouMean":"Did you mean: {{suggestions}}","error.chain.modelNotFound":"Model not found: {{provider}}/{{model}}","error.chain.checkConfig":"Check your config (opencode.json) provider/model names","error.chain.mcpFailed":'MCP server "{{name}}" failed. Note, midsomar does not support MCP authentication yet.',"error.chain.providerAuthFailed":"Provider authentication failed ({{provider}}): {{message}}","error.chain.providerInitFailed":'Failed to initialize provider "{{provider}}". Check credentials and configuration.',"error.chain.configJsonInvalid":"Config file at {{path}} is not valid JSON(C)","error.chain.configJsonInvalidWithMessage":"Config file at {{path}} is not valid JSON(C): {{message}}","error.chain.configDirectoryTypo":'Directory "{{dir}}" in {{path}} is not valid. Rename the directory to "{{suggestion}}" or remove it. This is a common typo.',"error.chain.configFrontmatterError":`Failed to parse frontmatter in {{path}}:
|
|
1007
1007
|
{{message}}`,"error.chain.configInvalid":"Config file at {{path}} is invalid","error.chain.configInvalidWithMessage":"Config file at {{path}} is invalid: {{message}}","notification.permission.title":"Permission required","notification.permission.description":"{{sessionTitle}} in {{projectName}} needs permission","notification.question.title":"Question","notification.question.description":"{{sessionTitle}} in {{projectName}} has a question","notification.action.goToSession":"Go to session","notification.session.responseReady.title":"Response ready","notification.session.error.title":"Session error","notification.session.error.fallbackDescription":"An error occurred","home.recentProjects":"Recent projects","home.empty.title":"No recent projects","home.empty.description":"Get started by opening a local project","home.title":"Home","home.projects":"Projects","home.project.add":"Add project","home.recentlyClosed":"Recently closed","home.server.collapse":"Collapse server projects","home.server.expand":"Expand server projects","home.sessions.search.placeholder":"Search sessions","home.sessions.search.placeholder.scoped":"Search sessions in {{scope}}","home.sessions.search.sessions":"Sessions","home.sessions.search.noResults":"No sessions found for {{query}}","home.sessions.empty":"Nothing here yet","home.sessions.empty.description":"Create a session to get started","home.sessions.group.today":"Today","home.sessions.group.yesterday":"Yesterday","home.sessions.group.older":"Older","home.providerTip":"Connect to 75+ providers to use other models, including Claude, GPT, Gemini, etc","session.tab.session":"Session","session.tab.review":"Review","session.tab.context":"Context","session.tab.unknown":"Unknown Session","session.panel.reviewAndFiles":"Review and files","session.error.notFound":"This session cannot be found","session.error.notFound.description":"This tab points to a session that no longer exists on this server.","session.error.notFound.closeTab":"Close Tab","session.error.serverConnection":"Can't connect to this server","session.review.filesChanged":"Files Changed {{count}}","session.review.change.one":"Change","session.review.change.other":"Changes","session.review.loadingChanges":"Loading changes...","session.review.empty":"No changes in this session yet","session.review.noVcs":"No Git Version Control System detected, changes not displayed","session.review.noVcs.createGit.title":"Create a Git repository","session.review.noVcs.createGit.description":"Track, review, and undo changes in this project","session.review.noVcs.createGit.actionLoading":"Creating Git repository...","session.review.noVcs.createGit.action":"Create Git repository","session.review.noSnapshot":"Snapshot tracking is disabled in config, so session changes are unavailable","session.review.noChanges":"No changes","session.review.noUncommittedChanges":"No uncommitted changes yet","session.review.noBranchChanges":"No branch changes yet","session.files.selectToOpen":"Select a file to open","session.files.all":"All files","session.files.empty":"No files","session.files.binaryContent":"Binary file (content cannot be displayed)","session.messages.renderEarlier":"Render earlier messages","session.messages.loadingEarlier":"Loading earlier messages...","session.messages.loadEarlier":"Load earlier messages","session.messages.loading":"Loading messages...","session.messages.jumpToLatest":"Jump to latest","session.context.addToContext":"Add {{selection}} to context","session.todo.title":"Todos","session.todo.collapse":"Collapse","session.todo.expand":"Expand","session.todo.progress":"{{done}} of {{total}} todos completed","session.question.progress":"{{current}} of {{total}} questions","session.question.minimize":"Minimize question","session.question.restore":"Restore question","session.question.pending.one":"{{count}} pending question","session.question.pending.other":"{{count}} pending questions","session.followupDock.summary.one":"{{count}} queued message","session.followupDock.summary.other":"{{count}} queued messages","session.followupDock.sendNow":"Send now","session.followupDock.edit":"Edit","session.followupDock.collapse":"Collapse queued messages","session.followupDock.expand":"Expand queued messages","session.revertDock.summary.one":"{{count}} rolled back message","session.revertDock.summary.other":"{{count}} rolled back messages","session.revertDock.collapse":"Collapse rolled back messages","session.revertDock.expand":"Expand rolled back messages","session.revertDock.restore":"Restore message","session.new.title":"Build anything","session.new.project.new":"New project","session.new.project.search":"Search projects","session.new.project.add":"Add project","session.new.worktree.main":"Main branch","session.new.worktree.mainWithBranch":"Main branch ({{branch}})","session.new.worktree.create":"Create new worktree","session.new.workspace.runIn":"Run session in","session.new.workspace.triggerLocal":"Local","session.new.workspace.local":"Local repository","session.new.workspace.existing":"Workspace…","session.new.git.none":"No Git","session.new.lastModified":"Last modified","session.header.search.placeholder":"Search {{project}}","session.header.searchFiles":"Search files","session.header.openIn":"Open in","session.header.open.action":"Open {{app}}","session.header.open.ariaLabel":"Open in {{app}}","session.header.open.menu":"Open options","session.header.open.copyPath":"Copy path","session.header.open.finder":"Finder","session.header.open.fileExplorer":"File Explorer","session.header.open.fileManager":"File Manager","session.header.reveal.finder":"Reveal in Finder","session.header.reveal.fileExplorer":"Reveal in File Explorer","session.header.reveal.containingFolder":"Open containing folder","session.header.open.app.vscode":"VS Code","session.header.open.app.cursor":"Cursor","session.header.open.app.zed":"Zed","session.header.open.app.textmate":"TextMate","session.header.open.app.antigravity":"Antigravity","session.header.open.app.terminal":"Terminal","session.header.open.app.iterm2":"iTerm2","session.header.open.app.ghostty":"Ghostty","session.header.open.app.warp":"Warp","session.header.open.app.xcode":"Xcode","session.header.open.app.androidStudio":"Android Studio","session.header.open.app.powershell":"PowerShell","session.header.open.app.sublimeText":"Sublime Text","status.popover.trigger":"Status","status.popover.ariaLabel":"Server configurations","status.popover.tab.servers":"Servers","status.popover.tab.mcp":"MCP","status.popover.tab.lsp":"LSP","status.popover.tab.plugins":"Plugins","status.popover.action.manageServers":"Manage servers","session.share.popover.title":"Publish on web","session.share.popover.description.shared":"This session is public on the web. It is accessible to anyone with the link.","session.share.popover.description.unshared":"Share session publicly on the web. It will be accessible to anyone with the link.","session.share.action.share":"Share","session.share.action.publish":"Publish","session.share.action.publishing":"Publishing...","session.share.action.unpublish":"Unpublish","session.share.action.unpublishing":"Unpublishing...","session.share.action.view":"View","session.share.copy.copied":"Copied","session.share.copy.copyLink":"Copy link","lsp.tooltip.none":"No LSP servers","lsp.label.connected":"{{count}} LSP","prompt.loading":"Loading prompt...","terminal.loading":"Loading terminal...","terminal.title":"Terminal","terminal.title.numbered":"Terminal {{number}}","terminal.close":"Close terminal","terminal.connectionLost.title":"Connection Lost","terminal.connectionLost.abnormalClose":"WebSocket closed abnormally: {{code}}","terminal.connectionLost.description":"The terminal connection was interrupted. This can happen when the server restarts.","common.closeTab":"Close tab","common.dismiss":"Dismiss","common.moreCountSuffix":" (+{{count}} more)","common.requestFailed":"Request failed","common.moreOptions":"More options","common.learnMore":"Learn more","common.rename":"Rename","common.reset":"Reset","common.archive":"Archive","common.delete":"Delete","common.close":"Close","common.edit":"Edit","common.loadMore":"Load more","common.key.esc":"ESC","common.key.ctrl":"Ctrl","common.key.alt":"Alt","common.key.shift":"Shift","common.key.meta":"Meta","common.key.space":"Space","common.key.backspace":"Backspace","common.key.enter":"Enter","common.key.tab":"Tab","common.key.delete":"Delete","common.key.home":"Home","common.key.end":"End","common.key.pageUp":"Page Up","common.key.pageDown":"Page Down","common.key.insert":"Insert","common.unknown":"unknown","common.time.justNow":"Just now","common.time.minutesAgo.short":"{{count}}m ago","common.time.hoursAgo.short":"{{count}}h ago","common.time.daysAgo.short":"{{count}}d ago","sidebar.menu.toggle":"Toggle menu","sidebar.nav.projectsAndSessions":"Projects and sessions","sidebar.settings":"Settings","sidebar.help":"Help","sidebar.workspaces.enable":"Enable workspaces","sidebar.workspaces.disable":"Disable workspaces","sidebar.gettingStarted.title":"Getting started","sidebar.gettingStarted.line1":"midsomar includes free models so you can start immediately.","sidebar.gettingStarted.line2":"Connect any provider to use models, inc. Claude, GPT, Gemini etc.","sidebar.project.recentSessions":"Recent sessions","sidebar.project.viewAllSessions":"View all sessions","sidebar.project.clearNotifications":"Clear notifications","sidebar.empty.title":"No projects open","sidebar.empty.description":"Open a project to get started","debugBar.ariaLabel":"Development performance diagnostics","debugBar.na":"n/a","debugBar.nav.label":"NAV","debugBar.nav.tip":"Last completed route transition touching a session page, measured from router start until the first paint after it settles.","debugBar.fps.label":"FPS","debugBar.fps.tip":"Rolling frames per second over the last 5 seconds.","debugBar.frame.label":"FRAME","debugBar.frame.tip":"Worst frame time over the last 5 seconds.","debugBar.jank.label":"JANK","debugBar.jank.tip":"Frames over 32ms in the last 5 seconds.","debugBar.long.label":"LONG","debugBar.long.tip":"Blocked time and long-task count in the last 5 seconds. Max task: {{max}}.","debugBar.delay.label":"DELAY","debugBar.delay.tip":"Worst observed input delay in the last 5 seconds.","debugBar.inp.label":"INP","debugBar.inp.tip":"Approximate interaction duration over the last 5 seconds. This is INP-like, not the official Web Vitals INP.","debugBar.cls.label":"CLS","debugBar.cls.tip":"Cumulative layout shift for the current app lifetime.","debugBar.mem.label":"MEM","debugBar.mem.tipUnavailable":"Used JS heap vs heap limit. Chromium only.","debugBar.mem.tip":"Used JS heap vs heap limit. {{used}} of {{limit}}.","app.name.desktop":"midsomar Desktop","settings.section.desktop":"Desktop","settings.section.server":"Server","settings.tab.general":"General","settings.tab.shortcuts":"Shortcuts","settings.desktop.section.wsl":"WSL","settings.desktop.wsl.title":"WSL integration","settings.desktop.wsl.description":"Run the midsomar server inside WSL on Windows.","settings.general.section.appearance":"Appearance","settings.general.section.advanced":"Advanced","settings.general.section.notifications":"System notifications","settings.general.section.updates":"Updates","settings.general.section.sounds":"Sound effects","settings.general.section.feed":"Feed","settings.general.section.display":"Display","settings.general.row.language.title":"Language","settings.general.row.language.description":"Change the display language for midsomar","settings.general.row.shell.title":"Terminal shell","settings.general.row.shell.description":"Shell used by the terminal and agent tools","settings.general.row.shell.autoDefault":"Auto (Default)","settings.general.row.shell.terminalOnly":"terminal only","settings.general.row.appearance.title":"Appearance","settings.general.row.appearance.description":"Customise how midsomar looks on your device","settings.general.row.colorScheme.title":"Color scheme","settings.general.row.colorScheme.description":"Choose whether midsomar follows the system, light, or dark theme","settings.general.row.theme.title":"Theme","settings.general.row.theme.description":"Customise how midsomar is themed.","settings.general.row.font.title":"Code Font","settings.general.row.font.description":"Customise the font used in code blocks","settings.general.row.terminalFont.title":"Terminal Font","settings.general.row.terminalFont.description":"Customise the font used in the terminal","settings.general.row.uiFont.title":"UI Font","settings.general.row.uiFont.description":"Customise the font used throughout the interface","settings.general.row.followup.title":"Follow-up behavior","settings.general.row.followup.description":"Choose whether follow-up prompts steer immediately or wait in a queue","settings.general.row.followup.option.queue":"Queue","settings.general.row.followup.option.steer":"Steer","settings.general.row.showFileTree.title":"File tree","settings.general.row.showFileTree.description":"Show the file tree panel in sessions","settings.general.row.showNavigation.title":"Navigation controls","settings.general.row.showNavigation.description":"Show the back and forward buttons in the desktop title bar","settings.general.row.showSearch.title":"Command palette","settings.general.row.showSearch.description":"Show the search and command palette button in the title bar","settings.general.row.showTerminal.title":"Terminal","settings.general.row.showTerminal.description":"Show the terminal button in the desktop title bar","settings.general.row.showStatus.title":"Server status","settings.general.row.showStatus.description":"Show the server status button in the title bar","settings.general.row.mobileTitlebarBottom.title":"Bottom navigation","settings.general.row.mobileTitlebarBottom.description":"Place the title bar and session tabs at the bottom of the screen on mobile","settings.general.row.showCustomAgents.title":"Show agent","settings.general.row.showCustomAgents.description":"Switch between agents in the composer. When hidden, defaults to Build agent.","settings.general.row.reasoningSummaries.title":"Show reasoning summaries","settings.general.row.reasoningSummaries.description":"Display model reasoning summaries in the timeline","settings.general.row.shellToolPartsExpanded.title":"Expand shell tool parts","settings.general.row.shellToolPartsExpanded.description":"Show shell tool parts expanded by default in the timeline","settings.general.row.editToolPartsExpanded.title":"Expand edit tool parts","settings.general.row.editToolPartsExpanded.description":"Show edit, write, and patch tool parts expanded by default in the timeline","settings.general.row.newInterface.title":"New layout","settings.general.row.newInterface.badge":"New","settings.general.row.newInterface.description":"Use the new tabs and home layout. Switch between layouts for a limited time.","settings.general.row.newInterfaceNotice.title":"You're now using new layout","settings.general.row.newInterfaceNotice.description":"The previous layout is no longer available","settings.general.row.newInterfaceNotice.dismiss":"Dismiss","settings.general.row.pinchZoom.title":"Pinch to zoom","settings.general.row.pinchZoom.description":"Allow trackpad pinch and Ctrl-scroll gestures to zoom","settings.general.row.wayland.title":"Use native Wayland","settings.general.row.wayland.description":"Disable X11 fallback on Wayland. Requires restart.","settings.general.row.wayland.tooltip":"On Linux with mixed refresh-rate monitors, native Wayland can be more stable.","settings.general.row.releaseNotes.title":"Release notes","settings.general.row.releaseNotes.description":"Show What's New popups after updates","settings.updates.row.startup.title":"Check for updates on startup","settings.updates.row.startup.description":"Automatically check for updates when midsomar launches","settings.updates.row.check.title":"Check for updates","settings.updates.row.check.description":"Manually check for updates and install if available","settings.updates.action.checkNow":"Check now","settings.updates.action.checking":"Checking...","settings.updates.action.downloading":"Downloading...","settings.updates.action.installing":"Installing...","settings.updates.toast.latest.title":"You're up to date","settings.updates.toast.latest.description":"You're running the latest version of midsomar.","sound.option.none":"None","sound.option.alert01":"Alert 01","sound.option.alert02":"Alert 02","sound.option.alert03":"Alert 03","sound.option.alert04":"Alert 04","sound.option.alert05":"Alert 05","sound.option.alert06":"Alert 06","sound.option.alert07":"Alert 07","sound.option.alert08":"Alert 08","sound.option.alert09":"Alert 09","sound.option.alert10":"Alert 10","sound.option.bipbop01":"Bip-bop 01","sound.option.bipbop02":"Bip-bop 02","sound.option.bipbop03":"Bip-bop 03","sound.option.bipbop04":"Bip-bop 04","sound.option.bipbop05":"Bip-bop 05","sound.option.bipbop06":"Bip-bop 06","sound.option.bipbop07":"Bip-bop 07","sound.option.bipbop08":"Bip-bop 08","sound.option.bipbop09":"Bip-bop 09","sound.option.bipbop10":"Bip-bop 10","sound.option.staplebops01":"Staplebops 01","sound.option.staplebops02":"Staplebops 02","sound.option.staplebops03":"Staplebops 03","sound.option.staplebops04":"Staplebops 04","sound.option.staplebops05":"Staplebops 05","sound.option.staplebops06":"Staplebops 06","sound.option.staplebops07":"Staplebops 07","sound.option.nope01":"Nope 01","sound.option.nope02":"Nope 02","sound.option.nope03":"Nope 03","sound.option.nope04":"Nope 04","sound.option.nope05":"Nope 05","sound.option.nope06":"Nope 06","sound.option.nope07":"Nope 07","sound.option.nope08":"Nope 08","sound.option.nope09":"Nope 09","sound.option.nope10":"Nope 10","sound.option.nope11":"Nope 11","sound.option.nope12":"Nope 12","sound.option.yup01":"Yup 01","sound.option.yup02":"Yup 02","sound.option.yup03":"Yup 03","sound.option.yup04":"Yup 04","sound.option.yup05":"Yup 05","sound.option.yup06":"Yup 06","settings.general.notifications.agent.title":"Agent","settings.general.notifications.agent.description":"Show system notification when the agent is complete or needs attention","settings.general.notifications.permissions.title":"Permissions","settings.general.notifications.permissions.description":"Show system notification when a permission is required","settings.general.notifications.errors.title":"Errors","settings.general.notifications.errors.description":"Show system notification when an error occurs","settings.general.sounds.agent.title":"Agent","settings.general.sounds.agent.description":"Play sound when the agent is complete or needs attention","settings.general.sounds.permissions.title":"Permissions","settings.general.sounds.permissions.description":"Play sound when a permission is required","settings.general.sounds.errors.title":"Errors","settings.general.sounds.errors.description":"Play sound when an error occurs","settings.shortcuts.title":"Keyboard shortcuts","settings.shortcuts.reset.button":"Reset to defaults","settings.shortcuts.reset.toast.title":"Shortcuts reset","settings.shortcuts.reset.toast.description":"Keyboard shortcuts have been reset to defaults.","settings.shortcuts.conflict.title":"Shortcut already in use","settings.shortcuts.conflict.description":"{{keybind}} is already assigned to {{titles}}.","settings.shortcuts.unassigned":"Unassigned","settings.shortcuts.pressKeys":"Press keys","settings.shortcuts.search.placeholder":"Search shortcuts","settings.shortcuts.search.empty":"No shortcuts found","settings.shortcuts.group.general":"General","settings.shortcuts.group.session":"Session","settings.shortcuts.group.navigation":"Navigation","settings.shortcuts.group.modelAndAgent":"Model and agent","settings.shortcuts.group.terminal":"Terminal","settings.shortcuts.group.prompt":"Prompt","settings.providers.title":"Providers","settings.providers.description":"Provider settings will be configurable here.","settings.providers.section.connected":"Connected providers","settings.providers.connected.empty":"No connected providers","settings.providers.connected.environmentDescription":"Connected from your environment variables","settings.providers.section.popular":"Popular providers","settings.providers.custom.description":"Add an OpenAI-compatible provider by base URL.","settings.providers.tag.environment":"Environment","settings.providers.tag.config":"Config","settings.providers.tag.custom":"Custom","settings.providers.tag.other":"Other","settings.models.title":"Models","settings.models.description":"Model settings will be configurable here.","settings.agents.title":"Agents","settings.agents.description":"Agent settings will be configurable here.","settings.commands.title":"Commands","settings.commands.description":"Command settings will be configurable here.","settings.mcp.title":"MCP","settings.mcp.description":"MCP settings will be configurable here.","settings.permissions.title":"Permissions","settings.permissions.description":"Control what tools the server can use by default.","settings.permissions.section.tools":"Tools","settings.permissions.toast.updateFailed.title":"Failed to update permissions","settings.permissions.action.allow":"Allow","settings.permissions.action.ask":"Ask","settings.permissions.action.deny":"Deny","settings.permissions.tool.read.title":"Read","settings.permissions.tool.read.description":"Reading a file (matches the file path)","settings.permissions.tool.edit.title":"Edit","settings.permissions.tool.edit.description":"Modify files, including edits, writes, and patches","settings.permissions.tool.glob.title":"Glob","settings.permissions.tool.glob.description":"Match files using glob patterns","settings.permissions.tool.grep.title":"Grep","settings.permissions.tool.grep.description":"Search file contents using regular expressions","settings.permissions.tool.list.title":"List","settings.permissions.tool.list.description":"List files within a directory","settings.permissions.tool.bash.title":"Bash","settings.permissions.tool.bash.description":"Run shell commands","settings.permissions.tool.task.title":"Task","settings.permissions.tool.task.description":"Launch sub-agents","settings.permissions.tool.skill.title":"Skill","settings.permissions.tool.skill.description":"Load a skill by name","settings.permissions.tool.lsp.title":"LSP","settings.permissions.tool.lsp.description":"Run language server queries","settings.permissions.tool.todowrite.title":"Todo Write","settings.permissions.tool.todowrite.description":"Update the todo list","settings.permissions.tool.webfetch.title":"Web Fetch","settings.permissions.tool.webfetch.description":"Fetch content from a URL","settings.permissions.tool.websearch.title":"Web Search","settings.permissions.tool.websearch.description":"Search the web","settings.permissions.tool.external_directory.title":"External Directory","settings.permissions.tool.external_directory.description":"Access files outside the project directory","settings.permissions.tool.doom_loop.title":"Doom Loop","settings.permissions.tool.doom_loop.description":"Detect repeated tool calls with identical input","session.delete.failed.title":"Failed to delete session","session.delete.title":"Delete session","session.delete.confirm":'Delete session "{{name}}"?',"session.delete.button":"Delete session","workspace.new":"New workspace","workspace.type.local":"local","workspace.type.sandbox":"sandbox","workspace.create.failed.title":"Failed to create workspace","workspace.delete.failed.title":"Failed to delete workspace","workspace.resetting.title":"Resetting workspace","workspace.resetting.description":"This may take a minute.","workspace.reset.failed.title":"Failed to reset workspace","workspace.reset.success.title":"Workspace reset","workspace.reset.success.description":"Workspace now matches the default branch.","workspace.error.stillPreparing":"Workspace is still preparing","workspace.status.checking":"Checking for unmerged changes...","workspace.status.error":"Unable to verify git status.","workspace.status.clean":"No unmerged changes detected.","workspace.status.dirty":"Unmerged changes detected in this workspace.","workspace.delete.title":"Delete workspace","workspace.delete.confirm":'Delete workspace "{{name}}"?',"workspace.delete.button":"Delete workspace","workspace.reset.title":"Reset workspace","workspace.reset.confirm":'Reset workspace "{{name}}"?',"workspace.reset.button":"Reset workspace","workspace.reset.archived.none":"No active sessions will be archived.","workspace.reset.archived.one":"1 session will be archived.","workspace.reset.archived.many":"{{count}} sessions will be archived.","workspace.reset.note":"This will reset the workspace to match the default branch."};function y3e(e){return`oc_locale=${encodeURIComponent(e)}; Path=/; Max-Age=31536000; SameSite=Lax`}const FW=["en","zh","zht","ko","de","es","fr","da","ja","pl","ru","uk","bs","ar","no","br","th","tr"],b3e={en:"en",zh:"zh-Hans",zht:"zh-Hant",ko:"ko",de:"de",es:"es",fr:"fr",da:"da",ja:"ja",pl:"pl",ru:"ru",uk:"uk",ar:"ar",no:"nb-NO",br:"pt-BR",th:"th",bs:"bs",tr:"tr"},w3e={en:"language.en",zh:"language.zh",zht:"language.zht",ko:"language.ko",de:"language.de",es:"language.es",fr:"language.fr",da:"language.da",ja:"language.ja",pl:"language.pl",ru:"language.ru",uk:"language.uk",ar:"language.ar",no:"language.no",br:"language.br",th:"language.th",bs:"language.bs",tr:"language.tr"},zv=DW({...RW,...JV}),H7=new Map([["en",zv]]),ps=(e,t)=>Promise.all([e,t]).then(([n,r])=>({...zv,...DW({...n.dict,...r.dict})})),x3e={zh:()=>ps(B(()=>import("./zh-BPUvYPSS.js"),[]),B(()=>import("./zh-B268Sls8.js"),[])),zht:()=>ps(B(()=>import("./zht-zA5x0W7N.js"),[]),B(()=>import("./zht-Br909_dL.js"),[])),ko:()=>ps(B(()=>import("./ko-Dq1_Aq_h.js"),[]),B(()=>import("./ko-C92hX257.js"),[])),de:()=>ps(B(()=>import("./de-CdqM0zME.js"),[]),B(()=>import("./de-CELw_bn8.js"),[])),es:()=>ps(B(()=>import("./es-_-j_uksi.js"),[]),B(()=>import("./es-DCGlYCXN.js"),[])),fr:()=>ps(B(()=>import("./fr-DZbGGwqB.js"),[]),B(()=>import("./fr-Du5j-zoY.js"),[])),da:()=>ps(B(()=>import("./da-2MqhfWgT.js"),[]),B(()=>import("./da-CgNNle9H.js"),[])),ja:()=>ps(B(()=>import("./ja-B9nKmZ4y.js"),[]),B(()=>import("./ja-iJh2cVB-.js"),[])),pl:()=>ps(B(()=>import("./pl-sy_5meMH.js"),[]),B(()=>import("./pl-U1SU7oID.js"),[])),ru:()=>ps(B(()=>import("./ru-a87EhzgL.js"),[]),B(()=>import("./ru-CkmmQ1_k.js"),[])),uk:()=>ps(B(()=>import("./uk-BVQd30TS.js"),[]),B(()=>import("./uk-fqr0bcE9.js"),[])),ar:()=>ps(B(()=>import("./ar-dmlRltPj.js"),[]),B(()=>import("./ar-C4xsRFR0.js"),[])),no:()=>ps(B(()=>import("./no-lkr3H0wq.js"),[]),B(()=>import("./no-CsX2bvW2.js"),[])),br:()=>ps(B(()=>import("./br-CS-UU6Fg.js"),[]),B(()=>import("./br-XyupthPW.js"),[])),th:()=>ps(B(()=>import("./th-BdqWeqlh.js"),[]),B(()=>import("./th-BWKOZ0j_.js"),[])),bs:()=>ps(B(()=>import("./bs-BjpweuBW.js"),[]),B(()=>import("./bs-BW2PeAiy.js"),[])),tr:()=>ps(B(()=>import("./tr-BiDFBY-2.js"),[]),B(()=>import("./tr-Ds4_hniB.js"),[]))};function NW(e){const t=H7.get(e);if(t)return Promise.resolve(t);if(e==="en")return Promise.resolve(zv);const n=x3e[e];return n().then(r=>(H7.set(e,r),r))}const k3e=[{locale:"en",match:e=>e.startsWith("en")},{locale:"zht",match:e=>e.startsWith("zh")&&e.includes("hant")},{locale:"zh",match:e=>e.startsWith("zh")},{locale:"ko",match:e=>e.startsWith("ko")},{locale:"de",match:e=>e.startsWith("de")},{locale:"es",match:e=>e.startsWith("es")},{locale:"fr",match:e=>e.startsWith("fr")},{locale:"da",match:e=>e.startsWith("da")},{locale:"ja",match:e=>e.startsWith("ja")},{locale:"pl",match:e=>e.startsWith("pl")},{locale:"ru",match:e=>e.startsWith("ru")},{locale:"uk",match:e=>e.startsWith("uk")},{locale:"ar",match:e=>e.startsWith("ar")},{locale:"no",match:e=>e.startsWith("no")||e.startsWith("nb")||e.startsWith("nn")},{locale:"br",match:e=>e.startsWith("pt")},{locale:"th",match:e=>e.startsWith("th")},{locale:"bs",match:e=>e.startsWith("bs")},{locale:"tr",match:e=>e.startsWith("tr")}];function VW(){if(typeof navigator!="object")return"en";const e=navigator.languages?.length?navigator.languages:[navigator.language];for(const t of e){if(!t)continue;const n=t.toLowerCase(),r=k3e.find(i=>i.match(n));if(r)return r.locale}return"en"}function j7(e){return FW.includes(e)?e:"en"}function zW(){if(typeof localStorage=="object")try{const e=localStorage.getItem("opencode.global.dat:language");if(!e)return;const t=JSON.parse(e);return typeof t?.locale!="string"?void 0:j7(t.locale)}catch{return}}const h$=zW()??VW();h$!=="en"&&NW(h$);const{use:wt,provider:S3e}=Gr({name:"Language",gate:!1,init:e=>{const t=e.locale??zW()??VW(),[n,r,i,s]=_r(Jn.global("language",["language.v1"]),Ze({locale:t})),o=I(()=>j7(n.locale)),a=I(()=>b3e[o()]),[l]=ai(o,NW,{initialValue:H7.get(t)??zv}),c=Gke(()=>l()??zv,Wke),u=d=>c(w3e[d]);return ae(()=>{typeof document=="object"&&(document.documentElement.lang=o(),document.cookie=y3e(o()))}),{ready:s,locale:o,intl:a,locales:FW,label:u,t:c,setLocale(d){r("locale",j7(d))}}}}),uut="System Mono",dut="System Sans",fut="JetBrainsMono Nerd Font Mono",R5=!0,C3e=!0,_3e=new Date(2026,8,14),m$="1.17.19";function q7(e,t){const n=o=>{const a=/^v?(\d+)\.(\d+)\.(\d+)(?:[-+].*)?$/i.exec(o.trim());if(a)return a.slice(1).map(Number)},r=n(e),i=n(t);if(!r||!i)return;const s=r.findIndex((o,a)=>o!==i[a]);return s===-1?0:r[s]-i[s]}function HW(e,t){if(!e||!t)return!1;const n=q7(t,e);return n!==void 0&&n>0}function T3e(e,t,n){return HW(e,t)||!e&&n}function E3e(e,t){return e!==null||t!==void 0}function I3e(e,t){if(!t)return!1;const n=q7(t,m$);if(!e)return n!==void 0&&n>0;if(!HW(e,t))return!1;const r=q7(e,m$);return r!==void 0&&n!==void 0&&r<=0&&n>0}function D3e(e,t,n,r){return{available:e&&t&&!n,notice:e&&t&&n&&!r}}const L3e=2147483647;function A3e(e,t){return Math.min(Math.max(0,e-t),L3e)}function g$(e,t,n=!0){return e?!0:t??n}const M3e='ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',$3e='ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif',P3e='"JetBrainsMono Nerd Font Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',O3e=M3e,R3e=$3e,F3e=P3e;function G9(e){return e??""}function N3e(e){return/^[\w-]+$/.test(e)?e:`"${e.replaceAll("\\","\\\\").replaceAll('"','\\"')}"`}function Z9(e,t){const n=e?.trim()??"";return n?`${N3e(n)}, ${t}`:t}function hut(e){return G9(e)}function mut(e){return G9(e)}function V3e(e){return Z9(e,O3e)}function z3e(e){return Z9(e,R3e)}function gut(e){return G9(e)}function p$(e){return Z9(e,F3e)}const Ir={general:{autoSave:!0,releaseNotes:!0,followup:"steer",showFileTree:!1,showNavigation:!1,showSearch:!1,showStatus:!1,showTerminal:!1,showReasoningSummaries:!1,shellToolPartsExpanded:!1,editToolPartsExpanded:!1,showCustomAgents:!1,mobileTitlebarPosition:"top"},appearance:{fontSize:14,mono:"",sans:"",terminal:""},keybinds:{},permissions:{autoApprove:!1},notifications:{agent:!0,permissions:!0,errors:!1},sounds:{agentEnabled:!0,agent:"staplebops-01",permissionsEnabled:!0,permissions:"staplebops-02",errorsEnabled:!0,errors:"nope-03"}};function yr(e,t){return I(()=>e()??t)}const{use:ar,provider:H3e}=Gr({name:"Settings",gate:!1,init:()=>{const e=Tr(),[t,n,r,i]=_r("settings.v3",Ze(Ir)),[s,o,,a]=_r("app-version.v1",Ze({version:void 0})),[l,c]=Ze({classified:!1,migrationApplied:!1,previous:void 0}),u=yr(()=>t.general?.showFileTree,Ir.general.showFileTree),d=yr(()=>t.general?.showSearch,Ir.general.showSearch),f=yr(()=>t.general?.showStatus,Ir.general.showStatus),m=yr(()=>t.general?.showCustomAgents,Ir.general.showCustomAgents),g=_3e,[p,y]=De(g?Date.now()>=g.getTime():!1),v=I(()=>typeof t.general?.layoutTransitionEligible=="boolean"),b=yr(()=>t.general?.layoutTransitionEligible,!1),w=yr(()=>t.general?.newInterfaceNoticeDismissed,!1),x=I(()=>l.classified&&!l.migrationApplied?I3e(l.previous,e.version):!1),k=I(()=>D3e(!!g,b(),p(),w())),C=I(()=>x()?!0:!i()&&!p()?R5:v()?g$(p(),t.general?.newLayoutDesigns,b()?R5:C3e):g$(p(),t.general?.newLayoutDesigns,R5)),E=_=>I(()=>!C()||_());if(g&&!p()){const _={current:void 0},L=()=>{if(Date.now()>=g.getTime()){y(!0);return}_.current=setTimeout(L,A3e(g.getTime(),Date.now()))};L(),Te(()=>{_.current!==void 0&&clearTimeout(_.current)})}return ae(()=>{!a()||l.classified||(c({classified:!0,previous:s.version}),!(!e.version||s.version===e.version)&&o("version",e.version))}),ae(()=>{!i()||!l.classified||e.platform!=="web"||v()||n("general","layoutTransitionEligible",E3e(r,l.previous))}),ae(()=>{!i()||!l.classified||l.migrationApplied||(x()&&t.general?.newLayoutDesigns!==!0&&n("general","newLayoutDesigns",!0),c("migrationApplied",!0))}),ae(()=>{!i()||!l.classified||typeof t.general?.shouldDisplayTabsToast!="boolean"&&(!l.previous&&!v()||n("general","shouldDisplayTabsToast",T3e(l.previous,e.version,b())))}),ae(()=>{!i()||!p()||t.general?.newLayoutDesigns!==!0&&n("general","newLayoutDesigns",!0)}),ae(()=>{if(typeof document>"u")return;const _=document.documentElement;_.style.setProperty("--font-family-mono",V3e(t.appearance?.mono)),_.style.setProperty("--font-family-sans",z3e(t.appearance?.sans))}),ae(()=>{t.general?.followup==="queue"&&n("general","followup","steer")}),{ready:i,get current(){return t},general:{autoSave:yr(()=>t.general?.autoSave,Ir.general.autoSave),setAutoSave(_){n("general","autoSave",_)},releaseNotes:yr(()=>t.general?.releaseNotes,Ir.general.releaseNotes),setReleaseNotes(_){n("general","releaseNotes",_)},followup:yr(()=>t.general?.followup==="queue"?"steer":t.general?.followup,Ir.general.followup),setFollowup(_){n("general","followup",_==="queue"?"steer":_)},showFileTree:u,setShowFileTree(_){n("general","showFileTree",_)},showNavigation:yr(()=>t.general?.showNavigation,Ir.general.showNavigation),setShowNavigation(_){n("general","showNavigation",_)},showSearch:d,setShowSearch(_){n("general","showSearch",_)},showStatus:f,setShowStatus(_){n("general","showStatus",_)},showTerminal:yr(()=>t.general?.showTerminal,Ir.general.showTerminal),setShowTerminal(_){n("general","showTerminal",_)},showReasoningSummaries:yr(()=>t.general?.showReasoningSummaries,Ir.general.showReasoningSummaries),setShowReasoningSummaries(_){n("general","showReasoningSummaries",_)},shellToolPartsExpanded:yr(()=>t.general?.shellToolPartsExpanded,Ir.general.shellToolPartsExpanded),setShellToolPartsExpanded(_){n("general","shellToolPartsExpanded",_)},editToolPartsExpanded:yr(()=>t.general?.editToolPartsExpanded,Ir.general.editToolPartsExpanded),setEditToolPartsExpanded(_){n("general","editToolPartsExpanded",_)},showCustomAgents:m,setShowCustomAgents(_){n("general","showCustomAgents",_)},mobileTitlebarPosition:yr(()=>t.general?.mobileTitlebarPosition,Ir.general.mobileTitlebarPosition),setMobileTitlebarPosition(_){n("general","mobileTitlebarPosition",_)},newLayoutDesigns:C,setNewLayoutDesigns(_){const L=p()?!0:_;C()!==L&&(n("general","newLayoutDesigns",L),typeof window<"u"&&setTimeout(()=>window.location.reload()))},layoutTransitionClassified:v,setOldLayoutEligible(_){typeof t.general?.layoutTransitionEligible!="boolean"&&n("general","layoutTransitionEligible",_)},layoutTransitionAvailable:I(()=>i()&&k().available),newInterfaceNoticeVisible:I(()=>i()&&k().notice),dismissNewInterfaceNotice(){n("general","newInterfaceNoticeDismissed",!0)},shouldDisplayTabsToast:yr(()=>t.general?.shouldDisplayTabsToast,!1),dismissTabsToast(){n("general","shouldDisplayTabsToast",!1)}},visibility:{fileTree:E(u),search:E(d),status:E(f),customAgents:E(m)},appearance:{fontSize:yr(()=>t.appearance?.fontSize,Ir.appearance.fontSize),setFontSize(_){n("appearance","fontSize",_)},font:yr(()=>t.appearance?.mono,Ir.appearance.mono),setFont(_){n("appearance","mono",_.trim()?_:"")},uiFont:yr(()=>t.appearance?.sans,Ir.appearance.sans),setUIFont(_){n("appearance","sans",_.trim()?_:"")},terminalFont:yr(()=>t.appearance?.terminal,Ir.appearance.terminal),setTerminalFont(_){n("appearance","terminal",_.trim()?_:"")}},keybinds:{get:_=>t.keybinds?.[_],set(_,L){n("keybinds",_,L)},reset(_){n("keybinds",L=>{if(!Object.prototype.hasOwnProperty.call(L,_))return L;const O={...L};return delete O[_],O})},resetAll(){n("keybinds",kn({}))}},permissions:{autoApprove:yr(()=>t.permissions?.autoApprove,Ir.permissions.autoApprove),setAutoApprove(_){n("permissions","autoApprove",_)}},notifications:{agent:yr(()=>t.notifications?.agent,Ir.notifications.agent),setAgent(_){n("notifications","agent",_)},permissions:yr(()=>t.notifications?.permissions,Ir.notifications.permissions),setPermissions(_){n("notifications","permissions",_)},errors:yr(()=>t.notifications?.errors,Ir.notifications.errors),setErrors(_){n("notifications","errors",_)}},sounds:{agentEnabled:yr(()=>t.sounds?.agentEnabled,Ir.sounds.agentEnabled),setAgentEnabled(_){n("sounds","agentEnabled",_)},agent:yr(()=>t.sounds?.agent,Ir.sounds.agent),setAgent(_){n("sounds","agent",_)},permissionsEnabled:yr(()=>t.sounds?.permissionsEnabled,Ir.sounds.permissionsEnabled),setPermissionsEnabled(_){n("sounds","permissionsEnabled",_)},permissions:yr(()=>t.sounds?.permissions,Ir.sounds.permissions),setPermissions(_){n("sounds","permissions",_)},errorsEnabled:yr(()=>t.sounds?.errorsEnabled,Ir.sounds.errorsEnabled),setErrorsEnabled(_){n("sounds","errorsEnabled",_)},errors:yr(()=>t.sounds?.errors,Ir.sounds.errors),setErrors(_){n("sounds","errors",_)}}}}}),km=typeof navigator=="object"&&/(Mac|iPod|iPhone|iPad)/.test(navigator.platform),mb="command.palette",v$="mod+k,mod+shift+p",Hv="suggested.",j3e=new Set(["terminal.toggle","terminal.new","file.attach"]);function b0(e,t){return t?t(e):RW[e]}function am(e){return e.startsWith(Hv)?e.slice(Hv.length):e}function jW(e){return e===","?"comma":e==="+"?"plus":e===" "?"space":e.toLowerCase()}function B7(e,t,n,r,i){const s=(t?1:0)|(n?2:0)|(r?4:0)|(i?8:0);return`${e}:${s}`}function q3e(e){return B7(jW(e.key),e.ctrlKey,e.metaKey,e.shiftKey,e.altKey)}function B3e(e){return e?j3e.has(am(e)):!1}function put(e){return e.filter(t=>!t.disabled&&!t.hidden&&!t.id.startsWith(Hv)&&t.id!=="file.open")}function U3e(e,t){return e?.find(n=>n.when?.(t))??e?.find(n=>!n.when)}function W3e(e,t){return[t,...e]}function K3e(e){const t=new Set;return e.filter(n=>n.key===void 0?!0:t.has(n.key)?!1:(t.add(n.key),!0))}function Yw(e){return!e||e==="none"?[]:e.split(",").map(t=>{const n=t.trim().toLowerCase().split("+"),r={key:"",ctrl:!1,meta:!1,shift:!1,alt:!1};for(const i of n)switch(i){case"ctrl":case"control":r.ctrl=!0;break;case"meta":case"cmd":case"command":r.meta=!0;break;case"mod":km?r.meta=!0:r.ctrl=!0;break;case"alt":case"option":r.alt=!0;break;case"shift":r.shift=!0;break;default:r.key=i;break}return r})}function G3e(e,t){const n=jW(t.key);for(const r of e){const i=r.key===n,s=r.ctrl===(t.ctrlKey||!1),o=r.meta===(t.metaKey||!1),a=r.shift===(t.shiftKey||!1),l=r.alt===(t.altKey||!1);if(i&&s&&o&&a&&l)return!0}return!1}function Z3e(e,t){const n=[];if(e.ctrl&&n.push(km?"⌃":b0("common.key.ctrl",t)),e.alt&&n.push(km?"⌥":b0("common.key.alt",t)),e.shift&&n.push(km?"⇧":b0("common.key.shift",t)),e.meta&&n.push(km?"⌘":b0("common.key.meta",t)),!e.key)return n;const r={arrowup:"↑",arrowdown:"↓",arrowleft:"←",arrowright:"→",comma:",",plus:"+"},i={backspace:"common.key.backspace",delete:"common.key.delete",end:"common.key.end",enter:"common.key.enter",esc:"common.key.esc",escape:"common.key.esc",home:"common.key.home",insert:"common.key.insert",pagedown:"common.key.pageDown",pageup:"common.key.pageUp",space:"common.key.space",tab:"common.key.tab"},s=e.key.toLowerCase(),o=r[s]??(i[s]?b0(i[s],t):s.length===1?s.toUpperCase():s.charAt(0).toUpperCase()+s.slice(1));return n.push(o),n}function qW(e,t){if(!e||e==="none")return[];const n=Yw(e)[0];return n?Z3e(n,t):[]}function Y3e(e,t){const n=qW(e,t);return n.length===0?"":km?n.join(""):n.join("+")}function X3e(e){return e instanceof HTMLElement?!!(e.isContentEditable||e.closest("[contenteditable='true']")||e.closest("input, textarea, select")):!1}const{use:Qi,provider:Q3e}=Gr({name:"Command",init:()=>{const e=Mr(),t=ar(),n=wt(),[r,i]=Ze({registrations:[],suspendCount:0}),[s,o,a,l]=_r(Jn.global("command.catalog.v1"),Ze({})),c=(C,E)=>{const L=t.keybinds.get(am(C))??E;if(!(!L||L==="none"))return L},u=I(()=>{const C=new Set,E=[];for(const _ of K3e(r.registrations))for(const L of _.options())C.has(L.id)||(C.add(L.id),E.push(L));return E});ae(()=>{l()&&o(u().reduce((C,E)=>{const _=am(E.id);return E.title&&(C[_]={title:E.title,description:E.description,category:E.category,keybind:E.keybind,slash:E.slash}),C},{}))});const d=I(()=>Object.entries(s).map(([C,E])=>({id:C,...E}))),f=I(()=>{const C=u().map(_=>({..._,keybind:c(_.id,_.keybind)}));return[...C.filter(_=>_.suggested&&!_.disabled).map(_=>({..._,id:Hv+_.id,category:n.t("command.category.suggested")})),...C]}),m=()=>r.suspendCount>0,g=I(()=>{const C=t.keybinds.get(mb)??v$,E=Yw(C);return new Set(E.map(_=>B7(_.key,_.ctrl,_.meta,_.shift,_.alt)))}),p=I(()=>{const C=new Map;for(const E of f()){if(E.id.startsWith(Hv)||E.disabled||!E.keybind)continue;const _=Yw(E.keybind);for(const L of _){if(!L.key)continue;const O=B7(L.key,L.ctrl,L.meta,L.shift,L.alt),$=C.get(O);if($){$.push(E);continue}C.set(O,[E])}}return C}),y=I(()=>{const C=new Map;for(const E of f())C.set(E.id,E),C.set(am(E.id),E);return C}),v=(C,E)=>{y().get(C)?.onSelect?.(E)},b=()=>{v(mb,"palette")},w=C=>{if(m()||e.active)return;const E=q3e(C),_=g().has(E),L=U3e(p().get(E),C),O=C.ctrlKey||C.metaKey||C.altKey,$=C.key==="Tab";if(!(X3e(C.target)&&!_&&!B3e(L?.id)&&!O&&!$)){if(_){C.preventDefault(),C.stopPropagation(),b();return}L&&(C.preventDefault(),C.stopPropagation(),L.onSelect?.("keybind"))}};sn(()=>{an(document,"keydown",w,{capture:!0})});function x(C,E){const _=typeof C=="string"?C:void 0,L=typeof C=="function"?C:E;if(!L)return;const O=I(L),$={key:_,options:O};i("registrations",V=>W3e(V,$)),Te(()=>{i("registrations",V=>V.filter(P=>P!==$))})}const k=C=>{if(C===mb)return t.keybinds.get(mb)??v$;const E=am(C);return f().find(_=>am(_.id)===E)?.keybind??c(E,s[E]?.keybind)};return{register:x,trigger(C,E){v(C,E)},keybind(C){const E=k(C);return E?Y3e(E,n.t):""},keybindParts(C){const E=k(C);return E?qW(E,n.t):[]},show:b,keybinds(C){i("suspendCount",E=>Math.max(0,E+(C?-1:1)))},suspended:m,get catalog(){return d()},get options(){return f()}}}});class BW extends Set{emit(t){for(const n of this)n(t)}}function J3e(){const e=new BW;return{listen(t){return e.add(t),JC(e.delete.bind(e,t))},emit:e.emit.bind(e),clear:Te(e.clear.bind(e))}}class e5e extends Map{on(t,n){let r=this.get(t);r||this.set(t,r=new BW),r.add(n)}off(t,n){const r=this.get(t);r?.delete(n)&&!r.size&&this.delete(t)}emit(t,n){this.get(t)?.emit(n)}}function t5e(){const e=new e5e;return{on(t,n){return e.on(t,n),JC(e.off.bind(e,t,n))},emit:e.emit.bind(e),clear:Te(e.clear.bind(e))}}function UW(){const e=t5e(),t=J3e();return{on:e.on,clear:e.clear,listen:t.listen,emit(n,r){t.emit({name:n,details:r}),e.emit(n,r)}}}const n5e=({onRequest:e,onSseError:t,onSseEvent:n,responseTransformer:r,responseValidator:i,sseDefaultRetryDelay:s,sseMaxRetryAttempts:o,sseMaxRetryDelay:a,sseSleepFn:l,url:c,...u})=>{let d;const f=l??(p=>new Promise(y=>setTimeout(y,p)));return{stream:async function*(){let p=s??3e3,y=0;const v=u.signal??new AbortController().signal;for(;!v.aborted;){y++;const b=u.headers instanceof Headers?u.headers:new Headers(u.headers);d!==void 0&&b.set("Last-Event-ID",d);try{const w={redirect:"follow",...u,body:u.serializedBody,headers:b,signal:v};let x=new Request(c,w);e&&(x=await e(c,w));const C=await(u.fetch??globalThis.fetch)(x);if(!C.ok)throw new Error(`SSE failed: ${C.status} ${C.statusText}`);if(!C.body)throw new Error("No body in SSE response");const E=C.body.pipeThrough(new TextDecoderStream).getReader();let _="";const L=()=>{try{E.cancel()}catch{}};v.addEventListener("abort",L);try{for(;;){const{done:O,value:$}=await E.read();if(O)break;_+=$,_=_.replace(/\r\n/g,`
|
|
1008
1008
|
`).replace(/\r/g,`
|
|
@@ -1190,5 +1190,5 @@ ${t}`:void 0:void 0}catch{return}}function Vne(e,t,n){return!t&&!n?zne(e):Cv({na
|
|
|
1190
1190
|
focus-visible:bg-v2-background-bg-layer-01 focus-visible:text-v2-text-text-base focus-visible:outline-none
|
|
1191
1191
|
focus-visible:[box-shadow:inset_0_0_0_0.5px_var(--v2-border-border-muted)]
|
|
1192
1192
|
${t.class??""}
|
|
1193
|
-
`},get classList(){return t.classList}}),!1,!0),S(r,()=>t.children),r})()}function die(e){const t=I(()=>Ll(e.project));return h(GQ,{get fallback(){return t()},get src(){return we(()=>!!e.outline)()?void 0:NE(e.project.id,e.project.icon)},get variant(){return we(()=>!!e.outline)()?"outline":YK(e.project.icon?.color)}})}dn(["click","pointerdown"]);function Jat(e){return h(Kat,{get language(){return e.projects.copy.language},get servers(){return e.projects.server.list},get projects(){return e.projects.project.list},get recentlyClosed(){return e.projects.project.recentlyClosed},get selection(){return e.projects.selection.value},get homedir(){return e.projects.project.homedir},get serverHealth(){return e.projects.server.health},get projectsForServer(){return e.projects.server.projects},get collapsed(){return e.projects.server.collapsed},get canDefaultServer(){return e.projects.server.canDefault},get defaultServerKey(){return e.projects.server.defaultKey},get canRevealProject(){return e.projects.project.canReveal},get unseenCount(){return e.projects.project.unseenCount},get onWheel(){return e.scroll.viewport.containWheel},get onChooseProject(){return e.projects.project.choose},get onFocusServer(){return e.projects.server.focus},get onToggleCollapsed(){return e.projects.server.toggleCollapsed},get onEditServer(){return e.projects.server.edit},get onSetDefaultServer(){return e.projects.server.setDefault},get onRemoveServer(){return e.projects.server.remove},get onMoveProject(){return e.projects.project.move},get onSelectProject(){return e.projects.project.select},get onAddProjects(){return e.projects.project.add},get onOpenProjectNewSession(){return e.projects.project.openNewSession},get onEditProject(){return e.projects.project.edit},get onRevealProject(){return e.projects.project.reveal},get onClearNotifications(){return e.projects.project.clearNotifications},get onCloseProject(){return e.projects.project.close},get onOpenSettings(){return e.projects.utility.settings},get onOpenHelp(){return e.projects.utility.help}})}const elt=12,tlt=16,nlt=16;function rlt(e){const[t,n]=De(),[r,i]=De(),[s,o]=Ze({titleOpacity:{}}),a=new Map,l=new Map;let c,u,d,f,m=elt;ae(()=>{const w=e(),x=new Set(w.map(k=>k.id));a.forEach((k,C)=>{x.has(C)||a.delete(C)}),l.forEach((k,C)=>{x.has(C)||l.delete(C)}),w.length===0&&(u=void 0,v()),g()}),Te(()=>{d!==void 0&&cancelAnimationFrame(d),f?.disconnect()});function g(){if(typeof requestAnimationFrame>"u"){p();return}d===void 0&&(d=requestAnimationFrame(()=>{d=void 0,p()}))}function p(){if(!c)return;const w=e().map(x=>a.get(x.id)).find(x=>x!==void 0);if(w&&typeof getComputedStyle=="function"){const x=Number.parseFloat(getComputedStyle(w).top);Number.isFinite(x)&&(m=x)}e().forEach(x=>{const k=a.get(x.id);k&&l.set(x.id,k.offsetTop)}),y(c.scrollTop)}function y(w){const x=e();x.forEach((k,C)=>{const E=x.slice(C+1).map($=>l.get($.id)).find($=>$!==void 0),_=m+tlt,L=E===void 0?void 0:E-w,O=L===void 0?1:Math.max(0,Math.min(1,(L-_)/nlt));o("titleOpacity",k.id,Math.round(O*1e3)/1e3)})}function v(){f?.disconnect(),!(typeof ResizeObserver>"u")&&(f=new ResizeObserver(g),c&&f.observe(c),u&&f.observe(u))}function b(w){if(!c||w.defaultPrevented||w.ctrlKey||!w.deltaY||!(w.target instanceof Element))return;const x=w.target.closest("[data-scrollable]");x!==c&&x&&(w.deltaY<0?x.scrollTop>0:x.scrollTop<x.scrollHeight-x.clientHeight)||w.preventDefault()}return{viewport:{thumbTrack:t,hoverTarget:r,setThumbTrack:n,setHoverTarget:i,setViewport:w=>{c=w,v(),g()},update:y,containWheel:b,containOuterWheel:w=>{c&&(w.target instanceof Node&&c.contains(w.target)||b(w))}},header:{setContent:w=>{u=w,v(),g()},setHeader:(w,x)=>{a.set(w,x),g()},titleOpacity:w=>s.titleOpacity[w]??1}}}async function ilt(e){await e.archive(e.session.id).then(()=>{e.remove(),rC({server:e.server,directory:e.session.directory,sessionIDs:[e.session.id]})}).catch(t=>e.onError?.(t))}const iV=64;function slt(e){const t=ks(),n=Qi(),r=Mr(),i=wt(),s=Oq(),o=I(()=>{const y=e.project.selected();return y?sV(y):e.project.list().flatMap(sV)}),a=I(()=>new Map(e.project.list().flatMap(y=>y.id?[[y.id,y]]:[]))),l=()=>e.server.focusedSync().homeSessions,c=_a(()=>({queryKey:l().eventsKey,queryFn:async()=>({sequence:0,entries:[]}),initialData:{sequence:0,entries:[]},enabled:!1})),u=_a(()=>({queryKey:l().indexKey,enabled:!!e.server.focusedContext(),queryFn:async({signal:y})=>{const v=e.server.focusedContext();if(!v)return{sessions:[],eventSequence:0};const b=l(),w=b.eventSequence(),x=await M7e((k,C)=>v.sdk.client.v2.session.list(k,C),w,y);return b.complete(w),x},retry:!1,staleTime:3e4,refetchOnMount:!0,refetchOnReconnect:!0})),d=I(()=>N7e(l().sessions(u.data,c.data),iV,Date.now())),f=I(()=>olt({sessions:d,projectDirectories:o,projects:e.project.list,projectByID:a})),m=I(()=>f().slice(0,iV)),g=I(()=>alt(m(),i)),p=new Set;return ae(()=>{const y=e.server.focusedContext(),v=e.server.focused();!y||!v||m().slice(0,2).forEach(b=>{const w=`${ut.key(v)}\0${b.session.id}`;p.has(w)||(p.add(w),jr(x=>{try{y.sync.session.sync(b.session.id).then(()=>Promise.all((y.sync.session.data.message[b.session.id]??[]).flatMap(k=>(y.sync.session.data.part[k.id]??[]).flatMap(C=>C.type!=="text"||!C.text?[]:Eje(C.text,C.id,s))))).catch(()=>{}).finally(x)}catch{x()}}))})}),n.register("home.palette",()=>[{id:"command.palette",title:i.t("command.palette"),hidden:!0,onSelect:async()=>{const y=e.server.focused();if(!y)return;const v=e.server.focusedContext();if(!v)return;const{DialogHomeCommandPaletteV2:b}=await B(async()=>{const{DialogHomeCommandPaletteV2:w}=await import("./dialog-command-palette-v2-hAzWgyPR.js").then(x=>x.d);return{DialogHomeCommandPaletteV2:w}},__vite__mapDeps([119,120]));r.show(()=>h(b,{server:y,onSelectSession:w=>{if(!w.sessionID||!w.directory||!w.server)return;const x=w.sessionID,k=w.server,C=w.project?.worktree??w.directory;v.projects.open(C),v.projects.touch(C),Zs(()=>{const E=t.addSessionTab({server:k,sessionId:x});t.select(E)})}}))}}]),{copy:{language:i},data:{records:m,groups:g,loading:()=>u.isLoading,searchRecords:f},session:{showProjectName:()=>!e.project.selected(),server:()=>e.selection.value().server,canCreate:()=>!!e.project.newSession(),create:e.project.openNewSession,open:(y,v)=>{const b=rt(y.directory),w=e.project.list().find(E=>rt(E.worktree)===b||E.sandboxes?.some(_=>rt(_)===b))??VE(y,e.project.list(),a()),x=e.server.focused();if(!x)return;const k=w?.worktree??y.directory,C=e.server.focusedContext();if(C){if(C.projects.open(k),v?.background){t.addSessionTab({server:ut.key(x),sessionId:y.id});return}C.projects.touch(k),Zs(()=>{const E=t.addSessionTab({server:ut.key(x),sessionId:y.id});t.select(E)})}},archive:async y=>{const v=e.server.focused(),b=e.server.focusedContext();if(!v||!b)return;const[,w]=b.sync.child(y.directory);await b.sdk.protocol==="v1"&&await ilt({server:ut.key(v),session:y,archive:x=>b.sdk.client.session.update({sessionID:x,directory:y.directory,time:{archived:Date.now()}}),remove:()=>w(yt(x=>{const k=Kn.search(x.session,y.id,C=>C.id);k.found&&x.session.splice(k.index,1)})),onError:x=>tn({title:i.t("common.requestFailed"),description:Jp(x,i.t("common.requestFailed"))})})}},tab:{isOpen:y=>eCe(t.store,e.selection.value().server,y.session)}}}function sV(e){return[e.worktree,...e.sandboxes??[]]}function olt(e){const t=new Set(e.projectDirectories().map(rt)),n=e.sessions().filter(r=>t.has(rt(r.directory)));return[...new Map(n.map(r=>[r.id,r])).values()].sort((r,i)=>(i.time.updated??i.time.created)-(r.time.updated??r.time.created)).flatMap(r=>{const i=rt(r.directory),s=e.projects().find(o=>rt(o.worktree)===i||o.sandboxes?.some(a=>rt(a)===i))??VE(r,e.projects(),e.projectByID());return s?{session:r,project:s,projectName:Ll(s)}:[]})}function Bu(e){return`${rt(e.session.directory)}:${e.session.id}`}function alt(e,t){const n=ln.local(),r=n.minus({days:1}),i=e.filter(l=>ln.fromMillis(l.session.time.updated??l.session.time.created).hasSame(n,"day")),s=e.filter(l=>ln.fromMillis(l.session.time.updated??l.session.time.created).hasSame(r,"day")),o=e.filter(l=>{const c=ln.fromMillis(l.session.time.updated??l.session.time.created);return!c.hasSame(n,"day")&&!c.hasSame(r,"day")}),a=i.length===0&&s.length===0?t.t("sidebar.project.recentSessions"):t.t("home.sessions.group.older");return[{id:"today",title:t.t("home.sessions.group.today"),sessions:i},{id:"yesterday",title:t.t("home.sessions.group.yesterday"),sessions:s},{id:"older",title:a,sessions:o}].filter(l=>l.sessions.length>0)}function llt(e){const t=KQ(e.server,()=>e.record.session.directory,()=>e.record.session.id);return e.render({unread:t.unread,loading:t.loading,open:()=>e.isOpenTab(e.record)})}function clt(e,t){const n=Qi(),r=wt(),[i,s]=Ze({value:"",focused:!1,highlighted:""});let o,a,l;const c=I(()=>i.value.trim()),u=I(()=>{const v=c().toLowerCase();return v?t.data.searchRecords().filter(b=>`${b.session.title} ${b.projectName}`.toLowerCase().includes(v)):[]}),d=I(()=>{const v=u();return v.some(b=>Bu(b)===i.highlighted)?i.highlighted:v[0]?Bu(v[0]):""}),f=I(()=>i.focused&&c().length>0),m=I(()=>{const v=e.project.selected();if(v)return r.t("home.sessions.search.placeholder.scoped",{scope:Ll(v)});if(e.server.list().length>1){const b=e.server.focused();if(b)return r.t("home.sessions.search.placeholder.scoped",{scope:hd(b)})}return r.t("home.sessions.search.placeholder")});Te(an(document,"pointerdown",v=>{if(!f())return;const b=v.target;!(b instanceof Node)||o?.contains(b)||p()})),n.register("home.search",()=>[{id:"home.sessions.search.focus",title:m(),keybind:"mod+f",hidden:!0,onSelect:g}]);function g(){a?.focus(),s("focused",!0)}function p(){s({value:"",focused:!1})}function y(v,b){t.session.open(v.session,b),b?.background||p()}return{query:{value:()=>i.value,placeholder:m,open:f,focus:g,input:v=>s({value:v,highlighted:""}),close:p},result:{loading:t.data.loading,list:u,active:d,noResultsLabel:()=>r.t("home.sessions.search.noResults",{query:c()}),highlight:v=>s("highlighted",Bu(v)),move:v=>{const b=u();if(b.length===0)return;const w=b.findIndex(k=>Bu(k)===d()),x=((w===-1?0:w)+v+b.length)%b.length;s("highlighted",Bu(b[x])),l?.querySelector(`[data-key="${i.highlighted}"]`)?.scrollIntoView({block:"nearest"})},select:y,selectActive:()=>{const v=u().find(b=>Bu(b)===d());v&&y(v)}},element:{setRoot:v=>o=v,setInput:v=>a=v,setList:v=>l=v}}}function ult(e){return e.button===1?!0:e.button!==0||e.shift||e.alt?!1:e.mac?e.meta&&!e.ctrl:e.ctrl&&!e.meta}var dlt=A('<div class="pointer-events-none absolute right-0 top-[84px] z-20 flex lg:top-[108px]">'),flt=A('<div class="flex flex-col pt-3 pr-3 pb-16">'),hlt=A('<section class="min-h-0 min-w-0 flex-1 flex flex-col"><div class="sticky top-0 z-30 shrink-0 bg-v2-background-bg-base pb-3 pt-6 lg:pt-12"></div><div class="pointer-events-none sticky top-[84px] z-40 h-0 -mr-3 lg:top-[108px]"><div data-component=home-session-scroll-track class="relative ml-auto h-[calc(100cqh-84px)] w-3 lg:h-[calc(100cqh-108px)]"></div></div><div class="-mr-3 min-h-[calc(100cqh-72px)] lg:min-h-[calc(100cqh-96px)]">'),mlt=A("<div class=pt-3>"),glt=A("<div>"),plt=A('<span aria-hidden=true class="pointer-events-none absolute top-1/2 h-3 w-0.5 -translate-y-1/2 rounded-[2px] bg-v2-background-bg-layer-04"style="right:calc(100% + 4px)">'),vlt=A('<div class="relative shrink-0">'),ylt=A('<div class="flex flex-col gap-px pb-2">'),blt=A('<div class="flex flex-col"><p class="my-1.5 pl-[18px] pr-6 text-[13px] leading-4 tracking-[-0.04px] text-v2-text-text-muted [font-weight:440]">'),wlt=A('<div data-component=home-session-search-panel class="absolute flex flex-col overflow-hidden rounded-[12px] bg-v2-background-bg-base shadow-[var(--v2-elevation-floating)]"style="top:-6px;left:-6px;width:calc(100% + 12px)"><div class="flex flex-col pt-9"><div id=home-session-search-results role=listbox class="flex flex-col gap-4 pt-4">'),xlt=A('<div class=w-full><div data-component=home-session-search class="relative z-30 w-full"><label class="relative z-20 flex h-9 w-full items-center gap-2 rounded-[6px] py-1 pl-3 pr-2 bg-v2-background-bg-layer-02/60 text-v2-icon-icon-muted transition-[background-color,box-shadow] duration-[120ms] ease-in-out hover:bg-v2-background-bg-layer-02 focus-within:bg-v2-background-bg-layer-02"><input class="relative z-20 min-w-0 flex-1 border-0 bg-transparent outline-0 text-v2-text-text-base [font-weight:440] placeholder:text-v2-text-text-faint"aria-controls=home-session-search-results aria-autocomplete=list>'),klt=A('<div class="flex items-center justify-center px-4 py-3 text-v2-text-text-muted [font-weight:440]">'),Slt=A('<p class="my-1.5 px-4 pb-2 text-[13px] leading-4 tracking-[-0.04px] text-v2-text-text-muted [font-weight:440]">'),Clt=A('<button type=button data-component=home-session-search-row role=option class="flex h-10 w-full shrink-0 cursor-default items-center gap-2 border-0 py-3 pl-[18px] pr-6 text-left transition-[background-color] duration-[120ms] ease-in-out hover:bg-v2-overlay-simple-overlay-hover focus-visible:bg-v2-overlay-simple-overlay-hover focus-visible:outline-none"><div class="flex min-w-0 flex-1 items-center gap-1.5">'),_lt=A('<div class="pointer-events-none sticky top-[84px] flex h-7 min-w-0 items-center justify-between bg-v2-background-bg-base pl-3 lg:top-[108px]"><div class="text-v2-text-text-muted [font-weight:440]">'),Tlt=A('<div class="hover-reveal absolute right-1.5 top-1/2 flex -translate-y-1/2 items-center gap-1 group-hover/session:opacity-100 focus-within:opacity-100">'),Elt=A('<div class="group/session relative flex h-10 min-w-0 items-center rounded-[6px]"><button type=button data-component=home-session-row class="flex h-10 min-w-0 w-full flex-1 shrink-0 cursor-default items-center gap-2 rounded-[6px] border-0 bg-transparent py-3 pl-3 pr-10 text-left text-v2-text-text-muted [font-weight:530] transition-[background-color,color,box-shadow] duration-[120ms] ease-in-out hover:bg-v2-overlay-simple-overlay-hover focus-visible:bg-v2-overlay-simple-overlay-hover focus-visible:outline-none">'),Ilt=A('<span class="min-w-0 overflow-hidden text-ellipsis whitespace-nowrap text-v2-text-text-base [font-weight:530]">'),Dlt=A('<span class="min-w-0 flex-[1_1_auto] overflow-hidden text-ellipsis whitespace-nowrap text-v2-text-text-muted [font-weight:440]">'),Llt=A('<div class="flex min-h-full flex-col items-center gap-4 px-6 pt-[52px] text-center"><div class="shrink-0 text-[13px] leading-[13px] tracking-[-0.04px] text-v2-text-text-base [font-weight:530]"></div><p class="mb-1 text-center text-[13px] leading-5 tracking-[-0.04px] text-v2-text-text-muted [font-weight:440]">'),Alt=A('<div class="flex min-w-0 flex-col gap-4"><div class="flex h-7 min-w-0 items-center justify-between px-4"><div class="text-v2-text-text-muted [font-weight:440]"></div></div><div class="flex min-w-0 flex-col gap-px"aria-hidden=true>'),Mlt=A('<div class="h-10 rounded-[6px] bg-v2-background-bg-deep opacity-70">');const $lt=!1;function qx(e){return ult({button:e.button,mac:typeof navigator=="object"&&/(Mac|iPod|iPhone|iPad)/.test(navigator.platform),meta:e.metaKey,ctrl:e.ctrlKey,shift:e.shiftKey,alt:e.altKey})}function Plt(e){return(()=>{var t=hlt(),n=t.firstChild,r=n.nextSibling,i=r.firstChild,s=r.nextSibling,o=e.onSetHoverTarget;typeof o=="function"?pt(o,t):e.onSetHoverTarget=t,cn(n,"wheel",e.onWheel),S(n,h(Rlt,e),null),S(n,h(q,{get when(){return we(()=>e.groups().length>0)()&&e.canCreateSession()},get children(){var l=dlt();return S(l,h(as,{"data-action":"home-new-session",variant:"ghost-muted",size:"normal",icon:"edit",class:"pointer-events-auto h-7 px-2 [font-weight:530]",get onClick(){return e.onCreateSession},get children(){return e.language.t("command.session.new")}})),l}}),null);var a=e.onSetThumbTrack;return typeof a=="function"?pt(a,i):e.onSetThumbTrack=i,S(s,h(q,{get when(){return!e.loading()},get fallback(){return(()=>{var l=mlt();return S(l,h(Hlt,{get label(){return e.language.t("common.loading")}})),l})()},get children(){return h(q,{get when(){return e.groups().length>0},get fallback(){return h(zlt,{get onNewSession(){return we(()=>!!e.canCreateSession())()?e.onCreateSession:void 0},get language(){return e.language}})},get children(){var l=flt(),c=e.onSetContent;return typeof c=="function"?pt(c,l):e.onSetContent=l,S(l,h(Dt,{get each(){return e.groups()},children:(u,d)=>[h(Nlt,{get title(){return u.title},get titleOpacity(){return e.titleOpacity(u.id)},onSetRef:f=>e.onSetHeader(u.id,f),get elevated(){return d()===0}}),(()=>{var f=glt();return S(f,h(Dt,{get each(){return u.sessions},children:m=>h(Vlt,le(e,{record:m}))})),he(()=>xr(f,`flex min-w-0 flex-col gap-px pt-4 ${d()===e.groups().length-1?"":"mb-6"}`)),f})()]})),l}})}})),he(()=>me(t,"aria-label",e.language.t("sidebar.project.recentSessions"))),t})()}function fie(e){return h(llt,{get server(){return e.server},get record(){return e.record},get isOpenTab(){return e.isOpenTab},render:t=>h(Olt,{get record(){return e.record},get revealProjectOnHover(){return e.revealProjectOnHover},get open(){return t.open()},get unread(){return t.unread()},get loading(){return t.loading()}})})}function Olt(e){return(()=>{var t=vlt();return S(t,h(q,{get when(){return e.open},get children(){return plt()}}),null),S(t,h(YQ,{get project(){return e.record.project},get directory(){return e.record.session.directory},get revealProjectOnHover(){return e.revealProjectOnHover},get unread(){return e.unread},get loading(){return e.loading}}),null),t})()}function Rlt(e){return(()=>{var t=xlt(),n=t.firstChild,r=n.firstChild,i=r.firstChild,s=e.onSetSearchRoot;typeof s=="function"?pt(s,n):e.onSetSearchRoot=n,S(n,h(q,{get when(){return e.searchOpen()},get children(){var a=wlt(),l=a.firstChild,c=l.firstChild;return S(c,h(q,{get when(){return!e.searchLoading()},get fallback(){return(()=>{var u=klt();return S(u,h(Fd,{class:"size-4"})),u})()},get children(){return h(q,{get when(){return e.searchResults().length>0},get fallback(){return(()=>{var u=Slt();return S(u,()=>e.searchNoResultsLabel()),u})()},get children(){var u=blt(),d=u.firstChild;return S(d,()=>e.language.t("home.sessions.search.sessions")),S(u,h(yc,{class:"max-h-80",get viewportRef(){return e.onSetSearchList},get children(){var f=ylt();return S(f,h(Dt,{get each(){return e.searchResults()},children:m=>h(Flt,le(e,{record:m,get selected(){return e.searchActive()===Bu(m)}}))})),f}}),null),u}})}})),a}}),r),S(r,h(on,{name:"magnifying-glass"}),i),i.$$keydown=a=>{if(a.key==="Escape"){a.preventDefault(),e.onSearchClose(),a.currentTarget.blur();return}if(!(!e.searchOpen()||e.searchResults().length===0)&&!(a.altKey||a.metaKey)){if(a.key==="ArrowDown"){a.preventDefault(),e.onSearchMove(1);return}if(a.key==="ArrowUp"){a.preventDefault(),e.onSearchMove(-1);return}a.key==="Enter"&&!a.isComposing&&(a.preventDefault(),e.onSearchSelectActive())}},i.$$input=a=>e.onSearchInput(a.currentTarget.value),cn(i,"focus",e.onSearchFocus);var o=e.onSetSearchInput;return typeof o=="function"?pt(o,i):e.onSetSearchInput=i,S(r,h(q,{get when(){return e.searchValue()},get children(){return h(Lr,{type:"button",variant:"ghost-muted",size:"small",class:"relative z-20 shrink-0",get icon(){return h(on,{name:"close",size:"large",class:"text-v2-icon-icon-muted"})},get"aria-label"(){return e.searchPlaceholder()},onClick:()=>{e.onSearchClose(),e.onSearchFocus()}})}}),null),he(a=>{var l=e.searchPlaceholder(),c=e.searchPlaceholder(),u=e.searchOpen(),d=e.searchActive()&&e.searchOpen()?`home-session-search-option-${e.searchActive()}`:void 0;return l!==a.e&&me(i,"placeholder",a.e=l),c!==a.t&&me(i,"aria-label",a.t=c),u!==a.a&&me(i,"aria-expanded",a.a=u),d!==a.o&&me(i,"aria-activedescendant",a.o=d),a},{e:void 0,t:void 0,a:void 0,o:void 0}),he(()=>i.value=e.searchValue()),t})()}function Flt(e){const t=I(()=>Df(e.record.session.title)||e.record.session.id),n=()=>e.showProjectName()&&e.record.projectName,r=()=>Bu(e.record);return(()=>{var i=Clt(),s=i.firstChild;return i.addEventListener("auxclick",o=>{qx(o)&&(o.preventDefault(),e.onSearchSelect(e.record,{background:!0}))}),i.$$click=o=>e.onSearchSelect(e.record,{background:qx(o)}),i.$$mousedown=o=>{o.button===1&&o.preventDefault()},i.addEventListener("mouseenter",()=>e.onSearchHighlight(e.record)),S(i,h(fie,{get server(){return e.server},get isOpenTab(){return e.isOpenTab},get record(){return e.record},get revealProjectOnHover(){return!!n()}}),s),S(s,h(hie,{get title(){return t()},get showProjectName(){return!!n()},search:!0}),null),S(s,h(q,{get when(){return n()},get children(){return h(mie,{get name(){return e.record.projectName},search:!0})}}),null),he(o=>{var a=`home-session-search-option-${r()}`,l=r(),c=e.selected,u=!!e.selected,d=!!n();return a!==o.e&&me(i,"id",o.e=a),l!==o.t&&me(i,"data-key",o.t=l),c!==o.a&&me(i,"aria-selected",o.a=c),u!==o.o&&i.classList.toggle("bg-v2-overlay-simple-overlay-hover",o.o=u),d!==o.i&&i.classList.toggle("group",o.i=d),o},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),i})()}function Nlt(e){return(()=>{var t=_lt(),n=t.firstChild,r=e.onSetRef;return typeof r=="function"?pt(r,t):e.onSetRef=t,S(n,()=>e.title),he(i=>{var s={"home-session-group-header z-[5]":!!e.elevated,"z-10":!e.elevated},o=e.titleOpacity;return i.e=ct(t,s,i.e),o!==i.t&&Ct(n,"opacity",i.t=o),i},{e:void 0,t:void 0}),t})()}function Vlt(e){const t=I(()=>Df(e.record.session.title)||e.record.session.id),n=()=>e.showProjectName()&&e.record.projectName;return(()=>{var r=Elt(),i=r.firstChild;return i.addEventListener("auxclick",s=>{qx(s)&&(s.preventDefault(),e.onOpenSession(e.record.session,{background:!0}))}),i.$$click=s=>e.onOpenSession(e.record.session,{background:qx(s)}),i.$$mousedown=s=>{s.button===1&&s.preventDefault()},S(i,h(fie,{get server(){return e.server},get isOpenTab(){return e.isOpenTab},get record(){return e.record},get revealProjectOnHover(){return!!n()}}),null),S(i,h(hie,{get title(){return t()},get showProjectName(){return!!n()}}),null),S(i,h(q,{get when(){return n()},get children(){return h(mie,{get name(){return e.record.projectName}})}}),null),S(r,h(q,{when:$lt,get children(){var s=Tlt();return S(s,h(Qn,{class:"flex shrink-0 items-center",placement:"bottom",get value(){return e.language.t("common.archive")},get children(){return h(Lr,{"data-action":"home-session-archive",variant:"ghost-muted",size:"large",get icon(){return h(on,{name:"archive"})},get"aria-label"(){return e.language.t("common.archive")},onClick:o=>{o.preventDefault(),o.stopPropagation(),e.onArchiveSession(e.record.session)}})}})),s}}),null),he(()=>r.classList.toggle("group",!!n())),r})()}function hie(e){return(()=>{var t=Ilt();return S(t,()=>e.title),he(n=>ct(t,{"text-[13px] leading-4 tracking-[-0.04px]":!!e.search,"max-w-[min(70%,480px)] flex-[0_1_auto]":e.showProjectName,"flex-[1_1_auto]":!e.showProjectName},n)),t})()}function mie(e){return(()=>{var t=Dlt();return S(t,()=>e.name),he(n=>ct(t,{"text-[13px] leading-4 tracking-[-0.04px]":!!e.search},n)),t})()}function zlt(e){return(()=>{var t=Llt(),n=t.firstChild,r=n.nextSibling;return S(n,()=>e.language.t("home.sessions.empty")),S(r,()=>e.language.t("home.sessions.empty.description")),S(t,h(q,{get when(){return e.onNewSession},children:i=>h(as,{"data-action":"home-new-session",variant:"neutral",size:"normal",icon:"edit",get onClick(){return i()},get children(){return e.language.t("command.session.new")}})}),null),t})()}function Hlt(e){return(()=>{var t=Alt(),n=t.firstChild,r=n.firstChild,i=n.nextSibling;return S(r,()=>e.label),S(i,h(Dt,{each:[0,1,2,3],children:()=>Mlt()})),t})()}dn(["input","keydown","mousedown","click"]);function jlt(e){return h(Plt,{get language(){return e.sessions.copy.language},get groups(){return e.sessions.data.groups},get loading(){return e.sessions.data.loading},get showProjectName(){return e.sessions.session.showProjectName},get server(){return e.sessions.session.server},get canCreateSession(){return e.sessions.session.canCreate},get searchValue(){return e.search.query.value},get searchPlaceholder(){return e.search.query.placeholder},get searchOpen(){return e.search.query.open},get searchLoading(){return e.search.result.loading},get searchResults(){return e.search.result.list},get searchActive(){return e.search.result.active},get searchNoResultsLabel(){return e.search.result.noResultsLabel},get titleOpacity(){return e.scroll.header.titleOpacity},get isOpenTab(){return e.sessions.tab.isOpen},get onCreateSession(){return e.sessions.session.create},get onOpenSession(){return e.sessions.session.open},get onArchiveSession(){return e.sessions.session.archive},get onSetHoverTarget(){return e.scroll.viewport.setHoverTarget},get onSetThumbTrack(){return e.scroll.viewport.setThumbTrack},get onSetContent(){return e.scroll.header.setContent},get onSetHeader(){return e.scroll.header.setHeader},get onWheel(){return e.scroll.viewport.containWheel},get onSetSearchRoot(){return e.search.element.setRoot},get onSetSearchInput(){return e.search.element.setInput},get onSetSearchList(){return e.search.element.setList},get onSearchFocus(){return e.search.query.focus},get onSearchInput(){return e.search.query.input},get onSearchClose(){return e.search.query.close},get onSearchMove(){return e.search.result.move},get onSearchSelectActive(){return e.search.result.selectActive},get onSearchHighlight(){return e.search.result.highlight},get onSearchSelect(){return e.search.result.select}})}var qlt=A('<div class="mx-auto grid min-h-full w-full max-w-[1080px] grid-rows-[auto_minmax(0,1fr)_auto] gap-4 px-3 lg:grid-cols-[280px_minmax(0,720px)] lg:grid-rows-1 lg:gap-8 lg:px-6">'),Blt=A('<div class="m-2 min-h-0 flex-1 self-stretch overflow-hidden rounded-[10px] bg-v2-background-bg-base shadow-[var(--v2-elevation-raised)]">');function Ult(){const e=oat(),t=Aat(e),n=slt(e),r=clt(e,n),i=rlt(n.data.groups);return(()=>{var s=Blt();return S(s,h(yc,{class:"h-full [container-type:size]",get thumbContainer(){return i.viewport.thumbTrack},get thumbHoverTarget(){return i.viewport.hoverTarget},get viewportRef(){return i.viewport.setViewport},onScroll:o=>i.viewport.update(o.currentTarget.scrollTop),get onWheel(){return i.viewport.containOuterWheel},get children(){var o=qlt();return S(o,h(Jat,{projects:t,scroll:i}),null),S(o,h(jlt,{sessions:n,search:r,scroll:i}),null),S(o,h(uie,{class:"flex lg:hidden",get onOpenSettings(){return t.utility.settings},get onOpenHelp(){return t.utility.help},get language(){return t.copy.language}}),null),o}})),s})()}var Wlt=A("<div>"),Klt=A('<div class="mt-20 w-full flex flex-col gap-4"><div class="flex gap-2 items-center justify-between pl-3"><div class="text-14-medium text-text-strong"></div></div><ul class="flex flex-col gap-2">'),Glt=A('<div class="mt-30 mx-auto flex flex-col items-center gap-3"><div class="text-12-regular text-text-weak">'),Zlt=A('<div class="mt-30 mx-auto flex flex-col items-center gap-3"><div class="flex flex-col gap-1 items-center justify-center"><div class="text-14-medium text-text-strong"></div><div class="text-12-regular text-text-weak">'),Ylt=A('<div class="mx-auto mt-55 w-full md:w-auto px-4">'),Xlt=A('<div class="text-14-regular text-text-weak">');function Qlt(){const e=Di(),t=Bk(),n=Mr(),r=fs(),i=ms(),s=ci(),o=wt(),a=I(()=>e().data.path.home),l=I(()=>i.servers.health[s.key]?.healthy===!1),c=I(()=>e().data.project.slice().sort((m,g)=>(g.time.updated??g.time.created)-(m.time.updated??m.time.created)).slice(0,5)),u=I(()=>{const m=i.servers.health[s.key]?.healthy;return m===!0?"bg-icon-success-base":m===!1?"bg-icon-critical-base":"bg-border-weak-base"});function d(m,g){const p=i.ensureServerCtx(m);p.projects.open(g),p.projects.touch(g),r(`/${yn(g)}`)}function f(){if(l())return;const m=s.current;if(!m)return;const g=p=>{if(Array.isArray(p)){p.forEach(y=>d(m,y));return}p&&d(m,p)};t({server:m,title:o.t("command.project.open"),multiple:!0,onSelect:g})}return(()=>{var m=Ylt();return S(m,h(uB,{class:"md:w-xl opacity-12"}),null),S(m,h(Kt,{size:"large",variant:"ghost",class:"mt-4 mx-auto text-14-regular text-text-weak",onClick:()=>n.show(()=>h(sie,{})),get children(){return[(()=>{var g=Wlt();return he(p=>ct(g,{"size-2 rounded-full":!0,[u()]:!0},p)),g})(),we(()=>s.name)]}}),null),S(m,h(Rr,{get children(){return[h(zt,{get when(){return e().data.project.length>0},get children(){var g=Klt(),p=g.firstChild,y=p.firstChild,v=p.nextSibling;return S(y,()=>o.t("home.recentProjects")),S(p,h(Kt,{icon:"folder-add-left",size:"normal",class:"pl-2 pr-3",get disabled(){return l()},onClick:f,get children(){return o.t("command.project.open")}}),null),S(v,h(Dt,{get each(){return c()},children:b=>h(Kt,{size:"large",variant:"ghost",class:"text-14-mono text-left justify-between px-3",onClick:()=>d(s.current,b.worktree),get children(){return[we(()=>b.worktree.replace(a(),"~")),(()=>{var w=Xlt();return S(w,()=>ln.fromMillis(b.time.updated??b.time.created).toRelative()),w})()]}})})),g}}),h(zt,{get when(){return!e().ready},get children(){var g=Glt(),p=g.firstChild;return S(p,()=>o.t("common.loading")),S(g,h(Kt,{class:"px-3",get disabled(){return l()},onClick:f,get children(){return o.t("command.project.open")}}),null),g}}),h(zt,{when:!0,get children(){var g=Zlt(),p=g.firstChild,y=p.firstChild,v=y.nextSibling;return S(g,h(Yt,{name:"folder-add-left",size:"large"}),p),S(y,()=>o.t("home.empty.title")),S(v,()=>o.t("home.empty.description")),S(g,h(Kt,{class:"px-3 mt-1",get disabled(){return l()},onClick:f,get children(){return o.t("command.project.open")}}),null),g}})]}}),null),m})()}var Jlt=A('<div class="fixed inset-0 z-[9999] flex flex-col items-center justify-center bg-background-base">'),ect=A('<div class="flex flex-col gap-2 w-full max-w-sm"><span class="text-12-regular text-text-base text-center"></span><div class="flex flex-col gap-1 bg-surface-base rounded-lg p-2">'),tct=A('<div class="h-dvh w-screen flex flex-col items-center justify-center bg-background-base gap-6 p-6"><div class="flex flex-col items-center max-w-md text-center"><p class="text-14-regular text-text-base"><span class="text-text-strong font-medium"></span></p><p class="mt-1 text-12-regular text-text-weak">'),nct=A('<button type=button class="flex items-center gap-3 w-full px-3 py-2 rounded-md hover:bg-surface-raised-base-hover transition-colors text-left"><span class="text-14-regular text-text-strong truncate">');const rct=Ux(()=>B(()=>import("./new-session-C0dB1gL5.js"),[])),ict=()=>{const e=ar(),t=Br(),[n]=Id(),r=kr(),i=ci(),s=ks();if(t.id&&e.general.newLayoutDesigns()){const o=t.id;return h(q,{get when(){return s.ready()},children:a=>{const l=s.store.filter(c=>c.type==="session");return h(Dv,{get href(){return Wf(MK(l,o,i.key),o)}})}})}return ae(()=>{e.general.newLayoutDesigns()&&(t.id||n.draftId||!s.ready()||!r().directory||s.newDraft({server:i.key,directory:r().directory},n.prompt))}),h(XI,{get sessionID(){return t.id},get children(){return h(eie,{})}})};function gie(e){const t=Br(),n=ms(),r=I(()=>{const i=ra(t.serverKey);return n.servers.list().find(s=>ut.key(s)===i)});return h(q,{get when(){return ra(t.serverKey)},keyed:!0,get children(){return h(sT,{server:r,get children(){return h(iT,{server:r,get children(){return e.children}})}})}})}const sct=()=>h(gie,{get children(){return h(Qot,{})}});function oct(){const e=Br();return h(gie,{get children(){return h(XI,{get sessionID(){return e.id},get serverKey(){return ra(e.serverKey)},get children(){return h(act,{})}})}})}function act(){const e=Br(),t=fs(),n=Di(),r=DJ(()=>e.id,()=>n().session.lineage);return ae(()=>{const i=r()?.session.directory;i&&t(Qw(i,e.id),{replace:!0})}),null}function pie(e){return h(xct,{get children(){return h(sT,{get children(){return h(iT,{get children(){return e.children}})}})}})}function lct(e){return h(pie,{get children(){return h(gct,{get serverScoped(){return e.serverScoped},get children(){return e.children}})}})}function cct(){const[e]=Id(),t=ar(),n=ks();return h(q,{get when(){return n.ready()},get children(){return h(q,{get when(){return n.store.find(r=>r.type==="draft"&&r.draftID===e.draftId)},keyed:!0,get fallback(){return h(Dv,{href:"/"})},children:r=>h(q,{get when(){return t.general.newLayoutDesigns()},get fallback(){return h(Dv,{get href(){return`/${yn(r.directory)}/session`}})},get children(){return h(uct,{draft:r})}})})}})}function uct(e){const t=ms(),n=I(()=>t.servers.list().find(s=>ut.key(s)===e.draft.server)),r=()=>e.draft.directory,i=()=>e.draft.server;return h(q,{get when(){return`${e.draft.server}\0${e.draft.directory}`},keyed:!0,get children(){return h(sT,{server:n,get children(){return h(iT,{server:n,get children(){return h(bT,{directory:r,get children(){return h(aT,{directory:r,get children(){return h(wT,{directory:r,server:i,get children(){return h(vct,{get children(){return h(rct,{})}})}})}})}})}})}})}})}function dct(e){const t=wt();return h(sae,{get value(){return{locale:t.intl,t:t.t}},get children(){return e.children}})}function vie(e){const t=new WB({defaultOptions:{queries:{refetchOnReconnect:!1,refetchOnMount:!1,refetchOnWindowFocus:!1}}});return h(rbe,{client:t,get children(){return e.children}})}function fct(){const e=ar();return he(()=>{if(typeof document>"u")return;const t=e.general.newLayoutDesigns();document.body.toggleAttribute("data-new-layout",t),document.body.classList.toggle("text-12-regular",!t),document.body.classList.toggle("font-(family-name:--font-family-text)",t),document.body.classList.toggle("text-[13px]",t),document.body.classList.toggle("font-[440]",t)}),null}function hct(e){return[h(fct,{}),h(Q3e,{get children(){return[h(mct,{}),h(HCe,{get children(){return e.children}})]}})]}function mct(){const e=Qi(),t=wt(),n=Tr();return e.register("desktop",()=>{const r=[];return n.platform==="desktop"&&n.exportDebugLogs&&r.push({id:"logs.export",title:"Export logs",category:t.t("command.category.settings"),onSelect:()=>{n.exportDebugLogs?.()}}),r}),null}function yie(e){return h(cCe,{get children(){return[we(()=>e.serverScoped),h(bT,{get directory(){return e.directory},get children(){return e.children}})]}})}function gct(e){return h(yie,{get directory(){return e.directory},get serverScoped(){return e.serverScoped},get children(){return h(LNe,{get children(){return e.children}})}})}function pct(e){return h(pie,{get children(){return h(yie,{get serverScoped(){return e.serverScoped},get children(){return h($Ne,{get children(){return e.children}})}})}})}function vct(e){return h(eG,{get children(){return h(dZ,{get children(){return h(qK,{get children(){return e.children}})}})}})}function yct(e){return h(Y1e,{get children(){return[h(v1e,{}),h(W1e,{onThemeApplied:(t,n,r)=>{window.api?.setTitlebar?.({mode:n,scheme:r})},get children(){return h(S3e,{get locale(){return e.locale},get children(){return h(dct,{get children(){return h(KC,{fallback:t=>(CV(t),h(GE,{error:t})),get children(){return h(vie,{get children(){return h(RTe,{get children(){return h(nae,{get children(){return h(rve,{get children(){return h(Use,{component:lB,get children(){return e.children}})}})}})}})}})}})}})}})}})]}})}function bct(e){const t=ci(),n=U4(),[r,i]=De("blocking"),[s,o]=ai(()=>e.disableHealthCheck?!0:Rxe(function*(){if(!t.current)return!0;const{http:d,type:f}=t.current;for(;;){if((yield*$xe(()=>n(d))).healthy)return!0;if(r()==="background"||f==="http")return!1}}).pipe(Nxe({duration:"10 seconds",orElse:()=>Co(!1)}),Vxe(Oxe(()=>i("background"))),zxe)),a=I(()=>r()==="blocking"&&["unresolved","pending"].includes(s.state)),[l]=ai(async()=>(e.startup&&await e.startup.catch(d=>{console.error("[startup] startup gate failed",d)}),!0)),c=I(()=>s.latest===!0&&["unresolved","pending"].includes(l.state)),u=I(()=>a()||c());return[h(q,{get when(){return!a()},get children(){return h(q,{get when(){return s.latest},get fallback(){return h(wct,{onRetry:()=>{r()==="background"&&o.refetch()},onServerSelected:d=>{i("blocking"),t.setActive(d),o.refetch()}})},get children(){return e.children}})}}),h(q,{get when(){return u()},get children(){var d=Jlt();return S(d,h(cB,{class:"w-16 h-20 opacity-50 animate-pulse"})),d}})]}function wct(e){const t=wt(),n=ci(),r=()=>n.list.filter(l=>ut.key(l)!==n.key),i=I(()=>n.name||n.key),s="\0server\0",o=I(()=>t.t("app.server.unreachable",{server:s}).split(s)),a=setInterval(()=>e.onRetry?.(),1e3);return Te(()=>clearInterval(a)),(()=>{var l=tct(),c=l.firstChild,u=c.firstChild,d=u.firstChild,f=u.nextSibling;return S(c,h(cB,{class:"w-12 h-15 mb-4"}),u),S(u,()=>o()[0],d),S(d,i),S(u,()=>o()[1],null),S(f,()=>t.t("app.server.retrying")),S(l,h(q,{get when(){return r().length>0},get children(){var m=ect(),g=m.firstChild,p=g.nextSibling;return S(g,()=>t.t("app.server.otherServers")),S(p,h(Dt,{get each(){return r()},children:y=>{const v=ut.key(y);return(()=>{var b=nct(),w=b.firstChild;return b.$$click=()=>e.onServerSelected?.(v),S(w,()=>hd(y)),b})()}})),m}}),null),l})()}function xct(e){const t=ci();return h(q,{get when(){return t.key},keyed:!0,get children(){return e.children}})}function kct(e){const t=n=>h(vie,{get children(){return h(hct,{get children(){return[we(()=>e.children),we(()=>n.children)]}})}});return h(KSe,{get defaultServer(){return e.defaultServer},get canonicalLocalServer(){return e.canonicalLocalServer},get servers(){return e.servers},get children(){return h(c8e,{get children(){return h(H3e,{get children(){return h(bct,{get disableHealthCheck(){return e.disableHealthCheck},get startup(){return e.startup},get children(){return h(q,{get when(){return ar().general.newLayoutDesigns().toString()},keyed:!0,get children(){return h(Gi,{get component(){return e.router??Tye},root:n=>h(tCe,{get children(){return h(LTe,{get children(){return h(CTe,{get children(){return h(t,{get children(){return h(q,{get when(){return ar().general.newLayoutDesigns()},get fallback(){return n.children},get children(){return h(pct,{get serverScoped(){return e.serverScoped},get children(){return n.children}})}})}})}})}})}}),get children(){return h(Sct,{get serverScoped(){return e.serverScoped}})}})}})}})}})}})}})}function Sct(e){const t=ar();return[h(Ml,{component:n=>h(lct,{get serverScoped(){return e.serverScoped},get children(){return n.children}}),get children(){return[h(q,{get when(){return!t.general.newLayoutDesigns()},get children(){return[h(Ml,{path:"/",component:Qlt}),h(Ml,{path:"/server/:serverKey/session/:id",component:oct})]}}),h(Ml,{path:"/:dir",component:GTe,get children(){return[h(Ml,{path:"/",component:()=>h(Dv,{href:"session"})}),h(Ml,{path:"/session/:id?",component:ict})]}})]}}),h(q,{get when(){return t.general.newLayoutDesigns()},get children(){return[h(Ml,{path:"/",component:Ult}),h(Ml,{path:"/:dir/session/:id",component:Cct}),h(Ml,{path:"/server/:serverKey/session/:id",component:sct})]}}),h(Ml,{path:"/new-session",component:cct})]}function Cct(){const e=ci(),t=ks(),n=Br();return h(q,{get when(){return t.ready()},get children(){return h(Dv,{get href(){return Wf(MK(t.store.filter(r=>r.type==="session"),n.id,e.key),n.id)}})}})}dn(["click"]);const _ct="1.18.7",Tct={version:_ct},bie="opencode.settings.dat:defaultServerUrl",Ect=e=>{if(typeof localStorage>"u")return null;try{return localStorage.getItem(e)}catch{return null}},Ict=(e,t)=>{if(!(typeof localStorage>"u"))try{if(t!==null){localStorage.setItem(e,t);return}localStorage.removeItem(e)}catch{return}},wie=()=>Ect(bie),Dct=e=>Ict(bie,e),Lct=async(e,t,n)=>{if(!("Notification"in window)||(Notification.permission==="default"?await Notification.requestPermission().catch(()=>"denied"):Notification.permission)!=="granted"||document.visibilityState==="visible"&&document.hasFocus())return;const s=new Notification(e,{body:t??"",icon:"https://opencode.ai/favicon-96x96-v3.png"});s.onclick=()=>{gDe(n),s.close()}},Act=e=>{window.open(e,"_blank")},Mct=()=>{window.history.back()},$ct=()=>{window.history.forward()},Pct=async()=>{window.location.reload()},oV=document.getElementById("root"),xie=()=>location.hostname.includes("opencode.ai")?"http://localhost:4096":location.origin,Oct=()=>{const e=wie();return e||xie()},Rct=()=>{const e=new URLSearchParams(location.search);e.has("auth_token")&&(e.delete("auth_token"),history.replaceState(null,"",location.pathname+(e.size?`?${e}`:"")+location.hash))},Fct={platform:"web",version:Tct.version,openLink:Act,back:Mct,forward:$ct,restart:Pct,notify:Lct,getDefaultServer:async()=>{const e=wie();return e?ut.Key.make(e):null},setDefaultServer:Dct};if(oV instanceof HTMLElement){const e=HSe(new URLSearchParams(location.search).get("auth_token"));Rct();const t={type:"http",authToken:!!e,http:{url:xie(),...e}};GC(()=>h(Zke,{value:Fct,get children(){return h(yct,{get children(){return h(kct,{get defaultServer(){return ut.Key.make(Oct())},get canonicalLocalServer(){return ut.key(t)},servers:[t],disableHealthCheck:!0})}})}}),oV)}export{sT as $,rFe as A,Kt as B,Xt as C,v$ as D,Kx as E,jE as F,Io as G,GQ as H,Yt as I,QYe as J,VVe as K,a1 as L,zt as M,wg as N,yc as O,Hut as P,rbe as Q,o3 as R,_ut as S,aC as T,iVe as U,ut as V,aie as W,oie as X,rie as Y,pat as Z,edt as _,as as a,hc as a$,iT as a0,GPe as a1,q as a2,Fd as a3,YVe as a4,Rr as a5,hy as a6,rr as a7,Em as a8,m1 as a9,uy as aA,us as aB,uu as aC,I as aD,Zut as aE,bQe as aF,Jut as aG,he as aH,ai as aI,Nd as aJ,De as aK,Ze as aL,HZ as aM,nr as aN,Uut as aO,jTe as aP,Ns as aQ,dn as aR,_at as aS,Ll as aT,Tx as aU,Zre as aV,Y3e as aW,qW as aX,iC as aY,oCe as aZ,zTe as a_,Cf as aa,Dp as ab,Ar as ac,Qn as ad,ds as ae,B as af,mR as ag,We as ah,Gut as ai,cn as aj,Kut as ak,yn as al,qt as am,Nt as an,Jl as ao,ct as ap,xr as aq,hJ as ar,cs as as,put as at,h as au,bn as av,ERe as aw,ae as ax,qk as ay,qE as az,ou as b,li as b$,fn as b0,NE as b1,YK as b2,vKe as b3,kut as b4,fO as b5,S as b6,w1 as b7,Ux as b8,an as b9,HTe as bA,dut as bB,z3e as bC,mut as bD,hd as bE,me as bF,tn as bG,R6e as bH,Ee as bI,An as bJ,Zs as bK,A as bL,fut as bM,p$ as bN,gut as bO,Wt as bP,pt as bQ,Qi as bR,q1 as bS,Tot as bT,hn as bU,Mr as bV,ua as bW,th as bX,ma as bY,ms as bZ,wt as b_,we as ba,Mt as bb,le as bc,Cn as bd,uut as be,V3e as bf,hut as bg,Xut as bh,Yut as bi,J9 as bj,hh as bk,Te as bl,sn as bm,Yw as bn,rt as bo,_r as bp,But as bq,qut as br,jut as bs,_Re as bt,l1 as bu,d8 as bv,Uo as bw,Wut as bx,yt as by,VE as bz,gne as c,El as c0,vTe as c1,Yo as c2,fs as c3,Br as c4,mu as c5,Tr as c6,Hg as c7,JYe as c8,$d as c9,ch as ca,kr as cb,Id as cc,ci as cd,a3 as ce,Sut as cf,xs as cg,Di as ch,XJ as ci,ga as cj,ar as ck,wne as cl,Ji as cm,ks as cn,h9 as co,UOe as cp,Tut as cq,Gx as cr,hne as d,fne as e,$I as f,Lat as g,mne as h,KZe as i,pne as j,Eat as k,at as l,jk as m,Dr as n,Dt as o,ly as p,Od as q,Rd as r,cy as s,on as t,Ln as u,Lr as v,Eo as w,Tt as x,bT as y,Jn as z};
|
|
1193
|
+
`},get classList(){return t.classList}}),!1,!0),S(r,()=>t.children),r})()}function die(e){const t=I(()=>Ll(e.project));return h(GQ,{get fallback(){return t()},get src(){return we(()=>!!e.outline)()?void 0:NE(e.project.id,e.project.icon)},get variant(){return we(()=>!!e.outline)()?"outline":YK(e.project.icon?.color)}})}dn(["click","pointerdown"]);function Jat(e){return h(Kat,{get language(){return e.projects.copy.language},get servers(){return e.projects.server.list},get projects(){return e.projects.project.list},get recentlyClosed(){return e.projects.project.recentlyClosed},get selection(){return e.projects.selection.value},get homedir(){return e.projects.project.homedir},get serverHealth(){return e.projects.server.health},get projectsForServer(){return e.projects.server.projects},get collapsed(){return e.projects.server.collapsed},get canDefaultServer(){return e.projects.server.canDefault},get defaultServerKey(){return e.projects.server.defaultKey},get canRevealProject(){return e.projects.project.canReveal},get unseenCount(){return e.projects.project.unseenCount},get onWheel(){return e.scroll.viewport.containWheel},get onChooseProject(){return e.projects.project.choose},get onFocusServer(){return e.projects.server.focus},get onToggleCollapsed(){return e.projects.server.toggleCollapsed},get onEditServer(){return e.projects.server.edit},get onSetDefaultServer(){return e.projects.server.setDefault},get onRemoveServer(){return e.projects.server.remove},get onMoveProject(){return e.projects.project.move},get onSelectProject(){return e.projects.project.select},get onAddProjects(){return e.projects.project.add},get onOpenProjectNewSession(){return e.projects.project.openNewSession},get onEditProject(){return e.projects.project.edit},get onRevealProject(){return e.projects.project.reveal},get onClearNotifications(){return e.projects.project.clearNotifications},get onCloseProject(){return e.projects.project.close},get onOpenSettings(){return e.projects.utility.settings},get onOpenHelp(){return e.projects.utility.help}})}const elt=12,tlt=16,nlt=16;function rlt(e){const[t,n]=De(),[r,i]=De(),[s,o]=Ze({titleOpacity:{}}),a=new Map,l=new Map;let c,u,d,f,m=elt;ae(()=>{const w=e(),x=new Set(w.map(k=>k.id));a.forEach((k,C)=>{x.has(C)||a.delete(C)}),l.forEach((k,C)=>{x.has(C)||l.delete(C)}),w.length===0&&(u=void 0,v()),g()}),Te(()=>{d!==void 0&&cancelAnimationFrame(d),f?.disconnect()});function g(){if(typeof requestAnimationFrame>"u"){p();return}d===void 0&&(d=requestAnimationFrame(()=>{d=void 0,p()}))}function p(){if(!c)return;const w=e().map(x=>a.get(x.id)).find(x=>x!==void 0);if(w&&typeof getComputedStyle=="function"){const x=Number.parseFloat(getComputedStyle(w).top);Number.isFinite(x)&&(m=x)}e().forEach(x=>{const k=a.get(x.id);k&&l.set(x.id,k.offsetTop)}),y(c.scrollTop)}function y(w){const x=e();x.forEach((k,C)=>{const E=x.slice(C+1).map($=>l.get($.id)).find($=>$!==void 0),_=m+tlt,L=E===void 0?void 0:E-w,O=L===void 0?1:Math.max(0,Math.min(1,(L-_)/nlt));o("titleOpacity",k.id,Math.round(O*1e3)/1e3)})}function v(){f?.disconnect(),!(typeof ResizeObserver>"u")&&(f=new ResizeObserver(g),c&&f.observe(c),u&&f.observe(u))}function b(w){if(!c||w.defaultPrevented||w.ctrlKey||!w.deltaY||!(w.target instanceof Element))return;const x=w.target.closest("[data-scrollable]");x!==c&&x&&(w.deltaY<0?x.scrollTop>0:x.scrollTop<x.scrollHeight-x.clientHeight)||w.preventDefault()}return{viewport:{thumbTrack:t,hoverTarget:r,setThumbTrack:n,setHoverTarget:i,setViewport:w=>{c=w,v(),g()},update:y,containWheel:b,containOuterWheel:w=>{c&&(w.target instanceof Node&&c.contains(w.target)||b(w))}},header:{setContent:w=>{u=w,v(),g()},setHeader:(w,x)=>{a.set(w,x),g()},titleOpacity:w=>s.titleOpacity[w]??1}}}async function ilt(e){await e.archive(e.session.id).then(()=>{e.remove(),rC({server:e.server,directory:e.session.directory,sessionIDs:[e.session.id]})}).catch(t=>e.onError?.(t))}const iV=64;function slt(e){const t=ks(),n=Qi(),r=Mr(),i=wt(),s=Oq(),o=I(()=>{const y=e.project.selected();return y?sV(y):e.project.list().flatMap(sV)}),a=I(()=>new Map(e.project.list().flatMap(y=>y.id?[[y.id,y]]:[]))),l=()=>e.server.focusedSync().homeSessions,c=_a(()=>({queryKey:l().eventsKey,queryFn:async()=>({sequence:0,entries:[]}),initialData:{sequence:0,entries:[]},enabled:!1})),u=_a(()=>({queryKey:l().indexKey,enabled:!!e.server.focusedContext(),queryFn:async({signal:y})=>{const v=e.server.focusedContext();if(!v)return{sessions:[],eventSequence:0};const b=l(),w=b.eventSequence(),x=await M7e((k,C)=>v.sdk.client.v2.session.list(k,C),w,y);return b.complete(w),x},retry:!1,staleTime:3e4,refetchOnMount:!0,refetchOnReconnect:!0})),d=I(()=>N7e(l().sessions(u.data,c.data),iV,Date.now())),f=I(()=>olt({sessions:d,projectDirectories:o,projects:e.project.list,projectByID:a})),m=I(()=>f().slice(0,iV)),g=I(()=>alt(m(),i)),p=new Set;return ae(()=>{const y=e.server.focusedContext(),v=e.server.focused();!y||!v||m().slice(0,2).forEach(b=>{const w=`${ut.key(v)}\0${b.session.id}`;p.has(w)||(p.add(w),jr(x=>{try{y.sync.session.sync(b.session.id).then(()=>Promise.all((y.sync.session.data.message[b.session.id]??[]).flatMap(k=>(y.sync.session.data.part[k.id]??[]).flatMap(C=>C.type!=="text"||!C.text?[]:Eje(C.text,C.id,s))))).catch(()=>{}).finally(x)}catch{x()}}))})}),n.register("home.palette",()=>[{id:"command.palette",title:i.t("command.palette"),hidden:!0,onSelect:async()=>{const y=e.server.focused();if(!y)return;const v=e.server.focusedContext();if(!v)return;const{DialogHomeCommandPaletteV2:b}=await B(async()=>{const{DialogHomeCommandPaletteV2:w}=await import("./dialog-command-palette-v2-hAzWgyPR.js").then(x=>x.d);return{DialogHomeCommandPaletteV2:w}},__vite__mapDeps([119,120]));r.show(()=>h(b,{server:y,onSelectSession:w=>{if(!w.sessionID||!w.directory||!w.server)return;const x=w.sessionID,k=w.server,C=w.project?.worktree??w.directory;v.projects.open(C),v.projects.touch(C),Zs(()=>{const E=t.addSessionTab({server:k,sessionId:x});t.select(E)})}}))}}]),{copy:{language:i},data:{records:m,groups:g,loading:()=>u.isLoading,searchRecords:f},session:{showProjectName:()=>!e.project.selected(),server:()=>e.selection.value().server,canCreate:()=>!!e.project.newSession(),create:e.project.openNewSession,open:(y,v)=>{const b=rt(y.directory),w=e.project.list().find(E=>rt(E.worktree)===b||E.sandboxes?.some(_=>rt(_)===b))??VE(y,e.project.list(),a()),x=e.server.focused();if(!x)return;const k=w?.worktree??y.directory,C=e.server.focusedContext();if(C){if(C.projects.open(k),v?.background){t.addSessionTab({server:ut.key(x),sessionId:y.id});return}C.projects.touch(k),Zs(()=>{const E=t.addSessionTab({server:ut.key(x),sessionId:y.id});t.select(E)})}},archive:async y=>{const v=e.server.focused(),b=e.server.focusedContext();if(!v||!b)return;const[,w]=b.sync.child(y.directory);await b.sdk.protocol==="v1"&&await ilt({server:ut.key(v),session:y,archive:x=>b.sdk.client.session.update({sessionID:x,directory:y.directory,time:{archived:Date.now()}}),remove:()=>w(yt(x=>{const k=Kn.search(x.session,y.id,C=>C.id);k.found&&x.session.splice(k.index,1)})),onError:x=>tn({title:i.t("common.requestFailed"),description:Jp(x,i.t("common.requestFailed"))})})}},tab:{isOpen:y=>eCe(t.store,e.selection.value().server,y.session)}}}function sV(e){return[e.worktree,...e.sandboxes??[]]}function olt(e){const t=new Set(e.projectDirectories().map(rt)),n=e.sessions().filter(r=>t.has(rt(r.directory)));return[...new Map(n.map(r=>[r.id,r])).values()].sort((r,i)=>(i.time.updated??i.time.created)-(r.time.updated??r.time.created)).flatMap(r=>{const i=rt(r.directory),s=e.projects().find(o=>rt(o.worktree)===i||o.sandboxes?.some(a=>rt(a)===i))??VE(r,e.projects(),e.projectByID());return s?{session:r,project:s,projectName:Ll(s)}:[]})}function Bu(e){return`${rt(e.session.directory)}:${e.session.id}`}function alt(e,t){const n=ln.local(),r=n.minus({days:1}),i=e.filter(l=>ln.fromMillis(l.session.time.updated??l.session.time.created).hasSame(n,"day")),s=e.filter(l=>ln.fromMillis(l.session.time.updated??l.session.time.created).hasSame(r,"day")),o=e.filter(l=>{const c=ln.fromMillis(l.session.time.updated??l.session.time.created);return!c.hasSame(n,"day")&&!c.hasSame(r,"day")}),a=i.length===0&&s.length===0?t.t("sidebar.project.recentSessions"):t.t("home.sessions.group.older");return[{id:"today",title:t.t("home.sessions.group.today"),sessions:i},{id:"yesterday",title:t.t("home.sessions.group.yesterday"),sessions:s},{id:"older",title:a,sessions:o}].filter(l=>l.sessions.length>0)}function llt(e){const t=KQ(e.server,()=>e.record.session.directory,()=>e.record.session.id);return e.render({unread:t.unread,loading:t.loading,open:()=>e.isOpenTab(e.record)})}function clt(e,t){const n=Qi(),r=wt(),[i,s]=Ze({value:"",focused:!1,highlighted:""});let o,a,l;const c=I(()=>i.value.trim()),u=I(()=>{const v=c().toLowerCase();return v?t.data.searchRecords().filter(b=>`${b.session.title} ${b.projectName}`.toLowerCase().includes(v)):[]}),d=I(()=>{const v=u();return v.some(b=>Bu(b)===i.highlighted)?i.highlighted:v[0]?Bu(v[0]):""}),f=I(()=>i.focused&&c().length>0),m=I(()=>{const v=e.project.selected();if(v)return r.t("home.sessions.search.placeholder.scoped",{scope:Ll(v)});if(e.server.list().length>1){const b=e.server.focused();if(b)return r.t("home.sessions.search.placeholder.scoped",{scope:hd(b)})}return r.t("home.sessions.search.placeholder")});Te(an(document,"pointerdown",v=>{if(!f())return;const b=v.target;!(b instanceof Node)||o?.contains(b)||p()})),n.register("home.search",()=>[{id:"home.sessions.search.focus",title:m(),keybind:"mod+f",hidden:!0,onSelect:g}]);function g(){a?.focus(),s("focused",!0)}function p(){s({value:"",focused:!1})}function y(v,b){t.session.open(v.session,b),b?.background||p()}return{query:{value:()=>i.value,placeholder:m,open:f,focus:g,input:v=>s({value:v,highlighted:""}),close:p},result:{loading:t.data.loading,list:u,active:d,noResultsLabel:()=>r.t("home.sessions.search.noResults",{query:c()}),highlight:v=>s("highlighted",Bu(v)),move:v=>{const b=u();if(b.length===0)return;const w=b.findIndex(k=>Bu(k)===d()),x=((w===-1?0:w)+v+b.length)%b.length;s("highlighted",Bu(b[x])),l?.querySelector(`[data-key="${i.highlighted}"]`)?.scrollIntoView({block:"nearest"})},select:y,selectActive:()=>{const v=u().find(b=>Bu(b)===d());v&&y(v)}},element:{setRoot:v=>o=v,setInput:v=>a=v,setList:v=>l=v}}}function ult(e){return e.button===1?!0:e.button!==0||e.shift||e.alt?!1:e.mac?e.meta&&!e.ctrl:e.ctrl&&!e.meta}var dlt=A('<div class="pointer-events-none absolute right-0 top-[84px] z-20 flex lg:top-[108px]">'),flt=A('<div class="flex flex-col pt-3 pr-3 pb-16">'),hlt=A('<section class="min-h-0 min-w-0 flex-1 flex flex-col"><div class="sticky top-0 z-30 shrink-0 bg-v2-background-bg-base pb-3 pt-6 lg:pt-12"></div><div class="pointer-events-none sticky top-[84px] z-40 h-0 -mr-3 lg:top-[108px]"><div data-component=home-session-scroll-track class="relative ml-auto h-[calc(100cqh-84px)] w-3 lg:h-[calc(100cqh-108px)]"></div></div><div class="-mr-3 min-h-[calc(100cqh-72px)] lg:min-h-[calc(100cqh-96px)]">'),mlt=A("<div class=pt-3>"),glt=A("<div>"),plt=A('<span aria-hidden=true class="pointer-events-none absolute top-1/2 h-3 w-0.5 -translate-y-1/2 rounded-[2px] bg-v2-background-bg-layer-04"style="right:calc(100% + 4px)">'),vlt=A('<div class="relative shrink-0">'),ylt=A('<div class="flex flex-col gap-px pb-2">'),blt=A('<div class="flex flex-col"><p class="my-1.5 pl-[18px] pr-6 text-[13px] leading-4 tracking-[-0.04px] text-v2-text-text-muted [font-weight:440]">'),wlt=A('<div data-component=home-session-search-panel class="absolute flex flex-col overflow-hidden rounded-[12px] bg-v2-background-bg-base shadow-[var(--v2-elevation-floating)]"style="top:-6px;left:-6px;width:calc(100% + 12px)"><div class="flex flex-col pt-9"><div id=home-session-search-results role=listbox class="flex flex-col gap-4 pt-4">'),xlt=A('<div class=w-full><div data-component=home-session-search class="relative z-30 w-full"><label class="relative z-20 flex h-9 w-full items-center gap-2 rounded-[6px] py-1 pl-3 pr-2 bg-v2-background-bg-layer-02/60 text-v2-icon-icon-muted transition-[background-color,box-shadow] duration-[120ms] ease-in-out hover:bg-v2-background-bg-layer-02 focus-within:bg-v2-background-bg-layer-02"><input class="relative z-20 min-w-0 flex-1 border-0 bg-transparent outline-0 text-v2-text-text-base [font-weight:440] placeholder:text-v2-text-text-faint"aria-controls=home-session-search-results aria-autocomplete=list>'),klt=A('<div class="flex items-center justify-center px-4 py-3 text-v2-text-text-muted [font-weight:440]">'),Slt=A('<p class="my-1.5 px-4 pb-2 text-[13px] leading-4 tracking-[-0.04px] text-v2-text-text-muted [font-weight:440]">'),Clt=A('<button type=button data-component=home-session-search-row role=option class="flex h-10 w-full shrink-0 cursor-default items-center gap-2 border-0 py-3 pl-[18px] pr-6 text-left transition-[background-color] duration-[120ms] ease-in-out hover:bg-v2-overlay-simple-overlay-hover focus-visible:bg-v2-overlay-simple-overlay-hover focus-visible:outline-none"><div class="flex min-w-0 flex-1 items-center gap-1.5">'),_lt=A('<div class="pointer-events-none sticky top-[84px] flex h-7 min-w-0 items-center justify-between bg-v2-background-bg-base pl-3 lg:top-[108px]"><div class="text-v2-text-text-muted [font-weight:440]">'),Tlt=A('<div class="hover-reveal absolute right-1.5 top-1/2 flex -translate-y-1/2 items-center gap-1 group-hover/session:opacity-100 focus-within:opacity-100">'),Elt=A('<div class="group/session relative flex h-10 min-w-0 items-center rounded-[6px]"><button type=button data-component=home-session-row class="flex h-10 min-w-0 w-full flex-1 shrink-0 cursor-default items-center gap-2 rounded-[6px] border-0 bg-transparent py-3 pl-3 pr-10 text-left text-v2-text-text-muted [font-weight:530] transition-[background-color,color,box-shadow] duration-[120ms] ease-in-out hover:bg-v2-overlay-simple-overlay-hover focus-visible:bg-v2-overlay-simple-overlay-hover focus-visible:outline-none">'),Ilt=A('<span class="min-w-0 overflow-hidden text-ellipsis whitespace-nowrap text-v2-text-text-base [font-weight:530]">'),Dlt=A('<span class="min-w-0 flex-[1_1_auto] overflow-hidden text-ellipsis whitespace-nowrap text-v2-text-text-muted [font-weight:440]">'),Llt=A('<div class="flex min-h-full flex-col items-center gap-4 px-6 pt-[52px] text-center"><div class="shrink-0 text-[13px] leading-[13px] tracking-[-0.04px] text-v2-text-text-base [font-weight:530]"></div><p class="mb-1 text-center text-[13px] leading-5 tracking-[-0.04px] text-v2-text-text-muted [font-weight:440]">'),Alt=A('<div class="flex min-w-0 flex-col gap-4"><div class="flex h-7 min-w-0 items-center justify-between px-4"><div class="text-v2-text-text-muted [font-weight:440]"></div></div><div class="flex min-w-0 flex-col gap-px"aria-hidden=true>'),Mlt=A('<div class="h-10 rounded-[6px] bg-v2-background-bg-deep opacity-70">');const $lt=!1;function qx(e){return ult({button:e.button,mac:typeof navigator=="object"&&/(Mac|iPod|iPhone|iPad)/.test(navigator.platform),meta:e.metaKey,ctrl:e.ctrlKey,shift:e.shiftKey,alt:e.altKey})}function Plt(e){return(()=>{var t=hlt(),n=t.firstChild,r=n.nextSibling,i=r.firstChild,s=r.nextSibling,o=e.onSetHoverTarget;typeof o=="function"?pt(o,t):e.onSetHoverTarget=t,cn(n,"wheel",e.onWheel),S(n,h(Rlt,e),null),S(n,h(q,{get when(){return we(()=>e.groups().length>0)()&&e.canCreateSession()},get children(){var l=dlt();return S(l,h(as,{"data-action":"home-new-session",variant:"ghost-muted",size:"normal",icon:"edit",class:"pointer-events-auto h-7 px-2 [font-weight:530]",get onClick(){return e.onCreateSession},get children(){return e.language.t("command.session.new")}})),l}}),null);var a=e.onSetThumbTrack;return typeof a=="function"?pt(a,i):e.onSetThumbTrack=i,S(s,h(q,{get when(){return!e.loading()},get fallback(){return(()=>{var l=mlt();return S(l,h(Hlt,{get label(){return e.language.t("common.loading")}})),l})()},get children(){return h(q,{get when(){return e.groups().length>0},get fallback(){return h(zlt,{get onNewSession(){return we(()=>!!e.canCreateSession())()?e.onCreateSession:void 0},get language(){return e.language}})},get children(){var l=flt(),c=e.onSetContent;return typeof c=="function"?pt(c,l):e.onSetContent=l,S(l,h(Dt,{get each(){return e.groups()},children:(u,d)=>[h(Nlt,{get title(){return u.title},get titleOpacity(){return e.titleOpacity(u.id)},onSetRef:f=>e.onSetHeader(u.id,f),get elevated(){return d()===0}}),(()=>{var f=glt();return S(f,h(Dt,{get each(){return u.sessions},children:m=>h(Vlt,le(e,{record:m}))})),he(()=>xr(f,`flex min-w-0 flex-col gap-px pt-4 ${d()===e.groups().length-1?"":"mb-6"}`)),f})()]})),l}})}})),he(()=>me(t,"aria-label",e.language.t("sidebar.project.recentSessions"))),t})()}function fie(e){return h(llt,{get server(){return e.server},get record(){return e.record},get isOpenTab(){return e.isOpenTab},render:t=>h(Olt,{get record(){return e.record},get revealProjectOnHover(){return e.revealProjectOnHover},get open(){return t.open()},get unread(){return t.unread()},get loading(){return t.loading()}})})}function Olt(e){return(()=>{var t=vlt();return S(t,h(q,{get when(){return e.open},get children(){return plt()}}),null),S(t,h(YQ,{get project(){return e.record.project},get directory(){return e.record.session.directory},get revealProjectOnHover(){return e.revealProjectOnHover},get unread(){return e.unread},get loading(){return e.loading}}),null),t})()}function Rlt(e){return(()=>{var t=xlt(),n=t.firstChild,r=n.firstChild,i=r.firstChild,s=e.onSetSearchRoot;typeof s=="function"?pt(s,n):e.onSetSearchRoot=n,S(n,h(q,{get when(){return e.searchOpen()},get children(){var a=wlt(),l=a.firstChild,c=l.firstChild;return S(c,h(q,{get when(){return!e.searchLoading()},get fallback(){return(()=>{var u=klt();return S(u,h(Fd,{class:"size-4"})),u})()},get children(){return h(q,{get when(){return e.searchResults().length>0},get fallback(){return(()=>{var u=Slt();return S(u,()=>e.searchNoResultsLabel()),u})()},get children(){var u=blt(),d=u.firstChild;return S(d,()=>e.language.t("home.sessions.search.sessions")),S(u,h(yc,{class:"max-h-80",get viewportRef(){return e.onSetSearchList},get children(){var f=ylt();return S(f,h(Dt,{get each(){return e.searchResults()},children:m=>h(Flt,le(e,{record:m,get selected(){return e.searchActive()===Bu(m)}}))})),f}}),null),u}})}})),a}}),r),S(r,h(on,{name:"magnifying-glass"}),i),i.$$keydown=a=>{if(a.key==="Escape"){a.preventDefault(),e.onSearchClose(),a.currentTarget.blur();return}if(!(!e.searchOpen()||e.searchResults().length===0)&&!(a.altKey||a.metaKey)){if(a.key==="ArrowDown"){a.preventDefault(),e.onSearchMove(1);return}if(a.key==="ArrowUp"){a.preventDefault(),e.onSearchMove(-1);return}a.key==="Enter"&&!a.isComposing&&(a.preventDefault(),e.onSearchSelectActive())}},i.$$input=a=>e.onSearchInput(a.currentTarget.value),cn(i,"focus",e.onSearchFocus);var o=e.onSetSearchInput;return typeof o=="function"?pt(o,i):e.onSetSearchInput=i,S(r,h(q,{get when(){return e.searchValue()},get children(){return h(Lr,{type:"button",variant:"ghost-muted",size:"small",class:"relative z-20 shrink-0",get icon(){return h(on,{name:"close",size:"large",class:"text-v2-icon-icon-muted"})},get"aria-label"(){return e.searchPlaceholder()},onClick:()=>{e.onSearchClose(),e.onSearchFocus()}})}}),null),he(a=>{var l=e.searchPlaceholder(),c=e.searchPlaceholder(),u=e.searchOpen(),d=e.searchActive()&&e.searchOpen()?`home-session-search-option-${e.searchActive()}`:void 0;return l!==a.e&&me(i,"placeholder",a.e=l),c!==a.t&&me(i,"aria-label",a.t=c),u!==a.a&&me(i,"aria-expanded",a.a=u),d!==a.o&&me(i,"aria-activedescendant",a.o=d),a},{e:void 0,t:void 0,a:void 0,o:void 0}),he(()=>i.value=e.searchValue()),t})()}function Flt(e){const t=I(()=>Df(e.record.session.title)||e.record.session.id),n=()=>e.showProjectName()&&e.record.projectName,r=()=>Bu(e.record);return(()=>{var i=Clt(),s=i.firstChild;return i.addEventListener("auxclick",o=>{qx(o)&&(o.preventDefault(),e.onSearchSelect(e.record,{background:!0}))}),i.$$click=o=>e.onSearchSelect(e.record,{background:qx(o)}),i.$$mousedown=o=>{o.button===1&&o.preventDefault()},i.addEventListener("mouseenter",()=>e.onSearchHighlight(e.record)),S(i,h(fie,{get server(){return e.server},get isOpenTab(){return e.isOpenTab},get record(){return e.record},get revealProjectOnHover(){return!!n()}}),s),S(s,h(hie,{get title(){return t()},get showProjectName(){return!!n()},search:!0}),null),S(s,h(q,{get when(){return n()},get children(){return h(mie,{get name(){return e.record.projectName},search:!0})}}),null),he(o=>{var a=`home-session-search-option-${r()}`,l=r(),c=e.selected,u=!!e.selected,d=!!n();return a!==o.e&&me(i,"id",o.e=a),l!==o.t&&me(i,"data-key",o.t=l),c!==o.a&&me(i,"aria-selected",o.a=c),u!==o.o&&i.classList.toggle("bg-v2-overlay-simple-overlay-hover",o.o=u),d!==o.i&&i.classList.toggle("group",o.i=d),o},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),i})()}function Nlt(e){return(()=>{var t=_lt(),n=t.firstChild,r=e.onSetRef;return typeof r=="function"?pt(r,t):e.onSetRef=t,S(n,()=>e.title),he(i=>{var s={"home-session-group-header z-[5]":!!e.elevated,"z-10":!e.elevated},o=e.titleOpacity;return i.e=ct(t,s,i.e),o!==i.t&&Ct(n,"opacity",i.t=o),i},{e:void 0,t:void 0}),t})()}function Vlt(e){const t=I(()=>Df(e.record.session.title)||e.record.session.id),n=()=>e.showProjectName()&&e.record.projectName;return(()=>{var r=Elt(),i=r.firstChild;return i.addEventListener("auxclick",s=>{qx(s)&&(s.preventDefault(),e.onOpenSession(e.record.session,{background:!0}))}),i.$$click=s=>e.onOpenSession(e.record.session,{background:qx(s)}),i.$$mousedown=s=>{s.button===1&&s.preventDefault()},S(i,h(fie,{get server(){return e.server},get isOpenTab(){return e.isOpenTab},get record(){return e.record},get revealProjectOnHover(){return!!n()}}),null),S(i,h(hie,{get title(){return t()},get showProjectName(){return!!n()}}),null),S(i,h(q,{get when(){return n()},get children(){return h(mie,{get name(){return e.record.projectName}})}}),null),S(r,h(q,{when:$lt,get children(){var s=Tlt();return S(s,h(Qn,{class:"flex shrink-0 items-center",placement:"bottom",get value(){return e.language.t("common.archive")},get children(){return h(Lr,{"data-action":"home-session-archive",variant:"ghost-muted",size:"large",get icon(){return h(on,{name:"archive"})},get"aria-label"(){return e.language.t("common.archive")},onClick:o=>{o.preventDefault(),o.stopPropagation(),e.onArchiveSession(e.record.session)}})}})),s}}),null),he(()=>r.classList.toggle("group",!!n())),r})()}function hie(e){return(()=>{var t=Ilt();return S(t,()=>e.title),he(n=>ct(t,{"text-[13px] leading-4 tracking-[-0.04px]":!!e.search,"max-w-[min(70%,480px)] flex-[0_1_auto]":e.showProjectName,"flex-[1_1_auto]":!e.showProjectName},n)),t})()}function mie(e){return(()=>{var t=Dlt();return S(t,()=>e.name),he(n=>ct(t,{"text-[13px] leading-4 tracking-[-0.04px]":!!e.search},n)),t})()}function zlt(e){return(()=>{var t=Llt(),n=t.firstChild,r=n.nextSibling;return S(n,()=>e.language.t("home.sessions.empty")),S(r,()=>e.language.t("home.sessions.empty.description")),S(t,h(q,{get when(){return e.onNewSession},children:i=>h(as,{"data-action":"home-new-session",variant:"neutral",size:"normal",icon:"edit",get onClick(){return i()},get children(){return e.language.t("command.session.new")}})}),null),t})()}function Hlt(e){return(()=>{var t=Alt(),n=t.firstChild,r=n.firstChild,i=n.nextSibling;return S(r,()=>e.label),S(i,h(Dt,{each:[0,1,2,3],children:()=>Mlt()})),t})()}dn(["input","keydown","mousedown","click"]);function jlt(e){return h(Plt,{get language(){return e.sessions.copy.language},get groups(){return e.sessions.data.groups},get loading(){return e.sessions.data.loading},get showProjectName(){return e.sessions.session.showProjectName},get server(){return e.sessions.session.server},get canCreateSession(){return e.sessions.session.canCreate},get searchValue(){return e.search.query.value},get searchPlaceholder(){return e.search.query.placeholder},get searchOpen(){return e.search.query.open},get searchLoading(){return e.search.result.loading},get searchResults(){return e.search.result.list},get searchActive(){return e.search.result.active},get searchNoResultsLabel(){return e.search.result.noResultsLabel},get titleOpacity(){return e.scroll.header.titleOpacity},get isOpenTab(){return e.sessions.tab.isOpen},get onCreateSession(){return e.sessions.session.create},get onOpenSession(){return e.sessions.session.open},get onArchiveSession(){return e.sessions.session.archive},get onSetHoverTarget(){return e.scroll.viewport.setHoverTarget},get onSetThumbTrack(){return e.scroll.viewport.setThumbTrack},get onSetContent(){return e.scroll.header.setContent},get onSetHeader(){return e.scroll.header.setHeader},get onWheel(){return e.scroll.viewport.containWheel},get onSetSearchRoot(){return e.search.element.setRoot},get onSetSearchInput(){return e.search.element.setInput},get onSetSearchList(){return e.search.element.setList},get onSearchFocus(){return e.search.query.focus},get onSearchInput(){return e.search.query.input},get onSearchClose(){return e.search.query.close},get onSearchMove(){return e.search.result.move},get onSearchSelectActive(){return e.search.result.selectActive},get onSearchHighlight(){return e.search.result.highlight},get onSearchSelect(){return e.search.result.select}})}var qlt=A('<div class="mx-auto grid min-h-full w-full max-w-[1080px] grid-rows-[auto_minmax(0,1fr)_auto] gap-4 px-3 lg:grid-cols-[280px_minmax(0,720px)] lg:grid-rows-1 lg:gap-8 lg:px-6">'),Blt=A('<div class="m-2 min-h-0 flex-1 self-stretch overflow-hidden rounded-[10px] bg-v2-background-bg-base shadow-[var(--v2-elevation-raised)]">');function Ult(){const e=oat(),t=Aat(e),n=slt(e),r=clt(e,n),i=rlt(n.data.groups);return(()=>{var s=Blt();return S(s,h(yc,{class:"h-full [container-type:size]",get thumbContainer(){return i.viewport.thumbTrack},get thumbHoverTarget(){return i.viewport.hoverTarget},get viewportRef(){return i.viewport.setViewport},onScroll:o=>i.viewport.update(o.currentTarget.scrollTop),get onWheel(){return i.viewport.containOuterWheel},get children(){var o=qlt();return S(o,h(Jat,{projects:t,scroll:i}),null),S(o,h(jlt,{sessions:n,search:r,scroll:i}),null),S(o,h(uie,{class:"flex lg:hidden",get onOpenSettings(){return t.utility.settings},get onOpenHelp(){return t.utility.help},get language(){return t.copy.language}}),null),o}})),s})()}var Wlt=A("<div>"),Klt=A('<div class="mt-20 w-full flex flex-col gap-4"><div class="flex gap-2 items-center justify-between pl-3"><div class="text-14-medium text-text-strong"></div></div><ul class="flex flex-col gap-2">'),Glt=A('<div class="mt-30 mx-auto flex flex-col items-center gap-3"><div class="text-12-regular text-text-weak">'),Zlt=A('<div class="mt-30 mx-auto flex flex-col items-center gap-3"><div class="flex flex-col gap-1 items-center justify-center"><div class="text-14-medium text-text-strong"></div><div class="text-12-regular text-text-weak">'),Ylt=A('<div class="mx-auto mt-55 w-full md:w-auto px-4">'),Xlt=A('<div class="text-14-regular text-text-weak">');function Qlt(){const e=Di(),t=Bk(),n=Mr(),r=fs(),i=ms(),s=ci(),o=wt(),a=I(()=>e().data.path.home),l=I(()=>i.servers.health[s.key]?.healthy===!1),c=I(()=>e().data.project.slice().sort((m,g)=>(g.time.updated??g.time.created)-(m.time.updated??m.time.created)).slice(0,5)),u=I(()=>{const m=i.servers.health[s.key]?.healthy;return m===!0?"bg-icon-success-base":m===!1?"bg-icon-critical-base":"bg-border-weak-base"});function d(m,g){const p=i.ensureServerCtx(m);p.projects.open(g),p.projects.touch(g),r(`/${yn(g)}`)}function f(){if(l())return;const m=s.current;if(!m)return;const g=p=>{if(Array.isArray(p)){p.forEach(y=>d(m,y));return}p&&d(m,p)};t({server:m,title:o.t("command.project.open"),multiple:!0,onSelect:g})}return(()=>{var m=Ylt();return S(m,h(uB,{class:"md:w-xl opacity-12"}),null),S(m,h(Kt,{size:"large",variant:"ghost",class:"mt-4 mx-auto text-14-regular text-text-weak",onClick:()=>n.show(()=>h(sie,{})),get children(){return[(()=>{var g=Wlt();return he(p=>ct(g,{"size-2 rounded-full":!0,[u()]:!0},p)),g})(),we(()=>s.name)]}}),null),S(m,h(Rr,{get children(){return[h(zt,{get when(){return e().data.project.length>0},get children(){var g=Klt(),p=g.firstChild,y=p.firstChild,v=p.nextSibling;return S(y,()=>o.t("home.recentProjects")),S(p,h(Kt,{icon:"folder-add-left",size:"normal",class:"pl-2 pr-3",get disabled(){return l()},onClick:f,get children(){return o.t("command.project.open")}}),null),S(v,h(Dt,{get each(){return c()},children:b=>h(Kt,{size:"large",variant:"ghost",class:"text-14-mono text-left justify-between px-3",onClick:()=>d(s.current,b.worktree),get children(){return[we(()=>b.worktree.replace(a(),"~")),(()=>{var w=Xlt();return S(w,()=>ln.fromMillis(b.time.updated??b.time.created).toRelative()),w})()]}})})),g}}),h(zt,{get when(){return!e().ready},get children(){var g=Glt(),p=g.firstChild;return S(p,()=>o.t("common.loading")),S(g,h(Kt,{class:"px-3",get disabled(){return l()},onClick:f,get children(){return o.t("command.project.open")}}),null),g}}),h(zt,{when:!0,get children(){var g=Zlt(),p=g.firstChild,y=p.firstChild,v=y.nextSibling;return S(g,h(Yt,{name:"folder-add-left",size:"large"}),p),S(y,()=>o.t("home.empty.title")),S(v,()=>o.t("home.empty.description")),S(g,h(Kt,{class:"px-3 mt-1",get disabled(){return l()},onClick:f,get children(){return o.t("command.project.open")}}),null),g}})]}}),null),m})()}var Jlt=A('<div class="fixed inset-0 z-[9999] flex flex-col items-center justify-center bg-background-base">'),ect=A('<div class="flex flex-col gap-2 w-full max-w-sm"><span class="text-12-regular text-text-base text-center"></span><div class="flex flex-col gap-1 bg-surface-base rounded-lg p-2">'),tct=A('<div class="h-dvh w-screen flex flex-col items-center justify-center bg-background-base gap-6 p-6"><div class="flex flex-col items-center max-w-md text-center"><p class="text-14-regular text-text-base"><span class="text-text-strong font-medium"></span></p><p class="mt-1 text-12-regular text-text-weak">'),nct=A('<button type=button class="flex items-center gap-3 w-full px-3 py-2 rounded-md hover:bg-surface-raised-base-hover transition-colors text-left"><span class="text-14-regular text-text-strong truncate">');const rct=Ux(()=>B(()=>import("./new-session-C0dB1gL5.js"),[])),ict=()=>{const e=ar(),t=Br(),[n]=Id(),r=kr(),i=ci(),s=ks();if(t.id&&e.general.newLayoutDesigns()){const o=t.id;return h(q,{get when(){return s.ready()},children:a=>{const l=s.store.filter(c=>c.type==="session");return h(Dv,{get href(){return Wf(MK(l,o,i.key),o)}})}})}return ae(()=>{e.general.newLayoutDesigns()&&(t.id||n.draftId||!s.ready()||!r().directory||s.newDraft({server:i.key,directory:r().directory},n.prompt))}),h(XI,{get sessionID(){return t.id},get children(){return h(eie,{})}})};function gie(e){const t=Br(),n=ms(),r=I(()=>{const i=ra(t.serverKey);return n.servers.list().find(s=>ut.key(s)===i)});return h(q,{get when(){return ra(t.serverKey)},keyed:!0,get children(){return h(sT,{server:r,get children(){return h(iT,{server:r,get children(){return e.children}})}})}})}const sct=()=>h(gie,{get children(){return h(Qot,{})}});function oct(){const e=Br();return h(gie,{get children(){return h(XI,{get sessionID(){return e.id},get serverKey(){return ra(e.serverKey)},get children(){return h(act,{})}})}})}function act(){const e=Br(),t=fs(),n=Di(),r=DJ(()=>e.id,()=>n().session.lineage);return ae(()=>{const i=r()?.session.directory;i&&t(Qw(i,e.id),{replace:!0})}),null}function pie(e){return h(xct,{get children(){return h(sT,{get children(){return h(iT,{get children(){return e.children}})}})}})}function lct(e){return h(pie,{get children(){return h(gct,{get serverScoped(){return e.serverScoped},get children(){return e.children}})}})}function cct(){const[e]=Id(),t=ar(),n=ks();return h(q,{get when(){return n.ready()},get children(){return h(q,{get when(){return n.store.find(r=>r.type==="draft"&&r.draftID===e.draftId)},keyed:!0,get fallback(){return h(Dv,{href:"/"})},children:r=>h(q,{get when(){return t.general.newLayoutDesigns()},get fallback(){return h(Dv,{get href(){return`/${yn(r.directory)}/session`}})},get children(){return h(uct,{draft:r})}})})}})}function uct(e){const t=ms(),n=I(()=>t.servers.list().find(s=>ut.key(s)===e.draft.server)),r=()=>e.draft.directory,i=()=>e.draft.server;return h(q,{get when(){return`${e.draft.server}\0${e.draft.directory}`},keyed:!0,get children(){return h(sT,{server:n,get children(){return h(iT,{server:n,get children(){return h(bT,{directory:r,get children(){return h(aT,{directory:r,get children(){return h(wT,{directory:r,server:i,get children(){return h(vct,{get children(){return h(rct,{})}})}})}})}})}})}})}})}function dct(e){const t=wt();return h(sae,{get value(){return{locale:t.intl,t:t.t}},get children(){return e.children}})}function vie(e){const t=new WB({defaultOptions:{queries:{refetchOnReconnect:!1,refetchOnMount:!1,refetchOnWindowFocus:!1}}});return h(rbe,{client:t,get children(){return e.children}})}function fct(){const e=ar();return he(()=>{if(typeof document>"u")return;const t=e.general.newLayoutDesigns();document.body.toggleAttribute("data-new-layout",t),document.body.classList.toggle("text-12-regular",!t),document.body.classList.toggle("font-(family-name:--font-family-text)",t),document.body.classList.toggle("text-[13px]",t),document.body.classList.toggle("font-[440]",t)}),null}function hct(e){return[h(fct,{}),h(Q3e,{get children(){return[h(mct,{}),h(HCe,{get children(){return e.children}})]}})]}function mct(){const e=Qi(),t=wt(),n=Tr();return e.register("desktop",()=>{const r=[];return n.platform==="desktop"&&n.exportDebugLogs&&r.push({id:"logs.export",title:"Export logs",category:t.t("command.category.settings"),onSelect:()=>{n.exportDebugLogs?.()}}),r}),null}function yie(e){return h(cCe,{get children(){return[we(()=>e.serverScoped),h(bT,{get directory(){return e.directory},get children(){return e.children}})]}})}function gct(e){return h(yie,{get directory(){return e.directory},get serverScoped(){return e.serverScoped},get children(){return h(LNe,{get children(){return e.children}})}})}function pct(e){return h(pie,{get children(){return h(yie,{get serverScoped(){return e.serverScoped},get children(){return h($Ne,{get children(){return e.children}})}})}})}function vct(e){return h(eG,{get children(){return h(dZ,{get children(){return h(qK,{get children(){return e.children}})}})}})}function yct(e){return h(Y1e,{get children(){return[h(v1e,{}),h(W1e,{onThemeApplied:(t,n,r)=>{window.api?.setTitlebar?.({mode:n,scheme:r})},get children(){return h(S3e,{get locale(){return e.locale},get children(){return h(dct,{get children(){return h(KC,{fallback:t=>(CV(t),h(GE,{error:t})),get children(){return h(vie,{get children(){return h(RTe,{get children(){return h(nae,{get children(){return h(rve,{get children(){return h(Use,{component:lB,get children(){return e.children}})}})}})}})}})}})}})}})}})]}})}function bct(e){const t=ci(),n=U4(),[r,i]=De("blocking"),[s,o]=ai(()=>e.disableHealthCheck?!0:Rxe(function*(){if(!t.current)return!0;const{http:d,type:f}=t.current;for(;;){if((yield*$xe(()=>n(d))).healthy)return!0;if(r()==="background"||f==="http")return!1}}).pipe(Nxe({duration:"10 seconds",orElse:()=>Co(!1)}),Vxe(Oxe(()=>i("background"))),zxe)),a=I(()=>r()==="blocking"&&["unresolved","pending"].includes(s.state)),[l]=ai(async()=>(e.startup&&await e.startup.catch(d=>{console.error("[startup] startup gate failed",d)}),!0)),c=I(()=>s.latest===!0&&["unresolved","pending"].includes(l.state)),u=I(()=>a()||c());return[h(q,{get when(){return!a()},get children(){return h(q,{get when(){return s.latest},get fallback(){return h(wct,{onRetry:()=>{r()==="background"&&o.refetch()},onServerSelected:d=>{i("blocking"),t.setActive(d),o.refetch()}})},get children(){return e.children}})}}),h(q,{get when(){return u()},get children(){var d=Jlt();return S(d,h(cB,{class:"w-16 h-20 opacity-50 animate-pulse"})),d}})]}function wct(e){const t=wt(),n=ci(),r=()=>n.list.filter(l=>ut.key(l)!==n.key),i=I(()=>n.name||n.key),s="\0server\0",o=I(()=>t.t("app.server.unreachable",{server:s}).split(s)),a=setInterval(()=>e.onRetry?.(),1e3);return Te(()=>clearInterval(a)),(()=>{var l=tct(),c=l.firstChild,u=c.firstChild,d=u.firstChild,f=u.nextSibling;return S(c,h(cB,{class:"w-12 h-15 mb-4"}),u),S(u,()=>o()[0],d),S(d,i),S(u,()=>o()[1],null),S(f,()=>t.t("app.server.retrying")),S(l,h(q,{get when(){return r().length>0},get children(){var m=ect(),g=m.firstChild,p=g.nextSibling;return S(g,()=>t.t("app.server.otherServers")),S(p,h(Dt,{get each(){return r()},children:y=>{const v=ut.key(y);return(()=>{var b=nct(),w=b.firstChild;return b.$$click=()=>e.onServerSelected?.(v),S(w,()=>hd(y)),b})()}})),m}}),null),l})()}function xct(e){const t=ci();return h(q,{get when(){return t.key},keyed:!0,get children(){return e.children}})}function kct(e){const t=n=>h(vie,{get children(){return h(hct,{get children(){return[we(()=>e.children),we(()=>n.children)]}})}});return h(KSe,{get defaultServer(){return e.defaultServer},get canonicalLocalServer(){return e.canonicalLocalServer},get servers(){return e.servers},get children(){return h(c8e,{get children(){return h(H3e,{get children(){return h(bct,{get disableHealthCheck(){return e.disableHealthCheck},get startup(){return e.startup},get children(){return h(q,{get when(){return ar().general.newLayoutDesigns().toString()},keyed:!0,get children(){return h(Gi,{get component(){return e.router??Tye},root:n=>h(tCe,{get children(){return h(LTe,{get children(){return h(CTe,{get children(){return h(t,{get children(){return h(q,{get when(){return ar().general.newLayoutDesigns()},get fallback(){return n.children},get children(){return h(pct,{get serverScoped(){return e.serverScoped},get children(){return n.children}})}})}})}})}})}}),get children(){return h(Sct,{get serverScoped(){return e.serverScoped}})}})}})}})}})}})}})}function Sct(e){const t=ar();return[h(Ml,{component:n=>h(lct,{get serverScoped(){return e.serverScoped},get children(){return n.children}}),get children(){return[h(q,{get when(){return!t.general.newLayoutDesigns()},get children(){return[h(Ml,{path:"/",component:Qlt}),h(Ml,{path:"/server/:serverKey/session/:id",component:oct})]}}),h(Ml,{path:"/:dir",component:GTe,get children(){return[h(Ml,{path:"/",component:()=>h(Dv,{href:"session"})}),h(Ml,{path:"/session/:id?",component:ict})]}})]}}),h(q,{get when(){return t.general.newLayoutDesigns()},get children(){return[h(Ml,{path:"/",component:Ult}),h(Ml,{path:"/:dir/session/:id",component:Cct}),h(Ml,{path:"/server/:serverKey/session/:id",component:sct})]}}),h(Ml,{path:"/new-session",component:cct})]}function Cct(){const e=ci(),t=ks(),n=Br();return h(q,{get when(){return t.ready()},get children(){return h(Dv,{get href(){return Wf(MK(t.store.filter(r=>r.type==="session"),n.id,e.key),n.id)}})}})}dn(["click"]);const _ct="1.18.7",Tct={version:_ct},bie="opencode.settings.dat:defaultServerUrl",Ect=e=>{if(typeof localStorage>"u")return null;try{return localStorage.getItem(e)}catch{return null}},Ict=(e,t)=>{if(!(typeof localStorage>"u"))try{if(t!==null){localStorage.setItem(e,t);return}localStorage.removeItem(e)}catch{return}},wie=()=>Ect(bie),Dct=e=>Ict(bie,e),Lct=async(e,t,n)=>{if(!("Notification"in window)||(Notification.permission==="default"?await Notification.requestPermission().catch(()=>"denied"):Notification.permission)!=="granted"||document.visibilityState==="visible"&&document.hasFocus())return;const s=new Notification(e,{body:t??"",icon:"/midsomar_logo.png"});s.onclick=()=>{gDe(n),s.close()}},Act=e=>{window.open(e,"_blank")},Mct=()=>{window.history.back()},$ct=()=>{window.history.forward()},Pct=async()=>{window.location.reload()},oV=document.getElementById("root"),xie=()=>location.hostname.includes("opencode.ai")?"http://localhost:4096":location.origin,Oct=()=>{const e=wie();return e||xie()},Rct=()=>{const e=new URLSearchParams(location.search);e.has("auth_token")&&(e.delete("auth_token"),history.replaceState(null,"",location.pathname+(e.size?`?${e}`:"")+location.hash))},Fct={platform:"web",version:Tct.version,openLink:Act,back:Mct,forward:$ct,restart:Pct,notify:Lct,getDefaultServer:async()=>{const e=wie();return e?ut.Key.make(e):null},setDefaultServer:Dct};if(oV instanceof HTMLElement){const e=HSe(new URLSearchParams(location.search).get("auth_token"));Rct();const t={type:"http",authToken:!!e,http:{url:xie(),...e}};GC(()=>h(Zke,{value:Fct,get children(){return h(yct,{get children(){return h(kct,{get defaultServer(){return ut.Key.make(Oct())},get canonicalLocalServer(){return ut.key(t)},servers:[t],disableHealthCheck:!0})}})}}),oV)}export{sT as $,rFe as A,Kt as B,Xt as C,v$ as D,Kx as E,jE as F,Io as G,GQ as H,Yt as I,QYe as J,VVe as K,a1 as L,zt as M,wg as N,yc as O,Hut as P,rbe as Q,o3 as R,_ut as S,aC as T,iVe as U,ut as V,aie as W,oie as X,rie as Y,pat as Z,edt as _,as as a,hc as a$,iT as a0,GPe as a1,q as a2,Fd as a3,YVe as a4,Rr as a5,hy as a6,rr as a7,Em as a8,m1 as a9,uy as aA,us as aB,uu as aC,I as aD,Zut as aE,bQe as aF,Jut as aG,he as aH,ai as aI,Nd as aJ,De as aK,Ze as aL,HZ as aM,nr as aN,Uut as aO,jTe as aP,Ns as aQ,dn as aR,_at as aS,Ll as aT,Tx as aU,Zre as aV,Y3e as aW,qW as aX,iC as aY,oCe as aZ,zTe as a_,Cf as aa,Dp as ab,Ar as ac,Qn as ad,ds as ae,B as af,mR as ag,We as ah,Gut as ai,cn as aj,Kut as ak,yn as al,qt as am,Nt as an,Jl as ao,ct as ap,xr as aq,hJ as ar,cs as as,put as at,h as au,bn as av,ERe as aw,ae as ax,qk as ay,qE as az,ou as b,li as b$,fn as b0,NE as b1,YK as b2,vKe as b3,kut as b4,fO as b5,S as b6,w1 as b7,Ux as b8,an as b9,HTe as bA,dut as bB,z3e as bC,mut as bD,hd as bE,me as bF,tn as bG,R6e as bH,Ee as bI,An as bJ,Zs as bK,A as bL,fut as bM,p$ as bN,gut as bO,Wt as bP,pt as bQ,Qi as bR,q1 as bS,Tot as bT,hn as bU,Mr as bV,ua as bW,th as bX,ma as bY,ms as bZ,wt as b_,we as ba,Mt as bb,le as bc,Cn as bd,uut as be,V3e as bf,hut as bg,Xut as bh,Yut as bi,J9 as bj,hh as bk,Te as bl,sn as bm,Yw as bn,rt as bo,_r as bp,But as bq,qut as br,jut as bs,_Re as bt,l1 as bu,d8 as bv,Uo as bw,Wut as bx,yt as by,VE as bz,gne as c,El as c0,vTe as c1,Yo as c2,fs as c3,Br as c4,mu as c5,Tr as c6,Hg as c7,JYe as c8,$d as c9,ch as ca,kr as cb,Id as cc,ci as cd,a3 as ce,Sut as cf,xs as cg,Di as ch,XJ as ci,ga as cj,ar as ck,wne as cl,Ji as cm,ks as cn,h9 as co,UOe as cp,Tut as cq,Gx as cr,hne as d,fne as e,$I as f,Lat as g,mne as h,KZe as i,pne as j,Eat as k,at as l,jk as m,Dr as n,Dt as o,ly as p,Od as q,Rd as r,cy as s,on as t,Ln as u,Lr as v,Eo as w,Tt as x,bT as y,Jn as z};
|
|
1194
1194
|
//# sourceMappingURL=index-BfNxi3ev.js.map
|