agent-comms 3.30.0 → 3.32.0

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.
Files changed (38) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +1 -1
  4. package/dist/bridges/user/web/dist/bundle.js +12 -12
  5. package/dist/bridges/user/web/dist/mesh-worker.js +1 -1
  6. package/dist/bridges/user/web/dist/sw.js +1 -1
  7. package/dist/bridges/user/web/frontend/components/App.d.ts +3 -2
  8. package/dist/bridges/user/web/frontend/components/App.d.ts.map +1 -1
  9. package/dist/bridges/user/web/frontend/components/App.js +1 -1
  10. package/dist/bridges/user/web/frontend/components/App.js.map +1 -1
  11. package/dist/bridges/user/web/frontend/components/MeshPanel.d.ts +5 -4
  12. package/dist/bridges/user/web/frontend/components/MeshPanel.d.ts.map +1 -1
  13. package/dist/bridges/user/web/frontend/components/MeshPanel.js +12 -20
  14. package/dist/bridges/user/web/frontend/components/MeshPanel.js.map +1 -1
  15. package/dist/bridges/user/web/frontend/components/MeshTraceView.d.ts.map +1 -1
  16. package/dist/bridges/user/web/frontend/components/MeshTraceView.js.map +1 -1
  17. package/dist/bridges/user/web/frontend/main.js +37 -44
  18. package/dist/bridges/user/web/frontend/main.js.map +1 -1
  19. package/dist/bridges/user/web/frontend/mesh-client.d.ts +25 -1
  20. package/dist/bridges/user/web/frontend/mesh-client.d.ts.map +1 -1
  21. package/dist/bridges/user/web/frontend/mesh-client.js +20 -0
  22. package/dist/bridges/user/web/frontend/mesh-client.js.map +1 -1
  23. package/dist/bridges/user/web/frontend/mesh-worker.d.ts.map +1 -1
  24. package/dist/bridges/user/web/frontend/mesh-worker.js +9 -0
  25. package/dist/bridges/user/web/frontend/mesh-worker.js.map +1 -1
  26. package/dist/bridges/user/web/frontend/state.d.ts +1 -4
  27. package/dist/bridges/user/web/frontend/state.d.ts.map +1 -1
  28. package/dist/bridges/user/web/frontend/state.js +0 -5
  29. package/dist/bridges/user/web/frontend/state.js.map +1 -1
  30. package/dist/bridges/user/web/frontend/types.d.ts +8 -42
  31. package/dist/bridges/user/web/frontend/types.d.ts.map +1 -1
  32. package/dist/bridges/user/web/frontend/types.js +1 -2
  33. package/dist/bridges/user/web/frontend/types.js.map +1 -1
  34. package/package.json +3 -1
  35. package/dist/bridges/user/web/frontend/api.d.ts +0 -15
  36. package/dist/bridges/user/web/frontend/api.d.ts.map +0 -1
  37. package/dist/bridges/user/web/frontend/api.js +0 -113
  38. package/dist/bridges/user/web/frontend/api.js.map +0 -1
@@ -61,4 +61,4 @@ var AgentCommsMeshWorker=(function(e){Object.defineProperty(e,Symbol.toStringTag
61
61
 
62
62
  `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=fr,s=!er.jitless,c=s&&pr.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?ka([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function Ma(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Dr(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>P(e,r,k())))}),t)}var Na=O(`$ZodUnion`,(e,t)=>{I.init(e,t),A(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),A(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),A(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),A(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>ar(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>Ma(t,r,e,i)):Ma(o,r,e,i)}}),Pa=O(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Na.init(e,t);let n=e._zod.parse;A(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=rr(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!fr(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),Fa=O(`$ZodIntersection`,(e,t)=>{I.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>La(e,t,n)):La(e,i,a)}});function Ia(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(mr(e)&&mr(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Ia(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Ia(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function La(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),Dr(e))return e;let o=Ia(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var Ra=O(`$ZodRecord`,(e,t)=>{I.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!mr(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>P(e,r,k())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...kr(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...kr(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&Ti.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>P(e,r,k())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...kr(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...kr(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),za=O(`$ZodEnum`,(e,t)=>{I.init(e,t);let n=tr(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>gr.has(typeof e)).map(e=>typeof e==`string`?_r(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),Ba=O(`$ZodLiteral`,(e,t)=>{if(I.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?_r(e):e?_r(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),Va=O(`$ZodTransform`,(e,t)=>{I.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new $n(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new Qn;return n.value=i,n.fallback=!0,n}});function Ha(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var Ua=O(`$ZodOptional`,(e,t)=>{I.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,A(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),A(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ar(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>Ha(e,r)):Ha(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Wa=O(`$ZodExactOptional`,(e,t)=>{Ua.init(e,t),A(e._zod,`values`,()=>t.innerType._zod.values),A(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Ga=O(`$ZodNullable`,(e,t)=>{I.init(e,t),A(e._zod,`optin`,()=>t.innerType._zod.optin),A(e._zod,`optout`,()=>t.innerType._zod.optout),A(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ar(e.source)}|null)$`):void 0}),A(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),Ka=O(`$ZodDefault`,(e,t)=>{I.init(e,t),e._zod.optin=`optional`,A(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>qa(e,t)):qa(r,t)}});function qa(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var Ja=O(`$ZodPrefault`,(e,t)=>{I.init(e,t),e._zod.optin=`optional`,A(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Ya=O(`$ZodNonOptional`,(e,t)=>{I.init(e,t),A(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Xa(t,e)):Xa(i,e)}});function Xa(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var Za=O(`$ZodCatch`,(e,t)=>{I.init(e,t),e._zod.optin=`optional`,A(e._zod,`optout`,()=>t.innerType._zod.optout),A(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>P(e,n,k()))},input:e.value}),e.issues=[],e.fallback=!0),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>P(e,n,k()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),Qa=O(`$ZodPipe`,(e,t)=>{I.init(e,t),A(e._zod,`values`,()=>t.in._zod.values),A(e._zod,`optin`,()=>t.in._zod.optin),A(e._zod,`optout`,()=>t.out._zod.optout),A(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>$a(e,t.in,n)):$a(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>$a(e,t.out,n)):$a(r,t.out,n)}});function $a(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var eo=O(`$ZodReadonly`,(e,t)=>{I.init(e,t),A(e._zod,`propValues`,()=>t.innerType._zod.propValues),A(e._zod,`values`,()=>t.innerType._zod.values),A(e._zod,`optin`,()=>t.innerType?._zod?.optin),A(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(to):to(r)}});function to(e){return e.value=Object.freeze(e.value),e}var no=O(`$ZodCustom`,(e,t)=>{F.init(e,t),I.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>ro(t,n,r,e));ro(i,n,r,e)}});function ro(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Mr(e))}}var io,ao=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function oo(){return new ao}(io=globalThis).__zod_globalRegistry??(io.__zod_globalRegistry=oo());var so=globalThis.__zod_globalRegistry;function co(e,t){return new e({type:`string`,...N(t)})}function lo(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...N(t)})}function uo(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...N(t)})}function fo(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...N(t)})}function po(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...N(t)})}function mo(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...N(t)})}function ho(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...N(t)})}function go(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...N(t)})}function _o(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...N(t)})}function vo(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...N(t)})}function yo(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...N(t)})}function bo(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...N(t)})}function xo(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...N(t)})}function So(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...N(t)})}function Co(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...N(t)})}function wo(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...N(t)})}function To(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...N(t)})}function Eo(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...N(t)})}function Do(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...N(t)})}function Oo(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...N(t)})}function ko(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...N(t)})}function Ao(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...N(t)})}function jo(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...N(t)})}function Mo(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...N(t)})}function No(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...N(t)})}function Po(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...N(t)})}function Fo(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...N(t)})}function Io(e,t){return new e({type:`number`,checks:[],...N(t)})}function Lo(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...N(t)})}function Ro(e,t){return new e({type:`boolean`,...N(t)})}function zo(e){return new e({type:`unknown`})}function Bo(e,t){return new e({type:`never`,...N(t)})}function Vo(e,t){return new Ai({check:`less_than`,...N(t),value:e,inclusive:!1})}function Ho(e,t){return new Ai({check:`less_than`,...N(t),value:e,inclusive:!0})}function Uo(e,t){return new ji({check:`greater_than`,...N(t),value:e,inclusive:!1})}function Wo(e,t){return new ji({check:`greater_than`,...N(t),value:e,inclusive:!0})}function Go(e,t){return new Mi({check:`multiple_of`,...N(t),value:e})}function Ko(e,t){return new Pi({check:`max_length`,...N(t),maximum:e})}function qo(e,t){return new Fi({check:`min_length`,...N(t),minimum:e})}function Jo(e,t){return new Ii({check:`length_equals`,...N(t),length:e})}function Yo(e,t){return new Ri({check:`string_format`,format:`regex`,...N(t),pattern:e})}function Xo(e){return new zi({check:`string_format`,format:`lowercase`,...N(e)})}function Zo(e){return new Bi({check:`string_format`,format:`uppercase`,...N(e)})}function Qo(e,t){return new Vi({check:`string_format`,format:`includes`,...N(t),includes:e})}function $o(e,t){return new Hi({check:`string_format`,format:`starts_with`,...N(t),prefix:e})}function es(e,t){return new Ui({check:`string_format`,format:`ends_with`,...N(t),suffix:e})}function ts(e){return new Wi({check:`overwrite`,tx:e})}function ns(e){return ts(t=>t.normalize(e))}function rs(){return ts(e=>e.trim())}function is(){return ts(e=>e.toLowerCase())}function as(){return ts(e=>e.toUpperCase())}function os(){return ts(e=>ur(e))}function ss(e,t,n){return new e({type:`array`,element:t,...N(n)})}function cs(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...N(n)})}function ls(e,t){let n=us(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(Mr(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=t.value,r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(Mr(r))}},e(t.value,t)),t);return n}function us(e,t){let n=new F({check:`custom`,...N(t)});return n._zod.check=e,n}function ds(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??so,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function R(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,R(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&z(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function fs(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
63
63
 
64
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function ps(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e!==`$ref`&&e!==`allOf`&&(e in a||delete i[e]);if(s.$ref&&n.def)for(let e in i)e!==`$ref`&&e!==`allOf`&&e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e!==`$ref`&&e!==`allOf`&&e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:hs(t,`input`,e.processors),output:hs(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function z(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return z(r.element,n);if(r.type===`set`)return z(r.valueType,n);if(r.type===`lazy`)return z(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`)return z(r.innerType,n);if(r.type===`intersection`)return z(r.left,n)||z(r.right,n);if(r.type===`record`||r.type===`map`)return z(r.keyType,n)||z(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:z(r.in,n)||z(r.out,n);if(r.type===`object`){for(let e in r.shape)if(z(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(z(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(z(e,n))return!0;return!!(r.rest&&z(r.rest,n))}return!1}var ms=(e,t={})=>n=>{let r=ds({...n,processors:t});return R(e,r),fs(r,e),ps(r,e)},hs=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=ds({...i??{},target:a,io:t,processors:n});return R(e,o),fs(o,e),ps(o,e)},gs={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},_s=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=gs[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},vs=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;i.type=typeof s==`string`&&s.includes(`int`)?`integer`:`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},ys=(e,t,n,r)=>{n.type=`boolean`},bs=(e,t,n,r)=>{n.not={}},xs=(e,t,n,r)=>{let i=e._zod.def,a=tr(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Ss=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0){if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a}},Cs=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},ws=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Ts=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=R(a.element,t,{...r,path:[...r.path,`items`]})},Es=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=R(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=R(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Ds=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>R(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Os=(e,t,n,r)=>{let i=e._zod.def,a=R(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=R(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},ks=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=R(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else(t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=R(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=R(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},As=(e,t,n,r)=>{let i=e._zod.def,a=R(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},js=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ms=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Ns=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Ps=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Fs=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;R(o,t,r);let s=t.seen.get(e);s.ref=o},Is=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Ls=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Rs=O(`ZodISODateTime`,(e,t)=>{aa.init(e,t),U.init(e,t)});function zs(e){return Mo(Rs,e)}var Bs=O(`ZodISODate`,(e,t)=>{oa.init(e,t),U.init(e,t)});function Vs(e){return No(Bs,e)}var Hs=O(`ZodISOTime`,(e,t)=>{sa.init(e,t),U.init(e,t)});function Us(e){return Po(Hs,e)}var Ws=O(`ZodISODuration`,(e,t)=>{ca.init(e,t),U.init(e,t)});function Gs(e){return Fo(Ws,e)}var B=O(`ZodError`,(e,t)=>{Pr.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Lr(e,t)},flatten:{value:t=>Ir(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,nr,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,nr,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),Ks=Rr(B),qs=zr(B),Js=Br(B),Ys=Hr(B),Xs=Wr(B),Zs=Gr(B),Qs=Kr(B),$s=qr(B),ec=Jr(B),tc=Yr(B),nc=Xr(B),rc=Zr(B),ic=new WeakMap;function ac(e,t,n){let r=Object.getPrototypeOf(e),i=ic.get(r);if(i||(i=new Set,ic.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var V=O(`ZodType`,(e,t)=>(I.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:hs(e,`input`),output:hs(e,`output`)}}),e.toJSONSchema=ms(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>Ks(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Js(e,t,n),e.parseAsync=async(t,n)=>qs(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ys(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Xs(e,t,n),e.decode=(t,n)=>Zs(e,t,n),e.encodeAsync=async(t,n)=>Qs(e,t,n),e.decodeAsync=async(t,n)=>$s(e,t,n),e.safeEncode=(t,n)=>ec(e,t,n),e.safeDecode=(t,n)=>tc(e,t,n),e.safeEncodeAsync=async(t,n)=>nc(e,t,n),e.safeDecodeAsync=async(t,n)=>rc(e,t,n),ac(e,`ZodType`,{check(...e){let t=this.def;return this.clone(j(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return M(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(ml(e,t))},superRefine(e,t){return this.check(hl(e,t))},overwrite(e){return this.check(ts(e))},optional(){return Xc(this)},exactOptional(){return Qc(this)},nullable(){return el(this)},nullish(){return Xc(el(this))},nonoptional(e){return ol(this,e)},array(){return G(this)},or(e){return q([this,e])},and(e){return Hc(this,e)},transform(e){return ul(this,Jc(e))},default(e){return nl(this,e)},prefault(e){return il(this,e)},catch(e){return cl(this,e)},pipe(e){return ul(this,e)},readonly(){return fl(this)},describe(e){let t=this.clone();return so.add(t,{description:e}),t},meta(...e){if(e.length===0)return so.get(this);let t=this.clone();return so.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,"description",{get(){return so.get(e)?.description},configurable:!0}),e)),oc=O(`_ZodString`,(e,t)=>{qi.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_s(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,ac(e,`_ZodString`,{regex(...e){return this.check(Yo(...e))},includes(...e){return this.check(Qo(...e))},startsWith(...e){return this.check($o(...e))},endsWith(...e){return this.check(es(...e))},min(...e){return this.check(qo(...e))},max(...e){return this.check(Ko(...e))},length(...e){return this.check(Jo(...e))},nonempty(...e){return this.check(qo(1,...e))},lowercase(e){return this.check(Xo(e))},uppercase(e){return this.check(Zo(e))},trim(){return this.check(rs())},normalize(...e){return this.check(ns(...e))},toLowerCase(){return this.check(is())},toUpperCase(){return this.check(as())},slugify(){return this.check(os())}})}),sc=O(`ZodString`,(e,t)=>{qi.init(e,t),oc.init(e,t),e.email=t=>e.check(lo(cc,t)),e.url=t=>e.check(go(dc,t)),e.jwt=t=>e.check(jo(Ec,t)),e.emoji=t=>e.check(_o(fc,t)),e.guid=t=>e.check(uo(lc,t)),e.uuid=t=>e.check(fo(uc,t)),e.uuidv4=t=>e.check(po(uc,t)),e.uuidv6=t=>e.check(mo(uc,t)),e.uuidv7=t=>e.check(ho(uc,t)),e.nanoid=t=>e.check(vo(pc,t)),e.guid=t=>e.check(uo(lc,t)),e.cuid=t=>e.check(yo(mc,t)),e.cuid2=t=>e.check(bo(hc,t)),e.ulid=t=>e.check(xo(gc,t)),e.base64=t=>e.check(Oo(Cc,t)),e.base64url=t=>e.check(ko(wc,t)),e.xid=t=>e.check(So(_c,t)),e.ksuid=t=>e.check(Co(vc,t)),e.ipv4=t=>e.check(wo(yc,t)),e.ipv6=t=>e.check(To(bc,t)),e.cidrv4=t=>e.check(Eo(xc,t)),e.cidrv6=t=>e.check(Do(Sc,t)),e.e164=t=>e.check(Ao(Tc,t)),e.datetime=t=>e.check(zs(t)),e.date=t=>e.check(Vs(t)),e.time=t=>e.check(Us(t)),e.duration=t=>e.check(Gs(t))});function H(e){return co(sc,e)}var U=O(`ZodStringFormat`,(e,t)=>{L.init(e,t),oc.init(e,t)}),cc=O(`ZodEmail`,(e,t)=>{Xi.init(e,t),U.init(e,t)}),lc=O(`ZodGUID`,(e,t)=>{Ji.init(e,t),U.init(e,t)}),uc=O(`ZodUUID`,(e,t)=>{Yi.init(e,t),U.init(e,t)}),dc=O(`ZodURL`,(e,t)=>{Zi.init(e,t),U.init(e,t)}),fc=O(`ZodEmoji`,(e,t)=>{Qi.init(e,t),U.init(e,t)}),pc=O(`ZodNanoID`,(e,t)=>{$i.init(e,t),U.init(e,t)}),mc=O(`ZodCUID`,(e,t)=>{ea.init(e,t),U.init(e,t)}),hc=O(`ZodCUID2`,(e,t)=>{ta.init(e,t),U.init(e,t)}),gc=O(`ZodULID`,(e,t)=>{na.init(e,t),U.init(e,t)}),_c=O(`ZodXID`,(e,t)=>{ra.init(e,t),U.init(e,t)}),vc=O(`ZodKSUID`,(e,t)=>{ia.init(e,t),U.init(e,t)}),yc=O(`ZodIPv4`,(e,t)=>{la.init(e,t),U.init(e,t)}),bc=O(`ZodIPv6`,(e,t)=>{ua.init(e,t),U.init(e,t)}),xc=O(`ZodCIDRv4`,(e,t)=>{da.init(e,t),U.init(e,t)}),Sc=O(`ZodCIDRv6`,(e,t)=>{fa.init(e,t),U.init(e,t)}),Cc=O(`ZodBase64`,(e,t)=>{ma.init(e,t),U.init(e,t)}),wc=O(`ZodBase64URL`,(e,t)=>{ga.init(e,t),U.init(e,t)}),Tc=O(`ZodE164`,(e,t)=>{_a.init(e,t),U.init(e,t)}),Ec=O(`ZodJWT`,(e,t)=>{ya.init(e,t),U.init(e,t)}),Dc=O(`ZodNumber`,(e,t)=>{ba.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vs(e,t,n,r),ac(e,`ZodNumber`,{gt(e,t){return this.check(Uo(e,t))},gte(e,t){return this.check(Wo(e,t))},min(e,t){return this.check(Wo(e,t))},lt(e,t){return this.check(Vo(e,t))},lte(e,t){return this.check(Ho(e,t))},max(e,t){return this.check(Ho(e,t))},int(e){return this.check(kc(e))},safe(e){return this.check(kc(e))},positive(e){return this.check(Uo(0,e))},nonnegative(e){return this.check(Wo(0,e))},negative(e){return this.check(Vo(0,e))},nonpositive(e){return this.check(Ho(0,e))},multipleOf(e,t){return this.check(Go(e,t))},step(e,t){return this.check(Go(e,t))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function W(e){return Io(Dc,e)}var Oc=O(`ZodNumberFormat`,(e,t)=>{xa.init(e,t),Dc.init(e,t)});function kc(e){return Lo(Oc,e)}var Ac=O(`ZodBoolean`,(e,t)=>{Sa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ys(e,t,n,r)});function jc(e){return Ro(Ac,e)}var Mc=O(`ZodUnknown`,(e,t)=>{Ca.init(e,t),V.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Nc(){return zo(Mc)}var Pc=O(`ZodNever`,(e,t)=>{wa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bs(e,t,n,r)});function Fc(e){return Bo(Pc,e)}var Ic=O(`ZodArray`,(e,t)=>{Ea.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ts(e,t,n,r),e.element=t.element,ac(e,`ZodArray`,{min(e,t){return this.check(qo(e,t))},nonempty(e){return this.check(qo(1,e))},max(e,t){return this.check(Ko(e,t))},length(e,t){return this.check(Jo(e,t))},unwrap(){return this.element}})});function G(e,t){return ss(Ic,e,t)}var Lc=O(`ZodObject`,(e,t)=>{ja.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Es(e,t,n,r),A(e,`shape`,()=>t.shape),ac(e,`ZodObject`,{keyof(){return Gc(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:Nc()})},loose(){return this.clone({...this._zod.def,catchall:Nc()})},strict(){return this.clone({...this._zod.def,catchall:Fc()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return Sr(this,e)},safeExtend(e){return Cr(this,e)},merge(e){return wr(this,e)},pick(e){return br(this,e)},omit(e){return xr(this,e)},partial(...e){return Tr(Yc,this,e[0])},required(...e){return Er(al,this,e[0])}})});function K(e,t){return new Lc({type:`object`,shape:e??{},...N(t)})}var Rc=O(`ZodUnion`,(e,t)=>{Na.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ds(e,t,n,r),e.options=t.options});function q(e,t){return new Rc({type:`union`,options:e,...N(t)})}var zc=O(`ZodDiscriminatedUnion`,(e,t)=>{Rc.init(e,t),Pa.init(e,t)});function Bc(e,t,n){return new zc({type:`union`,options:t,discriminator:e,...N(n)})}var Vc=O(`ZodIntersection`,(e,t)=>{Fa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Os(e,t,n,r)});function Hc(e,t){return new Vc({type:`intersection`,left:e,right:t})}var Uc=O(`ZodRecord`,(e,t)=>{Ra.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ks(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function J(e,t,n){return!t||!t._zod?new Uc({type:`record`,keyType:H(),valueType:e,...N(t)}):new Uc({type:`record`,keyType:e,valueType:t,...N(n)})}var Wc=O(`ZodEnum`,(e,t)=>{za.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xs(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Wc({...t,checks:[],...N(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Wc({...t,checks:[],...N(r),entries:i})}});function Gc(e,t){return new Wc({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...N(t)})}var Kc=O(`ZodLiteral`,(e,t)=>{Ba.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ss(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Y(e,t){return new Kc({type:`literal`,values:Array.isArray(e)?e:[e],...N(t)})}var qc=O(`ZodTransform`,(e,t)=>{Va.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ws(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new $n(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Mr(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(Mr(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function Jc(e){return new qc({type:`transform`,transform:e})}var Yc=O(`ZodOptional`,(e,t)=>{Ua.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ls(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Xc(e){return new Yc({type:`optional`,innerType:e})}var Zc=O(`ZodExactOptional`,(e,t)=>{Wa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ls(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Qc(e){return new Zc({type:`optional`,innerType:e})}var $c=O(`ZodNullable`,(e,t)=>{Ga.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>As(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function el(e){return new $c({type:`nullable`,innerType:e})}var tl=O(`ZodDefault`,(e,t)=>{Ka.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ms(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function nl(e,t){return new tl({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():hr(t)}})}var rl=O(`ZodPrefault`,(e,t)=>{Ja.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ns(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function il(e,t){return new rl({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():hr(t)}})}var al=O(`ZodNonOptional`,(e,t)=>{Ya.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>js(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ol(e,t){return new al({type:`nonoptional`,innerType:e,...N(t)})}var sl=O(`ZodCatch`,(e,t)=>{Za.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ps(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function cl(e,t){return new sl({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var ll=O(`ZodPipe`,(e,t)=>{Qa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fs(e,t,n,r),e.in=t.in,e.out=t.out});function ul(e,t){return new ll({type:`pipe`,in:e,out:t})}var dl=O(`ZodReadonly`,(e,t)=>{eo.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Is(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function fl(e){return new dl({type:`readonly`,innerType:e})}var pl=O(`ZodCustom`,(e,t)=>{no.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Cs(e,t,n,r)});function ml(e,t={}){return cs(pl,e,t)}function hl(e,t){return ls(e,t)}function gl(e){return`is`in e&&typeof e.is==`function`}function X(e){if(Object.defineProperty(e,"is",{value:t=>e.safeParse(t).success,enumerable:!0}),!gl(e))throw Error(`unreachable: is was just defined above`);return e}var _l=X(q([Y(`discoverable`),Y(`quiet`),Y(`dark`)])),vl=X(q([Y(`visible`),Y(`hidden`),Y(`ghost`)])),yl=X(q([Y(`active`),Y(`idle`),Y(`busy`),Y(`offline`)])),bl=X(q([Y(`public`),Y(`private`),Y(`secret`)])),xl=X(q([Y(`steer`),Y(`followUp`),Y(`info`)])),Sl=X(K({id:H(),version:W(),name:H(),harness:H(),cwd:H(),pid:W(),startedAt:H(),visibility:vl,status:yl,tags:G(H()),subscribedRooms:G(H())})),Cl=X(K({id:H(),version:W(),name:H(),type:bl,owner:H(),createdAt:H(),description:H(),members:G(H()),invited:G(H()),memberJoins:J(H(),W()),memberLeaves:J(H(),W()),invitedJoins:J(H(),W()),invitedLeaves:J(H(),W())})),wl=X(K({id:H(),from:H(),room:H(),content:H(),timestamp:H(),replyTo:H().optional(),readBy:G(H()),streamingBehavior:xl.optional()})),Tl=X(K({id:H(),from:H(),to:H(),content:H(),timestamp:H(),readBy:G(H()),streamingBehavior:xl.optional()})),El=X(q([Y(`delivered`),Y(`read`)])),Dl=X(K({id:H(),name:H(),status:yl})),Ol=X(Bc(`type`,[K({type:Y(`room_message`),message:wl}),K({type:Y(`dm`),message:Tl}),K({type:Y(`room_invite`),room:H(),roomDescription:H(),from:H(),fromName:H(),fromCwd:H()}),K({type:Y(`member_joined`),room:H(),agent:H()}),K({type:Y(`member_left`),room:H(),agent:H()}),K({type:Y(`room_members`),room:H(),members:G(Dl)}),K({type:Y(`member_status`),room:H(),agent:H(),status:yl}),K({type:Y(`delivery_status`),messageId:H(),agent:H(),status:El,room:H().optional()}),K({type:Y(`invite_declined`),room:H(),agent:H(),agentName:H(),reason:H()}),K({type:Y(`name_changed`),agent:H(),oldName:H(),newName:H()}),K({type:Y(`connection_request`),connectionId:H(),peerId:H(),dataPort:W(),name:H(),fingerprint:H()}),K({type:Y(`capability_request`),requestId:H(),capability:H(),scopeKind:H(),scopePath:H().optional(),requesterDevice:H()})]));X(K({code:H(),expiresAt:H(),deviceId:H(),signature:H().optional()})),X(Bc(`action`,[K({action:Y(`register`),name:H(),visibility:vl,tags:G(H())}),K({action:Y(`update`),visibility:vl.optional(),status:yl.optional(),name:H().optional(),tags:G(H()).optional()}),K({action:Y(`whoami`)}),K({action:Y(`web_url`)}),K({action:Y(`create_room`),name:H(),type:bl,description:H()}),K({action:Y(`list_rooms`)}),K({action:Y(`join_room`),room:H()}),K({action:Y(`leave_room`),room:H()}),K({action:Y(`send`),target:H(),content:H(),replyTo:H().optional(),streamingBehavior:xl.optional()}),K({action:Y(`dm`),target:H(),content:H(),streamingBehavior:xl.optional()}),K({action:Y(`list_agents`)}),K({action:Y(`read_room`),room:H(),since:H().optional()}),K({action:Y(`invite`),room:H(),agent:H()}),K({action:Y(`kick`),room:H(),agent:H()}),K({action:Y(`decline_invite`),room:H(),reason:H()}),K({action:Y(`destroy_room`),room:H()}),K({action:Y(`mesh_connect`),host:H(),port:W(),policy:H().optional()}),K({action:Y(`mesh_accept`),connectionId:H()}),K({action:Y(`mesh_reject`),connectionId:H(),reason:H()}),K({action:Y(`mesh_pending`)}),K({action:Y(`room_accept`),room:H(),requesterId:H()}),K({action:Y(`room_reject`),room:H(),requesterId:H(),reason:H().optional()}),K({action:Y(`room_pending`)}),K({action:Y(`capability_accept`),requestId:H(),expires:W(),delegationsRemaining:W().optional(),capability:H().optional()}),K({action:Y(`capability_reject`),requestId:H(),reason:H().optional()}),K({action:Y(`capability_pending`)}),K({action:Y(`mesh_discover`),method:H().optional()}),K({action:Y(`mesh_advertise`),method:H(),name:H(),port:W().optional(),adapter:H().optional()}),K({action:Y(`mesh_unadvertise`),id:H()}),K({action:Y(`mesh_interfaces`)}),K({action:Y(`mesh_listen`),host:H(),port:W().optional(),policy:H().optional()}),K({action:Y(`mesh_unlisten`),id:H()}),K({action:Y(`mesh_listeners`)}),K({action:Y(`mesh_set_visibility`),visibility:_l,adapter:H().optional()}),K({action:Y(`mesh_get_visibility`)}),K({action:Y(`gateway_trust`),device:H(),principal:jc().optional()}),K({action:Y(`gateway_untrust`),device:H(),principal:jc().optional()}),K({action:Y(`gateway_list_trusted`)}),K({action:Y(`gateway_generate_connection_code`),ttlMs:W().optional(),privateKey:H().optional(),passphrase:H().optional()}),K({action:Y(`gateway_redeem_connection_code`),code:H(),expiresAt:H(),device:H(),signature:H().optional(),publicKey:H().optional(),fingerprint:H().optional()}),K({action:Y(`query_version`),device:H()}),K({action:Y(`mesh_graph`)}),K({action:Y(`mesh_trace`),target:H(),timeoutMs:W().optional()})]));var Z=K({content:H(),isError:jc()}),kl=q([Y(`public`),Y(`private`),Y(`secret`)]),Al=K({kind:q([Y(`direct`),Y(`relay`)]),from:H(),to:H(),via:H().optional()}),jl=K({nodes:G(H()),edges:G(Al)}),Ml=K({relayed:jc(),hubAddress:H().optional()}),Nl=K({rttMs:W(),local:Ml,remote:Ml.optional(),outcome:K({result:H(),code:H().optional()}).loose()}),Pl=Bc(`type`,[K({type:Y(`agent_upsert`),agent:Sl}),K({type:Y(`agent_offline`),agentId:H()}),K({type:Y(`room_upsert`),room:Cl}),K({type:Y(`room_delete`),roomId:H()}),K({type:Y(`message_add`),roomId:H(),message:wl}),K({type:Y(`dm_add`),key:H(),message:Tl}),K({type:Y(`delivery`),agentId:H(),event:Ol})]),Fl=K({agents:J(H(),Sl),rooms:J(H(),Cl),messages:J(H(),G(wl)),dms:J(H(),G(Tl))}),Il=Bc(`kind`,[K({kind:Y(`state_sync`),state:Fl}),K({kind:Y(`state_patch`),patch:Pl}),K({kind:Y(`delivery`),event:Ol})]),Ll=K({endpoint:H(),keys:K({p256dh:H(),auth:H()})}),Rl={send:w.input(K({target:H(),content:H()})).output(Z),dm:w.input(K({target:H(),content:H()})).output(Z),joinRoom:w.input(K({room:H()})).output(Z),leaveRoom:w.input(K({room:H().optional()})).output(Z),createRoom:w.input(K({name:H(),type:kl,description:H().optional()})).output(Z),listRooms:w.input(K({})).output(Z),listAgents:w.input(K({})).output(Z),readRoom:w.input(K({room:H().optional()})).output(Z),destroyRoom:w.input(K({room:H()})).output(Z),invite:w.input(K({room:H(),agent:H()})).output(Z),declineInvite:w.input(K({room:H(),reason:H()})).output(Z),kick:w.input(K({room:H(),agent:H()})).output(Z),renameAgent:w.input(K({agent:H(),name:H()})).output(Z),pushSubscribe:w.input(K({subscription:Ll,agentId:H().optional()})).output(Z),pushUnsubscribe:w.input(K({agentId:H().optional()})).output(Z),subscribeEvents:w.input(K({lastEventId:H().optional()})).output(pn(Il)),getRoomMessages:w.input(K({room:H(),since:H().optional()})).output(G(wl)),getMeshGraph:w.input(K({})).output(jl),getMeshTrace:w.input(K({target:H(),timeoutMs:W().optional()})).output(Nl),disconnect:w.input(K({})).output(K({}))};function zl(e){if(typeof e!=`object`||!e||!(`endpoint`in e)||typeof e.endpoint!=`string`||!(`keys`in e))return!1;let t=e.keys;return!(typeof t!=`object`||!t||!(`p256dh`in t)||typeof t.p256dh!=`string`||!(`auth`in t)||typeof t.auth!=`string`)}async function Bl(e,t){let n=e=>{let n=t[e];return typeof n==`string`?n:``},r=e=>{let n=t[e];return typeof n==`string`?n:void 0},i=()=>{let e=t.type;return e===`public`||e===`private`||e===`secret`?e:`public`};switch(t.action){case`send`:return e.send({target:n(`target`),content:n(`content`)});case`dm`:return e.dm({target:n(`target`),content:n(`content`)});case`join_room`:return e.joinRoom({room:n(`room`)});case`leave_room`:return e.leaveRoom({room:r(`room`)});case`create_room`:return e.createRoom({name:n(`name`),type:i(),description:r(`description`)});case`list_rooms`:return e.listRooms({});case`list_agents`:return e.listAgents({});case`read_room`:return e.readRoom({room:r(`room`)});case`destroy_room`:return e.destroyRoom({room:n(`room`)});case`invite`:return e.invite({room:n(`room`),agent:n(`agent`)});case`decline_invite`:return e.declineInvite({room:n(`room`),reason:n(`reason`)});case`kick`:return e.kick({room:n(`room`),agent:n(`agent`)});case`rename_agent`:return e.renameAgent({agent:n(`agent`),name:n(`name`)});case`push_subscribe`:{let n=t.subscription;return zl(n)?e.pushSubscribe({subscription:n,agentId:r(`agentId`)}):{content:`Invalid push subscription`,isError:!0}}case`push_unsubscribe`:return e.pushUnsubscribe({agentId:r(`agentId`)});default:return{content:`Unknown action: ${String(t.action)}`,isError:!0}}}var Vl=new Map,Hl=new Map,Ul=new Map,Wl=new Map;function Gl(e){for(let[t,n]of Object.entries(e.agents))Vl.set(t,n);for(let[t,n]of Object.entries(e.rooms))Hl.set(t,n);for(let[t,n]of Object.entries(e.messages))Ul.set(t,n);for(let[t,n]of Object.entries(e.dms))Wl.set(t,n)}function Kl(e){switch(e.type){case`agent_upsert`:Vl.set(e.agent.id,e.agent);break;case`agent_offline`:{let t=Vl.get(e.agentId);t&&(t.status=`offline`,Vl.set(e.agentId,t));break}case`room_upsert`:Hl.set(e.room.id,e.room);break;case`room_delete`:Hl.delete(e.roomId);break;case`message_add`:{let t=Ul.get(e.roomId)??[];t.push(e.message),Ul.set(e.roomId,t);break}case`dm_add`:{let t=Wl.get(e.key)??[];t.push(e.message),Wl.set(e.key,t);break}case`delivery`:break;case`message_read`:if(e.room!==void 0){let t=Ul.get(e.room);if(t){let n=t.find(t=>t.id===e.messageId);n&&!n.readBy.includes(e.readBy)&&n.readBy.push(e.readBy)}}else for(let[,t]of Wl){let n=t.find(t=>t.id===e.messageId);n&&!n.readBy.includes(e.readBy)&&n.readBy.push(e.readBy)}}}function ql(){return{agents:[...Vl.values()],rooms:[...Hl.values()]}}var Jl,Yl=0,Xl=new Xn,Zl=1e3,Ql=3e4;function $l(e){let t=Ct(new nn({connect:async()=>{let t=new WebSocket(e);return t.addEventListener(`open`,()=>{nu({type:`connected`})}),t.addEventListener(`close`,()=>{nu({type:`disconnected`})}),new Promise((e,n)=>{t.addEventListener(`open`,()=>{e(t)},{once:!0}),t.addEventListener(`error`,n,{once:!0})})},reconnect:{enabled:!0,delay:e=>e.attempt===1?0:Math.min(Zl*2**e.attempt,Ql)},plugins:[new rn]}));Jl=t,eu(t,++Yl)}async function eu(e,t){let n;for(;t===Yl;)try{let r=await e.subscribeEvents(n===void 0?{}:{lastEventId:n});for await(let e of r){if(t!==Yl)return;let r=qe(e);switch(r?.id!==void 0&&(n=r.id),Xl.publish(e),e.kind){case`state_sync`:Gl(e.state),nu({type:`state`,state:ql()});break;case`state_patch`:Kl(e.patch),nu({type:`patch`,patch:e.patch})}}return}catch{}}var tu=new Set;function nu(e){let t=JSON.stringify(e);for(let e of tu)try{e.postMessage(t)}catch{}}function ru(e){switch(e.type){case`init`:$l(e.url);break;case`action`:{let t=Jl;if(!t)break;let n=e.id;Bl(t,e.action).then(e=>{nu({type:`actionResult`,id:n,result:e})}).catch(e=>{nu({type:`actionError`,id:n,message:e instanceof Error?e.message:String(e)})});break}case`getState`:nu({type:`state`,state:ql()})}}function iu(e){if(typeof e!=`object`||!e||!(`type`in e))return!1;let t=e.type;return typeof t==`string`&&(t===`init`||t===`action`||t===`getState`)}function au(){return{agents:Object.fromEntries(Vl),rooms:Object.fromEntries(Hl),messages:Object.fromEntries(Ul),dms:Object.fromEntries(Wl)}}async function Q(e){return Jl?Bl(Jl,e):{content:`Not connected to mesh yet`,isError:!0}}var $=Fn(Rl).$context(),ou={};ou.current=new qn({send:$.send.handler(async({input:e})=>Q({action:`send`,...e})),dm:$.dm.handler(async({input:e})=>Q({action:`dm`,...e})),joinRoom:$.joinRoom.handler(async({input:e})=>Q({action:`join_room`,room:e.room})),leaveRoom:$.leaveRoom.handler(async({input:e})=>Q({action:`leave_room`,room:e.room})),createRoom:$.createRoom.handler(async({input:e})=>Q({action:`create_room`,name:e.name,type:e.type,description:e.description})),listRooms:$.listRooms.handler(async()=>Q({action:`list_rooms`})),listAgents:$.listAgents.handler(async()=>Q({action:`list_agents`})),readRoom:$.readRoom.handler(async({input:e})=>Q({action:`read_room`,room:e.room})),destroyRoom:$.destroyRoom.handler(async({input:e})=>Q({action:`destroy_room`,room:e.room})),invite:$.invite.handler(async({input:e})=>Q({action:`invite`,room:e.room,agent:e.agent})),declineInvite:$.declineInvite.handler(async({input:e})=>Q({action:`decline_invite`,room:e.room,reason:e.reason})),kick:$.kick.handler(async({input:e})=>Q({action:`kick`,room:e.room,agent:e.agent})),renameAgent:$.renameAgent.handler(async({input:e})=>Q({action:`rename_agent`,agent:e.agent,name:e.name})),pushSubscribe:$.pushSubscribe.handler(async({input:e})=>Q({action:`push_subscribe`,subscription:e.subscription,agentId:e.agentId})),pushUnsubscribe:$.pushUnsubscribe.handler(async({input:e})=>Q({action:`push_unsubscribe`,agentId:e.agentId})),subscribeEvents:$.subscribeEvents.handler(async function*({input:e,signal:t}){e.lastEventId===void 0&&(yield{kind:`state_sync`,state:au()}),yield*Xl.subscribe({...t?{signal:t}:{},...e.lastEventId===void 0?{}:{lastEventId:e.lastEventId}})}),disconnect:$.disconnect.handler(async({context:e})=>(setTimeout(()=>{ou.current?.close(e.port)},0),{}))});function su(e){ou.current?.upgrade(e,{context:{port:e}})}return typeof self<`u`&&self.addEventListener(`connect`,e=>{let t=e.ports[0];if(t!==void 0){tu.add(t);try{t.postMessage(JSON.stringify({type:`state`,state:ql()}))}catch{}t.onmessage=e=>{let t=JSON.parse(typeof e.data==`string`?e.data:String(e.data));iu(t)&&ru(t)},su(t)}}),e.agents=Vl,e.applyPatch=Kl,e.applyStateSync=Gl,e.connect=$l,e.dms=Wl,e.getStateSnapshot=ql,e.localPublisher=Xl,e.messages=Ul,e.ports=tu,e.rooms=Hl,e.upgradeTabRpcPort=su,e})({});
64
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function ps(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e!==`$ref`&&e!==`allOf`&&(e in a||delete i[e]);if(s.$ref&&n.def)for(let e in i)e!==`$ref`&&e!==`allOf`&&e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e!==`$ref`&&e!==`allOf`&&e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:hs(t,`input`,e.processors),output:hs(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function z(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return z(r.element,n);if(r.type===`set`)return z(r.valueType,n);if(r.type===`lazy`)return z(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`)return z(r.innerType,n);if(r.type===`intersection`)return z(r.left,n)||z(r.right,n);if(r.type===`record`||r.type===`map`)return z(r.keyType,n)||z(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:z(r.in,n)||z(r.out,n);if(r.type===`object`){for(let e in r.shape)if(z(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(z(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(z(e,n))return!0;return!!(r.rest&&z(r.rest,n))}return!1}var ms=(e,t={})=>n=>{let r=ds({...n,processors:t});return R(e,r),fs(r,e),ps(r,e)},hs=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=ds({...i??{},target:a,io:t,processors:n});return R(e,o),fs(o,e),ps(o,e)},gs={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},_s=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=gs[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},vs=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;i.type=typeof s==`string`&&s.includes(`int`)?`integer`:`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},ys=(e,t,n,r)=>{n.type=`boolean`},bs=(e,t,n,r)=>{n.not={}},xs=(e,t,n,r)=>{let i=e._zod.def,a=tr(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Ss=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0){if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a}},Cs=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},ws=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Ts=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=R(a.element,t,{...r,path:[...r.path,`items`]})},Es=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=R(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=R(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Ds=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>R(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Os=(e,t,n,r)=>{let i=e._zod.def,a=R(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=R(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},ks=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=R(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else(t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=R(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=R(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},As=(e,t,n,r)=>{let i=e._zod.def,a=R(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},js=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ms=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Ns=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Ps=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Fs=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;R(o,t,r);let s=t.seen.get(e);s.ref=o},Is=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Ls=(e,t,n,r)=>{let i=e._zod.def;R(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Rs=O(`ZodISODateTime`,(e,t)=>{aa.init(e,t),U.init(e,t)});function zs(e){return Mo(Rs,e)}var Bs=O(`ZodISODate`,(e,t)=>{oa.init(e,t),U.init(e,t)});function Vs(e){return No(Bs,e)}var Hs=O(`ZodISOTime`,(e,t)=>{sa.init(e,t),U.init(e,t)});function Us(e){return Po(Hs,e)}var Ws=O(`ZodISODuration`,(e,t)=>{ca.init(e,t),U.init(e,t)});function Gs(e){return Fo(Ws,e)}var B=O(`ZodError`,(e,t)=>{Pr.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Lr(e,t)},flatten:{value:t=>Ir(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,nr,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,nr,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),Ks=Rr(B),qs=zr(B),Js=Br(B),Ys=Hr(B),Xs=Wr(B),Zs=Gr(B),Qs=Kr(B),$s=qr(B),ec=Jr(B),tc=Yr(B),nc=Xr(B),rc=Zr(B),ic=new WeakMap;function ac(e,t,n){let r=Object.getPrototypeOf(e),i=ic.get(r);if(i||(i=new Set,ic.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var V=O(`ZodType`,(e,t)=>(I.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:hs(e,`input`),output:hs(e,`output`)}}),e.toJSONSchema=ms(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>Ks(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Js(e,t,n),e.parseAsync=async(t,n)=>qs(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ys(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Xs(e,t,n),e.decode=(t,n)=>Zs(e,t,n),e.encodeAsync=async(t,n)=>Qs(e,t,n),e.decodeAsync=async(t,n)=>$s(e,t,n),e.safeEncode=(t,n)=>ec(e,t,n),e.safeDecode=(t,n)=>tc(e,t,n),e.safeEncodeAsync=async(t,n)=>nc(e,t,n),e.safeDecodeAsync=async(t,n)=>rc(e,t,n),ac(e,`ZodType`,{check(...e){let t=this.def;return this.clone(j(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return M(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(ml(e,t))},superRefine(e,t){return this.check(hl(e,t))},overwrite(e){return this.check(ts(e))},optional(){return Xc(this)},exactOptional(){return Qc(this)},nullable(){return el(this)},nullish(){return Xc(el(this))},nonoptional(e){return ol(this,e)},array(){return G(this)},or(e){return q([this,e])},and(e){return Hc(this,e)},transform(e){return ul(this,Jc(e))},default(e){return nl(this,e)},prefault(e){return il(this,e)},catch(e){return cl(this,e)},pipe(e){return ul(this,e)},readonly(){return fl(this)},describe(e){let t=this.clone();return so.add(t,{description:e}),t},meta(...e){if(e.length===0)return so.get(this);let t=this.clone();return so.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,"description",{get(){return so.get(e)?.description},configurable:!0}),e)),oc=O(`_ZodString`,(e,t)=>{qi.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_s(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,ac(e,`_ZodString`,{regex(...e){return this.check(Yo(...e))},includes(...e){return this.check(Qo(...e))},startsWith(...e){return this.check($o(...e))},endsWith(...e){return this.check(es(...e))},min(...e){return this.check(qo(...e))},max(...e){return this.check(Ko(...e))},length(...e){return this.check(Jo(...e))},nonempty(...e){return this.check(qo(1,...e))},lowercase(e){return this.check(Xo(e))},uppercase(e){return this.check(Zo(e))},trim(){return this.check(rs())},normalize(...e){return this.check(ns(...e))},toLowerCase(){return this.check(is())},toUpperCase(){return this.check(as())},slugify(){return this.check(os())}})}),sc=O(`ZodString`,(e,t)=>{qi.init(e,t),oc.init(e,t),e.email=t=>e.check(lo(cc,t)),e.url=t=>e.check(go(dc,t)),e.jwt=t=>e.check(jo(Ec,t)),e.emoji=t=>e.check(_o(fc,t)),e.guid=t=>e.check(uo(lc,t)),e.uuid=t=>e.check(fo(uc,t)),e.uuidv4=t=>e.check(po(uc,t)),e.uuidv6=t=>e.check(mo(uc,t)),e.uuidv7=t=>e.check(ho(uc,t)),e.nanoid=t=>e.check(vo(pc,t)),e.guid=t=>e.check(uo(lc,t)),e.cuid=t=>e.check(yo(mc,t)),e.cuid2=t=>e.check(bo(hc,t)),e.ulid=t=>e.check(xo(gc,t)),e.base64=t=>e.check(Oo(Cc,t)),e.base64url=t=>e.check(ko(wc,t)),e.xid=t=>e.check(So(_c,t)),e.ksuid=t=>e.check(Co(vc,t)),e.ipv4=t=>e.check(wo(yc,t)),e.ipv6=t=>e.check(To(bc,t)),e.cidrv4=t=>e.check(Eo(xc,t)),e.cidrv6=t=>e.check(Do(Sc,t)),e.e164=t=>e.check(Ao(Tc,t)),e.datetime=t=>e.check(zs(t)),e.date=t=>e.check(Vs(t)),e.time=t=>e.check(Us(t)),e.duration=t=>e.check(Gs(t))});function H(e){return co(sc,e)}var U=O(`ZodStringFormat`,(e,t)=>{L.init(e,t),oc.init(e,t)}),cc=O(`ZodEmail`,(e,t)=>{Xi.init(e,t),U.init(e,t)}),lc=O(`ZodGUID`,(e,t)=>{Ji.init(e,t),U.init(e,t)}),uc=O(`ZodUUID`,(e,t)=>{Yi.init(e,t),U.init(e,t)}),dc=O(`ZodURL`,(e,t)=>{Zi.init(e,t),U.init(e,t)}),fc=O(`ZodEmoji`,(e,t)=>{Qi.init(e,t),U.init(e,t)}),pc=O(`ZodNanoID`,(e,t)=>{$i.init(e,t),U.init(e,t)}),mc=O(`ZodCUID`,(e,t)=>{ea.init(e,t),U.init(e,t)}),hc=O(`ZodCUID2`,(e,t)=>{ta.init(e,t),U.init(e,t)}),gc=O(`ZodULID`,(e,t)=>{na.init(e,t),U.init(e,t)}),_c=O(`ZodXID`,(e,t)=>{ra.init(e,t),U.init(e,t)}),vc=O(`ZodKSUID`,(e,t)=>{ia.init(e,t),U.init(e,t)}),yc=O(`ZodIPv4`,(e,t)=>{la.init(e,t),U.init(e,t)}),bc=O(`ZodIPv6`,(e,t)=>{ua.init(e,t),U.init(e,t)}),xc=O(`ZodCIDRv4`,(e,t)=>{da.init(e,t),U.init(e,t)}),Sc=O(`ZodCIDRv6`,(e,t)=>{fa.init(e,t),U.init(e,t)}),Cc=O(`ZodBase64`,(e,t)=>{ma.init(e,t),U.init(e,t)}),wc=O(`ZodBase64URL`,(e,t)=>{ga.init(e,t),U.init(e,t)}),Tc=O(`ZodE164`,(e,t)=>{_a.init(e,t),U.init(e,t)}),Ec=O(`ZodJWT`,(e,t)=>{ya.init(e,t),U.init(e,t)}),Dc=O(`ZodNumber`,(e,t)=>{ba.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vs(e,t,n,r),ac(e,`ZodNumber`,{gt(e,t){return this.check(Uo(e,t))},gte(e,t){return this.check(Wo(e,t))},min(e,t){return this.check(Wo(e,t))},lt(e,t){return this.check(Vo(e,t))},lte(e,t){return this.check(Ho(e,t))},max(e,t){return this.check(Ho(e,t))},int(e){return this.check(kc(e))},safe(e){return this.check(kc(e))},positive(e){return this.check(Uo(0,e))},nonnegative(e){return this.check(Wo(0,e))},negative(e){return this.check(Vo(0,e))},nonpositive(e){return this.check(Ho(0,e))},multipleOf(e,t){return this.check(Go(e,t))},step(e,t){return this.check(Go(e,t))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function W(e){return Io(Dc,e)}var Oc=O(`ZodNumberFormat`,(e,t)=>{xa.init(e,t),Dc.init(e,t)});function kc(e){return Lo(Oc,e)}var Ac=O(`ZodBoolean`,(e,t)=>{Sa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ys(e,t,n,r)});function jc(e){return Ro(Ac,e)}var Mc=O(`ZodUnknown`,(e,t)=>{Ca.init(e,t),V.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Nc(){return zo(Mc)}var Pc=O(`ZodNever`,(e,t)=>{wa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bs(e,t,n,r)});function Fc(e){return Bo(Pc,e)}var Ic=O(`ZodArray`,(e,t)=>{Ea.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ts(e,t,n,r),e.element=t.element,ac(e,`ZodArray`,{min(e,t){return this.check(qo(e,t))},nonempty(e){return this.check(qo(1,e))},max(e,t){return this.check(Ko(e,t))},length(e,t){return this.check(Jo(e,t))},unwrap(){return this.element}})});function G(e,t){return ss(Ic,e,t)}var Lc=O(`ZodObject`,(e,t)=>{ja.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Es(e,t,n,r),A(e,`shape`,()=>t.shape),ac(e,`ZodObject`,{keyof(){return Gc(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:Nc()})},loose(){return this.clone({...this._zod.def,catchall:Nc()})},strict(){return this.clone({...this._zod.def,catchall:Fc()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return Sr(this,e)},safeExtend(e){return Cr(this,e)},merge(e){return wr(this,e)},pick(e){return br(this,e)},omit(e){return xr(this,e)},partial(...e){return Tr(Yc,this,e[0])},required(...e){return Er(al,this,e[0])}})});function K(e,t){return new Lc({type:`object`,shape:e??{},...N(t)})}var Rc=O(`ZodUnion`,(e,t)=>{Na.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ds(e,t,n,r),e.options=t.options});function q(e,t){return new Rc({type:`union`,options:e,...N(t)})}var zc=O(`ZodDiscriminatedUnion`,(e,t)=>{Rc.init(e,t),Pa.init(e,t)});function Bc(e,t,n){return new zc({type:`union`,options:t,discriminator:e,...N(n)})}var Vc=O(`ZodIntersection`,(e,t)=>{Fa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Os(e,t,n,r)});function Hc(e,t){return new Vc({type:`intersection`,left:e,right:t})}var Uc=O(`ZodRecord`,(e,t)=>{Ra.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ks(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function J(e,t,n){return!t||!t._zod?new Uc({type:`record`,keyType:H(),valueType:e,...N(t)}):new Uc({type:`record`,keyType:e,valueType:t,...N(n)})}var Wc=O(`ZodEnum`,(e,t)=>{za.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xs(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Wc({...t,checks:[],...N(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Wc({...t,checks:[],...N(r),entries:i})}});function Gc(e,t){return new Wc({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...N(t)})}var Kc=O(`ZodLiteral`,(e,t)=>{Ba.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ss(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Y(e,t){return new Kc({type:`literal`,values:Array.isArray(e)?e:[e],...N(t)})}var qc=O(`ZodTransform`,(e,t)=>{Va.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ws(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new $n(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Mr(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(Mr(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function Jc(e){return new qc({type:`transform`,transform:e})}var Yc=O(`ZodOptional`,(e,t)=>{Ua.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ls(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Xc(e){return new Yc({type:`optional`,innerType:e})}var Zc=O(`ZodExactOptional`,(e,t)=>{Wa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ls(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Qc(e){return new Zc({type:`optional`,innerType:e})}var $c=O(`ZodNullable`,(e,t)=>{Ga.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>As(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function el(e){return new $c({type:`nullable`,innerType:e})}var tl=O(`ZodDefault`,(e,t)=>{Ka.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ms(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function nl(e,t){return new tl({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():hr(t)}})}var rl=O(`ZodPrefault`,(e,t)=>{Ja.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ns(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function il(e,t){return new rl({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():hr(t)}})}var al=O(`ZodNonOptional`,(e,t)=>{Ya.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>js(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ol(e,t){return new al({type:`nonoptional`,innerType:e,...N(t)})}var sl=O(`ZodCatch`,(e,t)=>{Za.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ps(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function cl(e,t){return new sl({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var ll=O(`ZodPipe`,(e,t)=>{Qa.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fs(e,t,n,r),e.in=t.in,e.out=t.out});function ul(e,t){return new ll({type:`pipe`,in:e,out:t})}var dl=O(`ZodReadonly`,(e,t)=>{eo.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Is(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function fl(e){return new dl({type:`readonly`,innerType:e})}var pl=O(`ZodCustom`,(e,t)=>{no.init(e,t),V.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Cs(e,t,n,r)});function ml(e,t={}){return cs(pl,e,t)}function hl(e,t){return ls(e,t)}function gl(e){return`is`in e&&typeof e.is==`function`}function X(e){if(Object.defineProperty(e,"is",{value:t=>e.safeParse(t).success,enumerable:!0}),!gl(e))throw Error(`unreachable: is was just defined above`);return e}var _l=X(q([Y(`discoverable`),Y(`quiet`),Y(`dark`)])),vl=X(q([Y(`visible`),Y(`hidden`),Y(`ghost`)])),yl=X(q([Y(`active`),Y(`idle`),Y(`busy`),Y(`offline`)])),bl=X(q([Y(`public`),Y(`private`),Y(`secret`)])),xl=X(q([Y(`steer`),Y(`followUp`),Y(`info`)])),Sl=X(K({id:H(),version:W(),name:H(),harness:H(),cwd:H(),pid:W(),startedAt:H(),visibility:vl,status:yl,tags:G(H()),subscribedRooms:G(H())})),Cl=X(K({id:H(),version:W(),name:H(),type:bl,owner:H(),createdAt:H(),description:H(),members:G(H()),invited:G(H()),memberJoins:J(H(),W()),memberLeaves:J(H(),W()),invitedJoins:J(H(),W()),invitedLeaves:J(H(),W())})),wl=X(K({id:H(),from:H(),room:H(),content:H(),timestamp:H(),replyTo:H().optional(),readBy:G(H()),streamingBehavior:xl.optional()})),Tl=X(K({id:H(),from:H(),to:H(),content:H(),timestamp:H(),readBy:G(H()),streamingBehavior:xl.optional()})),El=X(q([Y(`delivered`),Y(`read`)])),Dl=X(K({id:H(),name:H(),status:yl})),Ol=X(Bc(`type`,[K({type:Y(`room_message`),message:wl}),K({type:Y(`dm`),message:Tl}),K({type:Y(`room_invite`),room:H(),roomDescription:H(),from:H(),fromName:H(),fromCwd:H()}),K({type:Y(`member_joined`),room:H(),agent:H()}),K({type:Y(`member_left`),room:H(),agent:H()}),K({type:Y(`room_members`),room:H(),members:G(Dl)}),K({type:Y(`member_status`),room:H(),agent:H(),status:yl}),K({type:Y(`delivery_status`),messageId:H(),agent:H(),status:El,room:H().optional()}),K({type:Y(`invite_declined`),room:H(),agent:H(),agentName:H(),reason:H()}),K({type:Y(`name_changed`),agent:H(),oldName:H(),newName:H()}),K({type:Y(`connection_request`),connectionId:H(),peerId:H(),dataPort:W(),name:H(),fingerprint:H()}),K({type:Y(`capability_request`),requestId:H(),capability:H(),scopeKind:H(),scopePath:H().optional(),requesterDevice:H()})]));X(K({code:H(),expiresAt:H(),deviceId:H(),signature:H().optional()})),X(Bc(`action`,[K({action:Y(`register`),name:H(),visibility:vl,tags:G(H())}),K({action:Y(`update`),visibility:vl.optional(),status:yl.optional(),name:H().optional(),tags:G(H()).optional()}),K({action:Y(`whoami`)}),K({action:Y(`web_url`)}),K({action:Y(`create_room`),name:H(),type:bl,description:H()}),K({action:Y(`list_rooms`)}),K({action:Y(`join_room`),room:H()}),K({action:Y(`leave_room`),room:H()}),K({action:Y(`send`),target:H(),content:H(),replyTo:H().optional(),streamingBehavior:xl.optional()}),K({action:Y(`dm`),target:H(),content:H(),streamingBehavior:xl.optional()}),K({action:Y(`list_agents`)}),K({action:Y(`read_room`),room:H(),since:H().optional()}),K({action:Y(`invite`),room:H(),agent:H()}),K({action:Y(`kick`),room:H(),agent:H()}),K({action:Y(`decline_invite`),room:H(),reason:H()}),K({action:Y(`destroy_room`),room:H()}),K({action:Y(`mesh_connect`),host:H(),port:W(),policy:H().optional()}),K({action:Y(`mesh_accept`),connectionId:H()}),K({action:Y(`mesh_reject`),connectionId:H(),reason:H()}),K({action:Y(`mesh_pending`)}),K({action:Y(`room_accept`),room:H(),requesterId:H()}),K({action:Y(`room_reject`),room:H(),requesterId:H(),reason:H().optional()}),K({action:Y(`room_pending`)}),K({action:Y(`capability_accept`),requestId:H(),expires:W(),delegationsRemaining:W().optional(),capability:H().optional()}),K({action:Y(`capability_reject`),requestId:H(),reason:H().optional()}),K({action:Y(`capability_pending`)}),K({action:Y(`mesh_discover`),method:H().optional()}),K({action:Y(`mesh_advertise`),method:H(),name:H(),port:W().optional(),adapter:H().optional()}),K({action:Y(`mesh_unadvertise`),id:H()}),K({action:Y(`mesh_interfaces`)}),K({action:Y(`mesh_listen`),host:H(),port:W().optional(),policy:H().optional()}),K({action:Y(`mesh_unlisten`),id:H()}),K({action:Y(`mesh_listeners`)}),K({action:Y(`mesh_set_visibility`),visibility:_l,adapter:H().optional()}),K({action:Y(`mesh_get_visibility`)}),K({action:Y(`gateway_trust`),device:H(),principal:jc().optional()}),K({action:Y(`gateway_untrust`),device:H(),principal:jc().optional()}),K({action:Y(`gateway_list_trusted`)}),K({action:Y(`gateway_generate_connection_code`),ttlMs:W().optional(),privateKey:H().optional(),passphrase:H().optional()}),K({action:Y(`gateway_redeem_connection_code`),code:H(),expiresAt:H(),device:H(),signature:H().optional(),publicKey:H().optional(),fingerprint:H().optional()}),K({action:Y(`query_version`),device:H()}),K({action:Y(`mesh_graph`)}),K({action:Y(`mesh_trace`),target:H(),timeoutMs:W().optional()})]));var Z=K({content:H(),isError:jc()}),kl=q([Y(`public`),Y(`private`),Y(`secret`)]),Al=K({kind:q([Y(`direct`),Y(`relay`)]),from:H(),to:H(),via:H().optional()}),jl=K({nodes:G(H()),edges:G(Al)}),Ml=K({relayed:jc(),hubAddress:H().optional()}),Nl=K({rttMs:W(),local:Ml,remote:Ml.optional(),outcome:K({result:H(),code:H().optional()}).loose()}),Pl=Bc(`type`,[K({type:Y(`agent_upsert`),agent:Sl}),K({type:Y(`agent_offline`),agentId:H()}),K({type:Y(`room_upsert`),room:Cl}),K({type:Y(`room_delete`),roomId:H()}),K({type:Y(`message_add`),roomId:H(),message:wl}),K({type:Y(`dm_add`),key:H(),message:Tl}),K({type:Y(`delivery`),agentId:H(),event:Ol})]),Fl=K({agents:J(H(),Sl),rooms:J(H(),Cl),messages:J(H(),G(wl)),dms:J(H(),G(Tl))}),Il=Bc(`kind`,[K({kind:Y(`state_sync`),state:Fl}),K({kind:Y(`state_patch`),patch:Pl}),K({kind:Y(`delivery`),event:Ol})]),Ll=K({endpoint:H(),keys:K({p256dh:H(),auth:H()})}),Rl={send:w.input(K({target:H(),content:H()})).output(Z),dm:w.input(K({target:H(),content:H()})).output(Z),joinRoom:w.input(K({room:H()})).output(Z),leaveRoom:w.input(K({room:H().optional()})).output(Z),createRoom:w.input(K({name:H(),type:kl,description:H().optional()})).output(Z),listRooms:w.input(K({})).output(Z),listAgents:w.input(K({})).output(Z),readRoom:w.input(K({room:H().optional()})).output(Z),destroyRoom:w.input(K({room:H()})).output(Z),invite:w.input(K({room:H(),agent:H()})).output(Z),declineInvite:w.input(K({room:H(),reason:H()})).output(Z),kick:w.input(K({room:H(),agent:H()})).output(Z),renameAgent:w.input(K({agent:H(),name:H()})).output(Z),pushSubscribe:w.input(K({subscription:Ll,agentId:H().optional()})).output(Z),pushUnsubscribe:w.input(K({agentId:H().optional()})).output(Z),subscribeEvents:w.input(K({lastEventId:H().optional()})).output(pn(Il)),getRoomMessages:w.input(K({room:H(),since:H().optional()})).output(G(wl)),getMeshGraph:w.input(K({})).output(jl),getMeshTrace:w.input(K({target:H(),timeoutMs:W().optional()})).output(Nl),disconnect:w.input(K({})).output(K({}))};function zl(e){if(typeof e!=`object`||!e||!(`endpoint`in e)||typeof e.endpoint!=`string`||!(`keys`in e))return!1;let t=e.keys;return!(typeof t!=`object`||!t||!(`p256dh`in t)||typeof t.p256dh!=`string`||!(`auth`in t)||typeof t.auth!=`string`)}async function Bl(e,t){let n=e=>{let n=t[e];return typeof n==`string`?n:``},r=e=>{let n=t[e];return typeof n==`string`?n:void 0},i=()=>{let e=t.type;return e===`public`||e===`private`||e===`secret`?e:`public`};switch(t.action){case`send`:return e.send({target:n(`target`),content:n(`content`)});case`dm`:return e.dm({target:n(`target`),content:n(`content`)});case`join_room`:return e.joinRoom({room:n(`room`)});case`leave_room`:return e.leaveRoom({room:r(`room`)});case`create_room`:return e.createRoom({name:n(`name`),type:i(),description:r(`description`)});case`list_rooms`:return e.listRooms({});case`list_agents`:return e.listAgents({});case`read_room`:return e.readRoom({room:r(`room`)});case`destroy_room`:return e.destroyRoom({room:n(`room`)});case`invite`:return e.invite({room:n(`room`),agent:n(`agent`)});case`decline_invite`:return e.declineInvite({room:n(`room`),reason:n(`reason`)});case`kick`:return e.kick({room:n(`room`),agent:n(`agent`)});case`rename_agent`:return e.renameAgent({agent:n(`agent`),name:n(`name`)});case`push_subscribe`:{let n=t.subscription;return zl(n)?e.pushSubscribe({subscription:n,agentId:r(`agentId`)}):{content:`Invalid push subscription`,isError:!0}}case`push_unsubscribe`:return e.pushUnsubscribe({agentId:r(`agentId`)});default:return{content:`Unknown action: ${String(t.action)}`,isError:!0}}}var Vl=new Map,Hl=new Map,Ul=new Map,Wl=new Map;function Gl(e){for(let[t,n]of Object.entries(e.agents))Vl.set(t,n);for(let[t,n]of Object.entries(e.rooms))Hl.set(t,n);for(let[t,n]of Object.entries(e.messages))Ul.set(t,n);for(let[t,n]of Object.entries(e.dms))Wl.set(t,n)}function Kl(e){switch(e.type){case`agent_upsert`:Vl.set(e.agent.id,e.agent);break;case`agent_offline`:{let t=Vl.get(e.agentId);t&&(t.status=`offline`,Vl.set(e.agentId,t));break}case`room_upsert`:Hl.set(e.room.id,e.room);break;case`room_delete`:Hl.delete(e.roomId);break;case`message_add`:{let t=Ul.get(e.roomId)??[];t.push(e.message),Ul.set(e.roomId,t);break}case`dm_add`:{let t=Wl.get(e.key)??[];t.push(e.message),Wl.set(e.key,t);break}case`delivery`:break;case`message_read`:if(e.room!==void 0){let t=Ul.get(e.room);if(t){let n=t.find(t=>t.id===e.messageId);n&&!n.readBy.includes(e.readBy)&&n.readBy.push(e.readBy)}}else for(let[,t]of Wl){let n=t.find(t=>t.id===e.messageId);n&&!n.readBy.includes(e.readBy)&&n.readBy.push(e.readBy)}}}function ql(){return{agents:[...Vl.values()],rooms:[...Hl.values()]}}var Jl,Yl=0,Xl=new Xn,Zl=1e3,Ql=3e4;function $l(e){let t=Ct(new nn({connect:async()=>{let t=new WebSocket(e);return t.addEventListener(`open`,()=>{nu({type:`connected`})}),t.addEventListener(`close`,()=>{nu({type:`disconnected`})}),new Promise((e,n)=>{t.addEventListener(`open`,()=>{e(t)},{once:!0}),t.addEventListener(`error`,n,{once:!0})})},reconnect:{enabled:!0,delay:e=>e.attempt===1?0:Math.min(Zl*2**e.attempt,Ql)},plugins:[new rn]}));Jl=t,eu(t,++Yl)}async function eu(e,t){let n;for(;t===Yl;)try{let r=await e.subscribeEvents(n===void 0?{}:{lastEventId:n});for await(let e of r){if(t!==Yl)return;let r=qe(e);switch(r?.id!==void 0&&(n=r.id),Xl.publish(e),e.kind){case`state_sync`:Gl(e.state),nu({type:`state`,state:ql()});break;case`state_patch`:Kl(e.patch),nu({type:`patch`,patch:e.patch})}}return}catch{}}var tu=new Set;function nu(e){let t=JSON.stringify(e);for(let e of tu)try{e.postMessage(t)}catch{}}function ru(e){switch(e.type){case`init`:$l(e.url);break;case`action`:{let t=Jl;if(!t)break;let n=e.id;Bl(t,e.action).then(e=>{nu({type:`actionResult`,id:n,result:e})}).catch(e=>{nu({type:`actionError`,id:n,message:e instanceof Error?e.message:String(e)})});break}case`getState`:nu({type:`state`,state:ql()})}}function iu(e){if(typeof e!=`object`||!e||!(`type`in e))return!1;let t=e.type;return typeof t==`string`&&(t===`init`||t===`action`||t===`getState`)}function au(){return{agents:Object.fromEntries(Vl),rooms:Object.fromEntries(Hl),messages:Object.fromEntries(Ul),dms:Object.fromEntries(Wl)}}async function Q(e){return Jl?Bl(Jl,e):{content:`Not connected to mesh yet`,isError:!0}}function ou(){if(!Jl)throw Error(`Not connected to mesh yet`);return Jl}var $=Fn(Rl).$context(),su={};su.current=new qn({send:$.send.handler(async({input:e})=>Q({action:`send`,...e})),dm:$.dm.handler(async({input:e})=>Q({action:`dm`,...e})),joinRoom:$.joinRoom.handler(async({input:e})=>Q({action:`join_room`,room:e.room})),leaveRoom:$.leaveRoom.handler(async({input:e})=>Q({action:`leave_room`,room:e.room})),createRoom:$.createRoom.handler(async({input:e})=>Q({action:`create_room`,name:e.name,type:e.type,description:e.description})),listRooms:$.listRooms.handler(async()=>Q({action:`list_rooms`})),listAgents:$.listAgents.handler(async()=>Q({action:`list_agents`})),readRoom:$.readRoom.handler(async({input:e})=>Q({action:`read_room`,room:e.room})),destroyRoom:$.destroyRoom.handler(async({input:e})=>Q({action:`destroy_room`,room:e.room})),invite:$.invite.handler(async({input:e})=>Q({action:`invite`,room:e.room,agent:e.agent})),declineInvite:$.declineInvite.handler(async({input:e})=>Q({action:`decline_invite`,room:e.room,reason:e.reason})),kick:$.kick.handler(async({input:e})=>Q({action:`kick`,room:e.room,agent:e.agent})),renameAgent:$.renameAgent.handler(async({input:e})=>Q({action:`rename_agent`,agent:e.agent,name:e.name})),pushSubscribe:$.pushSubscribe.handler(async({input:e})=>Q({action:`push_subscribe`,subscription:e.subscription,agentId:e.agentId})),pushUnsubscribe:$.pushUnsubscribe.handler(async({input:e})=>Q({action:`push_unsubscribe`,agentId:e.agentId})),getRoomMessages:$.getRoomMessages.handler(async({input:e})=>ou().getRoomMessages(e)),getMeshGraph:$.getMeshGraph.handler(async()=>ou().getMeshGraph({})),getMeshTrace:$.getMeshTrace.handler(async({input:e})=>ou().getMeshTrace(e)),subscribeEvents:$.subscribeEvents.handler(async function*({input:e,signal:t}){e.lastEventId===void 0&&(yield{kind:`state_sync`,state:au()}),yield*Xl.subscribe({...t?{signal:t}:{},...e.lastEventId===void 0?{}:{lastEventId:e.lastEventId}})}),disconnect:$.disconnect.handler(async({context:e})=>(setTimeout(()=>{su.current?.close(e.port)},0),{}))});function cu(e){su.current?.upgrade(e,{context:{port:e}})}return typeof self<`u`&&self.addEventListener(`connect`,e=>{let t=e.ports[0];if(t!==void 0){tu.add(t);try{t.postMessage(JSON.stringify({type:`state`,state:ql()}))}catch{}t.onmessage=e=>{let t=JSON.parse(typeof e.data==`string`?e.data:String(e.data));iu(t)&&ru(t)},cu(t)}}),e.agents=Vl,e.applyPatch=Kl,e.applyStateSync=Gl,e.connect=$l,e.dms=Wl,e.getStateSnapshot=ql,e.localPublisher=Xl,e.messages=Ul,e.ports=tu,e.rooms=Hl,e.upgradeTabRpcPort=cu,e})({});
@@ -1 +1 @@
1
- var e=`agent-comms-v1`,t=[{"revision":"dbe8864d0014e94cf324e2a82ee5563c","url":"mesh-worker.js"},{"revision":"f1ee3afb8c9e8f0d7315fd93d6457316","url":"index.html"},{"revision":"b597247ded168538cc8fa228b7240a48","url":"bundle.js"}].map(e=>e.url);self.addEventListener(`install`,n=>{n.waitUntil(self.caches.open(e).then(async e=>e.addAll(t)).then(async()=>self.skipWaiting()))}),self.addEventListener(`activate`,t=>{t.waitUntil(self.caches.keys().then(async t=>Promise.all(t.filter(t=>t!==e).map(async e=>self.caches.delete(e)))))});var n=200,r=300;function i(e,t){return e.method===`GET`&&t.status>=n&&t.status<r}self.addEventListener(`fetch`,t=>{if(new URL(t.request.url).pathname.startsWith(`/api/`)){t.respondWith(fetch(t.request).then(n=>{if(i(t.request,n)){let r=n.clone();self.caches.open(e).then(async e=>e.put(t.request,r))}return n}).catch(async()=>self.caches.open(e).then(async e=>e.match(t.request)).then(e=>e??new Response(`Offline`,{status:503}))));return}t.respondWith(self.caches.open(e).then(async e=>e.match(t.request)).then(async n=>n||fetch(t.request).then(n=>{if(i(t.request,n)){let r=n.clone();self.caches.open(e).then(async e=>e.put(t.request,r))}return n})))}),self.addEventListener(`push`,e=>{let t=`Agent Comms`,n=`New message`;if(e.data)try{let r=e.data.json();typeof r.title==`string`&&(t=r.title),typeof r.body==`string`&&(n=r.body)}catch{let t=e.data.text();t&&(n=t)}e.waitUntil(self.registration.showNotification(t,{body:n,data:{url:self.location.origin}}))}),self.addEventListener(`notificationclick`,e=>{e.notification.close();let t=e.notification.data,n=typeof t==`object`&&t&&`url`in t&&typeof t.url==`string`?t.url:self.location.origin;e.waitUntil(self.clients.matchAll({type:`window`,includeUncontrolled:!0}).then(async e=>{for(let t of e)if(t.url===n&&`focus`in t)return t.focus();return self.clients.openWindow(n)}))});
1
+ var e=`agent-comms-v1`,t=[{"revision":"25bade71585c5081ef25b89a3ad23265","url":"mesh-worker.js"},{"revision":"f1ee3afb8c9e8f0d7315fd93d6457316","url":"index.html"},{"revision":"49a006ce3b0a139a0f1b325e8c1b48d3","url":"bundle.js"}].map(e=>e.url);self.addEventListener(`install`,n=>{n.waitUntil(self.caches.open(e).then(async e=>e.addAll(t)).then(async()=>self.skipWaiting()))}),self.addEventListener(`activate`,t=>{t.waitUntil(self.caches.keys().then(async t=>Promise.all(t.filter(t=>t!==e).map(async e=>self.caches.delete(e)))))});var n=200,r=300;function i(e,t){return e.method===`GET`&&t.status>=n&&t.status<r}self.addEventListener(`fetch`,t=>{if(new URL(t.request.url).pathname.startsWith(`/api/`)){t.respondWith(fetch(t.request).then(n=>{if(i(t.request,n)){let r=n.clone();self.caches.open(e).then(async e=>e.put(t.request,r))}return n}).catch(async()=>self.caches.open(e).then(async e=>e.match(t.request)).then(e=>e??new Response(`Offline`,{status:503}))));return}t.respondWith(self.caches.open(e).then(async e=>e.match(t.request)).then(async n=>n||fetch(t.request).then(n=>{if(i(t.request,n)){let r=n.clone();self.caches.open(e).then(async e=>e.put(t.request,r))}return n})))}),self.addEventListener(`push`,e=>{let t=`Agent Comms`,n=`New message`;if(e.data)try{let r=e.data.json();typeof r.title==`string`&&(t=r.title),typeof r.body==`string`&&(n=r.body)}catch{let t=e.data.text();t&&(n=t)}e.waitUntil(self.registration.showNotification(t,{body:n,data:{url:self.location.origin}}))}),self.addEventListener(`notificationclick`,e=>{e.notification.close();let t=e.notification.data,n=typeof t==`object`&&t&&`url`in t&&typeof t.url==`string`?t.url:self.location.origin;e.waitUntil(self.clients.matchAll({type:`window`,includeUncontrolled:!0}).then(async e=>{for(let t of e)if(t.url===n&&`focus`in t)return t.focus();return self.clients.openWindow(n)}))});
@@ -3,7 +3,8 @@
3
3
  *
4
4
  * Renders sidebar + chat area inside an AppShell. Receives state and action callbacks from the imperative shell in main.tsx.
5
5
  */
6
- import type { Agent, DisplayMessage, MeshGraph, Room } from "../types.js";
6
+ import type { Agent, DisplayMessage, Room } from "../types.js";
7
+ import type { MeshClient } from "../mesh-client.js";
7
8
  export interface AppProps {
8
9
  rooms: readonly Room[];
9
10
  agents: readonly Agent[];
@@ -11,7 +12,7 @@ export interface AppProps {
11
12
  dmTarget: string | undefined;
12
13
  messages: readonly DisplayMessage[];
13
14
  connected: boolean;
14
- meshGraph: MeshGraph | undefined;
15
+ queryUtils: MeshClient["queryUtils"];
15
16
  onJoinRoom: (roomId: string) => void;
16
17
  onSelectAgent: (agentId: string) => void;
17
18
  onRenameAgent: (agentId: string, newName: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/App.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAO1E,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IACvB,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC;IACjC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,YAAY,EAAE,CACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,EACrC,WAAW,EAAE,MAAM,KAChB,IAAI,CAAC;IACV,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,wBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,+BAuDlC"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/App.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAOpD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IACvB,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,YAAY,EAAE,CACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,EACrC,WAAW,EAAE,MAAM,KAChB,IAAI,CAAC;IACV,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,wBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,+BAuDlC"}
@@ -20,6 +20,6 @@ export function App(props) {
20
20
  }, children: [_jsxs(AppShell.Navbar, { children: [_jsx(Sidebar, { rooms: props.rooms, agents: props.agents, currentRoom: props.currentRoom, onJoinRoom: props.onJoinRoom, onSelectAgent: props.onSelectAgent, onRenameAgent: props.onRenameAgent, onCreateRoom: props.onCreateRoom, onJoinRoomInput: props.onJoinRoomInput }), _jsx(SegmentedControl, { m: "xs", size: "xs", fullWidth: true, value: mainView, onChange: setMainView, data: [
21
21
  { label: "Chat", value: "chat" },
22
22
  { label: "Mesh", value: "mesh" },
23
- ] })] }), _jsx(AppShell.Main, { h: "100vh", children: mainView === "chat" ? (_jsx(ChatArea, { messages: props.messages, rooms: props.rooms, currentRoom: props.currentRoom, dmTarget: props.dmTarget, connected: props.connected, sidebarOpened: navOpened, onToggleSidebar: toggleNav, onSendAction: props.onSendAction, onLeaveRoom: props.onLeaveRoom, onConnectToMesh: props.onConnectToMesh })) : (_jsx(MeshPanel, { graph: props.meshGraph })) })] }));
23
+ ] })] }), _jsx(AppShell.Main, { h: "100vh", children: mainView === "chat" ? (_jsx(ChatArea, { messages: props.messages, rooms: props.rooms, currentRoom: props.currentRoom, dmTarget: props.dmTarget, connected: props.connected, sidebarOpened: navOpened, onToggleSidebar: toggleNav, onSendAction: props.onSendAction, onLeaveRoom: props.onLeaveRoom, onConnectToMesh: props.onConnectToMesh })) : (_jsx(MeshPanel, { queryUtils: props.queryUtils })) })] }));
24
24
  }
25
25
  //# sourceMappingURL=App.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/App.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AA0BvC,MAAM,UAAU,GAAG,CAAC,KAAe;IACjC,MAAM,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAW,MAAM,CAAC,CAAC;IAE3D,OAAO,CACL,MAAC,QAAQ,IACP,MAAM,EAAE;YACN,KAAK,EAAE,GAAG;YACV,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE;SACvD,aAED,MAAC,QAAQ,CAAC,MAAM,eACd,KAAC,OAAO,IACN,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,eAAe,EAAE,KAAK,CAAC,eAAe,GACtC,EACF,KAAC,gBAAgB,IACf,CAAC,EAAC,IAAI,EACN,IAAI,EAAC,IAAI,EACT,SAAS,QACT,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE;4BACJ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;4BAChC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;yBACjC,GACD,IACc,EAClB,KAAC,QAAQ,CAAC,IAAI,IAAC,CAAC,EAAC,OAAO,YACrB,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,CACrB,KAAC,QAAQ,IACP,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,aAAa,EAAE,SAAS,EACxB,eAAe,EAAE,SAAS,EAC1B,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,eAAe,EAAE,KAAK,CAAC,eAAe,GACtC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,IAAC,KAAK,EAAE,KAAK,CAAC,SAAS,GAAI,CACtC,GACa,IACP,CACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/App.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AA0BvC,MAAM,UAAU,GAAG,CAAC,KAAe;IACjC,MAAM,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAW,MAAM,CAAC,CAAC;IAE3D,OAAO,CACL,MAAC,QAAQ,IACP,MAAM,EAAE;YACN,KAAK,EAAE,GAAG;YACV,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE;SACvD,aAED,MAAC,QAAQ,CAAC,MAAM,eACd,KAAC,OAAO,IACN,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,eAAe,EAAE,KAAK,CAAC,eAAe,GACtC,EACF,KAAC,gBAAgB,IACf,CAAC,EAAC,IAAI,EACN,IAAI,EAAC,IAAI,EACT,SAAS,QACT,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE;4BACJ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;4BAChC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;yBACjC,GACD,IACc,EAClB,KAAC,QAAQ,CAAC,IAAI,IAAC,CAAC,EAAC,OAAO,YACrB,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,CACrB,KAAC,QAAQ,IACP,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,aAAa,EAAE,SAAS,EACxB,eAAe,EAAE,SAAS,EAC1B,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,eAAe,EAAE,KAAK,CAAC,eAAe,GACtC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,IAAC,UAAU,EAAE,KAAK,CAAC,UAAU,GAAI,CAC5C,GACa,IACP,CACZ,CAAC;AACJ,CAAC"}
@@ -1,12 +1,13 @@
1
1
  /**
2
2
  * MeshPanel — the mesh view: connection graph plus path-trace (agent-comms#201).
3
3
  *
4
- * Owns the trace request lifecycle (loading/error/result) since it's a genuine on-demand network round trip, not reactive state the way agents/rooms/the graph itself are. Clicking a node in the graph selects it as the trace target, so the two sub-views share one selection.
4
+ * Both the graph and the trace are genuine one-shot reads (agent-comms#206): the graph has no real-time channel of its own, and a trace is a single on-demand network round trip, not reactive state. useQuery/useMutation own their own loading/error/result lifecycles here, replacing what used to be three separate hand-rolled useState calls for the trace and a manually-refreshed prop for the graph.
5
5
  */
6
- import type { MeshGraph } from "../types.js";
6
+ import type { MeshClient } from "../mesh-client.js";
7
7
  interface MeshPanelProps {
8
- graph: MeshGraph | undefined;
8
+ /** Narrowed to just the two utils this component actually uses, the same Pick-based narrowing dispatch-action.ts's ActionDispatchClient already established for the same "component/function only needs a slice of the full client" shape. */
9
+ queryUtils: Pick<MeshClient["queryUtils"], "getMeshGraph" | "getMeshTrace">;
9
10
  }
10
- export declare function MeshPanel({ graph }: MeshPanelProps): import("react").JSX.Element;
11
+ export declare function MeshPanel({ queryUtils }: MeshPanelProps): import("react").JSX.Element;
11
12
  export {};
12
13
  //# sourceMappingURL=MeshPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MeshPanel.d.ts","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshPanel.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,aAAa,CAAC;AAI9D,UAAU,cAAc;IACtB,KAAK,EAAE,SAAS,GAAG,SAAS,CAAC;CAC9B;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,+BA6DlD"}
1
+ {"version":3,"file":"MeshPanel.d.ts","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshPanel.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,UAAU,cAAc;IACtB,8OAA8O;IAC9O,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,cAAc,GAAG,cAAc,CAAC,CAAC;CAC7E;AAED,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,EAAE,cAAc,+BAuDvD"}
@@ -2,38 +2,30 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /**
3
3
  * MeshPanel — the mesh view: connection graph plus path-trace (agent-comms#201).
4
4
  *
5
- * Owns the trace request lifecycle (loading/error/result) since it's a genuine on-demand network round trip, not reactive state the way agents/rooms/the graph itself are. Clicking a node in the graph selects it as the trace target, so the two sub-views share one selection.
5
+ * Both the graph and the trace are genuine one-shot reads (agent-comms#206): the graph has no real-time channel of its own, and a trace is a single on-demand network round trip, not reactive state. useQuery/useMutation own their own loading/error/result lifecycles here, replacing what used to be three separate hand-rolled useState calls for the trace and a manually-refreshed prop for the graph.
6
6
  */
7
7
  import { Stack, Tabs, Text } from "@mantine/core";
8
+ import { useMutation, useQuery } from "@tanstack/react-query";
8
9
  import { useState } from "react";
9
- import { fetchMeshTrace } from "../api.js";
10
10
  import { MeshGraphView } from "./MeshGraphView.js";
11
11
  import { MeshTraceView } from "./MeshTraceView.js";
12
- export function MeshPanel({ graph }) {
12
+ export function MeshPanel({ queryUtils }) {
13
13
  const [selectedTarget, setSelectedTarget] = useState(undefined);
14
- const [loading, setLoading] = useState(false);
15
- const [error, setError] = useState(undefined);
16
- const [result, setResult] = useState(undefined);
14
+ const graphQuery = useQuery(queryUtils.getMeshGraph.queryOptions());
15
+ const traceMutation = useMutation(queryUtils.getMeshTrace.mutationOptions());
17
16
  function handleTrace() {
18
17
  if (selectedTarget === undefined)
19
18
  return;
20
- setLoading(true);
21
- setError(undefined);
22
- setResult(undefined);
23
- fetchMeshTrace(selectedTarget)
24
- .then((traceResult) => {
25
- setResult(traceResult);
26
- })
27
- .catch((err) => {
28
- setError(err instanceof Error ? err.message : String(err));
29
- })
30
- .finally(() => {
31
- setLoading(false);
32
- });
19
+ traceMutation.mutate({ target: selectedTarget });
33
20
  }
21
+ const graph = graphQuery.data;
34
22
  if (graph === undefined) {
35
23
  return (_jsx(Text, { c: "dimmed", p: "md", children: "Mesh graph is not available on this connection." }));
36
24
  }
37
- return (_jsxs(Tabs, { defaultValue: "graph", children: [_jsxs(Tabs.List, { children: [_jsx(Tabs.Tab, { value: "graph", children: "Graph" }), _jsx(Tabs.Tab, { value: "trace", children: "Trace" })] }), _jsx(Tabs.Panel, { value: "graph", children: _jsx(MeshGraphView, { graph: graph, selectedDevice: selectedTarget, onSelectDevice: setSelectedTarget }) }), _jsx(Tabs.Panel, { value: "trace", children: _jsx(Stack, { children: _jsx(MeshTraceView, { targets: graph.nodes, selectedTarget: selectedTarget, onSelectTarget: setSelectedTarget, onTrace: handleTrace, loading: loading, error: error, result: result }) }) })] }));
25
+ return (_jsxs(Tabs, { defaultValue: "graph", children: [_jsxs(Tabs.List, { children: [_jsx(Tabs.Tab, { value: "graph", children: "Graph" }), _jsx(Tabs.Tab, { value: "trace", children: "Trace" })] }), _jsx(Tabs.Panel, { value: "graph", children: _jsx(MeshGraphView, { graph: graph, selectedDevice: selectedTarget, onSelectDevice: setSelectedTarget }) }), _jsx(Tabs.Panel, { value: "trace", children: _jsx(Stack, { children: _jsx(MeshTraceView, { targets: graph.nodes, selectedTarget: selectedTarget, onSelectTarget: setSelectedTarget, onTrace: handleTrace, loading: traceMutation.isPending, error: traceMutation.error !== null
26
+ ? traceMutation.error instanceof Error
27
+ ? traceMutation.error.message
28
+ : "Unknown error"
29
+ : undefined, result: traceMutation.data }) }) })] }));
38
30
  }
39
31
  //# sourceMappingURL=MeshPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MeshPanel.js","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshPanel.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMnD,MAAM,UAAU,SAAS,CAAC,EAAE,KAAK,EAAkB;IACjD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAClD,SAAS,CACV,CAAC;IACF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAClE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA8B,SAAS,CAAC,CAAC;IAE7E,SAAS,WAAW;QAClB,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO;QACzC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,SAAS,CAAC,SAAS,CAAC,CAAC;QACrB,cAAc,CAAC,cAAc,CAAC;aAC3B,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;YACpB,SAAS,CAAC,WAAW,CAAC,CAAC;QACzB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;YACtB,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CACL,KAAC,IAAI,IAAC,CAAC,EAAC,QAAQ,EAAC,CAAC,EAAC,IAAI,gEAEhB,CACR,CAAC;IACJ,CAAC;IAED,OAAO,CACL,MAAC,IAAI,IAAC,YAAY,EAAC,OAAO,aACxB,MAAC,IAAI,CAAC,IAAI,eACR,KAAC,IAAI,CAAC,GAAG,IAAC,KAAK,EAAC,OAAO,sBAAiB,EACxC,KAAC,IAAI,CAAC,GAAG,IAAC,KAAK,EAAC,OAAO,sBAAiB,IAC9B,EACZ,KAAC,IAAI,CAAC,KAAK,IAAC,KAAK,EAAC,OAAO,YACvB,KAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,iBAAiB,GACjC,GACS,EACb,KAAC,IAAI,CAAC,KAAK,IAAC,KAAK,EAAC,OAAO,YACvB,KAAC,KAAK,cACJ,KAAC,aAAa,IACZ,OAAO,EAAE,KAAK,CAAC,KAAK,EACpB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,iBAAiB,EACjC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,GACd,GACI,GACG,IACR,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"MeshPanel.js","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshPanel.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAOnD,MAAM,UAAU,SAAS,CAAC,EAAE,UAAU,EAAkB;IACtD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAClD,SAAS,CACV,CAAC;IACF,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC,CAAC;IAE7E,SAAS,WAAW;QAClB,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO;QACzC,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC;IAC9B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,CACL,KAAC,IAAI,IAAC,CAAC,EAAC,QAAQ,EAAC,CAAC,EAAC,IAAI,gEAEhB,CACR,CAAC;IACJ,CAAC;IAED,OAAO,CACL,MAAC,IAAI,IAAC,YAAY,EAAC,OAAO,aACxB,MAAC,IAAI,CAAC,IAAI,eACR,KAAC,IAAI,CAAC,GAAG,IAAC,KAAK,EAAC,OAAO,sBAAiB,EACxC,KAAC,IAAI,CAAC,GAAG,IAAC,KAAK,EAAC,OAAO,sBAAiB,IAC9B,EACZ,KAAC,IAAI,CAAC,KAAK,IAAC,KAAK,EAAC,OAAO,YACvB,KAAC,aAAa,IACZ,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,iBAAiB,GACjC,GACS,EACb,KAAC,IAAI,CAAC,KAAK,IAAC,KAAK,EAAC,OAAO,YACvB,KAAC,KAAK,cACJ,KAAC,aAAa,IACZ,OAAO,EAAE,KAAK,CAAC,KAAK,EACpB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,iBAAiB,EACjC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,aAAa,CAAC,SAAS,EAChC,KAAK,EACH,aAAa,CAAC,KAAK,KAAK,IAAI;4BAC1B,CAAC,CAAC,aAAa,CAAC,KAAK,YAAY,KAAK;gCACpC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO;gCAC7B,CAAC,CAAC,eAAe;4BACnB,CAAC,CAAC,SAAS,EAEf,MAAM,EAAE,aAAa,CAAC,IAAI,GAC1B,GACI,GACG,IACR,CACR,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MeshTraceView.d.ts","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshTraceView.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,UAAU,kBAAkB;IAC1B,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC;CACrC;AAcD,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,cAAc,EACd,cAAc,EACd,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,GACP,EAAE,kBAAkB,+BAqDpB"}
1
+ {"version":3,"file":"MeshTraceView.d.ts","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshTraceView.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,UAAU,kBAAkB;IAC1B,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC;CACrC;AAYD,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,cAAc,EACd,cAAc,EACd,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,GACP,EAAE,kBAAkB,+BAqDpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"MeshTraceView.js","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshTraceView.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAa1E,mIAAmI;AACnI,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B,SAAS,YAAY,CACnB,IAAyD;IAEzD,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,OAAO,QAAQ,CAAC;IACnC,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS;QAClC,CAAC,CAAC,eAAe,IAAI,CAAC,UAAU,EAAE;QAClC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAC5B,OAAO,EACP,cAAc,EACd,cAAc,EACd,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,GACa;IACnB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC;KACrC,CAAC,CAAC,CAAC;IAEJ,OAAO,CACL,MAAC,KAAK,IAAC,CAAC,EAAC,IAAI,EAAC,GAAG,EAAC,IAAI,aACpB,MAAC,KAAK,IAAC,KAAK,EAAC,UAAU,EAAC,GAAG,EAAC,IAAI,aAC9B,KAAC,MAAM,IACL,KAAK,EAAC,eAAe,EACrB,WAAW,EAAC,iBAAiB,EAC7B,IAAI,EAAC,IAAI,EACT,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,cAAc,IAAI,IAAI,EAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;4BAClB,IAAI,KAAK,KAAK,IAAI;gCAAE,cAAc,CAAC,KAAK,CAAC,CAAC;wBAC5C,CAAC,GACD,EACF,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,cAAc,KAAK,SAAS,IAAI,OAAO,EACjD,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,sBAGT,IACH,EAEP,KAAK,KAAK,SAAS,IAAI,KAAC,IAAI,IAAC,CAAC,EAAC,KAAK,YAAE,KAAK,GAAQ,EAEnD,MAAM,KAAK,SAAS,IAAI,CACvB,MAAC,KAAK,IAAC,GAAG,EAAE,CAAC,aACX,MAAC,KAAK,IAAC,GAAG,EAAC,IAAI,aACb,KAAC,KAAK,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,YAC3D,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI;oCAC7B,CAAC,CAAC,IAAI;oCACN,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAC9B,EACR,MAAC,IAAI,IAAC,IAAI,EAAC,IAAI,aAAE,MAAM,CAAC,KAAK,qBAAqB,IAC5C,EACR,MAAC,IAAI,IAAC,IAAI,EAAC,IAAI,EAAC,CAAC,EAAC,QAAQ,wBAChB,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,IAC7B,EACN,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,CAC9B,MAAC,IAAI,IAAC,IAAI,EAAC,IAAI,EAAC,CAAC,EAAC,QAAQ,yBACf,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAC/B,CACR,IACK,CACT,IACK,CACT,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"MeshTraceView.js","sourceRoot":"","sources":["../../../../../../src/bridges/user/web/frontend/components/MeshTraceView.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAa1E,mIAAmI;AACnI,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B,SAAS,YAAY,CAAC,IAAwC;IAC5D,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,OAAO,QAAQ,CAAC;IACnC,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS;QAClC,CAAC,CAAC,eAAe,IAAI,CAAC,UAAU,EAAE;QAClC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAC5B,OAAO,EACP,cAAc,EACd,cAAc,EACd,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,GACa;IACnB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACnC,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC;KACrC,CAAC,CAAC,CAAC;IAEJ,OAAO,CACL,MAAC,KAAK,IAAC,CAAC,EAAC,IAAI,EAAC,GAAG,EAAC,IAAI,aACpB,MAAC,KAAK,IAAC,KAAK,EAAC,UAAU,EAAC,GAAG,EAAC,IAAI,aAC9B,KAAC,MAAM,IACL,KAAK,EAAC,eAAe,EACrB,WAAW,EAAC,iBAAiB,EAC7B,IAAI,EAAC,IAAI,EACT,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,cAAc,IAAI,IAAI,EAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;4BAClB,IAAI,KAAK,KAAK,IAAI;gCAAE,cAAc,CAAC,KAAK,CAAC,CAAC;wBAC5C,CAAC,GACD,EACF,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,cAAc,KAAK,SAAS,IAAI,OAAO,EACjD,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,sBAGT,IACH,EAEP,KAAK,KAAK,SAAS,IAAI,KAAC,IAAI,IAAC,CAAC,EAAC,KAAK,YAAE,KAAK,GAAQ,EAEnD,MAAM,KAAK,SAAS,IAAI,CACvB,MAAC,KAAK,IAAC,GAAG,EAAE,CAAC,aACX,MAAC,KAAK,IAAC,GAAG,EAAC,IAAI,aACb,KAAC,KAAK,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,YAC3D,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI;oCAC7B,CAAC,CAAC,IAAI;oCACN,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAC9B,EACR,MAAC,IAAI,IAAC,IAAI,EAAC,IAAI,aAAE,MAAM,CAAC,KAAK,qBAAqB,IAC5C,EACR,MAAC,IAAI,IAAC,IAAI,EAAC,IAAI,EAAC,CAAC,EAAC,QAAQ,wBAChB,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,IAC7B,EACN,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,CAC9B,MAAC,IAAI,IAAC,IAAI,EAAC,IAAI,EAAC,CAAC,EAAC,QAAQ,yBACf,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,IAC/B,CACR,IACK,CACT,IACK,CACT,CAAC;AACJ,CAAC"}
@@ -7,9 +7,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
7
7
  import mantineStyles from "@mantine/core/styles.css?inline";
8
8
  import { createRoot } from "react-dom/client";
9
9
  import { MantineProvider } from "@mantine/core";
10
+ import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
10
11
  import { useEffect } from "react";
11
12
  import { App } from "./components/App.js";
12
- import { fetchAgents, fetchMeshGraph, fetchRoomMessages, fetchRooms, } from "./api.js";
13
13
  import { parseInput, routeAction } from "./input.js";
14
14
  import { State } from "./state.js";
15
15
  import { useClientState } from "./use-client-state.js";
@@ -34,13 +34,15 @@ if (rootEl === null) {
34
34
  // State
35
35
  // ---------------------------------------------------------------------------
36
36
  const state = new State();
37
+ /** Backs the three structured one-shot reads (agent-comms#206) -- getRoomMessages/getMeshGraph/getMeshTrace, via meshClient.queryUtils. */
38
+ const queryClient = new QueryClient();
37
39
  // ---------------------------------------------------------------------------
38
40
  // Mesh client — real-time state via SharedWorker
39
41
  // ---------------------------------------------------------------------------
40
42
  const meshClient = new MeshClient();
41
43
  let wasConnected = false;
42
44
  meshClient.subscribe((meshState) => {
43
- // Apply real-time mesh state updates on top of the REST-fetched baseline. The MeshClient delivers authoritative state from the mesh worker, which maintains a local copy of all agents and rooms.
45
+ // agents/rooms are already fully real-time via subscribeEvents' state_sync/state_patch stream (agent-comms#206) -- no REST re-fetch needed on top of this.
44
46
  if (meshState.agents.length > 0) {
45
47
  state.setAgents(meshState.agents);
46
48
  }
@@ -66,7 +68,7 @@ meshClient.onDelivery((event) => {
66
68
  event.type === "member_left" ||
67
69
  event.type === "member_status" ||
68
70
  event.type === "name_changed") {
69
- void refreshState();
71
+ void invalidateMeshGraph();
70
72
  }
71
73
  });
72
74
  // Don't auto-connect the MeshClient on first load. The user must explicitly connect to avoid Chrome's "access device" prompt appearing before the user understands the UI. meshClient.connect() is called from onConnectToMesh().
@@ -86,36 +88,25 @@ async function sendAction(action) {
86
88
  text: result.isError ? `Error: ${result.content}` : result.content,
87
89
  });
88
90
  if (!result.isError) {
89
- void refreshState();
91
+ void invalidateMeshGraph();
90
92
  }
91
93
  }
92
- async function refreshState() {
93
- if (!isLocalServer)
94
- return;
95
- const [agents, rooms] = await Promise.all([fetchAgents(), fetchRooms()]);
96
- state.setAgents(agents);
97
- state.setRooms(rooms);
98
- await refreshMeshGraph();
99
- }
100
- /** Refreshes the mesh's connection graph on the same triggers refreshState already reacts to (agent-comms#201) -- a failure here (most commonly this bridge running on a FileStore rather than a real mesh transport, so mesh_graph simply isn't supported) leaves state.meshGraph as it was rather than breaking the agents/rooms refresh it rides alongside. */
101
- async function refreshMeshGraph() {
102
- try {
103
- state.setMeshGraph(await fetchMeshGraph());
104
- }
105
- catch {
106
- // Not mesh-backed, or the transport doesn't support mesh_graph -- leave meshGraph unset.
107
- }
94
+ /** Invalidates the mesh graph query on the same triggers a REST refresh used to run on (agent-comms#201/#206) -- a failure here (most commonly this bridge running on a FileStore rather than a real mesh transport, so mesh_graph simply isn't supported) is left to whatever's already subscribed to the query to surface, the same way any other failed refetch would. */
95
+ async function invalidateMeshGraph() {
96
+ await queryClient.invalidateQueries({
97
+ queryKey: meshClient.queryUtils.getMeshGraph.key(),
98
+ });
108
99
  }
109
100
  async function onJoinRoom(roomId) {
110
101
  state.setDmTarget(undefined);
111
102
  state.setCurrentRoom(roomId);
112
103
  state.clearMessages();
113
104
  void sendAction({ action: "join_room", room: roomId });
114
- // Load history (skip REST fetch on standalone PWA — no server)
115
- if (isLocalServer) {
116
- const messages = await fetchRoomMessages(roomId);
117
- state.setMessages(messages.map(roomMessageToDisplay));
118
- }
105
+ // Room history now goes through the same tab-worker-server oRPC channel every other read does (agent-comms#206), so it works uniformly whether this is served from the local server or probing for one as a standalone PWA -- unlike the REST fetch it replaces, which only ever worked in the local-server case.
106
+ const messages = await queryClient.query(meshClient.queryUtils.getRoomMessages.queryOptions({
107
+ input: { room: roomId },
108
+ }));
109
+ state.setMessages(messages.map(roomMessageToDisplay));
119
110
  addMessage({ type: "system", text: `Joined ${roomId}` });
120
111
  }
121
112
  function onSelectAgent(agentId) {
@@ -188,11 +179,11 @@ function Root() {
188
179
  useEffect(() => {
189
180
  syncUrl({ currentRoom: s.currentRoom, dmTarget: s.dmTarget });
190
181
  }, [s.currentRoom, s.dmTarget]);
191
- return (_jsx(App, { rooms: s.rooms, agents: s.agents, currentRoom: s.currentRoom, dmTarget: s.dmTarget, messages: s.messages, connected: s.connected, meshGraph: s.meshGraph, onJoinRoom: (roomId) => {
182
+ return (_jsx(App, { rooms: s.rooms, agents: s.agents, currentRoom: s.currentRoom, dmTarget: s.dmTarget, messages: s.messages, connected: s.connected, queryUtils: meshClient.queryUtils, onJoinRoom: (roomId) => {
192
183
  void onJoinRoom(roomId);
193
184
  }, onSelectAgent: onSelectAgent, onRenameAgent: onRenameAgent, onLeaveRoom: onLeaveRoom, onSendAction: handleSendAction, onCreateRoom: onCreateRoom, onJoinRoomInput: onJoinRoomInput, onConnectToMesh: onConnectToMesh }));
194
185
  }
195
- createRoot(rootEl).render(_jsx(MantineProvider, { theme: theme, defaultColorScheme: "dark", children: _jsx(Root, {}) }));
186
+ createRoot(rootEl).render(_jsx(QueryClientProvider, { client: queryClient, children: _jsx(MantineProvider, { theme: theme, defaultColorScheme: "dark", children: _jsx(Root, {}) }) }));
196
187
  // Capture the deep link from the URL BEFORE syncUrl's first run clears the query parameters via replaceState, which would make location.search empty by the time parseDeepLink runs.
197
188
  const deepLink = parseDeepLink(location.search);
198
189
  // Auto-connect when served from local server, or when the user has connected before. First-time visitors to the standalone PWA see a connect prompt instead of Chrome's unexpected "access device" permission prompt.
@@ -200,21 +191,23 @@ const previouslyConnected = hasConnectedBefore(localStorage);
200
191
  if (isLocalServer || previouslyConnected) {
201
192
  meshClient.connect();
202
193
  }
203
- // Initial state fetch, then resolve any deep link from the URL
204
- void refreshState().then(() => {
205
- if (!deepLink)
206
- return;
207
- const s = state.get();
208
- const resolved = resolveDeepLink(deepLink, s.rooms);
209
- if (!resolved)
210
- return;
211
- switch (resolved.kind) {
212
- case "room":
213
- void onJoinRoom(resolved.targetId);
214
- break;
215
- case "dm":
216
- onSelectAgent(resolved.targetId);
217
- break;
218
- }
219
- });
194
+ // Resolve any deep link from the URL once the real-time room list first arrives (agent-comms#206 -- agents/rooms are already fully covered by the live subscribeEvents stream, so this no longer waits on a separate REST fetch the way it used to). A one-shot subscriber, unsubscribing itself the moment it has a non-empty room list to resolve against.
195
+ if (deepLink) {
196
+ const unsubscribeDeepLink = meshClient.subscribe((meshState) => {
197
+ if (meshState.rooms.length === 0)
198
+ return;
199
+ unsubscribeDeepLink();
200
+ const resolved = resolveDeepLink(deepLink, meshState.rooms);
201
+ if (!resolved)
202
+ return;
203
+ switch (resolved.kind) {
204
+ case "room":
205
+ void onJoinRoom(resolved.targetId);
206
+ break;
207
+ case "dm":
208
+ onSelectAgent(resolved.targetId);
209
+ break;
210
+ }
211
+ });
212
+ }
220
213
  //# sourceMappingURL=main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../../../src/bridges/user/web/frontend/main.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../../../src/bridges/user/web/frontend/main.tsx"],"names":[],"mappings":"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"}