my-durable 0.0.36 → 0.0.37
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/apps/dpi-playground/apps/dpi-playground-fe/dist/assets/index-BrDwRiiN.css +1 -0
- package/apps/dpi-playground/apps/dpi-playground-fe/dist/assets/index-DdEAB2rE.js +81 -0
- package/apps/dpi-playground/apps/dpi-playground-fe/dist/index.html +2 -2
- package/apps/dpi-playground/apps/dpi-playground-fe/src/client/store.ts +12 -0
- package/apps/dpi-playground/apps/dpi-playground-fe/src/components/Composer.vue +74 -1
- package/apps/dpi-playground/apps/dpi-playground-fe/src/components/Inspector.vue +37 -1
- package/apps/dpi-playground/apps/dpi-playground-fe/src/components/NetworkSidebar.vue +65 -1
- package/apps/dpi-playground/apps/dpi-playground-fe/src/components/NewSessionDialog.vue +41 -0
- package/apps/dpi-playground/apps/dpi-playground-fe/src/components/TopBar.vue +68 -1
- package/apps/dpi-playground/apps/dpi-playground-fe/src/components/TreeRow.vue +17 -1
- package/docs/host-project-checklist.md +214 -0
- package/package.json +1 -1
- package/apps/dpi-playground/apps/dpi-playground-fe/dist/assets/index-BxJGBCW9.css +0 -1
- package/apps/dpi-playground/apps/dpi-playground-fe/dist/assets/index-DKJspajj.js +0 -81
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r};(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();function n(e){let t=Object.create(null);for(let n of e.split(`,`))t[n]=1;return e=>e in t}var r={},i=[],a=()=>{},o=()=>!1,s=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),c=e=>e.startsWith(`onUpdate:`),l=Object.assign,u=(e,t)=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)},d=Object.prototype.hasOwnProperty,f=(e,t)=>d.call(e,t),p=Array.isArray,m=e=>S(e)===`[object Map]`,h=e=>S(e)===`[object Set]`,g=e=>S(e)===`[object Date]`,_=e=>typeof e==`function`,v=e=>typeof e==`string`,y=e=>typeof e==`symbol`,b=e=>typeof e==`object`&&!!e,ee=e=>(b(e)||_(e))&&_(e.then)&&_(e.catch),x=Object.prototype.toString,S=e=>x.call(e),te=e=>S(e).slice(8,-1),ne=e=>S(e)===`[object Object]`,C=e=>v(e)&&e!==`NaN`&&e[0]!==`-`&&``+parseInt(e,10)===e,re=n(`,key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted`),ie=e=>{let t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},ae=/-\w/g,oe=ie(e=>e.replace(ae,e=>e.slice(1).toUpperCase())),se=/\B([A-Z])/g,ce=ie(e=>e.replace(se,`-$1`).toLowerCase()),le=ie(e=>e.charAt(0).toUpperCase()+e.slice(1)),ue=ie(e=>e?`on${le(e)}`:``),w=(e,t)=>!Object.is(e,t),de=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},fe=(e,t,n,r=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},pe=e=>{let t=parseFloat(e);return isNaN(t)?e:t},me=e=>{let t=v(e)?Number(e):NaN;return isNaN(t)?e:t},he,ge=()=>he||=typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{};function _e(e){if(p(e)){let t={};for(let n=0;n<e.length;n++){let r=e[n],i=v(r)?xe(r):_e(r);if(i)for(let e in i)t[e]=i[e]}return t}if(v(e)||b(e))return e}var ve=/;(?![^(]*\))/g,ye=/:([^]+)/,be=/"(?:[^"\\]|\\[^])*"|'(?:[^'\\]|\\[^])*'|\\[^]|\/\*[^]*?\*\//g;function xe(e){let t={};return e.replace(be,e=>e.startsWith(`/*`)?``:e).split(ve).forEach(e=>{if(e){let n=e.split(ye);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function T(e){let t=``;if(v(e))t=e;else if(p(e))for(let n=0;n<e.length;n++){let r=T(e[n]);r&&(t+=r+` `)}else if(b(e))for(let n in e)e[n]&&(t+=n+` `);return t.trim()}var Se=`itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`,Ce=n(Se);Se+``;function we(e){return!!e||e===``}function Te(e,t,n){if(e.length!==t.length)return!1;let r=!0;for(let i=0;r&&i<e.length;i++)r=ke(e[i],t[i],n);return r}function Ee(e,t,n){if(e.size!==t.size)return!1;let r=Array.from(t),i=new Uint8Array(r.length);for(let t of e){let e=-1;for(let a=0;a<r.length;a++)if(!i[a]&&ke(t,r[a],n)){e=a;break}if(e<0)return!1;i[e]=1}return!0}function De(e,t,n){let r=m(e),i=m(t);if(r||i||(r=h(e),i=h(t),r||i))return r&&i?Ee(e,t,n):!1;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let r in e){let i=e.hasOwnProperty(r),a=t.hasOwnProperty(r);if(i&&!a||!i&&a||!ke(e[r],t[r],n))return!1}return String(e)===String(t)}function Oe(e,t,n,r){n||=[new Map,new Map];let[i,a]=n;if(i.has(e)||a.has(t))return i.get(e)===t&&a.get(t)===e;i.set(e,t),a.set(t,e);let o=r(e,t,n);return i.delete(e),a.delete(t),o}function ke(e,t,n){if(e===t)return!0;let r=g(e),i=g(t);return r||i?r&&i?e.getTime()===t.getTime():!1:(r=y(e),i=y(t),r||i?e===t:(r=p(e),i=p(t),r||i?r&&i?Oe(e,t,n,Te):!1:(r=b(e),i=b(t),r||i?!r||!i?!1:Oe(e,t,n,De):String(e)===String(t))))}function Ae(e,t){return e.findIndex(e=>ke(e,t))}var je=e=>!!(e&&e.__v_isRef===!0),E=e=>v(e)?e:e==null?``:p(e)||b(e)&&(e.toString===x||!_(e.toString))?je(e)?E(e.value):JSON.stringify(e,Me,2):String(e),Me=(e,t)=>je(t)?Me(e,t.value):m(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((e,[t,n],r)=>(e[Ne(t,r)+` =>`]=n,e),{})}:h(t)?{[`Set(${t.size})`]:[...t.values()].map(e=>Ne(e))}:y(t)?Ne(t):b(t)&&!p(t)&&!ne(t)?String(t):t,Ne=(e,t=``)=>y(e)?`Symbol(${e.description??t})`:e,Pe,Fe=class{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!e&&Pe&&(Pe.active?(this.parent=Pe,this.index=(Pe.scopes||(Pe.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,t;if(this.scopes){let n=this.scopes.slice();for(e=0,t=n.length;e<t;e++)n[e].pause()}for(e=0,t=this.effects.length;e<t;e++)this.effects[e].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let e,t;if(this.scopes){let n=this.scopes.slice();for(e=0,t=n.length;e<t;e++)n[e].resume()}let n=this.effects.slice();for(e=0,t=n.length;e<t;e++)n[e].resume()}}run(e){if(this._active){let t=Pe;try{return Pe=this,e()}finally{Pe=t}}}on(){++this._on===1&&(this.prevScope=Pe,Pe=this)}off(){if(this._on>0&&--this._on===0){if(Pe===this)Pe=this.prevScope;else{let e=Pe;for(;e;){if(e.prevScope===this){e.prevScope=this.prevScope;break}e=e.prevScope}}this.prevScope=void 0}}stop(e){if(this._active){this._active=!1;let t,n;for(t=0,n=this.effects.length;t<n;t++)this.effects[t].stop();for(this.effects.length=0,t=0,n=this.cleanups.length;t<n;t++)this.cleanups[t]();if(this.cleanups.length=0,this.scopes){let e=this.scopes.slice();for(t=0,n=e.length;t<n;t++)e[t].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!e){let e=this.parent.scopes.pop();e&&e!==this&&(this.parent.scopes[this.index]=e,e.index=this.index)}this.parent=void 0}}};function Ie(){return Pe}var D,Le=new WeakSet,Re=class{constructor(e){this.fn=e,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,Pe&&(Pe.active?Pe.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Le.has(this)&&(Le.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||He(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,tt(this),Ge(this);let e=D,t=Ze;D=this,Ze=!0;try{return this.fn()}finally{Ke(this),D=e,Ze=t,this.flags&=-3}}stop(){if(this.flags&1){for(let e=this.deps;e;e=e.nextDep)Ye(e);this.deps=this.depsTail=void 0,tt(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Le.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){qe(this)&&this.run()}get dirty(){return qe(this)}},ze=0,Be,Ve;function He(e,t=!1){if(e.flags|=8,t){e.next=Ve,Ve=e;return}e.next=Be,Be=e}function Ue(){ze++}function We(){if(--ze>0)return;if(Ve){let e=Ve;for(Ve=void 0;e;){let t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;Be;){let t=Be;for(Be=void 0;t;){let n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(t){e||=t}t=n}}if(e)throw e}function Ge(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ke(e){let t,n=e.depsTail,r=n;for(;r;){let e=r.prevDep;r.version===-1?(r===n&&(n=e),Ye(r),Xe(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function qe(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Je(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Je(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===nt)||(e.globalVersion=nt,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!qe(e))))return;e.flags|=2;let t=e.dep,n=D,r=Ze;D=e,Ze=!0;try{Ge(e);let n=e.fn(e._value);(t.version===0||w(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(e){throw t.version++,e}finally{D=n,Ze=r,Ke(e),e.flags&=-3}}function Ye(e,t=!1){let{dep:n,prevSub:r,nextSub:i}=e;if(r&&(r.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)Ye(e,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Xe(e){let{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}var Ze=!0,Qe=[];function $e(){Qe.push(Ze),Ze=!1}function et(){let e=Qe.pop();Ze=e===void 0||e}function tt(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let e=D;D=void 0;try{t()}finally{D=e}}}var nt=0,rt=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},it=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(e){if(!D||!Ze||D===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==D)t=this.activeLink=new rt(D,this),D.deps?(t.prevDep=D.depsTail,D.depsTail.nextDep=t,D.depsTail=t):D.deps=D.depsTail=t,at(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=D.depsTail,t.nextDep=void 0,D.depsTail.nextDep=t,D.depsTail=t,D.deps===t&&(D.deps=e)}return t}trigger(e){this.version++,nt++,this.notify(e)}notify(e){Ue();try{for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{We()}}};function at(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)at(e)}let n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}var ot=new WeakMap,st=Symbol(``),ct=Symbol(``),lt=Symbol(``);function ut(e,t,n){if(Ze&&D){let t=ot.get(e);t||ot.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new it),r.map=t,r.key=n),r.track()}}function dt(e,t,n,r,i,a){let o=ot.get(e);if(!o){nt++;return}let s=e=>{e&&e.trigger()};if(Ue(),t===`clear`)o.forEach(s);else{let i=p(e),a=i&&C(n);if(i&&n===`length`){let e=Number(r);o.forEach((t,n)=>{(n===`length`||n===lt||!y(n)&&n>=e)&&s(t)})}else switch((n!==void 0||o.has(void 0))&&s(o.get(n)),a&&s(o.get(lt)),t){case`add`:i?a&&s(o.get(`length`)):(s(o.get(st)),m(e)&&s(o.get(ct)));break;case`delete`:i||(s(o.get(st)),m(e)&&s(o.get(ct)));break;case`set`:m(e)&&s(o.get(st))}}We()}function ft(e){let t=$t(e);return t===e||(ut(t,`iterate`,lt),Zt(e))?t:Xt(e)?Yt(e)?t.map(e=>nn(tn(e))):t.map(nn):t.map(tn)}function pt(e){return ut(e=$t(e),`iterate`,lt),e}function mt(e,t){return Xt(e)?nn(Yt(e)?tn(t):t):tn(t)}var ht={__proto__:null,[Symbol.iterator](){return gt(this,Symbol.iterator,e=>mt(this,e))},concat(...e){return ft(this).concat(...e.map(e=>p(e)?ft(e):e))},entries(){return gt(this,`entries`,e=>(e[1]=mt(this,e[1]),e))},every(e,t){return vt(this,`every`,e,t,void 0,arguments)},filter(e,t){return vt(this,`filter`,e,t,e=>e.map(e=>mt(this,e)),arguments)},find(e,t){return vt(this,`find`,e,t,e=>mt(this,e),arguments)},findIndex(e,t){return vt(this,`findIndex`,e,t,void 0,arguments)},findLast(e,t){return vt(this,`findLast`,e,t,e=>mt(this,e),arguments)},findLastIndex(e,t){return vt(this,`findLastIndex`,e,t,void 0,arguments)},forEach(e,t){return vt(this,`forEach`,e,t,void 0,arguments)},includes(...e){return bt(this,`includes`,e)},indexOf(...e){return bt(this,`indexOf`,e)},join(e){return ft(this).join(e)},lastIndexOf(...e){return bt(this,`lastIndexOf`,e)},map(e,t){return vt(this,`map`,e,t,void 0,arguments)},pop(){return xt(this,`pop`)},push(...e){return xt(this,`push`,e)},reduce(e,...t){return yt(this,`reduce`,e,t)},reduceRight(e,...t){return yt(this,`reduceRight`,e,t)},shift(){return xt(this,`shift`)},some(e,t){return vt(this,`some`,e,t,void 0,arguments)},splice(...e){return xt(this,`splice`,e)},toReversed(){return ft(this).toReversed()},toSorted(e){return ft(this).toSorted(e)},toSpliced(...e){return ft(this).toSpliced(...e)},unshift(...e){return xt(this,`unshift`,e)},values(){return gt(this,`values`,e=>mt(this,e))}};function gt(e,t,n){let r=pt(e),i=r[t]();return r!==e&&!Zt(e)&&(i._next=i.next,i.next=()=>{let e=i._next();return e.done||(e.value=n(e.value)),e}),i}var _t=Array.prototype;function vt(e,t,n,r,i,a){let o=pt(e),s=o!==e&&!Zt(e),c=o[t];if(c!==_t[t]){let t=c.apply(e,a);return s?tn(t):t}let l=n;o!==e&&(s?l=function(t,r){return n.call(this,mt(e,t),r,e)}:n.length>2&&(l=function(t,r){return n.call(this,t,r,e)}));let u=c.call(o,l,r);return s&&i?i(u):u}function yt(e,t,n,r){let i=pt(e),a=i!==e&&!Zt(e),o=n,s=!1;i!==e&&(a?(s=r.length===0,o=function(t,r,i){return s&&(s=!1,t=mt(e,t)),n.call(this,t,mt(e,r),i,e)}):n.length>3&&(o=function(t,r,i){return n.call(this,t,r,i,e)}));let c=i[t](o,...r);return s?mt(e,c):c}function bt(e,t,n){let r=$t(e);ut(r,`iterate`,lt);let i=r[t](...n);return(i===-1||i===!1)&&Qt(n[0])?(n[0]=$t(n[0]),r[t](...n)):i}function xt(e,t,n=[]){$e(),Ue();let r=$t(e)[t].apply(e,n);return We(),et(),r}var St=n(`__proto__,__v_isRef,__isVue`),Ct=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!==`arguments`&&e!==`caller`).map(e=>Symbol[e]).filter(y));function wt(e){y(e)||(e=String(e));let t=$t(this);return ut(t,`has`,e),t.hasOwnProperty(e)}var Tt=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if(t===`__v_skip`)return e.__v_skip;let r=this._isReadonly,i=this._isShallow;if(t===`__v_isReactive`)return!r;if(t===`__v_isReadonly`)return r;if(t===`__v_isShallow`)return i;if(t===`__v_raw`)return n===(r?i?Ut:Ht:i?Vt:Bt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;let a=p(e);if(!r){let e;if(a&&(e=ht[t]))return e;if(t===`hasOwnProperty`)return wt}let o=Reflect.get(e,t,rn(e)?e:n);if((y(t)?Ct.has(t):St(t))||(r||ut(e,`get`,t),i))return o;if(rn(o)){let e=a&&C(t)?o:o.value;return r&&b(e)?qt(e):e}return b(o)?r?qt(o):Gt(o):o}},Et=class extends Tt{constructor(e=!1){super(!1,e)}set(e,t,n,r){let i=e[t],a=p(e)&&C(t);if(!this._isShallow){let e=Xt(i);if(!Zt(n)&&!Xt(n)&&(i=$t(i),n=$t(n)),!a&&rn(i)&&!rn(n))return e||(i.value=n),!0}let o=a?Number(t)<e.length:f(e,t),s=Reflect.set(e,t,n,rn(e)?e:r);return e===$t(r)&&s&&(o?w(n,i)&&dt(e,`set`,t,n,i):dt(e,`add`,t,n)),s}deleteProperty(e,t){let n=f(e,t),r=e[t],i=Reflect.deleteProperty(e,t);return i&&n&&dt(e,`delete`,t,void 0,r),i}has(e,t){let n=Reflect.has(e,t);return(!y(t)||!Ct.has(t))&&ut(e,`has`,t),n}ownKeys(e){return ut(e,`iterate`,p(e)?`length`:st),Reflect.ownKeys(e)}},Dt=class extends Tt{constructor(e=!1){super(!0,e)}set(e,t){return!0}deleteProperty(e,t){return!0}},Ot=new Et,kt=new Dt,At=new Et(!0),jt=e=>e,Mt=e=>Reflect.getPrototypeOf(e);function Nt(e,t,n){return function(...r){let i=this.__v_raw,a=$t(i),o=m(a),s=e===`entries`||e===Symbol.iterator&&o,c=e===`keys`&&o,u=i[e](...r),d=n?jt:t?nn:tn;return!t&&ut(a,`iterate`,c?ct:st),l(Object.create(u),{next(){let{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:s?[d(e[0]),d(e[1])]:d(e),done:t}}})}}function Pt(e){return function(...t){return e===`delete`?!1:e===`clear`?void 0:this}}function Ft(e,t){let n={get(n){let r=this.__v_raw,i=$t(r),a=$t(n);e||(w(n,a)&&ut(i,`get`,n),ut(i,`get`,a));let{has:o}=Mt(i),s=t?jt:e?nn:tn;if(o.call(i,n))return s(r.get(n));if(o.call(i,a))return s(r.get(a));r!==i&&r.get(n)},get size(){let t=this.__v_raw;return!e&&ut($t(t),`iterate`,st),t.size},has(t){let n=this.__v_raw,r=$t(n),i=$t(t);return e||(w(t,i)&&ut(r,`has`,t),ut(r,`has`,i)),t===i?n.has(t):n.has(t)||n.has(i)},forEach(n,r){let i=this,a=i.__v_raw,o=$t(a),s=t?jt:e?nn:tn;return!e&&ut(o,`iterate`,st),a.forEach((e,t)=>n.call(r,s(e),s(t),i))}};return l(n,e?{add:Pt(`add`),set:Pt(`set`),delete:Pt(`delete`),clear:Pt(`clear`)}:{add(e){let n=$t(this),r=Mt(n),i=$t(e),a=!t&&!Zt(e)&&!Xt(e)?i:e;return r.has.call(n,a)||w(e,a)&&r.has.call(n,e)||w(i,a)&&r.has.call(n,i)||(n.add(a),dt(n,`add`,a,a)),this},set(e,n){!t&&!Zt(n)&&!Xt(n)&&(n=$t(n));let r=$t(this),{has:i,get:a}=Mt(r),o=i.call(r,e);o||=(e=$t(e),i.call(r,e));let s=a.call(r,e);return r.set(e,n),o?w(n,s)&&dt(r,`set`,e,n,s):dt(r,`add`,e,n),this},delete(e){let t=$t(this),{has:n,get:r}=Mt(t),i=n.call(t,e);i||=(e=$t(e),n.call(t,e));let a=r?r.call(t,e):void 0,o=t.delete(e);return i&&dt(t,`delete`,e,void 0,a),o},clear(){let e=$t(this),t=e.size!==0,n=e.clear();return t&&dt(e,`clear`,void 0,void 0,void 0),n}}),[`keys`,`values`,`entries`,Symbol.iterator].forEach(r=>{n[r]=Nt(r,e,t)}),n}function It(e,t){let n=Ft(e,t);return(t,r,i)=>r===`__v_isReactive`?!e:r===`__v_isReadonly`?e:r===`__v_raw`?t:Reflect.get(f(n,r)&&r in t?n:t,r,i)}var Lt={get:It(!1,!1)},Rt={get:It(!1,!0)},zt={get:It(!0,!1)},Bt=new WeakMap,Vt=new WeakMap,Ht=new WeakMap,Ut=new WeakMap;function Wt(e){switch(e){case`Object`:case`Array`:return 1;case`Map`:case`Set`:case`WeakMap`:case`WeakSet`:return 2;default:return 0}}function Gt(e){return Xt(e)?e:Jt(e,!1,Ot,Lt,Bt)}function Kt(e){return Jt(e,!1,At,Rt,Vt)}function qt(e){return Jt(e,!0,kt,zt,Ht)}function Jt(e,t,n,r,i){if(!b(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let a=i.get(e);if(a)return a;let o=Wt(te(e));if(o===0)return e;let s=new Proxy(e,o===2?r:n);return i.set(e,s),s}function Yt(e){return Xt(e)?Yt(e.__v_raw):!!(e&&e.__v_isReactive)}function Xt(e){return!!(e&&e.__v_isReadonly)}function Zt(e){return!!(e&&e.__v_isShallow)}function Qt(e){return e?!!e.__v_raw:!1}function $t(e){let t=e&&e.__v_raw;return t?$t(t):e}function en(e){return!f(e,`__v_skip`)&&Object.isExtensible(e)&&fe(e,`__v_skip`,!0),e}var tn=e=>b(e)?Gt(e):e,nn=e=>b(e)?qt(e):e;function rn(e){return e?e.__v_isRef===!0:!1}function O(e){return on(e,!1)}function an(e){return on(e,!0)}function on(e,t){return rn(e)?e:new sn(e,t)}var sn=class{constructor(e,t){this.dep=new it,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:$t(e),this._value=t?e:tn(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){let t=this._rawValue,n=this.__v_isShallow||Zt(e)||Xt(e);e=n?e:$t(e),w(e,t)&&(this._rawValue=e,this._value=n?e:tn(e),this.dep.trigger())}};function k(e){return rn(e)?e.value:e}var cn={get:(e,t,n)=>t===`__v_raw`?e:k(Reflect.get(e,t,n)),set:(e,t,n,r)=>{let i=e[t];return rn(i)&&!rn(n)?(i.value=n,!0):Reflect.set(e,t,n,r)}};function ln(e){return Yt(e)?e:new Proxy(e,cn)}var un=class{constructor(e){this.__v_isRef=!0,this._value=void 0;let t=this.dep=new it,{get:n,set:r}=e(t.track.bind(t),t.trigger.bind(t));this._get=n,this._set=r}get value(){return this._value=this._get()}set value(e){this._set(e)}};function dn(e){return new un(e)}var fn=class{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new it(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=nt-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&D!==this)return He(this,!0),!0}get value(){let e=this.dep.track();return Je(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}};function pn(e,t,n=!1){let r,i;return _(e)?r=e:(r=e.get,i=e.set),new fn(r,i,n)}var mn={},hn=new WeakMap,gn=void 0;function _n(e,t=!1,n=gn){if(n){let t=hn.get(n);t||hn.set(n,t=[]),t.push(e)}}function vn(e,t,n=r){let{immediate:i,deep:o,once:s,scheduler:c,augmentJob:l,call:d}=n,f=e=>o?e:Zt(e)||o===!1||o===0?yn(e,1):yn(e),m,h,g,v,y=!1,b=!1;if(rn(e)?(h=()=>e.value,y=Zt(e)):Yt(e)?(h=()=>f(e),y=!0):p(e)?(b=!0,y=e.some(e=>Yt(e)||Zt(e)),h=()=>e.map(e=>{if(rn(e))return e.value;if(Yt(e))return f(e);if(_(e))return d?d(e,2):e()})):h=_(e)?t?d?()=>d(e,2):e:()=>{if(g){$e();try{g()}finally{et()}}let t=gn;gn=m;try{return d?d(e,3,[v]):e(v)}finally{gn=t}}:a,t&&o){let e=h,t=o===!0?1/0:o;h=()=>yn(e(),t)}let ee=Ie(),x=()=>{m.stop(),ee&&ee.active&&u(ee.effects,m)};if(s&&t){let e=t;t=(...t)=>{let n=e(...t);return x(),n}}let S=b?Array(e.length).fill(mn):mn,te=e=>{if(m.flags&1&&(m.dirty||e)){if(t){let n=m.run();if(e||o||y||(b?n.some((e,t)=>w(e,S[t])):w(n,S))){g&&g();let e=gn;gn=m;try{let e=[n,S===mn?void 0:b&&S[0]===mn?[]:S,v];S=n,d?d(t,3,e):t(...e)}finally{gn=e}}}else m.run()}};return l&&l(te),m=new Re(h),m.scheduler=c?()=>c(te,!1):te,v=e=>_n(e,!1,m),g=m.onStop=()=>{let e=hn.get(m);if(e){if(d)d(e,4);else for(let t of e)t();hn.delete(m)}},t?i?te(!0):S=m.run():c?c(te.bind(null,!0),!0):m.run(),x.pause=m.pause.bind(m),x.resume=m.resume.bind(m),x.stop=x,x}function yn(e,t=1/0,n){if(t<=0||!b(e)||e.__v_skip||(n||=new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,rn(e))yn(e.value,t,n);else if(p(e))for(let r=0;r<e.length;r++)yn(e[r],t,n);else if(h(e)||m(e))e.forEach(e=>{yn(e,t,n)});else if(ne(e)){for(let r in e)yn(e[r],t,n);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&yn(e[r],t,n)}return e}function bn(e,t,n,r){try{return r?e(...r):e()}catch(e){Sn(e,t,n)}}function xn(e,t,n,r){if(_(e)){let i=bn(e,t,n,r);return i&&ee(i)&&i.catch(e=>{Sn(e,t,n)}),i}if(p(e)){let i=[];for(let a=0;a<e.length;a++)i.push(xn(e[a],t,n,r));return i}}function Sn(e,t,n,i=!0){let a=t?t.vnode:null,{errorHandler:o,throwUnhandledErrorInProduction:s}=t&&t.appContext.config||r;if(t){let r=t.parent,i=t.proxy,a=`https://vuejs.org/error-reference/#runtime-${n}`;for(;r;){let t=r.ec;if(t){for(let n=0;n<t.length;n++)if(t[n](e,i,a)===!1)return}r=r.parent}if(o){$e(),bn(o,null,10,[e,i,a]),et();return}}Cn(e,n,a,i,s)}function Cn(e,t,n,r=!0,i=!1){if(i)throw e;console.error(e)}var wn=[],Tn=-1,En=[],Dn=null,On=0,kn=Promise.resolve(),An=null;function jn(e){let t=An||kn;return e?t.then(this?e.bind(this):e):t}function Mn(e){let t=Tn+1,n=wn.length;for(;t<n;){let r=t+n>>>1,i=wn[r],a=Rn(i);a<e||a===e&&i.flags&2?t=r+1:n=r}return t}function Nn(e){if(!(e.flags&1)){let t=Rn(e),n=wn[wn.length-1];!n||!(e.flags&2)&&t>=Rn(n)?wn.push(e):wn.splice(Mn(t),0,e),e.flags|=1,Pn()}}function Pn(){An||=kn.then(zn)}function Fn(e){if(!p(e))Dn&&e.id===-1?Dn.splice(On+1,0,e):e.flags&1||(En.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)En.push(e[t]);Pn()}function In(e,t,n=Tn+1){for(;n<wn.length;n++){let t=wn[n];if(t&&t.flags&2){if(e&&t.id!==e.uid)continue;wn.splice(n,1),n--,t.flags&4&&(t.flags&=-2),t(),t.flags&4||(t.flags&=-2)}}}function Ln(e){if(En.length){let e=[...new Set(En)].sort((e,t)=>Rn(e)-Rn(t));if(En.length=0,Dn){for(let t=0;t<e.length;t++)Dn.push(e[t]);return}for(Dn=e,On=0;On<Dn.length;On++){let e=Dn[On];e.flags&4&&(e.flags&=-2),e.flags&8||e(),e.flags&=-2}Dn=null,On=0}}var Rn=e=>e.id==null?e.flags&2?-1:1/0:e.id;function zn(e){try{for(Tn=0;Tn<wn.length;Tn++){let e=wn[Tn];e&&!(e.flags&8)&&(e.flags&4&&(e.flags&=-2),bn(e,e.i,e.i?15:14),e.flags&4||(e.flags&=-2))}}finally{for(;Tn<wn.length;Tn++){let e=wn[Tn];e&&(e.flags&=-2)}Tn=-1,wn.length=0,Ln(e),An=null,(wn.length||En.length)&&zn(e)}}var Bn=null,Vn=null;function Hn(e){let t=Bn;return Bn=e,Vn=e&&e.type.__scopeId||null,t}function Un(e,t=Bn,n){if(!t||e._n)return e;let r=(...n)=>{r._d&&Da(-1);let i=Hn(t),a=Ca.length,o;try{o=e(...n)}finally{for(let e=Ca.length;e>a;e--)Ta();Hn(i),r._d&&Da(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function Wn(e,t){if(Bn===null)return e;let n=io(Bn),i=e.dirs||=[];for(let e=0;e<t.length;e++){let[a,o,s,c=r]=t[e];a&&(_(a)&&(a={mounted:a,updated:a}),a.deep&&yn(o),i.push({dir:a,instance:n,value:o,oldValue:void 0,arg:s,modifiers:c}))}return e}function Gn(e,t,n,r){let i=e.dirs,a=t&&t.dirs;for(let o=0;o<i.length;o++){let s=i[o];a&&(s.oldValue=a[o].value);let c=s.dir[r];c&&($e(),xn(c,n,8,[e.el,s,e,t]),et())}}function Kn(e,t){if(Wa){let n=Wa.provides,r=Wa.parent&&Wa.parent.provides;r===n&&(n=Wa.provides=Object.create(r)),n[e]=t}}function qn(e,t,n=!1){let r=Ga();if(r||ki){let i=ki?ki._context.provides:r?r.parent==null||r.ce?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:void 0;if(i&&e in i)return i[e];if(arguments.length>1)return n&&_(t)?t.call(r&&r.proxy):t}}var Jn=Symbol.for(`v-scx`),Yn=()=>qn(Jn);function Xn(e,t){return Zn(e,null,{flush:`sync`})}function A(e,t,n){return Zn(e,t,n)}function Zn(e,t,n=r){let{immediate:i,deep:o,flush:s,once:c}=n,u=l({},n),d=t&&i||!t&&s!==`post`,f;if(Za){if(s===`sync`){let e=Yn();f=e.__watcherHandles||=[]}else if(!d){let e=()=>{};return e.stop=a,e.resume=a,e.pause=a,e}}let p=Wa;u.call=(e,t,n)=>xn(e,p,t,n);let m=!1;s===`post`?u.scheduler=e=>{sa(e,p&&p.suspense)}:s!==`sync`&&(m=!0,u.scheduler=(e,t)=>{t?e():Nn(e)}),u.augmentJob=e=>{t&&(e.flags|=4),m&&(e.flags|=2,p&&(e.id=p.uid,e.i=p))};let h=vn(e,t,u);return Za&&(f?f.push(h):d&&h()),h}function Qn(e,t,n){let r=this.proxy,i=v(e)?e.includes(`.`)?$n(r,e):()=>r[e]:e.bind(r,r),a;_(t)?a=t:(a=t.handler,n=t);let o=Ja(this),s=Zn(i,a.bind(r),n);return o(),s}function $n(e,t){let n=t.split(`.`);return()=>{let t=e;for(let e=0;e<n.length&&t;e++)t=t[n[e]];return t}}var er=new WeakMap,tr=Symbol(`_vte`),nr=e=>e.__isTeleport,rr=e=>e&&(e.disabled||e.disabled===``),ir=e=>e&&(e.defer||e.defer===``),ar=e=>typeof SVGElement<`u`&&e instanceof SVGElement,or=e=>typeof MathMLElement==`function`&&e instanceof MathMLElement,sr=(e,t)=>{let n=e&&e.to;return v(n)?t?t(n):null:n},cr={name:`Teleport`,__isTeleport:!0,process(e,t,n,r,i,a,o,s,c,l){let{mc:u,pc:d,pbc:f,o:{insert:p,querySelector:m,createText:h,createComment:g,parentNode:_}}=l,v=rr(t.props),{dynamicChildren:y}=t,b=(e,t,n)=>{e.shapeFlag&16&&u(e.children,t,n,i,a,o,s,c)},ee=(e=t)=>{let n=rr(e.props),r=e.target=sr(e.props,m),a=pr(r,e,h,p);r&&(o!==`svg`&&ar(r)?o=`svg`:o!==`mathml`&&or(r)&&(o=`mathml`),i&&i.isCE&&(i.ce._teleportTargets||(i.ce._teleportTargets=new Set)).add(r),n||(b(e,r,a),fr(e,!1)))},x=e=>{let t=()=>{if(er.get(e)===t){if(er.delete(e),rr(e.props)){let t=_(e.el)||n;b(e,t,e.anchor),fr(e,!0)}ee(e)}};er.set(e,t),sa(t,a)};if(e==null){let e=t.el=h(``),i=t.anchor=h(``);if(p(e,n,r),p(i,n,r),ir(t.props)||a&&a.pendingBranch){x(t);return}v&&(b(t,n,i),fr(t,!0)),ee()}else{t.el=e.el;let r=t.anchor=e.anchor,u=er.get(e);if(u){u.flags|=8,er.delete(e),x(t);return}t.targetStart=e.targetStart;let p=t.target=e.target,h=t.targetAnchor=e.targetAnchor,g=rr(e.props),_=g?n:p,b=g?r:h;if(o===`svg`||ar(p)?o=`svg`:(o===`mathml`||or(p))&&(o=`mathml`),y?(f(e.dynamicChildren,y,_,i,a,o,s),pa(e,t,!0)):c||d(e,t,_,b,i,a,o,s,!1),v)g?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):lr(t,n,r,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){let e=sr(t.props,m);e&&(t.target=e,lr(t,e,null,l,0))}else g&&lr(t,p,h,l,1);fr(t,v)}},remove(e,t,n,{um:r,o:{remove:i}},a){let{shapeFlag:o,children:s,anchor:c,targetStart:l,targetAnchor:u,target:d,props:f}=e,p=rr(f),m=a||!p,h=er.get(e);if(h&&(h.flags|=8,er.delete(e)),d&&(i(l),i(u)),a&&i(c),!h&&(p||d)&&o&16)for(let e=0;e<s.length;e++){let i=s[e];r(i,t,n,m,!!i.dynamicChildren)}},move:lr,hydrate:ur};function lr(e,t,n,{o:{insert:r},m:i},a=2){a===0&&r(e.targetAnchor,t,n);let{el:o,anchor:s,shapeFlag:c,children:l,props:u}=e,d=a===2;if(d&&r(o,t,n),!er.has(e)&&(!d||rr(u))&&c&16)for(let e=0;e<l.length;e++)i(l[e],t,n,2);d&&r(s,t,n)}function ur(e,t,n,r,i,a,{o:{nextSibling:o,parentNode:s,querySelector:c,insert:l,createText:u}},d){function f(e,n){let r=n;for(;r;){if(r&&r.nodeType===8){if(r.data===`teleport start anchor`)t.targetStart=r;else if(r.data===`teleport anchor`){t.targetAnchor=r,e._lpa=t.targetAnchor&&o(t.targetAnchor);break}}r=o(r)}}function p(e,t){t.anchor=d(o(e),t,s(e),n,r,i,a)}let m=t.target=sr(t.props,c),h=rr(t.props);if(m){let c=m._lpa||m.firstChild;t.shapeFlag&16&&(h?(p(e,t),f(m,c),t.targetAnchor||pr(m,t,u,l,s(e)===m?e:null)):(t.anchor=o(e),f(m,c),t.targetAnchor||pr(m,t,u,l),d(c&&o(c),t,m,n,r,i,a))),fr(t,h)}else h&&t.shapeFlag&16&&(p(e,t),t.targetStart=e,t.targetAnchor=o(e));return t.anchor&&o(t.anchor)}var dr=cr;function fr(e,t){let n=e.ctx;if(n&&n.ut){let r,i;for(t?(r=e.el,i=e.anchor):(r=e.targetStart,i=e.targetAnchor);r&&r!==i;)r.nodeType===1&&r.setAttribute(`data-v-owner`,n.uid),r=r.nextSibling;n.ut()}}function pr(e,t,n,r,i=null){let a=t.targetStart=n(``),o=t.targetAnchor=n(``);return a[tr]=o,e&&(r(a,e,i),r(o,e,i)),o}var mr=Symbol(`_leaveCb`),hr=Symbol(`_enterCb`);function gr(){let e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Wr(()=>{e.isMounted=!0}),qr(()=>{e.isUnmounting=!0}),e}var _r=[Function,Array],vr={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:_r,onEnter:_r,onAfterEnter:_r,onEnterCancelled:_r,onBeforeLeave:_r,onLeave:_r,onAfterLeave:_r,onLeaveCancelled:_r,onBeforeAppear:_r,onAppear:_r,onAfterAppear:_r,onAppearCancelled:_r},yr=e=>{let t=e.subTree;return t.component?yr(t.component):t},br={name:`BaseTransition`,props:vr,setup(e,{slots:t}){let n=Ga(),r=gr();return()=>{let i=t.default&&Or(t.default(),!0),a=i&&i.length?xr(i):n.subTree?z():void 0;if(!a)return;let o=$t(e),{mode:s}=o;if(r.isLeaving)return Tr(a);let c=Er(a);if(!c)return Tr(a);let l=wr(c,o,r,n,e=>l=e);c.type!==xa&&Dr(c,l);let u=n.subTree&&Er(n.subTree);if(u&&u.type!==xa&&!Aa(u,c)&&yr(n).type!==xa){let e=wr(u,o,r,n);if(Dr(u,e),s===`out-in`&&c.type!==xa)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete e.afterLeave,u=void 0},Tr(a);s===`in-out`&&c.type!==xa?e.delayLeave=(e,t,n)=>{let i=Cr(r,u);i[String(u.key)]=u,e[mr]=()=>{t(),e[mr]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{n(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&=void 0;return a}}};function xr(e){let t=e[0];if(e.length>1){for(let n of e)if(n.type!==xa){t=n;break}}return t}var Sr=br;function Cr(e,t){let{leavingVNodes:n}=e,r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function wr(e,t,n,r,i){let{appear:a,mode:o,persisted:s=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:f,onLeave:m,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:_,onAppear:v,onAfterAppear:y,onAppearCancelled:b}=t,ee=String(e.key),x=Cr(n,e),S=(e,t)=>{e&&xn(e,r,9,t)},te=(e,t)=>{let n=t[1];S(e,t),p(e)?e.every(e=>e.length<=1)&&n():e.length<=1&&n()},ne={mode:o,persisted:s,beforeEnter(t){let r=c;if(!n.isMounted){if(a)r=_||c;else return}t[mr]&&t[mr](!0);let i=x[ee];i&&Aa(e,i)&&i.el[mr]&&i.el[mr](),S(r,[t])},enter(t){if(x[ee]===e)return;let r=l,i=u,o=d;if(!n.isMounted){if(a)r=v||l,i=y||u,o=b||d;else return}let s=!1;t[hr]=e=>{s||(s=!0,S(e?o:i,[t]),ne.delayedLeave&&ne.delayedLeave(),t[hr]=void 0)};let c=t[hr].bind(null,!1);r?te(r,[t,c]):c()},leave(t,r){let i=String(e.key);if(t[hr]&&t[hr](!0),n.isUnmounting)return r();S(f,[t]);let a=!1;t[mr]=n=>{a||(a=!0,r(),S(n?g:h,[t]),t[mr]=void 0,x[i]===e&&delete x[i])};let o=t[mr].bind(null,!1);x[i]=e,m?te(m,[t,o]):o()},clone(e){let a=wr(e,t,n,r,i);return i&&i(a),a}};return ne}function Tr(e){if(Ir(e))return e=Fa(e),e.children=null,e}function Er(e){if(!Ir(e))return nr(e.type)&&e.children?xr(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&_(n.default))return n.default()}}function Dr(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;let n=e.component.subTree;Dr(nr(n.type)&&Er(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Or(e,t=!1,n){let r=[],i=0;for(let a=0;a<e.length;a++){let o=e[a],s=n==null?o.key:String(n)+String(o.key==null?a:o.key);o.type===M?(o.patchFlag&128&&i++,r=r.concat(Or(o.children,t,s))):(t||o.type!==xa)&&r.push(s==null?o:Fa(o,{key:s}))}if(i>1)for(let e=0;e<r.length;e++)r[e].patchFlag=-2;return r}function kr(e,t){return _(e)?l({name:e.name},t,{setup:e}):e}function Ar(e){e.ids=[e.ids[0]+e.ids[2]+++`-`,0,0]}function jr(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}var Mr=new WeakMap;function Nr(e,t,n,i,a=!1){if(p(e)){e.forEach((e,r)=>Nr(e,t&&(p(t)?t[r]:t),n,i,a));return}if(Fr(i)&&!a){i.shapeFlag&512&&i.type.__asyncResolved&&i.component.subTree.component&&Nr(e,t,n,i.component.subTree);return}let s=i.shapeFlag&4?io(i.component):i.el,c=a?null:s,{i:l,r:d}=e,m=t&&t.r,h=l.refs===r?l.refs={}:l.refs,g=l.setupState,y=$t(g),b=g===r?o:e=>!jr(h,e)&&f(y,e),ee=(e,t)=>!(t&&jr(h,t));if(m!=null&&m!==d){if(Pr(t),v(m))h[m]=null,b(m)&&(g[m]=null);else if(rn(m)){let e=t;ee(m,e.k)&&(m.value=null),e.k&&(h[e.k]=null)}}if(_(d))bn(d,l,12,[c,h]);else{let t=v(d),r=rn(d);if(t||r){let i=()=>{if(e.f){let n=t?b(d)?g[d]:h[d]:ee(d)||!e.k?d.value:h[e.k];if(a)p(n)&&u(n,s);else if(p(n))n.includes(s)||n.push(s);else if(t)h[d]=[s],b(d)&&(g[d]=h[d]);else{let t=[s];ee(d,e.k)&&(d.value=t),e.k&&(h[e.k]=t)}}else t?(h[d]=c,b(d)&&(g[d]=c)):r&&(ee(d,e.k)&&(d.value=c),e.k&&(h[e.k]=c))};if(c){let t=()=>{i(),Mr.delete(e)};t.id=-1,Mr.set(e,t),sa(t,n)}else Pr(e),i()}}}function Pr(e){let t=Mr.get(e);t&&(t.flags|=8,Mr.delete(e))}ge().requestIdleCallback,ge().cancelIdleCallback;var Fr=e=>!!e.type.__asyncLoader,Ir=e=>e.type.__isKeepAlive;function Lr(e,t){zr(e,`a`,t)}function Rr(e,t){zr(e,`da`,t)}function zr(e,t,n=Wa){let r=e.__wdc||=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()};if(Vr(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Ir(e.parent.vnode)&&Br(r,t,n,e),e=e.parent}}function Br(e,t,n,r){let i=Vr(t,e,r,!0);Jr(()=>{u(r[t],i)},n)}function Vr(e,t,n=Wa,r=!1){if(n){let i=n[e]||(n[e]=[]),a=t.__weh||=(...r)=>{$e();let i=Ja(n),a=xn(t,n,e,r);return i(),et(),a};return r?i.unshift(a):i.push(a),a}}var Hr=e=>(t,n=Wa)=>{(!Za||e===`sp`)&&Vr(e,(...e)=>t(...e),n)},Ur=Hr(`bm`),Wr=Hr(`m`),Gr=Hr(`bu`),Kr=Hr(`u`),qr=Hr(`bum`),Jr=Hr(`um`),Yr=Hr(`sp`),Xr=Hr(`rtg`),Zr=Hr(`rtc`);function Qr(e,t=Wa){Vr(`ec`,e,t)}var $r=`components`;function ei(e,t){return ri($r,e,!0,t)||e}var ti=Symbol.for(`v-ndc`);function ni(e){return v(e)?ri($r,e,!1)||e:e||ti}function ri(e,t,n=!0,r=!1){let i=Bn||Wa;if(i){let n=i.type;if(e===$r){let e=ao(n,!1);if(e&&(e===t||e===oe(t)||e===le(oe(t))))return n}let a=ii(i[e]||n[e],t)||ii(i.appContext[e],t);return!a&&r?n:a}}function ii(e,t){return e&&(e[t]||e[oe(t)]||e[le(oe(t))])}function j(e,t,n,r){let i,a=n&&n[r],o=p(e);if(o||v(e)){let n=o&&Yt(e),r=!1,s=!1;n&&(r=!Zt(e),s=Xt(e),e=pt(e)),i=Array(e.length);for(let n=0,o=e.length;n<o;n++)i[n]=t(r?s?nn(tn(e[n])):tn(e[n]):e[n],n,void 0,a&&a[n])}else if(typeof e==`number`){i=Array(e);for(let n=0;n<e;n++)i[n]=t(n+1,n,void 0,a&&a[n])}else if(b(e)){if(e[Symbol.iterator])i=Array.from(e,(e,n)=>t(e,n,void 0,a&&a[n]));else{let n=Object.keys(e);i=Array(n.length);for(let r=0,o=n.length;r<o;r++){let o=n[r];i[r]=t(e[o],o,r,a&&a[r])}}}else i=[];return n&&(n[r]=i),i}var ai=e=>e?Xa(e)?io(e):ai(e.parent):null,oi=l(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ai(e.parent),$root:e=>ai(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>gi(e),$forceUpdate:e=>e.f||=()=>{Nn(e.update)},$nextTick:e=>e.n||=jn.bind(e.proxy),$watch:e=>Qn.bind(e)}),si=(e,t)=>e!==r&&!e.__isScriptSetup&&f(e,t),ci={get({_:e},t){if(t===`__v_skip`)return!0;let{ctx:n,setupState:i,data:a,props:o,accessCache:s,type:c,appContext:l}=e;if(t[0]!==`$`){let e=s[t];if(e!==void 0)switch(e){case 1:return i[t];case 2:return a[t];case 4:return n[t];case 3:return o[t]}else if(si(i,t))return s[t]=1,i[t];else if(a!==r&&f(a,t))return s[t]=2,a[t];else if(f(o,t))return s[t]=3,o[t];else if(n!==r&&f(n,t))return s[t]=4,n[t];else di&&(s[t]=0)}let u=oi[t],d,p;if(u)return t===`$attrs`&&ut(e.attrs,`get`,``),u(e);if((d=c.__cssModules)&&(d=d[t]))return d;if(n!==r&&f(n,t))return s[t]=4,n[t];if(p=l.config.globalProperties,f(p,t))return p[t]},set({_:e},t,n){let{data:i,setupState:a,ctx:o}=e;return si(a,t)?(a[t]=n,!0):i!==r&&f(i,t)?(i[t]=n,!0):f(e.props,t)||t[0]===`$`&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:i,appContext:a,props:o,type:s}},c){let l;return!!(n[c]||e!==r&&c[0]!==`$`&&f(e,c)||si(t,c)||f(o,c)||f(i,c)||f(oi,c)||f(a.config.globalProperties,c)||(l=s.__cssModules)&&l[c])},defineProperty(e,t,n){return n.get==null?f(n,`value`)&&this.set(e,t,n.value,null):e._.accessCache[t]=0,Reflect.defineProperty(e,t,n)}};function li(e){return p(e)?e.reduce((e,t)=>(e[t]=null,e),{}):e}function ui(e,t){return!e||!t?e||t:p(e)&&p(t)?e.concat(t):l({},li(e),li(t))}var di=!0;function fi(e){let t=gi(e),n=e.proxy,r=e.ctx;di=!1,t.beforeCreate&&mi(t.beforeCreate,e,`bc`);let{data:i,computed:o,methods:s,watch:c,provide:l,inject:u,created:d,beforeMount:f,mounted:m,beforeUpdate:h,updated:g,activated:v,deactivated:y,beforeDestroy:ee,beforeUnmount:x,destroyed:S,unmounted:te,render:ne,renderTracked:C,renderTriggered:re,errorCaptured:ie,serverPrefetch:ae,expose:oe,inheritAttrs:se,components:ce,directives:le,filters:ue}=t;if(u&&pi(u,r,null),s)for(let e in s){let t=s[e];_(t)&&(r[e]=t.bind(n))}if(i){let t=i.call(n,n);b(t)&&(e.data=Gt(t))}if(di=!0,o)for(let e in o){let t=o[e],i=B({get:_(t)?t.bind(n,n):_(t.get)?t.get.bind(n,n):a,set:!_(t)&&_(t.set)?t.set.bind(n):a});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e})}if(c)for(let e in c)hi(c[e],r,n,e);if(l){let e=_(l)?l.call(n):l;Reflect.ownKeys(e).forEach(t=>{Kn(t,e[t])})}d&&mi(d,e,`c`);function w(e,t){p(t)?t.forEach(t=>e(t.bind(n))):t&&e(t.bind(n))}if(w(Ur,f),w(Wr,m),w(Gr,h),w(Kr,g),w(Lr,v),w(Rr,y),w(Qr,ie),w(Zr,C),w(Xr,re),w(qr,x),w(Jr,te),w(Yr,ae),p(oe)){if(oe.length){let t=e.exposed||={};oe.forEach(e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t,enumerable:!0})})}else e.exposed||={}}ne&&e.render===a&&(e.render=ne),se!=null&&(e.inheritAttrs=se),ce&&(e.components=ce),le&&(e.directives=le),ae&&Ar(e)}function pi(e,t,n=a){p(e)&&(e=xi(e));for(let n in e){let r=e[n],i;i=b(r)?`default`in r?qn(r.from||n,r.default,!0):qn(r.from||n):qn(r),rn(i)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>i.value,set:e=>i.value=e}):t[n]=i}}function mi(e,t,n){xn(p(e)?e.map(e=>e.bind(t.proxy)):e.bind(t.proxy),t,n)}function hi(e,t,n,r){let i=r.includes(`.`)?$n(n,r):()=>n[r];if(v(e)){let n=t[e];_(n)&&A(i,n)}else if(_(e))A(i,e.bind(n));else if(b(e)){if(p(e))e.forEach(e=>hi(e,t,n,r));else{let r=_(e.handler)?e.handler.bind(n):t[e.handler];_(r)&&A(i,r,e)}}}function gi(e){let t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:a,config:{optionMergeStrategies:o}}=e.appContext,s=a.get(t),c;return s?c=s:!i.length&&!n&&!r?c=t:(c={},i.length&&i.forEach(e=>_i(c,e,o,!0)),_i(c,t,o)),b(t)&&a.set(t,c),c}function _i(e,t,n,r=!1){let{mixins:i,extends:a}=t;a&&_i(e,a,n,!0),i&&i.forEach(t=>_i(e,t,n,!0));for(let i in t)if(!(r&&i===`expose`)){let r=vi[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}var vi={data:yi,props:wi,emits:wi,methods:Ci,computed:Ci,beforeCreate:Si,created:Si,beforeMount:Si,mounted:Si,beforeUpdate:Si,updated:Si,beforeDestroy:Si,beforeUnmount:Si,destroyed:Si,unmounted:Si,activated:Si,deactivated:Si,errorCaptured:Si,serverPrefetch:Si,components:Ci,directives:Ci,watch:Ti,provide:yi,inject:bi};function yi(e,t){return t?e?function(){return l(_(e)?e.call(this,this):e,_(t)?t.call(this,this):t)}:t:e}function bi(e,t){return Ci(xi(e),xi(t))}function xi(e){if(p(e)){let t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function Si(e,t){return e?[...new Set([].concat(e,t))]:t}function Ci(e,t){return e?l(Object.create(null),e,t):t}function wi(e,t){return e?p(e)&&p(t)?[...new Set([...e,...t])]:l(Object.create(null),li(e),li(t??{})):t}function Ti(e,t){if(!e)return t;if(!t)return e;let n=l(Object.create(null),e);for(let r in t)n[r]=Si(e[r],t[r]);return n}function Ei(){return{app:null,config:{isNativeTag:o,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}var Di=0;function Oi(e,t){return function(n,r=null){_(n)||(n=l({},n)),r!=null&&!b(r)&&(r=null);let i=Ei(),a=new WeakSet,o=[],s=!1,c=i.app={_uid:Di++,_component:n,_props:r,_container:null,_context:i,_instance:null,version:co,get config(){return i.config},set config(e){},use(e,...t){return a.has(e)||(e&&_(e.install)?(a.add(e),e.install(c,...t)):_(e)&&(a.add(e),e(c,...t))),c},mixin(e){return i.mixins.includes(e)||i.mixins.push(e),c},component(e,t){return t?(i.components[e]=t,c):i.components[e]},directive(e,t){return t?(i.directives[e]=t,c):i.directives[e]},mount(a,o,l){if(!s){let u=c._ceVNode||L(n,r);return u.appContext=i,l===!0?l=`svg`:l===!1&&(l=void 0),o&&t?t(u,a):e(u,a,l),s=!0,c._container=a,a.__vue_app__=c,io(u.component)}},onUnmount(e){o.push(e)},unmount(){s&&(xn(o,c._instance,16),e(null,c._container),delete c._container.__vue_app__)},provide(e,t){return i.provides[e]=t,c},runWithContext(e){let t=ki;ki=c;try{return e()}finally{ki=t}}};return c}}var ki=null;function Ai(e,t,n=r){let i=Ga(),a=oe(t),o=ce(t),s=ji(e,a),c=dn((s,c)=>{let l,u=r,d;return Xn(()=>{let t=e[a];w(l,t)&&(l=t,c())}),{get(){return s(),n.get?n.get(l):l},set(e){let s=n.set?n.set(e):e;if(!w(s,l)&&!(u!==r&&w(e,u)))return;let f=i.vnode.props,p=!!(f&&(t in f||a in f||o in f)&&(`onUpdate:${t}`in f||`onUpdate:${a}`in f||`onUpdate:${o}`in f));p||(l=e,c()),i.emit(`update:${t}`,s),w(e,u)&&(w(e,s)&&!w(s,d)||p&&u!==r&&!w(s,l))&&c(),u=e,d=s}}});return c[Symbol.iterator]=()=>{let e=0;return{next(){return e<2?{value:e++?s||r:c,done:!1}:{done:!0}}}},c}var ji=(e,t)=>t===`modelValue`||t===`model-value`?e.modelModifiers:e[`${t}Modifiers`]||e[`${oe(t)}Modifiers`]||e[`${ce(t)}Modifiers`];function Mi(e,t,...n){if(e.isUnmounted)return;let i=e.vnode.props||r,a=n,o=t.startsWith(`update:`),s=o&&ji(i,t.slice(7));s&&(s.trim&&(a=n.map(e=>v(e)?e.trim():e)),s.number&&(a=a.map(pe)));let c,l=i[c=ue(t)]||i[c=ue(oe(t))];!l&&o&&(l=i[c=ue(ce(t))]),l&&xn(l,e,6,a);let u=i[c+`Once`];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,xn(u,e,6,a)}}var Ni=new WeakMap;function Pi(e,t,n=!1){let r=n?Ni:t.emitsCache,i=r.get(e);if(i!==void 0)return i;let a=e.emits,o={},s=!1;if(!_(e)){let r=e=>{let n=Pi(e,t,!0);n&&(s=!0,l(o,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return!a&&!s?(b(e)&&r.set(e,null),null):(p(a)?a.forEach(e=>o[e]=null):l(o,a),b(e)&&r.set(e,o),o)}function Fi(e,t){return!e||!s(t)?!1:(t=t.slice(2),t=t===`Once`?t:t.replace(/Once$/,``),f(e,t[0].toLowerCase()+t.slice(1))||f(e,ce(t))||f(e,t))}function Ii(e){let{type:t,vnode:n,proxy:r,withProxy:i,propsOptions:[a],slots:o,attrs:s,emit:l,render:u,renderCache:d,props:f,data:p,setupState:m,ctx:h,inheritAttrs:g}=e,_=Hn(e),v,y;try{if(n.shapeFlag&4){let e=i||r,t=e;v=Ia(u.call(t,e,d,f,m,p,h)),y=s}else{let e=t;v=Ia(e.length>1?e(f,{attrs:s,slots:o,emit:l}):e(f,null)),y=t.props?s:Li(s)}}catch(t){Ca.length=0,Sn(t,e,1),v=L(xa)}let b=v;if(y&&g!==!1){let e=Object.keys(y),{shapeFlag:t}=b;e.length&&t&7&&(a&&e.some(c)&&(y=Ri(y,a)),b=Fa(b,y,!1,!0))}return n.dirs&&(b=Fa(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(n.dirs):n.dirs),n.transition&&Dr(nr(b.type)&&Er(b)||b,n.transition),v=b,Hn(_),v}var Li=e=>{let t;for(let n in e)(n===`class`||n===`style`||s(n))&&((t||={})[n]=e[n]);return t},Ri=(e,t)=>{let n={};for(let r in e)(!c(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function zi(e,t,n){let{props:r,children:i,component:a}=e,{props:o,children:s,patchFlag:c}=t,l=a.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Bi(r,o,l):!!o;if(c&8){let e=t.dynamicProps;for(let t=0;t<e.length;t++){let n=e[t];if(Vi(o,r,n)&&!Fi(l,n))return!0}}}else return(i||s)&&(!s||!s.$stable)?!0:r===o?!1:r?!o||Bi(r,o,l):!!o;return!1}function Bi(e,t,n){let r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let i=0;i<r.length;i++){let a=r[i];if(Vi(t,e,a)&&!Fi(n,a))return!0}return!1}function Vi(e,t,n){let r=e[n],i=t[n];return n===`style`&&b(r)&&b(i)?!ke(r,i):r!==i}function Hi({vnode:e,parent:t,suspense:n},r){for(;t;){let n=t.subTree;if(n.suspense&&n.suspense.activeBranch===e&&(n.suspense.vnode.el=n.el=r,e=n),n===e)(e=t.vnode).el=r,t=t.parent;else break}n&&n.activeBranch===e&&(n.vnode.el=r)}var Ui={},Wi=()=>Object.create(Ui),Gi=e=>Object.getPrototypeOf(e)===Ui;function Ki(e,t,n,r=!1){let i={},a=Wi();e.propsDefaults=Object.create(null),Ji(e,t,i,a);for(let t in e.propsOptions[0])t in i||(i[t]=void 0);e.props=n?r?i:Kt(i):e.type.props?i:a,e.attrs=a}function qi(e,t,n,r){let{props:i,attrs:a,vnode:{patchFlag:o}}=e,s=$t(i),[c]=e.propsOptions,l=!1;if((r||o>0)&&!(o&16)){if(o&8){let n=e.vnode.dynamicProps;for(let r=0;r<n.length;r++){let o=n[r];if(Fi(e.emitsOptions,o))continue;let u=t[o];if(c){if(f(a,o))u!==a[o]&&(a[o]=u,l=!0);else{let t=oe(o);i[t]=Yi(c,s,t,u,e,!1)}}else u!==a[o]&&(a[o]=u,l=!0)}}}else{Ji(e,t,i,a)&&(l=!0);let r;for(let a in s)(!t||!f(t,a)&&((r=ce(a))===a||!f(t,r)))&&(c?n&&(n[a]!==void 0||n[r]!==void 0)&&(i[a]=Yi(c,s,a,void 0,e,!0)):delete i[a]);if(a!==s)for(let e in a)(!t||!f(t,e))&&(delete a[e],l=!0)}l&&dt(e.attrs,`set`,``)}function Ji(e,t,n,i){let[a,o]=e.propsOptions,s=!1,c;if(t)for(let r in t){if(re(r))continue;let l=t[r],u;a&&f(a,u=oe(r))?!o||!o.includes(u)?n[u]=l:(c||={})[u]=l:Fi(e.emitsOptions,r)||(!(r in i)||l!==i[r])&&(i[r]=l,s=!0)}if(o){let t=$t(n),i=c||r;for(let r=0;r<o.length;r++){let s=o[r];n[s]=Yi(a,t,s,i[s],e,!f(i,s))}}return s}function Yi(e,t,n,r,i,a){let o=e[n];if(o!=null){let e=f(o,`default`);if(e&&r===void 0){let e=o.default;if(o.type!==Function&&!o.skipFactory&&_(e)){let{propsDefaults:a}=i;if(n in a)r=a[n];else{let o=Ja(i);r=a[n]=e.call(null,t),o()}}else r=e;i.ce&&i.ce._setProp(n,r)}o[0]&&(a&&!e?r=!1:o[1]&&(r===``||r===ce(n))&&(r=!0))}return r}var Xi=new WeakMap;function Zi(e,t,n=!1){let a=n?Xi:t.propsCache,o=a.get(e);if(o)return o;let s=e.props,c={},u=[],d=!1;if(!_(e)){let r=e=>{d=!0;let[n,r]=Zi(e,t,!0);l(c,n),r&&u.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!s&&!d)return b(e)&&a.set(e,i),i;if(p(s))for(let e=0;e<s.length;e++){let t=oe(s[e]);Qi(t)&&(c[t]=r)}else if(s)for(let e in s){let t=oe(e);if(Qi(t)){let n=s[e],r=c[t]=p(n)||_(n)?{type:n}:l({},n),i=r.type,a=!1,o=!0;if(p(i))for(let e=0;e<i.length;++e){let t=i[e],n=_(t)&&t.name;if(n===`Boolean`){a=!0;break}n===`String`&&(o=!1)}else a=_(i)&&i.name===`Boolean`;r[0]=a,r[1]=o,(a||f(r,`default`))&&u.push(t)}}let m=[c,u];return b(e)&&a.set(e,m),m}function Qi(e){return e[0]!==`$`&&!re(e)}var $i=e=>e===`_`||e===`_ctx`||e===`$stable`,ea=e=>p(e)?e.map(Ia):[Ia(e)],ta=(e,t,n)=>{if(t._n)return t;let r=Un((...e)=>ea(t(...e)),n);return r._c=!1,r},na=(e,t,n)=>{let r=e._ctx;for(let n in e){if($i(n))continue;let i=e[n];if(_(i))t[n]=ta(n,i,r);else if(i!=null){let e=ea(i);t[n]=()=>e}}},ra=(e,t)=>{let n=ea(t);e.slots.default=()=>n},ia=(e,t,n)=>{for(let r in t)(n||!$i(r))&&(e[r]=t[r])},aa=(e,t,n)=>{let r=e.slots=Wi();if(e.vnode.shapeFlag&32){let e=t._;e?(ia(r,t,n),n&&fe(r,`_`,e,!0)):na(t,r)}else t&&ra(e,t)},oa=(e,t,n)=>{let{vnode:i,slots:a}=e,o=!0,s=r;if(i.shapeFlag&32){let e=t._;e?n&&e===1?o=!1:ia(a,t,n):(o=!t.$stable,na(t,a)),s=t}else t&&(ra(e,t),s={default:1});if(o)for(let e in a)!$i(e)&&s[e]==null&&delete a[e]},sa=ya;function ca(e){return la(e)}function la(e,t){let n=ge();n.__VUE__=!0;let{insert:o,remove:s,patchProp:c,createElement:l,createText:u,createComment:d,setText:f,setElementText:p,parentNode:m,nextSibling:h,setScopeId:g=a,insertStaticContent:_}=e,v=(e,t,n,r=null,a=null,o=null,s=void 0,c=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!Aa(e,t)&&(r=Ce(e),ye(e,a,o,!0),e=null),t.patchFlag===-2&&(l=!1,t.dynamicChildren=null),t.dynamicChildren&&e&&e.dynamicChildren&&e.dynamicChildren.hasOnce&&(t.dynamicChildren===i&&(t.dynamicChildren=[]),t.dynamicChildren.hasOnce=!0);let{type:u,ref:d,shapeFlag:f}=t;switch(u){case ba:y(e,t,n,r);break;case xa:b(e,t,n,r);break;case Sa:e??ee(t,n,r,s);break;case M:ce(e,t,n,r,a,o,s,c,l);break;default:f&1?te(e,t,n,r,a,o,s,c,l):f&6?le(e,t,n,r,a,o,s,c,l):(f&64||f&128)&&u.process(e,t,n,r,a,o,s,c,l,Ee)}d!=null&&a?Nr(d,e&&e.ref,o,t||e,!t):d==null&&e&&e.ref!=null&&Nr(e.ref,null,o,e,!0)},y=(e,t,n,r)=>{if(e==null)o(t.el=u(t.children),n,r);else{let n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},b=(e,t,n,r)=>{e==null?o(t.el=d(t.children||``),n,r):t.el=e.el},ee=(e,t,n,r)=>{[e.el,e.anchor]=_(e.children,t,n,r,e.el,e.anchor)},x=({el:e,anchor:t},n,r)=>{let i;for(;e&&e!==t;)i=h(e),o(e,n,r),e=i;o(t,n,r)},S=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=h(e),s(e),e=n;s(t)},te=(e,t,n,r,i,a,o,s,c)=>{if(t.type===`svg`?o=`svg`:t.type===`math`&&(o=`mathml`),e==null)ne(t,n,r,i,a,o,s,c);else{let n=e.el&&e.el._isVueCE?e.el:null;try{n&&n._beginPatch(),ae(e,t,i,a,o,s,c)}finally{n&&n._endPatch()}}},ne=(e,t,n,r,i,a,s,u)=>{let d,f,{props:m,shapeFlag:h,transition:g,dirs:_}=e;if(d=e.el=l(e.type,a,m&&m.is,m),h&8?p(d,e.children):h&16&&ie(e.children,d,null,r,i,ua(e,a),s,u),_&&Gn(e,null,r,`created`),C(d,e,e.scopeId,s,r),m){for(let e in m)e!==`value`&&!re(e)&&c(d,e,null,m[e],a,r);`value`in m&&c(d,`value`,null,m.value,a),(f=m.onVnodeBeforeMount)&&Ba(f,r,e)}_&&Gn(e,null,r,`beforeMount`);let v=fa(i,g);v&&g.beforeEnter(d),o(d,t,n),((f=m&&m.onVnodeMounted)||v||_)&&sa(()=>{try{f&&Ba(f,r,e),v&&g.enter(d),_&&Gn(e,null,r,`mounted`)}finally{}},i)},C=(e,t,n,r,i)=>{if(n&&g(e,n),r)for(let t=0;t<r.length;t++)g(e,r[t]);if(i){let n=i.subTree;if(t===n||va(n.type)&&(n.ssContent===t||n.ssFallback===t)){let t=i.vnode;C(e,t,t.scopeId,t.slotScopeIds,i.parent)}}},ie=(e,t,n,r,i,a,o,s,c=0)=>{for(let l=c;l<e.length;l++){let c=e[l]=s?La(e[l]):Ia(e[l]);v(null,c,t,n,r,i,a,o,s)}},ae=(e,t,n,i,a,o,s)=>{let l=t.el=e.el,{patchFlag:u,dynamicChildren:d,dirs:f}=t;u|=e.patchFlag&16;let m=e.props||r,h=t.props||r,g;if(n&&da(n,!1),(g=h.onVnodeBeforeUpdate)&&Ba(g,n,t,e),f&&Gn(t,e,n,`beforeUpdate`),n&&da(n,!0),d&&(!e.dynamicChildren||e.dynamicChildren.length!==d.length)&&(u=0,s=!1,d=null),(m.innerHTML&&h.innerHTML==null||m.textContent&&h.textContent==null)&&p(l,``),d?oe(e.dynamicChildren,d,l,n,i,ua(t,a),o):s||me(e,t,l,null,n,i,ua(t,a),o,!1),u>0){if(u&16)se(l,m,h,n,a);else if(u&2&&m.class!==h.class&&c(l,`class`,null,h.class,a),u&4&&c(l,`style`,m.style,h.style,a),u&8){let e=t.dynamicProps;for(let t=0;t<e.length;t++){let r=e[t],i=m[r],o=h[r];(o!==i||r===`value`)&&c(l,r,i,o,a,n)}}u&1&&e.children!==t.children&&p(l,t.children)}else!s&&d==null&&se(l,m,h,n,a);((g=h.onVnodeUpdated)||f)&&sa(()=>{g&&Ba(g,n,t,e),f&&Gn(t,e,n,`updated`)},i)},oe=(e,t,n,r,i,a,o)=>{for(let s=0;s<t.length;s++){let c=e[s],l=t[s],u=c.el&&(c.type===M||!Aa(c,l)||c.shapeFlag&198)?m(c.el):n;v(c,l,u,null,r,i,a,o,!0)}},se=(e,t,n,i,a)=>{if(t!==n){if(t!==r)for(let r in t)!re(r)&&!(r in n)&&c(e,r,t[r],null,a,i);for(let r in n){if(re(r))continue;let o=n[r],s=t[r];o!==s&&r!==`value`&&c(e,r,s,o,a,i)}`value`in n&&c(e,`value`,t.value,n.value,a)}},ce=(e,t,n,r,i,a,s,c,l)=>{let d=t.el=e?e.el:u(``),f=t.anchor=e?e.anchor:u(``),{patchFlag:p,dynamicChildren:m,slotScopeIds:h}=t;h&&(c=c?c.concat(h):h),e==null?(o(d,n,r),o(f,n,r),ie(t.children||[],n,f,i,a,s,c,l)):p>0&&p&64&&m&&e.dynamicChildren&&e.dynamicChildren.length===m.length?(oe(e.dynamicChildren,m,n,i,a,s,c),(t.key!=null||i&&t===i.subTree)&&pa(e,t,!0)):me(e,t,n,f,i,a,s,c,l)},le=(e,t,n,r,i,a,o,s,c)=>{t.slotScopeIds=s,e==null?t.shapeFlag&512?i.ctx.activate(t,n,r,o,c):ue(t,n,r,i,a,o,c):w(e,t,c)},ue=(e,t,n,r,i,a,o)=>{let s=e.component=Ua(e,r,i);if(Ir(e)&&(s.ctx.renderer=Ee),Qa(s,!1,o),s.asyncDep){if(i&&i.registerDep(s,fe,o),!e.el){let r=s.subTree=L(xa);b(null,r,t,n),e.placeholder=r.el}}else fe(s,e,t,n,i,a,o)},w=(e,t,n)=>{let r=t.component=e.component;if(zi(e,t,n)){if(r.asyncDep&&!r.asyncResolved){t.el=e.el,pe(r,t,n);return}r.next=t,r.update()}else t.el=e.el,r.vnode=t},fe=(e,t,n,r,i,a,o)=>{let s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:s,vnode:c}=e;{let n=ha(e);if(n){t&&(t.el=c.el,pe(e,t,o)),n.asyncDep.then(()=>{sa(()=>{e.isUnmounted||l()},i)});return}}let u=t,d;da(e,!1),t?(t.el=c.el,pe(e,t,o)):t=c,n&&de(n),(d=t.props&&t.props.onVnodeBeforeUpdate)&&Ba(d,s,t,c),da(e,!0);let f=Ii(e),p=e.subTree;e.subTree=f,v(p,f,m(p.el),Ce(p),e,i,a),t.el=f.el,u===null&&Hi(e,f.el),r&&sa(r,i),(d=t.props&&t.props.onVnodeUpdated)&&sa(()=>Ba(d,s,t,c),i)}else{let o,{el:s,props:c}=t,{bm:l,m:u,parent:d,root:f,type:p}=e,m=Fr(t);if(da(e,!1),l&&de(l),!m&&(o=c&&c.onVnodeBeforeMount)&&Ba(o,d,t),da(e,!0),s&&Oe){let t=()=>{e.subTree=Ii(e),Oe(s,e.subTree,e,i,null)};m&&p.__asyncHydrate?p.__asyncHydrate(s,e,t):t()}else{f.ce&&f.ce._hasShadowRoot()&&f.ce._injectChildStyle(p,e.parent?e.parent.type:void 0);let o=e.subTree=Ii(e);v(null,o,n,r,e,i,a),t.el=o.el}if(u&&sa(u,i),!m&&(o=c&&c.onVnodeMounted)){let e=t;sa(()=>Ba(o,d,e),i)}(t.shapeFlag&256||d&&Fr(d.vnode)&&d.vnode.shapeFlag&256)&&e.a&&sa(e.a,i),e.isMounted=!0,t=n=r=null}};e.scope.on();let c=e.effect=new Re(s);e.scope.off();let l=e.update=c.run.bind(c),u=e.job=c.runIfDirty.bind(c);u.i=e,u.id=e.uid,c.scheduler=()=>Nn(u),da(e,!0),l()},pe=(e,t,n)=>{t.component=e;let r=e.vnode.props;e.vnode=t,e.next=null,qi(e,t.props,r,n),oa(e,t.children,n),$e(),In(e),et()},me=(e,t,n,r,i,a,o,s,c=!1)=>{let l=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:m}=t;if(f>0){if(f&128){_e(l,d,n,r,i,a,o,s,c);return}if(f&256){he(l,d,n,r,i,a,o,s,c);return}}m&8?(u&16&&Se(l,i,a),d!==l&&p(n,d)):u&16?m&16?_e(l,d,n,r,i,a,o,s,c):Se(l,i,a,!0):(u&8&&p(n,``),m&16&&ie(d,n,r,i,a,o,s,c))},he=(e,t,n,r,a,o,s,c,l)=>{e||=i,t||=i;let u=e.length,d=t.length,f=Math.min(u,d),p=0;for(;p<f;p++){let r=t[p]=l?La(t[p]):Ia(t[p]);v(e[p],r,n,null,a,o,s,c,l)}u>d?Se(e,a,o,!0,!1,f):ie(t,n,r,a,o,s,c,l,f)},_e=(e,t,n,r,a,o,s,c,l)=>{let u=0,d=t.length,f=e.length-1,p=d-1;for(;u<=f&&u<=p;){let r=e[u],i=t[u]=l?La(t[u]):Ia(t[u]);if(Aa(r,i))v(r,i,n,null,a,o,s,c,l);else break;u++}for(;u<=f&&u<=p;){let r=e[f],i=t[p]=l?La(t[p]):Ia(t[p]);if(Aa(r,i))v(r,i,n,null,a,o,s,c,l);else break;f--,p--}if(u>f){if(u<=p){let e=p+1,i=e<d?t[e].el:r;for(;u<=p;)v(null,t[u]=l?La(t[u]):Ia(t[u]),n,i,a,o,s,c,l),u++}}else if(u>p)for(;u<=f;)ye(e[u],a,o,!0),u++;else{let m=u,h=u,g=new Map;for(u=h;u<=p;u++){let e=t[u]=l?La(t[u]):Ia(t[u]);e.key!=null&&g.set(e.key,u)}let _,y=0,b=p-h+1,ee=!1,x=0,S=Array(b);for(u=0;u<b;u++)S[u]=0;for(u=m;u<=f;u++){let r=e[u];if(y>=b){ye(r,a,o,!0);continue}let i;if(r.key!=null)i=g.get(r.key);else for(_=h;_<=p;_++)if(S[_-h]===0&&Aa(r,t[_])){i=_;break}i===void 0?ye(r,a,o,!0):(S[i-h]=u+1,i>=x?x=i:ee=!0,v(r,t[i],n,null,a,o,s,c,l),y++)}let te=ee?ma(S):i;for(_=te.length-1,u=b-1;u>=0;u--){let e=h+u,i=t[e],f=t[e+1],p=e+1<d?f.el||_a(f):r;S[u]===0?v(null,i,n,p,a,o,s,c,l):ee&&(_<0||u!==te[_]?ve(i,n,p,2):_--)}}},ve=(e,t,n,r,i=null)=>{let{el:a,type:c,transition:l,children:u,shapeFlag:d}=e;if(d&6){ve(e.component.subTree,t,n,r);return}if(d&128){e.suspense.move(t,n,r);return}if(d&64){c.move(e,t,n,Ee);return}if(c===M){o(a,t,n);for(let e=0;e<u.length;e++)ve(u[e],t,n,r);o(e.anchor,t,n);return}if(c===Sa){x(e,t,n);return}if(r!==2&&d&1&&l){if(r===0)l.persisted&&!a[mr]?o(a,t,n):(l.beforeEnter(a),o(a,t,n),sa(()=>l.enter(a),i));else{let{leave:r,delayLeave:i,afterLeave:c}=l,u=()=>{e.ctx.isUnmounted?s(a):o(a,t,n)},d=()=>{let e=a._isLeaving||!!a[mr];a._isLeaving&&a[mr](!0),l.persisted&&!e?u():r(a,()=>{u(),c&&c()})};i?i(a,u,d):d()}}else o(a,t,n)},ye=(e,t,n,r=!1,i=!1)=>{let{type:a,props:o,ref:s,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:f,cacheIndex:p,memo:m}=e;if((d===-2||l&&l.hasOnce)&&(i=!1),s!=null&&($e(),Nr(s,null,n,e,!0),et()),p!=null&&(!e.ctx||e.ctx===t)&&(t.renderCache[p]=void 0),u&256){t.ctx.deactivate(e);return}let h=u&1&&f,g=!Fr(e),_;if(g&&(_=o&&o.onVnodeBeforeUnmount)&&Ba(_,t,e),u&6)T(e.component,n,r);else{if(u&128){e.suspense.unmount(n,r);return}h&&Gn(e,null,t,`beforeUnmount`),u&64?e.type.remove(e,t,n,Ee,r):l&&!l.hasOnce&&(a!==M||d>0&&d&64)?Se(l,t,n,!1,!0):(a===M&&d&384||!i&&u&16)&&Se(c,t,n),r&&be(e)}let v=m!=null&&p==null;(g&&(_=o&&o.onVnodeUnmounted)||h||v)&&sa(()=>{_&&Ba(_,t,e),h&&Gn(e,null,t,`unmounted`),v&&(e.el=null)},n)},be=e=>{let{type:t,el:n,anchor:r,transition:i}=e;if(t===M){xe(n,r);return}if(t===Sa){S(e),i&&!i.persisted&&i.afterLeave&&i.afterLeave();return}let a=()=>{s(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(e.shapeFlag&1&&i&&!i.persisted){let{leave:t,delayLeave:r}=i,o=()=>t(n,a);r?r(e.el,a,o):o()}else a()},xe=(e,t)=>{let n;for(;e!==t;)n=h(e),s(e),e=n;s(t)},T=(e,t,n)=>{let{bum:r,scope:i,job:a,subTree:o,um:s,m:c,a:l}=e;ga(c),ga(l),r&&de(r),i.stop(),a?(a.flags|=8,ye(o,e,t,n)):e.vnode.el&&o&&(o.transition=e.vnode.transition,ye(o,e,t,n)),s&&sa(s,t),sa(()=>{e.isUnmounted=!0},t)},Se=(e,t,n,r=!1,i=!1,a=0)=>{for(let o=a;o<e.length;o++)ye(e[o],t,n,r,i)},Ce=e=>{if(e.shapeFlag&6)return Ce(e.component.subTree);if(e.shapeFlag&128)return e.suspense.next();let t=h(e.anchor||e.el),n=t&&t[tr];return n?h(n):t},we=!1,Te=(e,t,n)=>{let r;e==null?t._vnode&&(ye(t._vnode,null,null,!0),r=t._vnode.component):v(t._vnode||null,e,t,null,null,null,n),t._vnode=e,we||=(we=!0,In(r),Ln(),!1)},Ee={p:v,um:ye,m:ve,r:be,mt:ue,mc:ie,pc:me,pbc:oe,n:Ce,o:e},De,Oe;return t&&([De,Oe]=t(Ee)),{render:Te,hydrate:De,createApp:Oi(Te,De)}}function ua({type:e,props:t},n){return n===`svg`&&e===`foreignObject`||n===`mathml`&&e===`annotation-xml`&&t&&t.encoding&&t.encoding.includes(`html`)?void 0:n}function da({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function fa(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function pa(e,t,n=!1){let r=e.children,i=t.children;if(p(r)&&p(i))for(let e=0;e<r.length;e++){let t=r[e],a=i[e];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=i[e]=La(i[e]),a.el=t.el),!n&&a.patchFlag!==-2&&pa(t,a)),a.type===ba&&(a.patchFlag===-1&&(a=i[e]=La(a)),a.el=t.el),a.type===xa&&!a.el&&(a.el=t.el)}}function ma(e){let t=e.slice(),n=[0],r,i,a,o,s,c=e.length;for(r=0;r<c;r++){let c=e[r];if(c!==0){if(i=n[n.length-1],e[i]<c){t[r]=i,n.push(r);continue}for(a=0,o=n.length-1;a<o;)s=a+o>>1,e[n[s]]<c?a=s+1:o=s;c<e[n[a]]&&(a>0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,o=n[a-1];a-->0;)n[a]=o,o=t[o];return n}function ha(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ha(t)}function ga(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function _a(e){if(e.placeholder)return e.placeholder;let t=e.component;return t?_a(t.subTree):null}var va=e=>e.__isSuspense;function ya(e,t){t&&t.pendingBranch?p(e)?t.effects.push(...e):t.effects.push(e):Fn(e)}var M=Symbol.for(`v-fgt`),ba=Symbol.for(`v-txt`),xa=Symbol.for(`v-cmt`),Sa=Symbol.for(`v-stc`),Ca=[],wa=null;function N(e=!1){Ca.push(wa=e?null:[])}function Ta(){Ca.pop(),wa=Ca[Ca.length-1]||null}var Ea=1;function Da(e,t=!1){Ea+=e,e<0&&wa&&t&&(wa.hasOnce=!0)}function Oa(e){return e.dynamicChildren=Ea>0?wa||i:null,Ta(),Ea>0&&wa&&wa.push(e),e}function P(e,t,n,r,i,a){return Oa(I(e,t,n,r,i,a,!0))}function F(e,t,n,r,i){return Oa(L(e,t,n,r,i,!0))}function ka(e){return e?e.__v_isVNode===!0:!1}function Aa(e,t){return e.type===t.type&&e.key===t.key}var ja=({key:e})=>e??null,Ma=({ref:e,ref_key:t,ref_for:n})=>(typeof e==`number`&&(e=``+e),e==null?null:v(e)||rn(e)||_(e)?{i:Bn,r:e,k:t,f:!!n}:e);function I(e,t=null,n=null,r=0,i=null,a=e===M?0:1,o=!1,s=!1){let c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ja(t),ref:t&&Ma(t),scopeId:Vn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:a,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:Bn};return s?(Ra(c,n),a&128&&e.normalize(c)):n&&(c.shapeFlag|=v(n)?8:16),Ea>0&&!o&&wa&&(c.patchFlag>0||a&6)&&c.patchFlag!==32&&wa.push(c),c}var L=Na;function Na(e,t=null,n=null,r=0,i=null,a=!1){if((!e||e===ti)&&(e=xa),ka(e)){let r=Fa(e,t,!0);return n&&Ra(r,n),Ea>0&&!a&&wa&&(r.shapeFlag&6?wa[wa.indexOf(e)]=r:wa.push(r)),r.patchFlag=-2,r}if(oo(e)&&(e=e.__vccOpts),t){t=Pa(t);let{class:e,style:n}=t;e&&!v(e)&&(t.class=T(e)),b(n)&&(Qt(n)&&!p(n)&&(n=l({},n)),t.style=_e(n))}let o=v(e)?1:va(e)?128:nr(e)?64:b(e)?4:_(e)?2:0;return I(e,t,n,r,i,o,a,!0)}function Pa(e){return e?Qt(e)||Gi(e)?l({},e):e:null}function Fa(e,t,n=!1,r=!1){let{props:i,ref:a,patchFlag:o,children:s,transition:c}=e,l=t?za(i||{},t):i,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&ja(l),ref:t&&t.ref?n&&a?p(a)?a.concat(Ma(t)):[a,Ma(t)]:Ma(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==M?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Fa(e.ssContent),ssFallback:e.ssFallback&&Fa(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce,cacheIndex:e.cacheIndex};return c&&r&&Dr(u,c.clone(u)),u}function R(e=` `,t=0){return L(ba,null,e,t)}function z(e=``,t=!1){return t?(N(),F(xa,null,e)):L(xa,null,e)}function Ia(e){return e==null||typeof e==`boolean`?L(xa):p(e)?L(M,null,e.slice()):ka(e)?La(e):L(ba,null,String(e))}function La(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Fa(e)}function Ra(e,t){let n=0,{shapeFlag:r}=e;if(t==null)t=null;else if(p(t))n=16;else if(typeof t==`object`){if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),Ra(e,n()),n._c&&(n._d=!0));return}{n=32;let r=t._;!r&&!Gi(t)?t._ctx=Bn:r===3&&Bn&&(Bn.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}}else if(_(t)){if(r&65){Ra(e,{default:t});return}t={default:t,_ctx:Bn},n=32}else t=String(t),r&64?(n=16,t=[R(t)]):n=8;e.children=t,e.shapeFlag|=n}function za(...e){let t={};for(let n=0;n<e.length;n++){let r=e[n];for(let e in r)if(e===`class`)t.class!==r.class&&(t.class=T([t.class,r.class]));else if(e===`style`)t.style=_e([t.style,r.style]);else if(s(e)){let n=t[e],i=r[e];i&&n!==i&&!(p(n)&&n.includes(i))?t[e]=n?[].concat(n,i):i:i==null&&n==null&&!c(e)&&(t[e]=i)}else e!==``&&(t[e]=r[e])}return t}function Ba(e,t,n,r=null){xn(e,t,7,[n,r])}var Va=Ei(),Ha=0;function Ua(e,t,n){let i=e.type,a=(t?t.appContext:e.appContext)||Va,o={uid:Ha++,vnode:e,type:i,parent:t,appContext:a,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Fe(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(a.provides),ids:t?t.ids:[``,0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Zi(i,a),emitsOptions:Pi(i,a),emit:null,emitted:null,propsDefaults:r,inheritAttrs:i.inheritAttrs,ctx:r,data:r,props:r,attrs:r,slots:r,refs:r,setupState:r,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return o.ctx={_:o},o.root=t?t.root:o,o.emit=Mi.bind(null,o),e.ce&&e.ce(o),o}var Wa=null,Ga=()=>Wa||Bn,Ka,qa;{let e=ge(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach(t=>t(e)):r[0](e)}};Ka=t(`__VUE_INSTANCE_SETTERS__`,e=>Wa=e),qa=t(`__VUE_SSR_SETTERS__`,e=>Za=e)}var Ja=e=>{let t=Wa;return Ka(e),e.scope.on(),()=>{e.scope.off(),Ka(t)}},Ya=()=>{Wa&&Wa.scope.off(),Ka(null)};function Xa(e){return e.vnode.shapeFlag&4}var Za=!1;function Qa(e,t=!1,n=!1){t&&qa(t);let{props:r,children:i}=e.vnode,a=Xa(e);Ki(e,r,a,t),aa(e,i,n||t);let o=a?$a(e,t):void 0;return t&&qa(!1),o}function $a(e,t){let n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ci);let{setup:r}=n;if(r){$e();let n=e.setupContext=r.length>1?ro(e):null,i=Ja(e),a=bn(r,e,0,[e.props,n]),o=ee(a);if(et(),i(),(o||e.sp)&&!Fr(e)&&Ar(e),o){if(a.then(Ya,Ya),t)return a.then(n=>{qa(!0);try{eo(e,n,t)}finally{qa(!1)}}).catch(t=>{Sn(t,e,0)});e.asyncDep=a}else eo(e,a,t)}else to(e,t)}function eo(e,t,n){_(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:b(t)&&(e.setupState=ln(t)),to(e,n)}function to(e,t,n){let r=e.type;e.render||=r.render||a;{let t=Ja(e);$e();try{fi(e)}finally{et(),t()}}}var no={get(e,t){return ut(e,`get`,``),e[t]}};function ro(e){return{attrs:new Proxy(e.attrs,no),slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function io(e){return e.exposed?e.exposeProxy||=new Proxy(ln(en(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in oi)return oi[n](e)},has(e,t){return t in e||t in oi}}):e.proxy}function ao(e,t=!0){return _(e)?e.displayName||e.name:e.name||t&&e.__name}function oo(e){return _(e)&&`__vccOpts`in e}var B=(e,t)=>pn(e,t,Za);function so(e,t,n){try{Da(-1);let r=arguments.length;return r===2?b(t)&&!p(t)?ka(t)?L(e,null,[t]):L(e,t):L(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&ka(n)&&(n=[n]),L(e,t,n))}finally{Da(1)}}var co=`3.5.43`,lo=void 0,uo=typeof window<`u`&&window.trustedTypes;if(uo)try{lo=uo.createPolicy(`vue`,{createHTML:e=>e})}catch{}var fo=lo?e=>lo.createHTML(e):e=>e,po=`http://www.w3.org/2000/svg`,mo=`http://www.w3.org/1998/Math/MathML`,ho=typeof document<`u`?document:null,go=ho&&ho.createElement(`template`),_o={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{let i=t===`svg`?ho.createElementNS(po,e):t===`mathml`?ho.createElementNS(mo,e):n?ho.createElement(e,{is:n}):ho.createElement(e);return e===`select`&&r&&r.multiple!=null&&i.setAttribute(`multiple`,r.multiple),i},createText:e=>ho.createTextNode(e),createComment:e=>ho.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ho.querySelector(e),setScopeId(e,t){e.setAttribute(t,``)},insertStaticContent(e,t,n,r,i,a){let o=n?n.previousSibling:t.lastChild;if(i&&(i===a||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),i!==a&&(i=i.nextSibling););else{go.innerHTML=fo(r===`svg`?`<svg>${e}</svg>`:r===`mathml`?`<math>${e}</math>`:e);let i=go.content;if(r===`svg`||r===`mathml`){let e=i.firstChild;for(;e.firstChild;)i.appendChild(e.firstChild);i.removeChild(e)}t.insertBefore(i,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},vo=`transition`,yo=`animation`,bo=Symbol(`_vtc`),xo={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},So=l({},vr,xo),Co=(e=>(e.displayName=`Transition`,e.props=So,e))((e,{slots:t})=>so(Sr,Eo(e),t)),wo=(e,t=[])=>{p(e)?e.forEach(e=>e(...t)):e&&e(...t)},To=e=>e?p(e)?e.some(e=>e.length>1):e.length>1:!1;function Eo(e){let t={};for(let n in e)n in xo||(t[n]=e[n]);if(e.css===!1)return t;let{name:n=`v`,type:r,duration:i,enterFromClass:a=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:c=a,appearActiveClass:u=o,appearToClass:d=s,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,h=Do(i),g=h&&h[0],_=h&&h[1],{onBeforeEnter:v,onEnter:y,onEnterCancelled:b,onLeave:ee,onLeaveCancelled:x,onBeforeAppear:S=v,onAppear:te=y,onAppearCancelled:ne=b}=t,C=(e,t,n,r)=>{e._enterCancelled=r,Ao(e,t?d:s),Ao(e,t?u:o),n&&n()},re=(e,t)=>{e._isLeaving=!1,Ao(e,f),Ao(e,m),Ao(e,p),t&&t()},ie=e=>(t,n)=>{let i=e?te:y,o=()=>C(t,e,n);wo(i,[t,o]),jo(()=>{Ao(t,e?c:a),ko(t,e?d:s),To(i)||No(t,r,g,o)})};return l(t,{onBeforeEnter(e){wo(v,[e]),ko(e,a),ko(e,o)},onBeforeAppear(e){wo(S,[e]),ko(e,c),ko(e,u)},onEnter:ie(!1),onAppear:ie(!0),onLeave(e,t){e._isLeaving=!0;let n=()=>re(e,t);ko(e,f),e._enterCancelled?(ko(e,p),Lo(e)):(Lo(e),ko(e,p)),jo(()=>{e._isLeaving&&(Ao(e,f),ko(e,m),To(ee)||No(e,r,_,n))}),wo(ee,[e,n])},onEnterCancelled(e){C(e,!1,void 0,!0),wo(b,[e])},onAppearCancelled(e){C(e,!0,void 0,!0),wo(ne,[e])},onLeaveCancelled(e){re(e),wo(x,[e])}})}function Do(e){if(e==null)return null;if(b(e))return[Oo(e.enter),Oo(e.leave)];{let t=Oo(e);return[t,t]}}function Oo(e){return me(e)}function ko(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.add(t)),(e[bo]||(e[bo]=new Set)).add(t)}function Ao(e,t){t.split(/\s+/).forEach(t=>t&&e.classList.remove(t));let n=e[bo];n&&(n.delete(t),n.size||(e[bo]=void 0))}function jo(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}var Mo=0;function No(e,t,n,r){let i=e._endId=++Mo,a=()=>{i===e._endId&&r()};if(n!=null)return setTimeout(a,n);let{type:o,timeout:s,propCount:c}=Po(e,t);if(!o)return r();let l=o+`end`,u=0,d=()=>{e.removeEventListener(l,f),a()},f=t=>{t.target===e&&++u>=c&&d()};setTimeout(()=>{u<c&&d()},s+1),e.addEventListener(l,f)}function Po(e,t){let n=window.getComputedStyle(e),r=e=>(n[e]||``).split(`, `),i=r(`${vo}Delay`),a=r(`${vo}Duration`),o=Fo(i,a),s=r(`${yo}Delay`),c=r(`${yo}Duration`),l=Fo(s,c),u=null,d=0,f=0;t===vo?o>0&&(u=vo,d=o,f=a.length):t===yo?l>0&&(u=yo,d=l,f=c.length):(d=Math.max(o,l),u=d>0?o>l?vo:yo:null,f=u?u===vo?a.length:c.length:0);let p=u===vo&&/\b(?:transform|all)(?:,|$)/.test(r(`${vo}Property`).toString());return{type:u,timeout:d,propCount:f,hasTransform:p}}function Fo(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((t,n)=>Io(t)+Io(e[n])))}function Io(e){return e===`auto`?0:Number(e.slice(0,-1).replace(`,`,`.`))*1e3}function Lo(e){return(e?e.ownerDocument:document).body.offsetHeight}function Ro(e,t,n){let r=e[bo];r&&(t=(t?[t,...r]:[...r]).join(` `)),t==null?e.removeAttribute(`class`):n?e.setAttribute(`class`,t):e.className=t}var zo=Symbol(`_vod`),Bo=Symbol(`_vsh`),Vo={name:`show`,beforeMount(e,{value:t},{transition:n}){e[zo]=e.style.display===`none`?``:e.style.display,n&&t?n.beforeEnter(e):Ho(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Ho(e,!0),r.enter(e)):r.leave(e,()=>{Ho(e,!1)}):Ho(e,t))},beforeUnmount(e,{value:t}){Ho(e,t)}};function Ho(e,t){e.style.display=t?e[zo]:`none`,e[Bo]=!t}var Uo=Symbol(``),Wo=/(?:^|;)\s*display\s*:/;function Go(e,t,n){let r=e.style,i=v(n),a=!1;if(n&&!i){if(t){if(v(t))for(let e of t.split(`;`)){let t=e.slice(0,e.indexOf(`:`)).trim();n[t]??qo(r,t,``)}else for(let e in t)n[e]??qo(r,e,``)}for(let i in n){i===`display`&&(a=!0);let o=n[i];o==null?qo(r,i,``):Zo(e,i,!v(t)&&t?t[i]:void 0,o)||qo(r,i,o)}}else if(i){if(t!==n){let e=r[Uo];e&&(n+=`;`+e),r.cssText=n,a=Wo.test(n)}}else t&&e.removeAttribute(`style`);zo in e&&(e[zo]=a?r.display:``,e[Bo]&&(r.display=`none`))}var Ko=/\s*!important$/;function qo(e,t,n){if(p(n))n.forEach(n=>qo(e,t,n));else if(n??=``,t.startsWith(`--`))Ko.test(n)?e.setProperty(t,n.replace(Ko,``),`important`):e.setProperty(t,n);else{let r=Xo(e,t);Ko.test(n)?e.setProperty(ce(r),n.replace(Ko,``),`important`):e[r]=n}}var Jo=[`Webkit`,`Moz`,`ms`],Yo={};function Xo(e,t){let n=Yo[t];if(n)return n;let r=oe(t);if(r!==`filter`&&r in e)return Yo[t]=r;r=le(r);for(let n=0;n<Jo.length;n++){let i=Jo[n]+r;if(i in e)return Yo[t]=i}return t}function Zo(e,t,n,r){return e.tagName===`TEXTAREA`&&(t===`width`||t===`height`)&&v(r)&&n===r}var Qo=`http://www.w3.org/1999/xlink`;function $o(e,t,n,r,i,a=Ce(t)){r&&t.startsWith(`xlink:`)?n==null?e.removeAttributeNS(Qo,t.slice(6,t.length)):e.setAttributeNS(Qo,t,n):n==null||a&&!we(n)?e.removeAttribute(t):e.setAttribute(t,a?``:y(n)?String(n):n)}function es(e,t,n,r,i){if(t===`innerHTML`||t===`textContent`){n!=null&&(e[t]=t===`innerHTML`?fo(n):n);return}let a=e.tagName;if(t===`value`&&a!==`PROGRESS`&&!a.includes(`-`)){let r=a===`OPTION`?e.getAttribute(`value`)||``:e.value,i=n==null?e.type===`checkbox`?`on`:``:String(n);(r!==i||!(`_value`in e))&&(e.value=i),n??e.removeAttribute(t),e._value=n;return}let o=!1;if(n===``||n==null){let r=typeof e[t];r===`boolean`?n=we(n):n==null&&r===`string`?(n=``,o=!0):r===`number`&&(n=0,o=!0)}try{e[t]=n}catch{}o&&e.removeAttribute(i||t)}function ts(e,t,n,r){e.addEventListener(t,n,r)}function ns(e,t,n,r){e.removeEventListener(t,n,r)}var rs=Symbol(`_vei`);function is(e,t,n,r,i=null){let a=e[rs]||(e[rs]={}),o=a[t];if(r&&o)o.value=r;else{let[n,s]=ss(t);r?ts(e,n,a[t]=ds(r,i),s):o&&(ns(e,n,o,s),a[t]=void 0)}}var as=/(Once|Passive|Capture)$/,os=/^on:?(?:Once|Passive|Capture)$/;function ss(e){let t,n;for(;(n=e.match(as))&&!os.test(e);)t||={},e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===`:`?e.slice(3):ce(e.slice(2)),t]}var cs=0,ls=Promise.resolve(),us=()=>cs||=(ls.then(()=>cs=0),Date.now());function ds(e,t){let n=e=>{if(!e._vts)e._vts=Date.now();else if(e._vts<=n.attached)return;let r=n.value;if(p(r)){let n=e.stopImmediatePropagation;e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0};let i=r.slice(),a=[e];for(let n=0;n<i.length&&!e._stopped;n++){let e=i[n];e&&xn(e,t,5,a)}}else xn(r,t,5,[e])};return n.value=e,n.attached=us(),n}var fs=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ps=(e,t,n,r,i,a)=>{let o=i===`svg`;t===`class`?Ro(e,r,o):t===`style`?Go(e,n,r):s(t)?c(t)||is(e,t,n,r,a):(t[0]===`.`?(t=t.slice(1),1):t[0]===`^`?(t=t.slice(1),0):ms(e,t,r,o))?(es(e,t,r),!e.tagName.includes(`-`)&&(t===`value`||t===`checked`||t===`selected`)&&$o(e,t,r,o,a,t!==`value`)):e._isVueCE&&(hs(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!v(r)))?es(e,oe(t),r,a,t):(t===`true-value`?e._trueValue=r:t===`false-value`&&(e._falseValue=r),$o(e,t,r,o))};function ms(e,t,n,r){if(r)return!!(t===`innerHTML`||t===`textContent`||t in e&&fs(t)&&_(n));if(t===`spellcheck`||t===`draggable`||t===`translate`||t===`autocorrect`||t===`sandbox`&&e.tagName===`IFRAME`||t===`form`||t===`list`&&e.tagName===`INPUT`||t===`type`&&e.tagName===`TEXTAREA`)return!1;if(t===`width`||t===`height`){let t=e.tagName;if(t===`IMG`||t===`VIDEO`||t===`CANVAS`||t===`SOURCE`)return!1}return fs(t)&&v(n)?!1:t in e}function hs(e,t){let n=e._def.props;if(!n)return!1;let r=oe(t);return Array.isArray(n)?n.some(e=>oe(e)===r):Object.keys(n).some(e=>oe(e)===r)}var gs=e=>{let t=e.props[`onUpdate:modelValue`]||!1;return p(t)?e=>de(t,e):t};function _s(e){e.target.composing=!0}function vs(e){let t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event(`input`)))}var ys=Symbol(`_assign`),bs=Symbol(`_initialValue`);function xs(e,t,n){return t&&(e=e.trim()),n&&(e=pe(e)),e}var Ss={created(e,{modifiers:{lazy:t,trim:n,number:r}},i){e.parentNode&&(e.type===`text`?e[bs]=e.defaultValue.replace(/[\r\n]/g,``):e.type===`textarea`&&(e[bs]=e.defaultValue.replace(/\r\n?/g,`
|
|
2
|
+
`))),e[ys]=gs(i);let a=r||i.props&&i.props.type===`number`;ts(e,t?`change`:`input`,t=>{t.target.composing||e[ys](xs(e.value,n,a))}),(n||a)&&ts(e,`change`,()=>{e.value=xs(e.value,n,a)}),t||(ts(e,`compositionstart`,_s),ts(e,`compositionend`,vs),ts(e,`change`,vs))},mounted(e,{value:t,modifiers:{trim:n,number:r}}){let i=t??``,a=e[bs];delete e[bs],a!==void 0&&(e.type===`text`||e.type===`textarea`)&&e.value!==a?e[ys](xs(e.value,n,r)):e.value=i},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:i,number:a}},o){if(e[ys]=gs(o),e.composing)return;let s=(a||e.type===`number`)&&!/^0\d/.test(e.value)?pe(e.value):e.value,c=t??``;if(s===c)return;let l=e.getRootNode();(l instanceof Document||l instanceof ShadowRoot)&&l.activeElement===e&&e.type!==`range`&&(r&&t===n||i&&e.value.trim()===c)||(e.value=c)}},Cs={deep:!0,created(e,t,n){e[ys]=gs(n),ts(e,`change`,()=>{let t=e._modelValue,n=Os(e),r=e.checked,i=e[ys];if(p(t)){let e=Ae(t,n),a=e!==-1;if(r&&!a)i(t.concat(n));else if(!r&&a){let n=[...t];n.splice(e,1),i(n)}}else if(h(t)){let e=new Set(t);r?e.add(n):e.delete(n),i(e)}else i(ks(e,r))})},mounted:ws,beforeUpdate(e,t,n){e[ys]=gs(n),ws(e,t,n)}};function ws(e,{value:t,oldValue:n},r){e._modelValue=t;let i;if(p(t))i=Ae(t,r.props.value)>-1;else if(h(t))i=t.has(r.props.value);else{if(t===n)return;i=ke(t,ks(e,!0))}e.checked!==i&&(e.checked=i)}var Ts={deep:!0,created(e,{value:t,modifiers:{number:n}},r){e._modelValue=t,ts(e,`change`,()=>{let t=Array.prototype.filter.call(e.options,e=>e.selected).map(e=>n?pe(Os(e)):Os(e)),r=e.multiple,i=r?h(e._modelValue)?new Set(t):t:t[0],a=e._pendingValue=[r,r?p(i)?t.slice():t:i];try{e[ys](i)}finally{jn(()=>{e._pendingValue===a&&(e._pendingValue=void 0)})}}),e[ys]=gs(r)},mounted(e,{value:t}){Ds(e,t)},beforeUpdate(e,{value:t},n){e._modelValue=t,e[ys]=gs(n)},updated(e,{value:t}){let n=e._pendingValue;e._pendingValue=void 0,(!n||n[0]!==e.multiple||!Es(t,n[1],n[0]))&&Ds(e,t)}};function Es(e,t,n){if(!n||p(e))return ke(e,t);if(h(e)){if(e.size!==t.length)return!1;for(let n of t)if(!e.has(n))return!1;return!0}return!1}function Ds(e,t){let n=e.multiple,r=p(t);if(!n||r||h(t)){for(let i=0,a=e.options.length;i<a;i++){let a=e.options[i],o=Os(a);if(n){if(r){let e=typeof o;a.selected=e===`string`||e===`number`?t.some(e=>String(e)===String(o)):Ae(t,o)>-1}else a.selected=t.has(o)}else if(ke(Os(a),t)){e.selectedIndex!==i&&(e.selectedIndex=i);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Os(e){return`_value`in e?e._value:e.value}function ks(e,t){let n=t?`_trueValue`:`_falseValue`;return n in e?e[n]:t}var As=[`ctrl`,`shift`,`alt`,`meta`],js={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>`button`in e&&e.button!==0,middle:e=>`button`in e&&e.button!==1,right:e=>`button`in e&&e.button!==2,exact:(e,t)=>As.some(n=>e[`${n}Key`]&&!t.includes(n))},Ms=(e,t)=>{if(!e)return e;let n=e._withMods||={},r=t.join(`.`);return n[r]||(n[r]=((n,...r)=>{for(let e=0;e<t.length;e++){let r=js[t[e]];if(r&&r(n,t))return}return e(n,...r)}))},Ns={esc:`escape`,space:` `,up:`arrow-up`,left:`arrow-left`,right:`arrow-right`,down:`arrow-down`,delete:`backspace`},Ps=(e,t)=>{let n=e._withKeys||={},r=t.join(`.`);return n[r]||(n[r]=(n=>{if(!(`key`in n))return;let r=ce(n.key);if(t.some(e=>e===r||Ns[e]===r))return e(n)}))},Fs=l({patchProp:ps},_o),Is;function Ls(){return Is||=ca(Fs)}var Rs=((...e)=>{let t=Ls().createApp(...e),{mount:n}=t;return t.mount=e=>{let r=Bs(e);if(!r)return;let i=t._component;!_(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent=``);let a=n(r,!1,zs(r));return r instanceof Element&&(r.removeAttribute(`v-cloak`),r.setAttribute(`data-v-app`,``)),a},t});function zs(e){if(e instanceof SVGElement)return`svg`;if(typeof MathMLElement==`function`&&e instanceof MathMLElement)return`mathml`}function Bs(e){return v(e)?document.querySelector(e):e}var Vs=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Hs={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`},Us=({size:e,strokeWidth:t=2,absoluteStrokeWidth:n,color:r,iconNode:i,name:a,class:o,...s},{slots:c})=>so(`svg`,{...Hs,width:e||Hs.width,height:e||Hs.height,stroke:r||Hs.stroke,"stroke-width":n?Number(t)*24/Number(e):t,class:[`lucide`,`lucide-${Vs(a??`icon`)}`],...s},[...i.map(e=>so(...e)),...c.default?[c.default()]:[]]),V=(e,t)=>(n,{slots:r})=>so(Us,{...n,iconNode:t,name:e},r),Ws=V(`ActivityIcon`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),Gs=V(`ArchiveIcon`,[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8`,key:`1s80jp`}],[`path`,{d:`M10 12h4`,key:`a56b0p`}]]),Ks=V(`ArrowDownToLineIcon`,[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]),qs=V(`ArrowRightIcon`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),Js=V(`ArrowUpFromLineIcon`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),Ys=V(`ArrowUpRightIcon`,[[`path`,{d:`M7 7h10v10`,key:`1tivn9`}],[`path`,{d:`M7 17 17 7`,key:`1vkiza`}]]),Xs=V(`ArrowUpIcon`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),Zs=V(`BanIcon`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m4.9 4.9 14.2 14.2`,key:`1m5liu`}]]),Qs=V(`BellIcon`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]),$s=V(`BotIcon`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),ec=V(`BracesIcon`,[[`path`,{d:`M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1`,key:`ezmyqa`}],[`path`,{d:`M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1`,key:`e1hn23`}]]),tc=V(`CableIcon`,[[`path`,{d:`M17 21v-2a1 1 0 0 1-1-1v-1a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v1a1 1 0 0 1-1 1`,key:`10bnsj`}],[`path`,{d:`M19 15V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V9`,key:`1eqmu1`}],[`path`,{d:`M21 21v-2h-4`,key:`14zm7j`}],[`path`,{d:`M3 5h4V3`,key:`z442eg`}],[`path`,{d:`M7 5a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1V3`,key:`ebdjd7`}]]),nc=V(`CheckIcon`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),rc=V(`ChevronDownIcon`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),ic=V(`ChevronRightIcon`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),ac=V(`CircleCheckIcon`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),oc=V(`CircleHelpIcon`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),sc=V(`Clock3Icon`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`polyline`,{points:`12 6 12 12 16.5 12`,key:`1aq6pp`}]]),cc=V(`CopyIcon`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),lc=V(`CornerDownRightIcon`,[[`polyline`,{points:`15 10 20 15 15 20`,key:`1q7qjw`}],[`path`,{d:`M4 4v7a4 4 0 0 0 4 4h12`,key:`z08zvw`}]]),uc=V(`CornerLeftUpIcon`,[[`polyline`,{points:`14 9 9 4 4 9`,key:`m9oyvo`}],[`path`,{d:`M20 20h-7a4 4 0 0 1-4-4V4`,key:`1blwi3`}]]),dc=V(`CornerUpLeftIcon`,[[`polyline`,{points:`9 14 4 9 9 4`,key:`881910`}],[`path`,{d:`M20 20v-7a4 4 0 0 0-4-4H4`,key:`1nkjon`}]]),fc=V(`DatabaseIcon`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),pc=V(`DownloadIcon`,[[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`polyline`,{points:`7 10 12 15 17 10`,key:`2ggqvy`}],[`line`,{x1:`12`,x2:`12`,y1:`15`,y2:`3`,key:`1vk2je`}]]),mc=V(`ExternalLinkIcon`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),hc=V(`EyeIcon`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),gc=V(`FlagIcon`,[[`path`,{d:`M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z`,key:`i9b6wo`}],[`line`,{x1:`4`,x2:`4`,y1:`22`,y2:`15`,key:`1cm3nv`}]]),_c=V(`FolderOpenIcon`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),vc=V(`FolderIcon`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),yc=V(`GitBranchIcon`,[[`line`,{x1:`6`,x2:`6`,y1:`3`,y2:`15`,key:`17qcm7`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`path`,{d:`M18 9a9 9 0 0 1-9 9`,key:`n2h4wq`}]]),bc=V(`GitCompareIcon`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`path`,{d:`M11 18H8a2 2 0 0 1-2-2V9`,key:`19pyzm`}]]),xc=V(`GitForkIcon`,[[`circle`,{cx:`12`,cy:`18`,r:`3`,key:`1mpf1b`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`path`,{d:`M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9`,key:`1uq4wg`}],[`path`,{d:`M12 12v3`,key:`158kv8`}]]),Sc=V(`GitMergeIcon`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),Cc=V(`HandIcon`,[[`path`,{d:`M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2`,key:`1fvzgz`}],[`path`,{d:`M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2`,key:`1kc0my`}],[`path`,{d:`M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8`,key:`10h0bg`}],[`path`,{d:`M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15`,key:`1s1gnw`}]]),wc=V(`HistoryIcon`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}],[`path`,{d:`M12 7v5l4 2`,key:`1fdv2h`}]]),Tc=V(`HouseIcon`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`1d0kgt`}]]),Ec=V(`InfoIcon`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),Dc=V(`KeyRoundIcon`,[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]),Oc=V(`LaptopIcon`,[[`path`,{d:`M20 16V7a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v9m16 0H4m16 0 1.28 2.55a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45L4 16`,key:`tarvll`}]]),kc=V(`LayersIcon`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),Ac=V(`LibraryBigIcon`,[[`rect`,{width:`8`,height:`18`,x:`3`,y:`3`,rx:`1`,key:`oynpb5`}],[`path`,{d:`M7 3v18`,key:`bbkbws`}],[`path`,{d:`M20.4 18.9c.2.5-.1 1.1-.6 1.3l-1.9.7c-.5.2-1.1-.1-1.3-.6L11.1 5.1c-.2-.5.1-1.1.6-1.3l1.9-.7c.5-.2 1.1.1 1.3.6Z`,key:`1qboyk`}]]),jc=V(`Link2Icon`,[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7h2`,key:`8i5ue5`}],[`path`,{d:`M15 7h2a5 5 0 1 1 0 10h-2`,key:`1b9ql8`}],[`line`,{x1:`8`,x2:`16`,y1:`12`,y2:`12`,key:`1jonct`}]]),Mc=V(`ListChecksIcon`,[[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}],[`path`,{d:`M13 6h8`,key:`15sg57`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 18h8`,key:`oe0vm4`}]]),Nc=V(`LoaderCircleIcon`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),Pc=V(`LoaderIcon`,[[`path`,{d:`M12 2v4`,key:`3427ic`}],[`path`,{d:`m16.2 7.8 2.9-2.9`,key:`r700ao`}],[`path`,{d:`M18 12h4`,key:`wj9ykh`}],[`path`,{d:`m16.2 16.2 2.9 2.9`,key:`1bxg5t`}],[`path`,{d:`M12 18v4`,key:`jadmvz`}],[`path`,{d:`m4.9 19.1 2.9-2.9`,key:`bwix9q`}],[`path`,{d:`M2 12h4`,key:`j09sii`}],[`path`,{d:`m4.9 4.9 2.9 2.9`,key:`giyufr`}]]),Fc=V(`MessageSquareIcon`,[[`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z`,key:`1lielz`}]]),Ic=V(`MinusIcon`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),Lc=V(`MonitorSmartphoneIcon`,[[`path`,{d:`M18 8V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h8`,key:`10dyio`}],[`path`,{d:`M10 19v-3.96 3.15`,key:`1irgej`}],[`path`,{d:`M7 19h5`,key:`qswx4l`}],[`rect`,{width:`6`,height:`10`,x:`16`,y:`12`,rx:`2`,key:`1egngj`}]]),Rc=V(`NetworkIcon`,[[`rect`,{x:`16`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`4q2zg0`}],[`rect`,{x:`2`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`8cvhb9`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`6`,rx:`1`,key:`1egb70`}],[`path`,{d:`M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3`,key:`1jsf9p`}],[`path`,{d:`M12 12V8`,key:`2874zd`}]]),zc=V(`OctagonIcon`,[[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}]]),Bc=V(`PackageOpenIcon`,[[`path`,{d:`M12 22v-9`,key:`x3hkom`}],[`path`,{d:`M15.17 2.21a1.67 1.67 0 0 1 1.63 0L21 4.57a1.93 1.93 0 0 1 0 3.36L8.82 14.79a1.655 1.655 0 0 1-1.64 0L3 12.43a1.93 1.93 0 0 1 0-3.36z`,key:`2ntwy6`}],[`path`,{d:`M20 13v3.87a2.06 2.06 0 0 1-1.11 1.83l-6 3.08a1.93 1.93 0 0 1-1.78 0l-6-3.08A2.06 2.06 0 0 1 4 16.87V13`,key:`1pmm1c`}],[`path`,{d:`M21 12.43a1.93 1.93 0 0 0 0-3.36L8.83 2.2a1.64 1.64 0 0 0-1.63 0L3 4.57a1.93 1.93 0 0 0 0 3.36l12.18 6.86a1.636 1.636 0 0 0 1.63 0z`,key:`12ttoo`}]]),Vc=V(`PanelLeftCloseIcon`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`m16 15-3-3 3-3`,key:`14y99z`}]]),Hc=V(`PanelLeftOpenIcon`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`m14 9 3 3-3 3`,key:`8010ee`}]]),Uc=V(`PanelLeftIcon`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),Wc=V(`PanelRightIcon`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]),Gc=V(`PencilIcon`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),Kc=V(`PlayIcon`,[[`polygon`,{points:`6 3 20 12 6 21 6 3`,key:`1oa8hb`}]]),qc=V(`PlusIcon`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),Jc=V(`PuzzleIcon`,[[`path`,{d:`M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z`,key:`w46dr5`}]]),Yc=V(`RefreshCwIcon`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),Xc=V(`RepeatIcon`,[[`path`,{d:`m17 2 4 4-4 4`,key:`nntrym`}],[`path`,{d:`M3 11v-1a4 4 0 0 1 4-4h14`,key:`84bu3i`}],[`path`,{d:`m7 22-4-4 4-4`,key:`1wqhfi`}],[`path`,{d:`M21 13v1a4 4 0 0 1-4 4H3`,key:`1rx37r`}]]),Zc=V(`ServerIcon`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),Qc=V(`ShieldAlertIcon`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]),$c=V(`ShieldCheckIcon`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),el=V(`ShieldOffIcon`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]),tl=V(`SparklesIcon`,[[`path`,{d:`M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z`,key:`4pj2yx`}],[`path`,{d:`M20 3v4`,key:`1olli1`}],[`path`,{d:`M22 5h-4`,key:`1gvqau`}],[`path`,{d:`M4 17v2`,key:`vumght`}],[`path`,{d:`M5 18H3`,key:`zchphs`}]]),nl=V(`SquareStackIcon`,[[`path`,{d:`M4 10c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h4c1.1 0 2 .9 2 2`,key:`4i38lg`}],[`path`,{d:`M10 16c-1.1 0-2-.9-2-2v-4c0-1.1.9-2 2-2h4c1.1 0 2 .9 2 2`,key:`mlte4a`}],[`rect`,{width:`8`,height:`8`,x:`14`,y:`14`,rx:`2`,key:`1fa9i4`}]]),rl=V(`TerminalIcon`,[[`polyline`,{points:`4 17 10 11 4 5`,key:`akl6gq`}],[`line`,{x1:`12`,x2:`20`,y1:`19`,y2:`19`,key:`q2wloq`}]]),il=V(`Trash2Icon`,[[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6`,key:`4alrt4`}],[`path`,{d:`M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2`,key:`v07s0e`}],[`line`,{x1:`10`,x2:`10`,y1:`11`,y2:`17`,key:`1uufr5`}],[`line`,{x1:`14`,x2:`14`,y1:`11`,y2:`17`,key:`xtxkd`}]]),al=V(`Undo2Icon`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]),ol=V(`WaypointsIcon`,[[`circle`,{cx:`12`,cy:`4.5`,r:`2.5`,key:`r5ysbb`}],[`path`,{d:`m10.2 6.3-3.9 3.9`,key:`1nzqf6`}],[`circle`,{cx:`4.5`,cy:`12`,r:`2.5`,key:`jydg6v`}],[`path`,{d:`M7 12h10`,key:`b7w52i`}],[`circle`,{cx:`19.5`,cy:`12`,r:`2.5`,key:`1piiel`}],[`path`,{d:`m13.8 17.7 3.9-3.9`,key:`1wyg1y`}],[`circle`,{cx:`12`,cy:`19.5`,r:`2.5`,key:`13o1pw`}]]),sl=V(`WifiOffIcon`,[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}],[`path`,{d:`M5 12.859a10 10 0 0 1 5.17-2.69`,key:`1dl1wf`}],[`path`,{d:`M19 12.859a10 10 0 0 0-2.007-1.523`,key:`4k23kn`}],[`path`,{d:`M2 8.82a15 15 0 0 1 4.177-2.643`,key:`1grhjp`}],[`path`,{d:`M22 8.82a15 15 0 0 0-11.288-3.764`,key:`z3jwby`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),cl=V(`WifiIcon`,[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M2 8.82a15 15 0 0 1 20 0`,key:`dnpr2z`}],[`path`,{d:`M5 12.859a10 10 0 0 1 14 0`,key:`1x1e6c`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}]]),ll=V(`WorkflowIcon`,[[`rect`,{width:`8`,height:`8`,x:`3`,y:`3`,rx:`2`,key:`by2w9f`}],[`path`,{d:`M7 11v4a2 2 0 0 0 2 2h4`,key:`xkn7yn`}],[`rect`,{width:`8`,height:`8`,x:`13`,y:`13`,rx:`2`,key:`1cgmvn`}]]),ul=V(`WrenchIcon`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z`,key:`cbrjhi`}]]),dl=V(`XIcon`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),fl=e=>e.role===`assistant`,pl=e=>e.role===`toolResult`;function ml(e){let t=e.content;return typeof t==`string`?t:Array.isArray(t)?t.map(e=>e.type===`text`?e.text??``:``).join(``):``}function hl(e){if(e.errorMessage)return e.errorMessage;if(e.stopReason===`aborted`)return`Interrupted. Partial response preserved.`;if(e.stopReason===`error`)return`Provider request failed.`}function gl(e){let t=e.data;return typeof t?.text==`string`?t.text:e.kind===`pi.reset`?`New context started. Earlier entries remain stored.`:e.kind===`pi.compaction`?`Context compacted. Earlier entries remain stored.`:e.kind}function _l(e,t,n=new Map){let r=new Map,i=new Set;for(let t of e)for(let e of t.model??[])if(t.kind===`pi.tool-result`&&pl(e)&&r.set(e.toolCallId,{entryId:t.id,message:e}),t.kind===`pi.assistant`&&fl(e))for(let t of e.content)t.type===`toolCall`&&i.add(t.id);if(t)for(let e of t.content)e.type===`toolCall`&&i.add(e.id);let a=(e,t,i)=>{let a=r.get(e),o=n.get(e),s=o?.nested;return a?{callId:e,name:t,args:i,status:a.message.isError?`error`:`done`,result:ml(a.message),resultEntryId:a.entryId,...s?{nested:s}:{}}:o?.result?{callId:e,name:t,args:i,status:o.result.isError?`error`:`done`,result:o.result.text,...s?{nested:s}:{},...o.summary?{summary:vl(o.summary)}:{}}:{callId:e,name:t,args:i,status:o?.status??`pending`,output:o?.output||void 0,...s?{nested:s}:{},...o?.summary?{summary:vl(o.summary)}:{}}},o=e=>e.content.flatMap(e=>e.type===`text`?e.text?[{type:`text`,text:e.text}]:[]:e.type===`thinking`?e.thinking?[{type:`thinking`,text:e.thinking}]:[]:[{type:`tool`,call:a(e.id,e.name,e.arguments)}]),s=[];for(let t of e)if(t.kind!==`pi.system`){if(t.kind===`pi.user`)s.push({kind:`user`,id:t.id,text:(t.model??[]).map(ml).join(`
|
|
3
|
+
`)});else if(t.kind===`pi.assistant`){let e=(t.model??[]).filter(fl);s.push({kind:`assistant`,id:t.id,streaming:!1,blocks:e.flatMap(o),error:e.map(hl).find(Boolean),model:e[0]?.model})}else if(t.kind===`pi.tool-result`)for(let e of(t.model??[]).filter(pl))i.has(e.toolCallId)||s.push({kind:`tool-result`,id:t.id,name:e.toolName,text:ml(e),isError:e.isError});else s.push({kind:`event`,id:t.id,entryKind:t.kind,text:gl(t),note:t.model?.length?(t.model??[]).map(ml).join(`
|
|
4
|
+
`):void 0,...t.data===void 0?{}:{data:t.data}})}t&&s.push({kind:`assistant`,id:`live`,streaming:!0,blocks:o(t),model:t.model});for(let[e,t]of n)(t.status!==`done`||t.result||t.nested)&&!i.has(e)&&s.push({kind:`tool`,id:e,call:a(e,t.name,t.args)});return s}function vl(e){let t=[];return e.durationMs!==void 0&&t.push(`${(e.durationMs/1e3).toFixed(1)}s`),e.error&&t.push(e.error),t.join(` · `)}function yl(e){let t={tokens:0,cost:0,input:0,output:0,cacheRead:0,cacheWrite:0,inputCost:0,outputCost:0,cacheReadCost:0,cacheWriteCost:0};for(let n of Object.values(e?.models??{}))t.tokens+=n.totalTokens??n.input+n.output+n.cacheRead+n.cacheWrite,t.cost+=n.cost?.total??0,t.input+=n.input??0,t.output+=n.output??0,t.cacheRead+=n.cacheRead??0,t.cacheWrite+=n.cacheWrite??0,t.inputCost+=n.cost?.input??0,t.outputCost+=n.cost?.output??0,t.cacheReadCost+=n.cost?.cacheRead??0,t.cacheWriteCost+=n.cost?.cacheWrite??0;return t}var bl=class{listeners=new Set;subscribe(e){return this.listeners.add(e),()=>void this.listeners.delete(e)}emit(){for(let e of this.listeners)e()}},xl=()=>({items:[],entries:[],running:!1,generating:!1,inbox:[],agent:{},usage:{models:{},tools:{}},compactions:[],notices:[],docs:{},ready:!1});function Sl(e,t,n){let r=e;for(let e=0;e<t.length-1;e++){let n=t[e];(typeof r[n]!=`object`||r[n]===null)&&(r[n]=typeof t[e+1]==`number`?[]:{}),r=r[n]}let i=t[t.length-1];r[i]=String(r[i]??``)+n}function Cl(e,t){if(t.type===`message`)return structuredClone(t.message);let n=[...e.content],r=t.contentIndex;if(t.type===`block`||t.type.endsWith(`_start`))n[r]=structuredClone(t.block);else if(t.type===`text_delta`){let e=n[r];n[r]={type:`text`,text:(e?.type===`text`?e.text:``)+t.delta}}else if(t.type===`thinking_delta`){let e=n[r];n[r]={type:`thinking`,thinking:(e?.type===`thinking`?e.thinking:``)+t.delta}}else if(t.type===`toolcall_delta`){let e=structuredClone(n[r]??{type:`toolCall`,id:``,name:``,arguments:{}});Sl(e,t.path,t.delta),n[r]=e}return{...e,content:n}}var wl=class extends bl{state=xl();entries=new Map;live;tools=new Map;apply(e){switch(e.type){case`snapshot`:this.reset(e.snapshot),this.state.inbox=e.inbox;break;case`batch`:for(let t of e.events)this.event(t);break;case`inbox`:this.state.inbox=e.items;break;case`doc`:this.state.docs={...this.state.docs,[e.kind]:e.value};break;default:return!1}return this.rebuild(),this.emit(),!0}touch(){this.emit()}clear(){this.entries.clear(),this.tools.clear(),this.live=void 0,this.state=xl(),this.emit()}rebuild(){let e=[...this.entries.values()].sort((e,t)=>e.id-t.id);this.state.entries=e,this.state.generating=!!this.live,this.state.items=_l(e,this.live,this.tools)}reset(e){this.entries=new Map(e.entries.map(e=>[e.id,e])),this.live=e.generation?.message?structuredClone(e.generation.message):void 0,this.tools=new Map(e.tools.map(e=>[e.callId,{name:e.name,status:e.status,output:e.output??``}]));for(let t of e.nestedTools){let e=this.tools.get(t.callId);this.tools.set(t.callId,{name:t.name,status:t.status,output:t.output??``,args:t.arguments,nested:{parentCallId:t.parentCallId,parentTaskId:t.parentTaskId,taskId:t.taskId},...t.summary?{summary:t.summary}:{},...e??{}})}this.state.running=!!e.run,this.state.agent=e.agent,this.state.usage=e.usage,this.state.retry=e.generation?.retry,this.state.compactions=e.compactions.map(e=>e.taskId),this.state.compactionFailure=e.compactionFailure,this.state.ready=!0}commit(e){if(this.entries.set(e.id,e),e.kind===`pi.reset`||e.kind===`pi.compaction`){let t=e.head??e.id;for(let e of this.entries.keys())e<t&&this.entries.delete(e)}}event(e){switch(e.type){case`snapshot`:return this.reset(e);case`run_start`:this.state.running=!0;return;case`run_end`:this.state.running=!1,this.live=void 0;return;case`message_start`:e.message.role===`assistant`&&(this.live=structuredClone(e.message));return;case`message_update`:this.live||={role:`assistant`,content:[],provider:``,model:``,usage:e.usage,stopReason:`pending`};for(let t of e.changes)this.live=Cl(this.live,t);this.live={...this.live,usage:e.usage};return;case`message_end`:return this.live=void 0,this.commit(e.entry);case`entry_appended`:return this.commit(e.entry);case`tool_execution_start`:this.tools.set(e.toolCallId,{name:e.toolName,status:`running`,output:``,args:e.args,...e.parentToolCallId!==void 0&&e.parentTaskId!==void 0&&e.taskId!==void 0?{nested:{parentCallId:e.parentToolCallId,parentTaskId:e.parentTaskId,taskId:e.taskId}}:{}});return;case`tool_execution_update`:{let t=this.tools.get(e.toolCallId)??{name:e.toolName,status:`running`,output:``},n=e.output;n&&`set`in n?t.output=n.set:n&&(t.output=t.output.slice(n.trimStart??0)+(n.append??``)),t.status=`running`,this.tools.set(e.toolCallId,t);return}case`tool_execution_end`:if(e.entry){this.tools.delete(e.toolCallId),this.entries.set(e.entry.id,e.entry);return}if(e.result){let t=this.tools.get(e.toolCallId)??{name:e.toolName,status:`done`,output:``};t.status=`done`,t.result={text:Nl(e.result),isError:e.result.isError},t.summary={isError:e.result.isError,durationMs:e.result.durationMs},this.tools.set(e.toolCallId,t);return}this.tools.delete(e.toolCallId);return;case`agent_changed`:this.state.agent=e.agent;return;case`usage_changed`:this.state.usage=e.usage;return;case`auto_retry_start`:this.state.retry={at:e.at,error:e.errorMessage};return;case`auto_retry_end`:this.state.retry=void 0;return;case`compaction_start`:this.state.compactions.includes(e.taskId)||this.state.compactions.push(e.taskId);return;case`compaction_end`:this.state.compactions=this.state.compactions.filter(t=>t!==e.taskId),this.state.compactionFailure=e.error?{taskId:e.taskId,reason:e.reason,error:e.error}:void 0;return;case`task_failed`:this.state.notices=[...this.state.notices.slice(-9),`${e.kind} failed: ${e.message}`];return;default:return}}},Tl=class extends bl{state={agents:[],tasks:[],usage:{models:{},tools:{}},ready:!1};apply(e){if(e.type===`session`)this.state={agents:e.agents,tasks:e.tasks,usage:e.usage,ready:!0};else if(e.type===`agents`)this.state={...this.state,agents:e.agents};else if(e.type===`tasks`)this.state={...this.state,tasks:e.tasks};else if(e.type===`usage`)this.state={...this.state,usage:e.usage};else return!1;return this.emit(),!0}clear(){this.state={agents:[],tasks:[],usage:{models:{},tools:{}},ready:!1},this.emit()}agent(e){return this.state.agents.find(t=>t.id===e)}lineage(e){return El(this.state.agents,e)}foregroundBusy(e){return this.state.tasks.some(t=>!t.background&&t.conversationId===e)}backgroundTasks(e){return this.state.tasks.filter(t=>t.background&&(e===void 0||t.conversationId===e))}};function El(e,t){let n=new Map(e.map(e=>[e.id,e])),r=[],i=new Set,a=t;for(;a!==void 0&&!i.has(a);){i.add(a);let e=n.get(a);if(!e)break;r.unshift(e),a=e.parentId}return r}var Dl=e=>e,Ol=(e,t)=>`${e}/s/${t}`,kl=(e,t,n)=>`${e}/s/${t}/a/${n}`;function Al(e,t,n){let r=new Map;for(let i of t.agents)r.set(i.id,{type:`agent`,key:kl(e,t.id,i.id),deviceId:e,sessionId:t.id,agent:i,stale:n,children:[]});let i=[];for(let e of r.values()){let t=r.get(e.agent.parentId??e.agent.ownerAgentId??-1);t&&t!==e?t.children.push(e):i.push(e)}return i}function jl(e){return e.map(e=>{let t=e.status!==`online`;return{type:`device`,key:Dl(e.id),device:e,status:e.status,stale:t,children:(e.tree?.sessions??[]).map(n=>({type:`session`,key:Ol(e.id,n.id),deviceId:e.id,session:n,stale:t,children:Al(e.id,n,t)}))}})}var Ml=class extends bl{devices=[];apply(e){return e.type===`network`&&(this.devices=e.devices,this.emit(),!0)}device(e){return this.devices.find(t=>t.id===e)}tree(){return jl(this.devices)}};function Nl(e){let t=e.structuredOutput;if(t==null)return``;let n=typeof t==`string`?t:JSON.stringify(t);return n.length>4e3?`${n.slice(0,4e3)}…`:n}var Pl=3e4;function Fl(e,t){return t&&/^\d+$/.test(t.trim())?Math.min(Pl,Math.max(1e3,Number(t)*1e3)):Math.min(Pl,1e3*2**Math.min(e,10))}function Il(e){return Math.min(Pl,2e3*2**Math.min(e,10))}var Ll=class{state=`connecting`;source;streamId=``;slots=new Map;fresh=new Set;applied=[];routes=new Map;networkFns=new Set;stateFns=new Set;timer;reconnectTimer;reconnects=0;failures=0;flushing=Promise.resolve();start(){clearTimeout(this.reconnectTimer),this.source?.close(),this.streamId=``,this.source=new EventSource(`/api/stream`),this.source.onmessage=e=>this.receive(JSON.parse(e.data)),this.source.onerror=()=>{this.streamId=``,this.setState(this.source?.readyState===EventSource.CLOSED?`offline`:`connecting`),this.source?.readyState===EventSource.CLOSED&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=setTimeout(()=>this.start(),Il(this.reconnects++)))}}stop(){clearTimeout(this.timer),clearTimeout(this.reconnectTimer),this.source?.close(),this.streamId=``}set(e,t){this.slots.get(e)!==t&&(t?(this.slots.set(e,t),this.fresh.add(t)):this.slots.delete(e),this.schedule())}reopen(e){let t=this.slots.get(e);t&&(this.fresh.add(t),this.schedule(0))}route(e,t){let n=this.routes.get(e)??new Set;return n.add(t),this.routes.set(e,n),()=>void n.delete(t)}onNetwork(e){return this.networkFns.add(e),()=>void this.networkFns.delete(e)}onState(e){return this.stateFns.add(e),()=>void this.stateFns.delete(e)}setState(e){if(e!==this.state){this.state=e;for(let t of this.stateFns)t(e)}}receive(e){let t=e.frame;if(t.type===`stream`){if(e.sub!==`hello`)return;this.streamId=t.streamId,this.applied=[],this.reconnects=0,this.failures=0,this.setState(`live`),this.schedule(0);return}if(t.type===`network`){if(e.sub!==`network`)return;for(let e of this.networkFns)e(t.devices);return}if(e.sub!==`hello`&&e.sub!==`network`){for(let[n,r]of this.slots)if(r===e.sub)for(let e of this.routes.get(n)??[])e(t)}}schedule(e=30){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.flushing=this.flushing.then(()=>this.flush())},e)}async flush(){let e=this.streamId;if(!e)return;let t=[...new Set(this.slots.values())],n=t.filter(e=>this.fresh.has(e)&&this.applied.includes(e));if(this.fresh.clear(),n.length&&!await this.put(e,t.filter(e=>!n.includes(e)))){for(let e of n)this.fresh.add(e);return}(t.join(`
|
|
5
|
+
`)!==this.applied.join(`
|
|
6
|
+
`)||n.length)&&await this.put(e,t)}async put(e,t){let n=null;try{let r=await fetch(`/api/stream/${e}`,{method:`PUT`,headers:{"content-type":`application/json`},body:JSON.stringify({subs:t})});if(e!==this.streamId)return!1;if(r.ok)return this.applied=t,this.failures=0,!0;if(r.status===404)return this.start(),!1;console.warn(`subscription rejected`,r.status,await r.text()),n=r.headers.get(`retry-after`)}catch{if(e!==this.streamId)return!1}return this.schedule(Fl(this.failures++,n)),!1}},Rl=`lab.png`;function zl(e){return`/icons/${typeof e==`string`&&/^[\w.-]+\.(png|svg)$/.test(e)&&!e.includes(`..`)?e:Rl}`}var Bl=class extends Error{code;status;constructor(e,t,n=0,r){super(t,r),this.code=e,this.status=n,this.name=`DpiError`}},Vl=16777216,Hl={initS:1,capS:15},Ul={codeCreate:{perMinute:5,capacity:5},start:{perMinute:20,capacity:20},verifyFails:{perWindow:100,windowMinutes:15},verifyTotal:{perMinute:300,capacity:300}},Wl={perMinute:60,capacity:120};Hl.initS,Ul.verifyFails.perWindow,Ul.verifyFails.windowMinutes,Wl.perMinute,Wl.capacity;function Gl(e){let t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);r<128?t+=1:r<2048?t+=2:r>=55296&&r<=56319&&n+1<e.length&&(e.charCodeAt(n+1)&64512)==56320?(t+=4,n++):t+=3}return t}async function*Kl(e,t=45e3,n=Vl){let r=e.getReader(),i=new TextDecoder,a=()=>new Bl(`invalid`,`SSE event exceeds ${n} bytes`),o=[],s=0,c=``;try{for(;;){let e,l=new Promise((n,r)=>{e=setTimeout(()=>r(new Bl(`offline`,`No data for ${t/1e3}s`)),t)}),u;try{u=await Promise.race([r.read(),l])}finally{clearTimeout(e)}if(u.done)return;let d=i.decode(u.value,{stream:!0}).replaceAll(`\r
|
|
7
|
+
`,`
|
|
8
|
+
`);if(!d)continue;if(c===`\r`&&d.startsWith(`
|
|
9
|
+
`)){let e=o.pop();if(e!==void 0){let t=e.slice(0,-1);t&&o.push(t),--s,c=o.length>0?o[o.length-1].slice(-1):``}}if(s+=Gl(d),!(c+d).includes(`
|
|
10
|
+
|
|
11
|
+
`)){if(s>n)throw a();o.push(d),c=d.slice(-1);continue}let f=o.join(``)+d,p;for(;(p=f.indexOf(`
|
|
12
|
+
|
|
13
|
+
`))>=0;){let e=f.slice(0,p),t=Gl(e);if(t>n)throw a();f=f.slice(p+2),s-=t+2;let r=ql(e);r&&(yield r)}if(s>n)throw a();o=f?[f]:[],c=f.slice(-1)}}finally{r.cancel().catch(()=>{})}}function ql(e){let t=`message`,n,r=[];for(let i of e.split(`
|
|
14
|
+
`)){if(!i||i.startsWith(`:`))continue;let e=i.indexOf(`:`),a=e<0?i:i.slice(0,e),o=e<0?``:i.slice(e+1).replace(/^ /,``);a===`event`?t=o:a===`data`?r.push(o):a===`id`&&(n=o)}return r.length?{event:t,data:r.join(`
|
|
15
|
+
`),id:n}:void 0}var Jl=encodeURIComponent,Yl=()=>globalThis.crypto?.randomUUID?.()??`${Date.now()}-${Math.random().toString(36).slice(2)}`,Xl=class{token;baseUrl;constructor(e,t){this.token=t,this.baseUrl=e.replace(/\/+$/,``)}headers(e,t={}){return{...this.token?{authorization:`Bearer ${this.token}`,"x-dpi-token":this.token}:{},...e?{"content-type":`application/json`}:{},...t}}async request(e,t,n,r={}){let i=AbortSignal.timeout(r.timeoutMs??2e4),a=r.signal?AbortSignal.any([r.signal,i]):i,o;try{o=await fetch(this.baseUrl+t,{method:e,signal:a,headers:this.headers(n!==void 0,r.idempotencyKey?{"idempotency-key":r.idempotencyKey}:{}),body:n===void 0?void 0:JSON.stringify(n)})}catch(e){throw r.signal?.aborted?e:new Bl(`offline`,`Cannot reach ${this.baseUrl}`,0,{cause:e})}let s=await o.text(),c;try{c=s?JSON.parse(s):void 0}catch{c=void 0}if(!o.ok){let e=c?.error;throw new Bl(e?.code??(o.status===401?`unauthorized`:o.status===404?`not_found`:`internal`),e?.message??`${o.status} ${o.statusText}`,o.status)}return c}async*stream(e,t,n){let r;try{r=await fetch(this.baseUrl+e,{headers:{...this.headers(!1),accept:`text/event-stream`},signal:t})}catch(e){if(t.aborted)return;throw new Bl(`offline`,`Cannot reach ${this.baseUrl}`,0,{cause:e})}if(!r.ok||!r.body){let e=await r.json().catch(()=>void 0);throw new Bl(e?.error?.code??(r.status===401?`unauthorized`:`unavailable`),e?.error?.message??`Stream failed (${r.status})`,r.status)}try{for await(let e of Kl(r.body,n))yield JSON.parse(e.data)}catch(e){if(t.aborted)return;throw e}}device(e){return this.request(`GET`,`/v1/device`,void 0,e)}tree(){return this.request(`GET`,`/v1/tree`)}dirs(e=``){return this.request(`GET`,`/v1/fs/dirs?path=${Jl(e)}`)}deviceDoc(e){return this.request(`GET`,`/v1/docs/${Jl(e)}`)}deviceEvents(e,t=[]){return this.stream(`/v1/events${t.length?`?docs=${t.map(Jl).join(`,`)}`:``}`,e)}gitStatus(e,t={}){return this.request(`GET`,`/v1/git/status?path=${Jl(e)}`,void 0,t)}gitOp(e,t,n={}){return this.request(`POST`,`/v1/git`,{path:e,op:t,...n})}sessionGitFiles(e){return this.request(`GET`,`/v1/sessions/${Jl(e)}/git-files`)}sessionGitTurns(e){return this.request(`GET`,`/v1/sessions/${Jl(e)}/git-turns`)}gitStatusBatch(e,t={}){return this.request(`POST`,`/v1/git/status-batch`,{paths:e},t)}sessions(){return this.request(`GET`,`/v1/sessions`)}createSession(e,t=Yl()){return this.request(`POST`,`/v1/sessions`,e,{idempotencyKey:t})}session(e){return new Zl(this,e)}agent(e,t){return new Ql(this,e,String(t))}},Zl=class{client;ref;constructor(e,t){this.client=e,this.ref=t}get base(){return`/v1/sessions/${Jl(this.ref)}`}get(){return this.client.request(`GET`,this.base)}rename(e){return this.client.request(`PATCH`,this.base,{name:e})}archive(){return this.client.request(`DELETE`,this.base)}agents(){return this.client.request(`GET`,`${this.base}/agents`)}createAgent(e={},t=Yl()){return this.client.request(`POST`,`${this.base}/agents`,e,{idempotencyKey:t})}tasks(e=`terminal`,t=20){return this.client.request(`GET`,`${this.base}/tasks?status=${e}&limit=${t}`)}abortTask(e){return this.client.request(`POST`,`${this.base}/tasks/${e}/abort`,{})}inspect(){return this.client.request(`GET`,`${this.base}/inspect`)}compaction(){return this.client.request(`GET`,`${this.base}/compaction`)}setCompaction(e){return this.client.request(`PATCH`,`${this.base}/compaction`,e)}submission(e,t=0){return this.client.request(`GET`,`${this.base}/submissions/${e}?waitMs=${t}`,void 0,{timeoutMs:t+2e4})}events(e){return this.client.stream(`${this.base}/events`,e)}},Ql=class{client;session;agent;constructor(e,t,n){this.client=e,this.session=t,this.agent=n}get base(){return`/v1/sessions/${Jl(this.session)}/agents/${Jl(this.agent)}`}get(){return this.client.request(`GET`,this.base)}rename(e){return this.client.request(`PATCH`,this.base,{name:e})}send(e,t=`followUp`,n=Yl(),r){return this.client.request(`POST`,`${this.base}/messages`,{content:e,whenBusy:t,requestId:n,waitMs:r},{timeoutMs:(r??0)+2e4})}withdraw(e){return this.client.request(`DELETE`,`${this.base}/inbox/${e}`)}abort(e=!1){return this.client.request(`POST`,`${this.base}/abort`,{background:e})}fork(e,t=Yl()){return this.client.request(`POST`,`${this.base}/fork`,e,{idempotencyKey:t})}config(){return this.client.request(`GET`,`${this.base}/config`)}configure(e){return this.client.request(`PATCH`,`${this.base}/config`,e)}compact(e){return this.client.request(`POST`,`${this.base}/compact`,{instructions:e})}reset(e){return this.client.request(`POST`,`${this.base}/reset`,{note:e})}entries(e={}){let t=new URLSearchParams({scope:e.scope??`all`,limit:String(e.limit??500),...e.cursor?{cursor:e.cursor}:{}});return this.client.request(`GET`,`${this.base}/entries?${t}`)}transcript(e=`json`){return this.client.request(`GET`,`${this.base}/transcript?format=${e}`)}doc(e){return this.client.request(`GET`,`${this.base}/docs/${Jl(e)}`)}extensions(){return this.client.request(`GET`,`${this.base}/extensions`)}setExtension(e){return this.client.request(`PATCH`,`${this.base}/extensions`,e)}demo(e,t,n=`POST`){return this.client.request(n,`${this.base}/demo/${e}`,t)}events(e,t=[]){return this.client.stream(`${this.base}/events${t.length?`?docs=${t.map(Jl).join(`,`)}`:``}`,e)}},H=e=>new Xl(`/api/devices/${encodeURIComponent(e)}`);async function $l(e,t,n){let r=await fetch(`/api${t}`,{method:e,headers:n===void 0?{}:{"content-type":`application/json`},body:n===void 0?void 0:JSON.stringify(n)}),i=await r.json().catch(()=>void 0);if(!r.ok){let e=i?.error;throw new Bl(e?.code??`internal`,e?.message??`${r.status} ${r.statusText}`,r.status)}return i}var eu={network:()=>$l(`GET`,`/network`),check:e=>$l(`POST`,`/devices/${encodeURIComponent(e)}/check`,{}),async uiGet(e){return(await $l(`GET`,`/ui-state/${encodeURIComponent(e)}`)).value??void 0},uiSet:(e,t)=>$l(`PUT`,`/ui-state/${encodeURIComponent(e)}`,{value:t})},tu=e=>e instanceof Error?e.message:String(e),nu=[`demo.job-runs`,`demo.workspace`],ru=e=>`${e.deviceId}/agent/${e.sessionId}/${e.agentId}?docs=${nu.join(`,`)}`,iu=e=>`${e.deviceId}/session/${e.sessionId}`,au=e=>`${e}/device?docs=app.shared-state`;function ou(e,t,n,r=`hello`){let i=O(`idle`),a=O(``);return e.route(t,e=>{e.type===`hello`?(i.value=r===`hello`?`live`:`connecting`,r===`hello`&&(a.value=``)):e.type===`disconnected`?i.value=`reconnecting`:e.type===`fault`?(i.value=`fault`,a.value=e.error.message):(n(e),e.type===r&&(a.value=``,i.value=`live`))}),{status:i,fault:a,select:n=>{a.value=``,i.value=n?`connecting`:`idle`,e.set(t,n)},retry:()=>{i.value=`connecting`,e.reopen(t)}}}function su(e){let t=new Ml,n=O(0);return t.subscribe(()=>n.value++),e.onNetwork(e=>t.apply({type:`network`,devices:e})),{model:t,devices:B(()=>(n.value,t.devices)),tree:B(()=>(n.value,t.tree()))}}function cu(e,t){let n=an(),r=an([]),{status:i,select:a}=ou(e,`device`,e=>{e.type===`doc`&&e.kind===`app.shared-state`?n.value={value:e.value,revision:e.revision??0}:e.type===`activity`&&(r.value=[...r.value,...e.items].slice(-50))});return A(t,e=>{n.value=void 0,a(e?au(e):void 0)},{immediate:!0}),{sharedState:n,activity:r,status:i}}function lu(e,t){let n=new Tl,r=O(0);n.subscribe(()=>r.value++);let{status:i,fault:a,select:o}=ou(e,`session`,e=>n.apply(e));return A(()=>t.value?iu(t.value):void 0,e=>{n.clear(),o(e)},{immediate:!0}),{model:n,state:B(()=>(r.value,n.state)),status:i,fault:a}}function uu(e,t){let n=new wl,r=O(0);n.subscribe(()=>r.value++);let{status:i,fault:a,select:o,retry:s}=ou(e,`agent`,e=>n.apply(e),`snapshot`);return A(()=>t.value?ru(t.value):void 0,e=>{n.clear(),o(e)},{immediate:!0}),{model:n,state:B(()=>(r.value,{...n.state})),status:i,fault:a,version:r,retry:s}}var du=new Ll,fu=O(du.state);du.onState(e=>fu.value=e);var pu=su(du),mu=O(),U=O(),hu=O(new Set),gu=O(300),_u=Gt({tree:!0,inspector:!0}),vu=O(!1),yu=B(()=>U.value?.deviceId),bu=B(()=>pu.devices.value.find(e=>e.id===yu.value)),xu=B(()=>bu.value?.status===`online`),Su=lu(du,B(()=>U.value?{deviceId:U.value.deviceId,sessionId:U.value.sessionId}:void 0)),Cu=uu(du,U),wu=cu(du,yu),Tu=B(()=>bu.value?.tree?.sessions.find(e=>e.id===U.value?.sessionId)),Eu=B(()=>yu.value?H(yu.value):void 0),Du=B(()=>U.value&&Eu.value?Eu.value.agent(U.value.sessionId,U.value.agentId):void 0),Ou=B(()=>U.value&&Eu.value?Eu.value.session(U.value.sessionId):void 0);function ku(e){U.value=e,W.drawer=!1,Au=!!e,ju()}var Au=!1;function ju(){let e=U.value;if(!Au||!e)return;let t=pu.devices.value.find(t=>t.id===e.deviceId)?.tree?.sessions.find(t=>t.id===e.sessionId)?.agents,n=new Map((t??[]).map(e=>[e.id,e])),r=[e.deviceId,`${e.deviceId}/s/${e.sessionId}`,`${e.deviceId}/s/${e.sessionId}/a/${e.agentId}`],i=n.get(e.agentId),a=new Set;for(;i&&!a.has(i.id);){a.add(i.id);let t=i.parentId??i.ownerAgentId;if(t===void 0)break;r.push(`${e.deviceId}/s/${e.sessionId}/a/${t}`),i=n.get(t)}r.some(e=>!hu.value.has(e))&&(hu.value=new Set([...hu.value,...r])),n.has(e.agentId)&&(Au=!1)}A(()=>pu.devices.value,ju);function Mu(e,t){let n=new Set(hu.value);t??!n.has(e)?n.add(e):n.delete(e),hu.value=n}var Nu=(()=>{let e=new Map;return(t,n)=>{clearTimeout(e.get(t)),e.set(t,setTimeout(()=>void eu.uiSet(t,n).catch(()=>{}),300))}})();A(U,e=>vu.value&&void eu.uiSet(`tree.selected`,e??null).catch(()=>{})),A(gu,e=>vu.value&&Nu(`tree.width`,e)),A(_u,e=>vu.value&&Nu(`layout.panels`,{...e}));async function Pu(){du.start();try{let[e,t,n,r]=await Promise.all([eu.network(),eu.uiGet(`tree.selected`),eu.uiGet(`tree.width`),eu.uiGet(`layout.panels`)]);r&&Object.assign(_u,r),mu.value=e.configFile,pu.model.devices.length||pu.model.apply({type:`network`,devices:e.devices}),hu.value=new Set,n&&(gu.value=n),t&&e.devices.some(e=>e.id===t.deviceId)?ku(t):Fu(e.devices)}catch(e){W.error=tu(e)}finally{vu.value=!0}}function Fu(e){for(let t of e){let e=t.status===`online`?t.tree?.sessions[0]:void 0,n=e?.agents.find(e=>e.kind===`root`)??e?.agents[0];if(e&&n)return ku({deviceId:t.id,sessionId:e.id,agentId:n.id})}}A(()=>[Cu.status.value,Tu.value],([e,t])=>{e===`fault`&&!t&&xu.value&&(G(`That session was archived on its device.`),ku(void 0))});var Iu=B(()=>bu.value?.info?.models??[]),Lu=Cu.state,Ru=B(()=>Su.state.value.agents.length?Su.state.value.agents:Tu.value?.agents??[]),zu=B(()=>U.value?El(Ru.value,U.value.agentId):[]),Bu=B(()=>{let e=U.value?.agentId;if(e===void 0)return[];let t=Ru.value,n=new Set([e]);for(let e=!0;e;){e=!1;for(let r of t)r.ownerAgentId!==void 0&&n.has(r.ownerAgentId)&&!n.has(r.id)&&(n.add(r.id),e=!0)}let r=Su.state.value.tasks,i=new Map(r.map(e=>[e.id,e])),a=new Map(t.map(e=>[e.id,e.ownerTaskId]));return r.filter(e=>n.has(e.conversationId)).map(e=>{let t=e,n=!1,r=new Set;for(;t&&!r.has(t.id);){if(r.add(t.id),t.background){n=!0;break}let e=t.owner??a.get(t.conversationId);t=e===void 0?void 0:i.get(e)}return{...e,effectiveBackground:n}})}),Vu=B(()=>Lu.value.running||Bu.value.some(e=>!e.effectiveBackground&&e.conversationId===U.value?.agentId)),Hu=B(()=>yl(Lu.value.usage)),Uu=B(()=>{let e=Lu.value.agent.model;return Iu.value.find(t=>t.provider===e?.provider&&t.id===e?.modelId)}),Wu=an(),Gu=0;async function Ku(){let e=Du.value,t=++Gu;if(!e||!xu.value)return void(Wu.value=void 0);try{let n=await e.get();t===Gu&&(Wu.value=n)}catch{t===Gu&&(Wu.value=void 0)}}A([Du,xu],()=>void Ku(),{immediate:!0});var W=Gt({error:``,toast:``,drawer:!1,inspectorOverlay:!1,tab:`session`,composer:``,dialog:void 0}),qu,Ju=Gt([]),Yu=1;function Xu(){for(let e of Ju)e.read=!0}function G(e){W.toast=e,e&&(Ju.unshift({id:Yu++,text:e,at:Date.now(),read:!1}),Ju.length>50&&(Ju.length=50)),clearTimeout(qu),qu=setTimeout(()=>W.toast=``,4500)}async function Zu(e){W.error=``;try{return await e()}catch(e){W.error=tu(e);return}}function Qu(e){W.composer=e,setTimeout(()=>document.querySelector(`.composer textarea`)?.focus())}var $u=e=>Intl.NumberFormat(`en`,{notation:`compact`,maximumFractionDigits:1}).format(e),ed=e=>JSON.stringify(e,null,2),td=(e=``)=>zl(Iu.value.find(t=>t.id===e)?.icon);function nd(e){if(!e)return`never`;let t=Math.max(0,Math.round((Date.now()-e)/1e3));return t<60?`${t}s ago`:t<3600?`${Math.round(t/60)}m ago`:t<86400?`${Math.round(t/3600)}h ago`:`${Math.round(t/86400)}d ago`}var rd=O(!1);async function id(){Vu.value&&!rd.value&&Du.value&&(rd.value=!0,await Zu(()=>Du.value.abort(!1))&&G(`Foreground work interrupted. Background jobs continue.`),rd.value=!1)}var ad=window.matchMedia(`(max-width: 1100px)`),od=O(ad.matches);ad.addEventListener(`change`,e=>od.value=e.matches);var sd=B(()=>od.value?W.inspectorOverlay:_u.inspector);function cd(e){e&&(W.tab=e),od.value?(W.drawer=!1,W.inspectorOverlay=!0):_u.inspector=!0}function ld(){od.value?W.inspectorOverlay=!1:_u.inspector=!1}function ud(){od.value?(W.drawer=!W.drawer)&&(W.inspectorOverlay=!1,_u.tree=!0):_u.tree=!_u.tree}function dd(){sd.value?ld():cd()}var fd=/Mac|iPhone|iPad/.test(navigator.userAgent),pd=fd?{tree:`Ctrl+N`,inspector:`Ctrl+T`}:{tree:`Alt+Shift+N`,inspector:`Alt+Shift+T`};function md(e){if(!(!(fd?e.ctrlKey&&!e.metaKey&&!e.altKey&&!e.shiftKey:e.altKey&&e.shiftKey&&!e.ctrlKey&&!e.metaKey)||e.repeat||e.isComposing)){if(e.code===`KeyN`)return`tree`;if(e.code===`KeyT`)return`inspector`}}var hd={class:`topbar`},gd={class:`brand`},_d={class:`daemon`,"data-testid":`topbar-stats`},vd=[`title`],yd={class:`top-actions`},bd={key:0,class:`usage-chip`,title:`This session's token usage and cost`},xd=[`aria-label`,`title`],Sd={key:0,class:`bell-dot`},Cd={key:0,class:`hint`},wd={class:`when`},Td=[`disabled`],Ed=[`disabled`],Dd=kr({__name:`TopBar`,emits:[`newSession`],setup(e,{emit:t}){let n=O(!1),r=B(()=>Ju.filter(e=>!e.read).length),i=()=>{n.value=!n.value,n.value&&Xu()},a=e=>{let t=Math.round((Date.now()-e)/1e3);return t<60?`${t}s`:t<3600?`${Math.floor(t/60)}m`:`${Math.floor(t/3600)}h`},o=B(()=>Hu.value.input+Hu.value.output+Hu.value.cacheRead+Hu.value.cacheWrite),s=B(()=>(Hu.value.inputCost??0)+(Hu.value.outputCost??0)+(Hu.value.cacheReadCost??0)+(Hu.value.cacheWriteCost??0)),c=B(()=>pu.devices.value.filter(e=>e.status===`online`).length),l=B(()=>pu.devices.value.reduce((e,t)=>e+(t.tree?.sessions.length??0),0)),u=B(()=>pu.devices.value.reduce((e,t)=>e+(t.tree?.sessions.reduce((e,t)=>e+t.agents.length,0)??0),0)),d=O(!1);async function f(){let e=Ou.value,t=U.value;if(!e||!t||d.value)return;d.value=!0;let n=await Zu(()=>e.createAgent({}));d.value=!1,n&&(ku({...t,agentId:n.id}),G(`New agent. Same session, same shared App State.`))}let p=t;return(e,t)=>(N(),P(`header`,hd,[I(`div`,gd,[I(`button`,{class:`icon-button tree-toggle`,"aria-label":`Toggle network`,title:`Network`,onClick:t[0]||=e=>k(W).drawer=!k(W).drawer},[L(k(Uc),{size:19})]),t[6]||=I(`img`,{class:`brandmark`,src:`/icons/durable-pi.svg`,alt:`Durable Pi`},null,-1),t[7]||=I(`strong`,null,`Durable Pi`,-1)]),t[15]||=I(`span`,{class:`topbar-sep`,"aria-hidden":`true`},null,-1),I(`div`,_d,[I(`span`,{class:T([`dot`,{off:!c.value}]),"aria-hidden":`true`},null,2),I(`span`,{class:`network-summary`,title:`${c.value} of ${k(pu).devices.value.length} devices online`},[L(k(Rc),{size:16}),R(E(c.value)+` of `+E(k(pu).devices.value.length)+` online`,1)],8,vd),t[10]||=I(`span`,{class:`sep`,"aria-hidden":`true`},`·`,-1),I(`span`,null,[I(`b`,null,E(l.value),1),t[8]||=R(` sessions`,-1)]),t[11]||=I(`span`,{class:`sep`,"aria-hidden":`true`},`·`,-1),I(`span`,null,[I(`b`,null,E(u.value),1),t[9]||=R(` agents`,-1)])]),I(`div`,yd,[I(`span`,{class:T([`chip connection`,{accent:k(fu)===`live`}])},[I(`span`,{class:T([`dot`,{off:k(fu)!==`live`}]),"aria-hidden":`true`},null,2),R(E(k(fu)===`live`?`Connected`:`Reconnecting`),1)],2),o.value?(N(),P(`span`,bd,E(o.value.toLocaleString())+` tok · $`+E(s.value.toFixed(3)),1)):z(``,!0),I(`button`,{class:`icon-button`,"aria-label":`Notifications${r.value?` (${r.value} unread)`:``}`,title:`Notification center${r.value?` — ${r.value} unread`:``}`,onClick:i},[L(k(Qs),{size:18}),r.value?(N(),P(`i`,Sd,E(r.value>9?`9+`:r.value),1)):z(``,!0)],8,xd),n.value?(N(),P(`div`,{key:1,class:`notif-panel`,onClick:t[2]||=Ms(()=>{},[`stop`])},[I(`header`,null,[t[12]||=I(`b`,null,`Notifications`,-1),I(`button`,{class:`icon-button`,"aria-label":`Close notifications`,onClick:t[1]||=e=>n.value=!1},`✕`)]),k(Ju).length?z(``,!0):(N(),P(`p`,Cd,`Nothing yet — events land here as they happen.`)),I(`ul`,null,[(N(!0),P(M,null,j(k(Ju),e=>(N(),P(`li`,{key:e.id,class:T({unread:!e.read})},[I(`span`,wd,E(a(e.at)),1),I(`span`,null,E(e.text),1)],2))),128))])])):z(``,!0),I(`button`,{class:`icon-button`,title:`How this works`,"aria-label":`How this works`,onClick:t[3]||=e=>k(W).dialog={kind:`help`}},[L(k(oc),{size:19})]),I(`button`,{class:`secondary small new-agent-button`,disabled:!k(U)||!k(xu)||d.value,title:`Start a fresh agent in this session`,onClick:f},[L(k(qc),{size:18}),t[13]||=R(`New agent `,-1)],8,Td),I(`button`,{class:`primary small`,onClick:t[4]||=e=>p(`newSession`)},[L(k(qc),{size:18}),t[14]||=R(`New session `,-1)]),I(`button`,{class:`icon-button inspector-toggle`,"aria-label":`Toggle inspector`,title:`Inspector`,disabled:!k(U)||!k(xu),onClick:t[5]||=e=>k(W).inspectorOverlay?k(ld)():k(cd)()},[L(k(Wc),{size:19})],8,Ed)])]))}}),Od=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},kd=Od(Dd,[[`__scopeId`,`data-v-15b1b2ee`]]),Ad={class:`mnav`,"aria-label":`Panels`},jd={key:0,class:`badge`},Md=kr({__name:`MobileNav`,setup(e){function t(){W.drawer=!1,W.inspectorOverlay=!1}return(e,n)=>(N(),P(`nav`,Ad,[I(`button`,{type:`button`,class:T({"is-on":!k(W).drawer&&!k(sd)}),onClick:t},[L(k(Fc),{size:18}),n[2]||=R(`Chat `,-1)],2),I(`button`,{type:`button`,class:T({"is-on":k(sd)}),onClick:n[0]||=e=>k(sd)?k(ld)():k(cd)()},[L(k(Wc),{size:18}),n[3]||=R(`Details`,-1),k(Bu).length?(N(),P(`span`,jd,E(k(Bu).length),1)):z(``,!0)],2),I(`button`,{type:`button`,class:T({"is-on":k(W).drawer}),onClick:n[1]||=e=>k(ud)()},[L(k(ol),{size:18}),n[4]||=R(`Network `,-1)],2)]))}}),Nd=[`width`,`height`,`aria-label`],Pd=[`width`,`height`,`aria-label`],Fd=kr({__name:`DeviceIcon`,props:{device:{},size:{default:16}},setup(e){let t=e,n=B(()=>{let e=t.device;return e?.kind===`exe-dev`||e?.url?.includes(`.exe.xyz`)?`exe`:e?.info?.platform.startsWith(`darwin`)?`apple`:e?.kind===`local`?`laptop`:`server`}),r=B(()=>{let e={exe:`exe.dev VM`,apple:`macOS`,laptop:`This computer`,server:`Server`}[n.value];return t.device?.transport===`tunnel`?`${e} (tunnel)`:e});return(t,i)=>n.value===`exe`?(N(),P(`svg`,{key:0,class:`device-icon exe`,viewBox:`0 0 512 512`,width:e.size,height:e.size,role:`img`,"aria-label":r.value},[I(`title`,null,E(r.value),1),i[0]||=I(`path`,{fill:`currentColor`,"fill-rule":`evenodd`,d:`M8 332.2l.9 1.4 1.5 .5 38.5-4.1 3.1 .4 2.7 2.2 8.8 13.2 10.1 12.8 1.1 2.6-.3 3.2-16.4 35.6 0 1.7 1 1.2 2.2 0 33.8-18.2 3.1-.8 3.4 1 12.4 8.7 15.3 9.4 1.5 2.1 .5 2.5-3.1 38.9 .4 1.5 1.3 .9 2.3-.7 25.9-29.2 2.1-1.3 2.8-.4 16.3 4.4 15.7 3.2 3 1.8 1.6 2.8 9.8 37.1 1.5 1.6 1.7-.1 1.1-1.1 14.5-35.6 1.8-2.5 3.4-1.5 15.7-1.1 16.1-2.4 3.2 .5 2.3 1.8 22.4 32 2.2 .9 1.4-.7 .6-1.5 1.4-39 1-2.7 2.4-2.2 14.7-6.8 13.8-7.8 3.4-.7 3 1 32.4 21 2.3 0 1.1-1.1 0-1.6-13.4-36.6-.3-2.5 .7-2.4 12.2-13.9 8.8-12.1 2.8-2 3.1-.3 38.4 5.4 2.1-.9 .5-1.5-.6-1.4-27.5-27.4-1.6-2.7-.2-3.1 4.6-15.8 2.9-15.8 1.3-2.6 2.5-1.9 37.3-12.2 1.6-1.9-.3-1.5-1.1-1-36.8-12.5-2.4-1.4-1.8-3.3-3.1-17.7 0-2.2 .9-2.4 3.1-2.9 10.6-15.3 3.3-1.8 3.4 .3 3.8 3 4.5 6.8 8.9 11.2 12.5 12.5 6.2 4.8 7.3 4.3 6.3 2.4 3.8 .3 4-.3 5.1-2.4 6.5-7 4.8-10.6 3.3-11.9 2-14.1 1.3-3.4 0-66.6-.8-2.6-2-13.6-3.8-14.6-7.5-18.7-4.7-9.4-4-6-7.2-7.1-5-2.1-6.5 0-2.2 .7-6 3.5-12 12-13.1 17.8-11.7 18.2-3.7 1.6-11.8-.1-3.1-1.6-1.8-2.9-.3-8.8-2.8-12.7-1.5-4-7.1-13.3-5.9-7.8-10.7-9.3-8.6-4.7-5.9-2-4.1-.5-6.7-.5-4.1 .5-7 2-7.3 3.8-7.5 7-2.2 3.2-2.5 5.5-2.8 10.5-.5 3.6 .1 17.1-.3 2.2-1.1 1.9-1.7 1.5-3.7 1.5-2.6 .3-27.5-10.5-14.5-4-15.7-3.2-2.6-1.3-1.9-3-9.9-37.5-.9-1.2-1.4-.4-1.3 .4-.8 1-14.7 36.1-1.8 2.1-2.2 1.2-17.8 1.4-15 2.2-3.4-.7-2.4-2.1-22-31.5-2-.9-1.5 .5-.7 1.5-1.4 38.6-.9 3-2.5 2.5-14.7 6.8-13.8 7.8-2.8 .7-3.1-.7-32.9-21.3-2.3 0-1.1 1.1-.1 1.6 13.6 36.9 0 3.1-1.2 2.6-10.8 12-9.5 12.9-2.8 2-3.2 .3-38.4-5.4-1.5 .4-.9 1.4 .6 2.1 27.6 27.6 1.2 1.8 .5 2.2-3 10.6-1.5 2.4-2.4 1.6-5.8 1-4.4 1.8-3.8 3-3 3.8-1.7 4-.7 4.7 .4 4.7 1.5 4.2 .3 .5 30.7 0 1.7 .6 1.4 1.1 1.1 3-1.1 2.9-2.7 1.6-31.1 .1-.6 1.1-1.2 3.6-.4 4.1 .4 4.2 1.2 3.5 2.5 4 3.2 3.1 4.1 2.3 5.6 1.8 2.4 2.1 .9 2.1 5.1 21.2-.6 2.1-1.2 1.9-28.5 26.5zM283.6 189.4l6.6 .5 5.6 1.2 6.2 2.2 5.9 3.1 4.6 3.4 4.8 4.5 3.5 4.4 3.4 5.8 2.6 6.2 1.6 6.4 .6 5.6-.2 6.7-1.1 6.5-1.7 5.4-2.9 6-3.6 5.5-7.1 7.3-8.4 5.4-9.4 3.5-9.9 1.3-11-1-40.4-10.4-2.8-1.1-3.1-2.4-1.7-.6-.9-1.1-.1-2.2-1.4-2.2 1.6-6.3 18.1-38.5 4.7-7.5 7.1-7.3 8.4-5.4 9.4-3.5zM173.9 198l-1.1 5.9-2.3 5.5-3.4 5-4.2 4.3-5 3.3-5.5 2.3-5.9 1.2-6 0-5.9-1.2-5.6-2.3-5-3.3-4.2-4.3-3.3-5-2.3-5.5-1.2-5.9 0-6 1.2-5.9 2.3-5.5 3.3-5 4.2-4.3 5-3.3 5.6-2.3 5.9-1.2 6 0 5.9 1.2 5.5 2.3 5 3.3 4.2 4.3 3.4 5 2.3 5.5 1.1 5.9zM315.1 213.5l-63.1 37.7 69.5-12.9 0-6.2-1-6.5-2.1-6.1zM237.3 260l-2.6 1.5 40.6 10.5 7.4 .9 7.4-.5 5.4-1.4 5.2-2.1 8.5-5.8 3.8-4.1 3.2-4.5 2.6-5 1.6-4.9zM284.5 196.9l-7.4 .5-8.1 2.3-7.3 4.1-6.3 5.5-5.8 8.5-17.4 37.1 3-.6 76.1-45.5-5.8-5-6.5-3.7-7.1-2.3zM141.1 183.6l-1.1-2.9-2-2.3-2.8-1.3-3.1-.1-2.9 1-2.3 2.1-1.3 2.8-.1 3 1 2.9 2.1 2.3 2.7 1.3 3.1 .2 2.9-1.1 2.3-2 1.3-2.8z`},null,-1)],8,Nd)):n.value===`apple`?(N(),P(`svg`,{key:1,class:`device-icon apple`,viewBox:`0 0 384 512`,width:e.size,height:e.size,role:`img`,"aria-label":r.value},[I(`title`,null,E(r.value),1),i[1]||=I(`path`,{fill:`currentColor`,d:`M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z`},null,-1)],8,Pd)):n.value===`laptop`?(N(),F(k(Oc),{key:2,class:`device-icon`,size:e.size,"aria-label":r.value},null,8,[`size`,`aria-label`])):(N(),F(k(Zc),{key:3,class:`device-icon`,size:e.size,"aria-label":r.value},null,8,[`size`,`aria-label`]))}}),Id=new Map,Ld=new Map;async function Rd(e,t){let n=t.filter(t=>!Wd(Ud(e,t),zd));if(n.length)try{let t=await H(e).gitStatusBatch(n,{timeoutMs:6e4});for(let[n,r]of Object.entries(t)){let t=Ud(e,n);t.status=r,t.at=Date.now(),t.error=``}}catch{}}var zd=6e4,Bd=!1;function Vd(){Bd||(Bd=!0,A(()=>pu.devices.value,e=>{let t=Date.now();for(let n of e){let e=(n.tree?.git??[]).filter(e=>t-e.at<6e4);if(e.length)for(let r of[...Id.keys()]){let[i,a]=r.split(`::`);if(i!==n.id||!a)continue;let o=Id.get(r);e.some(e=>a===e.root||a.startsWith(e.root+`/`)||a.startsWith(e.root+`\\`))&&(o.loading||t-o.at<4e3||Gd(i,a,{force:!0}))}}}))}var Hd=(e,t)=>`${e}::${t}`;function Ud(e,t){let n=Hd(e,t),r=Id.get(n);return r||(r=Gt({at:0,status:null,error:``,loading:!1,refreshing:!1}),Id.set(n,r)),r}var Wd=(e,t)=>e.at>0&&Date.now()-e.at<t&&(e.status!==null||e.error);async function Gd(e,t,n={}){let{staleMs:r=6e4,force:i=!1,timeoutMs:a=6e4}=n;if(!e||!t)return;let o=Hd(e,t),s=Ud(e,t);if(!i&&Wd(s,r))return;let c=Ld.get(o);if(c)return c;s.status===null&&!s.error?s.loading=!0:s.refreshing=!0,s.error=``;let l=(async()=>{try{s.status=await H(e).gitStatus(t,{timeoutMs:a}),s.at=Date.now()}catch(e){let t=e.message??``;s.error=/fetch failed|Cannot reach|Failed to fetch|NetworkError|abort/i.test(t)?`device unreachable — check that it is online, then retry (${t.slice(0,80)})`:t.slice(0,160),s.at=Date.now()}finally{s.loading=!1,s.refreshing=!1,Ld.delete(o)}})();return Ld.set(o,l),l}var Kd=new Map;function qd(){A(()=>pu.devices.value.map(e=>`${e.id}:${e.status}:${e.tree?.sessions.length??0}:${e.tree?.sessions.map(e=>e.cwd).join(`|`)}`).join(`;`),()=>{for(let e of pu.devices.value){if(e.status!==`online`||!e.tree?.sessions.length)continue;let t=Date.now();t-(Kd.get(e.id)??0)<6e4||(Kd.set(e.id,t),Rd(e.id,e.tree.sessions.map(e=>e.cwd)))}},{immediate:!0})}var Jd=(e,t)=>Ud(e,t).status?.branch,Yd=[`aria-level`,`aria-expanded`,`aria-selected`,`data-key`,`title`],Xd=[`aria-label`],Zd={key:1,class:`chev`},Qd={class:`name`},$d={class:`badge`},ef=[`aria-label`],tf=[`disabled`,`aria-label`],nf=[`aria-label`],rf=[`checked`,`aria-label`],af={class:`name`},of={class:`path`},sf=[`title`],cf={key:2,class:`dot work`,title:`Working`},lf=[`title`],uf=[`disabled`,`aria-label`],df=[`disabled`,`aria-label`],ff=[`disabled`,`aria-label`],pf={class:`name`},mf={key:3,class:`meta`},hf={key:4,class:`dot work`,title:`Working`},gf=[`title`],_f=[`disabled`,`aria-label`],vf=Od(kr({__name:`TreeRow`,props:{node:{},depth:{},open:{type:Boolean},selected:{type:Boolean},focused:{type:Boolean},online:{type:Boolean},checkbox:{type:Boolean},checked:{type:Boolean}},emits:[`toggle`,`activate`,`action`,`check`],setup(e,{emit:t}){let n=e,r=t,i=B(()=>n.node.children.length>0),a=B(()=>n.node.type===`device`?n.node.device:void 0),o=B(()=>n.node.type===`session`?n.node.session:void 0),s=B(()=>n.node.type===`agent`?n.node.agent:void 0),c=B(()=>o.value?o.value.agents.reduce((e,t)=>e+t.background,0):s.value?.background??0),l=B(()=>o.value?.busy||s.value?.busy),u=B(()=>{let e=a.value;if(!e)return``;let t=e.tree?.sessions.length??0;switch(e.status){case`online`:return`${t} session${t===1?``:`s`}`;case`checking`:return`checking…`;case`unauthorized`:return e.hasToken?`token rejected`:`no token`;case`mismatch`:return`identity changed`;case`incompatible`:return`incompatible`;default:return`offline · ${nd(e.lastSeenAt)}`}}),d=B(()=>{let e=a.value?.status;return e===`online`?`on`:e===`checking`?`chk`:e===`offline`?`off`:`err`}),f=B(()=>{let e=n.node;return e.type===`session`?Jd(e.deviceId,e.session.cwd):void 0}),p=B(()=>a.value?.name??a.value?.id??o.value?.name??s.value?.name??``),m=B(()=>{if(a.value)return`${a.value.name} · ${a.value.url}${a.value.error?`\n${a.value.error}`:``}`;if(o.value)return`${o.value.name}\n${o.value.cwd}`;let e=s.value;return e.kind===`fork`?`Fork of agent #${e.parentId} at entry #${e.forkedAt}`:e.kind===`subagent`?`Subagent owned by agent #${e.ownerAgentId}`:`Root agent`});return(t,n)=>(N(),P(`div`,{class:T([`tree-row`,[e.node.type,{sel:e.selected,focus:e.focused,stale:e.node.stale}]]),style:_e({"--depth":e.depth}),role:`treeitem`,"aria-level":e.depth+1,"aria-expanded":i.value?e.open:void 0,"aria-selected":e.selected,"data-key":e.node.key,title:m.value,onClick:n[13]||=e=>r(`activate`)},[i.value?(N(),P(`button`,{key:0,class:`chev`,tabindex:`-1`,"aria-label":e.open?`Collapse ${p.value}`:`Expand ${p.value}`,onClick:n[0]||=Ms(e=>r(`toggle`),[`stop`])},[e.open?(N(),F(k(rc),{key:0,size:16})):(N(),F(k(ic),{key:1,size:16}))],8,Xd)):(N(),P(`span`,Zd)),a.value?(N(),P(M,{key:2},[I(`i`,{class:T([`dot`,d.value])},null,2),L(Fd,{device:a.value,size:16},null,8,[`device`]),I(`b`,Qd,E(p.value),1),I(`span`,$d,E(a.value.kind),1),I(`span`,{class:T([`meta`,{err:d.value===`err`}])},E(u.value),3),I(`span`,{class:`acts`,onClick:n[4]||=Ms(()=>{},[`stop`])},[a.value.pairing?(N(),P(`button`,{key:0,class:`icon-button`,"aria-label":`Manage credentials for ${p.value}`,title:`Manage device credentials, including while offline`,onClick:n[1]||=e=>r(`action`,`credentials`)},[L(k(Dc),{size:16})],8,ef)):z(``,!0),I(`button`,{class:`icon-button`,disabled:!e.online,"aria-label":`New session on ${p.value}`,title:`New session on this device`,onClick:n[2]||=e=>r(`action`,`new-session`)},[L(k(qc),{size:16})],8,tf),I(`button`,{class:`icon-button`,"aria-label":`Check ${p.value}`,title:`Check connection now`,onClick:n[3]||=e=>r(`action`,`check`)},[L(k(Yc),{size:16})],8,nf)])],64)):o.value?(N(),P(M,{key:3},[e.checkbox?(N(),P(`input`,{key:0,type:`checkbox`,class:`bulk-check`,checked:e.checked,"aria-label":`Select ${p.value}`,tabindex:`-1`,onClick:n[5]||=Ms(()=>{},[`stop`]),onChange:n[6]||=e=>r(`check`)},null,40,rf)):z(``,!0),L(k(_c),{class:`ico`,size:16}),I(`b`,af,E(p.value),1),I(`span`,of,`…/`+E(o.value.cwd.split(`/`).filter(Boolean).at(-1)),1),f.value?(N(),P(`span`,{key:1,class:`branch`,title:`git branch of ${o.value.cwd}`},`⎇ `+E(f.value),9,sf)):z(``,!0),l.value?(N(),P(`i`,cf)):z(``,!0),c.value?(N(),P(`span`,{key:3,class:`bg-count`,title:`${c.value} background task(s)`},[n[14]||=I(`i`,{class:`dot bg`},null,-1),R(E(c.value)+` bg`,1)],8,lf)):z(``,!0),I(`span`,{class:`acts`,onClick:n[10]||=Ms(()=>{},[`stop`])},[I(`button`,{class:`icon-button`,disabled:!e.online,"aria-label":`New agent in ${p.value}`,title:`New agent in this session`,onClick:n[7]||=e=>r(`action`,`new-agent`)},[L(k(qc),{size:16})],8,uf),I(`button`,{class:`icon-button`,disabled:!e.online,"aria-label":`Rename session ${p.value}`,title:`Rename session`,onClick:n[8]||=e=>r(`action`,`rename`)},[L(k(Gc),{size:16})],8,df),I(`button`,{class:`icon-button`,disabled:!e.online,"aria-label":`Archive session ${p.value}`,title:`Archive session`,onClick:n[9]||=e=>r(`action`,`archive`)},[L(k(Gs),{size:16})],8,ff)])],64)):s.value?(N(),P(M,{key:4},[s.value.kind===`fork`?(N(),F(k(xc),{key:0,class:`ico`,size:16})):s.value.kind===`subagent`?(N(),F(k(lc),{key:1,class:`ico`,size:16})):(N(),F(k(Fc),{key:2,class:`ico root`,size:16})),I(`span`,pf,E(p.value),1),s.value.kind===`fork`&&s.value.forkedAt!==void 0?(N(),P(`span`,mf,`@ #`+E(s.value.forkedAt),1)):z(``,!0),l.value?(N(),P(`i`,hf)):z(``,!0),c.value?(N(),P(`span`,{key:5,class:`bg-count`,title:`${c.value} background task(s)`},[n[15]||=I(`i`,{class:`dot bg`},null,-1),R(E(c.value),1)],8,gf)):z(``,!0),I(`span`,{class:`acts`,onClick:n[12]||=Ms(()=>{},[`stop`])},[I(`button`,{class:`icon-button`,disabled:!e.online,"aria-label":`Rename agent ${p.value}`,title:`Rename agent`,onClick:n[11]||=e=>r(`action`,`rename`)},[L(k(Gc),{size:16})],8,_f)])],64)):z(``,!0)],14,Yd))}}),[[`__scopeId`,`data-v-676e4b58`]]),yf={class:`tree-head`},bf=[`aria-label`,`title`],xf=[`title`],Sf={key:0,class:`bulk-bar`},Cf=[`disabled`],wf=[`disabled`],Tf={key:1,class:`hint tree-empty`,"data-testid":`tree-empty`},Ef={key:1,class:`panel-rail`,"aria-label":`Network (collapsed)`},Df=[`title`],Of=[`title`,`aria-label`,`onClick`],kf=Od(kr({__name:`NetworkSidebar`,setup(e){let t=B(()=>{let e=[],t=(n,r,i)=>{for(let a of n)e.push({node:a,depth:r,parent:i}),a.children.length&&hu.value.has(a.key)&&t(a.children,r+1,a.key)};return t(pu.tree.value,0),e}),n=O(),r=O(),i=O(!1),a=O(new Set),o=O(``),s=e=>{if(e.type!==`session`)return;let t=new Set(a.value);t.has(e.session.id)?t.delete(e.session.id):t.add(e.session.id),a.value=t},c=async e=>{o.value=e;let n=0,r=[];for(let i of t.value.map(e=>e.node)){if(i.type!==`session`||!a.value.has(i.session.id))continue;let t=l(i);if(!t)continue;let o=H(t.id);try{e===`archive`?await o.session(i.session.id).archive():await o.agent(i.session.id,1).abort(!0),n++,e===`archive`&&U.value?.sessionId===i.session.id&&ku(void 0)}catch{r.push(i.session.name)}}G(`${e}: ${n} done${r.length?`, ${r.length} failed (${r.slice(0,3).join(`, `)})`:``}`),a.value=new Set,o.value=``},l=e=>pu.devices.value.find(t=>t.id===(e.type===`device`?e.device.id:e.deviceId)),u=e=>l(e)?.status===`online`,d=e=>e.type===`agent`&&U.value?.deviceId===e.deviceId&&U.value.sessionId===e.sessionId&&U.value.agentId===e.agent.id;function f(e){if(n.value=e.key,i.value&&e.type===`session`)return s(e);if(e.type===`device`)return Mu(e.key);if(e.type===`agent`)return ku({deviceId:e.deviceId,sessionId:e.sessionId,agentId:e.agent.id});let t=e.session.agents.find(e=>e.kind===`root`)??e.session.agents[0];Mu(e.key,!0),t&&ku({deviceId:e.deviceId,sessionId:e.session.id,agentId:t.id})}async function p(e,t){let n=l(e);if(!n)return;let r=H(n.id);if(e.type===`device`){t===`new-session`?W.dialog={kind:`new-session`,deviceId:n.id}:t===`check`?await Zu(()=>eu.check(n.id)):t===`credentials`&&(W.dialog={kind:`credentials`,deviceId:n.id});return}if(e.type===`session`){let i=e.session;if(t===`new-agent`){let e=await Zu(()=>r.session(i.id).createAgent({}));e&&(ku({deviceId:n.id,sessionId:i.id,agentId:e.id}),G(`New agent. Same session, same shared App State.`))}else t===`rename`?W.dialog={kind:`prompt`,title:`Rename session`,label:`Session name`,value:i.name,submit:`Save name`,run:e=>r.session(i.id).rename(e)}:t===`archive`&&(W.dialog={kind:`prompt`,title:`Archive ${i.name}?`,hint:`Stops all of its work and moves its files to archive/ on ${n.id}. Nothing is deleted.`,submit:`Archive session`,danger:!0,run:async()=>{await r.session(i.id).archive(),U.value?.sessionId===i.id&&ku(void 0)}});return}let i=e.agent;t===`rename`&&(W.dialog={kind:`prompt`,title:`Rename agent`,label:`Agent name`,value:i.named?i.name:``,placeholder:i.name,submit:`Save name`,run:t=>r.agent(e.sessionId,i.id).rename(t)})}function m(e){let i=t.value.findIndex(e=>e.node.key===n.value),a=t.value[Math.max(0,Math.min(t.value.length-1,(i<0?0:i)+e))];a&&(n.value=a.node.key,jn(()=>r.value?.querySelector(`[data-key="${CSS.escape(a.node.key)}"]`)?.scrollIntoView({block:`nearest`})))}function h(){n.value??=t.value[0]?.node.key}function g(e){let r=t.value.find(e=>e.node.key===n.value);if(e.key===`ArrowDown`)m(1);else if(e.key===`ArrowUp`)m(-1);else if(e.key===`ArrowRight`&&r){if(!r.node.children.length)return;hu.value.has(r.node.key)?m(1):Mu(r.node.key,!0)}else if(e.key===`ArrowLeft`&&r)r.node.children.length&&hu.value.has(r.node.key)?Mu(r.node.key,!1):r.parent&&(n.value=r.parent);else if((e.key===`Enter`||e.key===` `)&&r)f(r.node);else return;e.preventDefault()}return(e,l)=>(N(),P(`aside`,{class:T([`network-sidebar`,{open:k(W).drawer,collapsed:!k(_u).tree&&!k(W).drawer}]),"aria-label":`Network`},[k(_u).tree||k(W).drawer?(N(),P(M,{key:0},[I(`header`,yf,[I(`span`,null,[L(k(Rc),{size:16}),l[6]||=R(`NETWORK`,-1)]),I(`button`,{class:T([`icon-button`,{on:i.value}]),"aria-label":i.value?`Exit bulk select`:`Bulk manage sessions`,title:i.value?`Exit bulk select`:`Bulk manage sessions (select → archive / abort)`,onClick:l[0]||=e=>(i.value=!i.value,a.value=new Set)},[L(k(Mc),{size:15})],10,bf),I(`button`,{class:`icon-button`,"aria-label":`Pair a device`,title:`Pair a device`,onClick:l[1]||=e=>k(W).dialog={kind:`pair`}},[L(k(jc),{size:15})]),I(`button`,{class:`icon-button panel-toggle`,"aria-label":`Collapse network`,title:`Collapse network (${k(pd).tree})`,onClick:l[2]||=e=>(k(_u).tree=!1,k(W).drawer=!1)},[L(k(Vc),{size:18})],8,xf)]),I(`div`,{ref_key:`list`,ref:r,class:`tree-list`,role:`tree`,tabindex:`0`,"aria-label":`Devices, sessions and agents`,onKeydown:g,onFocus:h},[i.value&&a.value.size?(N(),P(`div`,Sf,[I(`span`,null,E(a.value.size)+` selected`,1),I(`button`,{class:`small`,disabled:!!o.value,onClick:l[3]||=e=>c(`abort`)},`abort work`,8,Cf),I(`button`,{class:`small danger`,disabled:!!o.value,onClick:l[4]||=e=>c(`archive`)},E(o.value===`archive`?`archiving…`:`archive`),9,wf)])):z(``,!0),(N(!0),P(M,null,j(t.value,e=>(N(),F(vf,{key:e.node.key,node:e.node,depth:e.depth,open:k(hu).has(e.node.key),selected:d(e.node),focused:n.value===e.node.key,online:u(e.node),checkbox:i.value&&e.node.type===`session`,checked:e.node.type===`session`&&a.value.has(e.node.session.id),onToggle:t=>k(Mu)(e.node.key),onActivate:t=>f(e.node),onAction:t=>p(e.node,t),onCheck:t=>s(e.node)},null,8,[`node`,`depth`,`open`,`selected`,`focused`,`online`,`checkbox`,`checked`,`onToggle`,`onActivate`,`onAction`,`onCheck`]))),128)),t.value.length?z(``,!0):(N(),P(`p`,Tf,[...l[7]||=[R(` No devices yet. Declare them in `,-1),I(`code`,null,`dpi-network.yaml`,-1),R(` (start from `,-1),I(`code`,null,`dpi-network.example.yaml`,-1),R(`), then run `,-1),I(`code`,null,`just net up <id>`,-1),R(`. `,-1)]]))],544)],64)):(N(),P(`div`,Ef,[I(`button`,{class:`icon-button panel-toggle`,"aria-label":`Expand network`,title:`Expand network (${k(pd).tree})`,onClick:l[5]||=e=>k(_u).tree=!0},[L(k(Hc),{size:18})],8,Df),(N(!0),P(M,null,j(k(pu).devices.value,e=>(N(),P(`button`,{key:e.id,class:`rail-device`,title:`${e.id} · ${e.status}`,"aria-label":`Show ${e.id}`,onClick:t=>(k(_u).tree=!0,k(Mu)(e.id,!0))},[L(Fd,{device:e,size:20},null,8,[`device`]),I(`i`,{class:T([`dot`,e.status===`online`?`on`:e.status===`checking`?`chk`:e.status===`offline`?`off`:`err`])},null,2)],8,Of))),128))]))],2))}}),[[`__scopeId`,`data-v-7396cc32`]]);function Af(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var jf=Af();function Mf(e){jf=e}var Nf={exec:()=>null};function K(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(Ff.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var Pf=(()=>{try{return!0}catch{return!1}})(),Ff={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,`i`),blockquoteBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}>`)},If=/^(?:[ \t]*(?:\n|$))+/,Lf=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Rf=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,zf=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Bf=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Vf=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Hf=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Uf=K(Hf).replace(/bull/g,Vf).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),Wf=K(Hf).replace(/bull/g,Vf).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Gf=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Kf=/^[^\n]+/,qf=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Jf=K(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,qf).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Yf=K(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Vf).getRegex(),Xf=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,Zf=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Qf=K(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,Zf).replace(`tag`,Xf).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$f=K(Gf).replace(`hr`,zf).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Xf).getRegex(),ep={blockquote:K(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,$f).getRegex(),code:Lf,def:Jf,fences:Rf,heading:Bf,hr:zf,html:Qf,lheading:Uf,list:Yf,newline:If,paragraph:$f,table:Nf,text:Kf},tp=K(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,zf).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Xf).getRegex(),np={...ep,lheading:Wf,table:tp,paragraph:K(Gf).replace(`hr`,zf).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,tp).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Xf).getRegex()},rp={...ep,html:K(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,Zf).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Nf,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:K(Gf).replace(`hr`,zf).replace(`heading`,` *#{1,6} *[^
|
|
16
|
+
]`).replace(`lheading`,Uf).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).replace(`|tag`,``).getRegex()},ip=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,ap=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,op=/^( {2,}|\\)\n(?!\s*$)/,sp=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,cp=/[\p{P}\p{S}]/u,lp=/[\s\p{P}\p{S}]/u,up=/[^\s\p{P}\p{S}]/u,dp=K(/^((?![*_])punctSpace)/,`u`).replace(/punctSpace/g,lp).getRegex(),fp=/(?!~)[\p{P}\p{S}]/u,pp=/(?!~)[\s\p{P}\p{S}]/u,mp=/(?:[^\s\p{P}\p{S}]|~)/u,hp=K(/link|precode-code|html/,`g`).replace(`link`,/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace(`precode-`,Pf?"(?<!`)()":"(^^|[^`])").replace(`code`,/(?<b>`+)[^`]+\k<b>(?!`)/).replace(`html`,/<(?! )[^<>]*?>/).getRegex(),gp=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,_p=K(gp,`u`).replace(/punct/g,cp).getRegex(),vp=K(gp,`u`).replace(/punct/g,fp).getRegex(),yp=`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)`,bp=K(yp,`gu`).replace(/notPunctSpace/g,up).replace(/punctSpace/g,lp).replace(/punct/g,cp).getRegex(),xp=K(yp,`gu`).replace(/notPunctSpace/g,mp).replace(/punctSpace/g,pp).replace(/punct/g,fp).getRegex(),Sp=K(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)`,`gu`).replace(/notPunctSpace/g,up).replace(/punctSpace/g,lp).replace(/punct/g,cp).getRegex(),Cp=K(/^~~?(?:((?!~)punct)|[^\s~])/,`u`).replace(/punct/g,cp).getRegex(),wp=K(`^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,up).replace(/punctSpace/g,lp).replace(/punct/g,cp).getRegex(),Tp=K(/\\(punct)/,`gu`).replace(/punct/g,cp).getRegex(),Ep=K(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace(`scheme`,/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(`email`,/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Dp=K(Zf).replace(`(?:-->|$)`,`-->`).getRegex(),Op=K(`^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>`).replace(`comment`,Dp).replace(`attribute`,/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),kp=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,Ap=K(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace(`label`,kp).replace(`href`,/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace(`title`,/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),jp=K(/^!?\[(label)\]\[(ref)\]/).replace(`label`,kp).replace(`ref`,qf).getRegex(),Mp=K(/^!?\[(ref)\](?:\[\])?/).replace(`ref`,qf).getRegex(),Np=K(`reflink|nolink(?!\\()`,`g`).replace(`reflink`,jp).replace(`nolink`,Mp).getRegex(),Pp=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Fp={_backpedal:Nf,anyPunctuation:Tp,autolink:Ep,blockSkip:hp,br:op,code:ap,del:Nf,delLDelim:Nf,delRDelim:Nf,emStrongLDelim:_p,emStrongRDelimAst:bp,emStrongRDelimUnd:Sp,escape:ip,link:Ap,nolink:Mp,punctuation:dp,reflink:jp,reflinkSearch:Np,tag:Op,text:sp,url:Nf},Ip={...Fp,link:K(/^!?\[(label)\]\((.*?)\)/).replace(`label`,kp).getRegex(),reflink:K(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,kp).getRegex()},Lp={...Fp,emStrongRDelimAst:xp,emStrongLDelim:vp,delLDelim:Cp,delRDelim:wp,url:K(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace(`protocol`,Pp).replace(`email`,/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:K(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace(`protocol`,Pp).getRegex()},Rp={...Lp,br:K(op).replace(`{2,}`,`*`).getRegex(),text:K(Lp.text).replace(`\\b_`,`\\b_| {2,}\\n`).replace(/\{2,\}/g,`*`).getRegex()},zp={normal:ep,gfm:np,pedantic:rp},Bp={normal:Fp,gfm:Lp,breaks:Rp,pedantic:Ip},Vp={"&":`&`,"<":`<`,">":`>`,'"':`"`,"'":`'`},Hp=e=>Vp[e];function Up(e,t){if(t){if(Ff.escapeTest.test(e))return e.replace(Ff.escapeReplace,Hp)}else if(Ff.escapeTestNoEncode.test(e))return e.replace(Ff.escapeReplaceNoEncode,Hp);return e}function Wp(e){try{e=encodeURI(e).replace(Ff.percentDecode,`%`)}catch{return null}return e}function Gp(e,t){let n=e.replace(Ff.findPipe,(e,t,n)=>{let r=!1,i=t;for(;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(Ff.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t){if(n.length>t)n.splice(t);else for(;n.length<t;)n.push(``)}for(;r<n.length;r++)n[r]=n[r].trim().replace(Ff.slashPipe,`|`);return n}function Kp(e,t,n){let r=e.length;if(r===0)return``;let i=0;for(;i<r;){let a=e.charAt(r-i-1);if(a===t&&!n)i++;else if(a!==t&&n)i++;else break}return e.slice(0,r-i)}function qp(e,t){if(e.indexOf(t[1])===-1)return-1;let n=0;for(let r=0;r<e.length;r++)if(e[r]===`\\`)r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return n>0?-2:-1}function Jp(e,t=0){let n=t,r=``;for(let t of e)if(t===` `){let e=4-n%4;r+=` `.repeat(e),n+=e}else r+=t,n++;return r}function Yp(e,t,n,r,i){let a=t.href,o=t.title||null,s=e[1].replace(i.other.outputLinkReplace,`$1`);r.state.inLink=!0;let c={type:e[0].charAt(0)===`!`?`image`:`link`,raw:n,href:a,title:o,text:s,tokens:r.inlineTokens(s)};return r.state.inLink=!1,c}function Xp(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(r===null)return t;let i=r[1];return t.split(`
|
|
17
|
+
`).map(e=>{let t=e.match(n.other.beginningSpace);if(t===null)return e;let[r]=t;return r.length>=i.length?e.slice(i.length):e}).join(`
|
|
18
|
+
`)}var Zp=class{options;rules;lexer;constructor(e){this.options=e||jf}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:`space`,raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=t[0].replace(this.rules.other.codeRemoveIndent,``);return{type:`code`,raw:t[0],codeBlockStyle:`indented`,text:this.options.pedantic?e:Kp(e,`
|
|
19
|
+
`)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],n=Xp(e,t[3]||``,this.rules);return{type:`code`,raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,`$1`):t[2],text:n}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){let t=Kp(e,`#`);(this.options.pedantic||!t||this.rules.other.endingSpaceChar.test(t))&&(e=t.trim())}return{type:`heading`,raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:`hr`,raw:Kp(t[0],`
|
|
20
|
+
`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=Kp(t[0],`
|
|
21
|
+
`).split(`
|
|
22
|
+
`),n=``,r=``,i=[];for(;e.length>0;){let t=!1,a=[],o=0;for(;o<e.length;o++)if(this.rules.other.blockquoteStart.test(e[o]))a.push(e[o]),t=!0;else if(!t)a.push(e[o]);else break;e=e.slice(o);let s=a.join(`
|
|
23
|
+
`),c=s.replace(this.rules.other.blockquoteSetextReplace,`
|
|
24
|
+
$1`).replace(this.rules.other.blockquoteSetextReplace2,``);n=n?`${n}
|
|
25
|
+
${s}`:s,r=r?`${r}
|
|
26
|
+
${c}`:c;let l=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(c,i,!0),this.lexer.state.top=l,e.length===0)break;let u=i.at(-1);if(u?.type===`code`)break;if(u?.type===`blockquote`){let t=u,a=t.raw+`
|
|
27
|
+
`+e.join(`
|
|
28
|
+
`),o=this.blockquote(a);i[i.length-1]=o,n=n.substring(0,n.length-t.raw.length)+o.raw,r=r.substring(0,r.length-t.text.length)+o.text;break}if(u?.type===`list`){let t=u,a=t.raw+`
|
|
29
|
+
`+e.join(`
|
|
30
|
+
`),o=this.list(a);i[i.length-1]=o,n=n.substring(0,n.length-u.raw.length)+o.raw,r=r.substring(0,r.length-t.raw.length)+o.raw,e=a.substring(i.at(-1).raw.length).split(`
|
|
31
|
+
`);continue}}return{type:`blockquote`,raw:n,tokens:i,text:r}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),r=n.length>1,i={type:`list`,raw:``,ordered:r,start:r?+n.slice(0,-1):``,loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:`[*+-]`);let a=this.rules.other.listItemRegex(n),o=!1;for(;e;){let n=!1,r=``,s=``;if(!(t=a.exec(e))||this.rules.block.hr.test(e))break;r=t[0],e=e.substring(r.length);let c=Jp(t[2].split(`
|
|
32
|
+
`,1)[0],t[1].length),l=e.split(`
|
|
33
|
+
`,1)[0],u=!c.trim(),d=0;if(this.options.pedantic?(d=2,s=c.trimStart()):u?d=t[1].length+1:(d=c.search(this.rules.other.nonSpaceChar),d=d>4?1:d,s=c.slice(d),d+=t[1].length),u&&this.rules.other.blankLine.test(l)&&(r+=l+`
|
|
34
|
+
`,e=e.substring(l.length+1),n=!0),!n){let t=this.rules.other.nextBulletRegex(d),n=this.rules.other.hrRegex(d),i=this.rules.other.fencesBeginRegex(d),a=this.rules.other.headingBeginRegex(d),o=this.rules.other.htmlBeginRegex(d),f=this.rules.other.blockquoteBeginRegex(d);for(;e;){let p=e.split(`
|
|
35
|
+
`,1)[0],m;if(l=p,this.options.pedantic?(l=l.replace(this.rules.other.listReplaceNesting,` `),m=l):m=l.replace(this.rules.other.tabCharGlobal,` `),i.test(l)||a.test(l)||o.test(l)||f.test(l)||t.test(l)||n.test(l))break;if(m.search(this.rules.other.nonSpaceChar)>=d||!l.trim())s+=`
|
|
36
|
+
`+m.slice(d);else{if(u||c.replace(this.rules.other.tabCharGlobal,` `).search(this.rules.other.nonSpaceChar)>=4||i.test(c)||a.test(c)||n.test(c))break;s+=`
|
|
37
|
+
`+l}u=!l.trim(),r+=p+`
|
|
38
|
+
`,e=e.substring(p.length+1),c=m.slice(d)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(r)&&(o=!0)),i.items.push({type:`list_item`,raw:r,task:!!this.options.gfm&&this.rules.other.listIsTask.test(s),loose:!1,text:s,tokens:[]}),i.raw+=r}let s=i.items.at(-1);if(s)s.raw=s.raw.trimEnd(),s.text=s.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let e of i.items){if(this.lexer.state.top=!1,e.tokens=this.lexer.blockTokens(e.text,[]),e.task){if(e.text=e.text.replace(this.rules.other.listReplaceTask,``),e.tokens[0]?.type===`text`||e.tokens[0]?.type===`paragraph`){e.tokens[0].raw=e.tokens[0].raw.replace(this.rules.other.listReplaceTask,``),e.tokens[0].text=e.tokens[0].text.replace(this.rules.other.listReplaceTask,``);for(let e=this.lexer.inlineQueue.length-1;e>=0;e--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[e].src)){this.lexer.inlineQueue[e].src=this.lexer.inlineQueue[e].src.replace(this.rules.other.listReplaceTask,``);break}}let t=this.rules.other.listTaskCheckbox.exec(e.raw);if(t){let n={type:`checkbox`,raw:t[0]+` `,checked:t[0]!==`[ ]`};e.checked=n.checked,i.loose?e.tokens[0]&&[`paragraph`,`text`].includes(e.tokens[0].type)&&`tokens`in e.tokens[0]&&e.tokens[0].tokens?(e.tokens[0].raw=n.raw+e.tokens[0].raw,e.tokens[0].text=n.raw+e.tokens[0].text,e.tokens[0].tokens.unshift(n)):e.tokens.unshift({type:`paragraph`,raw:n.raw,text:n.raw,tokens:[n]}):e.tokens.unshift(n)}}if(!i.loose){let t=e.tokens.filter(e=>e.type===`space`);i.loose=t.length>0&&t.some(e=>this.rules.other.anyLine.test(e.raw))}}if(i.loose)for(let e of i.items){e.loose=!0;for(let t of e.tokens)t.type===`text`&&(t.type=`paragraph`)}return i}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:`html`,block:!0,raw:t[0],pre:t[1]===`pre`||t[1]===`script`||t[1]===`style`,text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal,` `),n=t[2]?t[2].replace(this.rules.other.hrefBrackets,`$1`).replace(this.rules.inline.anyPunctuation,`$1`):``,r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,`$1`):t[3];return{type:`def`,tag:e,raw:t[0],href:n,title:r}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=Gp(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,``).split(`|`),i=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,``).split(`
|
|
39
|
+
`):[],a={type:`table`,raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let e of r)this.rules.other.tableAlignRight.test(e)?a.align.push(`right`):this.rules.other.tableAlignCenter.test(e)?a.align.push(`center`):this.rules.other.tableAlignLeft.test(e)?a.align.push(`left`):a.align.push(null);for(let e=0;e<n.length;e++)a.header.push({text:n[e],tokens:this.lexer.inline(n[e]),header:!0,align:a.align[e]});for(let e of i)a.rows.push(Gp(e,a.header.length).map((e,t)=>({text:e,tokens:this.lexer.inline(e),header:!1,align:a.align[t]})));return a}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let e=t[1].trim();return{type:`heading`,raw:t[0],depth:t[2].charAt(0)===`=`?1:2,text:e,tokens:this.lexer.inline(e)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e=t[1].charAt(t[1].length-1)===`
|
|
40
|
+
`?t[1].slice(0,-1):t[1];return{type:`paragraph`,raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:`text`,raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:`escape`,raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:`html`,raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let e=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;let t=Kp(e.slice(0,-1),`\\`);if((e.length-t.length)%2==0)return}else{let e=qp(t[2],`()`);if(e===-2)return;if(e>-1){let n=(t[0].indexOf(`!`)===0?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=``}}let n=t[2],r=``;if(this.options.pedantic){let e=this.rules.other.pedanticHrefTitle.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):``;return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(n=this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?n.slice(1):n.slice(1,-1)),Yp(t,{href:n&&n.replace(this.rules.inline.anyPunctuation,`$1`),title:r&&r.replace(this.rules.inline.anyPunctuation,`$1`)},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let e=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,` `).toLowerCase()];if(!e){let e=n[0].charAt(0);return{type:`text`,raw:e,text:e}}return Yp(n,e,n[0],this.lexer,this.rules)}}emStrong(e,t,n=``){let r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||!r[1]&&!r[2]&&!r[3]&&!r[4]||r[4]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!(r[1]||r[3])||!n||this.rules.inline.punctuation.exec(n))){let n=[...r[0]].length-1,i,a,o=n,s=0,c=r[0][0]===`*`?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+n);(r=c.exec(t))!==null;){if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!i)continue;if(a=[...i].length,r[3]||r[4]){o+=a;continue}if((r[5]||r[6])&&n%3&&!((n+a)%3)){s+=a;continue}if(o-=a,o>0)continue;a=Math.min(a,a+o+s);let t=[...r[0]][0].length,c=e.slice(0,n+r.index+t+a);if(Math.min(n,a)%2){let e=c.slice(1,-1);return{type:`em`,raw:c,text:e,tokens:this.lexer.inlineTokens(e)}}let l=c.slice(2,-2);return{type:`strong`,raw:c,text:l,tokens:this.lexer.inlineTokens(l)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal,` `),n=this.rules.other.nonSpaceChar.test(e),r=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return n&&r&&(e=e.substring(1,e.length-1)),{type:`codespan`,raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:`br`,raw:t[0]}}del(e,t,n=``){let r=this.rules.inline.delLDelim.exec(e);if(r&&(!r[1]||!n||this.rules.inline.punctuation.exec(n))){let n=[...r[0]].length-1,i,a,o=n,s=this.rules.inline.delRDelim;for(s.lastIndex=0,t=t.slice(-1*e.length+n);(r=s.exec(t))!==null;){if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!i||(a=[...i].length,a!==n))continue;if(r[3]||r[4]){o+=a;continue}if(o-=a,o>0)continue;a=Math.min(a,a+o);let t=[...r[0]][0].length,s=e.slice(0,n+r.index+t+a),c=s.slice(n,-n);return{type:`del`,raw:s,text:c,tokens:this.lexer.inlineTokens(c)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,n;return t[2]===`@`?(e=t[1],n=`mailto:`+e):(e=t[1],n=e),{type:`link`,raw:t[0],text:e,href:n,tokens:[{type:`text`,raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,n;if(t[2]===`@`)e=t[0],n=`mailto:`+e;else{let r;do r=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??``;while(r!==t[0]);e=t[0],n=t[1]===`www.`?`http://`+t[0]:t[0]}return{type:`link`,raw:t[0],text:e,href:n,tokens:[{type:`text`,raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e=this.lexer.state.inRawBlock;return{type:`text`,raw:t[0],text:t[0],escaped:e}}}},Qp=class e{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||jf,this.options.tokenizer=this.options.tokenizer||new Zp,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:Ff,block:zp.normal,inline:Bp.normal};this.options.pedantic?(t.block=zp.pedantic,t.inline=Bp.pedantic):this.options.gfm&&(t.block=zp.gfm,t.inline=this.options.breaks?Bp.breaks:Bp.gfm),this.tokenizer.rules=t}static get rules(){return{block:zp,inline:Bp}}static lex(t,n){return new e(n).lex(t)}static lexInline(t,n){return new e(n).inlineTokens(t)}lex(e){e=e.replace(Ff.carriageReturn,`
|
|
41
|
+
`),this.blockTokens(e,this.tokens);for(let e=0;e<this.inlineQueue.length;e++){let t=this.inlineQueue[e];this.inlineTokens(t.src,t.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],n=!1){for(this.tokenizer.lexer=this,this.options.pedantic&&(e=e.replace(Ff.tabCharGlobal,` `).replace(Ff.spaceLine,``));e;){let r;if(this.options.extensions?.block?.some(n=>(r=n.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let n=t.at(-1);r.raw.length===1&&n!==void 0?n.raw+=`
|
|
42
|
+
`:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let n=t.at(-1);n?.type===`paragraph`||n?.type===`text`?(n.raw+=(n.raw.endsWith(`
|
|
43
|
+
`)?``:`
|
|
44
|
+
`)+r.raw,n.text+=`
|
|
45
|
+
`+r.text,this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let n=t.at(-1);n?.type===`paragraph`||n?.type===`text`?(n.raw+=(n.raw.endsWith(`
|
|
46
|
+
`)?``:`
|
|
47
|
+
`)+r.raw,n.text+=`
|
|
48
|
+
`+r.raw,this.inlineQueue.at(-1).src=n.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startBlock){let t=1/0,n=e.slice(1),r;this.options.extensions.startBlock.forEach(e=>{r=e.call({lexer:this},n),typeof r==`number`&&r>=0&&(t=Math.min(t,r))}),t<1/0&&t>=0&&(i=e.substring(0,t+1))}if(this.state.top&&(r=this.tokenizer.paragraph(i))){let a=t.at(-1);n&&a?.type===`paragraph`?(a.raw+=(a.raw.endsWith(`
|
|
49
|
+
`)?``:`
|
|
50
|
+
`)+r.raw,a.text+=`
|
|
51
|
+
`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):t.push(r),n=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let n=t.at(-1);n?.type===`text`?(n.raw+=(n.raw.endsWith(`
|
|
52
|
+
`)?``:`
|
|
53
|
+
`)+r.raw,n.text+=`
|
|
54
|
+
`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(e){let t=`Infinite loop on byte: `+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let n=e,r=null;if(this.tokens.links){let e=Object.keys(this.tokens.links);if(e.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(n))!==null;)e.includes(r[0].slice(r[0].lastIndexOf(`[`)+1,-1))&&(n=n.slice(0,r.index)+`[`+`a`.repeat(r[0].length-2)+`]`+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(n))!==null;)n=n.slice(0,r.index)+`++`+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let i;for(;(r=this.tokenizer.rules.inline.blockSkip.exec(n))!==null;)i=r[2]?r[2].length:0,n=n.slice(0,r.index+i)+`[`+`a`.repeat(r[0].length-i-2)+`]`+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let a=!1,o=``;for(;e;){a||(o=``),a=!1;let r;if(this.options.extensions?.inline?.some(n=>(r=n.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.escape(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.tag(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.link(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(r.raw.length);let n=t.at(-1);r.type===`text`&&n?.type===`text`?(n.raw+=r.raw,n.text+=r.text):t.push(r);continue}if(r=this.tokenizer.emStrong(e,n,o)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.codespan(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.br(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.del(e,n,o)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.autolink(e)){e=e.substring(r.raw.length),t.push(r);continue}if(!this.state.inLink&&(r=this.tokenizer.url(e))){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startInline){let t=1/0,n=e.slice(1),r;this.options.extensions.startInline.forEach(e=>{r=e.call({lexer:this},n),typeof r==`number`&&r>=0&&(t=Math.min(t,r))}),t<1/0&&t>=0&&(i=e.substring(0,t+1))}if(r=this.tokenizer.inlineText(i)){e=e.substring(r.raw.length),r.raw.slice(-1)!==`_`&&(o=r.raw.slice(-1)),a=!0;let n=t.at(-1);n?.type===`text`?(n.raw+=r.raw,n.text+=r.text):t.push(r);continue}if(e){let t=`Infinite loop on byte: `+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw Error(t)}}return t}},$p=class{options;parser;constructor(e){this.options=e||jf}space(e){return``}code({text:e,lang:t,escaped:n}){let r=(t||``).match(Ff.notSpaceStart)?.[0],i=e.replace(Ff.endingNewline,``)+`
|
|
55
|
+
`;return r?`<pre><code class="language-`+Up(r)+`">`+(n?i:Up(i,!0))+`</code></pre>
|
|
56
|
+
`:`<pre><code>`+(n?i:Up(i,!0))+`</code></pre>
|
|
57
|
+
`}blockquote({tokens:e}){return`<blockquote>
|
|
58
|
+
${this.parser.parse(e)}</blockquote>
|
|
59
|
+
`}html({text:e}){return e}def(e){return``}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>
|
|
60
|
+
`}hr(e){return`<hr>
|
|
61
|
+
`}list(e){let t=e.ordered,n=e.start,r=``;for(let t=0;t<e.items.length;t++){let n=e.items[t];r+=this.listitem(n)}let i=t?`ol`:`ul`,a=t&&n!==1?` start="`+n+`"`:``;return`<`+i+a+`>
|
|
62
|
+
`+r+`</`+i+`>
|
|
63
|
+
`}listitem(e){return`<li>${this.parser.parse(e.tokens)}</li>
|
|
64
|
+
`}checkbox({checked:e}){return`<input `+(e?`checked="" `:``)+`disabled="" type="checkbox"> `}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>
|
|
65
|
+
`}table(e){let t=``,n=``;for(let t=0;t<e.header.length;t++)n+=this.tablecell(e.header[t]);t+=this.tablerow({text:n});let r=``;for(let t=0;t<e.rows.length;t++){let i=e.rows[t];n=``;for(let e=0;e<i.length;e++)n+=this.tablecell(i[e]);r+=this.tablerow({text:n})}return r&&=`<tbody>${r}</tbody>`,`<table>
|
|
66
|
+
<thead>
|
|
67
|
+
`+t+`</thead>
|
|
68
|
+
`+r+`</table>
|
|
69
|
+
`}tablerow({text:e}){return`<tr>
|
|
70
|
+
${e}</tr>
|
|
71
|
+
`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?`th`:`td`;return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`</${n}>
|
|
72
|
+
`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${Up(e,!0)}</code>`}br(e){return`<br>`}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=Wp(e);if(i===null)return r;e=i;let a=`<a href="`+e+`"`;return t&&(a+=` title="`+Up(t)+`"`),a+=`>`+r+`</a>`,a}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=Wp(e);if(i===null)return Up(n);e=i;let a=`<img src="${e}" alt="${Up(n)}"`;return t&&(a+=` title="${Up(t)}"`),a+=`>`,a}text(e){return`tokens`in e&&e.tokens?this.parser.parseInline(e.tokens):`escaped`in e&&e.escaped?e.text:Up(e.text)}},em=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return``+e}image({text:e}){return``+e}br(){return``}checkbox({raw:e}){return e}},tm=class e{options;renderer;textRenderer;constructor(e){this.options=e||jf,this.options.renderer=this.options.renderer||new $p,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new em}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e){this.renderer.parser=this;let t=``;for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions?.renderers?.[r.type]){let e=r,n=this.options.extensions.renderers[e.type].call({parser:this},e);if(n!==!1||![`space`,`hr`,`heading`,`code`,`table`,`blockquote`,`list`,`html`,`def`,`paragraph`,`text`].includes(e.type)){t+=n||``;continue}}let i=r;switch(i.type){case`space`:t+=this.renderer.space(i);break;case`hr`:t+=this.renderer.hr(i);break;case`heading`:t+=this.renderer.heading(i);break;case`code`:t+=this.renderer.code(i);break;case`table`:t+=this.renderer.table(i);break;case`blockquote`:t+=this.renderer.blockquote(i);break;case`list`:t+=this.renderer.list(i);break;case`checkbox`:t+=this.renderer.checkbox(i);break;case`html`:t+=this.renderer.html(i);break;case`def`:t+=this.renderer.def(i);break;case`paragraph`:t+=this.renderer.paragraph(i);break;case`text`:t+=this.renderer.text(i);break;default:{let e=`Token with "`+i.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return t}parseInline(e,t=this.renderer){this.renderer.parser=this;let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let e=this.options.extensions.renderers[i.type].call({parser:this},i);if(e!==!1||![`escape`,`html`,`link`,`image`,`strong`,`em`,`codespan`,`br`,`del`,`text`].includes(i.type)){n+=e||``;continue}}let a=i;switch(a.type){case`escape`:n+=t.text(a);break;case`html`:n+=t.html(a);break;case`link`:n+=t.link(a);break;case`image`:n+=t.image(a);break;case`checkbox`:n+=t.checkbox(a);break;case`strong`:n+=t.strong(a);break;case`em`:n+=t.em(a);break;case`codespan`:n+=t.codespan(a);break;case`br`:n+=t.br(a);break;case`del`:n+=t.del(a);break;case`text`:n+=t.text(a);break;default:{let e=`Token with "`+a.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return n}},nm=class{options;block;constructor(e){this.options=e||jf}static passThroughHooks=new Set([`preprocess`,`postprocess`,`processAllTokens`,`emStrongMask`]);static passThroughHooksRespectAsync=new Set([`preprocess`,`postprocess`,`processAllTokens`]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(e=this.block){return e?Qp.lex:Qp.lexInline}provideParser(e=this.block){return e?tm.parse:tm.parseInline}},rm=new class{defaults=Af();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=tm;Renderer=$p;TextRenderer=em;Lexer=Qp;Tokenizer=Zp;Hooks=nm;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case`table`:{let e=r;for(let r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(let r of e.rows)for(let e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case`list`:{let e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{let e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(r=>{let i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error(`extension name required`);if(`renderer`in e){let n=t.renderers[e.name];n?t.renderers[e.name]=function(...t){let r=e.renderer.apply(this,t);return r===!1&&(r=n.apply(this,t)),r}:t.renderers[e.name]=e.renderer}if(`tokenizer`in e){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&(e.level===`block`?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:e.level===`inline`&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}`childTokens`in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new $p(this.defaults);for(let n in e.renderer){if(!(n in t))throw Error(`renderer '${n}' does not exist`);if([`options`,`parser`].includes(n))continue;let r=n,i=e.renderer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n||``}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new Zp(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw Error(`tokenizer '${n}' does not exist`);if([`options`,`rules`,`lexer`].includes(n))continue;let r=n,i=e.tokenizer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new nm;for(let n in e.hooks){if(!(n in t))throw Error(`hook '${n}' does not exist`);if([`options`,`block`].includes(n))continue;let r=n,i=e.hooks[r],a=t[r];t[r]=nm.passThroughHooks.has(n)?e=>{if(this.defaults.async&&nm.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await i.call(t,e);return a.call(t,n)})();let r=i.call(t,e);return a.call(t,r)}:(...e)=>{if(this.defaults.async)return(async()=>{let n=await i.apply(t,e);return n===!1&&(n=await a.apply(t,e)),n})();let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return Qp.lex(e,t??this.defaults)}parser(e,t){return tm.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},i={...this.defaults,...r},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return a(Error(`marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.`));if(typeof t>`u`||t===null)return a(Error(`marked(): input parameter is undefined or null`));if(typeof t!=`string`)return a(Error(`marked(): input parameter is of type `+Object.prototype.toString.call(t)+`, string expected`));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let n=i.hooks?await i.hooks.preprocess(t):t,r=await(i.hooks?await i.hooks.provideLexer(e):e?Qp.lex:Qp.lexInline)(n,i),a=i.hooks?await i.hooks.processAllTokens(r):r;i.walkTokens&&await Promise.all(this.walkTokens(a,i.walkTokens));let o=await(i.hooks?await i.hooks.provideParser(e):e?tm.parse:tm.parseInline)(a,i);return i.hooks?await i.hooks.postprocess(o):o})().catch(a);try{i.hooks&&(t=i.hooks.preprocess(t));let n=(i.hooks?i.hooks.provideLexer(e):e?Qp.lex:Qp.lexInline)(t,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=(i.hooks?i.hooks.provideParser(e):e?tm.parse:tm.parseInline)(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return a(e)}}}onError(e,t){return n=>{if(n.message+=`
|
|
73
|
+
Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+Up(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function im(e,t){return rm.parse(e,t)}im.options=im.setOptions=function(e){return rm.setOptions(e),im.defaults=rm.defaults,Mf(im.defaults),im},im.getDefaults=Af,im.defaults=jf,im.use=function(...e){return rm.use(...e),im.defaults=rm.defaults,Mf(im.defaults),im},im.walkTokens=function(e,t){return rm.walkTokens(e,t)},im.parseInline=rm.parseInline,im.Parser=tm,im.parser=tm.parse,im.Renderer=$p,im.TextRenderer=em,im.Lexer=Qp,im.lexer=Qp.lex,im.Tokenizer=Zp,im.Hooks=nm,im.parse=im,im.options,im.setOptions,im.use,im.walkTokens,im.parseInline,tm.parse,Qp.lex;function am(e,t){this.v=e,this.k=t}function om(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function sm(e){if(Array.isArray(e))return e}function cm(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function lm(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
74
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function um(e,t){return sm(e)||cm(e,t)||dm(e,t)||lm()}function dm(e,t){if(e){if(typeof e==`string`)return om(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?om(e,t):void 0}}function fm(e){var t,n;function r(t,n){try{var a=e[t](n),o=a.value,s=o instanceof am;Promise.resolve(s?o.v:o).then(function(n){if(s){var c=t===`return`&&o.k?t:`next`;if(!o.k||n.done)return r(c,n);n=e[c](n).value}i(!!a.done,n)},function(e){r(`throw`,e)})}catch(e){i(2,e)}}function i(e,i){e===2?t.reject(i):t.resolve({value:i,done:e}),(t=t.next)?r(t.key,t.arg):n=null}this._invoke=function(e,i){return new Promise(function(a,o){var s={key:e,arg:i,resolve:a,reject:o,next:null};n?n=n.next=s:(t=n=s,r(e,i))})},typeof e.return!=`function`&&(this.return=void 0)}fm.prototype[typeof Symbol==`function`&&Symbol.asyncIterator||`@@asyncIterator`]=function(){return this},fm.prototype.next=function(e){return this._invoke(`next`,e)},fm.prototype.throw=function(e){return this._invoke(`throw`,e)},fm.prototype.return=function(e){return this._invoke(`return`,e)};var pm=Object.entries,mm=Object.setPrototypeOf,hm=Object.isFrozen,gm=Object.getPrototypeOf,_m=Object.getOwnPropertyDescriptor,vm=Object.freeze,ym=Object.seal,bm=Object.create,xm=typeof Reflect<`u`&&Reflect,Sm=xm.apply,Cm=xm.construct;vm||=function(e){return e},ym||=function(e){return e},Sm||=function(e,t){var n=[...arguments].slice(2);return e.apply(t,n)},Cm||=function(e){return new e(...[...arguments].slice(1))};var wm=Wm(Array.prototype.forEach);Array.prototype.indexOf;var Tm=Wm(Array.prototype.lastIndexOf),Em=Wm(Array.prototype.pop),Dm=Wm(Array.prototype.push);Array.prototype.slice;var Om=Wm(Array.prototype.splice),km=Array.isArray,Am=Wm(String.prototype.toLowerCase),jm=Wm(String.prototype.toString),Mm=Wm(String.prototype.match),Nm=Wm(String.prototype.replace),Pm=Wm(String.prototype.indexOf),Fm=Wm(String.prototype.trim),Im=Wm(Number.prototype.toString),Lm=Wm(Boolean.prototype.toString),Rm=typeof BigInt>`u`?null:Wm(BigInt.prototype.toString),zm=typeof Symbol>`u`?null:Wm(Symbol.prototype.toString),Bm=Wm(Object.prototype.hasOwnProperty),Vm=Wm(Object.prototype.toString),Hm=Wm(RegExp.prototype.test),Um=Gm(TypeError);function Wm(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);var n=[...arguments].slice(1);return Sm(e,t,n)}}function Gm(e){return function(){return Cm(e,[...arguments])}}function q(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Am;if(mm&&mm(e,null),!km(t))return e;let r=t.length;for(;r--;){let i=t[r];if(typeof i==`string`){let e=n(i);e!==i&&(hm(t)||(t[r]=e),i=e)}e[i]=!0}return e}function Km(e){for(let t=0;t<e.length;t++)Bm(e,t)||(e[t]=null);return e}function qm(e){let t=bm(null);for(let r of pm(e)){var n=um(r,2);let i=n[0],a=n[1];Bm(e,i)&&(t[i]=km(a)?Km(a):a&&typeof a==`object`&&a.constructor===Object?qm(a):a)}return t}function Jm(e){switch(typeof e){case`string`:return e;case`number`:return Im(e);case`boolean`:return Lm(e);case`bigint`:return Rm?Rm(e):`0`;case`symbol`:return zm?zm(e):`Symbol()`;case`undefined`:return Vm(e);case`function`:case`object`:{if(e===null)return Vm(e);let t=e,n=Ym(t,`toString`);if(typeof n==`function`){let e=n(t);return typeof e==`string`?e:Vm(e)}return Vm(e)}default:return Vm(e)}}function Ym(e,t){for(;e!==null;){let n=_m(e,t);if(n){if(n.get)return Wm(n.get);if(typeof n.value==`function`)return Wm(n.value)}e=gm(e)}function n(){return null}return n}function Xm(e){try{return Hm(e,``),!0}catch{return!1}}var Zm=vm(`a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr`.split(`.`)),Qm=vm(`svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern`.split(`.`)),$m=vm([`feBlend`,`feColorMatrix`,`feComponentTransfer`,`feComposite`,`feConvolveMatrix`,`feDiffuseLighting`,`feDisplacementMap`,`feDistantLight`,`feDropShadow`,`feFlood`,`feFuncA`,`feFuncB`,`feFuncG`,`feFuncR`,`feGaussianBlur`,`feImage`,`feMerge`,`feMergeNode`,`feMorphology`,`feOffset`,`fePointLight`,`feSpecularLighting`,`feSpotLight`,`feTile`,`feTurbulence`]),eh=vm([`animate`,`color-profile`,`cursor`,`discard`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`foreignobject`,`hatch`,`hatchpath`,`mesh`,`meshgradient`,`meshpatch`,`meshrow`,`missing-glyph`,`script`,`set`,`solidcolor`,`unknown`,`use`]),th=vm(`math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts`.split(`.`)),nh=vm([`maction`,`maligngroup`,`malignmark`,`mlongdiv`,`mscarries`,`mscarry`,`msgroup`,`mstack`,`msline`,`msrow`,`semantics`,`annotation`,`annotation-xml`,`mprescripts`,`none`]),rh=vm([`#text`]),ih=vm(`accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns`.split(`.`)),ah=vm(`accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan`.split(`.`)),oh=vm(`accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns`.split(`.`)),sh=vm([`xlink:href`,`xml:id`,`xlink:title`,`xml:space`,`xmlns:xlink`]),ch=ym(/{{[\w\W]*|^[\w\W]*}}/g),lh=ym(/<%[\w\W]*|^[\w\W]*%>/g),uh=ym(/\${[\w\W]*/g),dh=ym(/^data-[\-\w.\u00B7-\uFFFF]+$/),fh=ym(/^aria-[\-\w]+$/),ph=ym(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),mh=ym(/^(?:\w+script|data):/i),hh=ym(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),gh=ym(/^html$/i),_h=ym(/^[a-z][.\w]*(-[.\w]+)+$/i),vh=ym(/<[/\w!]/g),yh=ym(/<[/\w]/g),bh=ym(/<\/no(script|embed|frames)/i),xh=ym(/\/>/i),Sh={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Ch=[`style`,`script`,`xmp`,`iframe`,`noembed`,`noframes`,`plaintext`,`noscript`],wh=vm(q({},Ch)),Th=function(){let e={};return wm(Ch,t=>{e[t]=ym(RegExp(`</`+t+`(?=[\\t\\n\\f\\r />])`,`i`))}),vm(e)}(),Eh=function(){return typeof window>`u`?null:window},Dh=function(e,t){if(typeof e!=`object`||typeof e.createPolicy!=`function`)return null;let n=null,r=`data-tt-policy-suffix`;t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let i=`dompurify`+(n?`#`+n:``);try{return e.createPolicy(i,{createHTML(e){return e},createScriptURL(e){return e}})}catch{return console.warn(`TrustedTypes policy `+i+` could not be created.`),null}},Oh=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},kh=function(e,t,n,r){return Bm(e,t)&&km(e[t])?q(r.base?qm(r.base):{},e[t],r.transform):n},Ah=function(e,t,n){let r=Bm(e,t)?e[t]:void 0;return r&&typeof r==`object`?qm(r):n()};function jh(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Eh(),t=e=>jh(e);if(t.version=`3.4.16`,t.removed=[],!e||!e.document||e.document.nodeType!==Sh.document||!e.Element)return t.isSupported=!1,t;let n=e.document,r=n,i=r.currentScript;e.DocumentFragment;let a=e.HTMLTemplateElement,o=e.Node,s=e.Element,c=e.NodeFilter;e.NamedNodeMap===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let l=e.DOMParser,u=e.trustedTypes,d=s.prototype,f=Ym(d,`cloneNode`),p=Ym(d,`remove`),m=Ym(d,`removeAttributeNode`),h=Ym(d,`nextSibling`),g=Ym(d,`childNodes`),_=Ym(d,`parentNode`),v=Ym(d,`shadowRoot`),y=Ym(d,`attributes`),b=o&&o.prototype?Ym(o.prototype,`nodeType`):null,ee=o&&o.prototype?Ym(o.prototype,`nodeName`):null,x=o&&o.prototype?Ym(o.prototype,`ownerDocument`):null,S=function(e){return b?b(e):e.nodeType},te=function(e){return ee?ee(e):e.nodeName};if(typeof a==`function`){let e=n.createElement(`template`);e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let ne,C=``,re,ie=!1,ae=0,oe=function(){if(ae>0)throw Um(`A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.`)},se=function(e){oe(),ae++;try{return ne.createHTML(e)}finally{ae--}},ce=function(e){oe(),ae++;try{return ne.createScriptURL(e)}finally{ae--}},le=function(){return ie||=(re=Dh(u,i),!0),re},ue=n,w=ue.implementation,de=ue.createNodeIterator,fe=ue.createDocumentFragment,pe=ue.getElementsByTagName,me=r.importNode,he=Oh();t.isSupported=typeof pm==`function`&&typeof _==`function`&&w&&w.createHTMLDocument!==void 0;let ge=ch,_e=lh,ve=uh,ye=dh,be=fh,xe=mh,T=hh,Se=_h,Ce=ph,we=null,Te=q({},[...Zm,...Qm,...$m,...th,...rh]),Ee=null,De=q({},[...ih,...ah,...oh,...sh]),Oe=Object.seal(bm(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ke=null,Ae=null,je=Object.seal(bm(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),E=!0,Me=!0,Ne=!1,Pe=!0,Fe=!1,Ie=!0,D=!1,Le=!1,Re=null,ze=null,Be=!1,Ve=!1,He=!1,Ue=!1,We=!0,Ge=!1,Ke=`user-content-`,qe=!0,Je=!1,Ye={},Xe=null,Ze=q({},`annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp`.split(`.`)),Qe=null,$e=q({},[`audio`,`video`,`img`,`source`,`image`,`track`]),et=null,tt=q({},[`alt`,`class`,`for`,`id`,`label`,`name`,`pattern`,`placeholder`,`role`,`summary`,`title`,`value`,`style`,`xmlns`]),nt=`http://www.w3.org/1998/Math/MathML`,rt=`http://www.w3.org/2000/svg`,it=`http://www.w3.org/1999/xhtml`,at=it,ot=!1,st=null,ct=q({},[nt,rt,it],jm),lt=vm([`mi`,`mo`,`mn`,`ms`,`mtext`]),ut=q({},lt),dt=vm([`annotation-xml`]),ft=q({},dt),pt=q({},[`title`,`style`,`font`,`a`,`script`]),mt=null,ht=[`application/xhtml+xml`,`text/html`],gt=null,_t=null,vt=n.createElement(`form`),yt=function(e){return e instanceof RegExp||e instanceof Function},bt=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(_t&&_t===e)return;(!e||typeof e!=`object`)&&(e={}),e=qm(e),mt=ht.indexOf(e.PARSER_MEDIA_TYPE)===-1?`text/html`:e.PARSER_MEDIA_TYPE,gt=mt===`application/xhtml+xml`?jm:Am,we=kh(e,`ALLOWED_TAGS`,Te,{transform:gt}),Ee=kh(e,`ALLOWED_ATTR`,De,{transform:gt}),st=kh(e,`ALLOWED_NAMESPACES`,ct,{transform:jm}),et=kh(e,`ADD_URI_SAFE_ATTR`,tt,{transform:gt,base:tt}),Qe=kh(e,`ADD_DATA_URI_TAGS`,$e,{transform:gt,base:$e}),Xe=kh(e,`FORBID_CONTENTS`,Ze,{transform:gt}),ke=kh(e,`FORBID_TAGS`,qm({}),{transform:gt}),Ae=kh(e,`FORBID_ATTR`,qm({}),{transform:gt}),Ye=Bm(e,`USE_PROFILES`)?e.USE_PROFILES&&typeof e.USE_PROFILES==`object`?qm(e.USE_PROFILES):e.USE_PROFILES:!1,E=e.ALLOW_ARIA_ATTR!==!1,Me=e.ALLOW_DATA_ATTR!==!1,Ne=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Pe=e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Fe=e.SAFE_FOR_TEMPLATES||!1,Ie=e.SAFE_FOR_XML!==!1,D=e.WHOLE_DOCUMENT||!1,Ve=e.RETURN_DOM||!1,He=e.RETURN_DOM_FRAGMENT||!1,Ue=e.RETURN_TRUSTED_TYPE||!1,Be=e.FORCE_BODY||!1,We=e.SANITIZE_DOM!==!1,Ge=e.SANITIZE_NAMED_PROPS||!1,qe=e.KEEP_CONTENT!==!1,Je=e.IN_PLACE||!1,Ce=Xm(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:ph,at=typeof e.NAMESPACE==`string`?e.NAMESPACE:it,ut=Ah(e,`MATHML_TEXT_INTEGRATION_POINTS`,()=>q({},lt)),ft=Ah(e,`HTML_INTEGRATION_POINTS`,()=>q({},dt));let t=Ah(e,`CUSTOM_ELEMENT_HANDLING`,()=>bm(null));if(Oe=bm(null),Bm(t,`tagNameCheck`)&&yt(t.tagNameCheck)&&(Oe.tagNameCheck=t.tagNameCheck),Bm(t,`attributeNameCheck`)&&yt(t.attributeNameCheck)&&(Oe.attributeNameCheck=t.attributeNameCheck),Bm(t,`allowCustomizedBuiltInElements`)&&typeof t.allowCustomizedBuiltInElements==`boolean`&&(Oe.allowCustomizedBuiltInElements=t.allowCustomizedBuiltInElements),ym(Oe),Fe&&(Me=!1),He&&(Ve=!0),Ye&&(we=q({},rh),Ee=bm(null),Ye.html===!0&&(q(we,Zm),q(Ee,ih)),Ye.svg===!0&&(q(we,Qm),q(Ee,ah),q(Ee,sh)),Ye.svgFilters===!0&&(q(we,$m),q(Ee,ah),q(Ee,sh)),Ye.mathMl===!0&&(q(we,th),q(Ee,oh),q(Ee,sh))),je.tagCheck=null,je.attributeCheck=null,Bm(e,`ADD_TAGS`)&&(typeof e.ADD_TAGS==`function`?je.tagCheck=e.ADD_TAGS:km(e.ADD_TAGS)&&(we===Te&&(we=qm(we)),q(we,e.ADD_TAGS,gt))),Bm(e,`ADD_ATTR`)&&(typeof e.ADD_ATTR==`function`?je.attributeCheck=e.ADD_ATTR:km(e.ADD_ATTR)&&(Ee===De&&(Ee=qm(Ee)),q(Ee,e.ADD_ATTR,gt))),Bm(e,`ADD_FORBID_CONTENTS`)&&km(e.ADD_FORBID_CONTENTS)&&(Xe===Ze&&(Xe=qm(Xe)),q(Xe,e.ADD_FORBID_CONTENTS,gt)),qe&&(we[`#text`]=!0),D&&q(we,[`html`,`head`,`body`]),we.table&&(q(we,[`tbody`]),delete ke.tbody),e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=`function`)throw Um(`TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.`);if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=`function`)throw Um(`TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.`);let t=ne;ne=e.TRUSTED_TYPES_POLICY;try{C=se(``)}catch(e){throw ne=t,e}}else e.TRUSTED_TYPES_POLICY===null?(ne=void 0,C=``):(ne===void 0&&(ne=le()),ne&&typeof C==`string`&&(C=se(``)));vm&&vm(e),_t=e},xt=q({},[...Qm,...$m,...eh]),St=q({},[...th,...nh]),Ct=function(e,t,n){return t.namespaceURI===it?e===`svg`:t.namespaceURI===nt?e===`svg`&&(n===`annotation-xml`||ut[n]):!!xt[e]},wt=function(e,t,n){return t.namespaceURI===it?e===`math`:t.namespaceURI===rt?e===`math`&&ft[n]:!!St[e]},Tt=function(e,t,n){return t.namespaceURI===rt&&!ft[n]||t.namespaceURI===nt&&!ut[n]?!1:!St[e]&&(pt[e]||!xt[e])},Et=function(e){let t=_(e);(!t||!t.tagName)&&(t={namespaceURI:at,tagName:`template`});let n=Am(e.tagName),r=Am(t.tagName);return st[e.namespaceURI]?e.namespaceURI===rt?Ct(n,t,r):e.namespaceURI===nt?wt(n,t,r):e.namespaceURI===it?Tt(n,t,r):!!(mt===`application/xhtml+xml`&&st[e.namespaceURI]):!1},Dt=function(e){Dm(t.removed,{element:e});try{_(e).removeChild(e)}catch{if(p(e),!_(e))throw Um(`a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place`)}},Ot=function(e,t,n){try{m(e,t)}catch{try{e.removeAttribute(n)}catch{}}},kt=function(e){Mt(e);let t=g(e);if(t){let e=[];wm(t,t=>{Dm(e,t)}),wm(e,e=>{try{p(e)}catch{}})}let n=y(e);if(n)for(let t=n.length-1;t>=0;--t){let r=n[t],i=r&&r.name;typeof i==`string`&&Ot(e,r,i)}},At=function(e,n,r){if(!r)try{r=n.getAttributeNode(e)}catch{r=null}Dm(t.removed,{attribute:r||null,from:n});try{r?m(n,r):n.removeAttribute(e)}catch{try{n.removeAttribute(e)}catch{}}if(e===`is`){if(Ve||He)try{Dt(n)}catch{}else try{n.setAttribute(e,``)}catch{}}},jt=function(e){let t=y(e);if(t)for(let n=t.length-1;n>=0;--n){let r=t[n],i=r&&r.name;typeof i!=`string`||Ee[gt(i)]||Ot(e,r,i)}},Mt=function(e){let t=[e];for(;t.length>0;){let e=t.pop();S(e)===Sh.element&&jt(e);let n=g(e);if(n)for(let e=n.length-1;e>=0;--e)t.push(n[e])}},Nt=function(e,t){return Ie?e===`patchsrc`||e===`for`&&t!==`label`&&t!==`output`:!1},Pt=function(e){if(!Ie)return;let t=[e];for(;t.length>0;){let e=t.pop(),n=S(e);if(n===Sh.processingInstruction||n===Sh.comment&&Hm(yh,e.data)){try{p(e)}catch{}continue}if(n===Sh.element){let t=e,n=gt(te(e));try{t.hasAttribute&&t.hasAttribute(`patchsrc`)&&t.removeAttribute(`patchsrc`),t.hasAttribute&&t.hasAttribute(`for`)&&Nt(`for`,n)&&t.removeAttribute(`for`)}catch{}}let r=g(e);if(r)for(let e=r.length-1;e>=0;--e)t.push(r[e])}},Ft=function(e){let t=null,r=null;if(Be)e=`<remove></remove>`+e;else{let t=Mm(e,/^[\r\n\t ]+/);r=t&&t[0]}mt===`application/xhtml+xml`&&at===it&&(e=`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>`+e+`</body></html>`);let i=ne?se(e):e;if(at===it)try{t=new l().parseFromString(i,mt)}catch{}if(!t||!t.documentElement){t=w.createDocument(at,`template`,null);try{t.documentElement.innerHTML=ot?C:i}catch{}}let a=t.body||t.documentElement;return e&&r&&a.insertBefore(n.createTextNode(r),a.childNodes[0]||null),at===it?pe.call(t,D?`html`:`body`)[0]:D?t.documentElement:a},It=function(e){let t=x?x(e):e.ownerDocument;return de.call(t||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Lt=function(e){return e=Nm(e,ge,` `),e=Nm(e,_e,` `),e=Nm(e,ve,` `),e},Rt=function(e){e.normalize();let t=x?x(e):e.ownerDocument,n=de.call(t||e,e,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),r=n.nextNode();for(;r;)r.data=Lt(r.data),r=n.nextNode();let i=e.querySelectorAll?.call(e,`template`);i&&wm(i,e=>{Bt(e.content)&&Rt(e.content)})},zt=function(e){let t=ee?ee(e):null;return typeof t!=`string`||gt(t)!==`form`?!1:typeof e.nodeName!=`string`||typeof e.textContent!=`string`||typeof e.removeChild!=`function`||e.attributes!==y(e)||typeof e.removeAttribute!=`function`||typeof e.removeAttributeNode!=`function`||typeof e.getAttributeNode!=`function`||typeof e.setAttribute!=`function`||typeof e.namespaceURI!=`string`||typeof e.insertBefore!=`function`||typeof e.hasChildNodes!=`function`||e.nodeType!==b(e)||e.childNodes!==g(e)},Bt=function(e){if(!b||typeof e!=`object`||!e)return!1;try{return b(e)===Sh.documentFragment}catch{return!1}},Vt=function(e){if(!b||typeof e!=`object`||!e)return!1;try{return typeof b(e)==`number`}catch{return!1}};function Ht(e,n,r){e.length!==0&&wm(e,e=>{e.call(t,n,r,_t)})}let Ut=function(e,t){return!!(Ie&&e.hasChildNodes()&&!Vt(e.firstElementChild)&&Hm(vh,e.textContent)&&Hm(vh,e.innerHTML)||Ie&&e.namespaceURI===it&&wh[t]&&(Vt(e.firstElementChild)||typeof e.textContent==`string`&&Hm(Th[t],e.textContent))||e.nodeType===Sh.processingInstruction||Ie&&e.nodeType===Sh.comment&&Hm(yh,e.data))},Wt=function(e,t){return e instanceof RegExp?Hm(e,t):e instanceof Function&&!!e(t,...[...arguments].slice(2))},Gt=function(e,t,n){if(!ke[t]&&Zt(t)&&Wt(Oe.tagNameCheck,t))return!1;if(qe&&!Xe[t]){let t=_(e),r=g(e);if(r&&t){let i=r.length;for(let a=i-1;a>=0;--a){let i=e===n?f(r[a],!0):r[a];t.insertBefore(i,h(e))}}}return Dt(e),!0},Kt=function(e,t,n,r){return e.length===0?t:t===n||t===r?qm(t):t},qt=function(e,t){return e===t||_(e)!==null?!1:(Je&&Mt(e),!0)},Jt=function(e,n){if(Ht(he.beforeSanitizeElements,e,null),qt(e,n))return!0;if(zt(e))return Dt(e),!0;let r=gt(te(e));if(we=Kt(he.uponSanitizeElement,we,Te,Re),Ht(he.uponSanitizeElement,e,{tagName:r,allowedTags:we}),qt(e,n))return!0;if(Ut(e,r))return Dt(e),!0;if(ke[r]||!(je.tagCheck instanceof Function&&je.tagCheck(r))&&!we[r]){let t=Gt(e,r,n);return t===!1&&(Ht(he.afterSanitizeElements,e,null),qt(e,n))?!0:t}if(S(e)===Sh.element&&!Et(e)||(r===`noscript`||r===`noembed`||r===`noframes`)&&Hm(bh,e.innerHTML))return Dt(e),!0;if(Fe&&e.nodeType===Sh.text){let n=Lt(e.textContent);e.textContent!==n&&(Dm(t.removed,{element:e.cloneNode()}),e.textContent=n)}return Ht(he.afterSanitizeElements,e,null),qt(e,n)},Yt=function(e,t,r){if(Ae[t]||Nt(t,e)||We&&(t===`id`||t===`name`)&&(r in n||r in vt))return!1;let i=Ee[t]||je.attributeCheck instanceof Function&&je.attributeCheck(t,e);return Me&&Hm(ye,t)||E&&Hm(be,t)?!0:i?et[t]||Hm(Ce,Nm(r,T,``))||(t===`src`||t===`xlink:href`||t===`href`)&&e!==`script`&&Pm(r,`data:`)===0&&Qe[e]||Ne&&!Hm(xe,Nm(r,T,``))?!0:!r:Zt(e)&&Wt(Oe.tagNameCheck,e)&&Wt(Oe.attributeNameCheck,t,e)||t===`is`&&Oe.allowCustomizedBuiltInElements&&Wt(Oe.tagNameCheck,r)},Xt=q({},[`annotation-xml`,`color-profile`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`missing-glyph`]),Zt=function(e){return!Xt[Am(e)]&&Hm(Se,e)},Qt=function(e,t,n,r){if(ne&&typeof u==`object`&&typeof u.getAttributeType==`function`&&!n)switch(u.getAttributeType(e,t)){case`TrustedHTML`:return se(r);case`TrustedScriptURL`:return ce(r)}return r},$t=function(e,t,n,r){try{return n?e.setAttributeNS(n,t,r):e.setAttribute(t,r),!zt(e)||(Dt(e),!1)}catch{return At(t,e),!1}},en=function(e,n){if(Ht(he.beforeSanitizeAttributes,e,null),qt(e,n))return;let r=e.attributes;if(!r||zt(e))return;Ee=Kt(he.uponSanitizeAttribute,Ee,De,ze);let i={attrName:``,attrValue:``,keepAttr:!0,allowedAttributes:Ee,forceKeepAttr:void 0},a=r.length,o=gt(e.nodeName);for(;a--;){let n=r[a],s=n.name,c=n.namespaceURI,l=n.value,u=gt(s),d=l,f=s===`value`?d:Fm(d),p=!1;if(i.attrName=u,i.attrValue=f,i.keepAttr=!0,i.forceKeepAttr=void 0,Ht(he.uponSanitizeAttribute,e,i),f=i.attrValue,Ge&&(u===`id`||u===`name`)&&Pm(f,Ke)!==0&&(At(s,e,n),f=Ke+f,p=!0),Ie&&Hm(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,f)){At(s,e,n);continue}if(u===`attributename`&&Mm(f,`href`)){At(s,e,n);continue}if(!i.forceKeepAttr){if(!i.keepAttr){At(s,e,n);continue}if(!Pe&&Hm(xh,f)){At(s,e,n);continue}if(Fe&&(f=Lt(f)),!Yt(o,u,f)){At(s,e,n);continue}f=Qt(o,u,c,f),f!==d&&$t(e,s,c,f)&&p&&Em(t.removed)}}Ht(he.afterSanitizeAttributes,e,null),qt(e,n)},tn=function(e){let t=null,n=It(e);for(Ht(he.beforeSanitizeShadowDOM,e,null);t=n.nextNode();)if(Ht(he.uponSanitizeShadowNode,t,null),Jt(t,e),en(t,e),Bt(t.content)&&tn(t.content),S(t)===Sh.element){let e=v(t);Bt(e)&&(nn(e),tn(e))}Ht(he.afterSanitizeShadowDOM,e,null)},nn=function(e){let t=[{node:e,shadow:null}];for(;t.length>0;){let e=t.pop();if(e.shadow){tn(e.shadow);continue}let n=e.node,r=S(n)===Sh.element,i=g(n);if(i)for(let e=i.length-1;e>=0;--e)t.push({node:i[e],shadow:null});if(r){let e=ee?ee(n):null;if(typeof e==`string`&>(e)===`template`){let e=n.content;Bt(e)&&t.push({node:e,shadow:null})}}if(r){let e=v(n);Bt(e)&&t.push({node:null,shadow:e},{node:e,shadow:null})}}};return t.sanitize=function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=null,a=null,o=null,s=null;if(ot=!e,ot&&(e=`<!-->`),typeof e!=`string`&&!Vt(e)&&(e=Jm(e),typeof e!=`string`))throw Um(`dirty is not a string, aborting`);if(!t.isSupported)return e;Le?(we=Re,Ee=ze):bt(n),(he.uponSanitizeElement.length>0||he.uponSanitizeAttribute.length>0)&&(we=qm(we)),he.uponSanitizeAttribute.length>0&&(Ee=qm(Ee)),t.removed=[];let c=Je&&typeof e!=`string`&&Vt(e);if(c){Pt(e);let t=te(e);if(typeof t==`string`){let n=gt(t);if(!we[n]||ke[n])throw kt(e),Um(`root node is forbidden and cannot be sanitized in-place`)}if(zt(e))throw kt(e),Um(`root node is clobbered and cannot be sanitized in-place`);try{nn(e)}catch(t){throw kt(e),t}}else if(Vt(e))i=Ft(`<!---->`),a=i.ownerDocument.importNode(e,!0),a.nodeType===Sh.element&&a.nodeName===`BODY`||a.nodeName===`HTML`?i=a:i.appendChild(a),nn(i);else{if(!Ve&&!Fe&&!D&&e.indexOf(`<`)===-1)return ne&&Ue?se(e):e;if(i=Ft(e),!i)return Ve?null:Ue?C:``}i&&Be&&Dt(i.firstChild);let l=c?e:i;try{let e=It(l);for(;o=e.nextNode();)Jt(o,l),en(o,l),Bt(o.content)&&tn(o.content)}catch(n){throw c&&(kt(e),wm(t.removed,e=>{e.element&&Mt(e.element)})),n}if(c){let n=!1;if(wm(t.removed,t=>{t.element&&(t.element===e&&(n=!0),Mt(t.element))}),n)throw Um(`a node selected for removal could not be safely returned; refusing to sanitize in place`);return Fe&&Rt(e),e}if(Ve){if(Fe&&Rt(i),He)for(s=fe.call(i.ownerDocument);i.firstChild;)s.appendChild(i.firstChild);else s=i;return(Ee.shadowroot||Ee.shadowrootmode)&&(s=me.call(r,s,!0)),s}let u=D?i.outerHTML:i.innerHTML;return D&&we[`!doctype`]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&Hm(gh,i.ownerDocument.doctype.name)&&(u=`<!DOCTYPE `+i.ownerDocument.doctype.name+`>
|
|
75
|
+
`+u),Fe&&(u=Lt(u)),ne&&Ue?se(u):u},t.setConfig=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};bt(e),Le=!0,Re=we,ze=Ee},t.clearConfig=function(){_t=null,Le=!1,Re=null,ze=null,ne=re,C=``},t.isValidAttribute=function(e,t,n){_t||bt({});let r=gt(e),i=gt(t);return Yt(r,i,n)},t.addHook=function(e,t){typeof t==`function`&&Bm(he,e)&&Dm(he[e],t)},t.removeHook=function(e,t){if(Bm(he,e)){if(t!==void 0){let n=Tm(he[e],t);return n===-1?void 0:Om(he[e],n,1)[0]}return Em(he[e])}},t.removeHooks=function(e){Bm(he,e)&&(he[e]=[])},t.removeAllHooks=function(){he=Oh()},t}var Mh=jh();function Nh(e,t){let n;try{n=new URL(e.trim())}catch{return null}return n.protocol!==`https:`&&n.protocol!==`http:`||n.origin===t?null:n.href}var Ph=`p.br.hr.strong.b.em.i.del.s.code.pre.blockquote.ul.ol.li.a.h1.h2.h3.h4.h5.h6.small.sub.sup.table.thead.tbody.tr.th.td.img.input`.split(`.`),Fh=[`form`,`style`,`script`,`button`,`select`,`textarea`,`iframe`,`object`,`embed`,`svg`,`math`],Ih={a:[`href`,`title`],img:[`src`,`alt`,`title`],th:[`colspan`,`rowspan`,`align`],td:[`colspan`,`rowspan`,`align`],ol:[`start`],code:[`class`],input:[`type`,`checked`,`disabled`]},Lh=[...new Set(Object.values(Ih).flat())],Rh=/^language-[\w-]+$/,zh=/^\d{1,4}$/,Bh=/^(left|right|center)$/i;function Vh(e,t,n){if(!Object.hasOwn(Ih,e)||!Ih[e].includes(t))return!1;switch(t){case`class`:return Rh.test(n);case`type`:return n.toLowerCase()===`checkbox`;case`colspan`:case`rowspan`:case`start`:return zh.test(n);case`align`:return Bh.test(n);default:return!0}}var Hh=/^data:image\/(png|jpeg|gif|webp);base64,[A-Za-z0-9+/]+={0,2}$/i,Uh=/^\/api(\/|$)/i;function Wh(e,t){if(Hh.test(e))return!0;if(!e.trim())return!1;let n;try{n=new URL(e,t)}catch{return!1}return(n.protocol===`https:`||n.protocol===`http:`)&&n.origin===t&&!Uh.test(n.pathname)}Mh.isSupported&&Mh.addHook(`afterSanitizeAttributes`,e=>{let t=e.nodeName.toLowerCase();for(let{name:n,value:r}of Array.from(e.attributes))Vh(t,n,r)||e.removeAttribute(n);if(t===`img`&&!Wh(e.getAttribute(`src`)??``,location.origin)){e.replaceWith(document.createTextNode(e.getAttribute(`alt`)??``));return}if(t===`input`){e.getAttribute(`type`)===null?e.remove():e.setAttribute(`disabled`,``);return}if(t!==`a`)return;let n=e.getAttribute(`href`),r=n===null?null:Nh(n,location.origin);r?(e.setAttribute(`href`,r),e.setAttribute(`target`,`_blank`),e.setAttribute(`rel`,`noopener noreferrer`)):(e.removeAttribute(`href`),e.removeAttribute(`target`))});var Gh={ALLOWED_TAGS:Ph,ALLOWED_ATTR:Lh,FORBID_TAGS:Fh,ALLOW_DATA_ATTR:!1,ALLOW_ARIA_ATTR:!1},Kh=new Map;function qh(e){let t=Kh.get(e);return t===void 0&&(t=Mh.sanitize(im.parse(e,{async:!1}),Gh),Kh.size>400&&Kh.delete(Kh.keys().next().value),Kh.set(e,t)),t}var Jh=`demo.job-runs`,Yh=e=>e.status!==`running`&&e.status!==`waiting`,Xh=B(()=>bu.value?.info?.jobs??[]),Zh=e=>Xh.value.find(t=>t.id===e),Qh=B(()=>{let e=Lu.value.docs[Jh];return Object.values(e?.items??{}).sort((e,t)=>t.id-e.id)}),$h=e=>Qh.value.find(t=>t.id===e),eg=e=>Qh.value.find(t=>t.toolCallId===e),tg=O(Date.now());setInterval(()=>tg.value=Date.now(),1e3);var ng=e=>e<1e3?`${Math.max(0,Math.round(e))}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.floor(e/6e4)}m ${Math.round(e%6e4/1e3)}s`,rg=O();async function ig(e,t){if(!rg.value){rg.value=e;try{return await Zu(t)}finally{rg.value=void 0}}}function ag(e){od.value&&ld(),setTimeout(()=>document.querySelector(`[data-job-run="${e}"]`)?.scrollIntoView({behavior:`smooth`,block:`center`}))}async function og(e){let t=await ig(`start:${e.id}`,()=>Du.value.demo(`jobs`,{job:e.id}));t&&(G(`${e.title} started. It runs in the chat.`),ag(t.taskId))}var sg=(e,t)=>ig(`decide:${e.id}`,()=>Du.value.demo(`jobs/${e.id}/approval`,{approved:t})),cg=e=>ig(`stop:${e.id}`,()=>Ou.value.abortTask(e.id));function lg(e){U.value&&ku({...U.value,agentId:e})}var ug=[`data-job-run`,`aria-label`],dg={class:`job-run-head`},fg={class:`job-run-icon`},pg={class:`job-run-titles`},mg={class:`job-run-eyebrow`},hg={class:`job-run-repeat`},gg={key:0,class:`job-run-about`},_g={class:`job-run-meta`},vg={key:0,class:`job-run-resumed`},yg={class:`job-stepper`,"aria-label":`Phases`},bg=[`aria-current`],xg={class:`job-chip`},Sg={class:`job-step-dot`},Cg={class:`job-step-label`},wg={key:0,class:`job-step-progress`},Tg={class:`job-phases`},Eg=[`open`],Dg={class:`job-phase-n`},Og={class:`job-phase-summary`},kg={class:`job-phase-time`},Ag={key:0,class:`job-phase-about`},jg={key:1,class:`job-steps`},Mg=[`open`],Ng={key:1,class:`job-step-line`},Pg=[`onClick`],Fg={key:2,class:`job-phase-empty`},Ig={key:1,class:`job-approval`,role:`group`,"aria-label":`Approval`},Lg={class:`job-approval-buttons`},Rg=[`disabled`],zg=[`disabled`],Bg={key:2,class:`message-error`},Vg={class:`job-run-foot`},Hg=[`disabled`],Ug=kr({__name:`JobCard`,props:{run:{}},setup(e){let t=e,n=B(()=>Zh(t.run.job)),r=B(()=>Yh(t.run)),i=B(()=>ng((t.run.endedAt??tg.value)-t.run.startedAt)),a={running:`Running`,waiting:`Waiting for you`,completed:`Completed`,failed:`Failed`,aborted:`Stopped`,declined:`Declined`},o={command:rl,tool:ul,agent:$s,state:ec,approval:$c,checkpoint:gc,note:Mc},s=e=>e.kind===`tool`?`${e.label}: a subagent tool call, its own durable task`:e.label,c=e=>{let t=e.step,n=[`command`,`tool`,`state`].includes(t.kind)?so(`code`,{title:s(t)},t.label):so(`span`,{class:`job-step-text`},t.label),r=t.status===`running`?so(Nc,{size:15,class:`spin`}):t.status===`done`?so(nc,{size:15}):t.status===`waiting`?so(Cc,{size:15}):so(dl,{size:15});return[so(o[t.kind],{size:16,class:`job-step-kind`}),n,t.kind===`tool`&&t.detail?so(`span`,{class:`job-step-args`,title:t.detail},t.detail):null,so(`span`,{class:`job-step-state`},[r,t.ms!==void 0&&t.kind!==`note`?so(`span`,ng(t.ms)):null])]};c.props=[`step`];let l=e=>n.value?.phases.find(t=>t.id===e),u=e=>e.startedAt?ng((e.endedAt??(e.status===`running`||e.status===`waiting`?tg.value:e.startedAt))-e.startedAt):``,d=e=>e.status!==`pending`&&e.status!==`skipped`,f=B(()=>Object.entries(t.run.input)),p=B(()=>t.run.phases.find(e=>e.status===`waiting`));return(t,o)=>(N(),P(`article`,{class:T([`job-run`,`is-${e.run.status}`]),"data-job-run":e.run.id,"aria-label":`${e.run.title} run ${e.run.run}: ${a[e.run.status]}`},[I(`header`,dg,[I(`span`,fg,[L(k(ll),{size:22})]),I(`div`,pg,[I(`div`,mg,[o[3]||=I(`span`,null,`DURABLE JOB`,-1),I(`span`,hg,[L(k(Xc),{size:15}),R(`Repeatable workflow, run #`+E(e.run.run),1)])]),I(`h3`,null,E(e.run.title),1)]),I(`span`,{class:T([`job-run-status`,e.run.status])},[o[4]||=I(`i`,null,null,-1),R(E(a[e.run.status]),1)],2)]),n.value?(N(),P(`p`,gg,E(n.value.summary),1)):z(``,!0),I(`div`,_g,[I(`span`,null,`task #`+E(e.run.id),1),I(`span`,null,E(e.run.startedBy===`agent`?`started by the agent`:`started by you`),1),I(`span`,null,E(i.value),1),(N(!0),P(M,null,j(f.value,([e,t])=>(N(),P(`span`,{key:e,class:`job-run-input`},E(e)+`=`+E(t),1))),128)),e.run.resumed?(N(),P(`span`,vg,`resumed `+E(e.run.resumed)+`× after restart`,1)):z(``,!0)]),I(`ol`,yg,[(N(!0),P(M,null,j(e.run.phases,(t,n)=>(N(),P(`li`,{key:t.id,class:T(`ph-${t.status}`),"aria-current":e.run.phase===t.id&&!r.value?`step`:void 0},[I(`span`,xg,[I(`span`,Sg,[t.status===`done`?(N(),F(k(nc),{key:0,size:15})):t.status===`running`?(N(),F(k(Nc),{key:1,size:15,class:`spin`})):t.status===`waiting`?(N(),F(k(Cc),{key:2,size:15})):[`failed`,`aborted`].includes(t.status)?(N(),F(k(dl),{key:3,size:15})):(N(),P(M,{key:4},[R(E(n+1),1)],64))]),I(`span`,Cg,E(t.label),1),t.progress?(N(),P(`span`,wg,E(t.progress.done)+`/`+E(t.progress.total),1)):z(``,!0)])],10,bg))),128))]),I(`div`,Tg,[(N(!0),P(M,null,j(e.run.phases,(e,t)=>(N(),P(`details`,{key:e.id,class:T([`job-phase`,`ph-${e.status}`]),open:d(e)},[I(`summary`,null,[I(`span`,Dg,E(t+1),1),I(`strong`,null,E(e.label),1),I(`span`,Og,E(e.summary??(e.status===`pending`?l(e.id)?.summary:e.status===`skipped`?`Skipped`:``)),1),I(`span`,kg,E(u(e)),1)]),e.status===`done`?z(``,!0):(N(),P(`p`,Ag,E(l(e.id)?.summary),1)),e.steps.length?(N(),P(`ul`,jg,[(N(!0),P(M,null,j(e.steps,e=>(N(),P(`li`,{key:e.id,class:T([`k-${e.kind}`,`st-${e.status}`])},[e.detail&&e.kind!==`tool`?(N(),P(`details`,{key:0,open:e.status===`error`},[I(`summary`,null,[L(c,{step:e},null,8,[`step`])]),I(`pre`,null,E(e.detail),1)],8,Mg)):(N(),P(`div`,Ng,[L(c,{step:e},null,8,[`step`])])),e.kind===`agent`&&e.conversationId?(N(),P(`button`,{key:2,class:`text-button job-step-link`,onClick:t=>k(lg)(e.conversationId)},` Open subagent #`+E(e.conversationId),9,Pg)):z(``,!0)],2))),128))])):e.status===`pending`?(N(),P(`p`,Fg,`Not started yet.`)):z(``,!0)],10,Eg))),128))]),e.run.approval===`pending`?(N(),P(`div`,Ig,[I(`div`,null,[L(k($c),{size:20}),o[5]||=I(`strong`,null,`Approve to continue`,-1)]),I(`p`,null,E(p.value?l(p.value.id)?.summary:`This run waits for you`)+`. It is paused on a saved checkpoint: close the browser or restart the device and the decision will still be waiting. `,1),I(`div`,Lg,[I(`button`,{class:`primary small`,disabled:!!k(rg),onClick:o[0]||=t=>k(sg)(e.run,!0)},[L(k(nc),{size:18}),o[6]||=R(`Approve & continue `,-1)],8,Rg),I(`button`,{class:`secondary`,disabled:!!k(rg),onClick:o[1]||=t=>k(sg)(e.run,!1)},`Decline`,8,zg)])])):z(``,!0),e.run.error&&e.run.status!==`aborted`?(N(),P(`p`,Bg,E(e.run.error),1)):z(``,!0),I(`footer`,Vg,[I(`span`,null,E(e.run.background?`Runs in the background: the conversation owns it, so Interrupt leaves it running.`:`Owned by this tool call: Interrupt stops it.`)+` Each phase saves a checkpoint, so a restart resumes the current phase.`,1),r.value?z(``,!0):(N(),P(`button`,{key:0,class:`secondary danger`,disabled:!!k(rg),onClick:o[2]||=t=>k(cg)(e.run)},[L(k(zc),{size:16}),o[7]||=R(`Stop `,-1)],8,Hg))])],10,ug))}}),Wg={class:`message-label`},Gg={class:`user-message`},Kg={class:`message-label`},qg={key:0,class:`streaming`},Jg={key:1},Yg=[`aria-label`],Xg=[`innerHTML`],Zg={key:1,class:`thinking`},Qg=[`data-call-id`],$g={class:`tool-status`},e_={class:`tool-section-label`},t_=[`aria-label`,`onClick`],n_={key:0,class:`typing`},r_={key:1,class:`message-error`},i_=[`aria-label`],a_={key:3,class:`live-tool`},o_={key:0},s_={class:`event-line`},c_=[`aria-label`],l_={key:0,class:`raw`},u_=kr({__name:`TranscriptItem`,props:{item:{}},emits:[`fork`],setup(e,{emit:t}){let n=t,r=e=>e.status===`error`?`Error`:e.status===`done`?`Done`:e.status,i=e=>e.kind===`user`?`pi-user`:e.kind===`assistant`?e.streaming?`live-generation`:`pi-assistant`:e.kind===`tool-result`?`pi-tool-result`:e.kind===`tool`?`live-tool-entry`:e.entryKind.replaceAll(`.`,`-`);return(t,a)=>(N(),P(`article`,{class:T([`entry`,i(e.item)])},[e.item.kind===`user`?(N(),P(M,{key:0},[I(`div`,Wg,[a[3]||=R(` YOU `,-1),I(`span`,null,`#`+E(e.item.id),1)]),I(`div`,Gg,E(e.item.text),1)],64)):e.item.kind===`assistant`?(N(),P(M,{key:1},[I(`div`,Kg,[a[5]||=R(` AGENT `,-1),e.item.streaming?(N(),P(`span`,qg,`Working`)):(N(),P(`span`,Jg,`#`+E(e.item.id),1)),e.item.streaming?z(``,!0):(N(),P(`button`,{key:2,class:`fork-button`,"aria-label":`Fork at entry ${e.item.id}`,title:`Fork from this entry. App State stays shared.`,onClick:a[0]||=t=>n(`fork`,e.item.id)},[L(k(xc),{size:18}),a[4]||=R(`Fork `,-1)],8,Yg))]),(N(!0),P(M,null,j(e.item.blocks,(e,t)=>(N(),P(M,{key:t},[e.type===`text`?(N(),P(`div`,{key:0,class:`markdown`,innerHTML:k(qh)(e.text)},null,8,Xg)):e.type===`thinking`?(N(),P(`details`,Zg,[a[6]||=I(`summary`,null,`Thinking`,-1),I(`div`,null,E(e.text),1)])):(N(),P(`details`,{key:2,class:T([`tool-call`,{failed:e.call.status===`error`}]),"data-call-id":e.call.callId},[I(`summary`,null,[e.call.status===`error`?(N(),F(k(Ec),{key:0,size:18})):e.call.status===`done`?(N(),F(k(nc),{key:1,size:18})):e.call.status===`running`?(N(),F(k(Ws),{key:2,size:18})):(N(),F(k(ul),{key:3,size:18})),I(`strong`,null,E(e.call.name),1),I(`code`,null,E(k(ed)(e.call.args)?.slice(0,90)),1),I(`span`,$g,E(r(e.call)),1)]),a[10]||=I(`div`,{class:`tool-section-label`},`Input`,-1),I(`pre`,null,E(k(ed)(e.call.args)),1),e.call.result===void 0?e.call.output?(N(),P(M,{key:1},[a[9]||=I(`div`,{class:`tool-section-label`},`Live output`,-1),I(`pre`,null,E(e.call.output),1)],64)):z(``,!0):(N(),P(M,{key:0},[I(`div`,e_,[a[8]||=I(`span`,null,`Result`,-1),e.call.resultEntryId===void 0?z(``,!0):(N(),P(`button`,{key:0,class:`fork-button`,"aria-label":`Fork at entry ${e.call.resultEntryId}`,title:`Fork after this result`,onClick:t=>n(`fork`,e.call.resultEntryId)},[L(k(xc),{size:18}),a[7]||=R(`Fork `,-1)],8,t_))]),I(`pre`,null,E(e.call.result),1)],64))],10,Qg)),e.type===`tool`&&e.call.name===`run_durable_job`&&k(eg)(e.call.callId)?(N(),F(Ug,{key:3,run:k(eg)(e.call.callId)},null,8,[`run`])):z(``,!0)],64))),128)),e.item.streaming&&!e.item.blocks.length?(N(),P(`div`,n_,[...a[11]||=[I(`i`,null,null,-1),I(`i`,null,null,-1),I(`i`,null,null,-1)]])):z(``,!0),e.item.error?(N(),P(`div`,r_,E(e.item.error),1)):z(``,!0)],64)):e.item.kind===`tool-result`?(N(),P(`details`,{key:2,class:T([`tool-result`,{failed:e.item.isError}])},[I(`summary`,null,[e.item.isError?(N(),F(k(Ec),{key:1,size:18})):(N(),F(k(nc),{key:0,size:18})),I(`strong`,null,E(e.item.name),1),I(`span`,null,E(e.item.isError?`error`:`result`),1),I(`button`,{class:`fork-button`,"aria-label":`Fork at entry ${e.item.id}`,onClick:a[1]||=Ms(t=>n(`fork`,e.item.id),[`prevent`])},[L(k(xc),{size:18}),a[12]||=R(`Fork `,-1)],8,i_)]),I(`pre`,null,E(e.item.text),1)],2)):e.item.kind===`tool`?(N(),P(`div`,a_,[I(`div`,null,[L(k(Ws),{size:18}),I(`strong`,null,E(e.item.call.name),1),I(`span`,null,E(e.item.call.status),1)]),e.item.call.output?(N(),P(`pre`,o_,E(e.item.call.output),1)):z(``,!0),e.item.call.name===`run_durable_job`&&k(eg)(e.item.call.callId)?(N(),F(Ug,{key:1,run:k(eg)(e.item.call.callId)},null,8,[`run`])):z(``,!0)])):e.item.entryKind===`demo.job`&&k($h)(e.item.data.taskId)?(N(),F(Ug,{key:4,run:k($h)(e.item.data.taskId)},null,8,[`run`])):(N(),P(M,{key:5},[I(`div`,s_,[e.item.entryKind===`demo.state-change`?(N(),F(k(ec),{key:0,size:18})):(N(),F(k(kc),{key:1,size:18})),I(`span`,null,E(e.item.text),1),I(`button`,{class:`fork-button`,"aria-label":`Fork at entry ${e.item.id}`,onClick:a[2]||=t=>n(`fork`,e.item.id)},[L(k(xc),{size:18}),a[13]||=R(`Fork `,-1)],8,c_)]),e.item.note?(N(),P(`details`,l_,[a[14]||=I(`summary`,null,`Context note`,-1),I(`pre`,null,E(e.item.note),1)])):z(``,!0)],64))],2))}}),d_={key:0,class:`git-chip-wrap`},f_=[`title`],p_={class:`branch`},m_={key:0,class:`dirty`},h_={key:1,class:`ahead`},g_={key:2,class:`behind`},__=Od(kr({__name:`GitChip`,props:{deviceId:{},cwd:{}},setup(e){let t=e,n=B(()=>t.cwd??Tu.value?.cwd??``),r=B(()=>t.deviceId??yu.value),i=B(()=>Ud(r.value||`?`,n.value||`?`)),a=B(()=>i.value.status),o=B(()=>i.value.loading),s=B(()=>(a.value?.staged??0)+(a.value?.unstaged??0)+(a.value?.untracked??0));return Gd(r.value||`?`,n.value||`?`),Yr(()=>Gd(r.value||`?`,n.value||`?`)),A([r,n],()=>void Gd(r.value||`?`,n.value||`?`)),(e,t)=>a.value?.repo||o.value?(N(),P(`span`,d_,[I(`button`,{class:`crumb git-chip`,title:a.value?`${a.value.root} · ${a.value.head??``} ${a.value.subject??``} — opens the Git tab`:`loading git…`,onClick:t[0]||=e=>k(cd)(`git`)},[L(k(yc),{size:16,"aria-hidden":`true`}),I(`span`,p_,E(a.value?.branch??a.value?.head??`…`),1),s.value?(N(),P(`span`,m_,`±`+E(s.value),1)):z(``,!0),a.value?.ahead?(N(),P(`span`,h_,`↑`+E(a.value.ahead),1)):z(``,!0),a.value?.behind?(N(),P(`span`,g_,`↓`+E(a.value.behind),1)):z(``,!0),L(k(rc),{size:14,"aria-hidden":`true`})],8,f_)])):z(``,!0)}}),[[`__scopeId`,`data-v-c0fb9e98`]]),v_=()=>globalThis.crypto?.randomUUID?.()??`${Date.now()}-${Math.random().toString(36).slice(2)}`,y_=[`off`,`minimal`,`low`,`medium`,`high`,`xhigh`],b_={enabled:!0,reserveTokens:16384,backgroundTokens:32768,keepRecentTokens:2e3},x_={auto:2e5,wait:25e4};function S_(e){if(!(e>0))return{...b_};let t=Math.min(x_.wait,e-b_.reserveTokens),n=Math.min(x_.auto,t-b_.backgroundTokens);return{...b_,reserveTokens:e-t,backgroundTokens:t-n}}function C_(e,t){let n=Math.max(0,e-t.reserveTokens);return{wait:n,auto:t.backgroundTokens>0?Math.max(0,n-t.backgroundTokens):void 0}}var w_=(e,t)=>{if(e===void 0)throw Error(`No ${t} selected`);return e},T_=[{name:`compact`,args:`[instructions]`,description:`Summarize older context; stored entries stay`,run:async e=>{await w_(Du.value,`agent`).compact(e||void 0),G(`Compaction requested. /tasks shows its outcome.`)}},{name:`reset`,args:`[handoff note]`,description:`Start a fresh context; history stays stored`,run:async e=>{await w_(Du.value,`agent`).reset(e||void 0),G(`New context started.`)}},{name:`tasks`,description:`Open the Tasks panel`,run:()=>cd(`tasks`)},{name:`new`,args:`[name]`,description:`New agent in this workspace`,run:async e=>{let t=w_(U.value,`workspace`),n=await w_(Ou.value,`workspace`).createAgent(e?{name:e}:{});ku({...t,agentId:n.id}),G(`New agent ${n.name}.`)}},{name:`fork`,args:`[entryId] [name]`,description:`Fork at an entry (default: the last reply)`,run:async e=>{let[t,...n]=e.split(/\s+/).filter(Boolean),r=t&&/^\d+$/.test(t)?Number(t):void 0,i=(r===void 0?[t,...n]:n).filter(Boolean).join(` `),a=r??Lu.value.entries.filter(e=>e.kind===`pi.assistant`).at(-1)?.id;if(a===void 0)throw Error(`Nothing to fork yet`);let o=w_(U.value,`agent`),s=await w_(Du.value,`agent`).fork({entryId:a,name:i||void 0});ku({...o,agentId:s.id}),G(`Forked at entry #${a}. App State stays shared.`)}},{name:`name`,args:`<name>`,description:`Rename this agent`,run:async e=>{if(!e)throw Error(`Usage: /name <name>`);await w_(Du.value,`agent`).rename(e),G(`Agent renamed to ${e}.`)}},{name:`model`,description:`Choose this agent's model`,run:()=>W.dialog={kind:`models`}},{name:`thinking`,args:`<level>`,description:`Thinking level: ${y_.join(`, `)}`,run:async e=>{if(!y_.includes(e))throw Error(`Levels: ${y_.join(`, `)}`);await w_(Du.value,`agent`).configure({thinkingLevel:e}),await Ku(),G(`Thinking ${e}. Used on the next turn.`)}},{name:`help`,description:`How this works, keys and commands`,run:()=>W.dialog={kind:`help`}}];function E_(e){let t=e.trim().match(/^\/(\S+)\s*([\s\S]*)$/),n=t&&T_.find(e=>e.name===t[1]);return n?{command:n,arg:t[2].trim()}:void 0}var D_={class:`composer-region`},O_={key:0,class:`queue`},k_=[`aria-label`,`onClick`],A_={class:`composer`},j_={key:0,class:`slash-menu`,role:`listbox`,"aria-label":`Slash commands`},M_=[`aria-selected`,`onMousedown`],N_={key:0,class:`slash-args`},P_={class:`slash-desc`},F_={class:`composer-toolbar`},I_={class:`composer-left`},L_={class:`lib-wrap`},R_=[`aria-label`],z_={key:0,class:`hint`},B_={class:`save-row`},V_=[`disabled`],H_=[`title`,`onClick`],U_=[`aria-label`,`onClick`],W_={class:`queue-mode`},G_={class:`composer-right`},K_=[`disabled`],q_=[`disabled`],J_=`dpi-prompt-library`,Y_=Od(kr({__name:`Composer`,setup(e){let t=O(`followUp`),n=O(!1),r=O(``),i=O([]),a=()=>{try{i.value=JSON.parse(localStorage.getItem(J_)??`[]`)}catch{i.value=[]}},o=()=>localStorage.setItem(J_,JSON.stringify(i.value));a();let s=()=>{let e=W.composer.trim(),t=r.value.trim()||e.slice(0,24)||`snippet`;e&&(i.value=[{name:t,text:e},...i.value.filter(e=>e.name!==t)].slice(0,30),o(),r.value=``)},c=e=>{i.value=i.value.filter(t=>t.name!==e),o()},l=O(!1),u=B(()=>xu.value&&Lu.value.ready&&Cu.status.value===`live`&&fu.value===`live`),d=O(0),f=O(!1),p=B(()=>{let e=W.composer.match(/^\/(\S*)$/);return e&&!f.value?T_.filter(t=>t.name.startsWith(e[1].toLowerCase())):[]});A(()=>W.composer,()=>{d.value=0,W.composer.startsWith(`/`)||(f.value=!1)});async function m(e,t=!1){!e.args||t&&e.args.startsWith(`[`)&&W.composer===`/${e.name}`?(W.composer=`/${e.name}`,await _()):W.composer=`/${e.name} `}function h(e){if(!p.value.length){e.key===`Enter`&&!e.shiftKey&&!e.isComposing&&(e.preventDefault(),_());return}if(e.key===`ArrowDown`||e.key===`ArrowUp`){let t=p.value.length;d.value=(d.value+(e.key===`ArrowDown`?1:t-1))%t}else if(e.key===`Tab`||e.key===`Enter`&&!e.shiftKey)m(p.value[d.value],e.key===`Enter`);else if(e.key===`Escape`)f.value=!0;else return;e.preventDefault(),e.stopPropagation()}async function g(e){let t=E_(e);return t?(l.value=!0,await Zu(async()=>{await t.command.run(t.arg),W.composer=``}),l.value=!1,!0):!1}async function _(){let e=W.composer.trim(),n=Du.value;if(!e||l.value||!n||!u.value||e.startsWith(`/`)&&await g(e))return;l.value=!0;let r=U.value,i=`${r.deviceId}/${r.sessionId}/${r.agentId}`,a;try{a=JSON.parse(sessionStorage.getItem(`dpi.pending-send`)??`null`)}catch{}let o=a?.key===i&&a.content===e&&a.mode===t.value?a.requestId:v_();sessionStorage.setItem(`dpi.pending-send`,JSON.stringify({key:i,content:e,mode:t.value,requestId:o})),await Zu(async()=>{await n.send(e,t.value,o),sessionStorage.removeItem(`dpi.pending-send`),W.composer=``}),l.value=!1}function v(e){Zu(()=>Du.value.withdraw(e))}return(e,a)=>(N(),P(`div`,D_,[k(Lu).inbox.length?(N(),P(`div`,O_,[(N(!0),P(M,null,j(k(Lu).inbox,e=>(N(),P(`div`,{key:e.id},[L(k(sc),{size:18}),I(`span`,null,E(e.mode===`steer`?`Steer`:`Queued`)+`: `+E(e.content??`Context update`),1),I(`button`,{class:`icon-button`,"aria-label":`Withdraw submission ${e.id}`,title:`Withdraw queued input`,onClick:t=>v(e.id)},[L(k(dl),{size:18})],8,k_)]))),128))])):z(``,!0),I(`div`,A_,[p.value.length?(N(),P(`ul`,j_,[(N(!0),P(M,null,j(p.value,(e,t)=>(N(),P(`li`,{key:e.name,role:`option`,"aria-selected":t===d.value,class:T({active:t===d.value}),onMousedown:Ms(t=>m(e),[`prevent`])},[I(`code`,null,`/`+E(e.name),1),e.args?(N(),P(`span`,N_,E(e.args),1)):z(``,!0),I(`span`,P_,E(e.description),1)],42,M_))),128))])):z(``,!0),Wn(I(`textarea`,{"onUpdate:modelValue":a[0]||=e=>k(W).composer=e,rows:`2`,placeholder:`Give your agent something to do, or type / for commands…`,"aria-label":`Message your agent`,onKeydown:h},null,544),[[Ss,k(W).composer]]),I(`div`,F_,[I(`div`,I_,[I(`div`,L_,[I(`button`,{type:`button`,class:`icon-button`,"aria-label":`Prompt library (${i.value.length})`,title:`Prompt library — saved snippets`,onClick:a[1]||=e=>n.value=!n.value},[L(k(Ac),{size:18})],8,R_),n.value?(N(),P(`div`,{key:0,class:`lib`,onClick:a[4]||=Ms(()=>{},[`stop`])},[I(`header`,null,[a[7]||=I(`b`,null,`Prompts`,-1),I(`button`,{class:`icon-button`,"aria-label":`Close library`,onClick:a[2]||=e=>n.value=!1},[L(k(dl),{size:14})])]),i.value.length?z(``,!0):(N(),P(`p`,z_,`Type something below, give it a name, save it.`)),I(`div`,B_,[Wn(I(`input`,{"onUpdate:modelValue":a[3]||=e=>r.value=e,placeholder:`name…`,onKeyup:Ps(s,[`enter`])},null,544),[[Ss,r.value]]),I(`button`,{type:`button`,class:`small`,disabled:!k(W).composer.trim(),onClick:s},`save composer as`,8,V_)]),I(`ul`,null,[(N(!0),P(M,null,j(i.value,e=>(N(),P(`li`,{key:e.name},[I(`button`,{type:`button`,class:`use`,title:e.text,onClick:t=>(k(W).composer=e.text,n.value=!1)},[I(`b`,null,E(e.name),1)],8,H_),I(`button`,{type:`button`,class:`icon-button`,"aria-label":`Delete ${e.name}`,onClick:t=>c(e.name)},[L(k(il),{size:13})],8,U_)]))),128))])])):z(``,!0)]),I(`div`,W_,[Wn(I(`select`,{"onUpdate:modelValue":a[5]||=e=>t.value=e,"aria-label":`When busy`,title:`Follow-up waits for this run. Steer joins after a tool round.`},[...a[8]||=[I(`option`,{value:`followUp`},`Follow-up`,-1),I(`option`,{value:`steer`},`Steer`,-1),I(`option`,{value:`reject`},`Reject if busy`,-1)]],512),[[Ts,t.value]]),L(k(rc),{size:24,"aria-hidden":`true`})])]),I(`div`,G_,[I(`button`,{class:`interrupt`,disabled:!k(Vu)||k(rd),title:`Stop foreground work and owned subagents (Escape). Background jobs continue.`,onClick:a[6]||=(...e)=>k(id)&&k(id)(...e)},[L(k(zc),{size:24,class:`stop-sign`,fill:`currentColor`}),a[9]||=R(`Interrupt`,-1)],8,K_),I(`button`,{class:`send`,"aria-label":`Send message`,disabled:!k(W).composer.trim()||l.value||!u.value,onClick:_},[L(k(Xs),{size:20})],8,q_)])])]),a[10]||=I(`div`,{class:`composer-footnote`},[I(`span`,null,[I(`i`,{class:`live-dot`}),R(`Closing this window never interrupts your agent.`)])],-1)]))}}),[[`__scopeId`,`data-v-b2af49ae`]]),X_={class:`chat-panel`},Z_={class:`chat-header`},Q_={class:`lineage-picker`},$_={class:`lineage-toolbar`},ev=[`title`],tv={class:`crumb-main`},nv={class:`device-chip`},rv=[`title`],iv={class:`crumb-main`},av={class:`crumb-name`},ov=[`aria-current`,`title`,`onClick`],sv={class:`crumb-kind`},cv={class:`crumb-main`},lv={class:`crumb-name`},uv=[`disabled`],dv=[`aria-expanded`],fv={key:0,class:`lineage-source`},pv={id:`conversation-picker`,class:`conversation-picker`,role:`dialog`,"aria-label":`Choose conversation`},mv=[`aria-label`,`aria-current`,`onClick`],hv={class:`conversation-choice-content`},gv={class:`choice-lineage`},_v={class:`choice-source`},vv={key:0,class:`agent-stream-status`,role:`alert`},yv=[`disabled`],bv={key:0,class:`chat-empty`},xv={key:0},Sv={key:1},Cv={key:0,class:`chat-empty`},wv={class:`starter-grid`},Tv={key:1,class:`entry live-generation`},Ev={class:`message-label`},Dv={class:`streaming`},Ov={key:2,class:`hint retry-note`},kv=kr({__name:`AgentView`,setup(e){let t=O(),n=O(),r=O(!1),i=B(()=>Lu.value.items),a=B(()=>i.value.some(e=>e.kind===`assistant`&&e.streaming)),o=B(()=>i.value.some(e=>e.kind===`tool`&&e.call.status===`running`||e.kind===`assistant`&&e.blocks.some(e=>e.type===`tool`&&e.call.status===`running`))),s=e=>e.kind===`fork`?`Forked from agent #${e.parentId} at entry #${e.forkedAt}`:e.kind===`subagent`?`Owned by agent #${e.ownerAgentId}`:`Root agent`,c=B(()=>Ru.value.map(e=>({...e,lineage:El(Ru.value,e.id)})).sort((e,t)=>{for(let n=0;n<Math.min(e.lineage.length,t.lineage.length);n++)if(e.lineage[n].id!==t.lineage[n].id)return e.lineage[n].id-t.lineage[n].id;return e.lineage.length-t.lineage.length})),l=B(()=>zu.value.at(-1)),u=e=>e.kind===`root`?`agent`:e.kind;function d(){U.value&&(_u.tree=!0,Mu(U.value.deviceId,!0))}function f(){let e=Ru.value.find(e=>e.kind===`root`)??Ru.value[0];e&&p(e.id)}function p(e){r.value=!1,U.value&&ku({...U.value,agentId:e})}function m(e){let t=Du.value,n=U.value;t&&n&&(W.dialog={kind:`prompt`,title:`Fork conversation`,hint:`${l.value?.name??`Agent #${n.agentId}`} / entry #${e}. Leave the name blank to use Fork #ID.`,label:`Fork name`,optional:!0,placeholder:`e.g. Alternative approach`,submit:`Create fork`,run:async r=>{let i=await t.fork({entryId:e,name:r||void 0});ku({...n,agentId:i.id}),G(`Forked at entry #${e}. App State stays shared.`)}})}function h(){let e=Du.value,t=l.value;e&&t&&(W.dialog={kind:`prompt`,title:`Rename agent`,label:`Agent name`,value:t.named?t.name:``,placeholder:t.name,submit:`Save name`,run:t=>e.rename(t)})}A(U,()=>{r.value=!1});let g=!0;return A(Cu.version,()=>{let e=t.value;g=!e||e.scrollHeight-e.scrollTop-e.clientHeight<120},{flush:`pre`}),A(Cu.version,()=>{g&&jn(()=>t.value?.scrollTo({top:t.value.scrollHeight,behavior:`instant`}))}),A(()=>zu.value.length,()=>void jn(()=>n.value&&(n.value.scrollLeft=n.value.scrollWidth))),(e,g)=>(N(),P(`section`,X_,[I(`header`,Z_,[I(`div`,Q_,[I(`div`,$_,[I(`nav`,{ref_key:`lineageNav`,ref:n,class:`crumbs conversation-lineage`,"aria-label":`Conversation lineage`},[I(`button`,{class:`crumb`,title:`${k(bu)?.name} · ${k(bu)?.url}`,onClick:d},[g[5]||=I(`span`,{class:`crumb-kind`},`device`,-1),I(`span`,tv,[L(Fd,{device:k(bu),size:18},null,8,[`device`]),I(`span`,nv,E(k(bu)?.name??k(bu)?.id),1)])],8,ev),L(k(ic),{class:`crumb-sep`,size:18,"aria-hidden":`true`}),I(`button`,{class:`crumb`,title:k(Tu)?.cwd,onClick:f},[g[6]||=I(`span`,{class:`crumb-kind`},`workspace`,-1),I(`span`,iv,[L(k(_c),{size:18,"aria-hidden":`true`}),I(`span`,av,E(k(Tu)?.name),1)])],8,rv),k(Tu)?.cwd?(N(),F(__,{key:0})):z(``,!0),(N(!0),P(M,null,j(k(zu),e=>(N(),P(M,{key:e.id},[L(k(ic),{class:`crumb-sep`,size:18,"aria-hidden":`true`}),I(`button`,{class:T([`crumb`,{current:e.id===k(U)?.agentId}]),"aria-current":e.id===k(U)?.agentId?`page`:void 0,title:s(e),onClick:t=>p(e.id)},[I(`span`,sv,E(u(e)),1),I(`span`,cv,[e.kind===`fork`?(N(),F(k(xc),{key:0,size:18,"aria-hidden":`true`})):e.kind===`subagent`?(N(),F(k(lc),{key:1,size:18,"aria-hidden":`true`})):(N(),F(k(Fc),{key:2,size:18,"aria-hidden":`true`})),I(`span`,lv,E(e.name),1)])],10,ov)],64))),128))],512),I(`button`,{class:`icon-button`,"aria-label":`Rename agent`,title:`Rename this agent`,disabled:!l.value,onClick:h},[L(k(Gc),{size:18})],8,uv),I(`button`,{class:`icon-button conversation-menu-toggle`,"aria-label":`Browse conversations`,"aria-haspopup":`dialog`,"aria-expanded":r.value,"aria-controls":`conversation-picker`,title:`Browse roots and forks`,onClick:g[0]||=e=>r.value=!r.value},[L(k(rc),{size:18})],8,dv)]),l.value&&l.value.kind!==`root`?(N(),P(`div`,fv,E(s(l.value)),1)):z(``,!0),r.value?(N(),P(M,{key:1},[I(`button`,{class:`conversation-menu-dismiss`,"aria-label":`Close conversation picker`,onClick:g[1]||=e=>r.value=!1}),I(`section`,pv,[g[7]||=I(`div`,{class:`conversation-picker-heading`},`Roots & forks`,-1),(N(!0),P(M,null,j(c.value,e=>(N(),P(`button`,{key:e.id,class:T([`conversation-choice`,{selected:e.id===k(U)?.agentId}]),"aria-label":e.lineage.map(e=>e.name).join(` → `),"aria-current":e.id===k(U)?.agentId?`page`:void 0,onClick:t=>p(e.id)},[I(`div`,hv,[I(`span`,gv,[(N(!0),P(M,null,j(e.lineage,(t,n)=>(N(),P(M,{key:t.id},[n?(N(),F(k(ic),{key:0,size:18,"aria-hidden":`true`})):z(``,!0),I(`span`,{class:T({"choice-ancestor":n<e.lineage.length-1})},E(t.name),3)],64))),128))]),I(`span`,_v,E(s(e)),1)]),e.id===k(U)?.agentId?(N(),F(k(nc),{key:0,size:18,"aria-hidden":`true`})):e.kind===`fork`?(N(),F(k(xc),{key:1,size:18,"aria-hidden":`true`})):(N(),F(k(Fc),{key:2,size:18,"aria-hidden":`true`}))],10,mv))),128))])],64)):z(``,!0)])]),k(Cu).fault.value||k(Cu).status.value===`fault`||k(Cu).status.value===`reconnecting`||k(Lu).ready&&k(Cu).status.value===`connecting`?(N(),P(`div`,vv,[I(`div`,null,[I(`strong`,null,E(k(Lu).ready?`Cached transcript is stale.`:`Agent stream unavailable.`),1),I(`p`,null,E(k(Cu).fault.value||`Updates are paused while the stream reconnects.`),1),g[8]||=I(`p`,null,`Sending is paused until a fresh snapshot arrives. Your draft is kept.`,-1)]),I(`button`,{disabled:k(Cu).status.value===`connecting`,onClick:g[2]||=(...e)=>k(Cu).retry&&k(Cu).retry(...e)},` Retry stream `,8,yv)])):z(``,!0),I(`div`,{ref_key:`chat`,ref:t,class:`chat-scroll`,"data-testid":`chat`},[k(Lu).ready?(N(),P(M,{key:1},[i.value.length?z(``,!0):(N(),P(`div`,Cv,[g[13]||=I(`div`,{class:`agent-orb`},[I(`img`,{src:`/icons/durable-pi.svg`,alt:`Durable Pi`}),I(`i`)],-1),g[14]||=I(`span`,{class:`eyebrow`},`YOUR DURABLE AGENT IS READY`,-1),g[15]||=I(`h2`,null,`A conversation with continuity.`,-1),I(`p`,null,`Messages, tools and state live on `+E(k(bu)?.id)+`, beyond this window.`,1),I(`div`,wv,[I(`button`,{onClick:g[3]||=e=>k(Qu)(`Inspect this directory using your tools and give me a brief overview. Do not modify any files.`)},[L(k(_c),{size:18}),g[9]||=I(`strong`,null,`Explore this directory`,-1),g[10]||=I(`span`,null,`See coding tools in action`,-1),L(k(Ys),{size:18})]),I(`button`,{onClick:g[4]||=e=>k(Qu)(`Use read_state, then update_state to add a field called progress with value 1 and a boolean called ready with value false.`)},[L(k(ec),{size:18}),g[11]||=I(`strong`,null,`Make a state change`,-1),g[12]||=I(`span`,null,`Watch the workspace update`,-1),L(k(Ys),{size:18})])])])),(N(!0),P(M,null,j(i.value,e=>(N(),F(u_,{key:e.id,item:e,onFork:m},null,8,[`item`]))),128)),k(Lu).running&&!a.value&&!o.value?(N(),P(`div`,Tv,[I(`div`,Ev,[g[16]||=R(` AGENT `,-1),I(`span`,Dv,E(k(Lu).retry?`Retry scheduled`:`Working`),1)]),g[17]||=I(`div`,{class:`typing`},[I(`i`),I(`i`),I(`i`)],-1)])):z(``,!0),k(Lu).retry?(N(),P(`p`,Ov,` Retrying: `+E(k(Lu).retry.error),1)):z(``,!0),(N(!0),P(M,null,j(k(Lu).notices,(e,t)=>(N(),P(`p`,{key:t,class:`message-error`},E(e),1))),128))],64)):(N(),P(`div`,bv,[L(k(Ws),{size:30}),k(Cu).status.value===`fault`?(N(),P(`h2`,xv,`This agent is unavailable.`)):(N(),P(`h2`,Sv,`Connecting to the agent…`)),I(`p`,null,`The agent keeps working on `+E(k(bu)?.id)+` while this view connects.`,1)]))],512),L(Y_)]))}});function Av(e,t){return`${e}/${t.replaceAll(`~`,`~0`).replaceAll(`/`,`~1`)}`}var jv=[`data-state-path`],Mv={key:0,class:`state-field-heading`},Nv=[`value`,`aria-label`,`disabled`],Pv=[`value`],Fv=[`aria-label`,`disabled`],Iv=[`aria-label`,`disabled`],Lv=[`aria-label`,`disabled`],Rv=[`value`],zv=[`disabled`],Bv=[`disabled`,`aria-label`],Vv={key:2,class:`state-number`},Hv=[`aria-label`,`disabled`],Uv=[`aria-label`,`disabled`],Wv=[`aria-label`,`disabled`],Gv={key:3,class:`state-boolean`},Kv=[`aria-label`,`aria-checked`,`disabled`],qv=[`aria-label`,`disabled`],Jv={key:5,class:`muted`},Yv=kr({__name:`StateEditor`,props:{value:{type:[String,Number,Boolean,null,Array,Object]},path:{default:``},label:{default:`App State`},disabled:{type:Boolean}},emits:[`change`],setup(e,{emit:t}){let n=e,r=t,i=B(()=>n.value===null?`null`:Array.isArray(n.value)?`array`:typeof n.value),a=B(()=>i.value===`object`||i.value===`array`),o=B(()=>a.value?Object.entries(n.value):[]),s=O(``),c=O(!1),l=O(``),u=O(`string`),d=O(!1),f=[`string`,`number`,`boolean`,`object`,`array`,`null`],p={string:()=>``,number:()=>0,boolean:()=>!1,object:()=>({}),array:()=>[],null:()=>null};A(()=>n.value,e=>{c.value||(s.value=String(e??``))},{immediate:!0});function m(e,t){r(`change`,{operation:e,path:n.path,value:t})}function h(){c.value=!1;let e=i.value===`number`?Number(s.value):s.value;if(i.value===`number`&&(!String(s.value).trim()||!Number.isFinite(e))){s.value=String(n.value);return}e!==n.value&&m(`update`,e)}function g(){let e=i.value===`array`?`-`:l.value.trim();e&&(r(`change`,{operation:`create`,path:Av(n.path,e),value:p[u.value]()}),l.value=``,d.value=!1)}return(t,n)=>{let _=ei(`StateEditor`,!0);return N(),P(`div`,{class:T([`state-field`,{"state-root":e.path===``}]),"data-state-path":e.path},[e.path===``?z(``,!0):(N(),P(`div`,Mv,[I(`strong`,null,E(e.label),1),I(`select`,{value:i.value,"aria-label":`Type of ${e.path}`,disabled:e.disabled,onChange:n[0]||=e=>m(`update`,p[e.target.value]())},[(N(),P(M,null,j(f,e=>I(`option`,{key:e,value:e},E(e),9,Pv)),64))],40,Nv),I(`button`,{class:`icon-button`,"aria-label":`Delete ${e.path}`,title:`Delete field`,disabled:e.disabled,onClick:n[1]||=e=>m(`delete`)},[L(k(il),{size:18})],8,Fv)])),a.value?(N(),P(M,{key:1},[(N(!0),P(M,null,j(o.value,([t,i])=>(N(),F(_,{key:t,value:i,path:k(Av)(e.path,t),label:t,disabled:e.disabled,onChange:n[2]||=e=>r(`change`,e)},null,8,[`value`,`path`,`label`,`disabled`]))),128)),d.value&&i.value===`array`?(N(),P(`form`,{key:0,class:`state-add`,onSubmit:Ms(g,[`prevent`])},[i.value===`array`?z(``,!0):Wn((N(),P(`input`,{key:0,"onUpdate:modelValue":n[3]||=e=>l.value=e,placeholder:`Field name`,"aria-label":`New field name in ${e.path||`/`}`,required:``,disabled:e.disabled},null,8,Iv)),[[Ss,l.value]]),Wn(I(`select`,{"onUpdate:modelValue":n[4]||=e=>u.value=e,"aria-label":`New field type in ${e.path||`/`}`,disabled:e.disabled},[(N(),P(M,null,j(f,e=>I(`option`,{key:e,value:e},E(e),9,Rv)),64))],8,Lv),[[Ts,u.value]]),I(`button`,{class:`secondary small`,disabled:e.disabled||i.value!==`array`&&!l.value.trim()},` Add `,8,zv),I(`button`,{type:`button`,class:`text-button`,onClick:n[5]||=e=>d.value=!1},`Cancel`)],32)):i.value===`array`?(N(),P(`button`,{key:1,class:`text-button state-add-button`,disabled:e.disabled,"aria-label":`Add ${i.value===`array`?`item`:`field`} to ${e.path||`/`}`,onClick:n[6]||=e=>d.value=!0},[L(k(qc),{size:18}),R(E(i.value===`array`?`Add item`:`Add field`),1)],8,Bv)):z(``,!0)],64)):i.value===`number`?(N(),P(`div`,Vv,[I(`button`,{class:`secondary`,"aria-label":`Decrement ${e.path}`,disabled:e.disabled,onClick:n[7]||=e=>m(`increment`,-1)},[L(k(Ic),{size:18})],8,Hv),Wn(I(`input`,{"onUpdate:modelValue":n[8]||=e=>s.value=e,type:`number`,step:`any`,"aria-label":`Value of ${e.path}`,disabled:e.disabled,onFocus:n[9]||=e=>c.value=!0,onBlur:h,onKeydown:n[10]||=Ps(e=>e.target.blur(),[`enter`])},null,40,Uv),[[Ss,s.value]]),I(`button`,{class:`secondary`,"aria-label":`Increment ${e.path}`,disabled:e.disabled,onClick:n[11]||=e=>m(`increment`,1)},[L(k(qc),{size:18})],8,Wv)])):i.value===`boolean`?(N(),P(`div`,Gv,[I(`button`,{class:T([`switch`,{on:e.value===!0}]),role:`switch`,"aria-label":`Value of ${e.path}`,"aria-checked":e.value===!0,disabled:e.disabled,onClick:n[12]||=t=>m(`update`,!e.value)},[...n[15]||=[I(`span`,null,null,-1)]],10,Kv),I(`span`,null,E(e.value),1)])):i.value===`string`?Wn((N(),P(`textarea`,{key:4,"onUpdate:modelValue":n[13]||=e=>s.value=e,rows:`2`,"aria-label":`Value of ${e.path}`,disabled:e.disabled,onFocus:n[14]||=e=>c.value=!0,onBlur:h},null,40,qv)),[[Ss,s.value]]):(N(),P(`span`,Jv,`null`))],10,jv)}}}),Xv=[`data-status`],Zv=[`title`],Qv=[`title`],$v=[`href`],ey=[`title`],ty=kr({__name:`TunnelStatusBar`,props:{device:{}},setup(e){let t=e,n=B(()=>t.device.status===`online`),r=B(()=>t.device.transport===`tunnel`),i=B(()=>n.value?r.value?`online · via tunnel`:`online · LAN`:r.value?`tunnel`:`LAN`),a=B(()=>t.device.tunnel?.state===`connected`);return(t,o)=>(N(),P(`span`,{class:`tunnel-status`,"data-status":e.device.status},[I(`span`,{class:`axis transport`,title:r.value?`Hub ⇄ device over the tunnel (WSS)`:`Hub → device over LAN`},[r.value?(N(),F(k(tc),{key:0,size:13,class:T({live:a.value})},null,8,[`class`])):(N(),F(k(cl),{key:1,size:13,class:T({live:n.value})},null,8,[`class`])),R(` `+E(i.value),1)],8,Zv),I(`span`,{class:T([`axis monitor`,e.device.status])},[e.device.status===`offline`?(N(),F(k(sl),{key:0,size:13})):(N(),P(M,{key:1},[R(E(e.device.status),1)],64))],2),r.value&&a.value&&e.device.tunnel?(N(),P(`span`,{key:0,class:`axis muted`,title:`tunnel last seen ${k(nd)(e.device.tunnel.lastSeenAt)}`},E(e.device.tunnel.readerCount)+` reader`+E(e.device.tunnel.readerCount===1?``:`s`),9,Qv)):z(``,!0),e.device.url?(N(),P(`a`,{key:1,class:`axis url`,href:e.device.url,target:`_blank`,rel:`noreferrer`},E(e.device.url),9,$v)):z(``,!0),e.device.lastSeenAt?(N(),P(`span`,{key:2,class:`axis muted`,title:`last probe ${k(nd)(e.device.lastSeenAt)}`},E(k(nd)(e.device.lastSeenAt)),9,ey)):z(``,!0)],8,Xv))}});async function ny(e,t,n,r,i){let a=await fetch(`/api${t}`,{method:e,headers:n===void 0?{}:{"content-type":`application/json`},body:n===void 0?void 0:JSON.stringify(n),signal:r,...i?{keepalive:i}:{}}),o=await a.json().catch(()=>void 0);if(!a.ok){let e=o?.error;throw new Bl(e?.code??`internal`,e?.message??`${a.status} ${a.statusText}`,a.status)}return o}function ry(e){return e.offerUrl??e.pairUrl}var iy={pending:e=>ny(`GET`,`/pair/codes`,void 0,e),pairings:e=>ny(`GET`,`/pairings`,void 0,e),createCode:e=>ny(`POST`,`/pair/code`,{},e),resolveCode:(e,t)=>ny(`POST`,`/pair/resolve`,{code:e},t),codeState:(e,t)=>ny(`GET`,`/pair/codes/${encodeURIComponent(e)}`,void 0,t),approve:(e,t,n)=>ny(`POST`,`/pair/codes/${encodeURIComponent(e)}/approve`,t,n),cancel:(e,t,n)=>ny(`POST`,`/pair/codes/${encodeURIComponent(e)}/cancel`,{},t,n),rotate:(e,t)=>ny(`POST`,`/pairings/${encodeURIComponent(e)}/rotate`,{},t),revoke:(e,t=`user`,n)=>ny(`POST`,`/pairings/${encodeURIComponent(e)}/revoke`,{reason:t},n)},ay=0;function oy(){let e=++ay,t=!1;return{gen:e,close:()=>t=!0,closed:()=>t}}var sy=class extends Error{codeId;constructor(e){super(`pairing poll timed out for ${e}`),this.codeId=e,this.name=`PollTimeout`}},cy=e=>e===`issued`||e===`cancelled`||e===`expired`;async function ly(e,t,n={}){let r=n.intervalMs??1e3,i=Date.now()+(n.timeoutMs??33e4);for(;;){if(e.closed())return;if(n.signal?.aborted)throw new DOMException(`The operation was aborted.`,`AbortError`);if(Date.now()>i)throw new sy(t);let a=await iy.codeState(t,n.signal);if(e.closed())return;if(e.state=a,n.onState?.(a),cy(a.phase))return a;await new Promise(e=>setTimeout(e,r))}}var uy={key:0,class:`token-manager`,"aria-label":`Credential manager`},dy={class:`credential-fingerprint`},fy=[`title`],py={key:0,class:`rotation-badge`,role:`status`},my={class:`token-actions`},hy=[`disabled`],gy=[`disabled`],_y={key:1,class:`message-error`,role:`alert`},vy=kr({__name:`TokenManager`,props:{device:{}},setup(e){let t=e,n=O(!1),r=O(``),i=B(()=>t.device.pairing);async function a(){if(!n.value){n.value=!0,r.value=``;try{await iy.rotate(t.device.id),G(`Rotation queued — it completes when the device acknowledges the new credential.`)}catch(e){r.value=tu(e)}finally{n.value=!1}}}async function o(){n.value||(W.dialog={kind:`prompt`,title:`Revoke ${t.device.id}?`,hint:`Every tunnel credential for this device dies at commit and the live tunnel is cut within a second. The device cleans its own files the next time it talks to the hub.`,submit:`Revoke`,danger:!0,run:async()=>{await iy.revoke(t.device.id,`user`),G(`Revoke committed on the hub. The tunnel is cut; the device cleans up on its next contact.`)}})}return(e,t)=>i.value?(N(),P(`section`,uy,[I(`header`,null,[L(k(Dc),{size:15}),t[0]||=I(`h3`,null,`Credential`,-1),I(`span`,{class:T([`pairing-status`,i.value.status])},E(i.value.status),3)]),I(`dl`,null,[t[1]||=I(`dt`,null,`Key fingerprint`,-1),I(`dd`,null,[I(`code`,dy,E(i.value.keyFingerprint),1)]),t[2]||=I(`dt`,null,`Paired`,-1),I(`dd`,{title:new Date(i.value.pairedAt).toISOString()},E(k(nd)(i.value.pairedAt)),9,fy),t[3]||=I(`dt`,null,`Generation`,-1),I(`dd`,null,E(i.value.credentialGeneration),1)]),i.value.rotationPending?(N(),P(`p`,py,[L(k(Yc),{size:13,class:`spin`}),t[4]||=R(` rotation queued — waiting for the device to ACK `,-1)])):z(``,!0),I(`div`,my,[i.value.status===`paired`?(N(),P(`button`,{key:0,class:`small`,disabled:n.value||i.value.rotationPending,onClick:a},[L(k(Yc),{size:14}),t[5]||=R(` Rotate credential `,-1)],8,hy)):z(``,!0),i.value.status===`paired`?(N(),P(`button`,{key:1,class:`small danger`,disabled:n.value,onClick:o},[L(k(el),{size:14}),t[6]||=R(` Revoke `,-1)],8,gy)):z(``,!0)]),r.value?(N(),P(`p`,_y,E(r.value),1)):z(``,!0)])):z(``,!0)}}),yy={class:`tasks-panel`},by={class:`panel-heading`},xy={class:`tag`},Sy={key:0,class:`message-error`,role:`alert`},Cy={class:`task-section`,"aria-label":`Durable jobs`},wy={key:0,class:`task-empty`},Ty=[`data-job`],Ey={class:`job-def-head`},Dy={key:0,class:`tag`},Oy={class:`tag`},ky=[`aria-label`],Ay=[`title`],jy={class:`job-def-meta`},My=[`title`],Ny=[`title`],Py={key:0,class:`job-def-last`},Fy=[`onClick`],Iy=[`disabled`,`onClick`],Ly=[`disabled`,`onClick`],Ry=[`disabled`,`onClick`],zy={class:`task-section`,"aria-label":`Agent activity`},By={class:`panel-heading`},Vy={key:0,class:`task-empty`},Hy={key:1,class:`task-tree`},Uy=[`data-task-kind`],Wy={class:`tag`},Gy={key:0,class:`task-phase`},Ky=[`onClick`],qy=[`disabled`],Jy={class:`raw`},Yy=kr({__name:`TasksPanel`,setup(e){let t=O(``),n=O(!1),r=O([]),i=O(),a=e=>({running:`Running`,waiting:`Waiting`,completed:`Completed`,aborted:`Stopped`,declined:`Declined`,failed:`Failed`,pending:`Queued`,completing:`Finishing`,terminal:`Finished`})[e]??e,o=B(()=>new Map(Xh.value.map(e=>[e.id,Qh.value.find(t=>t.job===e.id)]))),s=B(()=>{let e=Bu.value,t=new Set(e.map(e=>e.id)),n=new Map;for(let r of e){let e=r.owner!==void 0&&t.has(r.owner)?r.owner:void 0;n.set(e,[...n.get(e)??[],r])}let r=[],i=(e,t)=>{for(let a of(n.get(e)??[]).sort((e,t)=>e.id-t.id))r.push({task:a,depth:t}),i(a.id,t+1)};return i(void 0,0),r}),c=e=>e.kind===`pi.tool`?{icon:ul,name:e.label??`Tool call`,what:`tool call`}:e.kind===`pi.generation`?{icon:$s,name:`Model response`,what:`generation`}:e.kind===`pi.compaction`?{icon:kc,name:`Compaction`,what:`compaction`}:e.kind.startsWith(`demo.job.`)?{icon:ll,name:e.label??Zh(e.kind.slice(9))?.title??e.kind,what:`durable job`}:e.kind===`demo.job-approval`?{icon:$c,name:`Approval`,what:`waits for you`}:{icon:Ws,name:e.label??e.kind,what:e.kind},l=e=>e.state.phase?e.kind.startsWith(`demo.job.`)?Zh(e.kind.slice(9))?.phases.find(t=>t.id===e.state.phase)?.label??e.state.phase:e.state.phase:``;async function u(){if(!n.value&&Du.value){n.value=!0,t.value=``;try{await Du.value.abort(!0)}catch(e){t.value=tu(e)}finally{n.value=!1}}}async function d(e){let n=Ou.value;if(e.target.open&&n)try{let[e,t]=await Promise.all([n.tasks(`terminal`,40),n.inspect()]);r.value=e,i.value=t}catch(e){t.value=tu(e)}}let f=B(()=>r.value.filter(e=>e.state.status===`terminal`).slice(-12).reverse());return(e,r)=>(N(),P(`div`,yy,[I(`div`,by,[r[0]||=I(`h2`,null,`Tasks`,-1),I(`span`,xy,E(k(Bu).length)+` active`,1)]),t.value?(N(),P(`p`,Sy,E(t.value),1)):z(``,!0),I(`section`,Cy,[I(`h3`,null,[L(k(Xc),{size:18}),r[1]||=R(`Durable jobs`,-1)]),r[2]||=I(`p`,{class:`hint`},[R(` Repeatable workflows with named phases. Every run follows the same phases and saves a checkpoint after each one. Start one here, or ask your agent: it finds these with `),I(`code`,null,`list_durable_jobs`),R(`, starts them with `),I(`code`,null,`run_durable_job`),R(` and checks them with `),I(`code`,null,`check_durable_job`),R(`. Runs play out live in the chat. `)],-1),k(Xh).length?z(``,!0):(N(),P(`p`,wy,` This device has no durable jobs. Deploy the latest backend to it. `)),(N(!0),P(M,null,j(k(Xh),e=>(N(),P(`article`,{key:e.id,class:`job-def`,"data-job":e.id},[I(`div`,Ey,[L(k(ll),{size:18}),I(`strong`,null,E(e.title),1),e.approval?(N(),P(`span`,Dy,`needs approval`)):z(``,!0),I(`span`,Oy,`~`+E(e.seconds)+`s`,1)]),I(`p`,null,E(e.summary),1),I(`ol`,{class:`job-chain`,"aria-label":`${e.title} phases`},[(N(!0),P(M,null,j(e.phases,(e,t)=>(N(),P(`li`,{key:e.id,title:e.summary},[I(`span`,null,E(t+1),1),R(E(e.label),1),e.kind===`repeat`?(N(),F(k(Xc),{key:0,size:13})):z(``,!0),e.kind===`approval`?(N(),F(k($c),{key:1,size:13})):z(``,!0)],8,Ay))),128))],8,ky),I(`div`,jy,[(N(!0),P(M,null,j(e.inputs,e=>(N(),P(`code`,{key:e.name,title:e.description},E(e.name)+`=`+E(e.default),9,My))),128)),I(`code`,{title:`Each run saves its result to App State ${e.resultPath}`},`→ `+E(e.resultPath),9,Ny)]),o.value.get(e.id)?(N(),P(`div`,Py,[I(`span`,null,[R(`Run #`+E(o.value.get(e.id).run)+`: `,1),I(`strong`,null,E(a(o.value.get(e.id).status)),1),k(Yh)(o.value.get(e.id))?z(``,!0):(N(),P(M,{key:0},[R(` in `+E(o.value.get(e.id).phases.find(t=>t.id===o.value.get(e.id).phase)?.label),1)],64))]),I(`button`,{class:`text-button`,onClick:t=>k(ag)(o.value.get(e.id).id)},` Show in chat `,8,Fy),o.value.get(e.id).approval===`pending`?(N(),P(M,{key:0},[I(`button`,{class:`primary small`,disabled:!!k(rg),onClick:t=>k(sg)(o.value.get(e.id),!0)},` Approve `,8,Iy),I(`button`,{class:`secondary`,disabled:!!k(rg),onClick:t=>k(sg)(o.value.get(e.id),!1)},` Decline `,8,Ly)],64)):z(``,!0)])):z(``,!0),I(`button`,{class:`secondary job-def-run`,disabled:!!k(rg)||!k(Du),onClick:t=>k(og)(e)},[L(k(Kc),{size:16}),R(`Run `+E(e.title),1)],8,Ry)],8,Ty))),128))]),I(`section`,zy,[I(`div`,By,[r[3]||=I(`h3`,null,`Agent activity`,-1),L(k(Ws),{size:18})]),r[5]||=I(`p`,{class:`hint`},` Every model response and every tool call is its own durable task with an id, an owner and a checkpoint. Follow them live here; after a restart each one resumes or reports how it ended. `,-1),s.value.length?(N(),P(`ul`,Hy,[(N(!0),P(M,null,j(s.value,({task:e,depth:t})=>(N(),P(`li`,{key:e.id,class:`task-row`,style:_e({"--depth":t}),"data-task-kind":e.kind},[(N(),F(ni(c(e).icon),{size:16})),I(`strong`,null,E(c(e).name),1),I(`span`,Wy,E(a(e.state.status)),1),l(e)?(N(),P(`span`,Gy,E(l(e)),1)):z(``,!0),I(`small`,null,`#`+E(e.id)+` `+E(c(e).what)+`, agent #`+E(e.conversationId)+E(e.effectiveBackground?`, background`:``),1),(N(!0),P(M,null,j(e.conversations,e=>(N(),P(`button`,{key:e,class:`text-button`,onClick:t=>k(lg)(e)},` Open agent #`+E(e),9,Ky))),128))],12,Uy))),128))])):(N(),P(`p`,Vy,`Nothing running. Send a message or run a job.`)),r[6]||=I(`p`,{class:`hint`},` Interrupt or Esc stops foreground work and what it owns. Stop all also stops background runs. `,-1),I(`button`,{class:`secondary danger`,disabled:!k(Bu).length||n.value,onClick:u},[L(k(zc),{size:18}),r[4]||=R(`Stop all `,-1)],8,qy)]),I(`details`,{class:`raw task-section`,onToggle:d},[I(`summary`,null,[L(k(sc),{size:18}),r[7]||=R(`Runtime details`,-1)]),r[9]||=I(`p`,{class:`hint`},` Recent task results and recovery records, read from the device when opened. `,-1),(N(!0),P(M,null,j(f.value,e=>(N(),P(`details`,{key:e.id,class:`raw`},[I(`summary`,null,[R(E(e.kind)+` #`+E(e.id),1),I(`span`,null,E(a(e.state.outcome?.status??e.state.status)),1)]),I(`pre`,null,E(JSON.stringify(e.state.outcome,null,2)),1)]))),128)),I(`details`,Jy,[r[8]||=I(`summary`,null,`Recovery inspection`,-1),I(`pre`,null,E(JSON.stringify(i.value,null,2)),1)])],32)]))}}),Xy={class:`git-pane`},Zy={key:0,class:`hint`},Qy={key:0,class:`hint`},$y={key:1,class:`muted-line`},eb={key:2,class:`message-error`},tb={key:0,class:`hint`},nb={key:0,class:`message-error merge-banner`},rb=[`disabled`],ib={class:`panel-heading git-top`},ab={class:`branch-wrap`},ob=[`disabled`],sb={key:0,class:`menu`},cb=[`onClick`],lb={class:`muted-line`},ub={class:`new-branch`},db=[`disabled`],fb={class:`auto-stash`},pb={class:`tag`},mb={key:0,class:`tag`},hb={key:1,class:`tag`},gb={key:2,class:`tag`,title:`vs the picked base`},_b={class:`tag`},vb=[`href`],yb=[`disabled`],bb={class:`row ops`},xb=[`disabled`],Sb=[`disabled`],Cb=[`disabled`],wb=[`disabled`],Tb=[`disabled`],Eb={key:1,class:`message-error hintbox`},Db=[`disabled`],Ob=[`disabled`],kb={key:2,class:`message-error hintbox`},Ab=[`disabled`],jb={class:`task-section`,"aria-label":`Commit`},Mb={class:`panel-heading`},Nb={class:`tag`},Pb=[`disabled`],Fb=[`disabled`],Ib={key:0,class:`hintbox warn`},Lb={key:1,class:`cps turns`},Rb={key:0,class:`hint`},zb={class:`muted-line`},Bb={class:`cp-subj`},Vb={key:2,class:`muted-line cap`},Hb={key:3,class:`files conflicts`},Ub={class:`file all`},Wb={class:`muted-line conflict-head`},Gb={class:`file-label`},Kb={class:`xy`},qb=[`title`],Jb={class:`file-acts`},Yb=[`onClick`],Xb=[`disabled`,`onClick`],Zb=[`disabled`,`onClick`],Qb={key:4,class:`files`},$b={class:`file all`},ex=[`checked`],tx={class:`muted-line`},nx=[`onClick`],rx={class:`muted-line`},ix={class:`file-label`},ax=[`checked`,`onChange`],ox=[`title`],sx=[`title`],cx={class:`file-acts`},lx=[`onClick`],ux=[`onClick`],dx=[`onClick`],fx={key:5,class:`files`},px={class:`file all`},mx=[`checked`],hx={class:`muted-line`},gx=[`onClick`],_x={class:`muted-line`},vx={class:`file-label`},yx=[`checked`,`onChange`],bx=[`title`],xx=[`title`],Sx={class:`file-acts`},Cx=[`onClick`],wx=[`onClick`],Tx=[`onClick`],Ex=[`onClick`],Dx=[`onClick`],Ox={key:6,class:`file-diff`},kx={class:`mode-chips`},Ax={key:0,class:`nums bin`},jx={key:1,class:`nums`},Mx={key:2},Nx={class:`row`},Px=[`disabled`],Fx=[`disabled`],Ix=[`disabled`],Lx={class:`task-section`,"aria-label":`Log`},Rx={class:`panel-heading`},zx=[`disabled`],Bx=[`disabled`],Vx=[`disabled`],Hx={key:0,class:`cps`},Ux={key:0,class:`hint`},Wx={class:`muted-line`},Gx={class:`cp-subj`},Kx=[`disabled`,`onClick`],qx={key:1,class:`hint`},Jx={key:2,class:`commits`},Yx=[`title`],Xx=[`width`],Zx=[`x1`,`x2`],Qx=[`x1`,`x2`,`stroke`],$x=[`cx`,`fill`],eS=[`onClick`],tS={class:`hash`},nS=[`href`],rS={key:1,class:`refs`},iS={class:`subject`},aS={class:`muted-line who`},oS={key:0,class:`commit-files`},sS=[`data-s`],cS={class:`path`},lS={key:0,class:`hint`},uS={key:3,class:`message-error`},dS={key:4,class:`hint`},fS={class:`task-section`,"aria-label":`Worktrees`},pS={class:`panel-heading`},mS={class:`branch-wrap`},hS=[`disabled`],gS={key:0,class:`menu`},_S=[`onClick`],vS={class:`new-branch`},yS=[`disabled`],bS=[`title`],xS={class:`muted-line`},SS=[`disabled`,`onClick`],CS=[`disabled`,`onClick`],wS=[`disabled`,`onClick`],TS={key:3,class:`task-section`,"aria-label":`Pull requests`},ES={class:`panel-heading`},DS=[`disabled`],OS=[`disabled`],kS={key:0,class:`hint`},AS={key:1,class:`commits`},jS={class:`hash`},MS={class:`subject`},NS={class:`muted-line who`},PS=[`disabled`,`onClick`],FS=[`disabled`,`onClick`],IS=[`disabled`,`onClick`],LS=[`href`],RS={key:4,class:`op-out`},zS=[`placeholder`],BS={class:`row`},VS=[`disabled`],HS=Od(kr({__name:`GitPanel`,props:{deviceId:{},cwd:{}},setup(e){let t=e,n=B(()=>t.cwd??Tu.value?.cwd??``),r=B(()=>t.deviceId??yu.value),i=B(()=>Ud(r.value||`?`,n.value||`?`)),a=B(()=>i.value.status),o=B(()=>i.value.loading),s=B(()=>i.value.refreshing),c=B(()=>i.value.error),l=B(()=>{let e=Tu.value;return e&&e.cwd===n.value&&!t.deviceId?e.id:void 0}),u=O(``),d=O(``),f=O(``),p=O(new Set),m=O(!1),h=O(!1),g=O(``),_=O(null),v=O(`working`),y=B(()=>`dpi-git-draft:${r.value}:${n.value}`),b=O(null),ee=O(!0),x=O(``),S=O(!1),te=O([]),ne=B(()=>{if(!te.value.length||!n.value)return null;let e=e=>e.startsWith(`/`)||e.includes(`:\\`)?e:`${n.value}/${e}`,t=new Set(te.value);return{changed:(a.value?.files??[]).filter(n=>t.has(e(n.path))).length,total:te.value.length}}),C=O(null),re=O(``),ie=e=>{re.value=e.input?.value??``,C.value=e},ae=()=>{let e=C.value;C.value=null,e&&e.action(re.value)};window.addEventListener(`keydown`,e=>{e.key===`Escape`&&C.value&&(C.value=null)});let oe=O([]),se=O(!1),ce=O(new Map),le=O([]),ue=O(!1),w=O(new Map),de=O(!1),fe=B(()=>/github\.com|gitlab/i.test(a.value?.remoteUrl??``)),pe=async()=>{if(r.value&&n.value){de.value=!0;try{let e=await H(r.value).gitOp(n.value,`pr-list`);le.value=e.prs??[]}catch(e){G(`pr list failed: ${e.message.slice(0,120)}`)}finally{de.value=!1}}};A(ue,e=>{e&&pe()});let me=()=>ie({title:`Create pull request`,body:`head: ${a.value?.branch??`?`}`,confirmLabel:`Create PR`,input:{placeholder:`PR title`,value:f.value.trim()||``},action:e=>void he(e)});async function he(e){if(r.value&&n.value&&e.trim()){de.value=!0;try{G((await H(r.value).gitOp(n.value,`pr-create`,{message:e.trim(),body:e.trim()})).text.split(`
|
|
76
|
+
`)[0]??`PR created`),await pe()}catch(e){G(`pr create failed: ${e.message.slice(0,140)}`)}finally{de.value=!1}}}async function ge(e){if(r.value&&n.value){de.value=!0;try{let t=await H(r.value).gitOp(n.value,`pr-checks`,{n:e});w.value=new Map(w.value).set(e,t.text.slice(0,1500))}catch(e){G(`pr checks failed: ${e.message.slice(0,120)}`)}finally{de.value=!1}}}let _e=e=>ie({title:`Merge PR #${e}?`,body:`squash-merge via gh on the device.`,confirmLabel:`Squash & merge`,danger:!0,action:()=>void ve(e)});async function ve(e){if(r.value&&n.value){de.value=!0;try{G((await H(r.value).gitOp(n.value,`pr-merge`,{n:e})).text||`PR #${e} merged`),await pe(),await De()}catch(e){G(`pr merge failed: ${e.message.slice(0,140)}`)}finally{de.value=!1}}}let ye=e=>ie({title:`Comment on PR #${e}`,body:`posted as the device's gh login`,confirmLabel:`Comment`,input:{placeholder:`comment…`,value:``},action:t=>void be(e,t)});async function be(e,t){if(r.value&&n.value&&t.trim()){de.value=!0;try{G((await H(r.value).gitOp(n.value,`pr-comment`,{n:e,body:t.trim()})).text||`comment posted`)}catch(e){G(`pr comment failed: ${e.message.slice(0,140)}`)}finally{de.value=!1}}}let xe=O([]),Se=O(!1),Ce=async()=>{if(r.value&&l.value)try{let e=await H(r.value).sessionGitTurns(l.value);xe.value=e.turns}catch{xe.value=[]}};A(Se,e=>{e&&Ce()});let we=0;window.addEventListener(`focus`,()=>{!n.value||Date.now()-we<15e3||(we=Date.now(),Gd(r.value||`?`,n.value||`?`,{force:!0}))});let Te=O(new Set),Ee=()=>{typeof localStorage<`u`&&(f.value=localStorage.getItem(y.value)??``)};Vd(),Gd(r.value||`?`,n.value||`?`),Ee(),Yr(()=>Gd(r.value||`?`,n.value||`?`)),A(f,e=>{typeof localStorage<`u`&&(e?localStorage.setItem(y.value,e):localStorage.removeItem(y.value))}),A([r,n],()=>{m.value=!1,h.value=!1,_.value=null,b.value=null,x.value=``,S.value=!1,te.value=[],ce.value=new Map,Te.value=new Set,Gd(r.value||`?`,n.value||`?`),Ee()});let De=()=>(p.value=new Set,_.value=null,Gd(r.value||`?`,n.value||`?`,{force:!0})),Oe=B(()=>a.value?.files??[]);A(Oe,e=>{let t=new Set;for(let n of e)n.x!==`?`&&n.y!==`?`&&t.add(n.path);p.value=t},{immediate:!0});let ke=B(()=>Oe.value.some(e=>p.value.has(e.path))),Ae=B(()=>Oe.value.filter(e=>!Me(e)&&e.x!==` `&&e.x!==`?`)),je=B(()=>Oe.value.filter(e=>!Me(e)&&(e.x===` `||e.x===`?`))),Me=e=>`UAD`.includes(e.x)&&`UAD`.includes(e.y),Ne=B(()=>Oe.value.filter(Me)),Pe=B(()=>Oe.value.length>=500),Fe=B(()=>(a.value?.staged??0)+(a.value?.unstaged??0)+(a.value?.untracked??0)>0),Ie=B(()=>!a.value?.identity?.name||!a.value?.identity?.email),D=B(()=>{let e=a.value?.remoteUrl??``,t=e.match(/git@([^:]+):(.+?)(?:\.git)?$/)??e.match(/^https?:\/\/([^/]+)\/(.+?)(?:\.git)?$/);return t?`https://${t[1]}/${t[2]}`:``}),Le=e=>{let t=new Set(p.value);t.has(e)?t.delete(e):t.add(e),p.value=t},Re=e=>{let t=e.every(e=>p.value.has(e.path)),n=new Set(p.value);for(let r of e)t?n.delete(r.path):n.add(r.path);p.value=n},ze=e=>{let t=e.lastIndexOf(`/`);return t===-1?`.`:e.slice(0,t)},Be=e=>{let t=new Map;for(let n of e){let e=ze(n.path);t.has(e)||t.set(e,[]),t.get(e).push(n)}return[...t.entries()].map(([e,t])=>({dir:e,files:t,open:!Te.value.has(e)}))},Ve=e=>{let t=new Set(Te.value);t.has(e)?t.delete(e):t.add(e),Te.value=t},He=e=>e.a===void 0&&e.d===void 0?``:e.a===-1||e.d===-1?`bin`:`+${e.a??0} −${e.d??0}`,Ue=e=>{navigator.clipboard?.writeText(e).then(()=>G(`copied ${e}`))};async function We(e,t={}){if(r.value&&n.value){u.value=e,d.value=``;try{let i=await H(r.value).gitOp(n.value,e,t);d.value=i.text||`(empty)`,e===`push`&&(x.value=``),e===`pull`&&(S.value=!1),[`fetch`,`pull`,`push`,`stash-push`,`stash-pop`].includes(e)&&G(`git ${e} ✓`),await De(),yt(!0)}catch(t){let n=t.message;e===`push`&&(/no upstream|has no upstream|upstream is gone/i.test(n)?x.value=`no upstream — set it while pushing?`:/fetch first|non-fast-forward|rejected.*fetch|behind/i.test(n)?x.value=`the remote has work you lack — pull first`:/authentication|permission|could not read|403|denied/i.test(n)?x.value=`credentials rejected on the device — check its git login`:x.value=``),e===`pull`&&/not possible to fast-forward|divergent|unrelated histories/i.test(n)&&(S.value=!0),G(`git ${e}: ${n.slice(0,160)}`)}finally{u.value=``}}}async function Ge(e,t,i=!1){if(!r.value||!n.value||(i&&(u.value=e),!t&&e!==`stage`))return;if(e===`discard`&&t&&!i){ie({title:`Roll back to HEAD?`,body:`${t} — uncommitted changes are lost.`,confirmLabel:`Roll back`,danger:!0,action:()=>void Ge(e,t,!0)});return}u.value=e;let a=t?[t]:Oe.value.filter(e=>e.x===` `||e.x===`M`).map(e=>e.path);try{G((await H(r.value).gitOp(n.value,e,{files:a})).text),await De()}catch(t){G(`${e} failed: ${t.message.slice(0,140)}`)}finally{u.value=``}}async function Ke(e){if(r.value&&n.value&&e.length){u.value=`unstage`;try{G((await H(r.value).gitOp(n.value,`unstage`,{files:e})).text),await De()}catch(e){G(`unstage failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}}async function qe(e,t){if(r.value&&n.value){u.value=`resolve`;try{G((await H(r.value).gitOp(n.value,`resolve`,{side:e,files:[t]})).text),await De()}catch(e){G(`resolve failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}}async function Je(e){if(r.value&&n.value&&e.length){u.value=`ignore`;try{G((await H(r.value).gitOp(n.value,`ignore`,{lines:e})).text),await De()}catch(e){G(`ignore failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}}async function Ye(e){if(r.value&&n.value){if(_.value?.path===e)return _.value=null;u.value=`diff`;try{let t=await H(r.value).gitOp(n.value,`diff-file`,{target:e,staged:v.value===`staged`});_.value={path:e,text:t.text}}catch(e){G(`diff failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}}let Xe=async()=>{let e=_.value?.path;_.value=null,e&&await Ye(e)},Ze=B(()=>/Binary files .* differ/i.test(_.value?.text??``));async function Qe(){if(r.value&&n.value){u.value=`abort`;try{G((await H(r.value).gitOp(n.value,`merge-abort`)).text),await De()}catch(e){G(`abort failed: ${e.message.slice(0,120)}`)}finally{u.value=``}}}async function $e(e){if(m.value=!1,r.value&&n.value){u.value=`compare`;try{let t=await H(r.value).gitOp(n.value,`compare`,{ref:e});b.value={ref:e,ahead:t.ahead??0,behind:t.behind??0}}catch(e){G(`compare failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}}async function et(e,t=!1){if(m.value=!1,!r.value||!n.value||e===a.value?.branch&&!t)return;u.value=`switch`;let i=H(r.value),o=!1;try{if(ee.value&&!t&&Fe.value&&(await i.gitOp(n.value,`stash-push`,{message:`dpi auto-stash before ${e}`}),o=!0),G((await i.gitOp(n.value,`switch`,{ref:e,create:t})).text||`switched to ${e}`),o)try{let e=await i.gitOp(n.value,`stash-pop`);/conflict/i.test(e.text)&&G(`stash popped WITH CONFLICTS — resolve in the file list`)}catch{G(`switched, but the stash did not pop — resolve manually (git stash list)`)}await De(),yt(!0)}catch(e){if(G(`switch failed: ${e.message.slice(0,140)}`),o)try{await i.gitOp(n.value,`stash-pop`)}catch{}}finally{u.value=``}}async function tt(e=!1){if(!r.value||!n.value||!f.value.trim())return;u.value=`commit`;let t=Oe.value.filter(e=>p.value.has(e.path)).map(e=>e.path);if(!t.length)return G(`check the files to commit — nothing is selected`);let i=H(r.value);try{if(G((await i.gitOp(n.value,`commit`,{message:f.value.trim(),...a.value?.merge?{}:{files:t}})).text),f.value=``,e)try{G(`pushed: ${(await i.gitOp(n.value,`push`)).text.slice(0,80)}`)}catch(e){G(`committed, but push failed: ${e.message.slice(0,120)}`)}await De(),yt(!0)}catch(e){G(`commit failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}function nt(e){let t=e?.models??[],n=t.find(t=>`${t.provider}/${t.id}`===e?.defaultModel),r=new Map;for(let e of t)r.has(e.provider)||r.set(e.provider,e);let i=[...r.values()].filter(e=>e!==n).slice(0,3);return(n?[n,...i]:i).slice(0,4)}async function rt(){if(!r.value||!n.value)return;let e=Oe.value.filter(e=>p.value.has(e.path)).map(e=>e.path);if(!e.length)return G(`check files first — the model summarises THOSE`);u.value=`ai`;let t=H(r.value),i=``;for(let r of e.slice(0,5)){let e=await t.gitOp(n.value,`diff-file`,{target:r});if(i+=`${e.text}\n`,i.length>4e3)break}i=i.slice(0,4e3);let a=`Write ONE concise git commit message (under 72 chars, imperative, no quotes, no backticks) for these changes:\n\n${i}`,o=pu.devices.value.find(e=>e.id===r.value)?.info,s=nt(o);if(!s.length)return u.value=``,G(`no model on the device`);let c=[];try{for(let e of s){let r=await t.createSession({name:`git-msg`,cwd:n.value,model:{provider:e.provider,modelId:e.id}}).then(e=>e.id).catch(()=>``);if(!r){c.push(`${e.provider}: no session`);continue}try{let n=await t.agent(r,1).send(a,`followUp`,void 0,12e4),i=n.status===`done`?n.answer.text.trim().split(`
|
|
77
|
+
`)[0]?.slice(0,100):``;if(i){f.value=i;return}c.push(`${e.provider}/${e.id}: ${n.status===`unanswered`?n.reason:`empty answer`}`)}finally{t.session(r).archive().catch(()=>{})}}G(`ai message failed on every model — ${c.join(`; `).slice(0,140)}`)}catch(e){G(`ai message failed: ${e.message.slice(0,120)}`)}finally{u.value=``}}async function it(){if(r.value&&l.value){u.value=`session-files`;try{let e=await H(r.value).sessionGitFiles(l.value);te.value=e.files;let t=e=>e.startsWith(`/`)||e.includes(`:\\`)?e:`${n.value}/${e}`,i=new Set(e.files.map(t)),a=Oe.value.filter(e=>i.has(t(e.path)));p.value=new Set(a.map(e=>e.path)),G(a.length?`${a.length} session file(s) still changed — checked`:`the session touched nothing that is still changed`)}catch(e){G(`session files failed: ${e.message.slice(0,120)}`)}finally{u.value=``}}}async function at(e){if(ce.value.has(e)){ce.value.delete(e),ce.value=new Map(ce.value);return}if(r.value&&n.value)try{let t=await H(r.value).gitOp(n.value,`show-files`,{target:e});ce.value=new Map(ce.value).set(e,t.changed??[])}catch(e){G(`commit files failed: ${e.message.slice(0,120)}`)}}async function ot(){if(!r.value||!n.value)return;let e=`cp-${new Date().toISOString().slice(0,16).replace(/[-:T]/g,``)}`;u.value=`checkpoint`;try{G((await H(r.value).gitOp(n.value,`checkpoint`,{name:e})).text),se.value=!0,await st()}catch(e){G(`checkpoint failed: ${e.message.slice(0,120)}`)}finally{u.value=``}}async function st(){if(r.value&&n.value)try{let e=await H(r.value).gitOp(n.value,`checkpoints`);oe.value=e.checkpoints??[]}catch{oe.value=[]}}async function ct(e){if(!r.value||!n.value)return;let t=e;ie({title:`Rewind to ${t}?`,body:`reset --hard — ALL uncommitted changes in this worktree are LOST.`,confirmLabel:`Rewind`,danger:!0,action:()=>void lt(t)})}async function lt(e){if(r.value&&n.value){u.value=`rewind`;try{G((await H(r.value).gitOp(n.value,`rewind`,{name:e})).text),await De(),yt(!0)}catch(e){G(`rewind failed: ${e.message.slice(0,120)}`)}finally{u.value=``}}}A(se,e=>{e&&st()});async function ut(e){if(h.value=!1,!r.value||!n.value||!a.value?.root)return;let t=a.value.root,i=`${t.slice(0,t.lastIndexOf(`/`))}/${t.slice(t.lastIndexOf(`/`)+1)}-${e.replace(/[/\\]+/g,`-`)}`;u.value=`wt`;try{G((await H(r.value).gitOp(n.value,`worktree-add`,{branch:e,target:i})).text.split(`
|
|
78
|
+
`)[0]??`worktree ${i}`),g.value=``,await De()}catch(e){G(`worktree failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}async function dt(e,t){if(r.value){u.value=`session`;try{let n=pu.devices.value.find(e=>e.id===r.value)?.info,i=nt(n)[0];if(!i)return G(`no model available on ${r.value} — cannot create a session`);let a=await H(r.value).createSession({name:t??e.slice(e.lastIndexOf(`/`)+1),cwd:e,model:{provider:i.provider,modelId:i.id}});ku({deviceId:r.value,sessionId:a.id,agentId:1}),G(`session "${a.name}" on ${e}`)}catch(e){G(`session failed: ${e.message.slice(0,160)}`)}finally{u.value=``}}}async function ft(e){if(r.value){u.value=`go`;try{let t=(await H(r.value).sessions()).find(t=>t.cwd===e);t?(ku({deviceId:r.value,sessionId:t.id,agentId:1}),G(`switched to session "${t.name}"`)):await dt(e,null)}catch(e){G(`switch failed: ${e.message.slice(0,120)}`)}finally{u.value=``}}}async function pt(e){if(!r.value||!n.value)return;u.value=`wt`;let t=`Uncommitted changes in it will be LOST.`;try{let n=(await H(r.value).gitStatusBatch([e],{timeoutMs:6e4}))[e];t=(n?.staged??0)+(n?.unstaged??0)+(n?.untracked??0)>0?`It CONTAINS uncommitted changes — they will be LOST.`:`Its checkout is clean.`}catch{}ie({title:`Remove worktree?`,body:`${e} — ${t}`,confirmLabel:`Remove`,danger:!0,action:()=>void mt(e)})}async function mt(e){u.value=`wt`;try{await H(r.value).gitOp(n.value,`worktree-remove`,{target:e}),await De()}catch(e){G(`remove failed: ${e.message.slice(0,140)}`)}finally{u.value=``}}let ht=O([]),gt=O(!1),_t=O(``),vt=0;async function yt(e=!1){if(r.value&&n.value&&!(!e&&ht.value.length&&Date.now()-vt<12e4)){gt.value=!0;try{let e=await H(r.value).gitOp(n.value,`log-list`);ht.value=e.commits??[],_t.value=``,vt=Date.now()}catch(e){_t.value=e.message.slice(0,120)}finally{gt.value=!1}}}yt(),A([r,n],()=>{ht.value=[],vt=0,yt()});let bt=B(()=>(a.value?.worktrees??[]).filter(e=>e.path)),xt=[`#4f8cc9`,`#b8860b`,`#7aa25c`,`#a061ba`,`#c96f6f`,`#5fa8a0`],St=B(()=>{let e=new Map,t=[],n=[];for(let r of ht.value){let i=e.get(r.hash);i===void 0&&(i=n.indexOf(null),i===-1&&(n.push(null),i=n.length-1),e.set(r.hash,i)),n[i]=null;let a=[];r.parents.forEach((t,r)=>{let o=e.get(t);(o===void 0||n[o]===t)&&(o=n.indexOf(null),o===-1&&(n.push(null),o=n.length-1),e.set(t,o)),n[o]=t,r===0&&(n[i]=t),a.push(o)}),t.push({lane:i,parents:a,width:Math.max(1,n.length)})}return t}),Ct=e=>e*12+7;return(e,t)=>(N(),P(`div`,Xy,[n.value?(N(),P(M,{key:1},[o.value?(N(),P(`p`,Qy,`loading git…`)):s.value?(N(),P(`p`,$y,`refreshing…`)):z(``,!0),c.value?(N(),P(`p`,eb,[R(E(c.value)+` `,1),I(`button`,{onClick:t[0]||=e=>De()},`retry`)])):z(``,!0),a.value?(N(),P(`div`,{key:3,class:T({stale:!!c.value||!!s.value})},[a.value.repo?(N(),P(M,{key:1},[a.value.merge?(N(),P(`p`,nb,[R(` merge in progress — `+E(a.value.conflicts??Ne.value.length)+` unmerged path(s). Resolve them in the lists above, or `,1),I(`button`,{class:`small`,disabled:!!u.value,onClick:t[1]||=e=>Qe()},`abort merge`,8,rb)])):z(``,!0),I(`div`,ib,[I(`div`,ab,[I(`button`,{class:`branch-btn`,disabled:!!u.value,onClick:t[2]||=e=>m.value=!m.value},[L(k(yc),{size:16}),I(`strong`,null,E(a.value.branch??`detached`),1),L(k(rc),{size:14})],8,ob),m.value?(N(),P(`div`,sb,[(N(!0),P(M,null,j(a.value.branches??[],e=>(N(),P(`button`,{key:e.name,class:T({cur:e.current}),onClick:t=>et(e.name)},[L(k(yc),{size:13}),I(`span`,null,E(e.name),1),I(`span`,lb,E(e.current?`current`:e.upstream?`→ ${e.upstream}`:``),1),t[42]||=I(`span`,{class:`grow`},null,-1),e.current?z(``,!0):(N(),F(k(bc),{key:0,size:13,title:`compare with this base`,onClick:Ms(t=>$e(e.name),[`stop`])},null,8,[`onClick`]))],10,cb))),128)),I(`div`,ub,[Wn(I(`input`,{"onUpdate:modelValue":t[3]||=e=>g.value=e,placeholder:`new branch…`,onKeyup:t[4]||=Ps(e=>g.value.trim()&&et(g.value.trim(),!0),[`enter`])},null,544),[[Ss,g.value]]),I(`button`,{disabled:!g.value.trim(),onClick:t[5]||=e=>et(g.value.trim(),!0)},[L(k(qc),{size:13})],8,db)]),I(`label`,fb,[Wn(I(`input`,{type:`checkbox`,"onUpdate:modelValue":t[6]||=e=>ee.value=e},null,512),[[Cs,ee.value]]),t[43]||=R(` auto-stash on switch`,-1)])])):z(``,!0)]),I(`span`,pb,E(a.value.upstream??`no upstream`),1),a.value.ahead?(N(),P(`span`,mb,`↑`+E(a.value.ahead),1)):z(``,!0),a.value.behind?(N(),P(`span`,hb,`↓`+E(a.value.behind),1)):z(``,!0),b.value?(N(),P(`span`,gb,[R(` vs `+E(b.value.ref)+`: ↑`+E(b.value.ahead)+` ↓`+E(b.value.behind)+` `,1),I(`button`,{class:`tag-x`,onClick:t[7]||=e=>b.value=null},[L(k(dl),{size:11})])])):z(``,!0),I(`span`,_b,`+`+E(a.value.staged??0)+` ~`+E(a.value.unstaged??0)+` ?`+E(a.value.untracked??0),1),D.value?(N(),P(`a`,{key:3,class:`icon-button`,href:`${D.value}/tree/${a.value.branch??``}`,target:`_blank`,rel:`noopener`,title:`open on the remote`},[L(k(Js),{size:15,style:{transform:`rotate(45deg)`}})],8,vb)):z(``,!0),I(`button`,{class:`icon-button`,disabled:!!u.value||o.value||s.value,title:`refresh`,onClick:t[8]||=e=>De()},[L(k(Yc),{size:16})],8,yb)]),I(`div`,bb,[I(`button`,{class:`small`,disabled:!!u.value,onClick:t[9]||=e=>We(`fetch`)},[L(k(Ks),{size:14}),t[44]||=R(`fetch`,-1)],8,xb),I(`button`,{class:`small`,disabled:!!u.value,onClick:t[10]||=e=>We(`pull`)},[L(k(Ks),{size:14}),t[45]||=R(`pull`,-1)],8,Sb),I(`button`,{class:`small primary`,disabled:!!u.value,title:`push`,onClick:t[11]||=e=>We(`push`)},[L(k(Js),{size:14}),t[46]||=R(`push`,-1)],8,Cb),I(`button`,{class:`small`,disabled:!!u.value,title:`stash changes`,onClick:t[12]||=e=>We(`stash-push`,{message:f.value.trim()||void 0})},[L(k(nl),{size:14}),t[47]||=R(`stash`,-1)],8,wb),I(`button`,{class:`small`,disabled:!!u.value,title:`pop the newest stash`,onClick:t[13]||=e=>We(`stash-pop`)},[L(k(Bc),{size:14}),t[48]||=R(`unstash`,-1)],8,Tb)]),x.value?(N(),P(`p`,Eb,[R(E(x.value)+` `,1),x.value.includes(`upstream`)?(N(),P(`button`,{key:0,class:`small primary`,disabled:!!u.value,onClick:t[14]||=e=>We(`push`,{setUpstream:!0,ref:a.value.branch})},`push -u origin `+E(a.value.branch),9,Db)):x.value.includes(`remote has work`)?(N(),P(`button`,{key:1,class:`small primary`,disabled:!!u.value,onClick:t[15]||=e=>We(`pull`)},`pull now`,8,Ob)):z(``,!0)])):z(``,!0),S.value?(N(),P(`p`,kb,[t[49]||=R(` fast-forward is not possible — branches diverged. `,-1),I(`button`,{class:`small primary`,disabled:!!u.value,onClick:t[16]||=e=>We(`pull`,{rebase:!0})},`pull --rebase`,8,Ab)])):z(``,!0),I(`section`,jb,[I(`div`,Mb,[t[50]||=I(`h4`,null,`Commit`,-1),I(`span`,Nb,E(Oe.value.length?`${p.value.size}/${Oe.value.length} files`:`no changes`),1),t[51]||=I(`span`,{class:`grow`},null,-1),l.value?(N(),P(`button`,{key:0,class:`small`,disabled:!!u.value,title:`check the files this session's agent touched`,onClick:it},[L(k(gc),{size:13}),R(` session files`+E(ne.value?` (${ne.value.changed}/${ne.value.total})`:``),1)],8,Pb)):z(``,!0),l.value?(N(),P(`button`,{key:1,class:`small`,disabled:!!u.value,title:`what each turn of this session changed`,onClick:t[17]||=e=>Se.value=!Se.value},` turns `,8,Fb)):z(``,!0)]),Ie.value?(N(),P(`p`,Ib,[...t[52]||=[R(`git user.name/user.email is not set on the device — `,-1),I(`code`,null,`dpi device config`,-1),R(` or `,-1),I(`code`,null,`git config --global`,-1),R(` before committing.`,-1)]])):z(``,!0),Se.value?(N(),P(`div`,Lb,[xe.value.length?z(``,!0):(N(),P(`p`,Rb,`no turns recorded yet for this session.`)),(N(!0),P(M,null,j(xe.value,(e,t)=>(N(),P(`div`,{key:t,class:`cp-row`},[I(`code`,null,`t`+E(xe.value.length-t),1),I(`span`,zb,E(e.when.slice(0,16).replace(`T`,` `)),1),I(`span`,Bb,E(e.files.map(e=>`${e.path}×${e.writes}${e.a!==void 0||e.d!==void 0?` (+${e.a??0} −${e.d??0})`:``}`).join(`, `)||`(no file writes)`),1)]))),128))])):z(``,!0),Pe.value?(N(),P(`p`,Vb,`showing the first 500 changed files — commit in smaller batches`)):z(``,!0),Ne.value.length?(N(),P(`div`,Hb,[I(`label`,Ub,[I(`span`,Wb,`Conflicts · `+E(Ne.value.length)+` — pick a side per file`,1)]),(N(!0),P(M,null,j(Ne.value,e=>(N(),P(`div`,{key:e.path,class:`file`},[I(`label`,Gb,[I(`code`,Kb,E(e.x)+E(e.y),1),I(`span`,{class:`path`,title:e.path},E(e.path),9,qb)]),I(`span`,Jb,[I(`button`,{class:`icon-button`,title:`view the conflict`,onClick:t=>Ye(e.path)},[L(k(hc),{size:13})],8,Yb),I(`button`,{class:`small`,disabled:!!u.value,title:`keep this branch's version and stage it`,onClick:t=>qe(`ours`,e.path)},`ours`,8,Xb),I(`button`,{class:`small`,disabled:!!u.value,title:`take the incoming version and stage it`,onClick:t=>qe(`theirs`,e.path)},`theirs`,8,Zb)])]))),128))])):z(``,!0),Ae.value.length?(N(),P(`div`,Qb,[I(`label`,$b,[I(`input`,{type:`checkbox`,checked:Ae.value.every(e=>p.value.has(e.path)),onChange:t[18]||=e=>Re(Ae.value)},null,40,ex),I(`span`,tx,`Staged · `+E(Ae.value.length),1),t[55]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`icon-button`,title:`stage every changed file`,onClick:t[19]||=e=>Ge(`stage`)},[L(k(qc),{size:13}),t[53]||=R(` all`,-1)]),I(`button`,{class:`icon-button`,title:`unstage all (git reset HEAD)`,onClick:t[20]||=e=>Ke(Ae.value.map(e=>e.path))},[L(k(Ic),{size:13}),t[54]||=R(` none`,-1)])]),(N(!0),P(M,null,j(Be(Ae.value),e=>(N(),P(M,{key:e.dir},[e.dir===`.`?z(``,!0):(N(),P(`button`,{key:0,class:`dir-row`,onClick:t=>Ve(e.dir)},[L(k(ic),{size:12,class:T({open:e.open})},null,8,[`class`]),R(E(e.dir),1),I(`span`,rx,`· `+E(e.files.length),1)],8,nx)),(N(!0),P(M,null,j(e.files,t=>Wn((N(),P(`div`,{key:t.path,class:`file`},[I(`label`,ix,[I(`input`,{type:`checkbox`,checked:p.value.has(t.path),onChange:e=>Le(t.path)},null,40,ax),I(`code`,{class:`xy`,title:`index ${t.x} · worktree ${t.y}`},E(t.x)+E(t.y),9,ox),I(`span`,{class:`path`,title:t.path},E(t.path),9,sx),He(t)?(N(),P(`span`,{key:0,class:T([`nums`,{bin:He(t)===`bin`}])},E(He(t)),3)):z(``,!0)]),I(`span`,cx,[I(`button`,{class:`icon-button`,title:`view diff`,onClick:e=>Ye(t.path)},[L(k(hc),{size:13})],8,lx),I(`button`,{class:`icon-button`,title:`unstage (git reset HEAD)`,onClick:e=>Ke([t.path])},[L(k(Ic),{size:13})],8,ux),I(`button`,{class:`icon-button`,title:`roll back to HEAD`,onClick:e=>Ge(`discard`,t.path)},[L(k(dc),{size:13})],8,dx)])])),[[Vo,e.open]])),128))],64))),128))])):z(``,!0),je.value.length?(N(),P(`div`,fx,[I(`label`,px,[I(`input`,{type:`checkbox`,checked:je.value.every(e=>p.value.has(e.path)),onChange:t[21]||=e=>Re(je.value)},null,40,mx),I(`span`,hx,`Unstaged · `+E(je.value.length),1)]),(N(!0),P(M,null,j(Be(je.value),e=>(N(),P(M,{key:e.dir},[e.dir===`.`?z(``,!0):(N(),P(`button`,{key:0,class:`dir-row`,onClick:t=>Ve(e.dir)},[L(k(ic),{size:12,class:T({open:e.open})},null,8,[`class`]),R(E(e.dir),1),I(`span`,_x,`· `+E(e.files.length),1)],8,gx)),(N(!0),P(M,null,j(e.files,t=>Wn((N(),P(`div`,{key:t.path,class:`file`},[I(`label`,vx,[I(`input`,{type:`checkbox`,checked:p.value.has(t.path),onChange:e=>Le(t.path)},null,40,yx),I(`code`,{class:`xy`,title:`index ${t.x} · worktree ${t.y}`},E(t.x)+E(t.y),9,bx),I(`span`,{class:`path`,title:t.path},E(t.path),9,xx),He(t)?(N(),P(`span`,{key:0,class:T([`nums`,{bin:He(t)===`bin`}])},E(He(t)),3)):z(``,!0)]),I(`span`,Sx,[I(`button`,{class:`icon-button`,title:`view diff`,onClick:e=>Ye(t.path)},[L(k(hc),{size:13})],8,Cx),t.x===`?`?(N(),P(`button`,{key:0,class:`icon-button`,title:`add to .gitignore`,onClick:e=>Je([t.path])},[L(k(Zs),{size:13})],8,wx)):(N(),P(`button`,{key:1,class:`icon-button`,title:`stage (git add)`,onClick:e=>Ge(`stage`,t.path)},[L(k(qc),{size:13})],8,Tx)),t.x===`?`?z(``,!0):(N(),P(`button`,{key:2,class:`icon-button`,title:`roll back to HEAD`,onClick:e=>Ge(`discard`,t.path)},[L(k(dc),{size:13})],8,Ex)),I(`button`,{class:`icon-button`,title:`copy path`,onClick:e=>Ue(t.path)},[L(k(cc),{size:13})],8,Dx)])])),[[Vo,e.open]])),128))],64))),128))])):z(``,!0),_.value?(N(),P(`p`,Ox,[I(`strong`,null,E(_.value.path),1),I(`span`,kx,[I(`button`,{class:T({on:v.value===`working`}),onClick:t[22]||=e=>{v.value=`working`,Xe()}},`working`,2),I(`button`,{class:T({on:v.value===`staged`}),onClick:t[23]||=e=>{v.value=`staged`,Xe()}},`staged`,2)]),Ze.value?(N(),P(`span`,Ax,`binary file`)):_.value.text.length>8e3?(N(),P(`span`,jx,`truncated at 8000 chars`)):z(``,!0),I(`button`,{class:`icon-button`,title:`close diff`,onClick:t[24]||=e=>_.value=null},[L(k(dl),{size:13})]),Ze.value?z(``,!0):(N(),P(`pre`,Mx,E(_.value.text.slice(0,8e3)),1))])):z(``,!0),Wn(I(`textarea`,{"onUpdate:modelValue":t[25]||=e=>f.value=e,rows:`4`,placeholder:`Commit message… (Ctrl+Enter to commit)`,onKeydown:[t[26]||=Ps(Ms(e=>tt(),[`exact`,`prevent`]),[`enter`]),t[27]||=Ps(Ms(e=>tt(),[`meta`,`prevent`]),[`enter`]),t[28]||=Ps(Ms(e=>tt(),[`ctrl`,`prevent`]),[`enter`])]},null,544),[[Ss,f.value]]),I(`div`,Nx,[I(`button`,{class:`small`,disabled:!!u.value||!p.value.size,title:`ask the device's model for a message`,onClick:rt},[L(k(tl),{size:14}),t[56]||=R(` ai message`,-1)],8,Px),t[58]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`primary small`,disabled:!!u.value||!f.value.trim()||!ke.value,onClick:t[29]||=e=>tt(!1)},[L(k(nc),{size:14}),R(` Commit`+E(p.value.size?` ${p.value.size} file${p.value.size>1?`s`:``}`:``),1)],8,Fx),a.value.upstream?(N(),P(`button`,{key:0,class:`primary small`,disabled:!!u.value||!f.value.trim()||!ke.value,title:`commit, then push`,onClick:t[30]||=e=>tt(!0)},[L(k(nc),{size:14}),t[57]||=R(` Commit & push `,-1)],8,Ix)):z(``,!0)])]),I(`section`,Lx,[I(`div`,Rx,[I(`h4`,null,[L(k(wc),{size:16}),t[59]||=R(` Log`,-1)]),t[61]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`small`,disabled:!!u.value,title:`save a checkpoint ref of HEAD`,onClick:ot},[L(k(gc),{size:13}),t[60]||=R(` checkpoint`,-1)],8,zx),I(`button`,{class:`small`,disabled:!!u.value,onClick:t[31]||=e=>se.value=!se.value},`checkpoints `+E(oe.value.length?`(${oe.value.length})`:``),9,Bx),I(`button`,{class:`icon-button`,disabled:gt.value,title:`refresh log`,onClick:t[32]||=e=>yt(!0)},[L(k(Yc),{size:14})],8,Vx)]),se.value?(N(),P(`div`,Hx,[oe.value.length?z(``,!0):(N(),P(`p`,Ux,`no checkpoints yet — one click saves a named ref of HEAD.`)),(N(!0),P(M,null,j(oe.value,e=>(N(),P(`div`,{key:e.name,class:`cp-row`},[I(`code`,null,E(e.name),1),I(`span`,Wx,E(e.hash)+` · `+E(e.date),1),I(`span`,Gx,E(e.subject),1),t[63]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`small`,disabled:!!u.value,title:`reset --hard to this checkpoint (this worktree)`,onClick:t=>ct(e.name)},[L(k(al),{size:13}),t[62]||=R(` rewind`,-1)],8,Kx)]))),128))])):z(``,!0),gt.value&&!ht.value.length?(N(),P(`p`,qx,`loading log…`)):ht.value.length?(N(),P(`div`,Jx,[(N(!0),P(M,null,j(ht.value,(e,t)=>(N(),P(M,{key:e.hash},[I(`div`,{class:`commit-row`,title:e.refs},[St.value[t]?(N(),P(`svg`,{key:0,class:`lane`,width:St.value[t].width*12+4,height:`24`,"aria-hidden":`true`},[(N(!0),P(M,null,j(St.value[t].width,e=>(N(),P(`line`,{key:e,x1:Ct(e-1),x2:Ct(e-1),y1:`0`,y2:`24`,stroke:`#3a3134`,"stroke-width":`2`},null,8,Zx))),128)),(N(!0),P(M,null,j(St.value[t].parents,(e,n)=>(N(),P(`line`,{key:`p`+n,x1:Ct(St.value[t].lane),x2:Ct(e),y1:`12`,y2:`24`,stroke:xt[e%xt.length],"stroke-width":`2`},null,8,Qx))),128)),I(`circle`,{cx:Ct(St.value[t].lane),cy:`12`,r:`4`,fill:xt[St.value[t].lane%xt.length]},null,8,$x)],8,Xx)):z(``,!0),I(`button`,{class:`icon-button hash-btn`,title:`files in this commit`,onClick:t=>at(e.hash)},[L(k(ic),{size:12,class:T({open:ce.value.has(e.hash)})},null,8,[`class`])],8,eS),I(`code`,tS,[D.value?(N(),P(`a`,{key:0,href:`${D.value}/commit/${e.hash}`,target:`_blank`,rel:`noopener`,title:`on the remote`},E(e.hash),9,nS)):(N(),P(M,{key:1},[R(E(e.hash),1)],64))]),e.refs?(N(),P(`span`,rS,E(e.refs.split(`,`)[0]),1)):z(``,!0),I(`span`,iS,E(e.subject),1),I(`span`,aS,E(e.author)+` · `+E(e.date),1)],8,Yx),ce.value.has(e.hash)?(N(),P(`div`,oS,[(N(!0),P(M,null,j(ce.value.get(e.hash),e=>(N(),P(`div`,{key:e.path,class:`cf`},[I(`code`,{class:`cf-status`,"data-s":e.status},E(e.status),9,sS),I(`span`,cS,E(e.path),1)]))),128)),ce.value.get(e.hash)?.length?z(``,!0):(N(),P(`p`,lS,`no files (merge/empty commit)`))])):z(``,!0)],64))),128))])):_t.value?(N(),P(`p`,uS,`log failed: `+E(_t.value),1)):(N(),P(`p`,dS,`no commits`))]),I(`section`,fS,[I(`div`,pS,[I(`h4`,null,[L(k(Bc),{size:16}),t[64]||=R(` Worktrees`,-1)]),I(`div`,mS,[I(`button`,{class:`small`,disabled:!!u.value,onClick:t[33]||=e=>h.value=!h.value},[L(k(qc),{size:13}),t[65]||=R(` worktree`,-1)],8,hS),h.value?(N(),P(`div`,gS,[(N(!0),P(M,null,j((a.value.branches??[]).filter(e=>!e.current),e=>(N(),P(`button`,{key:e.name,onClick:t=>ut(e.name)},[L(k(yc),{size:13}),I(`span`,null,E(e.name),1),t[66]||=I(`span`,{class:`muted-line`},`existing`,-1)],8,_S))),128)),I(`div`,vS,[Wn(I(`input`,{"onUpdate:modelValue":t[34]||=e=>g.value=e,placeholder:`or a NEW branch…`,onKeyup:t[35]||=Ps(e=>g.value.trim()&&ut(g.value.trim()),[`enter`])},null,544),[[Ss,g.value]]),I(`button`,{disabled:!g.value.trim(),onClick:t[36]||=e=>ut(g.value.trim())},`create`,8,yS)])])):z(``,!0)])]),(N(!0),P(M,null,j(bt.value,e=>(N(),P(`div`,{key:e.path,class:T([`wt`,{main:e.path===a.value.root}])},[I(`code`,{title:e.path},E(e.path),9,bS),I(`span`,xS,E(e.branch??e.head),1),t[67]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`icon-button`,disabled:!!u.value,title:`jump to this worktree (session or new)`,onClick:t=>ft(e.path)},[L(k(qs),{size:13})],8,SS),I(`button`,{class:`small`,disabled:!!u.value,title:`create a session on this worktree`,onClick:t=>dt(e.path,e.branch)},`session`,8,CS),e.path===a.value.root?z(``,!0):(N(),P(`button`,{key:0,class:`icon-button`,disabled:!!u.value,onClick:t=>pt(e.path)},[L(k(dl),{size:13})],8,wS)),e.path===a.value.root?(N(),F(k(nc),{key:1,size:13,class:`muted-line`})):z(``,!0)],2))),128))]),fe.value?(N(),P(`section`,TS,[I(`div`,ES,[I(`h4`,null,[L(k(Sc),{size:16}),t[68]||=R(` Pull requests`,-1)]),t[69]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`small`,disabled:de.value||!!u.value,onClick:me},`create PR`,8,DS),I(`button`,{class:`small`,disabled:de.value,onClick:t[37]||=e=>ue.value=!ue.value},E(ue.value?`hide`:`list`),9,OS)]),ue.value&&!le.value.length&&!de.value?(N(),P(`p`,kS,`no open PRs (or gh is not logged in on the device — every action will say so).`)):z(``,!0),ue.value?(N(),P(`div`,AS,[(N(!0),P(M,null,j(le.value,e=>(N(),P(`div`,{key:e.n,class:`pr-row`},[I(`code`,jS,`#`+E(e.n),1),I(`span`,{class:T([`tag`,{open:e.state===`OPEN`}])},E(e.state.toLowerCase())+E(e.draft?` · draft`:``),3),I(`span`,MS,E(e.title),1),I(`span`,NS,E(e.branch),1),t[70]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`icon-button`,title:`run checks`,disabled:de.value,onClick:t=>ge(e.n)},[L(k(Yc),{size:13})],8,PS),I(`button`,{class:`icon-button`,title:`comment`,disabled:de.value,onClick:t=>ye(e.n)},[L(k(cc),{size:13})],8,FS),e.state===`OPEN`?(N(),P(`button`,{key:0,class:`small`,disabled:de.value||!!u.value,onClick:t=>_e(e.n)},`squash & merge`,8,IS)):z(``,!0),I(`a`,{class:`icon-button`,href:e.url,target:`_blank`,rel:`noopener`,title:`open on the forge`},[L(k(Js),{size:13,style:{transform:`rotate(45deg)`}})],8,LS)]))),128)),(N(!0),P(M,null,j(w.value,([e,t])=>(N(),P(`pre`,{key:e,class:`pr-checks`},`#`+E(e)+` checks:`+E(`
|
|
79
|
+
`)+E(t),1))),128))])):z(``,!0)])):z(``,!0),d.value?(N(),P(`pre`,RS,E(d.value.slice(0,6e3)),1)):z(``,!0)],64)):(N(),P(`p`,tb,[...t[41]||=[R(`Not a git repository — run `,-1),I(`code`,null,`git init`,-1),R(` (or open a session inside a repo).`,-1)]]))],2)):z(``,!0),C.value?(N(),P(`div`,{key:4,class:`modal-veil`,onClick:t[40]||=Ms(e=>C.value=null,[`self`])},[I(`div`,{class:T([`modal`,{danger:C.value.danger}]),role:`dialog`,"aria-modal":`true`},[I(`h5`,null,E(C.value.title),1),I(`p`,null,E(C.value.body),1),C.value.input?Wn((N(),P(`textarea`,{key:0,"onUpdate:modelValue":t[38]||=e=>re.value=e,rows:`2`,placeholder:C.value.input.placeholder},null,8,zS)),[[Ss,re.value]]):z(``,!0),I(`div`,BS,[t[72]||=I(`span`,{class:`grow`},null,-1),I(`button`,{class:`small`,onClick:t[39]||=e=>C.value=null},[...t[71]||=[R(`cancel `,-1),I(`span`,{class:`muted-line`},`(esc)`,-1)]]),I(`button`,{class:T([`primary small`,{danger:C.value.danger}]),disabled:!(!C.value.input||re.value.trim()),onClick:ae},E(C.value.confirmLabel??`confirm`),11,VS)])],2)])):z(``,!0)],64)):(N(),P(`p`,Zy,`No session selected — open a session to see its git.`))]))}}),[[`__scopeId`,`data-v-e5829ed1`]]),US={class:`extensions-panel`},WS={class:`panel-heading`},GS={key:0,class:`task-empty`},KS=[`data-extension`],qS={class:`ext-head`},JS=[`aria-checked`,`aria-label`,`disabled`,`onClick`],YS=[`checked`,`disabled`,`onChange`],XS=kr({__name:`ExtensionsPanel`,setup(e){let t=an(),n=O(!1);async function r(){let e=Du.value;if(!e||!xu.value)return void(t.value=void 0);t.value=await e.extensions().catch(()=>void 0)??t.value}A([Du,xu,()=>JSON.stringify(Lu.value.agent.extensions??null)],r,{immediate:!0});async function i(e){let r=Du.value;if(r&&!n.value){n.value=!0;try{let n=await Zu(()=>r.setExtension(e));n&&(t.value=n),Ku()}finally{n.value=!1}}}return(e,r)=>(N(),P(`div`,US,[I(`div`,WS,[r[0]||=I(`h2`,null,`Extensions`,-1),L(k(Jc),{size:18})]),r[3]||=I(`p`,{class:`hint`},` Custom harness capabilities for this agent. Turn one on and the next request uses it. The choice is stored with the agent, so it survives restarts. `,-1),t.value?z(``,!0):(N(),P(`p`,GS,`Loading extensions…`)),(N(!0),P(M,null,j(t.value?.extensions??[],e=>(N(),P(`article`,{key:e.name,class:T([`ext-card`,{on:e.enabled}]),"data-extension":e.name},[I(`div`,qS,[I(`div`,null,[I(`strong`,null,E(e.title),1),I(`code`,null,E(e.name),1)]),I(`button`,{class:T([`switch`,{on:e.enabled}]),role:`switch`,"aria-checked":e.enabled,"aria-label":e.title,disabled:n.value,onClick:t=>i({name:e.name,enabled:!e.enabled})},[...r[1]||=[I(`span`,null,null,-1)]],10,JS)]),I(`p`,null,E(e.description),1),e.prompts?(N(),P(`ul`,{key:0,class:T([`ext-prompts`,{off:!e.enabled}])},[(N(!0),P(M,null,j(e.prompts,e=>(N(),P(`li`,{key:e.id},[I(`label`,null,[I(`input`,{type:`checkbox`,checked:e.enabled,disabled:n.value,onChange:t=>i({prompt:e.id,enabled:t.target.checked})},null,40,YS),I(`code`,null,E(e.id),1)]),I(`span`,null,E(e.description),1),I(`details`,null,[r[2]||=I(`summary`,null,`View prompt`,-1),I(`pre`,null,E(e.text),1)])]))),128))],2)):z(``,!0)],10,KS))),128))]))}}),ZS={class:`context-section`,"aria-labelledby":`context-title`},QS={class:`section-label`},$S={key:0,class:`hint`},eC={class:`context-numbers`},tC={class:`context-pct`},nC={key:0,class:`context-compacting`},rC=[`aria-valuemax`,`aria-valuenow`,`aria-valuetext`],iC={class:`context-marker-label`},aC=[`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`],oC={class:`context-marker-label`},sC={class:`hint context-hint`},cC={class:`modal compaction-modal`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`compaction-title`},lC={class:`context-toggle`},uC=[`checked`],dC=512,fC=4096,pC=1024,mC=kr({__name:`ContextBar`,setup(e){let t=e=>e>=1e6?`${(e/1e6).toFixed(2)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e),n=B(()=>Uu.value?.contextWindow??0),r=B(()=>{let e=Lu.value.entries;for(let t=e.length-1;t>=0;t--){if(e[t].kind!==`pi.assistant`)continue;let n=e[t].model?.find(e=>e.role===`assistant`)?.usage;if(n)return n.totalTokens||n.input+n.output+n.cacheRead+n.cacheWrite}return 0}),i=B(()=>Lu.value.compactions.length>0),a=O(),o=B(()=>a.value??Tu.value?.compaction??S_(n.value));A(()=>JSON.stringify(Tu.value?.compaction),e=>{a.value&&e===JSON.stringify(a.value)&&(a.value=void 0)});let s=O(),c=B(()=>W.dialog?.kind===`compaction`),l=()=>void(W.dialog=void 0);Jr(()=>c.value&&l());let u=B(()=>s.value??C_(n.value,o.value)),d=e=>`${Math.min(100,Math.max(0,100*e/(n.value||1)))}%`,f=B(()=>Math.round(100*r.value/(n.value||1))),p=e=>{let t=e/(n.value||1);return t<.35?`start`:t>.65?`end`:`center`},m=(e,t)=>Math.min(n.value-pC,Math.max((t??fC)+pC,e)),h=(e,t)=>Math.min(t-pC,Math.max(fC,e));function g(e,t){let n=u.value,r=Math.round(t/dC)*dC;s.value=e===`wait`?{auto:n.auto,wait:m(r,n.auto)}:{auto:h(r,n.wait),wait:n.wait}}async function _(e){let t=Ou.value;if(!t)return;let n=await Zu(()=>t.setCompaction(e));n&&(a.value=n),s.value=void 0}function v(){let e=s.value;e&&_({reserveTokens:n.value-e.wait,...e.auto===void 0?{}:{backgroundTokens:e.wait-e.auto}})}let y=O(),b;function ee(e,t){b=e,t.currentTarget.setPointerCapture(t.pointerId)}function x(e){if(!b||!y.value)return;let t=y.value.getBoundingClientRect();g(b,(e.clientX-t.left)/t.width*n.value)}function S(){b&&(b=void 0,v())}function te(e,t){let n=(t.shiftKey?8192:1024)*(t.key===`ArrowRight`||t.key===`ArrowUp`?1:t.key===`ArrowLeft`||t.key===`ArrowDown`?-1:0);if(!n)return;t.preventDefault();let r=u.value;g(e,(e===`auto`?r.auto??fC:r.wait)+n)}return(e,a)=>(N(),P(M,null,[I(`section`,ZS,[I(`div`,QS,[a[7]||=I(`span`,{id:`context-title`},`CONTEXT`,-1),n.value?(N(),P(`button`,{key:0,class:`context-details-toggle`,onClick:a[0]||=e=>k(W).dialog={kind:`compaction`}},[L(k(Ec),{size:16}),a[6]||=R(`Details `,-1)])):z(``,!0)]),n.value?(N(),P(M,{key:1},[I(`div`,eC,[I(`strong`,null,E(t(r.value)),1),I(`span`,null,`of `+E(t(n.value))+` tokens`,1),I(`span`,tC,E(f.value)+`%`,1),i.value?(N(),P(`span`,nC,[...a[8]||=[I(`i`,null,null,-1),R(`Compacting`,-1)]])):z(``,!0)]),I(`div`,{ref_key:`bar`,ref:y,class:T([`context-bar`,{off:!o.value.enabled}]),onPointermove:x,onPointerup:S,onPointercancel:S},[I(`div`,{class:T([`context-fill`,{hot:u.value.auto!==void 0&&r.value>=u.value.auto}]),style:_e({width:d(r.value)})},null,6),I(`div`,{class:`context-reserve`,style:_e({left:d(u.value.wait)}),title:`Reserved for the answer`},null,4),u.value.auto===void 0?z(``,!0):(N(),P(`button`,{key:0,class:T([`context-marker auto`,`label-${p(u.value.auto)}`]),role:`slider`,"aria-label":`Automatic compaction starts at`,"aria-valuemin":fC,"aria-valuemax":u.value.wait-pC,"aria-valuenow":u.value.auto,"aria-valuetext":`${t(u.value.auto)} tokens`,style:_e({left:d(u.value.auto)}),onPointerdown:a[1]||=e=>ee(`auto`,e),onKeydown:a[2]||=e=>te(`auto`,e),onKeyup:v,onBlur:v},[I(`span`,iC,`Auto-compact at `+E(t(u.value.auto)),1)],46,rC)),I(`button`,{class:T([`context-marker wait`,`label-${p(u.value.wait)}`]),role:`slider`,"aria-label":`The next request waits for a summary at`,"aria-valuemin":(u.value.auto??fC)+pC,"aria-valuemax":n.value-pC,"aria-valuenow":u.value.wait,"aria-valuetext":`${t(u.value.wait)} tokens, ${t(n.value-u.value.wait)} reserved`,style:_e({left:d(u.value.wait)}),onPointerdown:a[3]||=e=>ee(`wait`,e),onKeydown:a[4]||=e=>te(`wait`,e),onKeyup:v,onBlur:v},[I(`span`,oC,`Reserve at `+E(t(u.value.wait)),1)],46,aC)],34),I(`p`,sC,[o.value.enabled?(N(),P(M,{key:0},[a[9]||=R(`Compacts in the background at `,-1),I(`strong`,null,E(t(u.value.auto??u.value.wait)),1),a[10]||=R(` and waits at `,-1),I(`strong`,null,E(t(u.value.wait)),1),a[11]||=R(`.`,-1)],64)):(N(),P(M,{key:1},[R(`Automatic compaction is off.`)],64))])],64)):(N(),P(`div`,$S,`Pick a model to see its context window.`))]),(N(),F(dr,{to:`body`},[c.value?(N(),P(`div`,{key:0,class:`modal-backdrop`,onClick:Ms(l,[`self`])},[I(`section`,cC,[I(`header`,null,[a[12]||=I(`h2`,{id:`compaction-title`},`Context compaction`,-1),I(`button`,{class:`icon-button`,"aria-label":`Close context compaction`,onClick:l},[L(k(dl),{size:18})])]),I(`p`,null,[a[13]||=R(` A summary starts in the background at `,-1),I(`strong`,null,E(t(u.value.auto??u.value.wait)),1),a[14]||=R(`. Above `,-1),I(`strong`,null,E(t(u.value.wait)),1),R(` the next request waits for it, keeping `+E(t(n.value-u.value.wait))+` free for the answer. Drag a marker on the bar to change either point. `,1)]),a[16]||=I(`p`,null,[R(`Older entries stay stored, and `),I(`code`,null,`search_history`),R(` still finds them.`)],-1),I(`label`,lC,[I(`input`,{type:`checkbox`,checked:o.value.enabled,onChange:a[5]||=e=>_({enabled:e.target.checked})},null,40,uC),a[15]||=R(` Automatic compaction `,-1)]),a[17]||=I(`p`,{class:`hint`},[R(` Applies to every agent in this session. `),I(`code`,null,`/compact`),R(` works either way. `)],-1),I(`footer`,null,[I(`button`,{class:`secondary`,onClick:l},`Close`)])])])):z(``,!0)]))],64))}}),hC=/^[A-Za-z_$][\w$]*$/,gC=e=>` `.repeat(e);function _C(e,t){let n=[],r=(e,t=`text`)=>n.push({text:e,kind:t});return r(`function`,`keyword`),r(` `),r(e,`function`),r(`(`,`punct`),r(`args`),r(`: `,`punct`),vC(t,0,r),r(`): `,`punct`),r(`Promise`,`type`),r(`<`,`punct`),r(`ToolResult`,`type`),r(`>;`,`punct`),n}function vC(e,t,n){if(!e||typeof e!=`object`)return n(`unknown`,`type`);if(`const`in e)return xC(e.const,n);if(e.enum)return bC(e.enum.map(e=>({const:e})),t,n);if(e.anyOf??e.oneOf)return bC(e.anyOf??e.oneOf,t,n);if(Array.isArray(e.type))return bC(e.type.map(t=>({...e,type:t})),t,n);switch(e.type){case`string`:case`boolean`:case`null`:return n(e.type,`type`);case`number`:case`integer`:return n(`number`,`type`);case`array`:{let r=!!(e.items?.anyOf??e.items?.oneOf??e.items?.enum);return r&&n(`(`,`punct`),vC(e.items,t,n),r&&n(`)`,`punct`),n(`[]`,`punct`)}case`object`:return yC(e,t,n);default:return n(`unknown`,`type`)}}function yC(e,t,n){let r=Object.entries(e.properties??{});if(!r.length)return e.additionalProperties&&typeof e.additionalProperties==`object`?(n(`Record`,`type`),n(`<`,`punct`),n(`string`,`type`),n(`, `,`punct`),vC(e.additionalProperties,t,n),n(`>`,`punct`)):n(`{}`,`punct`);let i=new Set(e.required??[]);n(`{`,`punct`),n(`
|
|
80
|
+
`);for(let[e,a]of r){let r=SC(a);r&&n(`${gC(t+1)}${r}\n`,`comment`),n(gC(t+1)),n(hC.test(e)?e:JSON.stringify(e),`property`),n(i.has(e)?`: `:`?: `,`punct`),vC(a,t+1,n),n(`;`,`punct`),n(`
|
|
81
|
+
`)}n(gC(t)),n(`}`,`punct`)}function bC(e,t,n){e.forEach((e,r)=>{r&&n(` | `,`punct`),vC(e,t,n)})}function xC(e,t){if(typeof e==`string`)return t(JSON.stringify(e),`string`);if(typeof e==`number`)return t(String(e),`number`);t(String(e),`type`)}function SC(e){let t=[e.description,e.minimum===void 0?``:`@minimum ${e.minimum}`,e.maximum===void 0?``:`@maximum ${e.maximum}`,e.default===void 0?``:`@default ${JSON.stringify(e.default)}`].filter(Boolean);return t.length?`/** ${t.join(` `)} */`:``}var CC={key:0,class:`panel-rail`,"aria-label":`Inspector (collapsed)`},wC=[`title`],TC=[`aria-label`,`title`,`onClick`],EC={key:0,class:`count`},DC={class:`inspector-tabs`,role:`tablist`,"aria-label":`Session details`},OC=[`id`,`aria-selected`,`onClick`],kC={key:0,class:`count`},AC=[`title`],jC=[`aria-labelledby`],MC={class:`session-heading`},NC=[`title`],PC={class:`cwd-trail`,dir:`rtl`},FC={dir:`ltr`},IC={class:`session-status`},LC={key:0,class:`background-pill`},RC=[`title`],zC={class:`model-section`},BC=[`src`],VC={class:`thinking-row`},HC=[`value`],UC={class:`stats-section`,"aria-labelledby":`stats-title`},WC={class:`metrics`},GC=[`title`],KC={class:`usage-breakdown`,"aria-label":`Agent token and cost breakdown`},qC={scope:`row`},JC={class:`usage-total`},YC={class:`panel-heading`},XC={class:`hint app-state-description`},ZC=[`disabled`],QC={class:`state-json-actions`},$C={key:0,class:`hint`},ew=[`disabled`],tw=[`disabled`],nw={key:0,class:`message-error`,role:`alert`},rw={class:`panel-heading`},iw={class:`tag`},aw={class:`hook-card`},ow=[`aria-checked`],sw={key:0,class:`tag tool-disabled`},cw={class:`tag`},lw=[`aria-label`],uw=Od(kr({__name:`Inspector`,setup(e){let t=B(()=>new Map(Wu.value?.tools.map(e=>[e.name,_C(e.name,e.parameters)]))),n=[{id:`session`,label:`Session`,icon:_c},{id:`git`,label:`Git`,icon:yc},{id:`state`,label:`State`,icon:ec},{id:`tasks`,label:`Tasks`,icon:Ws},{id:`tools`,label:`Tools`,icon:ul},{id:`extensions`,label:`Extend`,icon:Jc}],r=B(()=>[{label:`Input`,tokens:Hu.value.input,cost:Hu.value.inputCost},{label:`Output`,tokens:Hu.value.output,cost:Hu.value.outputCost},{label:`Cache read`,tokens:Hu.value.cacheRead,cost:Hu.value.cacheReadCost},{label:`Cache write`,tokens:Hu.value.cacheWrite,cost:Hu.value.cacheWriteCost}]),i=B(()=>Bu.value.filter(e=>e.background).length);function a(e,t){Zu(async()=>{await Du.value.configure(e),await Ku(),t&&G(t)})}async function o(){let e=bu.value,t=Tu.value;if(e&&t)try{let n=await H(e.id).agent(t.id,U.value?.agentId??1).transcript(`markdown`),r=new Blob([typeof n==`string`?n:JSON.stringify(n)],{type:`text/markdown`}),i=document.createElement(`a`);i.href=URL.createObjectURL(r),i.download=`${t.name.replace(/[^\w.-]+/g,`_`)||`session`}-${t.id.slice(0,8)}.md`,i.click(),URL.revokeObjectURL(i.href),G(`Transcript downloaded.`)}catch(e){G(`transcript download failed: ${tu(e).slice(0,120)}`)}}function s(){let e=Ou.value;e&&(W.dialog={kind:`prompt`,title:`Rename session`,label:`Session name`,value:Tu.value?.name??``,submit:`Save name`,run:t=>e.rename(t)})}let c=wu.sharedState,l=O(``),u=O(``),d=O(0),f=O(!1),p=O(``),m=B(()=>l.value!==u.value),h=B(()=>m.value&&c.value?.revision!==d.value);function g(){l.value=ed(c.value?.value??{}),u.value=l.value,d.value=c.value?.revision??0,p.value=``}A(c,()=>!m.value&&g(),{immediate:!0});async function _(e){if(!f.value&&Du.value){f.value=!0,p.value=``;try{await Du.value.demo(`state`,e)}catch(e){p.value=tu(e)}finally{f.value=!1}}}async function v(){if(!f.value&&Du.value){p.value=``,f.value=!0;try{let e=JSON.parse(l.value);if(!e||Array.isArray(e)||typeof e!=`object`)throw Error(`App State must be a JSON object.`);let t=await Du.value.demo(`state`,{operation:`update`,path:``,value:e,expectedRevision:d.value});l.value=ed(t.value),u.value=l.value,d.value=t.revision,G(`Shared App State saved.`)}catch(e){p.value=tu(e)}finally{f.value=!1}}}let y=B(()=>Wu.value?.config.readOnly===!0),b=B(()=>Wu.value?.tools.filter(e=>e.offered).length??0);return(e,u)=>(N(),P(`aside`,{class:T([`inspector`,{collapsed:!k(sd),overlay:k(W).inspectorOverlay}])},[k(sd)?(N(),P(M,{key:1},[I(`div`,DC,[(N(),P(M,null,j(n,e=>I(`button`,{id:`inspector-tab-${e.id}`,key:e.id,role:`tab`,"aria-controls":`inspector-panel`,"aria-selected":k(W).tab===e.id,class:T({active:k(W).tab===e.id}),onClick:t=>k(W).tab=e.id},[(N(),F(ni(e.icon),{size:18})),R(E(e.label),1),e.id===`tasks`&&k(Bu).length?(N(),P(`span`,kC,E(k(Bu).length),1)):z(``,!0)],10,OC)),64)),I(`button`,{class:`icon-button panel-toggle`,"aria-label":`Collapse inspector`,title:`Collapse inspector (${k(pd).inspector})`,onClick:u[1]||=e=>k(ld)()},[L(k(Vc),{size:18})],8,AC)]),I(`div`,{id:`inspector-panel`,class:T([`inspector-body`,{"session-panel":k(W).tab===`session`}]),role:`tabpanel`,"aria-labelledby":`inspector-tab-${k(W).tab}`},[k(W).tab===`session`?(N(),P(M,{key:0},[I(`section`,MC,[I(`h1`,null,[I(`span`,null,E(k(Tu)?.name??`Loading session`),1),I(`button`,{class:`icon-button`,title:`Rename session`,"aria-label":`Rename session`,onClick:s},[L(k(Gc),{size:18})]),I(`button`,{class:`icon-button`,title:`Download transcript (markdown)`,"aria-label":`Download transcript`,onClick:o},[L(k(pc),{size:18})])]),I(`button`,{class:`path cwd-button`,title:k(Tu)?.cwd,"aria-label":`Show full working directory`,onClick:u[2]||=e=>k(W).dialog={kind:`path`,path:k(Tu)?.cwd??``}},[L(k(_c),{size:18}),I(`span`,PC,[I(`bdi`,FC,E(k(Tu)?.cwd),1)])],8,NC),I(`div`,IC,[I(`span`,{class:T([`status-pill`,{working:k(Vu)}])},[u[7]||=I(`i`,null,null,-1),R(E(k(Vu)?`Working`:`Idle`),1)],2),i.value?(N(),P(`span`,LC,E(i.value)+` background`,1)):z(``,!0),I(`span`,{class:`saved`,title:k(bu)?.id},[L(k(Zc),{size:18}),R(E(k(bu)?.name??k(bu)?.id),1)],8,RC),k(bu)?(N(),F(ty,{key:1,device:k(bu)},null,8,[`device`])):z(``,!0)])]),k(bu)?(N(),F(vy,{key:0,device:k(bu)},null,8,[`device`])):z(``,!0),I(`section`,zC,[u[15]||=I(`div`,{class:`section-label`},[I(`span`,null,`AGENT`)],-1),I(`button`,{class:`model-button`,onClick:u[3]||=e=>k(W).dialog={kind:`models`}},[I(`img`,{src:k(td)(k(Lu).agent.model?.modelId),alt:``},null,8,BC),I(`div`,null,[I(`strong`,null,E(k(Uu)?.name??k(Lu).agent.model?.modelId??`Loading…`),1),I(`small`,null,E(k(Uu)?.tier??``)+` / `+E(k(Lu).agent.model?.provider??``),1)]),L(k(rc),{size:18})]),I(`div`,VC,[u[8]||=I(`span`,null,`Thinking`,-1),I(`select`,{"aria-label":`Thinking level`,value:k(Lu).agent.thinkingLevel??`low`,onChange:u[4]||=e=>a({thinkingLevel:e.target.value},`Thinking ${e.target.value}. Used on the next turn.`)},[(N(!0),P(M,null,j(k(y_),e=>(N(),P(`option`,{key:e},E(e),1))),128))],40,HC)]),L(mC),I(`section`,UC,[u[14]||=I(`div`,{class:`section-label`},[I(`span`,{id:`stats-title`},`STATS`)],-1),I(`div`,WC,[I(`div`,{title:`${k(Hu).tokens.toLocaleString(`en-US`)} total tokens`},[I(`span`,null,E(k($u)(k(Hu).tokens)),1),u[9]||=I(`small`,null,`total tokens`,-1)],8,GC),I(`div`,null,[I(`span`,null,`$`+E(k(Hu).cost.toFixed(4)),1),u[10]||=I(`small`,null,`agent cost`,-1)]),I(`div`,null,[I(`span`,null,E(k(Wu)?.tools.length??0),1),u[11]||=I(`small`,null,`tools`,-1)])]),I(`table`,KC,[u[13]||=I(`thead`,null,[I(`tr`,null,[I(`th`,{scope:`col`},`Type`),I(`th`,{scope:`col`},`Tokens`),I(`th`,{scope:`col`},`Cost (USD)`)])],-1),I(`tbody`,null,[(N(!0),P(M,null,j(r.value,e=>(N(),P(`tr`,{key:e.label},[I(`th`,qC,E(e.label),1),I(`td`,null,E(e.tokens.toLocaleString(`en-US`)),1),I(`td`,null,`$`+E(e.cost.toFixed(4)),1)]))),128)),I(`tr`,JC,[u[12]||=I(`th`,{scope:`row`},`Total`,-1),I(`td`,null,E(k(Hu).tokens.toLocaleString(`en-US`)),1),I(`td`,null,`$`+E(k(Hu).cost.toFixed(4)),1)])])])])])],64)):z(``,!0),k(W).tab===`state`?(N(),P(M,{key:1},[I(`div`,YC,[u[16]||=I(`h2`,null,`App State`,-1),L(k(ec),{size:18})]),I(`p`,XC,` One shared JSON object for every agent, session and fork on `+E(k(bu)?.name??k(bu)?.id)+`. You and your agents can read, create, update or delete values and fields. Changes appear live and persist across closed browsers, interrupted agents and backend restarts. `,1),Wn(I(`textarea`,{"onUpdate:modelValue":u[5]||=e=>l.value=e,class:`app-state-json`,"aria-label":`App State JSON`,spellcheck:`false`,disabled:f.value||!k(c),rows:`12`},null,8,ZC),[[Ss,l.value]]),I(`div`,QC,[h.value?(N(),P(`span`,$C,`State changed elsewhere. Load the latest JSON before saving.`)):z(``,!0),m.value?(N(),P(`button`,{key:1,class:`secondary`,disabled:f.value,onClick:g},E(h.value?`Load latest`:`Reset`),9,ew)):z(``,!0),I(`button`,{class:`primary small`,disabled:!m.value||f.value||h.value,onClick:v},E(f.value?`Saving…`:`Save JSON`),9,tw)]),p.value?(N(),P(`p`,nw,E(p.value),1)):z(``,!0),L(Yv,{value:k(c)?.value??{},disabled:f.value||m.value||!k(c),onChange:_},null,8,[`value`,`disabled`])],64)):z(``,!0),k(W).tab===`tasks`?(N(),F(Yy,{key:2})):z(``,!0),k(W).tab===`git`?(N(),F(HS,{key:3})):z(``,!0),k(W).tab===`extensions`?(N(),F(XS,{key:4})):z(``,!0),k(W).tab===`tools`?(N(),P(M,{key:5},[I(`div`,rw,[u[17]||=I(`h2`,null,`Tools`,-1),I(`span`,iw,E(b.value)+` / `+E(k(Wu)?.tools.length??0),1)]),u[21]||=I(`p`,{class:`hint`},` Every tool this agent's extensions provide. Open one to see its definition. `,-1),I(`div`,aw,[I(`div`,null,[L(k($c),{size:18}),u[19]||=I(`strong`,null,`Read only`,-1),I(`button`,{class:T([`switch`,{on:y.value}]),role:`switch`,"aria-checked":y.value,"aria-label":`Read only`,onClick:u[6]||=e=>a({readOnly:!y.value},y.value?`Read only off. Every tool is back.`:`Read only on. Tools that write are disabled.`)},[...u[18]||=[I(`span`,null,null,-1)]],10,ow)]),u[20]||=I(`p`,null,` Offers this agent only tools that read. Tools that create, update or delete leave its next request, and the choice is stored with the agent. `,-1)]),(N(!0),P(M,null,j(k(Wu)?.tools,e=>(N(),P(`details`,{key:e.name,class:T([`tool-row`,{disabled:!e.offered}])},[I(`summary`,null,[L(k(ul),{size:18}),I(`strong`,null,E(e.name),1),e.offered?z(``,!0):(N(),P(`span`,sw,`disabled`)),I(`span`,cw,E(e.replay===`safe`?`replay safe`:`interrupt on crash`),1)]),I(`p`,null,E(e.description),1),e.parameters?(N(),P(`pre`,{key:0,class:`tool-signature`,"aria-label":`${e.name} TypeScript definition`},[I(`code`,null,[(N(!0),P(M,null,j(t.value.get(e.name),(e,t)=>(N(),P(`span`,{key:t,class:T(`tk-${e.kind}`)},E(e.text),3))),128))])],8,lw)):z(``,!0),I(`small`,null,E(e.replay===`safe`?`An interrupted execution may run again after recovery.`:`A crash records an interrupted result instead of rerunning this effect.`),1)],2))),128))],64)):z(``,!0)],10,jC)],64)):(N(),P(`div`,CC,[I(`button`,{class:`icon-button panel-toggle`,"aria-label":`Expand inspector`,title:`Expand inspector (${k(pd).inspector})`,onClick:u[0]||=e=>k(cd)()},[L(k(Hc),{size:18})],8,wC),(N(),P(M,null,j(n,e=>I(`button`,{key:e.id,class:T([`rail-tab`,{active:k(W).tab===e.id}]),"aria-label":`Open ${e.label}`,title:e.label,onClick:t=>k(cd)(e.id)},[(N(),F(ni(e.icon),{size:20})),e.id===`tasks`&&k(Bu).length?(N(),P(`span`,EC,E(k(Bu).length),1)):z(``,!0)],10,TC)),64))]))],2))}}),[[`__scopeId`,`data-v-54856f10`]]),dw={class:`chat-empty`},fw={class:`eyebrow`},pw={key:3,class:`hint offline-error`},mw={key:4,class:`offline-command`},hw={key:5,class:`hint`},gw={key:6,class:`hint`},_w={class:`offline-actions`},vw=[`disabled`],yw={key:7,class:`message-error`,role:`alert`},bw=kr({__name:`OfflinePanel`,props:{device:{}},setup(e){let t=e,n=O(!1),r=O(``),i=B(()=>{let e=t.device,n=e.source===`config`;switch(e.status){case`checking`:return{title:`Checking ${e.id}…`,text:`Probing the device. This view fills in as soon as it answers.`};case`unauthorized`:return e.transport===`tunnel`?{title:`${e.id} tunnel credentials are not valid`,text:`Pair the device again — the hub will mint a fresh credential.`}:{title:e.hasToken?`${e.id} rejected its token`:`No token for ${e.id}`,text:e.hasToken?`The device's DPI_TOKEN changed (a rotate or a rebuilt device). Copy the current token into this hub's registry, then check again.`:`This hub has no token for the device yet. Register it, then check again.`,command:n&&e.kind!==`url`?`just net register ${e.id}`:`just net register ${e.id} --token <token>`};case`mismatch`:return{title:`${e.id} answers as a different device`,text:`The URL now reaches a backend with another identity (a rebuilt VM or a new data directory). If that is expected, register it again: that trusts the identity it answers with now.`,command:e.kind===`url`?`just net register ${e.id} --token <token>`:`just net register ${e.id}`};case`incompatible`:return{title:`${e.id} speaks another API version`,text:`Update the device's dpi-backend.`,command:n?`just net deploy ${e.id}`:void 0};default:return{title:`${e.id} is offline`,text:`Last seen ${nd(e.lastSeenAt)}. Its agents keep their state on the device and resume when its backend starts again. The tree shows the last known sessions.`,command:n?e.kind===`local`?`just backend run`:e.kind===`url`?void 0:`just net restart ${e.id}`:void 0,alt:n&&e.kind!==`local`&&e.kind!==`url`?`just net up ${e.id}`:void 0}}});async function a(){n.value=!0,r.value=``;try{let e=await eu.check(t.device.id);e.status===`online`&&G(`${e.id} is online.`)}catch(e){r.value=tu(e)}finally{n.value=!1}}async function o(e){try{await navigator.clipboard.writeText(e),G(`Copied.`)}catch{G(`Clipboard needs localhost or HTTPS. Select the text to copy.`)}}return(t,s)=>(N(),P(`section`,{class:T([`chat-panel offline-panel`,e.device.status]),"aria-live":`polite`},[I(`div`,dw,[e.device.status===`checking`?(N(),F(k(Pc),{key:0,class:`spin`,size:30})):e.device.status===`mismatch`||e.device.status===`unauthorized`?(N(),F(k(Qc),{key:1,size:30})):(N(),F(k(sl),{key:2,size:30})),I(`span`,fw,E(e.device.kind.toUpperCase())+` · `+E(e.device.url??(e.device.transport===`tunnel`?`tunnel`:`no endpoint`)),1),I(`h2`,null,E(i.value.title),1),I(`p`,null,E(i.value.text),1),e.device.error?(N(),P(`p`,pw,E(e.device.error),1)):z(``,!0),i.value.command?(N(),P(`div`,mw,[I(`code`,null,E(i.value.command),1),I(`button`,{class:`icon-button`,"aria-label":`Copy command`,onClick:s[0]||=e=>o(i.value.command)},[L(k(cc),{size:18})])])):z(``,!0),i.value.command?(N(),P(`p`,hw,`Run it in this repo's terminal, then press Check now.`)):z(``,!0),i.value.alt?(N(),P(`p`,gw,[s[2]||=R(` Never deployed or rebuilt? `,-1),I(`code`,null,E(i.value.alt),1),s[3]||=R(` provisions it from scratch. `,-1)])):z(``,!0),I(`div`,_w,[I(`button`,{class:`secondary`,disabled:n.value,onClick:s[1]||=e=>a()},[L(k(Yc),{size:18}),R(E(n.value?`Checking…`:`Check now`),1)],8,vw)]),r.value?(N(),P(`p`,yw,E(r.value),1)):z(``,!0)])],2))}}),xw={class:`dir-browser`},Sw={class:`dir-path`},Cw=[`disabled`],ww=[`aria-busy`],Tw=[`title`],Ew=[`aria-selected`,`title`,`onClick`],Dw={key:1,class:`hint`},Ow={key:0,class:`message-error`,role:`alert`},kw=kr({__name:`DirBrowser`,props:ui({deviceId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=e,n=Ai(e,`modelValue`),r=O(),i=O(!1),a=O(``),o=0;async function s(e){let s=++o,c=t.deviceId;i.value=!0,a.value=``;try{let t=await H(c).dirs(e);return s===o?(r.value=t,t.path&&(n.value=t.path),t):void 0}catch(e){s===o&&(a.value=tu(e));return}finally{s===o&&(i.value=!1)}}return A(()=>t.deviceId,async()=>{r.value=void 0;let e=await s(``),t=e?.dirs[0];t&&!e.path&&await s(t.path)},{immediate:!0}),(e,t)=>(N(),P(`div`,xw,[I(`div`,Sw,[Wn(I(`input`,{"onUpdate:modelValue":t[0]||=e=>n.value=e,"aria-label":`Working directory`,required:``,placeholder:`/path/to/project`,spellcheck:`false`,autocomplete:`off`,onKeydown:t[1]||=Ps(Ms(e=>s(n.value),[`prevent`]),[`enter`])},null,544),[[Ss,n.value]]),I(`button`,{type:`button`,class:`secondary small`,disabled:i.value||!n.value,onClick:t[2]||=e=>s(n.value)},` Go `,8,Cw)]),I(`div`,{class:`dir-list`,role:`listbox`,"aria-label":`Directories`,"aria-busy":i.value},[I(`button`,{type:`button`,class:`dir-item`,title:`Start directories`,onClick:t[3]||=e=>s(``)},[L(k(Tc),{size:16}),t[5]||=I(`span`,null,`Start dirs`,-1)]),r.value?.parent?(N(),P(`button`,{key:0,type:`button`,class:`dir-item`,title:r.value.parent,onClick:t[4]||=e=>s(r.value.parent)},[L(k(uc),{size:16}),t[6]||=I(`span`,null,`..`,-1)],8,Tw)):z(``,!0),(N(!0),P(M,null,j(r.value?.dirs,e=>(N(),P(`button`,{key:e.path,type:`button`,class:`dir-item`,role:`option`,"aria-selected":e.path===n.value,title:e.path,onClick:t=>s(e.path)},[e.path===n.value?(N(),F(k(_c),{key:0,size:16})):(N(),F(k(vc),{key:1,size:16})),I(`span`,null,E(e.name),1)],8,Ew))),128)),r.value&&!r.value.dirs.length?(N(),P(`p`,Dw,`No subdirectories.`)):z(``,!0)],8,ww),a.value?(N(),P(`p`,Ow,E(a.value),1)):z(``,!0)]))}}),Aw={key:0,class:`message-error`},jw=[`value`],Mw={class:`field`},Nw={key:0,class:`recent-cwds`},Pw=[`title`,`onClick`],Fw={key:0,class:`hint`,title:`The device has no provider key — it lists its built-in catalog, and chat needs OPENROUTER_API_KEY set in the device's env file`},Iw=[`value`],Lw={key:2,class:`message-error`,role:`alert`},Rw=[`disabled`],zw=`dpi-recent-cwds`,Bw=Od(kr({__name:`NewSessionDialog`,props:{deviceId:{}},emits:[`close`],setup(e,{emit:t}){let n=e,r=t,i=B(()=>pu.devices.value.filter(e=>e.status===`online`)),a=O(i.value.find(e=>e.id===n.deviceId)?.id??i.value[0]?.id??``),o=B(()=>i.value.find(e=>e.id===a.value)),s=B(()=>{let e=o.value?.info?.models??[];if(e.length)return e;let t=o.value?.info;return t?.defaultModel&&t.provider?[{id:t.defaultModel,provider:t.provider,name:`${t.defaultModel} (device default)`,tier:`—`,icon:`lab.png`,contextWindow:0,reasoning:!1,cost:{input:0,output:0}}]:[]}),c=B(()=>!s.value.length||(o.value?.info?.models?.length??0)===0),l=B(()=>!!o.value?.info?.providerKeyMissing),u=e=>`${e.provider}/${e.id}`,d=O({name:``,cwd:``,model:``}),f=B(()=>{try{return JSON.parse(localStorage.getItem(zw)??`{}`)[a.value]??[]}catch{return[]}}),p=(e,t)=>{try{let n=JSON.parse(localStorage.getItem(zw)??`{}`),r=[t,...(n[e]??[]).filter(e=>e!==t)].slice(0,6);localStorage.setItem(zw,JSON.stringify({...n,[e]:r}))}catch{}},m=O(!1),h=O(``);A(o,e=>{let t=s.value,n=t.find(t=>t.id===e?.info?.defaultModel)??t[0];d.value.model=n?u(n):``,d.value.cwd=``},{immediate:!0});async function g(){if(!m.value&&o.value){m.value=!0,h.value=``;try{let e=s.value.find(e=>u(e)===d.value.model)??s.value[0];if(!e)throw Error(`Choose a model`);let t=await H(o.value.id).createSession({name:d.value.name.trim()||`New session`,cwd:d.value.cwd.trim(),model:{provider:e.provider,modelId:e.id}});p(o.value.id,t.cwd);let n=t.agents.find(e=>e.kind===`root`)??t.agents[0];ku({deviceId:o.value.id,sessionId:t.id,agentId:n?.id??1}),G(`Session created on ${o.value.id}.`),r(`close`)}catch(e){h.value=tu(e)}finally{m.value=!1}}}return(e,t)=>(N(),P(`div`,{class:`modal-backdrop`,onClick:t[6]||=Ms(e=>r(`close`),[`self`])},[I(`form`,{class:`modal session-modal`,onSubmit:Ms(g,[`prevent`])},[I(`header`,null,[t[7]||=I(`div`,null,[I(`span`,{class:`eyebrow`},`A PERSISTENT WORKSPACE`),I(`h2`,null,`New session`)],-1),I(`button`,{type:`button`,class:`icon-button`,"aria-label":`Close new session`,onClick:t[0]||=e=>r(`close`)},[L(k(dl),{size:18})])]),i.value.length?(N(),P(M,{key:1},[I(`label`,null,[t[8]||=R(`Device`,-1),Wn(I(`select`,{"onUpdate:modelValue":t[1]||=e=>a.value=e,"aria-label":`Device`},[(N(!0),P(M,null,j(i.value,e=>(N(),P(`option`,{key:e.id,value:e.id},E(e.name)+E(e.info?.hostname&&e.info.hostname!==e.name?` · ${e.info.hostname}`:``),9,jw))),128))],512),[[Ts,a.value]])]),I(`label`,null,[t[9]||=R(`Session name`,-1),Wn(I(`input`,{"onUpdate:modelValue":t[2]||=e=>d.value.name=e,autofocus:``,placeholder:`My durable agent`,maxlength:`100`},null,512),[[Ss,d.value.name]])]),I(`div`,Mw,[I(`span`,null,`Working directory on `+E(i.value.find(e=>e.id===a.value)?.name??a.value),1),f.value.length?(N(),P(`div`,Nw,[(N(!0),P(M,null,j(f.value,e=>(N(),P(`button`,{key:e,type:`button`,class:T([`chip`,{on:e===d.value.cwd}]),title:e,onClick:t=>d.value.cwd=e},E(e.split(`/`).filter(Boolean).at(-1)||e),11,Pw))),128))])):z(``,!0),L(kw,{modelValue:d.value.cwd,"onUpdate:modelValue":t[3]||=e=>d.value.cwd=e,"device-id":a.value},null,8,[`modelValue`,`device-id`])]),I(`label`,null,[t[10]||=R(`Model`,-1),c.value||l.value?(N(),P(`span`,Fw,`no API key on device — chat needs one`)):z(``,!0),Wn(I(`select`,{"onUpdate:modelValue":t[4]||=e=>d.value.model=e,"aria-label":`New session model`},[(N(!0),P(M,null,j(s.value,e=>(N(),P(`option`,{key:u(e),value:u(e)},E(e.tier)+` / `+E(e.name),9,Iw))),128))],512),[[Ts,d.value.model]])])],64)):(N(),P(`p`,Aw,` No device is online. Start one with just backend run or just net up <id>, then try again. `)),h.value?(N(),P(`p`,Lw,E(h.value),1)):z(``,!0),I(`footer`,null,[I(`button`,{type:`button`,class:`secondary`,onClick:t[5]||=e=>r(`close`)},`Cancel`),I(`button`,{class:`primary`,disabled:m.value||!d.value.model||!d.value.cwd||!o.value},[L(k(qc),{size:18}),R(E(m.value?`Creating…`:`Create session`),1)],8,Rw)])],32)]))}}),[[`__scopeId`,`data-v-09171f1a`]]),Vw=new Uint8Array(512),Hw=new Uint8Array(256);(()=>{let e=1;for(let t=0;t<255;t++)Vw[t]=e,Hw[e]=t,e<<=1,e&256&&(e^=285);for(let e=255;e<512;e++)Vw[e]=Vw[e-255]})();var Uw=(e,t)=>e===0||t===0?0:Vw[Hw[e]+Hw[t]];function Ww(e){let t=[1];for(let n=0;n<e;n++){let e=Array(t.length+1).fill(0);for(let r=0;r<t.length;r++)e[r]^=t[r],e[r+1]^=Uw(t[r],Vw[n]);t=e}return t}function Gw(e,t){let n=Ww(t),r=Array(t).fill(0);for(let i of e){let e=i^r[0];r.shift(),r.push(0);for(let i=0;i<t;i++)r[i]^=Uw(n[i+1],e)}return r}var Kw=[21,25,29,33,37,41,45,49,53,57,61,65],qw=[19,34,55,80,108,136,156,194,232,274,324,370],Jw=[7,10,15,20,26,36,40,48,60,72,80,96],Yw=[7,10,15,20,26,18,20,24,30,18,20,24],Xw=[[[1,19]],[[1,34]],[[1,55]],[[1,80]],[[1,108]],[[2,68]],[[2,78]],[[2,97]],[[2,116]],[[2,68],[2,69]],[[4,81]],[[2,92],[2,93]]],Zw=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58]],Qw=e=>e<=9?8:16;function $w(e){for(let t=1;t<=Kw.length;t++)if(4+Qw(t)+e*8<=qw[t-1]*8)return t;throw Error(`qr: payload too long (${e} bytes; v12L max ${qw[11]-3})`)}function eT(e,t){let n=[...new TextEncoder().encode(e)],r=[],i=(e,t)=>{for(let n=t-1;n>=0;n--)r.push(e>>n&1)};i(4,4),i(n.length,Qw(t));for(let e of n)i(e,8);let a=qw[t-1],o=a*8;for(i(0,Math.min(4,o-r.length));r.length%8!=0;)r.push(0);let s=[236,17],c=0;for(;r.length<o;)i(s[c++%2],8);let l=[];for(let e=0;e<a;e++){let t=0;for(let n=0;n<8;n++)t=t<<1|r[e*8+n];l.push(t)}return l}function tT(e,t){let n=Yw[e-1],r=[],i=0;for(let[n,a]of Xw[e-1])for(let e=0;e<n;e++)r.push(t.slice(i,i+=a));let a=[],o=Math.max(...r.map(e=>e.length));for(let e=0;e<o;e++)for(let t of r)e<t.length&&a.push(t[e]);let s=r.map(e=>Gw(e,n));for(let e=0;e<n;e++)for(let t of s)a.push(t[e]);return a}function nT(e){return Array.from({length:e},()=>Array(e).fill(!1))}function rT(e,t){let n=Kw[t-1],r=(t,r)=>{for(let i=-1;i<=7;i++)for(let a=-1;a<=7;a++){let o=t+i,s=r+a;if(o<0||o>=n||s<0||s>=n)continue;let c=i>=0&&i<=6&&a>=0&&a<=6&&(i===0||i===6||a===0||a===6),l=i>=2&&i<=4&&a>=2&&a<=4;e[o][s]=c||l}};r(0,0),r(0,n-7),r(n-7,0);for(let t=8;t<n-8;t++)e[6][t]=t%2==0,e[t][6]=t%2==0;let i=Zw[t-1];for(let t of i)for(let r of i)if(!(t<=8&&r<=8||t<=8&&r>=n-9||t>=n-9&&r<=8))for(let n=-2;n<=2;n++)for(let i=-2;i<=2;i++)e[t+n][r+i]=Math.max(Math.abs(n),Math.abs(i))!==1;if(e[n-8][8]=!0,t>=7){let r=t<<12;for(let e=17;e>=12;e--)r>>e&1&&(r^=7973<<e-12);let i=t<<12|r&4095;for(let t=0;t<18;t++){let r=(i>>t&1)==1,a=n-11+t%3,o=t/3|0;e[a][o]=r,e[o][a]=r}}}function iT(e){let t=8|e,n=t;for(let e=0;e<10;e++)n=n<<1^(n>>9&1?1335:0);let r=(t<<10|n)^21522,i=[];for(let e=14;e>=0;e--)i.push((r>>e&1)==1);return i}function aT(e,t){let n=Kw[0]*0+e.length,r=iT(t);for(let t=0;t<=5;t++)e[8][t]=r[t];e[8][7]=r[6],e[8][8]=r[7],e[7][8]=r[8];for(let t=9;t<15;t++)e[14-t][8]=r[t];for(let t=0;t<7;t++)e[n-1-t][8]=r[t];e[8][n-8]=r[7];for(let t=8;t<15;t++)e[8][n-15+t]=r[t];e[n-8][8]=!0}function oT(e,t,n,r){let i=e.length;Kw[n-1]*Kw[n-1];let a=e=>((t[e>>3]??0)>>7-(e&7)&1)==1,o=0,s=!0;for(let t=i-1;t>0;t-=2){t===6&&t--;for(let c=0;c<i;c++){let l=s?i-1-c:c;for(let i of[t,t-1]){if(cT(l,i,n))continue;if(o>=(qw[n-1]+Jw[n-1])*8){o++;continue}let t=a(o++);sT(l,i,r)&&(t=!t),e[l][i]=t}}s=!s}}function sT(e,t,n){switch(n){case 0:return(e+t)%2==0;case 1:return e%2==0;case 2:return t%3==0;case 3:return(e+t)%3==0;case 4:return(Math.floor(e/2)+Math.floor(t/3))%2==0;case 5:return e*t%2+e*t%3==0;case 6:return(e*t%2+e*t%3)%2==0;default:return((e+t)%2+e*t%3)%2==0}}function cT(e,t,n){let r=Kw[n-1];if(e<=8&&t<=8||e<=8&&t>=r-8||e>=r-8&&t<=8||e===6||t===6||n>=7&&(e>=r-11&&e<=r-9&&t<=5||t>=r-11&&t<=r-9&&e<=5))return!0;let i=Zw[n-1];for(let n of i)for(let a of i)if(!(n<=8&&a<=8||n<=8&&a>=r-9||n>=r-9&&a<=8)&&Math.abs(e-n)<=2&&Math.abs(t-a)<=2)return!0;return!1}function lT(e){let t=e.length,n=0;for(let r=0;r<2;r++)for(let i=0;i<t;i++){let a=1;for(let o=1;o<t;o++)(r===0?e[i][o]:e[o][i])===(r===0?e[i][o-1]:e[o-1][i])?(a++,o===t-1&&a>=5&&(n+=3+(a-5))):(a>=5&&(n+=3+(a-5)),a=1)}for(let r=0;r<t-1;r++)for(let i=0;i<t-1;i++){let t=e[r][i];e[r][i+1]===t&&e[r+1][i]===t&&e[r+1][i+1]===t&&(n+=3)}let r=[!0,!1,!0,!0,!0,!1,!0,!1,!1,!1,!1],i=(e,t)=>{for(let i=0;i+11<=t;i++){let t=!0;for(let n=0;n<11;n++)if(e(i+n)!==r[n]){t=!1;break}t&&(n+=40)}};for(let n=0;n<t;n++)i(t=>e[n][t],t);for(let n=0;n<t;n++)i(t=>e[t][n],t);let a=0;for(let t of e)for(let e of t)e&&a++;let o=a*100/(t*t);return n+=Math.floor(Math.abs(o-50)/5)*10,n}function uT(e,t){let n=$w(new TextEncoder().encode(e).length),r=Kw[n-1],i=tT(n,eT(e,n)),a=nT(r);return rT(a,n),oT(a,i,n,t),aT(a,t),a}function dT(e,t){if(t!==void 0)return uT(e,t);let n;for(let t=0;t<8;t++){let r=uT(e,t),i=lT(r);(!n||i<n.score)&&(n={m:r,score:i})}return n.m}function fT(e,t=160){let n=dT(e),r=n.length,i=t/(r+8),a=``;for(let e=0;e<r;e++)for(let t=0;t<r;t++)n[e][t]&&(a+=`<rect x="${((t+4)*i).toFixed(2)}" y="${((e+4)*i).toFixed(2)}" width="${i.toFixed(3)}" height="${i.toFixed(3)}"/>`);return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${t} ${t}" shape-rendering="crispEdges"><rect width="${t}" height="${t}" fill="#fff"/><g fill="#000">${a}</g></svg>`}var pT={class:`device-handoff`,"aria-label":`Pair this machine`},mT={class:`row`},hT=[`disabled`],gT=[`disabled`],_T={key:0,class:`target`,"data-testid":`device-url`},vT={key:1,class:`err`},yT=Od(kr({__name:`DeviceHandoff`,props:{offerFragment:{}},setup(e){let t=e,n=O(`4780`),r=O(!1),i=B(()=>{let e=/^\d{1,5}$/.test(n.value)?Number(n.value):0;if(!(!e||e<1||e>65535))return`http://127.0.0.1:${e}/pair#${t.offerFragment}`});function a(){let e=i.value;e&&window.open(e,`_blank`,`noopener`)}async function o(){let e=i.value;if(e)try{await navigator.clipboard.writeText(e),r.value=!0,setTimeout(()=>r.value=!1,1600)}catch{}}return(e,t)=>(N(),P(`section`,pT,[I(`header`,null,[L(k(Lc),{size:18}),t[1]||=I(`h3`,null,`Pair THIS machine`,-1)]),t[4]||=I(`p`,{class:`what`},[R(` If this browser runs on the device itself, open its local pairing page — the offer is relayed inside the link, nothing is sent to the hub. Start `),I(`code`,null,`dpi device`),R(` there first. `)],-1),I(`div`,mT,[I(`label`,null,[t[2]||=R(` local port `,-1),Wn(I(`input`,{"onUpdate:modelValue":t[0]||=e=>n.value=e,inputmode:`numeric`,spellcheck:`false`,"aria-label":`Local dpi backend port`},null,512),[[Ss,n.value]])]),I(`button`,{class:`primary`,type:`button`,disabled:!i.value,onClick:a},[L(k(mc),{size:15}),t[3]||=R(`Open the device page `,-1)],8,hT),I(`button`,{class:`secondary`,type:`button`,disabled:!i.value,onClick:o},[L(k(cc),{size:15}),R(E(r.value?`Copied`:`Copy link`),1)],8,gT)]),i.value?(N(),P(`p`,_T,E(i.value),1)):z(``,!0),i.value?z(``,!0):(N(),P(`p`,vT,`port must be 1–65535`))]))}}),[[`__scopeId`,`data-v-01884b7b`]]);function bT(e){return kT(e)&&!xT(e)&&!NT(e)&&Symbol.asyncIterator in e}function xT(e){return Array.isArray(e)}function ST(e){return typeof e==`bigint`}function CT(e){return typeof e==`boolean`}function wT(e){return e instanceof globalThis.Date}function TT(e){return typeof e==`function`}function ET(e){return kT(e)&&!xT(e)&&!NT(e)&&Symbol.iterator in e}function DT(e){return e===null}function OT(e){return typeof e==`number`}function kT(e){return typeof e==`object`&&!!e}function AT(e){return e instanceof globalThis.RegExp}function jT(e){return typeof e==`string`}function MT(e){return typeof e==`symbol`}function NT(e){return e instanceof globalThis.Uint8Array}function PT(e){return e===void 0}function FT(e){return e.map(e=>BT(e))}function IT(e){return new Date(e.getTime())}function LT(e){return new Uint8Array(e)}function RT(e){return new RegExp(e.source,e.flags)}function zT(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=BT(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=BT(e[n]);return t}function BT(e){return xT(e)?FT(e):wT(e)?IT(e):NT(e)?LT(e):AT(e)?RT(e):kT(e)?zT(e):e}function VT(e){return BT(e)}function HT(e,t){return VT(t===void 0?e:{...t,...e})}function UT(e){return typeof e==`object`&&!!e}function WT(e){return globalThis.Array.isArray(e)&&!globalThis.ArrayBuffer.isView(e)}function GT(e){return e===void 0}function KT(e){return typeof e==`number`}var qT;(function(e){e.InstanceMode=`default`,e.ExactOptionalPropertyTypes=!1,e.AllowArrayObject=!1,e.AllowNaN=!1,e.AllowNullVoid=!1;function t(t,n){return e.ExactOptionalPropertyTypes?n in t:t[n]!==void 0}e.IsExactOptionalProperty=t;function n(t){let n=UT(t);return e.AllowArrayObject?n:n&&!WT(t)}e.IsObjectLike=n;function r(e){return n(e)&&!(e instanceof Date)&&!(e instanceof Uint8Array)}e.IsRecordLike=r;function i(t){return e.AllowNaN?KT(t):Number.isFinite(t)}e.IsNumberLike=i;function a(t){let n=GT(t);return e.AllowNullVoid?n||t===null:n}e.IsVoidLike=a})(qT||={});function JT(e){return globalThis.Object.freeze(e).map(e=>$T(e))}function YT(e){return e}function XT(e){return e}function ZT(e){return e}function QT(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=$T(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=$T(e[n]);return globalThis.Object.freeze(t)}function $T(e){return xT(e)?JT(e):wT(e)?YT(e):NT(e)?XT(e):AT(e)?ZT(e):kT(e)?QT(e):e}function J(e,t){let n=t===void 0?e:{...t,...e};switch(qT.InstanceMode){case`freeze`:return $T(n);case`clone`:return VT(n);default:return n}}var eE=class extends Error{constructor(e){super(e)}},tE=Symbol.for(`TypeBox.Transform`),nE=Symbol.for(`TypeBox.Readonly`),rE=Symbol.for(`TypeBox.Optional`),iE=Symbol.for(`TypeBox.Hint`),Y=Symbol.for(`TypeBox.Kind`);function aE(e){return kT(e)&&e[nE]===`Readonly`}function oE(e){return kT(e)&&e[rE]===`Optional`}function sE(e){return X(e,`Any`)}function cE(e){return X(e,`Argument`)}function lE(e){return X(e,`Array`)}function uE(e){return X(e,`AsyncIterator`)}function dE(e){return X(e,`BigInt`)}function fE(e){return X(e,`Boolean`)}function pE(e){return X(e,`Computed`)}function mE(e){return X(e,`Constructor`)}function hE(e){return X(e,`Date`)}function gE(e){return X(e,`Function`)}function _E(e){return X(e,`Integer`)}function vE(e){return X(e,`Intersect`)}function yE(e){return X(e,`Iterator`)}function X(e,t){return kT(e)&&Y in e&&e[Y]===t}function bE(e){return CT(e)||OT(e)||jT(e)}function xE(e){return X(e,`Literal`)}function SE(e){return X(e,`MappedKey`)}function CE(e){return X(e,`MappedResult`)}function wE(e){return X(e,`Never`)}function TE(e){return X(e,`Not`)}function EE(e){return X(e,`Null`)}function DE(e){return X(e,`Number`)}function OE(e){return X(e,`Object`)}function kE(e){return X(e,`Promise`)}function AE(e){return X(e,`Record`)}function jE(e){return X(e,`Ref`)}function ME(e){return X(e,`RegExp`)}function NE(e){return X(e,`String`)}function PE(e){return X(e,`Symbol`)}function FE(e){return X(e,`TemplateLiteral`)}function IE(e){return X(e,`This`)}function LE(e){return kT(e)&&tE in e}function RE(e){return X(e,`Tuple`)}function zE(e){return X(e,`Undefined`)}function BE(e){return X(e,`Union`)}function VE(e){return X(e,`Uint8Array`)}function HE(e){return X(e,`Unknown`)}function UE(e){return X(e,`Unsafe`)}function WE(e){return X(e,`Void`)}function GE(e){return kT(e)&&Y in e&&jT(e[Y])}function KE(e){return sE(e)||cE(e)||lE(e)||fE(e)||dE(e)||uE(e)||pE(e)||mE(e)||hE(e)||gE(e)||_E(e)||vE(e)||yE(e)||xE(e)||SE(e)||CE(e)||wE(e)||TE(e)||EE(e)||DE(e)||OE(e)||kE(e)||AE(e)||jE(e)||ME(e)||NE(e)||PE(e)||FE(e)||IE(e)||RE(e)||zE(e)||BE(e)||VE(e)||HE(e)||UE(e)||WE(e)||GE(e)}var qE=`Argument.Any.Array.AsyncIterator.BigInt.Boolean.Computed.Constructor.Date.Enum.Function.Integer.Intersect.Iterator.Literal.MappedKey.MappedResult.Not.Null.Number.Object.Promise.Record.Ref.RegExp.String.Symbol.TemplateLiteral.This.Tuple.Undefined.Union.Uint8Array.Unknown.Void`.split(`.`);function JE(e){try{return new RegExp(e),!0}catch{return!1}}function YE(e){if(!jT(e))return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n>=7&&n<=13||n===27||n===127)return!1}return!0}function XE(e){return $E(e)||JD(e)}function ZE(e){return PT(e)||ST(e)}function QE(e){return PT(e)||OT(e)}function $E(e){return PT(e)||CT(e)}function eD(e){return PT(e)||jT(e)}function tD(e){return PT(e)||jT(e)&&YE(e)&&JE(e)}function nD(e){return PT(e)||jT(e)&&YE(e)}function rD(e){return PT(e)||JD(e)}function iD(e){return kT(e)&&e[rE]===`Optional`}function aD(e){return Z(e,`Any`)&&eD(e.$id)}function oD(e){return Z(e,`Argument`)&&OT(e.index)}function sD(e){return Z(e,`Array`)&&e.type===`array`&&eD(e.$id)&&JD(e.items)&&QE(e.minItems)&&QE(e.maxItems)&&$E(e.uniqueItems)&&rD(e.contains)&&QE(e.minContains)&&QE(e.maxContains)}function cD(e){return Z(e,`AsyncIterator`)&&e.type===`AsyncIterator`&&eD(e.$id)&&JD(e.items)}function lD(e){return Z(e,`BigInt`)&&e.type===`bigint`&&eD(e.$id)&&ZE(e.exclusiveMaximum)&&ZE(e.exclusiveMinimum)&&ZE(e.maximum)&&ZE(e.minimum)&&ZE(e.multipleOf)}function uD(e){return Z(e,`Boolean`)&&e.type===`boolean`&&eD(e.$id)}function dD(e){return Z(e,`Computed`)&&jT(e.target)&&xT(e.parameters)&&e.parameters.every(e=>JD(e))}function fD(e){return Z(e,`Constructor`)&&e.type===`Constructor`&&eD(e.$id)&&xT(e.parameters)&&e.parameters.every(e=>JD(e))&&JD(e.returns)}function pD(e){return Z(e,`Date`)&&e.type===`Date`&&eD(e.$id)&&QE(e.exclusiveMaximumTimestamp)&&QE(e.exclusiveMinimumTimestamp)&&QE(e.maximumTimestamp)&&QE(e.minimumTimestamp)&&QE(e.multipleOfTimestamp)}function mD(e){return Z(e,`Function`)&&e.type===`Function`&&eD(e.$id)&&xT(e.parameters)&&e.parameters.every(e=>JD(e))&&JD(e.returns)}function hD(e){return Z(e,`Integer`)&&e.type===`integer`&&eD(e.$id)&&QE(e.exclusiveMaximum)&&QE(e.exclusiveMinimum)&&QE(e.maximum)&&QE(e.minimum)&&QE(e.multipleOf)}function gD(e){return kT(e)&&Object.entries(e).every(([e,t])=>YE(e)&&JD(t))}function _D(e){return Z(e,`Intersect`)&&!(jT(e.type)&&e.type!==`object`)&&xT(e.allOf)&&e.allOf.every(e=>JD(e)&&!zD(e))&&eD(e.type)&&($E(e.unevaluatedProperties)||rD(e.unevaluatedProperties))&&eD(e.$id)}function vD(e){return Z(e,`Iterator`)&&e.type===`Iterator`&&eD(e.$id)&&JD(e.items)}function Z(e,t){return kT(e)&&Y in e&&e[Y]===t}function yD(e){return SD(e)&&jT(e.const)}function bD(e){return SD(e)&&OT(e.const)}function xD(e){return SD(e)&&CT(e.const)}function SD(e){return Z(e,`Literal`)&&eD(e.$id)&&CD(e.const)}function CD(e){return CT(e)||OT(e)||jT(e)}function wD(e){return Z(e,`MappedKey`)&&xT(e.keys)&&e.keys.every(e=>OT(e)||jT(e))}function TD(e){return Z(e,`MappedResult`)&&gD(e.properties)}function ED(e){return Z(e,`Never`)&&kT(e.not)&&Object.getOwnPropertyNames(e.not).length===0}function DD(e){return Z(e,`Not`)&&JD(e.not)}function OD(e){return Z(e,`Null`)&&e.type===`null`&&eD(e.$id)}function kD(e){return Z(e,`Number`)&&e.type===`number`&&eD(e.$id)&&QE(e.exclusiveMaximum)&&QE(e.exclusiveMinimum)&&QE(e.maximum)&&QE(e.minimum)&&QE(e.multipleOf)}function AD(e){return Z(e,`Object`)&&e.type===`object`&&eD(e.$id)&&gD(e.properties)&&XE(e.additionalProperties)&&QE(e.minProperties)&&QE(e.maxProperties)}function jD(e){return Z(e,`Promise`)&&e.type===`Promise`&&eD(e.$id)&&JD(e.item)}function MD(e){return Z(e,`Record`)&&e.type===`object`&&eD(e.$id)&&XE(e.additionalProperties)&&kT(e.patternProperties)&&(e=>{let t=Object.getOwnPropertyNames(e.patternProperties);return t.length===1&&JE(t[0])&&kT(e.patternProperties)&&JD(e.patternProperties[t[0]])})(e)}function ND(e){return Z(e,`Ref`)&&eD(e.$id)&&jT(e.$ref)}function PD(e){return Z(e,`RegExp`)&&eD(e.$id)&&jT(e.source)&&jT(e.flags)&&QE(e.maxLength)&&QE(e.minLength)}function FD(e){return Z(e,`String`)&&e.type===`string`&&eD(e.$id)&&QE(e.minLength)&&QE(e.maxLength)&&tD(e.pattern)&&nD(e.format)}function ID(e){return Z(e,`Symbol`)&&e.type===`symbol`&&eD(e.$id)}function LD(e){return Z(e,`TemplateLiteral`)&&e.type===`string`&&jT(e.pattern)&&e.pattern[0]===`^`&&e.pattern[e.pattern.length-1]===`$`}function RD(e){return Z(e,`This`)&&eD(e.$id)&&jT(e.$ref)}function zD(e){return kT(e)&&tE in e}function BD(e){return Z(e,`Tuple`)&&e.type===`array`&&eD(e.$id)&&OT(e.minItems)&&OT(e.maxItems)&&e.minItems===e.maxItems&&(PT(e.items)&&PT(e.additionalItems)&&e.minItems===0||xT(e.items)&&e.items.every(e=>JD(e)))}function VD(e){return Z(e,`Undefined`)&&e.type===`undefined`&&eD(e.$id)}function HD(e){return Z(e,`Union`)&&eD(e.$id)&&kT(e)&&xT(e.anyOf)&&e.anyOf.every(e=>JD(e))}function UD(e){return Z(e,`Uint8Array`)&&e.type===`Uint8Array`&&eD(e.$id)&&QE(e.minByteLength)&&QE(e.maxByteLength)}function WD(e){return Z(e,`Unknown`)&&eD(e.$id)}function GD(e){return Z(e,`Unsafe`)}function KD(e){return Z(e,`Void`)&&e.type===`void`&&eD(e.$id)}function qD(e){return kT(e)&&Y in e&&jT(e[Y])&&!qE.includes(e[Y])}function JD(e){return kT(e)&&(aD(e)||oD(e)||sD(e)||uD(e)||lD(e)||cD(e)||dD(e)||fD(e)||pD(e)||mD(e)||hD(e)||_D(e)||vD(e)||SD(e)||wD(e)||TD(e)||ED(e)||DD(e)||OD(e)||kD(e)||AD(e)||jD(e)||MD(e)||ND(e)||PD(e)||FD(e)||ID(e)||LD(e)||RD(e)||BD(e)||VD(e)||HD(e)||UD(e)||WD(e)||GD(e)||KD(e)||qD(e))}var YD=`(true|false)`,XD=`(0|[1-9][0-9]*)`,ZD=`(.*)`,QD=`(?!.*)`;`${YD}`;var $D=`^${XD}$`,eO=`^${ZD}$`,tO=`^${QD}$`;function nO(e,t){return e.includes(t)}function rO(e){return[...new Set(e)]}function iO(e,t){return e.filter(e=>t.includes(e))}function aO(e,t){return e.reduce((e,t)=>iO(e,t),t)}function oO(e){return e.length===1?e[0]:e.length>1?aO(e.slice(1),e[0]):[]}function sO(e){let t=[];for(let n of e)t.push(...n);return t}function cO(e){return J({[Y]:`Any`},e)}function lO(e,t){return J({[Y]:`Array`,type:`array`,items:e},t)}function uO(e){return J({[Y]:`Argument`,index:e})}function dO(e,t){return J({[Y]:`AsyncIterator`,type:`AsyncIterator`,items:e},t)}function fO(e,t,n){return J({[Y]:`Computed`,target:e,parameters:t},n)}function pO(e,t){let{[t]:n,...r}=e;return r}function mO(e,t){return t.reduce((e,t)=>pO(e,t),e)}function hO(e){return J({[Y]:`Never`,not:{}},e)}function gO(e){return J({[Y]:`MappedResult`,properties:e})}function _O(e,t,n){return J({[Y]:`Constructor`,type:`Constructor`,parameters:e,returns:t},n)}function vO(e,t,n){return J({[Y]:`Function`,type:`Function`,parameters:e,returns:t},n)}function yO(e,t){return J({[Y]:`Union`,anyOf:e},t)}function bO(e){return e.some(e=>oE(e))}function xO(e){return e.map(e=>oE(e)?SO(e):e)}function SO(e){return mO(e,[rE])}function CO(e,t){return bO(e)?lA(yO(xO(e),t)):yO(xO(e),t)}function wO(e,t){return e.length===1?J(e[0],t):e.length===0?hO(t):CO(e,t)}function TO(e,t){return e.length===0?hO(t):e.length===1?J(e[0],t):yO(e,t)}var EO=class extends eE{};function DO(e){return e.replace(/\\\$/g,`$`).replace(/\\\*/g,`*`).replace(/\\\^/g,`^`).replace(/\\\|/g,`|`).replace(/\\\(/g,`(`).replace(/\\\)/g,`)`)}function OO(e,t,n){return e[t]===n&&e.charCodeAt(t-1)!==92}function kO(e,t){return OO(e,t,`(`)}function AO(e,t){return OO(e,t,`)`)}function jO(e,t){return OO(e,t,`|`)}function MO(e){if(!(kO(e,0)&&AO(e,e.length-1)))return!1;let t=0;for(let n=0;n<e.length;n++)if(kO(e,n)&&(t+=1),AO(e,n)&&--t,t===0&&n!==e.length-1)return!1;return!0}function NO(e){return e.slice(1,e.length-1)}function PO(e){let t=0;for(let n=0;n<e.length;n++)if(kO(e,n)&&(t+=1),AO(e,n)&&--t,jO(e,n)&&t===0)return!0;return!1}function FO(e){for(let t=0;t<e.length;t++)if(kO(e,t))return!0;return!1}function IO(e){let[t,n]=[0,0],r=[];for(let i=0;i<e.length;i++)if(kO(e,i)&&(t+=1),AO(e,i)&&--t,jO(e,i)&&t===0){let t=e.slice(n,i);t.length>0&&r.push(RO(t)),n=i+1}let i=e.slice(n);return i.length>0&&r.push(RO(i)),r.length===0?{type:`const`,const:``}:r.length===1?r[0]:{type:`or`,expr:r}}function LO(e){function t(e,t){if(!kO(e,t))throw new EO(`TemplateLiteralParser: Index must point to open parens`);let n=0;for(let r=t;r<e.length;r++)if(kO(e,r)&&(n+=1),AO(e,r)&&--n,n===0)return[t,r];throw new EO(`TemplateLiteralParser: Unclosed group parens in expression`)}function n(e,t){for(let n=t;n<e.length;n++)if(kO(e,n))return[t,n];return[t,e.length]}let r=[];for(let i=0;i<e.length;i++)if(kO(e,i)){let[n,a]=t(e,i),o=e.slice(n,a+1);r.push(RO(o)),i=a}else{let[t,a]=n(e,i),o=e.slice(t,a);o.length>0&&r.push(RO(o)),i=a-1}return r.length===0?{type:`const`,const:``}:r.length===1?r[0]:{type:`and`,expr:r}}function RO(e){return MO(e)?RO(NO(e)):PO(e)?IO(e):FO(e)?LO(e):{type:`const`,const:DO(e)}}function zO(e){return RO(e.slice(1,e.length-1))}var BO=class extends eE{};function VO(e){return e.type===`or`&&e.expr.length===2&&e.expr[0].type===`const`&&e.expr[0].const===`0`&&e.expr[1].type===`const`&&e.expr[1].const===`[1-9][0-9]*`}function HO(e){return e.type===`or`&&e.expr.length===2&&e.expr[0].type===`const`&&e.expr[0].const===`true`&&e.expr[1].type===`const`&&e.expr[1].const===`false`}function UO(e){return e.type===`const`&&e.const===`.*`}function WO(e){return VO(e)||UO(e)?!1:HO(e)?!0:e.type===`and`||e.type===`or`?e.expr.every(e=>WO(e)):e.type===`const`||(()=>{throw new BO(`Unknown expression type`)})()}function GO(e){return WO(zO(e.pattern))}var KO=class extends eE{};function*qO(e){if(e.length===1)return yield*e[0];for(let t of e[0])for(let n of qO(e.slice(1)))yield`${t}${n}`}function*JO(e){return yield*qO(e.expr.map(e=>[...ZO(e)]))}function*YO(e){for(let t of e.expr)yield*ZO(t)}function*XO(e){return yield e.const}function*ZO(e){return e.type===`and`?yield*JO(e):e.type===`or`?yield*YO(e):e.type===`const`?yield*XO(e):(()=>{throw new KO(`Unknown expression`)})()}function QO(e){let t=zO(e.pattern);return WO(t)?[...ZO(t)]:[]}function $O(e,t){return J({[Y]:`Literal`,const:e,type:typeof e},t)}function ek(e){return J({[Y]:`Boolean`,type:`boolean`},e)}function tk(e){return J({[Y]:`BigInt`,type:`bigint`},e)}function nk(e){return J({[Y]:`Number`,type:`number`},e)}function rk(e){return J({[Y]:`String`,type:`string`},e)}function*ik(e){let t=e.trim().replace(/"|'/g,``);return t===`boolean`?yield ek():t===`number`?yield nk():t===`bigint`?yield tk():t===`string`?yield rk():yield(()=>{let e=t.split(`|`).map(e=>$O(e.trim()));return e.length===0?hO():e.length===1?e[0]:wO(e)})()}function*ak(e){if(e[1]!==`{`)return yield*[$O(`$`),...ok(e.slice(1))];for(let t=2;t<e.length;t++)if(e[t]===`}`){let n=ik(e.slice(2,t)),r=ok(e.slice(t+1));return yield*[...n,...r]}yield $O(e)}function*ok(e){for(let t=0;t<e.length;t++)if(e[t]===`$`)return yield*[$O(e.slice(0,t)),...ak(e.slice(t))];yield $O(e)}function sk(e){return[...ok(e)]}var ck=class extends eE{};function lk(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function uk(e,t){return FE(e)?e.pattern.slice(1,e.pattern.length-1):BE(e)?`(${e.anyOf.map(e=>uk(e,t)).join(`|`)})`:DE(e)||_E(e)||dE(e)?`${t}${XD}`:NE(e)?`${t}${ZD}`:xE(e)?`${t}${lk(e.const.toString())}`:fE(e)?`${t}${YD}`:(()=>{throw new ck(`Unexpected Kind '${e[Y]}'`)})()}function dk(e){return`^${e.map(e=>uk(e,``)).join(``)}$`}function fk(e){return wO(QO(e).map(e=>$O(e)))}function pk(e,t){let n=jT(e)?dk(sk(e)):dk(e);return J({[Y]:`TemplateLiteral`,type:`string`,pattern:n},t)}function mk(e){return QO(e).map(e=>e.toString())}function hk(e){let t=[];for(let n of e)t.push(..._k(n));return t}function gk(e){return[e.toString()]}function _k(e){return[...new Set(FE(e)?mk(e):BE(e)?hk(e.anyOf):xE(e)?gk(e.const):DE(e)||_E(e)?[`[number]`]:[])]}function vk(e,t,n){let r={};for(let i of Object.getOwnPropertyNames(t))r[i]=Mk(e,_k(t[i]),n);return r}function yk(e,t,n){return vk(e,t.properties,n)}function bk(e,t,n){return gO(yk(e,t,n))}function xk(e,t){return e.map(e=>kk(e,t))}function Sk(e){return e.filter(e=>!wE(e))}function Ck(e,t){return vA(Sk(xk(e,t)))}function wk(e){return e.some(e=>wE(e))?[]:e}function Tk(e,t){return wO(wk(xk(e,t)))}function Ek(e,t){return t in e?e[t]:t===`[number]`?wO(e):hO()}function Dk(e,t){return t===`[number]`?e:hO()}function Ok(e,t){return t in e?e[t]:hO()}function kk(e,t){return vE(e)?Ck(e.allOf,t):BE(e)?Tk(e.anyOf,t):RE(e)?Ek(e.items??[],t):lE(e)?Dk(e.items,t):OE(e)?Ok(e.properties,t):hO()}function Ak(e,t){return t.map(t=>kk(e,t))}function jk(e,t){return wO(Ak(e,t))}function Mk(e,t,n){if(jE(e)||jE(t)){if(!KE(e)||!KE(t))throw new eE(`Index types using Ref parameters require both Type and Key to be of TSchema`);return fO(`Index`,[e,t])}return CE(t)?bk(e,t,n):SE(t)?Ik(e,t,n):J(KE(t)?jk(e,_k(t)):jk(e,t),n)}function Nk(e,t,n){return{[t]:Mk(e,[t],VT(n))}}function Pk(e,t,n){return t.reduce((t,r)=>({...t,...Nk(e,r,n)}),{})}function Fk(e,t,n){return Pk(e,t.keys,n)}function Ik(e,t,n){return gO(Fk(e,t,n))}function Lk(e,t){return J({[Y]:`Iterator`,type:`Iterator`,items:e},t)}function Rk(e){return globalThis.Object.keys(e).filter(t=>!oE(e[t]))}function zk(e,t){let n=Rk(e);return J(n.length>0?{[Y]:`Object`,type:`object`,required:n,properties:e}:{[Y]:`Object`,type:`object`,properties:e},t)}var Bk=zk;function Vk(e,t){return J({[Y]:`Promise`,type:`Promise`,item:e},t)}function Hk(e){return J(mO(e,[nE]))}function Uk(e){return J({...e,[nE]:`Readonly`})}function Wk(e,t){return t===!1?Hk(e):Uk(e)}function Gk(e,t){let n=t??!0;return CE(e)?Jk(e,n):Wk(e,n)}function Kk(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=Gk(e[r],t);return n}function qk(e,t){return Kk(e.properties,t)}function Jk(e,t){return gO(qk(e,t))}function Yk(e,t){return J(e.length>0?{[Y]:`Tuple`,type:`array`,items:e,additionalItems:!1,minItems:e.length,maxItems:e.length}:{[Y]:`Tuple`,type:`array`,minItems:e.length,maxItems:e.length},t)}function Xk(e,t){return e in t?rA(e,t[e]):gO(t)}function Zk(e){return{[e]:$O(e)}}function Qk(e){let t={};for(let n of e)t[n]=$O(n);return t}function $k(e,t){return nO(t,e)?Zk(e):Qk(t)}function eA(e,t){return Xk(e,$k(e,t))}function tA(e,t){return t.map(t=>rA(e,t))}function nA(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=rA(e,t[r]);return n}function rA(e,t){let n={...t};return oE(t)?lA(rA(e,mO(t,[rE]))):aE(t)?Gk(rA(e,mO(t,[nE]))):CE(t)?Xk(e,t.properties):SE(t)?eA(e,t.keys):mE(t)?_O(tA(e,t.parameters),rA(e,t.returns),n):gE(t)?vO(tA(e,t.parameters),rA(e,t.returns),n):uE(t)?dO(rA(e,t.items),n):yE(t)?Lk(rA(e,t.items),n):vE(t)?yA(tA(e,t.allOf),n):BE(t)?TO(tA(e,t.anyOf),n):RE(t)?Yk(tA(e,t.items??[]),n):OE(t)?Bk(nA(e,t.properties),n):lE(t)?lO(rA(e,t.items),n):kE(t)?Vk(rA(e,t.item),n):t}function iA(e,t){let n={};for(let r of e)n[r]=rA(r,t);return n}function aA(e,t,n){let r=KE(e)?_k(e):e;return Bk(iA(r,t({[Y]:`MappedKey`,keys:r})),n)}function oA(e){return J(mO(e,[rE]))}function sA(e){return J({...e,[rE]:`Optional`})}function cA(e,t){return t===!1?oA(e):sA(e)}function lA(e,t){let n=t??!0;return CE(e)?fA(e,n):cA(e,n)}function uA(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=lA(e[r],t);return n}function dA(e,t){return uA(e.properties,t)}function fA(e,t){return gO(dA(e,t))}function pA(e,t={}){let n=e.every(e=>OE(e)),r=KE(t.unevaluatedProperties)?{unevaluatedProperties:t.unevaluatedProperties}:{};return J(t.unevaluatedProperties===!1||KE(t.unevaluatedProperties)||n?{...r,[Y]:`Intersect`,type:`object`,allOf:e}:{...r,[Y]:`Intersect`,allOf:e},t)}function mA(e){return e.every(e=>oE(e))}function hA(e){return mO(e,[rE])}function gA(e){return e.map(e=>oE(e)?hA(e):e)}function _A(e,t){return mA(e)?lA(pA(gA(e),t)):pA(gA(e),t)}function vA(e,t={}){if(e.length===1)return J(e[0],t);if(e.length===0)return hO(t);if(e.some(e=>LE(e)))throw Error(`Cannot intersect transform types`);return _A(e,t)}function yA(e,t){if(e.length===1)return J(e[0],t);if(e.length===0)return hO(t);if(e.some(e=>LE(e)))throw Error(`Cannot intersect transform types`);return pA(e,t)}function bA(...e){let[t,n]=typeof e[0]==`string`?[e[0],e[1]]:[e[0].$id,e[1]];if(typeof t!=`string`)throw new eE(`Ref: $ref must be a string`);return J({[Y]:`Ref`,$ref:t},n)}function xA(e,t){return fO(`Awaited`,[fO(e,t)])}function SA(e){return fO(`Awaited`,[bA(e)])}function CA(e){return yA(EA(e))}function wA(e){return TO(EA(e))}function TA(e){return DA(e)}function EA(e){return e.map(e=>DA(e))}function DA(e,t){return J(pE(e)?xA(e.target,e.parameters):vE(e)?CA(e.allOf):BE(e)?wA(e.anyOf):kE(e)?TA(e.item):jE(e)?SA(e.$ref):e,t)}function OA(e){let t=[];for(let n of e)t.push(FA(n));return t}function kA(e){return sO(OA(e))}function AA(e){return oO(OA(e))}function jA(e){return e.map((e,t)=>t.toString())}function MA(e){return[`[number]`]}function NA(e){return globalThis.Object.getOwnPropertyNames(e)}function PA(e){return IA?globalThis.Object.getOwnPropertyNames(e).map(e=>e[0]===`^`&&e[e.length-1]===`$`?e.slice(1,e.length-1):e):[]}function FA(e){return vE(e)?kA(e.allOf):BE(e)?AA(e.anyOf):RE(e)?jA(e.items??[]):lE(e)?MA(e.items):OE(e)?NA(e.properties):AE(e)?PA(e.patternProperties):[]}var IA=!1;function LA(e,t){return fO(`KeyOf`,[fO(e,t)])}function RA(e){return fO(`KeyOf`,[bA(e)])}function zA(e,t){return J(wO(BA(FA(e))),t)}function BA(e){return e.map(e=>e===`[number]`?nk():$O(e))}function VA(e,t){return pE(e)?LA(e.target,e.parameters):jE(e)?RA(e.$ref):CE(e)?WA(e,t):zA(e,t)}function HA(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=VA(e[r],VT(t));return n}function UA(e,t){return HA(e.properties,t)}function WA(e,t){return gO(UA(e,t))}function GA(e){let t=[];for(let n of e)t.push(...FA(n));return rO(t)}function KA(e){return e.filter(e=>!wE(e))}function qA(e,t){let n=[];for(let r of e)n.push(...Ak(r,[t]));return KA(n)}function JA(e,t){let n={};for(let r of t)n[r]=vA(qA(e,r));return n}function YA(e,t){return Bk(JA(e,GA(e)),t)}function XA(e){return J({[Y]:`Date`,type:`Date`},e)}function ZA(e){return J({[Y]:`Null`,type:`null`},e)}function QA(e){return J({[Y]:`Symbol`,type:`symbol`},e)}function $A(e){return J({[Y]:`Undefined`,type:`undefined`},e)}function ej(e){return J({[Y]:`Uint8Array`,type:`Uint8Array`},e)}function tj(e){return J({[Y]:`Unknown`},e)}function nj(e){return e.map(e=>aj(e,!1))}function rj(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=Gk(aj(e[n],!1));return t}function ij(e,t){return t===!0?e:Gk(e)}function aj(e,t){return bT(e)||ET(e)?ij(cO(),t):xT(e)?Gk(Yk(nj(e))):NT(e)?ej():wT(e)?XA():kT(e)?ij(Bk(rj(e)),t):TT(e)?ij(vO([],tj()),t):PT(e)?$A():DT(e)?ZA():MT(e)?QA():ST(e)?tk():OT(e)||CT(e)||jT(e)?$O(e):Bk({})}function oj(e,t){return J(aj(e,!0),t)}function sj(e,t){return mE(e)?Yk(e.parameters,t):hO(t)}function cj(e,t){if(PT(e))throw Error(`Enum undefined or empty`);let n=globalThis.Object.getOwnPropertyNames(e).filter(e=>isNaN(e)).map(t=>e[t]);return TO([...new Set(n)].map(e=>$O(e)),{...t,[iE]:`Enum`})}var lj=class extends eE{},Q;(function(e){e[e.Union=0]=`Union`,e[e.True=1]=`True`,e[e.False=2]=`False`})(Q||={});function uj(e){return e===Q.False?e:Q.True}function dj(e){throw new lj(e)}function fj(e){return ED(e)||_D(e)||HD(e)||WD(e)||aD(e)}function pj(e,t){return ED(t)?jj(e,t):_D(t)?Dj(e,t):HD(t)?mM(e,t):WD(t)?gM(e,t):aD(t)?mj(e,t):dj(`StructuralRight`)}function mj(e,t){return Q.True}function hj(e,t){return _D(t)?Dj(e,t):HD(t)&&t.anyOf.some(e=>aD(e)||WD(e))?Q.True:HD(t)?Q.Union:WD(t)||aD(t)?Q.True:Q.Union}function gj(e,t){return WD(e)?Q.False:aD(e)?Q.Union:ED(e)?Q.True:Q.False}function _j(e,t){return AD(t)&&Jj(t)?Q.True:fj(t)?pj(e,t):sD(t)?uj(bM(e.items,t.items)):Q.False}function vj(e,t){return fj(t)?pj(e,t):cD(t)?uj(bM(e.items,t.items)):Q.False}function yj(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):lD(t)?Q.True:Q.False}function bj(e,t){return xD(e)||uD(e)?Q.True:Q.False}function xj(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):uD(t)?Q.True:Q.False}function Sj(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):fD(t)?e.parameters.length>t.parameters.length?Q.False:e.parameters.every((e,n)=>uj(bM(t.parameters[n],e))===Q.True)?uj(bM(e.returns,t.returns)):Q.False:Q.False}function Cj(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):pD(t)?Q.True:Q.False}function wj(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):mD(t)?e.parameters.length>t.parameters.length?Q.False:e.parameters.every((e,n)=>uj(bM(t.parameters[n],e))===Q.True)?uj(bM(e.returns,t.returns)):Q.False:Q.False}function Tj(e,t){return SD(e)&&OT(e.const)||kD(e)||hD(e)?Q.True:Q.False}function Ej(e,t){return hD(t)||kD(t)?Q.True:fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):Q.False}function Dj(e,t){return t.allOf.every(t=>bM(e,t)===Q.True)?Q.True:Q.False}function Oj(e,t){return e.allOf.some(e=>bM(e,t)===Q.True)?Q.True:Q.False}function kj(e,t){return fj(t)?pj(e,t):vD(t)?uj(bM(e.items,t.items)):Q.False}function Aj(e,t){return SD(t)&&t.const===e.const?Q.True:fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):FD(t)?aM(e,t):kD(t)?Ij(e,t):hD(t)?Tj(e,t):uD(t)?bj(e,t):Q.False}function jj(e,t){return Q.False}function Mj(e,t){return Q.True}function Nj(e){let[t,n]=[e,0];for(;DD(t);)t=t.not,n+=1;return n%2==0?t:tj()}function Pj(e,t){return DD(e)?bM(Nj(e),t):DD(t)?bM(e,Nj(t)):dj(`Invalid fallthrough for Not`)}function Fj(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):OD(t)?Q.True:Q.False}function Ij(e,t){return bD(e)||kD(e)||hD(e)?Q.True:Q.False}function Lj(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):hD(t)||kD(t)?Q.True:Q.False}function Rj(e,t){return Object.getOwnPropertyNames(e.properties).length===t}function zj(e){return Jj(e)}function Bj(e){return Rj(e,0)||Rj(e,1)&&`description`in e.properties&&HD(e.properties.description)&&e.properties.description.anyOf.length===2&&(FD(e.properties.description.anyOf[0])&&VD(e.properties.description.anyOf[1])||FD(e.properties.description.anyOf[1])&&VD(e.properties.description.anyOf[0]))}function Vj(e){return Rj(e,0)}function Hj(e){return Rj(e,0)}function Uj(e){return Rj(e,0)}function Wj(e){return Rj(e,0)}function Gj(e){return Jj(e)}function Kj(e){let t=nk();return Rj(e,0)||Rj(e,1)&&`length`in e.properties&&uj(bM(e.properties.length,t))===Q.True}function qj(e){return Rj(e,0)}function Jj(e){let t=nk();return Rj(e,0)||Rj(e,1)&&`length`in e.properties&&uj(bM(e.properties.length,t))===Q.True}function Yj(e){let t=vO([cO()],cO());return Rj(e,0)||Rj(e,1)&&`then`in e.properties&&uj(bM(e.properties.then,t))===Q.True}function Xj(e,t){return bM(e,t)===Q.False||iD(e)&&!iD(t)?Q.False:Q.True}function Zj(e,t){return WD(e)?Q.False:aD(e)?Q.Union:ED(e)||yD(e)&&zj(t)||bD(e)&&Vj(t)||xD(e)&&Hj(t)||ID(e)&&Bj(t)||lD(e)&&Uj(t)||FD(e)&&zj(t)||ID(e)&&Bj(t)||kD(e)&&Vj(t)||hD(e)&&Vj(t)||uD(e)&&Hj(t)||UD(e)&&Gj(t)||pD(e)&&Wj(t)||fD(e)&&qj(t)||mD(e)&&Kj(t)?Q.True:MD(e)&&FD(eM(e))?t[iE]===`Record`?Q.True:Q.False:MD(e)&&kD(eM(e))&&Rj(t,0)?Q.True:Q.False}function Qj(e,t){return fj(t)?pj(e,t):MD(t)?nM(e,t):AD(t)?(()=>{for(let n of Object.getOwnPropertyNames(t.properties)){if(!(n in e.properties)&&!iD(t.properties[n]))return Q.False;if(iD(t.properties[n]))return Q.True;if(Xj(e.properties[n],t.properties[n])===Q.False)return Q.False}return Q.True})():Q.False}function $j(e,t){return fj(t)?pj(e,t):AD(t)&&Yj(t)?Q.True:jD(t)?uj(bM(e.item,t.item)):Q.False}function eM(e){return $D in e.patternProperties?nk():eO in e.patternProperties?rk():dj(`Unknown record key pattern`)}function tM(e){return $D in e.patternProperties?e.patternProperties[$D]:eO in e.patternProperties?e.patternProperties[eO]:dj(`Unable to get record value schema`)}function nM(e,t){let[n,r]=[eM(t),tM(t)];return yD(e)&&kD(n)&&uj(bM(e,r))===Q.True?Q.True:UD(e)&&kD(n)||FD(e)&&kD(n)||sD(e)&&kD(n)?bM(e,r):AD(e)?(()=>{for(let t of Object.getOwnPropertyNames(e.properties))if(Xj(r,e.properties[t])===Q.False)return Q.False;return Q.True})():Q.False}function rM(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?bM(tM(e),tM(t)):Q.False}function iM(e,t){return bM(PD(e)?rk():e,PD(t)?rk():t)}function aM(e,t){return SD(e)&&jT(e.const)||FD(e)?Q.True:Q.False}function oM(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):FD(t)?Q.True:Q.False}function sM(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):ID(t)?Q.True:Q.False}function cM(e,t){return LD(e)?bM(fk(e),t):LD(t)?bM(e,fk(t)):dj(`Invalid fallthrough for TemplateLiteral`)}function lM(e,t){return sD(t)&&e.items!==void 0&&e.items.every(e=>bM(e,t.items)===Q.True)}function uM(e,t){return ED(e)?Q.True:WD(e)?Q.False:aD(e)?Q.Union:Q.False}function dM(e,t){return fj(t)?pj(e,t):AD(t)&&Jj(t)||sD(t)&&lM(e,t)?Q.True:BD(t)?PT(e.items)&&!PT(t.items)||!PT(e.items)&&PT(t.items)?Q.False:PT(e.items)&&!PT(t.items)||e.items.every((e,n)=>bM(e,t.items[n])===Q.True)?Q.True:Q.False:Q.False}function fM(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):UD(t)?Q.True:Q.False}function pM(e,t){return fj(t)?pj(e,t):AD(t)?Zj(e,t):MD(t)?nM(e,t):KD(t)?vM(e,t):VD(t)?Q.True:Q.False}function mM(e,t){return t.anyOf.some(t=>bM(e,t)===Q.True)?Q.True:Q.False}function hM(e,t){return e.anyOf.every(e=>bM(e,t)===Q.True)?Q.True:Q.False}function gM(e,t){return Q.True}function _M(e,t){return ED(t)?jj(e,t):_D(t)?Dj(e,t):HD(t)?mM(e,t):aD(t)?mj(e,t):FD(t)?aM(e,t):kD(t)?Ij(e,t):hD(t)?Tj(e,t):uD(t)?bj(e,t):sD(t)?gj(e,t):BD(t)?uM(e,t):AD(t)?Zj(e,t):WD(t)?Q.True:Q.False}function vM(e,t){return VD(e)||VD(e)?Q.True:Q.False}function yM(e,t){return _D(t)?Dj(e,t):HD(t)?mM(e,t):WD(t)?gM(e,t):aD(t)?mj(e,t):AD(t)?Zj(e,t):KD(t)?Q.True:Q.False}function bM(e,t){return LD(e)||LD(t)?cM(e,t):PD(e)||PD(t)?iM(e,t):DD(e)||DD(t)?Pj(e,t):aD(e)?hj(e,t):sD(e)?_j(e,t):lD(e)?yj(e,t):uD(e)?xj(e,t):cD(e)?vj(e,t):fD(e)?Sj(e,t):pD(e)?Cj(e,t):mD(e)?wj(e,t):hD(e)?Ej(e,t):_D(e)?Oj(e,t):vD(e)?kj(e,t):SD(e)?Aj(e,t):ED(e)?Mj(e,t):OD(e)?Fj(e,t):kD(e)?Lj(e,t):AD(e)?Qj(e,t):MD(e)?rM(e,t):FD(e)?oM(e,t):ID(e)?sM(e,t):BD(e)?dM(e,t):jD(e)?$j(e,t):UD(e)?fM(e,t):VD(e)?pM(e,t):HD(e)?hM(e,t):WD(e)?_M(e,t):KD(e)?yM(e,t):dj(`Unknown left type operand '${e[Y]}'`)}function xM(e,t){return bM(e,t)}function SM(e,t,n,r,i){let a={};for(let o of globalThis.Object.getOwnPropertyNames(e))a[o]=EM(e[o],t,n,r,VT(i));return a}function CM(e,t,n,r,i){return SM(e.properties,t,n,r,i)}function wM(e,t,n,r,i){return gO(CM(e,t,n,r,i))}function TM(e,t,n,r){let i=xM(e,t);return i===Q.Union?TO([n,r]):i===Q.True?n:r}function EM(e,t,n,r,i){return CE(e)?wM(e,t,n,r,i):SE(e)?J(AM(e,t,n,r,i)):J(TM(e,t,n,r),i)}function DM(e,t,n,r,i){return{[e]:EM($O(e),t,n,r,VT(i))}}function OM(e,t,n,r,i){return e.reduce((e,a)=>({...e,...DM(a,t,n,r,i)}),{})}function kM(e,t,n,r,i){return OM(e.keys,t,n,r,i)}function AM(e,t,n,r,i){return gO(kM(e,t,n,r,i))}function jM(e,t){return NM(fk(e),t)}function MM(e,t){let n=e.filter(e=>xM(e,t)===Q.False);return n.length===1?n[0]:TO(n)}function NM(e,t,n={}){return FE(e)?J(jM(e,t),n):CE(e)?J(IM(e,t),n):J(BE(e)?MM(e.anyOf,t):xM(e,t)===Q.False?e:hO(),n)}function PM(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=NM(e[r],t);return n}function FM(e,t){return PM(e.properties,t)}function IM(e,t){return gO(FM(e,t))}function LM(e,t){return zM(fk(e),t)}function RM(e,t){let n=e.filter(e=>xM(e,t)!==Q.False);return n.length===1?n[0]:TO(n)}function zM(e,t,n){return FE(e)?J(LM(e,t),n):CE(e)?J(HM(e,t),n):J(BE(e)?RM(e.anyOf,t):xM(e,t)===Q.False?hO():e,n)}function BM(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=zM(e[r],t);return n}function VM(e,t){return BM(e.properties,t)}function HM(e,t){return gO(VM(e,t))}function UM(e,t){return mE(e)?J(e.returns,t):hO(t)}function WM(e){return Gk(lA(e))}function GM(e,t,n){return J({[Y]:`Record`,type:`object`,patternProperties:{[e]:t}},n)}function KM(e,t,n){let r={};for(let n of e)r[n]=t;return Bk(r,{...n,[iE]:`Record`})}function qM(e,t,n){return GO(e)?KM(_k(e),t,n):GM(e.pattern,t,n)}function JM(e,t,n){return KM(_k(TO(e)),t,n)}function YM(e,t,n){return KM([e.toString()],t,n)}function XM(e,t,n){return GM(e.source,t,n)}function ZM(e,t,n){return GM(PT(e.pattern)?eO:e.pattern,t,n)}function QM(e,t,n){return GM(eO,t,n)}function $M(e,t,n){return GM(tO,t,n)}function eN(e,t,n){return Bk({true:t,false:t},n)}function tN(e,t,n){return GM($D,t,n)}function nN(e,t,n){return GM($D,t,n)}function rN(e,t,n={}){return BE(e)?JM(e.anyOf,t,n):FE(e)?qM(e,t,n):xE(e)?YM(e.const,t,n):fE(e)?eN(e,t,n):_E(e)?tN(e,t,n):DE(e)?nN(e,t,n):ME(e)?XM(e,t,n):NE(e)?ZM(e,t,n):sE(e)?QM(e,t,n):wE(e)?$M(e,t,n):hO(n)}function iN(e){return globalThis.Object.getOwnPropertyNames(e.patternProperties)[0]}function aN(e){let t=iN(e);return t===eO?rk():t===$D?nk():rk({pattern:t})}function oN(e){return e.patternProperties[iN(e)]}function sN(e,t){return t.parameters=xN(e,t.parameters),t.returns=SN(e,t.returns),t}function cN(e,t){return t.parameters=xN(e,t.parameters),t.returns=SN(e,t.returns),t}function lN(e,t){return t.allOf=xN(e,t.allOf),t}function uN(e,t){return t.anyOf=xN(e,t.anyOf),t}function dN(e,t){return PT(t.items)||(t.items=xN(e,t.items)),t}function fN(e,t){return t.items=SN(e,t.items),t}function pN(e,t){return t.items=SN(e,t.items),t}function mN(e,t){return t.items=SN(e,t.items),t}function hN(e,t){return t.item=SN(e,t.item),t}function gN(e,t){let n=bN(e,t.properties);return{...t,...Bk(n)}}function _N(e,t){let n=rN(SN(e,aN(t)),SN(e,oN(t)));return{...t,...n}}function vN(e,t){return t.index in e?e[t.index]:tj()}function yN(e,t){let n=aE(t),r=oE(t),i=SN(e,t);return n&&r?WM(i):n&&!r?Gk(i):!n&&r?lA(i):i}function bN(e,t){return globalThis.Object.getOwnPropertyNames(t).reduce((n,r)=>({...n,[r]:yN(e,t[r])}),{})}function xN(e,t){return t.map(t=>SN(e,t))}function SN(e,t){return mE(t)?sN(e,t):gE(t)?cN(e,t):vE(t)?lN(e,t):BE(t)?uN(e,t):RE(t)?dN(e,t):lE(t)?fN(e,t):uE(t)?pN(e,t):yE(t)?mN(e,t):kE(t)?hN(e,t):OE(t)?gN(e,t):AE(t)?_N(e,t):cE(t)?vN(e,t):t}function CN(e,t){return SN(t,HT(e))}function wN(e){return J({[Y]:`Integer`,type:`integer`},e)}function TN(e,t,n){return{[e]:IN($O(e),t,VT(n))}}function EN(e,t,n){return e.reduce((e,r)=>({...e,...TN(r,t,n)}),{})}function DN(e,t,n){return EN(e.keys,t,n)}function ON(e,t,n){return gO(DN(e,t,n))}function kN(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toLowerCase(),n].join(``)}function AN(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toUpperCase(),n].join(``)}function jN(e){return e.toUpperCase()}function MN(e){return e.toLowerCase()}function NN(e,t,n){let r=zO(e.pattern);return WO(r)?pk([TO(FN([...ZO(r)].map(e=>$O(e)),t))],n):{...e,pattern:PN(e.pattern,t)}}function PN(e,t){return typeof e==`string`?t===`Uncapitalize`?kN(e):t===`Capitalize`?AN(e):t===`Uppercase`?jN(e):t===`Lowercase`?MN(e):e:e.toString()}function FN(e,t){return e.map(e=>IN(e,t))}function IN(e,t,n={}){return SE(e)?ON(e,t,n):FE(e)?NN(e,t,n):BE(e)?TO(FN(e.anyOf,t),n):xE(e)?$O(PN(e.const,t),n):J(e,n)}function LN(e,t={}){return IN(e,`Capitalize`,t)}function RN(e,t={}){return IN(e,`Lowercase`,t)}function zN(e,t={}){return IN(e,`Uncapitalize`,t)}function BN(e,t={}){return IN(e,`Uppercase`,t)}function VN(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=ZN(e[i],t,VT(n));return r}function HN(e,t,n){return VN(e.properties,t,n)}function UN(e,t,n){return gO(HN(e,t,n))}function WN(e,t){return e.map(e=>XN(e,t))}function GN(e,t){return e.map(e=>XN(e,t))}function KN(e,t){let{[t]:n,...r}=e;return r}function qN(e,t){return t.reduce((e,t)=>KN(e,t),e)}function JN(e,t,n){let r=mO(e,[tE,`$id`,`required`,`properties`]);return Bk(qN(n,t),r)}function YN(e){return TO(e.reduce((e,t)=>bE(t)?[...e,$O(t)]:e,[]))}function XN(e,t){return vE(e)?yA(WN(e.allOf,t)):BE(e)?TO(GN(e.anyOf,t)):OE(e)?JN(e,t,e.properties):Bk({})}function ZN(e,t,n){let r=xT(t)?YN(t):t,i=KE(t)?_k(t):t,a=jE(e),o=jE(t);return CE(e)?UN(e,i,n):SE(t)?tP(e,t,n):a&&o||!a&&o||a&&!o?fO(`Omit`,[e,r],n):J({...XN(e,i),...n})}function QN(e,t,n){return{[t]:ZN(e,[t],VT(n))}}function $N(e,t,n){return t.reduce((t,r)=>({...t,...QN(e,r,n)}),{})}function eP(e,t,n){return $N(e,t.keys,n)}function tP(e,t,n){return gO(eP(e,t,n))}function nP(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=dP(e[i],t,VT(n));return r}function rP(e,t,n){return nP(e.properties,t,n)}function iP(e,t,n){return gO(rP(e,t,n))}function aP(e,t){return e.map(e=>uP(e,t))}function oP(e,t){return e.map(e=>uP(e,t))}function sP(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function cP(e,t,n){let r=mO(e,[tE,`$id`,`required`,`properties`]);return Bk(sP(n,t),r)}function lP(e){return TO(e.reduce((e,t)=>bE(t)?[...e,$O(t)]:e,[]))}function uP(e,t){return vE(e)?yA(aP(e.allOf,t)):BE(e)?TO(oP(e.anyOf,t)):OE(e)?cP(e,t,e.properties):Bk({})}function dP(e,t,n){let r=xT(t)?lP(t):t,i=KE(t)?_k(t):t,a=jE(e),o=jE(t);return CE(e)?iP(e,i,n):SE(t)?hP(e,t,n):a&&o||!a&&o||a&&!o?fO(`Pick`,[e,r],n):J({...uP(e,i),...n})}function fP(e,t,n){return{[t]:dP(e,[t],VT(n))}}function pP(e,t,n){return t.reduce((t,r)=>({...t,...fP(e,r,n)}),{})}function mP(e,t,n){return pP(e,t.keys,n)}function hP(e,t,n){return gO(mP(e,t,n))}function gP(e,t){return fO(`Partial`,[fO(e,t)])}function _P(e){return fO(`Partial`,[bA(e)])}function vP(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=lA(e[n]);return t}function yP(e,t){let n=mO(e,[tE,`$id`,`required`,`properties`]);return Bk(vP(t),n)}function bP(e){return e.map(e=>xP(e))}function xP(e){return pE(e)?gP(e.target,e.parameters):jE(e)?_P(e.$ref):vE(e)?yA(bP(e.allOf)):BE(e)?TO(bP(e.anyOf)):OE(e)?yP(e,e.properties):dE(e)||fE(e)||_E(e)||xE(e)||EE(e)||DE(e)||NE(e)||PE(e)||zE(e)?e:Bk({})}function SP(e,t){return CE(e)?TP(e,t):J({...xP(e),...t})}function CP(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=SP(e[r],VT(t));return n}function wP(e,t){return CP(e.properties,t)}function TP(e,t){return gO(wP(e,t))}function EP(e,t){return fO(`Required`,[fO(e,t)])}function DP(e){return fO(`Required`,[bA(e)])}function OP(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=mO(e[n],[rE]);return t}function kP(e,t){let n=mO(e,[tE,`$id`,`required`,`properties`]);return Bk(OP(t),n)}function AP(e){return e.map(e=>jP(e))}function jP(e){return pE(e)?EP(e.target,e.parameters):jE(e)?DP(e.$ref):vE(e)?yA(AP(e.allOf)):BE(e)?TO(AP(e.anyOf)):OE(e)?kP(e,e.properties):dE(e)||fE(e)||_E(e)||xE(e)||EE(e)||DE(e)||NE(e)||PE(e)||zE(e)?e:Bk({})}function MP(e,t){return CE(e)?FP(e,t):J({...jP(e),...t})}function NP(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=MP(e[r],t);return n}function PP(e,t){return NP(e.properties,t)}function FP(e,t){return gO(PP(e,t))}function IP(e,t){return t.map(t=>jE(t)?LP(e,t.$ref):iF(e,t))}function LP(e,t){return t in e?jE(e[t])?LP(e,e[t].$ref):iF(e,e[t]):hO()}function RP(e){return DA(e[0])}function zP(e){return Mk(e[0],e[1])}function BP(e){return VA(e[0])}function VP(e){return SP(e[0])}function HP(e){return ZN(e[0],e[1])}function UP(e){return dP(e[0],e[1])}function WP(e){return MP(e[0])}function GP(e,t,n){let r=IP(e,n);return t===`Awaited`?RP(r):t===`Index`?zP(r):t===`KeyOf`?BP(r):t===`Partial`?VP(r):t===`Omit`?HP(r):t===`Pick`?UP(r):t===`Required`?WP(r):hO()}function KP(e,t){return lO(iF(e,t))}function qP(e,t){return dO(iF(e,t))}function JP(e,t,n){return _O(rF(e,t),iF(e,n))}function YP(e,t,n){return vO(rF(e,t),iF(e,n))}function XP(e,t){return yA(rF(e,t))}function ZP(e,t){return Lk(iF(e,t))}function QP(e,t){return Bk(globalThis.Object.keys(t).reduce((n,r)=>({...n,[r]:iF(e,t[r])}),{}))}function $P(e,t){let[n,r]=[iF(e,oN(t)),iN(t)],i=HT(t);return i.patternProperties[r]=n,i}function eF(e,t){return jE(t)?{...LP(e,t.$ref),[tE]:t[tE]}:t}function tF(e,t){return Yk(rF(e,t))}function nF(e,t){return TO(rF(e,t))}function rF(e,t){return t.map(t=>iF(e,t))}function iF(e,t){return oE(t)?J(iF(e,mO(t,[rE])),t):aE(t)?J(iF(e,mO(t,[nE])),t):LE(t)?J(eF(e,t),t):lE(t)?J(KP(e,t.items),t):uE(t)?J(qP(e,t.items),t):pE(t)?J(GP(e,t.target,t.parameters)):mE(t)?J(JP(e,t.parameters,t.returns),t):gE(t)?J(YP(e,t.parameters,t.returns),t):vE(t)?J(XP(e,t.allOf),t):yE(t)?J(ZP(e,t.items),t):OE(t)?J(QP(e,t.properties),t):AE(t)?J($P(e,t)):RE(t)?J(tF(e,t.items||[]),t):BE(t)?J(nF(e,t.anyOf),t):t}function aF(e,t){return t in e?iF(e,e[t]):hO()}function oF(e){return globalThis.Object.getOwnPropertyNames(e).reduce((t,n)=>({...t,[n]:aF(e,n)}),{})}var sF=class{constructor(e){let t=oF(e),n=this.WithIdentifiers(t);this.$defs=n}Import(e,t){let n={...this.$defs,[e]:J(this.$defs[e],t)};return J({[Y]:`Import`,$defs:n,$ref:e})}WithIdentifiers(e){return globalThis.Object.getOwnPropertyNames(e).reduce((t,n)=>({...t,[n]:{...e[n],$id:n}}),{})}};function cF(e){return new sF(e)}function lF(e,t){return J({[Y]:`Not`,not:e},t)}function uF(e,t){return gE(e)?Yk(e.parameters,t):hO()}var dF=0;function fF(e,t={}){PT(t.$id)&&(t.$id=`T${dF++}`);let n=HT(e({[Y]:`This`,$ref:`${t.$id}`}));return n.$id=t.$id,J({[iE]:`Recursive`,...n},t)}function pF(e,t){let n=jT(e)?new globalThis.RegExp(e):e;return J({[Y]:`RegExp`,type:`RegExp`,source:n.source,flags:n.flags},t)}function mF(e){return vE(e)?e.allOf:BE(e)?e.anyOf:RE(e)?e.items??[]:[]}function hF(e){return mF(e)}function gF(e,t){return gE(e)?J(e.returns,t):hO(t)}var _F=class{constructor(e){this.schema=e}Decode(e){return new vF(this.schema,e)}},vF=class{constructor(e,t){this.schema=e,this.decode=t}EncodeTransform(e,t){let n={Encode:n=>t[tE].Encode(e(n)),Decode:e=>this.decode(t[tE].Decode(e))};return{...t,[tE]:n}}EncodeSchema(e,t){let n={Decode:this.decode,Encode:e};return{...t,[tE]:n}}Encode(e){return LE(this.schema)?this.EncodeTransform(e,this.schema):this.EncodeSchema(e,this.schema)}};function yF(e){return new _F(e)}function bF(e={}){return J({[Y]:e[Y]??`Unsafe`},e)}function xF(e){return J({[Y]:`Void`,type:`void`},e)}var $=t({Any:()=>cO,Argument:()=>uO,Array:()=>lO,AsyncIterator:()=>dO,Awaited:()=>DA,BigInt:()=>tk,Boolean:()=>ek,Capitalize:()=>LN,Composite:()=>YA,Const:()=>oj,Constructor:()=>_O,ConstructorParameters:()=>sj,Date:()=>XA,Enum:()=>cj,Exclude:()=>NM,Extends:()=>EM,Extract:()=>zM,Function:()=>vO,Index:()=>Mk,InstanceType:()=>UM,Instantiate:()=>CN,Integer:()=>wN,Intersect:()=>yA,Iterator:()=>Lk,KeyOf:()=>VA,Literal:()=>$O,Lowercase:()=>RN,Mapped:()=>aA,Module:()=>cF,Never:()=>hO,Not:()=>lF,Null:()=>ZA,Number:()=>nk,Object:()=>Bk,Omit:()=>ZN,Optional:()=>lA,Parameters:()=>uF,Partial:()=>SP,Pick:()=>dP,Promise:()=>Vk,Readonly:()=>Gk,ReadonlyOptional:()=>WM,Record:()=>rN,Recursive:()=>fF,Ref:()=>bA,RegExp:()=>pF,Required:()=>MP,Rest:()=>hF,ReturnType:()=>gF,String:()=>rk,Symbol:()=>QA,TemplateLiteral:()=>pk,Transform:()=>yF,Tuple:()=>Yk,Uint8Array:()=>ej,Uncapitalize:()=>zN,Undefined:()=>$A,Union:()=>TO,Unknown:()=>tj,Unsafe:()=>bF,Uppercase:()=>BN,Void:()=>xF}),SF={additionalProperties:!1},CF=$.String({pattern:`^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`,minLength:36,maxLength:36}),wF=$.String({pattern:`^[a-z0-9][a-z0-9-]{0,31}(?![\\s\\S])`,minLength:1,maxLength:32}),TF=$.String({pattern:`^sha256:[0-9a-f]{64}$`,minLength:71,maxLength:71}),EF=$.String({pattern:`^[A-Za-z0-9_-]{43}$`,minLength:43,maxLength:43}),DF=$.String({pattern:`^dpt_[A-Za-z0-9_-]{43}$`,minLength:47,maxLength:47}),OF=`[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}`,kF=`^(?:${OF}|[A-Z2-7]{12}|[A-Z2-7]{8})(?![\\s\\S])`,AF=$.String({pattern:kF,minLength:8,maxLength:36}),jF=new RegExp(kF),MF=/^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/;function NF(e){return typeof e!=`string`||e.length>36?!1:jF.test(e)}function PF(e){if(typeof e!=`string`)return;if(MF.test(e)){let t=e.toLowerCase();return NF(t)?t:void 0}let t=e.replace(/[\s-]+/g,``).toUpperCase();if(NF(t)&&!(/[\s-]/.test(e)&&t.length!==12))return t}$.Object({type:$.Literal(`pair.request`),v:$.Literal(1),requestId:CF,code:AF,deviceUid:CF,deviceName:$.String({minLength:1,maxLength:64}),hostname:$.Optional($.String({minLength:1,maxLength:128})),platform:$.Optional($.String({minLength:1,maxLength:64})),publicKey:$.String({minLength:1,maxLength:256}),keyFingerprint:TF,clientTime:$.Integer(),hubNonce:$.Optional(EF)},SF),$.Object({type:$.Literal(`pair.device-request`),v:$.Literal(1),requestId:CF,deviceUid:CF,deviceName:$.String({minLength:1,maxLength:64}),hostname:$.Optional($.String({minLength:1,maxLength:128})),platform:$.Optional($.String({minLength:1,maxLength:64})),publicKey:$.String({minLength:1,maxLength:256}),keyFingerprint:TF,clientTime:$.Integer(),hubNonce:$.Optional(EF)},SF);var FF=$.Object({type:$.Literal(`pair.challenge`),v:$.Literal(1),enrollmentId:CF,nonce:EF,issuedAt:$.Integer(),hubId:CF,hubPublicKey:$.Optional($.String({minLength:1,maxLength:256})),hubKeyFingerprint:$.Optional(TF),hubSignature:$.Optional($.String({pattern:`^[A-Za-z0-9_-]{86}$`,minLength:86,maxLength:86}))},SF);$.Object({type:$.Literal(`pair.device-ack`),v:$.Literal(1),codeId:CF,code:AF,expiresAt:$.Integer(),hubOrigin:$.String(),hubId:CF,challenge:FF},SF),$.Object({type:$.Literal(`pair.response`),v:$.Literal(1),enrollmentId:CF,nonce:EF,signature:$.String({pattern:`^[A-Za-z0-9_-]{86}$`,minLength:86,maxLength:86})},SF),$.Object({type:$.Literal(`pair.pending`),v:$.Literal(1),enrollmentId:CF,state:$.Literal(`awaiting_approval`),expiresAt:$.Integer(),pollAfterMs:$.Integer({minimum:1})},SF),$.Object({type:$.Literal(`pair.token`),v:$.Literal(1),enrollmentId:CF,deviceUid:CF,deviceId:wF,pairingEpoch:CF,credentialId:CF,generation:$.Integer({minimum:1}),hubId:CF,hubOrigin:$.String(),hubUrl:$.String(),tunnelToken:DF,issuedAt:$.Integer(),expiresAt:$.Null(),hubKeyFingerprint:$.Optional(TF)},SF),$.Object({enrollmentId:CF,deviceUid:CF,keyFingerprint:TF,replaceKey:$.Optional($.Boolean())},SF),$.Object({type:$.Literal(`pair.revoke`),v:$.Literal(1),deviceId:wF,pairingEpoch:CF,reason:$.Union([$.Literal(`user`),$.Literal(`compromise`),$.Literal(`hub_migrated`)]),revokedAt:$.Integer()},SF);var IF=$.Object({type:$.Literal(`pair.error`),v:$.Literal(1),code:$.Union([$.Literal(`code_invalid`),$.Literal(`code_expired`),$.Literal(`code_used`),$.Literal(`code_in_use`),$.Literal(`rate_limited`),$.Literal(`signature_invalid`),$.Literal(`clock_skew`),$.Literal(`paired_elsewhere`),$.Literal(`hub_required`),$.Literal(`fingerprint_mismatch`),$.Literal(`identity_conflict`),$.Literal(`enrollment_lost`),$.Literal(`enrollment_cancelled`),$.Literal(`already_issued`),$.Literal(`challenge_expired`)]),message:$.String({maxLength:512}),retryAfterMs:$.Optional($.Integer({minimum:1}))},SF);$.Object({type:$.Literal(`pair.code`),v:$.Literal(1),codeId:CF,code:AF,expiresAt:$.Integer(),hubOrigin:$.String({maxLength:2048}),pairUrl:$.String({maxLength:4096}),offerUrl:$.Optional($.String({maxLength:2048}))},SF);var LF=$.Union([$.Literal(`open`),$.Literal(`awaiting_proof`),$.Literal(`awaiting_approval`),$.Literal(`approved`),$.Literal(`issued`),$.Literal(`connected`),$.Literal(`cancelled`),$.Literal(`expired`)]);$.Object({type:$.Literal(`pair.code-state`),v:$.Literal(1),codeId:CF,expiresAt:$.Integer(),phase:LF,enrollment:$.Optional($.Object({enrollmentId:CF,deviceUid:CF,deviceName:$.String({minLength:1,maxLength:64}),keyFingerprint:TF,proofVerified:$.Boolean(),keyChanged:$.Boolean()},SF)),deviceId:$.Optional(wF),error:$.Optional(IF)},SF);function RF(e){if(typeof e!=`string`||e.length===0||e.length>2048)return{ok:!1,error:`origin: empty or too long`};if(/\s|\n|\r|\t/.test(e))return{ok:!1,error:`origin: whitespace not allowed`};let t;try{t=new URL(e)}catch{return{ok:!1,error:`origin: not a valid URL`}}return t.protocol!==`https:`&&!(t.protocol===`http:`&&/^(127\.0\.0\.1|\[::1\]|localhost)$/.test(t.hostname))?{ok:!1,error:`origin: HTTPS origin required`}:t.username||t.password?{ok:!1,error:`origin: userinfo not allowed`}:t.search||t.hash?{ok:!1,error:`origin: query/fragment not allowed`}:t.pathname!==`/`&&t.pathname!==``?{ok:!1,error:`origin: base path not allowed`}:{ok:!0,origin:t.origin,tunnelUrl:`${t.origin}/api/tunnel`}}function zF(e){if(e!==``&&/^[A-Za-z0-9_-]+$/.test(e))try{let t=atob(e.replace(/-/g,`+`).replace(/_/g,`/`)),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}catch{return}}var BF=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,VF=RegExp(`^${OF}$`),HF=/^sha256:[0-9a-f]{64}$/;function UF(e){let t=zF(e);if(!t||t.length>1024)return;let n;try{n=JSON.parse(new TextDecoder().decode(t))}catch{return}if(!n||typeof n!=`object`||Array.isArray(n))return;let r=n;if(r.v!==2&&r.v!==3)return;let i=r.v===3?6:5;if(Object.keys(r).length!==i||typeof r.hub!=`string`)return;let a=RF(r.hub);if(a.ok&&a.origin===r.hub&&typeof r.id==`string`&&BF.test(r.id)&&typeof r.code==`string`&&VF.test(r.code)&&typeof r.exp==`number`&&Number.isSafeInteger(r.exp))return r.v===3?typeof r.kfp!=`string`||!HF.test(r.kfp)?void 0:{v:3,hub:r.hub,id:r.id,code:r.code,exp:r.exp,kfp:r.kfp}:{v:2,hub:r.hub,id:r.id,code:r.code,exp:r.exp}}function WF(e,t=Date.now()){let n=UF(e);if(n&&!(n.exp<t-3e4)&&!(n.exp>t+6e5))return n}function GF(e,t=Date.now()){let n;try{n=new URL(e)}catch{return}if(!/^\/pair\/?$/.test(n.pathname)||n.username||n.password||n.search||!n.hash.startsWith(`#offer=`))return;let r=WF(n.hash.slice(7),t);if(r&&r.hub===n.origin)return{offer:r,rest:`${n.origin}/pair`}}function KF(e){if(!/^\/pair\/?$/.test(e.pathname))return;if(e.hash.startsWith(`#offer=`)){let t=GF(e.href);if(t)return{code:t.offer.code,origin:e.origin,offerFragment:e.hash.slice(1)};let n=WF(e.hash.slice(7));return n&&n.hub!==e.origin?{error:`This pairing link does not belong to this hub. Open the original hub link instead.`}:{error:`Invalid pairing link. Use a complete link from the hub wizard.`}}let t=e.searchParams;if(!t.has(`code`)&&!t.has(`origin`)&&!t.has(`v`))return;let n=t.get(`code`),r=n===null?void 0:PF(n);if(e.username||e.password||e.hash||t.getAll(`code`).length!==1||!r||t.getAll(`v`).length!==1||t.get(`v`)!==`1`)return{error:`Invalid pairing link. Use a complete version 1 link from the hub wizard.`};if(t.has(`origin`))try{let n=new URL(t.get(`origin`));if(t.getAll(`origin`).length!==1||n.origin!==e.origin||n.pathname!==`/`||n.username||n.password||n.search||n.hash)throw Error(`origin mismatch`)}catch{return{error:`This pairing link does not belong to this hub. Open the original hub link instead.`}}return{code:r,origin:e.origin}}var qF=e=>/^\/pair\/?$/.test(e.pathname)?`/`:void 0,JF=e=>/^\/pair\/?$/.test(e.pathname)&&KF(e)===void 0?`/`:void 0,YF=4e3;async function XF(e){if(!e.needsCancel)return{closed:!0,confirmed:!0};let t,n=await Promise.race([e.cancel().catch(()=>`failed`),new Promise(n=>t=setTimeout(()=>n(`failed`),e.timeoutMs))]);return clearTimeout(t),{closed:n!==`issued`,confirmed:n===`cancelled`}}var ZF={class:`modal pair-wizard`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`pair-title`},QF={key:1,class:`pair-pending`,"aria-label":`Machines waiting for approval`},$F={class:`who`},eI={key:0,class:`muted`},tI={key:1,class:`muted`},nI={class:`fp`},rI={class:`row`},iI={class:`phase`},aI=[`onClick`],oI={key:2,class:`hint`},sI={class:`pair-steps`,"aria-label":`Pairing progress`},cI={class:`pair-grid`},lI={class:`pair-code-box`},uI={class:`pair-code`,"aria-label":`Pairing code`},dI={class:`pair-copy-actions`},fI=[`innerHTML`],pI={class:`pair-side`},mI={key:0,class:`hint`},hI={class:`pair-fingerprint`},gI={class:`fp`},_I={class:`pair-confirm`},vI={key:0,class:`pair-confirm warn`},yI=[`disabled`],bI=[`disabled`],xI={class:`hint`},SI=[`disabled`],CI={key:5,class:`error`,role:`alert`},wI={key:4},TI={class:`error`,role:`alert`},EI=kr({__name:`PairDeviceWizard`,props:{handoff:{}},emits:[`close`],setup(e,{expose:t,emit:n}){let r=n,i=e,a=O(`boot`),o=O(),s=O(),c=O(),l=O(``),u=O(!1),d=O(!1),f=O(!1),p=O(!1),m=O(!1),h=O(!1),g=O(),_=O([]),v=B(()=>{let e=s.value?.code??``;return!NF(e)||e.includes(`-`)?e:(e.match(/.{4}/g)??[]).join(`-`)}),y=B(()=>s.value?ry(s.value):``),b=B(()=>y.value?fT(y.value,148):``),ee=B(()=>c.value?.enrollment?.keyFingerprint??``),x=B(()=>c.value?.deviceId??``);A(x,e=>{g.value?.(),e&&(g.value=A(()=>pu.devices.value.find(t=>t.id===e)?.status,e=>{e===`online`&&(G(`Device paired and online.`),g.value?.(),g.value=void 0)},{immediate:!0}))});async function S(e){a.value=`boot`,l.value=``,f.value=!1,p.value=!1,c.value=void 0,s.value=void 0,o.value?.close();let t=oy();o.value=t;try{let n=e?await iy.resolveCode(e):await iy.createCode();if(t.closed()){await iy.cancel(n.codeId).catch(()=>{G(`The late pairing code could not be cancelled. Check device credentials before retrying.`)});return}if(s.value=n,a.value=`code`,e){let e=qF(new URL(window.location.href));e&&window.history.replaceState(window.history.state,``,e)}ly(t,n.codeId,{intervalMs:1e3,onState:e=>{c.value=e,e.phase===`awaiting_proof`?a.value=`proof`:e.phase===`awaiting_approval`||e.phase===`approved`?a.value=`approve`:e.phase===`issued`||e.phase===`connected`?a.value=`issued`:e.phase===`cancelled`?a.value=`cancelled`:e.phase===`expired`&&(a.value=`expired`)}}).catch(e=>{t.closed()||(l.value=e instanceof Error?e.message:String(e),a.value=`expired`)})}catch(e){l.value=e instanceof Error?e.message:String(e),a.value=`expired`}}async function te(){let e=c.value,t=o.value;if(e?.enrollment&&t&&!u.value){u.value=!0,l.value=``;try{let t=await iy.approve(s.value.codeId,{enrollmentId:e.enrollment.enrollmentId,deviceUid:e.enrollment.deviceUid,keyFingerprint:e.enrollment.keyFingerprint,...p.value?{replaceKey:!0}:{}});c.value=t,(t.phase===`issued`||t.phase===`connected`)&&(a.value=`issued`)}catch(e){l.value=e instanceof Error?e.message:String(e)}finally{u.value=!1}}}async function ne(e){if(!s.value)return`cancelled`;try{let t=await iy.cancel(s.value.codeId,void 0,e);return c.value=t,o.value&&(o.value.state=t),a.value=t.phase===`expired`?`expired`:`cancelled`,o.value?.close(),`cancelled`}catch(e){if(e instanceof Bl&&e.status===409&&String(e.code)===`already_issued`){let e=await iy.codeState(s.value.codeId).catch(()=>void 0);return e&&(c.value=e,o.value&&(o.value.state=e)),a.value=`issued`,l.value=`Credential already issued. Closing does not revoke it; choose Revoke explicitly if needed.`,`issued`}return l.value=e instanceof Error?e.message:String(e),`failed`}}let C=()=>ne(!1),re=()=>[`issued`,`connected`,`cancelled`,`expired`].includes(c.value?.phase??``);async function ie(){let e=x.value;if(e){u.value=!0;try{await iy.revoke(e,`user`),G(`Issued credential revoked.`),r(`close`)}catch(e){l.value=e instanceof Error?e.message:String(e)}finally{u.value=!1}}}async function ae(){if(s.value)try{await navigator.clipboard.writeText(s.value.code),m.value=!0,setTimeout(()=>m.value=!1,1500)}catch{l.value=`Clipboard unavailable; copy the code manually.`}}async function oe(){if(s.value)try{await navigator.clipboard.writeText(s.value.offerUrl??s.value.pairUrl),h.value=!0,setTimeout(()=>h.value=!1,1500)}catch{l.value=`Clipboard unavailable; copy the link manually.`}}async function se(){if(!d.value){d.value=!0,u.value=!0;try{let e=await XF({needsCancel:!!s.value&&!re(),cancel:C,timeoutMs:YF});if(!e.closed)return;o.value?.close(),g.value?.(),e.confirmed||G(`Pairing cancellation was not confirmed. The code expires on its own; check device credentials before retrying.`),r(`close`)}finally{d.value=!1,u.value=!1}}}t({close:se});let ce;async function le(){try{_.value=(await iy.pending()).codes}catch{}}async function ue(e){s.value=void 0,c.value=void 0,l.value=``;let t=oy();o.value=t,a.value=e.phase===`approved_ready`?`approve`:`proof`,ly(t,e.codeId,{intervalMs:1e3,onState:e=>{c.value=e,e.phase===`awaiting_proof`?a.value=`proof`:e.phase===`awaiting_approval`||e.phase===`approved`?a.value=`approve`:e.phase===`issued`||e.phase===`connected`?a.value=`issued`:e.phase===`cancelled`?a.value=`cancelled`:e.phase===`expired`&&(a.value=`expired`)}}).catch(e=>{l.value=e instanceof Error?e.message:String(e)})}return Wr(()=>{if(le(),ce=setInterval(()=>void le(),3e3),i.handoff&&`error`in i.handoff){l.value=i.handoff.error,a.value=`expired`;return}S(i.handoff?.code)}),qr(()=>{clearInterval(ce);let e=o.value;e&&!e.closed()&&s.value&&!re()&&ne(!0).then(e=>{e!==`cancelled`&&G(`Pairing cancellation was not confirmed. Check device credentials before retrying.`)}),e?.close(),g.value?.()}),(e,t)=>(N(),P(`div`,{class:`modal-backdrop`,onClick:Ms(se,[`self`])},[I(`div`,ZF,[I(`header`,null,[t[5]||=I(`h2`,{id:`pair-title`},`Pair a device`,-1),I(`button`,{type:`button`,class:`icon-button`,"aria-label":`Close dialog`,onClick:se},[L(k(dl),{size:18})])]),i.handoff&&`offerFragment`in i.handoff&&i.handoff.offerFragment?(N(),F(yT,{key:0,"offer-fragment":i.handoff.offerFragment},null,8,[`offer-fragment`])):z(``,!0),_.value.length?(N(),P(`section`,QF,[t[6]||=I(`h3`,null,`Machines waiting for you`,-1),I(`ul`,null,[(N(!0),P(M,null,j(_.value,e=>(N(),P(`li`,{key:e.codeId},[I(`div`,$F,[I(`strong`,null,E(e.deviceName??`unnamed device`),1),e.hostname?(N(),P(`span`,eI,E(e.hostname),1)):z(``,!0),e.platform?(N(),P(`span`,tI,E(e.platform),1)):z(``,!0)]),I(`div`,nI,E(e.keyFingerprint),1),I(`div`,rI,[I(`span`,iI,E(e.phase.replaceAll(`_`,` `)),1),I(`button`,{type:`button`,class:`small`,onClick:t=>ue(e)},`Review`,8,aI)])]))),128))]),t[7]||=I(`p`,{class:`hint`},` Compare each fingerprint with the machine's own terminal before approving. Codes are minted by the hub — nothing has to be copied to the machine. `,-1)])):z(``,!0),a.value===`boot`?(N(),P(`p`,oI,`Minting a pairing code…`)):s.value?(N(),P(M,{key:3},[I(`ol`,sI,[t[8]||=I(`li`,{class:T({on:!0})},`Code`,-1),I(`li`,{class:T({on:[`proof`,`approve`,`issued`].includes(a.value)})},`Proof`,2),I(`li`,{class:T({on:[`approve`,`issued`].includes(a.value)})},`Fingerprint`,2),I(`li`,{class:T({on:a.value===`issued`})},`Online`,2)]),I(`div`,cI,[I(`div`,lI,[I(`div`,uI,E(v.value),1),I(`div`,dI,[I(`button`,{type:`button`,class:`small`,onClick:ae},[L(k(cc),{size:14}),R(` `+E(m.value?`Copied`:`Copy code`),1)]),I(`button`,{type:`button`,class:`small`,onClick:oe,title:`Self-contained link: hub, code and expiry all in the fragment — it never reaches server logs`},[L(k(cc),{size:14}),R(` `+E(h.value?`Copied link`:`Copy link`),1)])]),t[9]||=I(`p`,{class:`hint`},` Run the device pairing command and scan, or enter this code on the device. Expires in 5 minutes. `,-1),I(`div`,{class:`pair-qr`,"aria-label":`Pairing QR code`,title:`Same offer link as Copy link: hub, code and expiry all in the #offer= fragment — it never reaches server logs`,innerHTML:b.value},null,8,fI)]),I(`div`,pI,[a.value===`code`||a.value===`proof`?(N(),P(`p`,mI,[L(k(Yc),{size:14,class:`spin`}),t[10]||=R(` Waiting for the device to submit its signing proof… `,-1)])):a.value===`approve`?(N(),P(M,{key:1},[I(`div`,hI,[t[11]||=I(`h3`,null,`Device key fingerprint`,-1),I(`code`,gI,E(ee.value),1),t[12]||=I(`p`,{class:`hint`},` Compare ALL 64 hex characters with the fingerprint shown on the device screen. `,-1)]),I(`label`,_I,[Wn(I(`input`,{"onUpdate:modelValue":t[0]||=e=>f.value=e,type:`checkbox`},null,512),[[Cs,f.value]]),t[13]||=R(` The fingerprint matches the device display exactly `,-1)]),c.value?.enrollment?.keyChanged?(N(),P(`label`,vI,[Wn(I(`input`,{"onUpdate:modelValue":t[1]||=e=>p.value=e,type:`checkbox`},null,512),[[Cs,p.value]]),L(k(Qc),{size:14}),t[14]||=R(` Device is already paired with a DIFFERENT key — replace the stored key (replaceKey) `,-1)])):z(``,!0),I(`button`,{type:`button`,class:`primary`,disabled:!f.value||u.value||c.value?.enrollment?.keyChanged===!0&&!p.value,onClick:te},` Approve device `,8,yI),I(`button`,{type:`button`,class:`small`,disabled:u.value,onClick:C},` Cancel pairing `,8,bI)],64)):a.value===`issued`?(N(),P(M,{key:2},[I(`p`,xI,[L(k(ac),{size:14}),t[15]||=R(` Credential issued. The device is connecting through the tunnel — you will get a toast once the monitor probe reports it online. `,-1)]),I(`button`,{type:`button`,class:`small`,onClick:se},`Close`),I(`button`,{type:`button`,class:`small danger`,disabled:!x.value||u.value,title:`Mistaken approval? Revoke the credential now.`,onClick:ie},` Revoke this credential `,8,SI)],64)):a.value===`cancelled`?(N(),P(M,{key:3},[t[16]||=I(`p`,{class:`hint`},`Pairing was cancelled (or the signature failed too many times).`,-1),I(`button`,{type:`button`,class:`small`,onClick:t[2]||=e=>S()},`Start over`)],64)):a.value===`expired`?(N(),P(M,{key:4},[t[17]||=I(`p`,{class:`hint`},`The pairing code expired.`,-1),I(`button`,{type:`button`,class:`small`,onClick:t[3]||=e=>S()},`New code`)],64)):z(``,!0),l.value?(N(),P(`p`,CI,E(l.value),1)):z(``,!0)])])],64)):(N(),P(`div`,wI,[I(`p`,TI,E(l.value||`This pairing link is unavailable.`),1),I(`button`,{type:`button`,class:`small`,onClick:t[4]||=e=>S()},`New code`)]))])]))}}),DI={class:`modal`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`device-credentials-title`},OI={class:`hint`},kI={key:1,class:`hint`},AI=kr({__name:`DeviceCredentialsDialog`,props:{deviceId:{}},emits:[`close`],setup(e,{emit:t}){let n=e,r=t,i=B(()=>pu.devices.value.find(e=>e.id===n.deviceId));return(e,t)=>(N(),P(`div`,{class:`modal-backdrop`,onClick:t[2]||=Ms(e=>r(`close`),[`self`])},[I(`section`,DI,[I(`header`,null,[t[3]||=I(`h2`,{id:`device-credentials-title`},`Device credentials`,-1),I(`button`,{class:`icon-button`,"aria-label":`Close device credentials`,onClick:t[0]||=e=>r(`close`)},[L(k(dl),{size:18})])]),i.value?(N(),P(M,{key:0},[I(`p`,null,[R(E(i.value.name)+` `,1),I(`code`,null,E(i.value.id),1)]),I(`p`,OI,E(i.value.status)+` · tunnel `+E(i.value.tunnel?.state??`disconnected`)+` · `+E(i.value.tunnel?.readerCount??0)+` readers `,1),L(vy,{device:i.value},null,8,[`device`])],64)):(N(),P(`p`,kI,`This device is no longer in the registry.`)),I(`footer`,null,[I(`button`,{class:`secondary`,onClick:t[1]||=e=>r(`close`)},`Close`)])])]))}}),jI={id:`prompt-title`},MI=[`disabled`],NI={key:0,class:`hint`},PI={key:1},FI={key:0,class:`muted`},II=[`placeholder`,`disabled`],LI=[`required`,`placeholder`,`aria-label`,`disabled`],RI={key:2,class:`message-error`,role:`alert`},zI=[`disabled`],BI=[`disabled`],VI=kr({__name:`PromptDialog`,props:{dialog:{}},emits:[`close`],setup(e,{emit:t}){let n=e,r=t,i=O(n.dialog.value??``),a=O(!1),o=O(``),s=O(),c=!!n.dialog.label;async function l(){if(!a.value&&(!c||n.dialog.optional||i.value.trim())){a.value=!0,o.value=``;try{await n.dialog.run(i.value.trim()),r(`close`)}catch(e){o.value=tu(e)}finally{a.value=!1}}}return Wr(()=>void jn(()=>(s.value?.focus(),s.value?.select()))),(t,n)=>(N(),P(`div`,{class:`modal-backdrop`,onClick:n[4]||=Ms(e=>!a.value&&r(`close`),[`self`])},[I(`form`,{class:`modal`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`prompt-title`,onSubmit:Ms(l,[`prevent`])},[I(`header`,null,[I(`h2`,jI,E(e.dialog.title),1),I(`button`,{type:`button`,class:`icon-button`,"aria-label":`Close dialog`,disabled:a.value,onClick:n[0]||=e=>r(`close`)},[L(k(dl),{size:18})],8,MI)]),e.dialog.hint?(N(),P(`p`,NI,E(e.dialog.hint),1)):z(``,!0),c?(N(),P(`label`,PI,[R(E(e.dialog.label)+` `,1),e.dialog.optional?(N(),P(`span`,FI,`(optional)`)):z(``,!0),e.dialog.multiline?Wn((N(),P(`textarea`,{key:1,ref_key:`input`,ref:s,"onUpdate:modelValue":n[1]||=e=>i.value=e,rows:`4`,placeholder:e.dialog.placeholder,disabled:a.value},null,8,II)),[[Ss,i.value]]):Wn((N(),P(`input`,{key:2,ref_key:`input`,ref:s,"onUpdate:modelValue":n[2]||=e=>i.value=e,maxlength:`100`,required:!e.dialog.optional,placeholder:e.dialog.placeholder,"aria-label":e.dialog.label,disabled:a.value},null,8,LI)),[[Ss,i.value]])])):z(``,!0),o.value?(N(),P(`p`,RI,E(o.value),1)):z(``,!0),I(`footer`,null,[I(`button`,{type:`button`,class:`secondary`,disabled:a.value,onClick:n[3]||=e=>r(`close`)},` Cancel `,8,zI),I(`button`,{class:T([`primary`,{danger:e.dialog.danger}]),disabled:a.value||c&&!e.dialog.optional&&!i.value.trim()},E(a.value?`Working…`:e.dialog.submit),11,BI)])],32)]))}}),HI={class:`modal model-modal`},UI={class:`eyebrow`},WI={class:`model-list`},GI=[`onClick`],KI=[`src`],qI={class:`hint`},JI=kr({__name:`ModelPicker`,emits:[`close`],setup(e,{emit:t}){let n=t,r=O(``),i=B(()=>Iu.value.filter(e=>`${e.name} ${e.id} ${e.tier}`.toLowerCase().includes(r.value.toLowerCase()))),a=e=>e.id===Lu.value.agent.model?.modelId&&e.provider===Lu.value.agent.model?.provider;async function o(e){await Zu(()=>Du.value.configure({model:{provider:e.provider,modelId:e.id}}))&&(await Ku(),G(`Model saved. Used on the next turn.`),n(`close`))}return(e,t)=>(N(),P(`div`,{class:`modal-backdrop`,onClick:t[2]||=Ms(e=>n(`close`),[`self`])},[I(`section`,HI,[I(`header`,null,[I(`div`,null,[I(`span`,UI,`PER AGENT · `+E(k(bu)?.id),1),t[3]||=I(`h2`,null,`Choose a model`,-1)]),I(`button`,{class:`icon-button`,"aria-label":`Close model picker`,onClick:t[0]||=e=>n(`close`)},[L(k(dl),{size:18})])]),Wn(I(`input`,{"onUpdate:modelValue":t[1]||=e=>r.value=e,placeholder:`Search models or tiers…`,"aria-label":`Search models`},null,512),[[Ss,r.value]]),I(`div`,WI,[(N(!0),P(M,null,j(i.value,e=>(N(),P(`button`,{key:`${e.provider}/${e.id}`,class:T({selected:a(e)}),onClick:t=>o(e)},[I(`img`,{src:k(td)(e.id),alt:``},null,8,KI),I(`div`,null,[I(`strong`,null,E(e.name),1),I(`small`,null,E(e.tier)+` / `+E(e.provider)+` / `+E(k($u)(e.contextWindow))+` context`,1)]),a(e)?(N(),F(k(nc),{key:0,size:18})):z(``,!0)],10,GI))),128))]),I(`p`,qI,`Models available on `+E(k(bu)?.id)+`. Provider keys stay on the device.`,1)])]))}}),YI={class:`dialog`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`help-title`},XI={class:`dialog-head`},ZI={class:`dialog-body`},QI={class:`n`},$I={class:`body`},eL={class:`help-callout`},tL={class:`dialog-foot`},nL={class:`right`},rL=kr({__name:`HelpDialog`,setup(e){let t=[{title:`Pick a device, start a session`,body:`Every device in the tree runs dpi-backend. A session gets its own SQLite database on that device, in the directory you choose.`},{title:`Send work, then close the browser`,body:`The device owns the run. Reopening restores committed messages, state and live progress.`},{title:`Change state and fork`,body:`Edit App State by hand or through the agent. Every session and fork on a device shares it.`},{title:`Interrupt deliberately`,body:`Interrupt stops foreground work and owned subagents. Background jobs continue. Stop all includes them.`},{title:`Explore the boundaries`,body:`Queue a follow-up, steer after tools, wait for approval, compact context, reset or inspect raw state.`},{title:`Restart a device`,body:`Its tree dims and shows the restart command. Checkpointed jobs recover on boot. Replay-safe tools may rerun. Other interrupted tools return an error.`}];return(e,n)=>(N(),P(`div`,{class:`scrim`,onClick:n[2]||=Ms(e=>k(W).dialog=void 0,[`self`])},[I(`section`,YI,[I(`div`,XI,[n[3]||=I(`div`,null,[I(`span`,{class:`dialog-eyebrow`},`LEARN BY DOING`),I(`h3`,{id:`help-title`},`What makes this durable?`)],-1),I(`button`,{class:`icon-button`,"aria-label":`Close help`,onClick:n[0]||=e=>k(W).dialog=void 0},[L(k(dl),{size:18})])]),I(`div`,ZI,[(N(),P(M,null,j(t,(e,t)=>I(`div`,{key:e.title,class:`help-step`},[I(`span`,QI,E(String(t+1).padStart(2,`0`)),1),I(`div`,null,[I(`b`,null,E(e.title),1),I(`div`,$I,E(e.body),1)])])),64)),I(`div`,eL,[L(k(Ec),{size:18}),n[4]||=I(`span`,null,`Durable does not mean exactly-once external effects. Checkpoints protect progress. Tools still need their own idempotency.`,-1)])]),I(`div`,tL,[I(`div`,nL,[I(`button`,{class:`secondary`,type:`button`,onClick:n[1]||=e=>k(W).dialog=void 0},`Close`)])])])]))}}),iL=Gt({needed:!1,busy:!1,error:``}),aL=new Set,oL=e=>{let t=[...aL];aL=new Set;for(let n of t)n(e)},sL=()=>new Promise(e=>aL.add(e));async function cL(e){if(iL.busy||!e)return!1;iL.busy=!0,iL.error=``;try{let t=await fetch(`/api/session`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({token:e})});return await t.text().catch(()=>``),t.ok?(iL.needed=!1,oL(!0),!0):(iL.error=t.status===401?`That token was not accepted.`:t.status===429?`Too many attempts. Wait a minute and try again.`:`Login failed (${t.status}).`,!1)}catch{return iL.error=`Cannot reach the hub.`,!1}finally{iL.busy=!1}}var lL=e=>{try{return new URL(e,location.href).pathname===`/api/session`}catch{return e===`/api/session`}};function uL(e){return(async(t,n)=>{let r=()=>e(t,n),i=await r();if(i.status!==401||lL(typeof t==`string`?t:t instanceof URL?t.href:t.url)||n?.body instanceof ReadableStream)return i;iL.needed=!0;let a=await i.text().catch(()=>``);return await sL()?r():new Response(a,{status:i.status,headers:i.headers})})}function dL(){typeof window>`u`||window.__adminFetch||(window.__adminFetch=!0,window.fetch=uL(window.fetch.bind(window)))}var fL={class:`login-veil`,"data-testid":`login-card`},pL=[`disabled`],mL={key:0,class:`message-error`,role:`alert`},hL=[`disabled`],gL=kr({__name:`LoginCard`,setup(e){let t=O(``),n=O();async function r(){if(iL.busy||!t.value.trim())return;let e=await cL(t.value.trim());t.value=``,e&&n.value?.blur()}return Wr(()=>void jn(()=>n.value?.focus())),(e,i)=>(N(),P(`div`,fL,[I(`form`,{class:`modal login-card`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`login-title`,onSubmit:Ms(r,[`prevent`])},[i[2]||=I(`header`,null,[I(`h2`,{id:`login-title`},`Admin token`)],-1),i[3]||=I(`p`,{class:`hint`},[R(` This hub is locked. Sign in with the token from its `),I(`code`,null,`admin.token`),R(` file. `)],-1),i[4]||=I(`label`,{for:`admin-token`},`Admin token`,-1),Wn(I(`input`,{id:`admin-token`,ref_key:`input`,ref:n,"onUpdate:modelValue":i[0]||=e=>t.value=e,type:`password`,name:`admin-token`,autocomplete:`off`,spellcheck:`false`,placeholder:`adm_…`,"aria-label":`Admin token`,disabled:k(iL).busy,onKeydown:i[1]||=Ps(e=>k(iL).error=``,[`esc`])},null,40,pL),[[Ss,t.value]]),k(iL).error?(N(),P(`p`,mL,E(k(iL).error),1)):z(``,!0),I(`footer`,null,[I(`button`,{class:`primary`,type:`submit`,disabled:k(iL).busy||!t.value.trim()},E(k(iL).busy?`Checking…`:`Sign in`),9,hL)])],32)]))}}),_L={key:0,class:`toast`,role:`status`},vL=kr({__name:`Toast`,setup(e){return(e,t)=>(N(),F(Co,{name:`toast`},{default:Un(()=>[k(W).toast?(N(),P(`div`,_L,[L(k(nc),{size:18}),R(E(k(W).toast),1)])):z(``,!0)]),_:1}))}}),yL={class:`shell`,"data-testid":`app-shell`},bL={key:0,class:`error-banner`,role:`alert`},xL={key:4,class:`welcome`,"data-testid":`welcome-empty`},SL=[`disabled`],CL={class:`welcome-features`},wL={class:`modal path-modal`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`path-title`},TL={class:`full-directory`},EL=kr({__name:`App`,setup(e){let t=()=>pu.devices.value.filter(e=>e.status===`online`).length,n=O();function r(){W.dialog={kind:`new-session`,deviceId:U.value?.deviceId}}function i(e){let t=W.dialog?void 0:md(e);if(t)return e.preventDefault(),t===`tree`?ud():dd();if(e.key===`Escape`){if(W.dialog){W.dialog.kind===`pair`?n.value?.close():W.dialog=void 0;return}!e.repeat&&!e.isComposing&&Vu.value&&(e.preventDefault(),id()),W.drawer=!1,W.inspectorOverlay=!1}}function a(e){let t=e.clientX,n=gu.value,r=e=>gu.value=Math.max(220,Math.min(560,n+e.clientX-t)),i=()=>{window.removeEventListener(`pointermove`,r),window.removeEventListener(`pointerup`,i)};window.addEventListener(`pointermove`,r),window.addEventListener(`pointerup`,i)}return Wr(()=>qd()),Wr(()=>{document.addEventListener(`keydown`,i),Pu()}),qr(()=>{du.stop(),document.removeEventListener(`keydown`,i)}),(e,i)=>(N(),P(`div`,yL,[L(kd,{onNewSession:r}),k(W).error?(N(),P(`div`,bL,[L(k(Ec),{size:18}),I(`span`,null,E(k(W).error),1),I(`button`,{class:`icon-button`,"aria-label":`Dismiss error`,onClick:i[0]||=e=>k(W).error=``},`×`)])):z(``,!0),I(`main`,{class:`net-workspace`,style:_e({"--tree-w":`${k(gu)}px`})},[L(kf),k(_u).tree?(N(),P(`div`,{key:0,class:`tree-resizer`,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize network tree`,onPointerdown:Ms(a,[`prevent`])},null,32)):z(``,!0),k(W).drawer?(N(),P(`div`,{key:1,class:`tree-backdrop`,onClick:i[1]||=e=>k(W).drawer=!1})):z(``,!0),k(U)&&k(bu)&&k(xu)?(N(),P(M,{key:2},[L(uw),k(W).inspectorOverlay?(N(),P(`div`,{key:0,class:`inspector-backdrop`,onClick:i[2]||=e=>k(ld)()})):z(``,!0),(N(),F(kv,{key:`${k(U).deviceId}/${k(U).sessionId}`}))],64)):k(U)&&k(bu)?(N(),F(bw,{key:3,device:k(bu)},null,8,[`device`])):(N(),P(`section`,xL,[i[14]||=I(`img`,{class:`welcome-symbol`,src:`/icons/durable-pi.svg`,alt:`Durable Pi`},null,-1),i[15]||=I(`span`,{class:`eyebrow`},`THE DURABLE AGENT NETWORK`,-1),i[16]||=I(`h1`,null,[R(`Close the tab.`),I(`br`),R(`The work continues.`)],-1),i[17]||=I(`p`,null,`Agents run on your devices. This page is only a window into them.`,-1),I(`button`,{class:`primary`,disabled:!t(),onClick:r},[L(k(qc),{size:18}),R(E(k(pu).devices.value.length?`Create a session`:`Add a device to dpi-network.yaml`),1)],8,SL),I(`div`,CL,[I(`span`,null,[L(k(fc),{size:18}),i[11]||=R(`SQLite on each device`,-1)]),I(`span`,null,[L(k(xc),{size:18}),i[12]||=R(`Branch any agent`,-1)]),I(`span`,null,[L(k(Ws),{size:18}),i[13]||=R(`Watch from anywhere`,-1)])])]))],4),L(Md),k(W).dialog?.kind===`pair`?(N(),F(EI,{key:1,ref_key:`pairWizard`,ref:n,handoff:k(W).dialog.handoff,onClose:i[3]||=e=>k(W).dialog=void 0},null,8,[`handoff`])):z(``,!0),k(W).dialog?.kind===`credentials`?(N(),F(AI,{key:2,"device-id":k(W).dialog.deviceId,onClose:i[4]||=e=>k(W).dialog=void 0},null,8,[`device-id`])):z(``,!0),k(W).dialog?.kind===`new-session`?(N(),F(Bw,{key:3,"device-id":k(W).dialog.deviceId,onClose:i[5]||=e=>k(W).dialog=void 0},null,8,[`device-id`])):k(W).dialog?.kind===`prompt`?(N(),F(VI,{key:4,dialog:k(W).dialog,onClose:i[6]||=e=>k(W).dialog=void 0},null,8,[`dialog`])):k(W).dialog?.kind===`models`?(N(),F(JI,{key:5,onClose:i[7]||=e=>k(W).dialog=void 0})):k(W).dialog?.kind===`path`?(N(),P(`div`,{key:6,class:`modal-backdrop`,onClick:i[10]||=Ms(e=>k(W).dialog=void 0,[`self`])},[I(`section`,wL,[I(`header`,null,[i[18]||=I(`h2`,{id:`path-title`},`Working directory`,-1),I(`button`,{class:`icon-button`,"aria-label":`Close working directory`,onClick:i[8]||=e=>k(W).dialog=void 0},[L(k(dl),{size:18})])]),I(`code`,TL,E(k(W).dialog.path),1),I(`footer`,null,[I(`button`,{class:`secondary`,onClick:i[9]||=e=>k(W).dialog=void 0},`Close`)])])])):k(W).dialog?.kind===`help`?(N(),F(rL,{key:7})):z(``,!0),k(iL).needed?(N(),F(gL,{key:8})):z(``,!0),L(vL)]))}});dL();var DL=new URL(window.location.href);if(/^\/pair\/?$/.test(DL.pathname)){let e=KF(DL);e?(DL.search=``,DL.hash=``,window.history.replaceState(window.history.state,``,DL),W.dialog={kind:`pair`,handoff:e}):window.history.replaceState(window.history.state,``,JF(DL))}Rs(EL).mount(`#app`);
|