local-operator-ui 0.41.1 → 0.41.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/out/main/index.js +390 -26
  2. package/out/preload/index.js +19 -0
  3. package/out/renderer/assets/{_basePickBy-BP7Q8i4W.js → _basePickBy-BgapP5T6.js} +1 -1
  4. package/out/renderer/assets/{_baseUniq-D36dAcoY.js → _baseUniq-B9rnfho3.js} +1 -1
  5. package/out/renderer/assets/{agent-details-page-D3ljlPdf.js → agent-details-page-CKRUVtjJ.js} +1 -1
  6. package/out/renderer/assets/{agent-hub-page-BMyIHnNM.js → agent-hub-page-5qLVOZEV.js} +1 -1
  7. package/out/renderer/assets/{agents-page-mMqgQd2V.js → agents-page-tQooOOKH.js} +3 -3
  8. package/out/renderer/assets/{arc-GVvow4so.js → arc-Feq-cl9G.js} +1 -1
  9. package/out/renderer/assets/{architectureDiagram-IEHRJDOE-BjGwXAtH.js → architectureDiagram-IEHRJDOE-BmZeJuzA.js} +1 -1
  10. package/out/renderer/assets/{blockDiagram-JOT3LUYC-BTuigKlt.js → blockDiagram-JOT3LUYC-DEqkKuOE.js} +1 -1
  11. package/out/renderer/assets/{browser-page-B3mjDx8k.js → browser-page-CB-_usY1.js} +1 -1
  12. package/out/renderer/assets/{browser-webauthn-prompt-CzYoJfO4.js → browser-webauthn-prompt-CKUBOIHd.js} +1 -1
  13. package/out/renderer/assets/{c4Diagram-VJAJSXHY-DK7eaKE8.js → c4Diagram-VJAJSXHY-EbhUbSdf.js} +1 -1
  14. package/out/renderer/assets/channel-CPGK3lub.js +1 -0
  15. package/out/renderer/assets/{chunk-4BMEZGHF-DkQrsDhM.js → chunk-4BMEZGHF-DIk7XDrx.js} +1 -1
  16. package/out/renderer/assets/{chunk-A2AXSNBT-guh0INPR.js → chunk-A2AXSNBT-D_MflthZ.js} +1 -1
  17. package/out/renderer/assets/{chunk-AEK57VVT-DvgIx6-r.js → chunk-AEK57VVT-C0iLgwbv.js} +1 -1
  18. package/out/renderer/assets/{chunk-D6G4REZN-FNdvnFYo.js → chunk-D6G4REZN-BbFuFCzc.js} +1 -1
  19. package/out/renderer/assets/{chunk-RZ5BOZE2-CgCQC9Mn.js → chunk-RZ5BOZE2-BxQo8VeZ.js} +1 -1
  20. package/out/renderer/assets/{chunk-XZIHB7SX-D1VRTTc4.js → chunk-XZIHB7SX-DnNtYGsR.js} +1 -1
  21. package/out/renderer/assets/classDiagram-GIVACNV2-hDc6ku-l.js +1 -0
  22. package/out/renderer/assets/classDiagram-v2-COTLJTTW-hDc6ku-l.js +1 -0
  23. package/out/renderer/assets/clone--PuuOIog.js +1 -0
  24. package/out/renderer/assets/{console-mirror-DRkz3vUY.js → console-mirror-Bxl6t4e9.js} +1 -1
  25. package/out/renderer/assets/{consoleCapture-BJfSUatx.js → consoleCapture-BzSftKjg.js} +1 -1
  26. package/out/renderer/assets/{conversation-input-sync-CJU5GIzR.js → conversation-input-sync-MZPvyAzc.js} +239 -239
  27. package/out/renderer/assets/{dagre-OKDRZEBW-DeeYQh6O.js → dagre-OKDRZEBW-qejdp-TF.js} +1 -1
  28. package/out/renderer/assets/{diagram-SSKATNLV-DD-xNxKH.js → diagram-SSKATNLV-qHrLhzXc.js} +1 -1
  29. package/out/renderer/assets/{diagram-VNBRO52H-YAoPlXaR.js → diagram-VNBRO52H-q0teJTmh.js} +1 -1
  30. package/out/renderer/assets/{erDiagram-Q7BY3M3F-OKzGXyMI.js → erDiagram-Q7BY3M3F-DI6rp9FR.js} +1 -1
  31. package/out/renderer/assets/{flowDiagram-4HSFHLVR-BG-3pPqS.js → flowDiagram-4HSFHLVR-xVi21DAI.js} +1 -1
  32. package/out/renderer/assets/{ganttDiagram-APWFNJXF-CRyD5vsE.js → ganttDiagram-APWFNJXF-BUKGBOB_.js} +1 -1
  33. package/out/renderer/assets/{gitGraphDiagram-7IBYFJ6S-aly2C__q.js → gitGraphDiagram-7IBYFJ6S-CdE3ZeMn.js} +1 -1
  34. package/out/renderer/assets/{graph-CCWwMmhg.js → graph-CRaHrZRK.js} +1 -1
  35. package/out/renderer/assets/{index-BaNzqqGN.js → index-B9E-fwX4.js} +1 -1
  36. package/out/renderer/assets/{index-CRjnV9wx.js → index-DknTGnAk.js} +208 -208
  37. package/out/renderer/assets/{index-DaCf2W9T.js → index-FsaxlHdZ.js} +1 -1
  38. package/out/renderer/assets/{infoDiagram-PH2N3AL5-BY536sF5.js → infoDiagram-PH2N3AL5-pOK9P20l.js} +1 -1
  39. package/out/renderer/assets/{journeyDiagram-U35MCT3I-DGvx__t6.js → journeyDiagram-U35MCT3I-D5Sg1JPA.js} +1 -1
  40. package/out/renderer/assets/{kanban-definition-NDS4AKOZ-CG2Lgkpw.js → kanban-definition-NDS4AKOZ-BfhWqBCl.js} +1 -1
  41. package/out/renderer/assets/{layout-vpRrwE7T.js → layout-IqsTm240.js} +1 -1
  42. package/out/renderer/assets/{legacy-agents-page-D6Yma1Gm.js → legacy-agents-page-bdH6oKjE.js} +5 -5
  43. package/out/renderer/assets/{library-page-B0gC-rRh.js → library-page-DDvrG_aA.js} +3 -3
  44. package/out/renderer/assets/{mermaid.core-COeGB8I0.js → mermaid.core-D0YPuNli.js} +5 -5
  45. package/out/renderer/assets/{mesh-page-PabU05tN.js → mesh-page-DYFNof_0.js} +1 -1
  46. package/out/renderer/assets/{mindmap-definition-ALO5MXBD-B0hkjZLY.js → mindmap-definition-ALO5MXBD-Tx5iMDRU.js} +1 -1
  47. package/out/renderer/assets/{mini-Df5C4rpd.js → mini-BoZCnSK9.js} +1 -1
  48. package/out/renderer/assets/{org-access-BacMtLkn.js → org-access-DoZK5gF3.js} +1 -1
  49. package/out/renderer/assets/{org-surface-gate-tkB025lu.js → org-surface-gate-Dy0B7mtt.js} +1 -1
  50. package/out/renderer/assets/path-utils-CRYGE4mK.js +58 -0
  51. package/out/renderer/assets/{pieDiagram-IB7DONF6-DfFtQXU5.js → pieDiagram-IB7DONF6-D0rED3_3.js} +1 -1
  52. package/out/renderer/assets/{projects-page-CoHTKLZH.js → projects-page-D7j1GOvI.js} +1 -1
  53. package/out/renderer/assets/{publication-validation-B0Mf3mmP.js → publication-validation-CLbFS0n9.js} +1 -1
  54. package/out/renderer/assets/{quadrantDiagram-7GDLP6J5-C4eDJWaK.js → quadrantDiagram-7GDLP6J5-D8jKSQt5.js} +1 -1
  55. package/out/renderer/assets/{radar-MK3ICKWK-BEv1HS9Q.js → radar-MK3ICKWK-Co2EJbaJ.js} +1 -1
  56. package/out/renderer/assets/{radient-auth-buttons-BX5vf982.js → radient-auth-buttons-B11cdRmS.js} +1 -1
  57. package/out/renderer/assets/{requirementDiagram-KVF5MWMF-B7f3qUcB.js → requirementDiagram-KVF5MWMF-BI13h11j.js} +1 -1
  58. package/out/renderer/assets/{sankeyDiagram-QLVOVGJD-xM7E-74l.js → sankeyDiagram-QLVOVGJD-D4hZ6_ML.js} +1 -1
  59. package/out/renderer/assets/{schedules-page-5q7pvL1H.js → schedules-page-DFfDDHYC.js} +1 -1
  60. package/out/renderer/assets/{sequenceDiagram-X6HHIX6F-upwR02kU.js → sequenceDiagram-X6HHIX6F-U6CqBtco.js} +1 -1
  61. package/out/renderer/assets/{settings-page-DcnGr-GP.js → settings-page-CZ7NUDoe.js} +9 -9
  62. package/out/renderer/assets/{smartart-CYnMNs5u.js → smartart-BVm_cEaq.js} +1 -1
  63. package/out/renderer/assets/{stateDiagram-DGXRK772-BqTri7Q-.js → stateDiagram-DGXRK772-DBg11bkx.js} +1 -1
  64. package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-jmaink9i.js +1 -0
  65. package/out/renderer/assets/team-bridge-page-u_OqiZGS.js +16 -0
  66. package/out/renderer/assets/{timeline-definition-BDJGKUSR-Bi2is17s.js → timeline-definition-BDJGKUSR-WQ6aYia6.js} +1 -1
  67. package/out/renderer/assets/{use-download-agent-mutation-PHtokPlg.js → use-download-agent-mutation-ZoivWizY.js} +2 -2
  68. package/out/renderer/assets/{use-session-snapshot-B5sxthdQ.js → use-session-snapshot-CdYiirKJ.js} +1 -1
  69. package/out/renderer/assets/{xychartDiagram-VJFVF3MP-B0TrjzLJ.js → xychartDiagram-VJFVF3MP-f11BpHer.js} +1 -1
  70. package/out/renderer/console-capture.html +3 -3
  71. package/out/renderer/index.html +4 -4
  72. package/out/renderer/mini.html +4 -4
  73. package/package.json +4 -3
  74. package/out/renderer/assets/channel-B05rL6In.js +0 -1
  75. package/out/renderer/assets/classDiagram-GIVACNV2-DpB8-8cT.js +0 -1
  76. package/out/renderer/assets/classDiagram-v2-COTLJTTW-DpB8-8cT.js +0 -1
  77. package/out/renderer/assets/clone-BHHjv3HP.js +0 -1
  78. package/out/renderer/assets/path-utils-Ct0VTUZS.js +0 -58
  79. package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-D8Sl1QhX.js +0 -1
  80. package/out/renderer/assets/team-bridge-page-vnNJdCi3.js +0 -16
@@ -1,58 +0,0 @@
1
- import{b as na,r as b,t as le,j as Yu,D as Qu}from"./index-BDzV3bGH.js";var ne;(function(e){e.assertEqual=s=>s;function t(s){}e.assertIs=t;function n(s){throw new Error}e.assertNever=n,e.arrayToEnum=s=>{const i={};for(const a of s)i[a]=a;return i},e.getValidEnumValues=s=>{const i=e.objectKeys(s).filter(l=>typeof s[s[l]]!="number"),a={};for(const l of i)a[l]=s[l];return e.objectValues(a)},e.objectValues=s=>e.objectKeys(s).map(function(i){return s[i]}),e.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{const i=[];for(const a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},e.find=(s,i)=>{for(const a of s)if(i(a))return a},e.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&isFinite(s)&&Math.floor(s)===s;function r(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}e.joinValues=r,e.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(ne||(ne={}));var fi;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(fi||(fi={}));const M=ne.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),wt=e=>{switch(typeof e){case"undefined":return M.undefined;case"string":return M.string;case"number":return isNaN(e)?M.nan:M.number;case"boolean":return M.boolean;case"function":return M.function;case"bigint":return M.bigint;case"symbol":return M.symbol;case"object":return Array.isArray(e)?M.array:e===null?M.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?M.promise:typeof Map<"u"&&e instanceof Map?M.map:typeof Set<"u"&&e instanceof Set?M.set:typeof Date<"u"&&e instanceof Date?M.date:M.object;default:return M.unknown}},E=ne.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Ju=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:");class Ze extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=t}format(t){const n=t||function(i){return i.message},r={_errors:[]},s=i=>{for(const a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)r._errors.push(n(a));else{let l=r,c=0;for(;c<a.path.length;){const d=a.path[c];c===a.path.length-1?(l[d]=l[d]||{_errors:[]},l[d]._errors.push(n(a))):l[d]=l[d]||{_errors:[]},l=l[d],c++}}};return s(this),r}static assert(t){if(!(t instanceof Ze))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ne.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=n=>n.message){const n={},r=[];for(const s of this.issues)s.path.length>0?(n[s.path[0]]=n[s.path[0]]||[],n[s.path[0]].push(t(s))):r.push(t(s));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}}Ze.create=e=>new Ze(e);const wn=(e,t)=>{let n;switch(e.code){case E.invalid_type:e.received===M.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case E.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,ne.jsonStringifyReplacer)}`;break;case E.unrecognized_keys:n=`Unrecognized key(s) in object: ${ne.joinValues(e.keys,", ")}`;break;case E.invalid_union:n="Invalid input";break;case E.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${ne.joinValues(e.options)}`;break;case E.invalid_enum_value:n=`Invalid enum value. Expected ${ne.joinValues(e.options)}, received '${e.received}'`;break;case E.invalid_arguments:n="Invalid function arguments";break;case E.invalid_return_type:n="Invalid function return type";break;case E.invalid_date:n="Invalid date";break;case E.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:ne.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case E.too_small:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:n="Invalid input";break;case E.too_big:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?n=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:n="Invalid input";break;case E.custom:n="Invalid input";break;case E.invalid_intersection_types:n="Intersection results could not be merged";break;case E.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case E.not_finite:n="Number must be finite";break;default:n=t.defaultError,ne.assertNever(e)}return{message:n}};let rc=wn;function Xu(e){rc=e}function Kr(){return rc}const Yr=e=>{const{data:t,path:n,errorMaps:r,issueData:s}=e,i=[...n,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let l="";const c=r.filter(d=>!!d).slice().reverse();for(const d of c)l=d(a,{data:t,defaultError:l}).message;return{...s,path:i,message:l}},qu=[];function P(e,t){const n=Kr(),r=Yr({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===wn?void 0:wn].filter(s=>!!s)});e.common.issues.push(r)}class Ne{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,n){const r=[];for(const s of n){if(s.status==="aborted")return B;s.status==="dirty"&&t.dirty(),r.push(s.value)}return{status:t.value,value:r}}static async mergeObjectAsync(t,n){const r=[];for(const s of n){const i=await s.key,a=await s.value;r.push({key:i,value:a})}return Ne.mergeObjectSync(t,r)}static mergeObjectSync(t,n){const r={};for(const s of n){const{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return B;i.status==="dirty"&&t.dirty(),a.status==="dirty"&&t.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(r[i.value]=a.value)}return{status:t.value,value:r}}}const B=Object.freeze({status:"aborted"}),hn=e=>({status:"dirty",value:e}),$e=e=>({status:"valid",value:e}),pi=e=>e.status==="aborted",hi=e=>e.status==="dirty",Jt=e=>e.status==="valid",Qn=e=>typeof Promise<"u"&&e instanceof Promise;function Qr(e,t,n,r){if(typeof t=="function"?e!==t||!0:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t.get(e)}function sc(e,t,n,r,s){if(typeof t=="function"?e!==t||!0:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,n),n}var N;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(N||(N={}));var Bn,Gn;class mt{constructor(t,n,r,s){this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=s}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const ra=(e,t)=>{if(Jt(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const n=new Ze(e.common.issues);return this._error=n,this._error}}};function Y(e){if(!e)return{};const{errorMap:t,invalid_type_error:n,required_error:r,description:s}=e;if(t&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:s}:{errorMap:(a,l)=>{var c,d;const{message:u}=e;return a.code==="invalid_enum_value"?{message:u??l.defaultError}:typeof l.data>"u"?{message:(c=u??r)!==null&&c!==void 0?c:l.defaultError}:a.code!=="invalid_type"?{message:l.defaultError}:{message:(d=u??n)!==null&&d!==void 0?d:l.defaultError}},description:s}}class Q{get description(){return this._def.description}_getType(t){return wt(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:wt(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Ne,ctx:{common:t.parent.common,data:t.data,parsedType:wt(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){const n=this._parse(t);if(Qn(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(t){const n=this._parse(t);return Promise.resolve(n)}parse(t,n){const r=this.safeParse(t,n);if(r.success)return r.data;throw r.error}safeParse(t,n){var r;const s={common:{issues:[],async:(r=n?.async)!==null&&r!==void 0?r:!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:wt(t)},i=this._parseSync({data:t,path:s.path,parent:s});return ra(s,i)}"~validate"(t){var n,r;const s={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:wt(t)};if(!this["~standard"].async)try{const i=this._parseSync({data:t,path:[],parent:s});return Jt(i)?{value:i.value}:{issues:s.common.issues}}catch(i){!((r=(n=i?.message)===null||n===void 0?void 0:n.toLowerCase())===null||r===void 0)&&r.includes("encountered")&&(this["~standard"].async=!0),s.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:s}).then(i=>Jt(i)?{value:i.value}:{issues:s.common.issues})}async parseAsync(t,n){const r=await this.safeParseAsync(t,n);if(r.success)return r.data;throw r.error}async safeParseAsync(t,n){const r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:wt(t)},s=this._parse({data:t,path:r.path,parent:r}),i=await(Qn(s)?s:Promise.resolve(s));return ra(r,i)}refine(t,n){const r=s=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(s):n;return this._refinement((s,i)=>{const a=t(s),l=()=>i.addIssue({code:E.custom,...r(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(l(),!1)):a?!0:(l(),!1)})}refinement(t,n){return this._refinement((r,s)=>t(r)?!0:(s.addIssue(typeof n=="function"?n(r,s):n),!1))}_refinement(t){return new lt({schema:this,typeName:F.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return ht.create(this,this._def)}nullable(){return Lt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return at.create(this)}promise(){return kn.create(this,this._def)}or(t){return er.create([this,t],this._def)}and(t){return tr.create(this,t,this._def)}transform(t){return new lt({...Y(this._def),schema:this,typeName:F.ZodEffects,effect:{type:"transform",transform:t}})}default(t){const n=typeof t=="function"?t:()=>t;return new or({...Y(this._def),innerType:this,defaultValue:n,typeName:F.ZodDefault})}brand(){return new qi({typeName:F.ZodBranded,type:this,...Y(this._def)})}catch(t){const n=typeof t=="function"?t:()=>t;return new ar({...Y(this._def),innerType:this,catchValue:n,typeName:F.ZodCatch})}describe(t){const n=this.constructor;return new n({...this._def,description:t})}pipe(t){return vr.create(this,t)}readonly(){return lr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const ef=/^c[^\s-]{8,}$/i,tf=/^[0-9a-z]+$/,nf=/^[0-9A-HJKMNP-TV-Z]{26}$/i,rf=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,sf=/^[a-z0-9_-]{21}$/i,of=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,af=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,lf=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,cf="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Ms;const df=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,uf=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ff=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,pf=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,hf=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,mf=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,ic="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",gf=new RegExp(`^${ic}$`);function oc(e){let t="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`),t}function yf(e){return new RegExp(`^${oc(e)}$`)}function ac(e){let t=`${ic}T${oc(e)}`;const n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${n.join("|")})`,new RegExp(`^${t}$`)}function vf(e,t){return!!((t==="v4"||!t)&&df.test(e)||(t==="v6"||!t)&&ff.test(e))}function _f(e,t){if(!of.test(e))return!1;try{const[n]=e.split("."),r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),s=JSON.parse(atob(r));return!(typeof s!="object"||s===null||!s.typ||!s.alg||t&&s.alg!==t)}catch{return!1}}function bf(e,t){return!!((t==="v4"||!t)&&uf.test(e)||(t==="v6"||!t)&&pf.test(e))}class ot extends Q{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==M.string){const i=this._getOrReturnCtx(t);return P(i,{code:E.invalid_type,expected:M.string,received:i.parsedType}),B}const r=new Ne;let s;for(const i of this._def.checks)if(i.kind==="min")t.data.length<i.value&&(s=this._getOrReturnCtx(t,s),P(s,{code:E.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="max")t.data.length>i.value&&(s=this._getOrReturnCtx(t,s),P(s,{code:E.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="length"){const a=t.data.length>i.value,l=t.data.length<i.value;(a||l)&&(s=this._getOrReturnCtx(t,s),a?P(s,{code:E.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):l&&P(s,{code:E.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),r.dirty())}else if(i.kind==="email")lf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"email",code:E.invalid_string,message:i.message}),r.dirty());else if(i.kind==="emoji")Ms||(Ms=new RegExp(cf,"u")),Ms.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"emoji",code:E.invalid_string,message:i.message}),r.dirty());else if(i.kind==="uuid")rf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"uuid",code:E.invalid_string,message:i.message}),r.dirty());else if(i.kind==="nanoid")sf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"nanoid",code:E.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid")ef.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"cuid",code:E.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid2")tf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"cuid2",code:E.invalid_string,message:i.message}),r.dirty());else if(i.kind==="ulid")nf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"ulid",code:E.invalid_string,message:i.message}),r.dirty());else if(i.kind==="url")try{new URL(t.data)}catch{s=this._getOrReturnCtx(t,s),P(s,{validation:"url",code:E.invalid_string,message:i.message}),r.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"regex",code:E.invalid_string,message:i.message}),r.dirty())):i.kind==="trim"?t.data=t.data.trim():i.kind==="includes"?t.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(t,s),P(s,{code:E.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),r.dirty()):i.kind==="toLowerCase"?t.data=t.data.toLowerCase():i.kind==="toUpperCase"?t.data=t.data.toUpperCase():i.kind==="startsWith"?t.data.startsWith(i.value)||(s=this._getOrReturnCtx(t,s),P(s,{code:E.invalid_string,validation:{startsWith:i.value},message:i.message}),r.dirty()):i.kind==="endsWith"?t.data.endsWith(i.value)||(s=this._getOrReturnCtx(t,s),P(s,{code:E.invalid_string,validation:{endsWith:i.value},message:i.message}),r.dirty()):i.kind==="datetime"?ac(i).test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{code:E.invalid_string,validation:"datetime",message:i.message}),r.dirty()):i.kind==="date"?gf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{code:E.invalid_string,validation:"date",message:i.message}),r.dirty()):i.kind==="time"?yf(i).test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{code:E.invalid_string,validation:"time",message:i.message}),r.dirty()):i.kind==="duration"?af.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"duration",code:E.invalid_string,message:i.message}),r.dirty()):i.kind==="ip"?vf(t.data,i.version)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"ip",code:E.invalid_string,message:i.message}),r.dirty()):i.kind==="jwt"?_f(t.data,i.alg)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"jwt",code:E.invalid_string,message:i.message}),r.dirty()):i.kind==="cidr"?bf(t.data,i.version)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"cidr",code:E.invalid_string,message:i.message}),r.dirty()):i.kind==="base64"?hf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"base64",code:E.invalid_string,message:i.message}),r.dirty()):i.kind==="base64url"?mf.test(t.data)||(s=this._getOrReturnCtx(t,s),P(s,{validation:"base64url",code:E.invalid_string,message:i.message}),r.dirty()):ne.assertNever(i);return{status:r.value,value:t.data}}_regex(t,n,r){return this.refinement(s=>t.test(s),{validation:n,code:E.invalid_string,...N.errToObj(r)})}_addCheck(t){return new ot({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...N.errToObj(t)})}url(t){return this._addCheck({kind:"url",...N.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...N.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...N.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...N.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...N.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...N.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...N.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...N.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...N.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...N.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...N.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...N.errToObj(t)})}datetime(t){var n,r;return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:(n=t?.offset)!==null&&n!==void 0?n:!1,local:(r=t?.local)!==null&&r!==void 0?r:!1,...N.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...N.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...N.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...N.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n?.position,...N.errToObj(n?.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...N.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...N.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...N.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...N.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...N.errToObj(n)})}nonempty(t){return this.min(1,N.errToObj(t))}trim(){return new ot({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new ot({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new ot({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxLength(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}ot.create=e=>{var t;return new ot({checks:[],typeName:F.ZodString,coerce:(t=e?.coerce)!==null&&t!==void 0?t:!1,...Y(e)})};function wf(e,t){const n=(e.toString().split(".")[1]||"").length,r=(t.toString().split(".")[1]||"").length,s=n>r?n:r,i=parseInt(e.toFixed(s).replace(".","")),a=parseInt(t.toFixed(s).replace(".",""));return i%a/Math.pow(10,s)}class Mt extends Q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==M.number){const i=this._getOrReturnCtx(t);return P(i,{code:E.invalid_type,expected:M.number,received:i.parsedType}),B}let r;const s=new Ne;for(const i of this._def.checks)i.kind==="int"?ne.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),P(r,{code:E.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?t.data<i.value:t.data<=i.value)&&(r=this._getOrReturnCtx(t,r),P(r,{code:E.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?t.data>i.value:t.data>=i.value)&&(r=this._getOrReturnCtx(t,r),P(r,{code:E.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?wf(t.data,i.value)!==0&&(r=this._getOrReturnCtx(t,r),P(r,{code:E.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(t.data)||(r=this._getOrReturnCtx(t,r),P(r,{code:E.not_finite,message:i.message}),s.dirty()):ne.assertNever(i);return{status:s.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,N.toString(n))}gt(t,n){return this.setLimit("min",t,!1,N.toString(n))}lte(t,n){return this.setLimit("max",t,!0,N.toString(n))}lt(t,n){return this.setLimit("max",t,!1,N.toString(n))}setLimit(t,n,r,s){return new Mt({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:N.toString(s)}]})}_addCheck(t){return new Mt({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:N.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:N.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:N.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:N.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:N.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:N.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:N.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:N.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:N.toString(t)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&ne.isInteger(t.value))}get isFinite(){let t=null,n=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(t===null||r.value<t)&&(t=r.value)}return Number.isFinite(n)&&Number.isFinite(t)}}Mt.create=e=>new Mt({checks:[],typeName:F.ZodNumber,coerce:e?.coerce||!1,...Y(e)});class Dt extends Q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==M.bigint)return this._getInvalidInput(t);let r;const s=new Ne;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?t.data<i.value:t.data<=i.value)&&(r=this._getOrReturnCtx(t,r),P(r,{code:E.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?t.data>i.value:t.data>=i.value)&&(r=this._getOrReturnCtx(t,r),P(r,{code:E.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?t.data%i.value!==BigInt(0)&&(r=this._getOrReturnCtx(t,r),P(r,{code:E.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):ne.assertNever(i);return{status:s.value,value:t.data}}_getInvalidInput(t){const n=this._getOrReturnCtx(t);return P(n,{code:E.invalid_type,expected:M.bigint,received:n.parsedType}),B}gte(t,n){return this.setLimit("min",t,!0,N.toString(n))}gt(t,n){return this.setLimit("min",t,!1,N.toString(n))}lte(t,n){return this.setLimit("max",t,!0,N.toString(n))}lt(t,n){return this.setLimit("max",t,!1,N.toString(n))}setLimit(t,n,r,s){return new Dt({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:N.toString(s)}]})}_addCheck(t){return new Dt({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:N.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:N.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:N.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:N.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:N.toString(n)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}Dt.create=e=>{var t;return new Dt({checks:[],typeName:F.ZodBigInt,coerce:(t=e?.coerce)!==null&&t!==void 0?t:!1,...Y(e)})};class Jn extends Q{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==M.boolean){const r=this._getOrReturnCtx(t);return P(r,{code:E.invalid_type,expected:M.boolean,received:r.parsedType}),B}return $e(t.data)}}Jn.create=e=>new Jn({typeName:F.ZodBoolean,coerce:e?.coerce||!1,...Y(e)});class Xt extends Q{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==M.date){const i=this._getOrReturnCtx(t);return P(i,{code:E.invalid_type,expected:M.date,received:i.parsedType}),B}if(isNaN(t.data.getTime())){const i=this._getOrReturnCtx(t);return P(i,{code:E.invalid_date}),B}const r=new Ne;let s;for(const i of this._def.checks)i.kind==="min"?t.data.getTime()<i.value&&(s=this._getOrReturnCtx(t,s),P(s,{code:E.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),r.dirty()):i.kind==="max"?t.data.getTime()>i.value&&(s=this._getOrReturnCtx(t,s),P(s,{code:E.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):ne.assertNever(i);return{status:r.value,value:new Date(t.data.getTime())}}_addCheck(t){return new Xt({...this._def,checks:[...this._def.checks,t]})}min(t,n){return this._addCheck({kind:"min",value:t.getTime(),message:N.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:N.toString(n)})}get minDate(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t!=null?new Date(t):null}}Xt.create=e=>new Xt({checks:[],coerce:e?.coerce||!1,typeName:F.ZodDate,...Y(e)});class Jr extends Q{_parse(t){if(this._getType(t)!==M.symbol){const r=this._getOrReturnCtx(t);return P(r,{code:E.invalid_type,expected:M.symbol,received:r.parsedType}),B}return $e(t.data)}}Jr.create=e=>new Jr({typeName:F.ZodSymbol,...Y(e)});class Xn extends Q{_parse(t){if(this._getType(t)!==M.undefined){const r=this._getOrReturnCtx(t);return P(r,{code:E.invalid_type,expected:M.undefined,received:r.parsedType}),B}return $e(t.data)}}Xn.create=e=>new Xn({typeName:F.ZodUndefined,...Y(e)});class qn extends Q{_parse(t){if(this._getType(t)!==M.null){const r=this._getOrReturnCtx(t);return P(r,{code:E.invalid_type,expected:M.null,received:r.parsedType}),B}return $e(t.data)}}qn.create=e=>new qn({typeName:F.ZodNull,...Y(e)});class Sn extends Q{constructor(){super(...arguments),this._any=!0}_parse(t){return $e(t.data)}}Sn.create=e=>new Sn({typeName:F.ZodAny,...Y(e)});class Vt extends Q{constructor(){super(...arguments),this._unknown=!0}_parse(t){return $e(t.data)}}Vt.create=e=>new Vt({typeName:F.ZodUnknown,...Y(e)});class St extends Q{_parse(t){const n=this._getOrReturnCtx(t);return P(n,{code:E.invalid_type,expected:M.never,received:n.parsedType}),B}}St.create=e=>new St({typeName:F.ZodNever,...Y(e)});class Xr extends Q{_parse(t){if(this._getType(t)!==M.undefined){const r=this._getOrReturnCtx(t);return P(r,{code:E.invalid_type,expected:M.void,received:r.parsedType}),B}return $e(t.data)}}Xr.create=e=>new Xr({typeName:F.ZodVoid,...Y(e)});class at extends Q{_parse(t){const{ctx:n,status:r}=this._processInputParams(t),s=this._def;if(n.parsedType!==M.array)return P(n,{code:E.invalid_type,expected:M.array,received:n.parsedType}),B;if(s.exactLength!==null){const a=n.data.length>s.exactLength.value,l=n.data.length<s.exactLength.value;(a||l)&&(P(n,{code:a?E.too_big:E.too_small,minimum:l?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&n.data.length<s.minLength.value&&(P(n,{code:E.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&n.data.length>s.maxLength.value&&(P(n,{code:E.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((a,l)=>s.type._parseAsync(new mt(n,a,n.path,l)))).then(a=>Ne.mergeArray(r,a));const i=[...n.data].map((a,l)=>s.type._parseSync(new mt(n,a,n.path,l)));return Ne.mergeArray(r,i)}get element(){return this._def.type}min(t,n){return new at({...this._def,minLength:{value:t,message:N.toString(n)}})}max(t,n){return new at({...this._def,maxLength:{value:t,message:N.toString(n)}})}length(t,n){return new at({...this._def,exactLength:{value:t,message:N.toString(n)}})}nonempty(t){return this.min(1,t)}}at.create=(e,t)=>new at({type:e,minLength:null,maxLength:null,exactLength:null,typeName:F.ZodArray,...Y(t)});function un(e){if(e instanceof ve){const t={};for(const n in e.shape){const r=e.shape[n];t[n]=ht.create(un(r))}return new ve({...e._def,shape:()=>t})}else return e instanceof at?new at({...e._def,type:un(e.element)}):e instanceof ht?ht.create(un(e.unwrap())):e instanceof Lt?Lt.create(un(e.unwrap())):e instanceof gt?gt.create(e.items.map(t=>un(t))):e}class ve extends Q{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const t=this._def.shape(),n=ne.objectKeys(t);return this._cached={shape:t,keys:n}}_parse(t){if(this._getType(t)!==M.object){const d=this._getOrReturnCtx(t);return P(d,{code:E.invalid_type,expected:M.object,received:d.parsedType}),B}const{status:r,ctx:s}=this._processInputParams(t),{shape:i,keys:a}=this._getCached(),l=[];if(!(this._def.catchall instanceof St&&this._def.unknownKeys==="strip"))for(const d in s.data)a.includes(d)||l.push(d);const c=[];for(const d of a){const u=i[d],f=s.data[d];c.push({key:{status:"valid",value:d},value:u._parse(new mt(s,f,s.path,d)),alwaysSet:d in s.data})}if(this._def.catchall instanceof St){const d=this._def.unknownKeys;if(d==="passthrough")for(const u of l)c.push({key:{status:"valid",value:u},value:{status:"valid",value:s.data[u]}});else if(d==="strict")l.length>0&&(P(s,{code:E.unrecognized_keys,keys:l}),r.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const d=this._def.catchall;for(const u of l){const f=s.data[u];c.push({key:{status:"valid",value:u},value:d._parse(new mt(s,f,s.path,u)),alwaysSet:u in s.data})}}return s.common.async?Promise.resolve().then(async()=>{const d=[];for(const u of c){const f=await u.key,p=await u.value;d.push({key:f,value:p,alwaysSet:u.alwaysSet})}return d}).then(d=>Ne.mergeObjectSync(r,d)):Ne.mergeObjectSync(r,c)}get shape(){return this._def.shape()}strict(t){return N.errToObj,new ve({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(n,r)=>{var s,i,a,l;const c=(a=(i=(s=this._def).errorMap)===null||i===void 0?void 0:i.call(s,n,r).message)!==null&&a!==void 0?a:r.defaultError;return n.code==="unrecognized_keys"?{message:(l=N.errToObj(t).message)!==null&&l!==void 0?l:c}:{message:c}}}:{}})}strip(){return new ve({...this._def,unknownKeys:"strip"})}passthrough(){return new ve({...this._def,unknownKeys:"passthrough"})}extend(t){return new ve({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new ve({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:F.ZodObject})}setKey(t,n){return this.augment({[t]:n})}catchall(t){return new ve({...this._def,catchall:t})}pick(t){const n={};return ne.objectKeys(t).forEach(r=>{t[r]&&this.shape[r]&&(n[r]=this.shape[r])}),new ve({...this._def,shape:()=>n})}omit(t){const n={};return ne.objectKeys(this.shape).forEach(r=>{t[r]||(n[r]=this.shape[r])}),new ve({...this._def,shape:()=>n})}deepPartial(){return un(this)}partial(t){const n={};return ne.objectKeys(this.shape).forEach(r=>{const s=this.shape[r];t&&!t[r]?n[r]=s:n[r]=s.optional()}),new ve({...this._def,shape:()=>n})}required(t){const n={};return ne.objectKeys(this.shape).forEach(r=>{if(t&&!t[r])n[r]=this.shape[r];else{let i=this.shape[r];for(;i instanceof ht;)i=i._def.innerType;n[r]=i}}),new ve({...this._def,shape:()=>n})}keyof(){return lc(ne.objectKeys(this.shape))}}ve.create=(e,t)=>new ve({shape:()=>e,unknownKeys:"strip",catchall:St.create(),typeName:F.ZodObject,...Y(t)});ve.strictCreate=(e,t)=>new ve({shape:()=>e,unknownKeys:"strict",catchall:St.create(),typeName:F.ZodObject,...Y(t)});ve.lazycreate=(e,t)=>new ve({shape:e,unknownKeys:"strip",catchall:St.create(),typeName:F.ZodObject,...Y(t)});class er extends Q{_parse(t){const{ctx:n}=this._processInputParams(t),r=this._def.options;function s(i){for(const l of i)if(l.result.status==="valid")return l.result;for(const l of i)if(l.result.status==="dirty")return n.common.issues.push(...l.ctx.common.issues),l.result;const a=i.map(l=>new Ze(l.ctx.common.issues));return P(n,{code:E.invalid_union,unionErrors:a}),B}if(n.common.async)return Promise.all(r.map(async i=>{const a={...n,common:{...n.common,issues:[]},parent:null};return{result:await i._parseAsync({data:n.data,path:n.path,parent:a}),ctx:a}})).then(s);{let i;const a=[];for(const c of r){const d={...n,common:{...n.common,issues:[]},parent:null},u=c._parseSync({data:n.data,path:n.path,parent:d});if(u.status==="valid")return u;u.status==="dirty"&&!i&&(i={result:u,ctx:d}),d.common.issues.length&&a.push(d.common.issues)}if(i)return n.common.issues.push(...i.ctx.common.issues),i.result;const l=a.map(c=>new Ze(c));return P(n,{code:E.invalid_union,unionErrors:l}),B}}get options(){return this._def.options}}er.create=(e,t)=>new er({options:e,typeName:F.ZodUnion,...Y(t)});const _t=e=>e instanceof rr?_t(e.schema):e instanceof lt?_t(e.innerType()):e instanceof sr?[e.value]:e instanceof Nt?e.options:e instanceof ir?ne.objectValues(e.enum):e instanceof or?_t(e._def.innerType):e instanceof Xn?[void 0]:e instanceof qn?[null]:e instanceof ht?[void 0,..._t(e.unwrap())]:e instanceof Lt?[null,..._t(e.unwrap())]:e instanceof qi||e instanceof lr?_t(e.unwrap()):e instanceof ar?_t(e._def.innerType):[];class us extends Q{_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==M.object)return P(n,{code:E.invalid_type,expected:M.object,received:n.parsedType}),B;const r=this.discriminator,s=n.data[r],i=this.optionsMap.get(s);return i?n.common.async?i._parseAsync({data:n.data,path:n.path,parent:n}):i._parseSync({data:n.data,path:n.path,parent:n}):(P(n,{code:E.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),B)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){const s=new Map;for(const i of n){const a=_t(i.shape[t]);if(!a.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(const l of a){if(s.has(l))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(l)}`);s.set(l,i)}}return new us({typeName:F.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:s,...Y(r)})}}function mi(e,t){const n=wt(e),r=wt(t);if(e===t)return{valid:!0,data:e};if(n===M.object&&r===M.object){const s=ne.objectKeys(t),i=ne.objectKeys(e).filter(l=>s.indexOf(l)!==-1),a={...e,...t};for(const l of i){const c=mi(e[l],t[l]);if(!c.valid)return{valid:!1};a[l]=c.data}return{valid:!0,data:a}}else if(n===M.array&&r===M.array){if(e.length!==t.length)return{valid:!1};const s=[];for(let i=0;i<e.length;i++){const a=e[i],l=t[i],c=mi(a,l);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return n===M.date&&r===M.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}class tr extends Q{_parse(t){const{status:n,ctx:r}=this._processInputParams(t),s=(i,a)=>{if(pi(i)||pi(a))return B;const l=mi(i.value,a.value);return l.valid?((hi(i)||hi(a))&&n.dirty(),{status:n.value,value:l.data}):(P(r,{code:E.invalid_intersection_types}),B)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}tr.create=(e,t,n)=>new tr({left:e,right:t,typeName:F.ZodIntersection,...Y(n)});class gt extends Q{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==M.array)return P(r,{code:E.invalid_type,expected:M.array,received:r.parsedType}),B;if(r.data.length<this._def.items.length)return P(r,{code:E.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),B;!this._def.rest&&r.data.length>this._def.items.length&&(P(r,{code:E.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());const i=[...r.data].map((a,l)=>{const c=this._def.items[l]||this._def.rest;return c?c._parse(new mt(r,a,r.path,l)):null}).filter(a=>!!a);return r.common.async?Promise.all(i).then(a=>Ne.mergeArray(n,a)):Ne.mergeArray(n,i)}get items(){return this._def.items}rest(t){return new gt({...this._def,rest:t})}}gt.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new gt({items:e,typeName:F.ZodTuple,rest:null,...Y(t)})};class nr extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==M.object)return P(r,{code:E.invalid_type,expected:M.object,received:r.parsedType}),B;const s=[],i=this._def.keyType,a=this._def.valueType;for(const l in r.data)s.push({key:i._parse(new mt(r,l,r.path,l)),value:a._parse(new mt(r,r.data[l],r.path,l)),alwaysSet:l in r.data});return r.common.async?Ne.mergeObjectAsync(n,s):Ne.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof Q?new nr({keyType:t,valueType:n,typeName:F.ZodRecord,...Y(r)}):new nr({keyType:ot.create(),valueType:t,typeName:F.ZodRecord,...Y(n)})}}class qr extends Q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==M.map)return P(r,{code:E.invalid_type,expected:M.map,received:r.parsedType}),B;const s=this._def.keyType,i=this._def.valueType,a=[...r.data.entries()].map(([l,c],d)=>({key:s._parse(new mt(r,l,r.path,[d,"key"])),value:i._parse(new mt(r,c,r.path,[d,"value"]))}));if(r.common.async){const l=new Map;return Promise.resolve().then(async()=>{for(const c of a){const d=await c.key,u=await c.value;if(d.status==="aborted"||u.status==="aborted")return B;(d.status==="dirty"||u.status==="dirty")&&n.dirty(),l.set(d.value,u.value)}return{status:n.value,value:l}})}else{const l=new Map;for(const c of a){const d=c.key,u=c.value;if(d.status==="aborted"||u.status==="aborted")return B;(d.status==="dirty"||u.status==="dirty")&&n.dirty(),l.set(d.value,u.value)}return{status:n.value,value:l}}}}qr.create=(e,t,n)=>new qr({valueType:t,keyType:e,typeName:F.ZodMap,...Y(n)});class qt extends Q{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==M.set)return P(r,{code:E.invalid_type,expected:M.set,received:r.parsedType}),B;const s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(P(r,{code:E.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),n.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(P(r,{code:E.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),n.dirty());const i=this._def.valueType;function a(c){const d=new Set;for(const u of c){if(u.status==="aborted")return B;u.status==="dirty"&&n.dirty(),d.add(u.value)}return{status:n.value,value:d}}const l=[...r.data.values()].map((c,d)=>i._parse(new mt(r,c,r.path,d)));return r.common.async?Promise.all(l).then(c=>a(c)):a(l)}min(t,n){return new qt({...this._def,minSize:{value:t,message:N.toString(n)}})}max(t,n){return new qt({...this._def,maxSize:{value:t,message:N.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}}qt.create=(e,t)=>new qt({valueType:e,minSize:null,maxSize:null,typeName:F.ZodSet,...Y(t)});class gn extends Q{constructor(){super(...arguments),this.validate=this.implement}_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==M.function)return P(n,{code:E.invalid_type,expected:M.function,received:n.parsedType}),B;function r(l,c){return Yr({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Kr(),wn].filter(d=>!!d),issueData:{code:E.invalid_arguments,argumentsError:c}})}function s(l,c){return Yr({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Kr(),wn].filter(d=>!!d),issueData:{code:E.invalid_return_type,returnTypeError:c}})}const i={errorMap:n.common.contextualErrorMap},a=n.data;if(this._def.returns instanceof kn){const l=this;return $e(async function(...c){const d=new Ze([]),u=await l._def.args.parseAsync(c,i).catch(h=>{throw d.addIssue(r(c,h)),d}),f=await Reflect.apply(a,this,u);return await l._def.returns._def.type.parseAsync(f,i).catch(h=>{throw d.addIssue(s(f,h)),d})})}else{const l=this;return $e(function(...c){const d=l._def.args.safeParse(c,i);if(!d.success)throw new Ze([r(c,d.error)]);const u=Reflect.apply(a,this,d.data),f=l._def.returns.safeParse(u,i);if(!f.success)throw new Ze([s(u,f.error)]);return f.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new gn({...this._def,args:gt.create(t).rest(Vt.create())})}returns(t){return new gn({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,n,r){return new gn({args:t||gt.create([]).rest(Vt.create()),returns:n||Vt.create(),typeName:F.ZodFunction,...Y(r)})}}class rr extends Q{get schema(){return this._def.getter()}_parse(t){const{ctx:n}=this._processInputParams(t);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}}rr.create=(e,t)=>new rr({getter:e,typeName:F.ZodLazy,...Y(t)});class sr extends Q{_parse(t){if(t.data!==this._def.value){const n=this._getOrReturnCtx(t);return P(n,{received:n.data,code:E.invalid_literal,expected:this._def.value}),B}return{status:"valid",value:t.data}}get value(){return this._def.value}}sr.create=(e,t)=>new sr({value:e,typeName:F.ZodLiteral,...Y(t)});function lc(e,t){return new Nt({values:e,typeName:F.ZodEnum,...Y(t)})}class Nt extends Q{constructor(){super(...arguments),Bn.set(this,void 0)}_parse(t){if(typeof t.data!="string"){const n=this._getOrReturnCtx(t),r=this._def.values;return P(n,{expected:ne.joinValues(r),received:n.parsedType,code:E.invalid_type}),B}if(Qr(this,Bn)||sc(this,Bn,new Set(this._def.values)),!Qr(this,Bn).has(t.data)){const n=this._getOrReturnCtx(t),r=this._def.values;return P(n,{received:n.data,code:E.invalid_enum_value,options:r}),B}return $e(t.data)}get options(){return this._def.values}get enum(){const t={};for(const n of this._def.values)t[n]=n;return t}get Values(){const t={};for(const n of this._def.values)t[n]=n;return t}get Enum(){const t={};for(const n of this._def.values)t[n]=n;return t}extract(t,n=this._def){return Nt.create(t,{...this._def,...n})}exclude(t,n=this._def){return Nt.create(this.options.filter(r=>!t.includes(r)),{...this._def,...n})}}Bn=new WeakMap;Nt.create=lc;class ir extends Q{constructor(){super(...arguments),Gn.set(this,void 0)}_parse(t){const n=ne.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(t);if(r.parsedType!==M.string&&r.parsedType!==M.number){const s=ne.objectValues(n);return P(r,{expected:ne.joinValues(s),received:r.parsedType,code:E.invalid_type}),B}if(Qr(this,Gn)||sc(this,Gn,new Set(ne.getValidEnumValues(this._def.values))),!Qr(this,Gn).has(t.data)){const s=ne.objectValues(n);return P(r,{received:r.data,code:E.invalid_enum_value,options:s}),B}return $e(t.data)}get enum(){return this._def.values}}Gn=new WeakMap;ir.create=(e,t)=>new ir({values:e,typeName:F.ZodNativeEnum,...Y(t)});class kn extends Q{unwrap(){return this._def.type}_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==M.promise&&n.common.async===!1)return P(n,{code:E.invalid_type,expected:M.promise,received:n.parsedType}),B;const r=n.parsedType===M.promise?n.data:Promise.resolve(n.data);return $e(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}}kn.create=(e,t)=>new kn({type:e,typeName:F.ZodPromise,...Y(t)});class lt extends Q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===F.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){const{status:n,ctx:r}=this._processInputParams(t),s=this._def.effect||null,i={addIssue:a=>{P(r,a),a.fatal?n.abort():n.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){const a=s.transform(r.data,i);if(r.common.async)return Promise.resolve(a).then(async l=>{if(n.value==="aborted")return B;const c=await this._def.schema._parseAsync({data:l,path:r.path,parent:r});return c.status==="aborted"?B:c.status==="dirty"||n.value==="dirty"?hn(c.value):c});{if(n.value==="aborted")return B;const l=this._def.schema._parseSync({data:a,path:r.path,parent:r});return l.status==="aborted"?B:l.status==="dirty"||n.value==="dirty"?hn(l.value):l}}if(s.type==="refinement"){const a=l=>{const c=s.refinement(l,i);if(r.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return l};if(r.common.async===!1){const l=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return l.status==="aborted"?B:(l.status==="dirty"&&n.dirty(),a(l.value),{status:n.value,value:l.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(l=>l.status==="aborted"?B:(l.status==="dirty"&&n.dirty(),a(l.value).then(()=>({status:n.value,value:l.value}))))}if(s.type==="transform")if(r.common.async===!1){const a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Jt(a))return a;const l=s.transform(a.value,i);if(l instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:l}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>Jt(a)?Promise.resolve(s.transform(a.value,i)).then(l=>({status:n.value,value:l})):a);ne.assertNever(s)}}lt.create=(e,t,n)=>new lt({schema:e,typeName:F.ZodEffects,effect:t,...Y(n)});lt.createWithPreprocess=(e,t,n)=>new lt({schema:t,effect:{type:"preprocess",transform:e},typeName:F.ZodEffects,...Y(n)});class ht extends Q{_parse(t){return this._getType(t)===M.undefined?$e(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}ht.create=(e,t)=>new ht({innerType:e,typeName:F.ZodOptional,...Y(t)});class Lt extends Q{_parse(t){return this._getType(t)===M.null?$e(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}Lt.create=(e,t)=>new Lt({innerType:e,typeName:F.ZodNullable,...Y(t)});class or extends Q{_parse(t){const{ctx:n}=this._processInputParams(t);let r=n.data;return n.parsedType===M.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}}or.create=(e,t)=>new or({innerType:e,typeName:F.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...Y(t)});class ar extends Q{_parse(t){const{ctx:n}=this._processInputParams(t),r={...n,common:{...n.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Qn(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Ze(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ze(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}ar.create=(e,t)=>new ar({innerType:e,typeName:F.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...Y(t)});class es extends Q{_parse(t){if(this._getType(t)!==M.nan){const r=this._getOrReturnCtx(t);return P(r,{code:E.invalid_type,expected:M.nan,received:r.parsedType}),B}return{status:"valid",value:t.data}}}es.create=e=>new es({typeName:F.ZodNaN,...Y(e)});const Sf=Symbol("zod_brand");class qi extends Q{_parse(t){const{ctx:n}=this._processInputParams(t),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}}class vr extends Q{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?B:i.status==="dirty"?(n.dirty(),hn(i.value)):this._def.out._parseAsync({data:i.value,path:r.path,parent:r})})();{const s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?B:s.status==="dirty"?(n.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(t,n){return new vr({in:t,out:n,typeName:F.ZodPipeline})}}class lr extends Q{_parse(t){const n=this._def.innerType._parse(t),r=s=>(Jt(s)&&(s.value=Object.freeze(s.value)),s);return Qn(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}}lr.create=(e,t)=>new lr({innerType:e,typeName:F.ZodReadonly,...Y(t)});function sa(e,t){const n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function cc(e,t={},n){return e?Sn.create().superRefine((r,s)=>{var i,a;const l=e(r);if(l instanceof Promise)return l.then(c=>{var d,u;if(!c){const f=sa(t,r),p=(u=(d=f.fatal)!==null&&d!==void 0?d:n)!==null&&u!==void 0?u:!0;s.addIssue({code:"custom",...f,fatal:p})}});if(!l){const c=sa(t,r),d=(a=(i=c.fatal)!==null&&i!==void 0?i:n)!==null&&a!==void 0?a:!0;s.addIssue({code:"custom",...c,fatal:d})}}):Sn.create()}const kf={object:ve.lazycreate};var F;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(F||(F={}));const Rf=(e,t={message:`Input not instance of ${e.name}`})=>cc(n=>n instanceof e,t),dc=ot.create,uc=Mt.create,Ef=es.create,If=Dt.create,fc=Jn.create,xf=Xt.create,Tf=Jr.create,Cf=Xn.create,Af=qn.create,Of=Sn.create,Pf=Vt.create,jf=St.create,Mf=Xr.create,Df=at.create,Nf=ve.create,Lf=ve.strictCreate,$f=er.create,Uf=us.create,Ff=tr.create,Bf=gt.create,Gf=nr.create,Hf=qr.create,Wf=qt.create,zf=gn.create,Zf=rr.create,Vf=sr.create,Kf=Nt.create,Yf=ir.create,Qf=kn.create,ia=lt.create,Jf=ht.create,Xf=Lt.create,qf=lt.createWithPreprocess,ep=vr.create,tp=()=>dc().optional(),np=()=>uc().optional(),rp=()=>fc().optional(),sp={string:e=>ot.create({...e,coerce:!0}),number:e=>Mt.create({...e,coerce:!0}),boolean:e=>Jn.create({...e,coerce:!0}),bigint:e=>Dt.create({...e,coerce:!0}),date:e=>Xt.create({...e,coerce:!0})},ip=B;var o=Object.freeze({__proto__:null,defaultErrorMap:wn,setErrorMap:Xu,getErrorMap:Kr,makeIssue:Yr,EMPTY_PATH:qu,addIssueToContext:P,ParseStatus:Ne,INVALID:B,DIRTY:hn,OK:$e,isAborted:pi,isDirty:hi,isValid:Jt,isAsync:Qn,get util(){return ne},get objectUtil(){return fi},ZodParsedType:M,getParsedType:wt,ZodType:Q,datetimeRegex:ac,ZodString:ot,ZodNumber:Mt,ZodBigInt:Dt,ZodBoolean:Jn,ZodDate:Xt,ZodSymbol:Jr,ZodUndefined:Xn,ZodNull:qn,ZodAny:Sn,ZodUnknown:Vt,ZodNever:St,ZodVoid:Xr,ZodArray:at,ZodObject:ve,ZodUnion:er,ZodDiscriminatedUnion:us,ZodIntersection:tr,ZodTuple:gt,ZodRecord:nr,ZodMap:qr,ZodSet:qt,ZodFunction:gn,ZodLazy:rr,ZodLiteral:sr,ZodEnum:Nt,ZodNativeEnum:ir,ZodPromise:kn,ZodEffects:lt,ZodTransformer:lt,ZodOptional:ht,ZodNullable:Lt,ZodDefault:or,ZodCatch:ar,ZodNaN:es,BRAND:Sf,ZodBranded:qi,ZodPipeline:vr,ZodReadonly:lr,custom:cc,Schema:Q,ZodSchema:Q,late:kf,get ZodFirstPartyTypeKind(){return F},coerce:sp,any:Of,array:Df,bigint:If,boolean:fc,date:xf,discriminatedUnion:Uf,effect:ia,enum:Kf,function:zf,instanceof:Rf,intersection:Ff,lazy:Zf,literal:Vf,map:Hf,nan:Ef,nativeEnum:Yf,never:jf,null:Af,nullable:Xf,number:uc,object:Nf,oboolean:rp,onumber:np,optional:Jf,ostring:tp,pipeline:ep,preprocess:qf,promise:Qf,record:Gf,set:Wf,strictObject:Lf,string:dc,symbol:Tf,transformer:ia,tuple:Bf,undefined:Cf,union:$f,unknown:Pf,void:Mf,NEVER:ip,ZodIssueCode:E,quotelessJson:Ju,ZodError:Ze});const oa=o.enum(["app_start","sign_in","window_focus","surface_open"]),pc=o.object({id:o.string().min(1),state:o.enum(["active","paused","disabled"])}).passthrough(),op=o.object({tenant_id:o.string().min(1),tenant_name:o.string().optional(),eligible:o.boolean(),endpoint:pc.nullable()}).passthrough(),ap=o.object({code:o.string(),message:o.string(),details:o.record(o.unknown()).optional(),retry_after_seconds:o.number().optional()}).passthrough(),lp=o.object({code:o.string().min(1),count:o.number().int().nonnegative(),session:o.string().min(1).nullable().optional().catch(null)}).passthrough().nullable().optional().catch(null),$S=o.object({capability:o.number(),consent_account_guard:o.boolean().optional(),state:o.enum(["ready","signed_out","unavailable","update_required"]),account_id:o.string().nullable(),tenant_id:o.string().nullable(),surface_state:o.enum(["A","B","C","D","E","F","G"]).nullable(),visibility:o.object({settings:o.boolean(),inbox:o.boolean(),account_door:o.boolean(),onboarding:o.boolean()}),update_required:o.boolean(),local:o.object({enabled:o.boolean(),onboarding:o.string(),session:o.string()}),status:o.object({tenants:o.array(op)}).passthrough().nullable(),consent:o.object({version:o.string().min(1).max(128),text:o.string().min(1).refine(e=>new TextEncoder().encode(e).length<=2048,"Consent exceeds the served-text contract"),source:o.enum(["served","cached","embedded"])}).nullable(),error:ap.nullable(),state_note:o.string().nullable().optional(),read_only:o.boolean().optional(),delivery_hold:lp}).passthrough(),cp=o.object({version:o.string().min(1),consented_at:o.string().min(1),consented_via:o.enum(["dialog","settings"]),current:o.boolean()}).passthrough(),US=o.object({endpoint:pc.extend({tenant_id:o.string().min(1),label:o.string().optional(),consent:cp.nullable().optional(),created_at:o.string().optional(),updated_at:o.string().optional()}).nullable(),settings:o.object({tenant_id:o.string().min(1),eligible:o.boolean(),consent_version:o.string().optional(),consent_required:o.boolean()}).passthrough()}).passthrough(),dp=o.object({kind:o.enum(["endpoint","account"]).optional(),endpoint_id:o.string().min(1).optional(),account_id:o.string().min(1).optional()}).passthrough().refine(e=>!!e.endpoint_id!=!!e.account_id,"An allowlist target names exactly one of endpoint_id or account_id").refine(e=>e.kind===void 0||(e.kind==="endpoint"?e.endpoint_id!==void 0:e.account_id!==void 0),"An allowlist target's kind must agree with the id it carries"),aa=o.object({direction:o.enum(["send","receive"]),effect:o.enum(["allow","deny"]),target:dp,id:o.string().optional()}).passthrough(),la=o.object({mode:o.enum(["class_default","listed_only"]),allow:o.number(),deny:o.number()}).passthrough(),FS=o.object({allowlist:o.object({tenant_id:o.string().min(1),entries:o.array(aa)}).passthrough(),view:o.object({tenant_id:o.string().nullable(),entries:o.array(aa),directions:o.object({send:la,receive:la}),class_default:o.literal("cos_cos"),cues:o.object({allow_entry_switches_direction_to_listed_only:o.boolean(),listed_only_affects:o.string(),removing_allow_does_not_stop_open_thread:o.boolean(),deny_stops_pair_both_directions:o.boolean()}).passthrough()}).passthrough()}).passthrough();function BS(e,t){if(!e||!t||e.account_id!==t||e.capability<1||e.state!=="ready"||e.update_required||e.surface_state!=="B"||!e.visibility.onboarding||!e.tenant_id)return null;const n=e.status?.tenants.filter(r=>r.tenant_id===e.tenant_id);return n?.length!==1||n[0].eligible!==!0||n[0].endpoint!==null?null:{accountId:t,tenantId:e.tenant_id}}function GS(e){const t=e?.consent;return t&&(t.source==="served"||t.source==="cached")?t:null}const gi=["aida","library","projects","agents","schedules","browser","team-bridge","agent-hub","mesh"],up=6*1024,fp=512;function ts(e,t,n){let r=new TextEncoder().encode(`${t}${e.size?`?${e}`:""}`).length;const s=[];for(const i of n){if(s.length===fp)break;const l=new URLSearchParams({order_ids:i}).toString().length+1;if(r+l>up)break;e.append("order_ids",i),s.push(i),r+=l}return s}function pp(e,t,n){return ts(new URLSearchParams(n),t,e)}const k=o.string().min(1).max(128).regex(/^[a-zA-Z0-9_-]+$/),Ar=o.string().min(1).max(256).regex(/^[a-zA-Z0-9_][a-zA-Z0-9_.-]*$/),Or=o.string().min(1).max(32768),hp=/^[a-f0-9]{12}$/,L=o.string().regex(hp),Ds=o.string().regex(/^[a-f0-9]{12}$/),Ns=o.string().min(1).max(128),mp=o.string().min(1).max(4096),Ls=o.string().regex(/^[A-Za-z0-9_.:-]{1,100}$/),Pr=o.string().regex(/^\$\{[A-Za-z_][A-Za-z0-9_]*\}$/),ca=o.string().regex(/^[a-f0-9]{32}$/),gp=/^(\/|[A-Za-z]:[\\/])/,$s=o.string().min(1).max(4096).regex(gp),da=/^[a-f0-9]{32}$/,te=o.string().regex(/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/),ua=o.string().min(1).max(512).nullish(),cn=o.string().regex(/^[A-Za-z0-9_-]{1,128}$/),fa=o.string().regex(/^ap_[0-9a-hjkmnp-tv-z]{1,64}$/),Mn=o.string().regex(/^la_[0-9a-f]{16}$/),Dn=o.string().min(1).max(128).regex(/^[A-Za-z0-9_.:-]+$/),pa=o.object({data_b64:o.string().min(1).max(1e6),mime_type:o.enum(["image/png","image/jpeg","image/gif","image/webp"])}).strict(),ha=2e5,ma=8,yp=256,vp=100,ga=16,_p=256,bp=100,wp=200,Sp=1e6,kp=o.enum(["auto","none","minimal","low","medium","high","xhigh","max"]),Oe=o.string().min(1).max(128).refine(e=>e!=="."&&e!==".."&&!e.includes("/")&&!e.includes("\\")&&[...e].every(t=>t.charCodeAt(0)>=32&&t.charCodeAt(0)!==127)),jr=o.object({kind:o.enum(["agent","team"]),name:Oe}).strict(),hc=o.enum(["claude","codex","omp"]),Rp=o.record(o.string(),o.array(o.string().min(1).max(512)).max(5e3)),ya={sources:o.array(hc).max(3).optional(),sessionIds:Rp.optional(),all:o.boolean().optional(),includeSubagents:o.boolean().optional(),includeClearedSegments:o.boolean().optional(),includeMemory:o.boolean().optional(),includeInstructions:o.boolean().optional(),maxSessions:o.number().int().min(1).max(5e3).optional()},Us=o.object({provider:o.string().min(1).max(128),model_id:o.string().min(1).max(512),reasoning_effort:o.string().min(1).max(64).nullable()}).strict(),va=o.object({kind:o.enum(["role","specialist"]).optional(),description:o.string().max(8e3).optional(),instructions:o.string().max(8e3).optional(),tools:o.array(o.string().min(1).max(128)).max(256).optional(),effort:o.string().max(64).optional(),delegate:o.boolean().optional(),action_class:o.enum(["reactive","proactive"]).optional()}).strict(),_a=o.object({name:o.string().min(1).max(64).optional(),description:o.string().max(8e3).optional(),manager:Oe.optional(),members:o.array(o.object({role:Oe,count:o.number().int().min(1).max(16),kind:o.enum(["agent","team"]),tier:o.enum(["lo","med","hi"]).nullable().optional(),effort:kp.nullable().optional()}).strict()).max(128).optional(),instructions:o.string().max(8e3).optional(),project:o.string().max(8e3).optional()}).strict(),Ep=o.record(o.array(o.string().max(1024)).max(100)),ba=o.enum(["minutes","hours","days"]);function Ip(e){return!/^\.+$/.test(e)}const HS=e=>Wr.safeParse(e).success,Wr=o.string().min(1).max(128).refine(e=>[...e].every(t=>t.charCodeAt(0)>=32&&t.charCodeAt(0)!==127&&t!=="/"&&t!=="\\")).refine(Ip),wa=o.enum(["str","int","float","bool","list","dict"]),Sa=o.string().max(16384),xp=2e3,ka=o.string().min(1).max(xp),Ra=o.string().min(1).max(64),Tp=o.string().min(1).max(64),Cp=o.string().min(1).max(64),Ea=o.object({is_active:o.boolean().nullish(),one_time:o.boolean().nullish(),start_time_utc:o.string().max(64).nullish(),end_time_utc:o.string().max(64).nullish()}).strict(),Ap=o.object({conversation_length:o.number().int().optional(),detail_length:o.number().int().optional(),max_learnings_history:o.number().int().optional(),hosting:o.string().max(256).optional(),model_name:o.string().max(1024).optional(),auto_save_conversation:o.boolean().optional()}).strict(),yi=128,Ia=2e3,xa=8e3,Ta=64,Ca=64,fs=e=>[...e].length,vi=e=>e>=9&&e<=13||e>=28&&e<=32||e===133||e===160||e===5760||e>=8192&&e<=8202||e===8232||e===8233||e===8239||e===8287||e===12288,Op=e=>e===9||e===10||e===11||e===12||e===13||e===133,Pp=e=>e<=31||e>=127&&e<=159,jp=e=>new RegExp("\\p{Cf}","u").test(String.fromCodePoint(e)),Mp=e=>e>=8234&&e<=8238||e>=8294&&e<=8297,Mr=(e,t)=>{for(const n of e)if(t(n.codePointAt(0)??0))return!0;return!1},mc=e=>{const t=[...e];let n=0,r=t.length;for(;n<r&&vi(t[n].codePointAt(0)??0);)n++;for(;r>n&&vi(t[r-1].codePointAt(0)??0);)r--;return t.slice(n,r).join("")},Dp=e=>{let t="",n=!1;for(const r of e){if(vi(r.codePointAt(0)??0)){n=t.length>0;continue}n&&(t+=" ",n=!1),t+=r}return t};function Np(e){const t=mc(e);if(!t)return"must not be empty";if(fs(t)>yi)return`must be at most ${yi} characters`;if(/[/\\:]/.test(t))return'must not contain "/", "\\" or ":"';if(Mr(t,Mp))return"must not contain Unicode bidirectional override characters";if(Mr(t,Op))return"must not contain whitespace";if(Mr(t,Pp))return"must not contain control characters";if(Mr(t,jp))return"must not contain invisible Unicode formatting characters";const n=[...t];return"-.".includes(n[0])||"-.".includes(n[n.length-1])?'must not begin or end with "-" or "."':null}function WS(e){return Dp(mc(e).normalize("NFKC").toLowerCase())}function Lp(e){return e.trim()?fs(e)>Ia?`must be at most ${Ia} characters`:null:"must not be empty"}function $p(e){return e.trim()?fs(e)>xa?`must be at most ${xa} characters`:null:"must not be empty"}function Up(e){if(e.length>Ca)return`must hold at most ${Ca} items`;for(const t of e)if(!t.trim()||fs(t)>Ta)return`must hold items of 1 to ${Ta} characters`;return null}const Fp=e=>Np(e)===null,Bp=o.string().refine(Fp,{message:"That is not a name the hub can publish."}),Gp=o.string().refine(e=>$p(e)===null,{message:"That instruction body cannot be published."}),Hp=o.string().refine(e=>Lp(e)===null,{message:"That description cannot be published."}),Wp=o.array(o.string()).refine(e=>Up(e)===null,{message:"That tool list cannot be published."}),Fs={requestId:te.optional(),subscribe:o.boolean().optional(),autoPush:o.boolean().optional(),confirmPublicEgress:o.boolean().optional()},Aa=o.object({name:Bp,description:Hp,instructions:Gp,kind:o.enum(["role","specialist"]),when_to_use:o.string(),tools:Wp,effort:o.string(),delegate:o.boolean(),version:o.string(),categories:o.array(o.string()),tags:o.array(o.string())}).partial().strict(),zp=o.enum(["team","agent"]),Zp=o.string().min(1).max(64),Vp=o.string().min(1).max(256),gc=/^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/,Bs=o.string().regex(gc,{message:"Letters, digits, dot, underscore and dash; no spaces."}),Kp=["planning","active","qa","validation","done","paused","archived"],Oa=o.enum(Kp),Dr=o.string().regex(/^$|^\d{4}-\d{2}-\d{2}$/,"Dates are YYYY-MM-DD, or empty to clear."),Pa=o.array(o.string().min(1).max(24)).max(8),Tt=o.string().min(1).max(64),Yp=1e3,ja=240,Ma=80,Qp=256,Jp=100,Xp=200,qp=/^[a-z0-9][a-z0-9_-]{0,23}$/;function zS(e){return e?gc.test(e)?null:"Names start with a letter or digit and may use letters, digits, dot, underscore or dash.":"Give the project a name."}function ZS(e){return qp.test(e)?null:"Tags are 1-24 characters of lowercase letters, digits, underscore or dash."}const Nr=o.enum(["agent","team","skill"]),Da=o.enum(gi),eh=o.object({visible:o.array(Da).max(gi.length),more:o.array(Da).max(gi.length)}).strict(),th=o.discriminatedUnion("op",[o.object({op:o.literal("capabilities")}).strict(),o.object({op:o.literal("runtimes.list")}).strict(),o.object({op:o.literal("profiles.list")}).strict(),o.object({op:o.literal("profiles.get"),name:Oe}).strict(),o.object({op:o.literal("imports.sources")}).strict(),o.object({op:o.literal("imports.sessions"),source:hc,includeSubagents:o.boolean().optional()}).strict(),o.object({op:o.literal("imports.preview"),...ya}).strict(),o.object({op:o.literal("imports.start"),...ya}).strict(),o.object({op:o.literal("imports.status"),jobId:o.string().min(1).max(128)}).strict(),o.object({op:o.literal("imports.cancel"),jobId:o.string().min(1).max(128)}).strict(),o.object({op:o.literal("profiles.update"),name:Oe,requestId:te,fields:va,expectedDefinitionRevision:ua.optional()}).strict(),o.object({op:o.literal("profiles.install"),name:Oe,requestId:te}).strict(),o.object({op:o.literal("profiles.create"),name:Oe,requestId:te,fields:va.extend({description:o.string().max(8e3),instructions:o.string().min(1).max(8e3)})}).strict(),o.object({op:o.literal("hub.updates")}).strict(),o.object({op:o.literal("hub.skillPull"),requestId:te,hubId:k,hubSource:o.string().min(1).max(2048),visibility:o.enum(["public","org"]),tenantId:k.nullable(),localAlias:Oe,subscribe:o.boolean().optional(),autoPush:o.boolean().optional(),confirmPublicEgress:o.boolean().optional()}).strict(),o.object({op:o.literal("hub.skillSubscribe"),requestId:te,hubId:k,hubSource:o.string().min(1).max(2048),visibility:o.enum(["public","org"]),tenantId:k.nullable(),localAlias:Oe}).strict(),o.object({op:o.literal("hub.skillUnpull"),requestId:te,linkId:o.string().min(1).max(256)}).strict(),o.object({op:o.literal("hub.skillPublish"),requestId:te,dryRun:o.boolean(),sourceSkill:Oe,localAlias:Oe,visibility:o.enum(["public","org"]),tenantId:k.nullable(),subscribe:o.boolean(),autoPush:o.boolean(),confirmPublicEgress:o.boolean(),previewReceipt:o.string().min(1).max(4096).optional(),confirmPublish:o.literal(!0).optional()}).strict(),o.object({op:o.literal("hub.links"),kind:o.enum(["agent","team","skill"]).optional()}).strict(),o.object({op:o.literal("hub.policy"),requestId:te,linkId:o.string().min(1).max(256),expectedPolicyRevision:o.string().min(1).max(256),subscribe:o.boolean().optional(),autoPush:o.boolean().optional(),confirmPublicEgress:o.boolean().optional()}).strict(),o.object({op:o.literal("hub.check"),requestId:te,linkId:o.string().min(1).max(256).optional(),direction:o.enum(["pull","push"]).optional(),kind:Nr.optional(),name:Oe.optional()}).strict(),o.object({op:o.literal("hub.apply"),requestId:te,previewReceipt:o.string().min(1).max(4096).optional(),confirmApply:o.literal(!0).optional(),linkId:o.string().min(1).max(256).optional(),direction:o.literal("pull").optional(),kind:Nr.optional(),name:Oe.optional(),prefer:o.enum(["local","remote"]).optional(),acknowledgeUnknownBaseline:o.boolean().optional(),dryRun:o.boolean().optional(),resolveSource:o.literal(!0).optional(),hubSource:o.string().min(1).max(2048).optional(),visibility:o.enum(["public","org"]).optional(),tenantId:o.string().min(1).max(128).nullable().optional()}).strict(),o.object({op:o.literal("hub.applyAll"),requestId:te,kind:Nr.optional()}).strict(),o.object({op:o.literal("hub.retry"),requestId:te,linkId:o.string().min(1).max(256).optional(),direction:o.enum(["pull","push"]).optional(),kind:Nr.optional(),name:Oe.optional()}).strict(),o.object({op:o.literal("hub.push"),requestId:te,linkId:o.string().min(1).max(256),direction:o.literal("push"),dryRun:o.boolean(),previewReceipt:o.string().min(1).max(4096).optional(),confirmPublish:o.literal(!0).optional()}).strict(),o.object({op:o.literal("teams.list")}).strict(),o.object({op:o.literal("teams.get"),name:Oe}).strict(),o.object({op:o.literal("teams.effective"),name:Oe}).strict(),o.object({op:o.literal("teams.update"),name:Oe,requestId:te,fields:_a,expectedDefinitionRevision:ua.optional()}).strict(),o.object({op:o.literal("teams.create"),requestId:te,fields:_a.extend({name:o.string().min(1).max(64)})}).strict(),o.object({op:o.literal("sessions.list"),limit:o.number().int().min(1).max(500).optional(),include_archived:o.boolean().optional(),include_peers:o.boolean().optional(),scope_kind:zp.optional(),scope_name:Zp.optional(),cursor:Vp.optional(),with_counts:o.boolean().optional(),sort:o.literal("activity").optional()}).strict(),o.object({op:o.literal("delegated_cleanup_notice.ack")}).strict(),o.object({op:o.literal("sessions.search"),q:o.string().min(1).max(yp),limit:o.number().int().min(1).max(500).optional(),include_archived:o.boolean().optional()}).strict(),o.object({op:o.literal("sessions.archive"),sessionId:L,archived:o.boolean()}).strict(),o.object({op:o.literal("sessions.delete"),sessionId:L,confirmed:o.literal(!0)}).strict(),o.object({op:o.literal("sessions.create"),requestId:te,cwd:o.string().min(1).max(4096).optional(),target:jr.optional(),purpose:o.literal("agents-config").optional(),model:Us.optional(),draftId:L.optional(),peer:cn.optional()}).strict(),o.object({op:o.literal("sessions.preview"),requestId:te,cwd:o.string().min(1).max(4096),target:jr.optional(),model:Us.optional()}).strict(),o.object({op:o.literal("sessions.draft"),requestId:te,cwd:o.string().min(1).max(4096),target:jr.optional(),model:Us.optional()}).strict(),o.object({op:o.literal("sessions.get"),sessionId:L,journalOrder:o.boolean().optional(),orderIds:o.array(o.string().min(1).max(128)).max(512).optional(),peerJournalSource:o.boolean().optional()}).strict(),o.object({op:o.literal("sessions.files"),sessionId:L,scope:o.enum(["family","self"]).optional(),kind:o.string().max(256).optional(),q:o.string().max(256).optional(),sort:o.enum(["recent","name","kind","modified","created","size"]).optional(),order:o.enum(["asc","desc"]).optional(),limit:o.number().int().min(1).max(200).optional(),cursor:o.string().max(8192).optional()}).strict(),o.object({op:o.literal("sessions.files.materialise"),sessionId:L,fileId:o.string().regex(/^[a-f0-9]{16}$/)}).strict(),o.object({op:o.literal("sessions.history"),sessionId:L,beforeId:k.optional(),limit:o.number().int().min(1).max(500).optional(),openFrame:o.boolean().optional(),journalOrder:o.boolean().optional(),orderIds:o.array(o.string().min(1).max(128)).max(512).optional(),peerJournalSource:o.boolean().optional(),sourceRead:o.enum(["metadata","payload"]).optional(),expectedJournalGeneration:o.string().min(1).max(128).optional()}).strict(),o.object({op:o.literal("sessions.checkpoints"),sessionId:L}).strict(),o.object({op:o.literal("sessions.checkpoints.warm"),sessionId:L,ids:o.array(k).max(ga).optional(),limit:o.number().int().min(1).max(ga).optional()}).strict(),o.object({op:o.literal("sessions.find"),sessionId:L,q:o.string().min(1).max(_p),limit:o.number().int().min(1).max(wp).optional()}).strict(),o.object({op:o.literal("subagents.transcript"),sessionId:L,childId:L,beforeId:k.optional(),limit:o.number().int().min(1).max(500).optional()}).strict(),o.object({op:o.literal("sessions.message"),sessionId:L,requestId:te,text:o.string().max(ha),images:o.array(pa).max(ma).optional(),mode:o.enum(["prompt","steer"]).optional(),inputMode:o.enum(["typed","dictated","mixed"]).optional(),inputPath:o.string().max(1024).optional()}).strict(),o.object({op:o.literal("sessions.command"),sessionId:L,requestId:te,command:o.string().regex(/^\/?[A-Za-z]+$/).max(64),args:o.string().max(ha).optional(),images:o.array(pa).max(ma).optional()}).strict(),o.object({op:o.literal("sessions.move"),sessionId:L,requestId:te,cwd:o.string().min(1).max(4096)}).strict(),o.object({op:o.literal("sessions.answer"),sessionId:L,epoch:k.optional(),requestId:k.optional(),value:o.string().max(32768).optional(),approved:o.boolean().optional(),questionIndex:o.number().int().min(0).optional(),askId:k.optional(),answers:o.record(o.string(),o.array(o.string().max(32768))).optional(),decline:o.boolean().optional(),revise:o.boolean().optional()}).strict(),o.object({op:o.literal("sessions.seen"),sessionId:L,completionToken:o.string().uuid()}).strict(),o.object({op:o.literal("attention.seen"),items:o.array(o.object({sessionId:L,completionToken:o.string().uuid()}).strict()).min(1).max(500)}).strict(),o.object({op:o.literal("sessions.notified"),sessionId:L,completionToken:o.string().uuid()}).strict(),o.object({op:o.literal("tags.list")}).strict(),o.object({op:o.literal("tags.replace"),tags:o.array(o.object({id:o.string().optional(),name:o.string()}).strict())}).strict(),o.object({op:o.literal("sessions.tags"),expected_revision:o.string().optional(),sessionId:L,tags:o.array(o.string()),primary:o.string().nullable()}).strict(),o.object({op:o.literal("sessions.pin"),sessionId:L,pinned:o.boolean()}).strict(),o.object({op:o.literal("sessions.watch"),sessionId:L,subscriptionId:o.string().regex(da),visible:o.boolean(),canNotify:o.boolean()}).strict(),o.object({op:o.literal("sessions.warm"),sessionId:L}).strict(),o.object({op:o.literal("sessions.interrupt"),sessionId:L,requestId:te}).strict(),o.object({op:o.literal("supplements.cancel"),sessionId:L,job:Ds,anchor:Ns}).strict(),o.object({op:o.literal("supplements.restart"),sessionId:L,job:Ds,anchor:Ns}).strict(),o.object({op:o.literal("supplements.steer"),sessionId:L,job:Ds,anchor:Ns,text:o.string().min(1).max(500)}).strict(),o.object({op:o.literal("sessions.variables.list"),sessionId:L}).strict(),o.object({op:o.literal("sessions.variables.create"),sessionId:L,key:Wr,value:Sa,type:wa}).strict(),o.object({op:o.literal("sessions.variables.update"),sessionId:L,key:Wr,value:Sa,type:wa}).strict(),o.object({op:o.literal("sessions.variables.delete"),sessionId:L,key:Wr}).strict(),o.object({op:o.literal("sessions.presence"),subscriptionId:o.string().regex(/^[a-f0-9]{1,64}$/),canNotify:o.boolean(),canNotifyKinds:o.array(o.enum(["complete","error"])).max(4),sessionId:o.string().regex(/^([a-f0-9]{12})?$/),window:o.object({exists:o.boolean(),focused:o.boolean(),visible:o.boolean(),minimized:o.boolean()}).strict()}).strict(),o.object({op:o.literal("legacy.models"),provider:o.string().max(128).optional(),sort:o.enum(["id","name","provider","recommended"]).optional(),direction:o.enum(["ascending","descending"]).optional()}).strict(),o.object({op:o.literal("legacy.models.providers")}).strict(),o.object({op:o.literal("auth.probe"),provider:k}).strict(),o.object({op:o.literal("legacy.agent.upload"),agentId:k}).strict(),o.object({op:o.literal("agent.publish"),agentId:k,document:Aa.optional(),...Fs,visibility:o.literal("org").optional(),tenantId:k.optional()}).strict(),o.object({op:o.literal("agent.republish"),agentId:k,hubAgentId:k,expectedRemoteRevision:o.string().min(1).max(512).optional(),document:Aa.optional(),...Fs,visibility:o.literal("org").optional(),tenantId:k.optional()}).strict(),o.object({op:o.literal("team.publish"),teamId:k,...Fs,visibility:o.literal("org").optional(),tenantId:k.optional()}).strict(),o.object({op:o.literal("team.pull"),teamId:k,tenantId:k.optional()}).strict(),o.object({op:o.literal("agent.nameAvailability"),name:o.string().min(1).max(yi)}).strict(),o.object({op:o.literal("legacy.agents.list"),page:o.number().int().min(1).optional(),perPage:o.number().int().min(1).max(500).optional(),name:o.string().max(256).optional(),sort:o.string().max(64).optional(),direction:o.enum(["asc","desc"]).optional()}).strict(),o.object({op:o.literal("legacy.agent.get"),agentId:k}).strict(),o.object({op:o.literal("legacy.agent.history"),agentId:k,page:o.number().int().min(1).optional(),perPage:o.number().int().min(1).max(500).optional()}).strict(),o.object({op:o.literal("legacy.jobs.list"),agentId:k.optional(),status:o.string().max(64).optional()}).strict(),o.object({op:o.literal("legacy.job.get"),jobId:k}).strict(),o.object({op:o.literal("legacy.schedules.list"),page:o.number().int().min(1).optional(),perPage:o.number().int().min(1).max(100).optional()}).strict(),o.object({op:o.literal("legacy.agent.schedules.list"),agentId:k,page:o.number().int().min(1).optional(),perPage:o.number().int().min(1).max(100).optional()}).strict(),o.object({op:o.literal("legacy.agent.schedule.create"),agentId:k,schedule:Ea.extend({prompt:o.string().max(64e3),interval:o.number().int().min(1),unit:ba})}).strict(),o.object({op:o.literal("legacy.schedule.get"),scheduleId:k}).strict(),o.object({op:o.literal("legacy.schedule.edit"),scheduleId:k,schedule:Ea.extend({prompt:o.string().max(64e3).nullish(),interval:o.number().int().min(1).nullish(),unit:ba.nullish()})}).strict(),o.object({op:o.literal("legacy.schedule.remove"),scheduleId:k}).strict(),o.object({op:o.literal("legacy.agent.create"),agent:o.record(o.unknown())}).strict(),o.object({op:o.literal("legacy.agent.update"),agentId:k,update:o.record(o.unknown())}).strict(),o.object({op:o.literal("legacy.agent.delete"),agentId:k}).strict(),o.object({op:o.literal("legacy.agent.conversation.clear"),agentId:k}).strict(),o.object({op:o.literal("legacy.agent.systemPrompt.get"),agentId:k}).strict(),o.object({op:o.literal("legacy.agent.systemPrompt.update"),agentId:k,systemPrompt:o.string().max(Sp)}).strict(),o.object({op:o.literal("legacy.agent.download"),agentId:k}).strict(),o.object({op:o.literal("legacy.job.cancel"),jobId:k}).strict(),o.object({op:o.literal("commands.list")}).strict(),o.object({op:o.literal("commands.entities"),sessionId:L,command:k,name:o.string().max(128).optional()}).strict(),o.object({op:o.literal("models.catalogue"),live:o.boolean().optional(),scope:o.enum(["usable","all"]).optional()}).strict(),o.object({op:o.literal("usage.get"),provider:k.optional(),live:o.boolean().optional(),refresh:o.boolean().optional()}).strict(),o.object({op:o.literal("quota.notice"),provider:k.optional(),model:o.string().min(1).max(200).optional(),refresh:o.boolean().optional()}).strict(),o.object({op:o.literal("analytics.get"),sessionId:L.optional(),sinceMs:o.number().int().nonnegative().optional(),untilMs:o.number().int().nonnegative().optional(),days:o.number().int().min(1).max(366).optional()}).strict(),o.object({op:o.literal("analytics.models"),sessionId:L.optional(),sinceMs:o.number().int().nonnegative().optional(),untilMs:o.number().int().nonnegative().optional(),days:o.number().int().min(1).max(366).optional()}).strict(),o.object({op:o.literal("info.get")}).strict(),o.object({op:o.literal("sessions.report"),sessionId:L,recentLimit:o.number().int().min(0).max(50).optional()}).strict(),o.object({op:o.literal("skills.list"),sessionId:L.optional(),cwd:mp.optional(),name:k.optional()}).strict(),o.object({op:o.literal("sessions.failovers"),sessionId:L}).strict(),o.object({op:o.literal("sessions.credential"),sessionId:L,action:o.enum(["list","store","forget"]),key:Ar.optional(),value:Or.optional(),confirmed:o.boolean().optional()}).strict(),o.object({op:o.literal("sessions.fork"),sessionId:L,requestId:te,message:o.string().max(2e5).optional(),boundary:o.enum(["next_safe","at_entry"]).optional(),entryId:o.string().max(128).optional(),autoTag:o.boolean().optional()}).strict(),o.object({op:o.literal("sessions.stop"),requestId:te,targets:o.array(L).min(1).max(100),confirmed:o.literal(!0)}).strict(),o.object({op:o.literal("sessions.aside"),sessionId:L,requestId:te,text:o.string().min(1).max(32768),asideId:te.optional(),subscriptionId:o.string().regex(da).optional()}).strict(),o.object({op:o.literal("sessions.adopt"),sessionId:L,requestId:te,asideId:te,confirmed:o.literal(!0)}).strict(),o.object({op:o.literal("sessions.aside.get"),sessionId:L,asideId:te}).strict(),o.object({op:o.literal("sessions.aside.close"),sessionId:L,asideId:te}).strict(),o.object({op:o.literal("wakes.list"),limit:o.number().int().min(1).max(500).optional(),includeDormant:o.boolean().optional()}).strict(),o.object({op:o.literal("wakes.create"),requestId:te,sessionId:L.optional(),cwd:o.string().min(1).max(4096).optional(),target:jr.optional(),message:ka,in:o.string().min(1).max(64).optional(),at:o.string().min(1).max(64).optional(),every:o.string().min(1).max(64).optional(),until:o.string().min(1).max(64).optional(),limit:o.number().int().min(1).optional(),title:o.string().min(1).max(200).optional()}).strict(),o.object({op:o.literal("wakes.edit"),sessionId:L,wakeId:Ra,message:ka.optional(),in:o.string().min(1).max(64).optional(),at:o.string().min(1).max(64).optional(),every:o.string().min(1).max(64).optional(),until:o.string().min(1).max(64).optional(),limit:o.number().int().min(1).optional()}).strict(),o.object({op:o.literal("wakes.remove"),sessionId:L,wakeId:Ra}).strict(),o.object({op:o.literal("monitors.cancel"),sessionId:L,monitorId:Tp}).strict(),o.object({op:o.literal("jobs.cancel"),sessionId:L,jobId:Cp}).strict(),o.object({op:o.literal("mcp.list"),sessionId:L}).strict(),o.object({op:o.literal("mcp.credentials.store"),sessionId:L,name:o.string().min(1).max(256),values:o.record(o.string().min(1).max(128),o.string().min(1).max(32768)).refine(e=>Object.keys(e).length<=32&&Object.values(e).reduce((t,n)=>t+n.length,0)<=65536,{message:"Too many secret values, or too much secret text, for one MCP credential write."}),confirmedReplace:o.array(o.string().min(1).max(128)).max(32)}).strict(),o.object({op:o.literal("mcp.control"),sessionId:L,control:o.object({action:o.enum(["list","add","remove","reload","connect","probe","disconnect","login","logout","reauth","status","cancel"]),name:Ls.optional(),scope:o.enum(["global","project"]).optional(),command:o.string().min(1).max(4096).optional(),args:o.array(o.string().max(8192)).max(128).optional(),env:o.record(Pr).optional(),url:o.string().max(4096).optional(),headers:o.record(Pr).optional(),oauth:o.boolean().optional(),confirmed:o.boolean().optional(),operation_id:ca.optional()}).strict()}).strict(),o.object({op:o.literal("mcp.catalog"),cwd:$s.optional(),sessionId:L.optional()}).strict(),o.object({op:o.literal("mcp.catalog.control"),cwd:$s.optional(),control:o.object({action:o.enum(["add","remove","test","login","reauth","logout","status","cancel"]),name:Ls.optional(),scope:o.enum(["global","project"]).optional(),command:o.string().min(1).max(4096).optional(),args:o.array(o.string().max(8192)).max(128).optional(),env:o.record(Pr).optional(),url:o.string().max(4096).optional(),headers:o.record(Pr).optional(),confirmed:o.boolean().optional(),operation_id:ca.optional()}).strict()}).strict(),o.object({op:o.literal("mcp.catalog.credentials"),header:o.string().min(1).max(128).optional(),cwd:$s.optional(),name:Ls,values:o.record(o.string().min(1).max(128),o.string().min(1).max(32768)).refine(e=>Object.keys(e).length<=32&&Object.values(e).reduce((t,n)=>t+n.length,0)<=65536,{message:"Too many secret values, or too much secret text, for one MCP credential write."}),confirmedReplace:o.array(o.string().min(1).max(128)).max(32)}).strict(),o.object({op:o.literal("radient.request"),control:o.object({operation:o.enum(["account","prices","credits","usage","provision","application.create","agents.list","agents.get","agents.create","agents.update","agents.delete","agents.like","agents.unlike","agents.liked","agents.like_count","agents.favourite","agents.unfavourite","agents.favourited","agents.favourite_count","agents.download_count","agents.statuses","comments.list","comments.create","comments.update","comments.delete","account.agents","memberships.list","org_agents.list","org_team.get","org_teams.list","org_skills.list","org_skill.get","signup.resend"]),request_id:te.optional(),tenant_id:k.optional(),account_id:k.optional(),agent_id:k.optional(),comment_id:k.optional(),team_id:k.optional(),skill_id:k.optional(),query:o.record(o.union([o.string().max(1024),o.number().int()])).optional(),payload:o.record(o.unknown()).optional(),confirmed:o.boolean().optional()}).strict()}).strict(),o.object({op:o.literal("providers.list")}).strict(),o.object({op:o.literal("accounts.list")}).strict(),o.object({op:o.literal("accounts.remove"),accountId:o.number().int().positive(),confirmed:o.literal(!0)}).strict(),o.object({op:o.literal("tunnel.setup.read"),credentialId:o.number().int().positive().optional()}).strict(),o.object({op:o.literal("tunnel.setup.plan"),credentialId:o.number().int().positive().optional()}).strict(),o.object({op:o.literal("tunnel.setup.run"),credentialId:o.number().int().positive(),acceptMonthlyPrice:o.string().min(1).max(64).optional()}).strict(),o.object({op:o.literal("auth.start"),provider:k}).strict(),o.object({op:o.literal("auth.status"),id:k}).strict(),o.object({op:o.literal("auth.input"),id:k,promptId:k,value:Or}).strict(),o.object({op:o.literal("auth.cancel"),id:k}).strict(),o.object({op:o.literal("auth.key"),provider:k,value:Or}).strict(),o.object({op:o.literal("auth.logout"),provider:k}).strict(),o.object({op:o.literal("agent_messages.status"),boundary:oa}).strict(),o.object({op:o.literal("agent_messages.enable"),expected_account_id:k,tenant_id:k,state:o.literal("active"),consent_version:o.string().min(1).max(128),consented_via:o.literal("dialog")}).strict(),o.object({op:o.literal("agent_messages.settings"),tenant_id:k.optional()}).strict(),o.object({op:o.literal("agent_messages.settings.put"),expected_account_id:k,tenant_id:k.optional(),consent_version:o.string().min(1).max(128).optional(),consented_via:o.enum(["dialog","settings"]).optional(),label:o.string().min(1).max(128).optional(),state:o.enum(["active","paused","disabled"])}).strict(),o.object({op:o.literal("agent_messages.allowlist.get"),tenant_id:k.optional()}).strict(),o.object({op:o.literal("agent_messages.allowlist.put"),expected_account_id:k,tenant_id:k.optional(),entries:o.array(o.object({direction:o.enum(["send","receive"]),effect:o.enum(["allow","deny"]),target:o.object({endpoint_id:k.optional(),account_id:k.optional()}).strict().refine(e=>!!e.endpoint_id!=!!e.account_id,"An allowlist target names exactly one of endpoint_id or account_id")}).strict()).max(200)}).strict(),o.object({op:o.literal("team_bridge.conversations.list"),scope:o.literal("account").optional(),tenant_id:k.optional(),limit:o.number().int().min(1).max(100).optional(),cursor:o.string().min(1).max(64).optional(),before:o.string().min(1).max(64).optional()}).strict(),o.object({op:o.literal("team_bridge.conversations.get"),conversation_id:k,tenant_id:k.optional()}).strict(),o.object({op:o.literal("team_bridge.conversations.create"),tenant_id:k.optional(),kind:o.enum(["dm","group","channel"]),name:o.string().min(1).max(128).optional(),topic:o.string().min(1).max(512).optional(),visibility:o.enum(["private","tenant"]).optional(),agent_capable:o.boolean().optional(),members:o.array(o.object({account_id:k,kind:o.enum(["human","agent"]),endpoint_id:k.optional(),display_label:o.string().min(1).max(64)}).strict()).max(500)}).strict(),o.object({op:o.literal("team_bridge.conversations.lifecycle"),conversation_id:k,action:o.enum(["archive","unarchive","join","leave"])}).strict(),o.object({op:o.literal("team_bridge.conversations.join"),conversation_id:k,tenant_id:k.optional()}).strict(),o.object({op:o.literal("team_bridge.conversations.notify"),conversation_id:k,tenant_id:k.optional(),notify:o.enum(["all","mention","mute"])}).strict(),o.object({op:o.literal("team_bridge.conversations.members.add"),conversation_id:k,tenant_id:k.optional(),members:o.array(o.object({account_id:k,kind:o.enum(["human","agent"]),endpoint_id:k.optional(),display_label:o.string().min(1).max(64)}).strict()).min(1).max(500)}).strict(),o.object({op:o.literal("team_bridge.conversations.members.remove"),conversation_id:k,account_id:k}).strict(),o.object({op:o.literal("team_bridge.conversations.consent"),conversation_id:k,account_id:k,decision:o.enum(["accept","decline"]),consent_version:o.string().min(1).max(128),tenant_id:k.optional()}).strict(),o.object({op:o.literal("team_bridge.messages.list"),conversation_id:k,tenant_id:k.optional(),limit:o.number().int().min(1).max(100).optional(),before_seq:o.number().int().nonnegative().optional(),endpoint_id:k.optional()}).strict(),o.object({op:o.literal("team_bridge.reactions.toggle"),conversation_id:k,message_id:k,tenant_id:k.optional(),emoji:o.string().min(1),active:o.boolean()}).strict(),o.object({op:o.literal("team_bridge.messages.send"),conversation_id:k,tenant_id:k.optional(),client_ref:k,body:o.string().min(1),agent_label:o.string().min(1).max(64).optional(),thread_root_id:k.optional()}).strict(),o.object({op:o.literal("team_bridge.messages.replies"),conversation_id:k,message_id:k,tenant_id:k.optional(),limit:o.number().int().min(1).max(100).optional(),after_seq:o.number().int().nonnegative().optional()}).strict(),o.object({op:o.literal("team_bridge.read"),conversation_id:k,tenant_id:k.optional(),seq:o.number().int().nonnegative().optional(),muted:o.boolean().optional()}).strict(),o.object({op:o.literal("team_bridge.unread"),scope:o.literal("account").optional(),tenant_id:k.optional()}).strict(),o.object({op:o.literal("team_bridge.directory"),tenant_id:k}).strict(),o.object({op:o.literal("team_bridge.status"),boundary:oa.optional()}).strict(),o.object({op:o.literal("settings.list")}).strict(),o.object({op:o.literal("settings.edit"),key:Ar,value:o.unknown().refine(e=>e!==void 0,"A setting value is required."),base:Ep.optional()}).strict(),o.object({op:o.literal("settings.reset"),key:Ar}).strict(),o.object({op:o.literal("tts.paths")}).strict(),o.object({op:o.literal("config.get")}).strict(),o.object({op:o.literal("config.update"),value:Ap}).strict(),o.object({op:o.literal("instructions.get")}).strict(),o.object({op:o.literal("instructions.update"),content:o.string().max(64e3)}).strict(),o.object({op:o.literal("credentials.list")}).strict(),o.object({op:o.literal("credentials.update"),key:Ar,value:Or}).strict(),o.object({op:o.literal("peers.list")}).strict(),o.object({op:o.literal("networks.list")}).strict(),o.object({op:o.literal("networks.invite"),networkId:cn,role:o.enum(["read","drive","admin"]),deviceId:cn.optional()}).strict(),o.object({op:o.literal("networks.member.remove"),networkId:cn,deviceId:cn,confirm:o.string().min(1).max(256)}).strict(),o.object({op:o.literal("sessions.transfer"),sessionId:L,to:o.union([o.literal("local"),cn]),keep:o.boolean().optional(),waitS:o.number().min(0).max(300).optional(),requestId:te.optional()}).strict(),o.object({op:o.literal("approvals.list")}).strict(),o.object({op:o.literal("approvals.approve"),approvalId:fa}).strict(),o.object({op:o.literal("approvals.deny"),approvalId:fa}).strict(),o.object({op:o.literal("asks.list")}).strict(),o.object({op:o.literal("projects.list")}).strict(),o.object({op:o.literal("projects.get"),key:Tt}).strict(),o.object({op:o.literal("projects.create"),name:Bs,description:o.string().max(ja).optional(),status:Oa.optional(),tags:Pa.optional()}).strict(),o.object({op:o.literal("projects.update"),key:Tt,fields:o.object({name:Bs.optional(),title:o.string().max(80).optional(),owner:o.string().max(80).optional(),team:o.string().max(80).optional(),description:o.string().max(ja).optional(),status:Oa.optional(),progress:o.string().max(Yp).optional(),tags:Pa.optional(),start_date:Dr.optional(),target_date:Dr.optional(),completed_at:Dr.optional(),estimate:o.number().positive().max(1e3).optional(),estimate_unit:o.enum(["points","days"]).optional()}).strict(),force_done:o.boolean().optional()}).strict(),o.object({op:o.literal("projects.delete"),key:Tt,confirmed_name:Bs}).strict(),o.object({op:o.literal("projects.link"),key:Tt,sessionId:L}).strict(),o.object({op:o.literal("projects.unlink"),key:Tt,sessionId:L}).strict(),o.object({op:o.literal("projects.milestone"),key:Tt,name:o.string().min(1).max(Ma),targetDate:Dr.optional(),completed:o.boolean().optional()}).strict(),o.object({op:o.literal("projects.milestone.remove"),key:Tt,name:o.string().min(1).max(Ma)}).strict(),o.object({op:o.literal("projects.request_update"),key:Tt}).strict(),o.object({op:o.literal("projects.search"),q:o.string().min(1).max(Qp),limit:o.number().int().min(1).max(Xp).optional()}).strict(),o.object({op:o.literal("aida.status")}).strict(),o.object({op:o.literal("aida.control"),action:o.enum(["open","pause","resume","greet","status"])}).strict(),o.object({op:o.literal("code_requests.list"),sessionId:L}).strict(),o.object({op:o.literal("code_requests.refresh"),sessionId:L,keys:o.array(o.string().min(1).max(512)).max(256).optional(),force:o.boolean().optional()}).strict(),o.object({op:o.literal("static.sign"),route:o.enum(["images","videos","audio","html"]),path:o.string().min(1),ttlS:o.number().int().min(1).max(3600).optional()}).strict(),o.object({op:o.literal("library.list"),scope:o.enum(["final","all"]).optional(),q:o.string().max(512).optional(),category:o.string().min(1).max(64).optional(),kind:o.string().min(1).max(64).optional(),origin_group:o.enum(["generated","created","mentioned"]).optional(),origin:o.string().min(1).max(64).optional(),tag:o.string().min(1).max(128).optional(),tag_mode:o.enum(["all","any"]).optional(),highlighted:o.boolean().optional(),organized:o.boolean().optional(),favorite:o.boolean().optional(),session:o.string().min(1).max(12).optional(),session_id:o.string().min(1).max(512).optional(),sort:o.enum(["recent","name","kind","size","created","modified","organized"]).optional(),order:o.enum(["asc","desc"]).optional(),limit:o.number().int().min(1).max(200).optional(),cursor:o.string().max(512).optional()}).strict(),o.object({op:o.literal("library.get"),id:Mn}).strict(),o.object({op:o.literal("library.update"),id:Mn,fields:o.object({name:o.string().max(200).optional(),description:o.string().max(2e3).optional(),favorite:o.boolean().optional(),locked:o.boolean().optional(),archived:o.boolean().optional()}).strict()}).strict(),o.object({op:o.literal("library.tags")}).strict(),o.object({op:o.literal("library.tags.create"),name:o.string().trim().min(1).max(24),category:o.string().min(1).max(64).optional()}).strict(),o.object({op:o.literal("library.tags.update"),id:Dn,name:o.string().trim().min(1).max(24).optional(),category:o.string().min(1).max(64).optional()}).strict(),o.object({op:o.literal("library.tags.delete"),id:Dn}).strict(),o.object({op:o.literal("library.tags.merge"),id:Dn,into:Dn}).strict(),o.object({op:o.literal("library.tags.assign"),id:Mn,tags:o.array(Dn).max(64),primary:o.string().max(128).optional()}).strict(),o.object({op:o.literal("library.chat.link"),id:Mn,sessionId:L}).strict(),o.object({op:o.literal("library.chat.clear"),id:Mn}).strict(),o.object({op:o.literal("library.librarian"),action:o.enum(["status","open","pause","resume","run"]).optional()}).strict(),o.object({op:o.literal("sidebar_layout.get")}).strict(),o.object({op:o.literal("sidebar_layout.set"),layout:eh}).strict()]);th.superRefine((e,t)=>{if(e.op==="hub.skillPull"||e.op==="hub.skillSubscribe"||e.op==="hub.skillPublish"){if(e.visibility==="public"&&e.tenantId!==null||e.visibility==="org"&&!e.tenantId){t.addIssue({code:o.ZodIssueCode.custom,message:"A skill destination requires explicit paired scope",path:["tenantId"]});return}if(e.op==="hub.skillPublish"&&(e.dryRun?e.previewReceipt!==void 0||e.confirmPublish!==void 0:!e.previewReceipt||e.confirmPublish!==!0)){t.addIssue({code:o.ZodIssueCode.custom,message:"An initial skill publication requires its reviewed draft receipt",path:["previewReceipt"]});return}}if(e.op==="hub.check"||e.op==="hub.apply"||e.op==="hub.retry"){const n=e.linkId!==void 0,r=e.kind!==void 0||e.name!==void 0;if(n&&r||e.op!=="hub.check"&&!n&&(!e.kind||!e.name)||e.op==="hub.retry"&&n&&!e.direction||e.direction==="push"&&!n){t.addIssue({code:o.ZodIssueCode.custom,message:"A hub action requires one unambiguous selector and an explicit retry direction",path:["linkId"]});return}}if(e.op==="hub.apply"&&(e.previewReceipt!==void 0||e.confirmApply!==void 0)&&(!e.linkId||e.dryRun||!e.previewReceipt||e.confirmApply!==!0)){t.addIssue({code:o.ZodIssueCode.custom,message:"A viewed incoming application requires its scoped preview receipt and confirmation",path:["previewReceipt"]});return}if(e.op==="hub.apply"&&e.resolveSource===!0){const n=e.visibility==="public"&&e.tenantId===null||e.visibility==="org"&&typeof e.tenantId=="string"&&e.tenantId.length>0;if(!e.hubSource||!n||e.acknowledgeUnknownBaseline!==!0||e.linkId!==void 0||e.previewReceipt!==void 0||e.confirmApply!==void 0||e.prefer!==void 0){t.addIssue({code:o.ZodIssueCode.custom,message:"Confirming a source requires its exact stated destination and the unknown-baseline acknowledgement, with no link, preview or preference",path:["hubSource"]});return}}if(e.op==="hub.push"&&(e.dryRun?e.previewReceipt!==void 0||e.confirmPublish!==void 0:!e.previewReceipt||e.confirmPublish!==!0)){t.addIssue({code:o.ZodIssueCode.custom,message:"A confirmed publication requires its reviewed preview receipt",path:["previewReceipt"]});return}if(e.op==="hub.policy"&&e.subscribe===void 0&&e.autoPush===void 0){t.addIssue({code:o.ZodIssueCode.custom,message:"A hub policy change must name subscribe or autoPush",path:["subscribe"]});return}if((e.op==="team_bridge.conversations.list"||e.op==="team_bridge.unread")&&e.scope==="account"&&e.tenant_id!==void 0){t.addIssue({code:o.ZodIssueCode.custom,message:"An account-scoped read cannot name a tenant",path:["scope"]});return}if(e.op==="team_bridge.conversations.list"&&e.scope==="account"&&e.before!==void 0){t.addIssue({code:o.ZodIssueCode.custom,message:"An account-scoped page uses cursor, not before",path:["before"]});return}if(e.op==="sessions.answer"){if(e.askId!==void 0){e.askId||t.addIssue({code:o.ZodIssueCode.custom,message:"ask_id must be a non-empty string",path:["askId"]}),e.decline!==!0&&!e.answers?t.addIssue({code:o.ZodIssueCode.custom,message:"A queued-ask answer needs answers or decline",path:["answers"]}):e.decline===!0&&e.answers!==void 0?t.addIssue({code:o.ZodIssueCode.custom,message:"Supply either answers or decline",path:["decline"]}):e.revise===!0&&e.decline===!0?t.addIssue({code:o.ZodIssueCode.custom,message:"Supply either decline or revise",path:["revise"]}):e.answers!==void 0&&Object.keys(e.answers).length===0&&t.addIssue({code:o.ZodIssueCode.custom,message:"answers must name at least one question",path:["answers"]});return}e.epoch||t.addIssue({code:o.ZodIssueCode.custom,message:"An epoch is required to answer a gate",path:["epoch"]}),e.requestId||t.addIssue({code:o.ZodIssueCode.custom,message:"A request id is required to answer a gate",path:["requestId"]}),e.revise===!0&&t.addIssue({code:o.ZodIssueCode.custom,message:"revise applies to a queued ask",path:["revise"]});return}if(e.op==="sessions.create"&&e.purpose===void 0){e.cwd===void 0&&t.addIssue({code:o.ZodIssueCode.custom,message:"A conversation needs a working directory: only a configuration run (`purpose`) may omit `cwd`.",path:["cwd"]});return}if(e.op==="sessions.create"&&e.purpose!==void 0){for(const n of["cwd","target","model","draftId"])e[n]!==void 0&&t.addIssue({code:o.ZodIssueCode.custom,message:`A configuration run resolves its own \`${n}\`: send \`purpose\` alone.`,path:[n]});return}if(!(e.op!=="agent.publish"&&e.op!=="agent.republish"&&e.op!=="team.publish")){if((e.subscribe!==void 0||e.autoPush!==void 0||e.confirmPublicEgress!==void 0)&&!e.requestId){t.addIssue({code:o.ZodIssueCode.custom,message:"Initial link policy needs a durable publication request ID",path:["requestId"]});return}e.visibility==="org"!=!!e.tenantId&&t.addIssue({code:o.ZodIssueCode.custom,message:'A publication target needs both `visibility: "org"` and `tenantId`, or neither: one half would publish to the public hub.'})}});const Je={noCredential:"pairing.no-credential",refused:"pairing.refused",planeClosed:"pairing.plane-closed",transportFailed:"transport.failed"},nh={runtimeUnreachable:"runtime_unreachable"},ps="runtime_busy",yc="runtime_retiring";o.object({data:o.object({aside_id:o.string().optional(),status:o.union([o.enum(["adopted","queued"]),o.string()]).optional()}).passthrough()}).passthrough();const VS="aside_adopt_refused",rh=["session_closed","open_tool_batch","turn_running"];function KS(e){if(typeof e!="object"||e===null)return;const t=e.reason;return rh.find(n=>n===t)}const eo={[Je.noCredential]:"This app is not paired with the running Local Operator server, so this control is unavailable.",[Je.refused]:"This app's credential for the running Local Operator server was refused, so this control is unavailable.",[Je.planeClosed]:"The running Local Operator server does not accept this app's desktop controls.",[Je.transportFailed]:"The Local Operator server did not answer this request."},_i={noCredential:"Restart with a desktop-managed backend to use these controls.",transportFailed:"The backend could not complete this request. Check its connection and try again."};function hs(e){return e!==void 0&&Object.values(Je).includes(e)}function sh(e,t){if(e.startsWith("/v1/desktop/")){if(t===401||t===403)return Je.refused;if(t===503)return Je.planeClosed}}const YS=o.object({step:o.string(),blocked_on:o.string(),configured:o.boolean(),ready:o.boolean(),verified:o.boolean(),url:o.string().nullable(),credential_id:o.number().int().positive().nullable(),identity_label:o.string().nullable(),credential_choices:o.array(o.object({id:o.number().int().positive(),identity_label:o.string().nullable().optional()}).passthrough()).default([]),quote:o.object({monthly_price_usd:o.string().nullable(),positive_balance:o.boolean(),eligible:o.boolean(),account_valid:o.boolean()}).passthrough().nullable(),receipts:o.array(o.object({step:o.string(),ok:o.boolean(),text:o.string()})).default([]),remedy:o.object({kind:o.string(),text:o.string(),command:o.string().nullable().optional(),url:o.string().nullable().optional()}).nullable(),source:o.string(),in_progress:o.boolean().default(!1),progress:o.array(o.string()).default([]),active_credential_id:o.number().int().positive().nullable().default(null),billing_outcome:o.string().optional(),reservation_outcome:o.string().optional(),failure_stage:o.string().optional()}).passthrough(),QS=new Set(["setup_in_progress","setup_deadline","setup_unavailable","setup_intent_corrupt"]),ih=88e4,oh=11e5,ah=2e4,lh=9e4,ch=new Set(["analytics.get","analytics.models","sessions.report"]),dh=new Set(["usage.get"]),uh=new Set(["networks.list","peers.list"]),fh=new Set([...ch,...dh,...uh]),ph=90,hh=30,mh=300,gh=10,vc=15,yh=1e4;function vh(e){const n=e.to==="local"||e.keep?mh:hh,r=Math.max(0,e.waitS??0);return(ph+n+gh+vc)*1e3+r*1e3}const _h=18e4,bh=_h+15e3,wh=120,Sh=135e3,kh=93e4,_c=(wh+30+vc)*1e3,Rh=6e4,Eh=5*_c,Ih=new Set(["hub.apply","hub.retry","hub.push","hub.skillPublish","hub.skillPull","hub.skillSubscribe","hub.skillUnpull","hub.check","hub.applyAll"]);function xh(e){switch(e){case"hub.apply":case"hub.retry":case"hub.push":case"hub.skillPublish":case"hub.skillPull":case"hub.skillSubscribe":case"hub.skillUnpull":return _c;case"hub.check":return Rh;case"hub.applyAll":return Eh;default:return null}}function Th(e){if(typeof e!="string"&&e.op==="sessions.transfer")return vh(e)+yh;const t=typeof e=="string"?e:e.op;if(t==="approvals.approve")return bh;if(t==="tunnel.setup.run")return kh;if(t==="tunnel.setup.plan")return Sh;const n=xh(t);return n!==null?n:fh.has(t)?lh:ah}const Ch=5e3;function bc(e){return Th(e)+Ch}const to="deadline_exceeded",wc="foreground_required",Sc="View these completions in the foreground before marking them read.",Ah=new Set(["capabilities","agent_messages.status","agent_messages.settings","agent_messages.allowlist.get","team_bridge.conversations.list","team_bridge.conversations.get","team_bridge.messages.list","team_bridge.messages.replies","team_bridge.unread","team_bridge.directory","team_bridge.status","accounts.list","analytics.get","analytics.models","approvals.list","commands.entities","commands.list","config.get","credentials.list","hub.updates","hub.links","info.get","instructions.get","legacy.agent.get","legacy.agent.history","legacy.agent.schedules.list","legacy.agents.list","legacy.job.get","legacy.jobs.list","legacy.models","legacy.models.providers","legacy.schedule.get","legacy.schedules.list","mcp.catalog","mcp.list","models.catalogue","networks.list","peers.list","profiles.get","profiles.list","projects.search","providers.list","quota.notice","runtimes.list","sessions.aside.get","sessions.checkpoints","sessions.failovers","sessions.find","sessions.get","sessions.history","sessions.files","sessions.list","sessions.preview","sessions.report","sessions.search","sessions.variables.list","skills.list","subagents.transcript","teams.effective","teams.get","teams.list","tunnel.setup.plan","tunnel.setup.read","usage.get"]),Oh=new Set(["analytics.get","analytics.models","networks.list","peers.list","usage.get","sessions.report","info.get","sessions.failovers"]);function Ph(e,t){const n=Math.round(t/1e3),r=to;return e==="sessions.transfer"?{code:r,message:`The app waits up to ${n} seconds for a move, and it was still running when the app stopped waiting. The move was asked for, so its outcome is unknown from here: read the session again before moving it anywhere else.`}:e==="approvals.approve"?{code:r,message:`The app waits up to ${n} seconds for an approval, and the signing prompt was still open when it stopped waiting. The request was sent, so the decision may or may not have landed: read the approvals again — if the record still waits, answering it again is safe, because the store keeps the first decision and refuses a second.`}:Ih.has(e)?{code:r,message:"This is taking longer than expected. It may still finish; the mark will update."}:Ah.has(e)?{code:r,message:Oh.has(e)?`The app waits up to ${n} seconds for this panel's data, and the read was still running when the app stopped waiting. Nothing was read; reopen the panel to ask again.`:`The app waits up to ${n} seconds for this read, and it was still running when the app stopped waiting. Nothing was read; ask again.`}:{code:r,message:`The app waits up to ${n} seconds for this request, and it was still running when the app stopped waiting. It may or may not have reached the server; check the result before repeating it.`}}const JS=ih,XS=oh;o.object({state:o.enum(["ok","depleted","limit_reached","unverified","unknown","not_applicable"]),provider:o.string(),kind:o.enum(["balance","subscription","radient","none"]),model_free:o.boolean(),title:o.string(),body:o.string(),actions:o.array(o.object({id:o.enum(["open_url","resend_verification","refresh"]),label:o.string(),url:o.string().nullable().optional()})),resets_at_ms:o.number().int().nullable().optional(),checked_at_ms:o.number().int(),age_ms:o.number().int().nullable().optional(),source:o.enum(["cached","live"])});function jh(e){return e.sessionId?{session_id:e.sessionId}:{...e.cwd?{cwd:e.cwd}:{},...e.target?{target:e.target}:{}}}function Na(e){return{...e.in!==void 0?{in:e.in}:{},...e.at!==void 0?{at:e.at}:{},...e.every!==void 0?{every:e.every}:{},...e.until!==void 0?{until:e.until}:{},...e.limit!==void 0?{limit:e.limit}:{}}}function Gs(e){return{...e.requestId?{request_id:e.requestId}:{},...e.subscribe!==void 0?{subscribe:e.subscribe}:{},...e.autoPush!==void 0?{auto_push:e.autoPush}:{},...e.confirmPublicEgress!==void 0?{confirm_public_egress:e.confirmPublicEgress}:{}}}function Hs(e){if(e.visibility==="org"!=!!e.tenantId)throw new Error('A publication target needs both `visibility: "org"` and `tenantId`, or neither: one half would publish to the public hub.')}function La(e){return{sources:e.sources??null,session_ids:e.sessionIds??{},all:e.all??!1,include_subagents:e.includeSubagents??!1,include_cleared_segments:e.includeClearedSegments??!1,include_memory:e.includeMemory??!0,include_instructions:e.includeInstructions??!0,...e.maxSessions===void 0?{}:{max_sessions:e.maxSessions}}}function Lr(e){return e===void 0?"":`?tenant_id=${encodeURIComponent(e)}`}function Mh(e){switch(e.op){case"capabilities":return{path:"/v1/capabilities",method:"GET"};case"runtimes.list":return{path:"/v1/desktop/runtimes?probe=false",method:"GET"};case"peers.list":return{path:"/v1/desktop/peers",method:"GET"};case"networks.list":return{path:"/v1/desktop/networks",method:"GET"};case"asks.list":return{path:"/v1/desktop/asks",method:"GET"};case"networks.invite":return{path:`/v1/desktop/networks/${encodeURIComponent(e.networkId)}/invite`,method:"POST",body:{role:e.role,device:e.deviceId??null}};case"networks.member.remove":return{path:`/v1/desktop/networks/${encodeURIComponent(e.networkId)}/members/${encodeURIComponent(e.deviceId)}`,method:"DELETE",body:{confirm:e.confirm}};case"sessions.transfer":return{path:`/v1/desktop/sessions/${encodeURIComponent(e.sessionId)}/transfer`,method:"POST",body:{to:e.to,keep:e.keep??!1,wait_s:e.waitS??0,...e.requestId?{request_id:e.requestId}:{}}};case"approvals.list":return{path:"/v1/desktop/approvals",method:"GET"};case"approvals.approve":return{path:`/v1/desktop/approvals/${encodeURIComponent(e.approvalId)}/approve`,method:"POST"};case"approvals.deny":return{path:`/v1/desktop/approvals/${encodeURIComponent(e.approvalId)}/deny`,method:"POST"};case"profiles.list":return{path:"/v1/desktop/profiles",method:"GET"};case"profiles.get":return{path:`/v1/desktop/profiles/${encodeURIComponent(e.name)}`,method:"GET"};case"profiles.install":return{path:"/v1/desktop/profiles/install",method:"POST",body:{request_id:e.requestId,name:e.name}};case"imports.sources":return{path:"/v1/desktop/imports/sources",method:"GET"};case"imports.sessions":{const t=new URLSearchParams({source:e.source});return e.includeSubagents&&t.set("include_subagents","true"),{path:`/v1/desktop/imports/sessions?${t.toString()}`,method:"GET"}}case"imports.preview":return{path:"/v1/desktop/imports/preview",method:"POST",body:La(e)};case"imports.start":return{path:"/v1/desktop/imports/jobs",method:"POST",body:La(e)};case"imports.status":return{path:`/v1/desktop/imports/jobs/${encodeURIComponent(e.jobId)}`,method:"GET"};case"imports.cancel":return{path:`/v1/desktop/imports/jobs/${encodeURIComponent(e.jobId)}`,method:"DELETE"};case"profiles.create":return{path:"/v1/desktop/profiles",method:"POST",body:{request_id:e.requestId,name:e.name,...e.fields}};case"profiles.update":return{path:`/v1/desktop/profiles/${encodeURIComponent(e.name)}`,method:"PATCH",body:{request_id:e.requestId,...e.fields,...e.expectedDefinitionRevision!==void 0&&e.expectedDefinitionRevision!==null?{expected_definition_revision:e.expectedDefinitionRevision}:{}}};case"hub.updates":return{path:"/v1/desktop/hub/updates",method:"GET"};case"hub.skillPull":return{path:"/v1/desktop/hub/skills/pull",method:"POST",body:{request_id:e.requestId,hub_id:e.hubId,hub_source:e.hubSource,visibility:e.visibility,tenant_id:e.tenantId,local_alias:e.localAlias,...e.subscribe!==void 0?{subscribe:e.subscribe}:{},...e.autoPush!==void 0?{auto_push:e.autoPush}:{},...e.confirmPublicEgress!==void 0?{confirm_public_egress:e.confirmPublicEgress}:{}}};case"hub.skillSubscribe":return{path:"/v1/desktop/hub/skills/subscribe",method:"POST",body:{request_id:e.requestId,hub_id:e.hubId,hub_source:e.hubSource,visibility:e.visibility,tenant_id:e.tenantId,local_alias:e.localAlias}};case"hub.skillUnpull":return{path:"/v1/desktop/hub/skills/unpull",method:"POST",body:{request_id:e.requestId,link_id:e.linkId}};case"hub.skillPublish":return{path:"/v1/desktop/hub/skills/publish",method:"POST",body:{request_id:e.requestId,dry_run:e.dryRun,source_skill:e.sourceSkill,local_alias:e.localAlias,visibility:e.visibility,tenant_id:e.tenantId,subscribe:e.subscribe,auto_push:e.autoPush,confirm_public_egress:e.confirmPublicEgress,...e.previewReceipt?{preview_receipt:e.previewReceipt}:{},...e.confirmPublish?{confirm_publish:!0}:{}}};case"hub.links":return{path:`/v1/desktop/hub/links${e.kind?`?kind=${e.kind}`:""}`,method:"GET"};case"hub.policy":return{path:`/v1/desktop/hub/links/${encodeURIComponent(e.linkId)}`,method:"PATCH",body:{request_id:e.requestId,expected_policy_revision:e.expectedPolicyRevision,...e.subscribe!==void 0?{subscribe:e.subscribe}:{},...e.autoPush!==void 0?{auto_push:e.autoPush}:{},...e.confirmPublicEgress!==void 0?{confirm_public_egress:e.confirmPublicEgress}:{}}};case"hub.check":return{path:"/v1/desktop/hub/updates/check",method:"POST",body:{request_id:e.requestId,...e.linkId?{link_id:e.linkId}:{},...e.direction?{direction:e.direction}:{},...e.kind?{kind:e.kind}:{},...e.name?{name:e.name}:{}}};case"hub.apply":return{path:"/v1/desktop/hub/updates/apply",method:"POST",body:{request_id:e.requestId,...e.previewReceipt?{preview_receipt:e.previewReceipt}:{},...e.confirmApply?{confirm_apply:!0}:{},...e.linkId?{link_id:e.linkId}:{},...e.direction?{direction:e.direction}:{},...e.kind?{kind:e.kind}:{},...e.name?{name:e.name}:{},...e.prefer?{prefer:e.prefer}:{},...e.acknowledgeUnknownBaseline!==void 0?{acknowledge_unknown_baseline:e.acknowledgeUnknownBaseline}:{},...e.dryRun!==void 0?{dry_run:e.dryRun}:{},...e.resolveSource===!0?{resolve_source:!0,hub_source:e.hubSource,visibility:e.visibility,tenant_id:e.tenantId??null}:{}}};case"hub.applyAll":return{path:"/v1/desktop/hub/updates/apply-all",method:"POST",body:{request_id:e.requestId,...e.kind?{kind:e.kind}:{}}};case"hub.retry":return{path:"/v1/desktop/hub/updates/retry",method:"POST",body:{request_id:e.requestId,...e.linkId?{link_id:e.linkId}:{},...e.direction?{direction:e.direction}:{},...e.kind?{kind:e.kind}:{},...e.name?{name:e.name}:{}}};case"hub.push":return{path:"/v1/desktop/hub/updates/push",method:"POST",body:{request_id:e.requestId,link_id:e.linkId,direction:e.direction,dry_run:e.dryRun,...e.previewReceipt?{preview_receipt:e.previewReceipt}:{},...e.confirmPublish?{confirm_publish:!0}:{}}};case"teams.list":return{path:"/v1/desktop/teams",method:"GET"};case"teams.get":return{path:`/v1/desktop/teams/${encodeURIComponent(e.name)}`,method:"GET"};case"teams.effective":return{path:`/v1/desktop/teams/${encodeURIComponent(e.name)}/effective`,method:"GET"};case"teams.create":return{path:"/v1/desktop/teams",method:"POST",body:{request_id:e.requestId,...e.fields}};case"teams.update":return{path:`/v1/desktop/teams/${encodeURIComponent(e.name)}`,method:"PATCH",body:{request_id:e.requestId,...e.fields,...e.expectedDefinitionRevision!==void 0&&e.expectedDefinitionRevision!==null?{expected_definition_revision:e.expectedDefinitionRevision}:{}}};case"sessions.list":{const t=new URLSearchParams;return t.set("limit",String(e.limit??100)),e.include_archived&&t.set("include_archived","true"),e.scope_kind&&t.set("scope_kind",e.scope_kind),e.scope_name&&t.set("scope_name",e.scope_name),e.cursor&&t.set("cursor",e.cursor),e.with_counts&&t.set("with_counts","true"),e.include_peers&&t.set("include_peers","true"),e.sort&&t.set("sort",e.sort),{path:`/v1/desktop/sessions?${t}`,method:"GET"}}case"delegated_cleanup_notice.ack":return{path:"/v1/desktop/delegated-cleanup-notice/ack",method:"POST"};case"sessions.search":{const t=new URLSearchParams({q:e.q,limit:String(e.limit??vp)});return e.include_archived&&t.set("include_archived","true"),{path:`/v1/desktop/sessions/search?${t}`,method:"GET"}}case"sessions.archive":return{path:`/v1/desktop/sessions/${e.sessionId}/archive`,method:"POST",body:{archived:e.archived}};case"sessions.delete":return{path:`/v1/desktop/sessions/${e.sessionId}`,method:"DELETE",body:{confirmed:!0}};case"sessions.create":return{path:"/v1/desktop/sessions",method:"POST",body:{request_id:e.requestId,...e.cwd!==void 0?{cwd:e.cwd}:{},...e.peer?{peer:e.peer}:{},...e.target?{target:e.target}:{},...e.model?{model:e.model}:{},...e.draftId?{draft_id:e.draftId}:{},...e.purpose?{purpose:e.purpose}:{}}};case"sessions.preview":return{path:"/v1/desktop/sessions/preview",method:"POST",body:{request_id:e.requestId,cwd:e.cwd,...e.target?{target:e.target}:{},...e.model?{model:e.model}:{}}};case"sessions.draft":return{path:"/v1/desktop/sessions/draft",method:"POST",body:{request_id:e.requestId,cwd:e.cwd,...e.target?{target:e.target}:{},...e.model?{model:e.model}:{}}};case"sessions.get":{const t=new URLSearchParams;return e.journalOrder&&(t.set("journal_order","1"),e.peerJournalSource&&t.set("peer_journal_source","1"),ts(t,`/v1/desktop/sessions/${e.sessionId}`,e.orderIds??[])),{path:`/v1/desktop/sessions/${e.sessionId}${t.size?`?${t}`:""}`,method:"GET"}}case"sessions.files":{const t=new URLSearchParams({limit:String(e.limit??200)});for(const n of["scope","kind","q","sort","order","cursor"]){const r=e[n];r!==void 0&&t.set(n,r)}return{path:`/v1/desktop/sessions/${encodeURIComponent(e.sessionId)}/files?${t}`,method:"GET"}}case"sessions.files.materialise":return{path:`/v1/desktop/sessions/${encodeURIComponent(e.sessionId)}/files/${encodeURIComponent(e.fileId)}/materialise`,method:"POST"};case"sessions.history":{const t=new URLSearchParams({limit:String(e.limit??100)});return e.beforeId&&t.set("before_id",e.beforeId),e.openFrame&&(t.set("open_frame","1"),t.set("supplements","1")),e.journalOrder&&(t.set("journal_order","1"),e.peerJournalSource&&t.set("peer_journal_source","1"),e.sourceRead==="metadata"?t.set("source_read","metadata"):e.sourceRead==="payload"&&e.expectedJournalGeneration&&t.set("source_read","payload"),e.expectedJournalGeneration&&t.set("expected_journal_generation",e.expectedJournalGeneration),ts(t,`/v1/desktop/sessions/${e.sessionId}/history`,e.orderIds??[])),{path:`/v1/desktop/sessions/${e.sessionId}/history?${t}`,method:"GET"}}case"sessions.checkpoints":return{path:`/v1/desktop/sessions/${e.sessionId}/checkpoints`,method:"GET"};case"sessions.checkpoints.warm":return{path:`/v1/desktop/sessions/${e.sessionId}/checkpoints/warm`,method:"POST",body:{...e.ids?{ids:e.ids}:{},...e.limit!==void 0?{limit:e.limit}:{}}};case"sessions.find":{const t=new URLSearchParams({q:e.q,limit:String(e.limit??bp)});return{path:`/v1/desktop/sessions/${e.sessionId}/find?${t}`,method:"GET"}}case"subagents.transcript":{const t=new URLSearchParams({limit:String(e.limit??100)});return e.beforeId&&t.set("before_id",e.beforeId),{path:`/v1/desktop/sessions/${e.sessionId}/children/${e.childId}/transcript?${t}`,method:"GET"}}case"sessions.message":return{path:`/v1/desktop/sessions/${e.sessionId}/messages`,method:"POST",body:{request_id:e.requestId,text:e.text,images:e.images??[],mode:e.mode??"prompt",...e.inputMode?{input_mode:e.inputMode}:{},...e.inputPath?{input_path:e.inputPath}:{}}};case"sessions.command":return{path:`/v1/desktop/sessions/${e.sessionId}/commands`,method:"POST",body:{request_id:e.requestId,command:e.command,args:e.args??"",images:e.images??[]}};case"sessions.answer":return e.askId!==void 0?{path:`/v1/desktop/sessions/${e.sessionId}/answers`,method:"POST",body:{ask_id:e.askId,answers:e.answers,decline:e.decline,...e.revise===!0?{revise:!0}:{}}}:{path:`/v1/desktop/sessions/${e.sessionId}/answers`,method:"POST",body:{epoch:e.epoch,request_id:e.requestId,value:e.value,approved:e.approved,question_index:e.questionIndex}};case"sessions.seen":return{path:`/v1/desktop/sessions/${e.sessionId}/seen`,method:"POST",body:{completion_token:e.completionToken}};case"attention.seen":return{path:"/v1/desktop/attention/seen",method:"POST",body:{items:e.items.map(t=>({session_id:t.sessionId,completion_token:t.completionToken}))}};case"sessions.notified":return{path:`/v1/desktop/sessions/${e.sessionId}/notified`,method:"POST",body:{completion_token:e.completionToken}};case"tags.list":return{path:"/v1/desktop/tags",method:"GET"};case"tags.replace":return{path:"/v1/desktop/tags",method:"PUT",body:{tags:e.tags}};case"sessions.tags":return{path:`/v1/desktop/sessions/${e.sessionId}/tags`,method:"PUT",body:{tags:e.tags,primary:e.primary,...e.expected_revision===void 0?{}:{expected_revision:e.expected_revision}}};case"sessions.pin":return{path:`/v1/desktop/sessions/${e.sessionId}/pin`,method:"POST",body:{pinned:e.pinned}};case"sessions.watch":return{path:`/v1/desktop/sessions/${e.sessionId}/watch`,method:"POST",body:{subscription_id:e.subscriptionId,visible:e.visible,can_notify:e.canNotify}};case"sessions.presence":return{path:"/v1/desktop/presence",method:"POST",body:{subscription_id:e.subscriptionId,can_notify_kinds:e.canNotifyKinds,session_id:e.sessionId,window:e.window,can_notify:e.canNotify}};case"sessions.move":return{path:`/v1/desktop/sessions/${e.sessionId}/working-directory`,method:"POST",body:{request_id:e.requestId,cwd:e.cwd}};case"sessions.warm":return{path:`/v1/desktop/sessions/${e.sessionId}/warm`,method:"POST",body:{}};case"sessions.interrupt":return{path:`/v1/desktop/sessions/${e.sessionId}/interrupt`,method:"POST",body:{request_id:e.requestId}};case"supplements.cancel":return{path:`/v1/desktop/sessions/${e.sessionId}/supplements/${e.job}/cancel`,method:"POST",body:{anchor:e.anchor}};case"supplements.restart":return{path:`/v1/desktop/sessions/${e.sessionId}/supplements/${e.job}/restart`,method:"POST",body:{anchor:e.anchor}};case"supplements.steer":return{path:`/v1/desktop/sessions/${e.sessionId}/supplements/${e.job}/steer`,method:"POST",body:{anchor:e.anchor,text:e.text}};case"sessions.variables.list":return{path:`/v1/desktop/sessions/${e.sessionId}/variables`,method:"GET"};case"sessions.variables.create":return{path:`/v1/desktop/sessions/${e.sessionId}/variables`,method:"POST",body:{key:e.key,value:e.value,type:e.type}};case"sessions.variables.update":return{path:`/v1/desktop/sessions/${e.sessionId}/variables/${encodeURIComponent(e.key)}`,method:"PATCH",body:{value:e.value,type:e.type}};case"sessions.variables.delete":return{path:`/v1/desktop/sessions/${e.sessionId}/variables/${encodeURIComponent(e.key)}`,method:"DELETE"};case"legacy.models":{const t=new URLSearchParams;return e.provider&&t.set("provider",e.provider),e.sort&&t.set("sort",e.sort),e.direction&&t.set("direction",e.direction),{path:t.size>0?`/v1/models?${t}`:"/v1/models",method:"GET"}}case"legacy.models.providers":return{path:"/v1/models/providers",method:"GET"};case"auth.probe":return{path:`/v1/auth/providers/${e.provider}/probe`,method:"POST"};case"legacy.agent.upload":return{path:`/v1/agents/${e.agentId}/upload`,method:"POST"};case"agent.publish":{Hs(e);const t=new URLSearchParams;e.visibility==="org"&&e.tenantId&&(t.set("visibility","org"),t.set("tenant_id",e.tenantId));const n=t.toString();return{path:`/v1/agents/${e.agentId}/publish${n?`?${n}`:""}`,method:"POST",body:{document:e.document??{},...Gs(e)}}}case"agent.republish":{Hs(e);const t=new URLSearchParams;e.visibility==="org"&&e.tenantId&&(t.set("visibility","org"),t.set("tenant_id",e.tenantId));const n=t.toString();return{path:`/v1/agents/${e.agentId}/publish${n?`?${n}`:""}`,method:"PUT",body:{hub_agent_id:e.hubAgentId,document:e.document??{},...Gs(e),...e.expectedRemoteRevision?{expected_remote_revision:e.expectedRemoteRevision}:{}}}}case"team.publish":{Hs(e);const t=new URLSearchParams;return e.visibility==="org"&&e.tenantId&&(t.set("visibility","org"),t.set("tenant_id",e.tenantId)),{path:`/v1/teams/${e.teamId}/publish${t.size?`?${t}`:""}`,method:"POST",body:Gs(e)}}case"team.pull":{const t=new URLSearchParams;e.tenantId&&t.set("tenant_id",e.tenantId);const n=t.toString();return{path:`/v1/teams/pull/${e.teamId}${n?`?${n}`:""}`,method:"GET"}}case"agent.nameAvailability":return{path:`/v1/agent-name-availability?${new URLSearchParams({name:e.name})}`,method:"GET"};case"legacy.agents.list":{const t=new URLSearchParams({page:String(e.page??1),per_page:String(e.perPage??10)});return e.name&&t.set("name",e.name),e.sort&&t.set("sort",e.sort),e.direction&&t.set("direction",e.direction),{path:`/v1/agents?${t}`,method:"GET"}}case"legacy.agent.get":return{path:`/v1/agents/${e.agentId}`,method:"GET"};case"legacy.agent.history":{const t=new URLSearchParams({page:String(e.page??1),per_page:String(e.perPage??10)});return{path:`/v1/agents/${e.agentId}/history?${t}`,method:"GET"}}case"wakes.list":{const t=new URLSearchParams;return e.limit!==void 0&&t.set("limit",String(e.limit)),e.includeDormant!==void 0&&t.set("include_dormant",String(e.includeDormant)),{path:t.size>0?`/v1/desktop/wakes?${t}`:"/v1/desktop/wakes",method:"GET"}}case"wakes.create":return{path:"/v1/desktop/wakes",method:"POST",body:{request_id:e.requestId,...jh(e),message:e.message,...Na(e)}};case"wakes.edit":return{path:`/v1/desktop/wakes/${e.sessionId}/${e.wakeId}`,method:"PATCH",body:{...e.message!==void 0?{message:e.message}:{},...Na(e)}};case"wakes.remove":return{path:`/v1/desktop/wakes/${e.sessionId}/${e.wakeId}`,method:"DELETE"};case"monitors.cancel":return{path:`/v1/desktop/monitors/${encodeURIComponent(e.sessionId)}/${encodeURIComponent(e.monitorId)}`,method:"DELETE"};case"jobs.cancel":return{path:`/v1/desktop/sessions/${encodeURIComponent(e.sessionId)}/jobs/${encodeURIComponent(e.jobId)}/cancel`,method:"POST"};case"legacy.jobs.list":{const t=new URLSearchParams;return e.agentId&&t.set("agent_id",e.agentId),e.status&&t.set("status",e.status),{path:t.size>0?`/v1/jobs?${t}`:"/v1/jobs",method:"GET"}}case"legacy.job.get":return{path:`/v1/jobs/${e.jobId}`,method:"GET"};case"legacy.schedules.list":return{path:`/v1/schedules?${new URLSearchParams({page:String(e.page??1),per_page:String(e.perPage??10)})}`,method:"GET"};case"legacy.agent.schedules.list":{const t=new URLSearchParams({page:String(e.page??1),per_page:String(e.perPage??10)});return{path:`/v1/agents/${e.agentId}/schedules?${t}`,method:"GET"}}case"legacy.agent.schedule.create":return{path:`/v1/agents/${e.agentId}/schedules`,method:"POST",body:e.schedule};case"legacy.schedule.get":return{path:`/v1/schedules/${e.scheduleId}`,method:"GET"};case"legacy.schedule.edit":return{path:`/v1/schedules/${e.scheduleId}`,method:"PATCH",body:e.schedule};case"legacy.schedule.remove":return{path:`/v1/schedules/${e.scheduleId}`,method:"DELETE"};case"legacy.agent.create":return{path:"/v1/agents",method:"POST",body:e.agent};case"legacy.agent.update":return{path:`/v1/agents/${e.agentId}`,method:"PATCH",body:e.update};case"legacy.agent.delete":return{path:`/v1/agents/${e.agentId}`,method:"DELETE"};case"legacy.agent.conversation.clear":return{path:`/v1/agents/${e.agentId}/conversation`,method:"DELETE"};case"legacy.agent.systemPrompt.get":return{path:`/v1/agents/${e.agentId}/system-prompt`,method:"GET"};case"legacy.agent.systemPrompt.update":return{path:`/v1/agents/${e.agentId}/system-prompt`,method:"PUT",body:{system_prompt:e.systemPrompt}};case"legacy.agent.download":return{path:`/v1/agents/${e.agentId}/download`,method:"GET"};case"legacy.job.cancel":return{path:`/v1/jobs/${e.jobId}`,method:"DELETE"};case"commands.list":return{path:"/v1/desktop/commands",method:"GET"};case"commands.entities":return{path:`/v1/desktop/sessions/${e.sessionId}/command-entities?command=${encodeURIComponent(e.command)}${e.name?`&name=${encodeURIComponent(e.name)}`:""}`,method:"GET"};case"models.catalogue":{const t=e.scope?`&scope=${e.scope}`:"";return{path:`/v1/desktop/models?live=${e.live??!1}${t}`,method:"GET"}}case"usage.get":{const t=new URLSearchParams({live:String(e.live??!1),refresh:String(e.refresh??!1)});return e.provider&&t.set("provider",e.provider),{path:`/v1/desktop/usage?${t}`,method:"GET"}}case"quota.notice":{const t=new URLSearchParams({refresh:String(e.refresh??!1)});return e.provider&&t.set("provider",e.provider),e.model&&t.set("model",e.model),{path:`/v1/desktop/quota-notice?${t}`,method:"GET"}}case"analytics.get":{const t=new URLSearchParams({days:String(e.days??30)});return e.sessionId&&t.set("session_id",e.sessionId),e.sinceMs!==void 0&&t.set("since_ms",String(e.sinceMs)),e.untilMs!==void 0&&t.set("until_ms",String(e.untilMs)),{path:`/v1/desktop/analytics?${t}`,method:"GET"}}case"analytics.models":{const t=new URLSearchParams({days:String(e.days??30)});return e.sessionId&&t.set("session_id",e.sessionId),e.sinceMs!==void 0&&t.set("since_ms",String(e.sinceMs)),e.untilMs!==void 0&&t.set("until_ms",String(e.untilMs)),{path:`/v1/desktop/analytics/models?${t}`,method:"GET"}}case"info.get":return{path:"/v1/desktop/info",method:"GET"};case"sessions.report":{const t=new URLSearchParams({recent_limit:String(e.recentLimit??12)});return{path:`/v1/desktop/sessions/${e.sessionId}/report?${t}`,method:"GET"}}case"skills.list":{const t=new URLSearchParams;e.sessionId&&t.set("session_id",e.sessionId),e.cwd&&t.set("cwd",e.cwd),e.name&&t.set("name",e.name);const n=t.toString();return{path:`/v1/desktop/skills${n?`?${n}`:""}`,method:"GET"}}case"sessions.failovers":return{path:`/v1/desktop/sessions/${e.sessionId}/failovers`,method:"GET"};case"sessions.credential":return{path:`/v1/desktop/sessions/${e.sessionId}/credentials`,method:"POST",body:{action:e.action,key:e.key,value:e.value,confirmed:e.confirmed}};case"sessions.fork":return{path:`/v1/desktop/sessions/${e.sessionId}/fork`,method:"POST",body:{request_id:e.requestId,message:e.message,boundary:e.boundary,entry_id:e.entryId,auto_tag:e.autoTag}};case"sessions.stop":return{path:"/v1/desktop/stop",method:"POST",body:{request_id:e.requestId,targets:e.targets,confirmed:e.confirmed}};case"sessions.aside":return{path:`/v1/desktop/sessions/${e.sessionId}/asides`,method:"POST",body:{request_id:e.requestId,text:e.text,aside_id:e.asideId,subscription_id:e.subscriptionId}};case"sessions.adopt":return{path:`/v1/desktop/sessions/${e.sessionId}/asides/${e.asideId}/adopt`,method:"POST",body:{request_id:e.requestId,confirmed:e.confirmed}};case"sessions.aside.get":case"sessions.aside.close":return{path:`/v1/desktop/sessions/${e.sessionId}/asides/${e.asideId}`,method:e.op==="sessions.aside.get"?"GET":"DELETE"};case"mcp.list":return{path:`/v1/desktop/sessions/${e.sessionId}/mcp`,method:"GET"};case"mcp.credentials.store":return{path:`/v1/desktop/sessions/${e.sessionId}/mcp/credentials`,method:"POST",body:{name:e.name,values:e.values,confirmed_replace:e.confirmedReplace}};case"mcp.control":return{path:`/v1/desktop/sessions/${e.sessionId}/mcp`,method:"POST",body:e.control};case"mcp.catalog":{const t=new URLSearchParams;e.cwd&&t.set("cwd",e.cwd),e.sessionId&&t.set("session_id",e.sessionId);const n=t.toString();return{path:n?`/v1/desktop/mcp?${n}`:"/v1/desktop/mcp",method:"GET"}}case"mcp.catalog.control":return{path:"/v1/desktop/mcp",method:"POST",body:{...e.control,...e.cwd?{cwd:e.cwd}:{}}};case"mcp.catalog.credentials":return{path:"/v1/desktop/mcp/credentials",method:"POST",body:{name:e.name,values:e.values,...e.header?{header:e.header}:{},confirmed_replace:e.confirmedReplace,...e.cwd?{cwd:e.cwd}:{}}};case"radient.request":return{path:"/v1/desktop/radient",method:"POST",body:e.control};case"providers.list":return{path:"/v1/auth/providers",method:"GET"};case"accounts.list":return{path:"/v1/auth/status",method:"GET"};case"accounts.remove":return{path:`/v1/auth/accounts/${e.accountId}`,method:"DELETE"};case"tunnel.setup.read":return{path:e.credentialId===void 0?"/v1/desktop/tunnel/setup":`/v1/desktop/tunnel/setup?credential_id=${e.credentialId}`,method:"GET"};case"tunnel.setup.plan":return{path:"/v1/desktop/tunnel/setup",method:"POST",body:{action:"plan",...e.credentialId!==void 0?{credential_id:e.credentialId}:{}}};case"tunnel.setup.run":return{path:"/v1/desktop/tunnel/setup",method:"POST",body:{action:"run",credential_id:e.credentialId,...e.acceptMonthlyPrice!==void 0?{accept_monthly_price:e.acceptMonthlyPrice}:{}}};case"auth.start":return{path:"/v1/auth/login",method:"POST",body:{provider:e.provider}};case"auth.status":return{path:`/v1/auth/operations/${e.id}`,method:"GET"};case"auth.input":return{path:`/v1/auth/operations/${e.id}/input`,method:"POST",body:{prompt_id:e.promptId,value:e.value}};case"auth.cancel":return{path:`/v1/auth/operations/${e.id}`,method:"DELETE"};case"auth.key":return{path:`/v1/auth/providers/${e.provider}/key`,method:"PUT",body:{value:e.value}};case"auth.logout":return{path:`/v1/auth/providers/${e.provider}/credentials`,method:"DELETE"};case"agent_messages.status":return{path:`/v1/desktop/team-bridge/status?boundary=${e.boundary}`,method:"GET"};case"agent_messages.enable":return{path:"/v1/desktop/team-bridge/settings",method:"PUT",body:{expected_account_id:e.expected_account_id,tenant_id:e.tenant_id,state:e.state,consent_version:e.consent_version,consented_via:e.consented_via}};case"agent_messages.settings":return{path:`/v1/desktop/team-bridge/settings${Lr(e.tenant_id)}`,method:"GET"};case"agent_messages.settings.put":return{path:"/v1/desktop/team-bridge/settings",method:"PUT",body:{expected_account_id:e.expected_account_id,...e.tenant_id===void 0?{}:{tenant_id:e.tenant_id},...e.consent_version===void 0?{}:{consent_version:e.consent_version},...e.consented_via===void 0?{}:{consented_via:e.consented_via},...e.label===void 0?{}:{label:e.label},state:e.state}};case"agent_messages.allowlist.get":return{path:`/v1/desktop/team-bridge/allowlist${Lr(e.tenant_id)}`,method:"GET"};case"agent_messages.allowlist.put":return{path:"/v1/desktop/team-bridge/allowlist",method:"PUT",body:{expected_account_id:e.expected_account_id,...e.tenant_id===void 0?{}:{tenant_id:e.tenant_id},entries:e.entries}};case"team_bridge.conversations.list":{const t=new URLSearchParams;return e.scope==="account"&&t.set("scope","account"),e.tenant_id&&t.set("tenant_id",e.tenant_id),e.limit!==void 0&&t.set("limit",String(e.limit)),e.cursor&&t.set("cursor",e.cursor),e.before&&t.set("before",e.before),{path:`/v1/desktop/team-bridge/conversations${t.size>0?`?${t.toString()}`:""}`,method:"GET"}}case"team_bridge.conversations.get":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}${Lr(e.tenant_id)}`,method:"GET"};case"team_bridge.conversations.create":return{path:"/v1/desktop/team-bridge/conversations",method:"POST",body:{...e.tenant_id?{tenant_id:e.tenant_id}:{},kind:e.kind,...e.name?{name:e.name}:{},...e.topic?{topic:e.topic}:{},...e.visibility?{visibility:e.visibility}:{},...e.agent_capable===void 0?{}:{agent_capable:e.agent_capable},members:e.members}};case"team_bridge.conversations.lifecycle":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/${e.action}`,method:"POST"};case"team_bridge.conversations.join":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/join`,method:"POST",...e.tenant_id?{body:{tenant_id:e.tenant_id}}:{}};case"team_bridge.conversations.notify":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/read`,method:"POST",body:{...e.tenant_id?{tenant_id:e.tenant_id}:{},notify:e.notify}};case"team_bridge.conversations.members.add":{const t=new URLSearchParams;e.tenant_id&&t.set("tenant_id",e.tenant_id);const n=t.size>0?`?${t.toString()}`:"";return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/members${n}`,method:"POST",body:e.members}}case"team_bridge.conversations.members.remove":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/members/${encodeURIComponent(e.account_id)}`,method:"DELETE"};case"team_bridge.conversations.consent":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/members/${encodeURIComponent(e.account_id)}/consent`,method:"POST",body:{...e.tenant_id?{tenant_id:e.tenant_id}:{},decision:e.decision,consent_version:e.consent_version}};case"team_bridge.messages.list":{const t=new URLSearchParams;e.tenant_id&&t.set("tenant_id",e.tenant_id),e.limit!==void 0&&t.set("limit",String(e.limit)),e.before_seq!==void 0&&t.set("before_seq",String(e.before_seq)),e.endpoint_id&&t.set("endpoint_id",e.endpoint_id);const n=t.size>0?`?${t.toString()}`:"";return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/messages${n}`,method:"GET"}}case"team_bridge.reactions.toggle":{const t=`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/messages/${encodeURIComponent(e.message_id)}/reactions/${encodeURIComponent(e.emoji)}`;return e.active?{path:t,method:"PUT",body:e.tenant_id?{tenant_id:e.tenant_id}:{}}:{path:`${t}${Lr(e.tenant_id)}`,method:"DELETE"}}case"team_bridge.messages.send":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/messages`,method:"POST",body:{...e.tenant_id?{tenant_id:e.tenant_id}:{},client_ref:e.client_ref,body:e.body,...e.agent_label?{agent_label:e.agent_label}:{},...e.thread_root_id?{thread_root_id:e.thread_root_id}:{}}};case"team_bridge.messages.replies":{const t=new URLSearchParams;e.tenant_id&&t.set("tenant_id",e.tenant_id),e.limit!==void 0&&t.set("limit",String(e.limit)),e.after_seq!==void 0&&t.set("after_seq",String(e.after_seq));const n=t.size>0?`?${t.toString()}`:"";return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/messages/${encodeURIComponent(e.message_id)}/replies${n}`,method:"GET"}}case"team_bridge.read":return{path:`/v1/desktop/team-bridge/conversations/${encodeURIComponent(e.conversation_id)}/read`,method:"POST",body:{...e.tenant_id?{tenant_id:e.tenant_id}:{},...e.seq===void 0?{}:{seq:e.seq},...e.muted===void 0?{}:{muted:e.muted}}};case"team_bridge.unread":{const t=new URLSearchParams;return e.scope==="account"?t.set("scope","account"):e.tenant_id&&t.set("tenant_id",e.tenant_id),{path:`/v1/desktop/team-bridge/unread${t.size>0?`?${t.toString()}`:""}`,method:"GET"}}case"team_bridge.directory":return{path:`/v1/desktop/team-bridge/directory?tenant_id=${encodeURIComponent(e.tenant_id)}`,method:"GET"};case"team_bridge.status":{const t=new URLSearchParams;return e.boundary&&t.set("boundary",e.boundary),{path:`/v1/desktop/team-bridge/status${t.size>0?`?${t.toString()}`:""}`,method:"GET"}}case"settings.list":return{path:"/v1/settings",method:"GET"};case"settings.edit":return{path:`/v1/settings/${e.key}`,method:"PATCH",body:{value:e.value,base:e.base}};case"settings.reset":return{path:`/v1/settings/${e.key}/reset`,method:"POST"};case"tts.paths":return{path:"/v1/tts/paths",method:"GET"};case"config.get":return{path:"/v1/config",method:"GET"};case"config.update":return{path:"/v1/config",method:"PATCH",body:e.value};case"instructions.get":return{path:"/v1/config/system-prompt",method:"GET"};case"instructions.update":return{path:"/v1/config/system-prompt",method:"PATCH",body:{content:e.content}};case"credentials.list":return{path:"/v1/credentials",method:"GET"};case"credentials.update":return{path:"/v1/credentials",method:"PATCH",body:{key:e.key,value:e.value}};case"library.list":{const t=new URLSearchParams;e.scope&&t.set("scope",e.scope),e.q&&t.set("q",e.q),e.category&&t.set("category",e.category),e.kind&&t.set("kind",e.kind),e.origin_group&&t.set("origin_group",e.origin_group),e.origin&&t.set("origin",e.origin),e.tag&&t.set("tag",e.tag),e.tag_mode&&t.set("tag_mode",e.tag_mode),e.highlighted!==void 0&&t.set("highlighted",e.highlighted?"1":"0"),e.organized!==void 0&&t.set("organized",e.organized?"1":"0"),e.favorite!==void 0&&t.set("favorite",e.favorite?"1":"0"),e.session&&t.set("session",e.session),e.session_id&&t.set("session_id",e.session_id),e.sort&&t.set("sort",e.sort),e.order&&t.set("order",e.order),e.limit!==void 0&&t.set("limit",String(e.limit)),e.cursor&&t.set("cursor",e.cursor);const n=t.toString();return{path:`/v1/desktop/library/assets${n?`?${n}`:""}`,method:"GET"}}case"library.get":return{path:`/v1/desktop/library/assets/${encodeURIComponent(e.id)}`,method:"GET"};case"library.update":return{path:`/v1/desktop/library/assets/${encodeURIComponent(e.id)}`,method:"PATCH",body:e.fields};case"library.tags":return{path:"/v1/desktop/library/tags",method:"GET"};case"library.tags.create":return{path:"/v1/desktop/library/tags",method:"POST",body:{name:e.name,...e.category!==void 0?{category:e.category}:{}}};case"library.tags.update":return{path:`/v1/desktop/library/tags/${encodeURIComponent(e.id)}`,method:"PATCH",body:{...e.name!==void 0?{name:e.name}:{},...e.category!==void 0?{category:e.category}:{}}};case"library.tags.delete":return{path:`/v1/desktop/library/tags/${encodeURIComponent(e.id)}`,method:"DELETE"};case"library.tags.merge":return{path:`/v1/desktop/library/tags/${encodeURIComponent(e.id)}/merge`,method:"POST",body:{into:e.into}};case"library.tags.assign":return{path:`/v1/desktop/library/assets/${encodeURIComponent(e.id)}/tags`,method:"PUT",body:{tags:e.tags,...e.primary!==void 0?{primary:e.primary}:{}}};case"library.chat.link":return{path:`/v1/desktop/library/assets/${encodeURIComponent(e.id)}/chat`,method:"PUT",body:{session_id:e.sessionId}};case"library.chat.clear":return{path:`/v1/desktop/library/assets/${encodeURIComponent(e.id)}/chat`,method:"DELETE"};case"library.librarian":{const t=e.action??"status";return t==="status"?{path:"/v1/desktop/librarian",method:"GET"}:{path:"/v1/desktop/librarian",method:"POST",body:{op:t}}}case"projects.list":return{path:"/v1/desktop/projects",method:"GET"};case"projects.get":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}`,method:"GET"};case"projects.create":return{path:"/v1/desktop/projects",method:"POST",body:{name:e.name,...e.description!==void 0?{description:e.description}:{},...e.status!==void 0?{status:e.status}:{},...e.tags!==void 0?{tags:e.tags}:{}}};case"projects.update":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}`,method:"PATCH",body:{...e.fields,...e.force_done===!0?{force_done:!0}:{}}};case"projects.delete":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}`,method:"DELETE",body:{confirm:e.confirmed_name}};case"projects.link":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}/links`,method:"POST",body:{session_id:e.sessionId}};case"projects.unlink":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}/links/${encodeURIComponent(e.sessionId)}`,method:"DELETE"};case"projects.milestone":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}/milestones`,method:"POST",body:{name:e.name,...e.targetDate!==void 0?{target_date:e.targetDate}:{},...e.completed!==void 0?{completed:e.completed}:{}}};case"projects.milestone.remove":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}/milestones/${encodeURIComponent(e.name)}`,method:"DELETE"};case"projects.request_update":return{path:`/v1/desktop/projects/${encodeURIComponent(e.key)}/request-update`,method:"POST"};case"projects.search":return{path:`/v1/desktop/projects/search?${new URLSearchParams({q:e.q,limit:String(e.limit??Jp)})}`,method:"GET"};case"aida.status":return{path:"/v1/desktop/aida",method:"GET"};case"aida.control":return{path:"/v1/desktop/aida",method:"POST",body:{op:e.action}};case"code_requests.list":return{path:`/v1/desktop/sessions/${e.sessionId}/code-requests`,method:"GET"};case"code_requests.refresh":return{path:`/v1/desktop/sessions/${e.sessionId}/code-requests/refresh`,method:"POST",body:{...e.keys!==void 0?{keys:e.keys}:{},...e.force!==void 0?{force:e.force}:{}}};case"static.sign":return{path:"/v1/static/sign",method:"POST",body:{route:e.route,path:e.path,ttl_s:e.ttlS}};case"sidebar_layout.get":return{path:"/v1/desktop/sidebar-layout",method:"GET"};case"sidebar_layout.set":return{path:"/v1/desktop/sidebar-layout",method:"PUT",body:{layout:e.layout}}}}const qS=64,ek=64*1024*1024,tk="superseded_completion_token",nk="store_busy",Dh="session_is_remote",Nh="owner_build_behind";function rk(e,t,n){if(!e||typeof e!="object")return!1;const r=e;return r.unseen===!1&&r.conversation_id===`session/${t}`&&r.completion_token===n}function mn(e,t,n){return!t||t.conversation_id!==`session/${n}`||!Array.isArray(t.revision)||t.revision.length!==2||!t.revision.every(r=>Number.isSafeInteger(r)&&r>=0)||e?.conversation_id===t.conversation_id&&(t.revision[0]<e.revision[0]||t.revision[1]<e.revision[1])?e:t.supported===void 0&&e?.supported!==void 0?{...t,supported:e.supported}:t}function Lh(e){const t=Number(e);return Number.isFinite(t)&&t>0?Math.round(t*1e3):null}const sk=e=>typeof e?.goal_status=="string",ik=e=>(e?.goal??"").trim().length>0;function $h(e,t,n){return n.session_id!==t||n.payload.frontend.snapshot.session_id!==t||!e?!1:e.epoch===n.epoch&&n.seq>e.seq}const Zn={notPaired:"This backend was not started with desktop controls.",serverDown:"The Local Operator server is not answering.",frameBudget:"The event stream exceeded its frame budget.",ended:"The event stream ended."},$a={statement:"Lost the connection to this conversation — reconnect to keep reading.",action:"reconnect"},Uh={statement:"The Local Operator server is not running — reconnect once it is back, or restart the app if it stays down.",action:"reconnect"},Fh={statement:"This app is not paired with the Local Operator server, so this conversation cannot be read yet.",action:null},Bh={statement:"Could not load this conversation's history — reconnect to try again.",action:"reconnect"},Gh={statement:"This conversation's updates were too large to display — reconnect to try again.",action:"reconnect"};function Ua(e){return e?e===Zn.notPaired?Fh:e===Zn.serverDown?Uh:e===Zn.frameBudget?Gh:$a:$a}const Fa=e=>{let t;const n=new Set,r=(d,u)=>{const f=typeof d=="function"?d(t):d;if(!Object.is(f,t)){const p=t;t=u??(typeof f!="object"||f===null)?f:Object.assign({},t,f),n.forEach(h=>h(t,p))}},s=()=>t,l={setState:r,getState:s,getInitialState:()=>c,subscribe:d=>(n.add(d),()=>n.delete(d))},c=t=e(r,s,l);return l},Hh=e=>e?Fa(e):Fa,Wh=e=>e;function zh(e,t=Wh){const n=na.useSyncExternalStore(e.subscribe,()=>t(e.getState()),()=>t(e.getInitialState()));return na.useDebugValue(n),n}const Ba=e=>{const t=Hh(e),n=r=>zh(t,r);return Object.assign(n,t),n},_r=e=>e?Ba(e):Ba;function kc(e,t){let n;try{n=e()}catch{return}return{getItem:s=>{var i;const a=c=>c===null?null:JSON.parse(c,void 0),l=(i=n.getItem(s))!=null?i:null;return l instanceof Promise?l.then(a):a(l)},setItem:(s,i)=>n.setItem(s,JSON.stringify(i,void 0)),removeItem:s=>n.removeItem(s)}}const bi=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then(r){return bi(r)(n)},catch(r){return this}}}catch(n){return{then(r){return this},catch(r){return bi(r)(n)}}}},Zh=(e,t)=>(n,r,s)=>{let i={storage:kc(()=>localStorage),partialize:m=>m,version:0,merge:(m,y)=>({...y,...m}),...t},a=!1;const l=new Set,c=new Set;let d=i.storage;if(!d)return e((...m)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),n(...m)},r,s);const u=()=>{const m=i.partialize({...r()});return d.setItem(i.name,{state:m,version:i.version})},f=s.setState;s.setState=(m,y)=>{f(m,y),u()};const p=e((...m)=>{n(...m),u()},r,s);s.getInitialState=()=>p;let h;const g=()=>{var m,y;if(!d)return;a=!1,l.forEach(v=>{var I;return v((I=r())!=null?I:p)});const _=((y=i.onRehydrateStorage)==null?void 0:y.call(i,(m=r())!=null?m:p))||void 0;return bi(d.getItem.bind(d))(i.name).then(v=>{if(v)if(typeof v.version=="number"&&v.version!==i.version){if(i.migrate){const I=i.migrate(v.state,v.version);return I instanceof Promise?I.then(C=>[!0,C]):[!0,I]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,v.state];return[!1,void 0]}).then(v=>{var I;const[C,J]=v;if(h=i.merge(J,(I=r())!=null?I:p),n(h,!0),C)return u()}).then(()=>{_?.(h,void 0),h=r(),a=!0,c.forEach(v=>v(h))}).catch(v=>{_?.(void 0,v)})};return s.persist={setOptions:m=>{i={...i,...m},m.storage&&(d=m.storage)},clearStorage:()=>{d?.removeItem(i.name)},getOptions:()=>i,rehydrate:()=>g(),hasHydrated:()=>a,onHydrate:m=>(l.add(m),()=>{l.delete(m)}),onFinishHydration:m=>(c.add(m),()=>{c.delete(m)})},i.skipHydration||g(),h||p},ms=Zh,Vh=(e,t)=>e!==null&&e.message===t.message&&e.removed===t.removed&&e.max_age_hours===t.max_age_hours&&e.in_progress===t.in_progress&&e.first_removal_at===t.first_removal_at&&e.freed_bytes_estimate===t.freed_bytes_estimate&&e.record===t.record;function Kh(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.message!="string"||t.message.trim()==="")return null;const n=(r,s)=>typeof r=="number"&&Number.isFinite(r)?r:s;return{message:t.message,removed:n(t.removed,0),max_age_hours:n(t.max_age_hours,48),in_progress:t.in_progress===!0,first_removal_at:typeof t.first_removal_at=="string"?t.first_removal_at:"",freed_bytes_estimate:typeof t.freed_bytes_estimate=="number"&&Number.isFinite(t.freed_bytes_estimate)?t.freed_bytes_estimate:null,record:typeof t.record=="string"?t.record:""}}const Rc=_r()(ms(e=>({notice:null,receive:t=>e(n=>Vh(n.notice,t)?n:{notice:t}),dismiss:()=>e(t=>t.notice===null?t:{notice:null})}),{name:"delegated-cleanup-notice",storage:kc(()=>{if(typeof localStorage>"u"||localStorage===null)throw new Error("no localStorage in this environment");return localStorage}),partialize:e=>({notice:e.notice})}));async function Ec(e){if(window.api?.desktop)try{return await Yh(window.api.desktop.request(e),e)}catch(n){throw n instanceof ye?n:tm(n)?new $t(Sc,wc):new ye(null,"Desktop controls could not reach the backend process.",n)}let t;try{t=await fetch("/__desktop",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}catch(n){throw new ye(null,"Desktop controls could not reach the backend process.",n)}if(!t.ok)throw new ye(t.status,"Desktop controls need a compatible backend connection.");return t.json()}function Yh(e,t){const n=bc(t);let r;return Promise.race([e,new Promise((s,i)=>{r=setTimeout(()=>{const a=Ph(t.op,n);i(new ye(null,a.message,void 0,a.code))},n)})]).finally(()=>clearTimeout(r))}const Qh="This server did not answer the request for its desktop controls.";class ye extends Error{status;cause;code;retryAfterMs;detail;constructor(t,n,r,s,i,a){super(n),this.name="DesktopControlError",this.status=t,this.cause=r,this.code=s,this.retryAfterMs=i,this.detail=a}}class $t extends Error{code;constructor(t,n){super(t),this.name="UserFacingError",this.code=n}}function no(e,t){return e instanceof ye||e instanceof $t?hs(e.code)?eo[e.code]:e.message:t}function Jh(e,t,n,r){return typeof r=="string"?r:n===_i.noCredential?Je.noCredential:n===_i.transportFailed?Je.transportFailed:sh(Mh(e).path,t)}async function xe(e){const t=await Ec(e),n=t.body;if(t.status<200||t.status>=300){const r=typeof n?.detail=="string"?n.detail:typeof n?.detail?.text=="string"?n.detail.text:typeof n?.detail?.message=="string"?n.detail.message:null;throw new ye(t.status,r??Qh,void 0,Jh(e,t.status,r,typeof n?.detail=="object"?n.detail?.code:void 0),typeof n?.detail=="object"&&typeof n.detail?.retry_after_ms=="number"&&Number.isFinite(n.detail.retry_after_ms)?n.detail.retry_after_ms:void 0,typeof n?.detail=="object"?n.detail:void 0)}return e.op==="sessions.list"&&Xh(n?.result),n?.result}function Xh(e){if(typeof e!="object"||e===null)return;const t=Kh(e.delegated_cleanup_notice);t&&Rc.getState().receive(t)}async function qh(){try{await xe({op:"delegated_cleanup_notice.ack"})}catch{}}async function ok(){Rc.getState().dismiss(),await qh()}function em(e){return e instanceof ye&&e.code===to}function ak(e){if(!(e instanceof ye))return!1;const t=e.detail?.cause;return typeof t=="string"&&t.length>0?t===Nh:e.code===Dh}function lk(e){return e instanceof $t&&e.code===wc}function tm(e){return e instanceof Error&&e.message.includes(Sc)}async function ck(e){const t=await Ec(e);return new Response(t.status===204?null:JSON.stringify(t.body),{status:t.status,headers:{"Content-Type":"application/json"}})}async function dk(e,t=!1){if(window.api?.desktop)return window.api.desktop.openAuthorization(e,t);const n=await xe({op:"auth.status",id:e});if(!n.auth_url)throw new Error("This sign-in is no longer waiting for a browser.");const r=new URL(n.auth_url);if(r.username||r.password||r.protocol!=="https:"&&!(r.protocol==="http:"&&["127.0.0.1","localhost","[::1]"].includes(r.hostname)))throw new Error("The provider returned an invalid sign-in address.");window.open(r.href,"_blank","noopener,noreferrer")}function nm(e,t){const n=window.api?.desktop?.stream;if(n){const i=n.subscribe(e,t);return()=>i.dispose()}const r=new URLSearchParams({session:e.sessionId});e.epoch&&r.set("epoch",e.epoch),e.afterSeq!==void 0&&r.set("after_seq",String(e.afterSeq)),r.set("frontend_replace","1"),e.openFrame===!0&&r.set("open_frame","1"),e.journalOrder===!0&&(r.set("journal_order","1"),e.peerJournalSource===!0&&r.set("peer_journal_source","1"),ts(r,"/__desktop/stream",e.orderIds??[]));const s=new EventSource(`/__desktop/stream?${r}`);return s.onmessage=i=>{t({kind:"data",data:i.data})},s.onerror=()=>{s.readyState===EventSource.CLOSED&&(t({kind:"error",detail:Zn.ended}),s.close())},()=>{s.close(),t({kind:"end"})}}async function uk(e,t){const n=window.api?.desktop?.media;if(n)return n(e,t);const r=await fetch("/__desktop/media",{method:"POST",headers:{"x-desktop-media":JSON.stringify(e),"Content-Type":"application/octet-stream"},body:t?new Blob([t]):void 0}),s=r.headers.get("content-type")??"";if(!r.ok){let i="The media request failed.",a;if(s.includes("application/json"))try{const c=(await r.json())?.detail;if(typeof c=="string")i=c;else if(typeof c=="object"&&c!==null){const d=c;typeof d.text=="string"&&d.text.trim()?i=d.text:typeof d.message=="string"&&d.message.trim()&&(i=d.message),typeof d.code=="string"&&(a=d.code)}}catch{}return{status:r.status,kind:"error",detail:i,code:a!==void 0&&hs(a)?a:i===_i.noCredential?Je.noCredential:void 0}}return s.includes("application/json")?{status:r.status,kind:"json",body:await r.json()}:{status:r.status,kind:"bytes",mimeType:s||"application/octet-stream",data:new Uint8Array(await r.arrayBuffer())}}function fk(e){return e.kind==="error"?hs(e.code)?new $t(eo[e.code],e.code):new Error(e.detail):new Error("The media request returned an unexpected response.")}const Nn=e=>{const t=e.id;return typeof t=="string"?t:typeof t=="number"?String(t):null};function rm(e,t){const n=new Set((t.removed??[]).map(String)),r=e.filter(a=>{const l=Nn(a);return l===null||!n.has(l)});for(const a of t.upserted??[]){const l=Nn(a);if(l===null){r.push(a);continue}const c=r.findIndex(d=>Nn(d)===l);c===-1?r.push(a):r[c]=a}if(!t.order)return r;const s=new Map;for(const a of r){const l=Nn(a);l!==null&&s.set(l,a)}const i=[];for(const a of t.order){const l=String(a),c=s.get(l);c&&(i.push(c),s.delete(l))}for(const a of r){const l=Nn(a);l!==null&&s.has(l)?(i.push(a),s.delete(l)):l===null&&i.push(a)}return i}const wi=e=>({revision:Ke(e),demand:e.orderDemand}),Kt=e=>typeof e=="number"&&Number.isSafeInteger(e)&&e>=0;function Rn(e,t,n,r,s,i={}){let a=e;const l=t.journal_generation;if(t.reconcile===!0){const p=typeof l=="string"&&l.length>0?l:void 0;return a.orderNeedsReconcile&&a.orderWantedGeneration===p?a.journalMode?a:{...a,journalMode:!0}:{...a,journalMode:!0,orderNeedsReconcile:!0,orderWantedGeneration:p,orderDemand:p!==void 0?{generation:p}:{}}}if(typeof l!="string"||l.length===0)return t.journal_order_state&&t.journal_order_state!=="unsupported"&&!a.journalMode?{...a,journalMode:!0}:a;if(r&&t.journal_order_state==="ready"&&s&&a.orderNeedsReconcile&&a.orderDemand===s.demand&&(a={...a,orderNeedsReconcile:!1,orderWantedGeneration:void 0,orderDemand:void 0}),l!==a.journalGeneration&&!r)return a.orderNeedsReconcile&&a.orderWantedGeneration===l?a:{...a,orderNeedsReconcile:!0,orderWantedGeneration:l,orderDemand:{generation:l}};let c=a.journalMode?a:{...a,journalMode:!0};if(l!==a.journalGeneration&&(c={...a,journalMode:!0,journalGeneration:l,orderRevision:(a.orderRevision??0)+1,journalPositions:new Map,orderNeedsReconcile:a.orderNeedsReconcile,orderWantedGeneration:a.orderWantedGeneration,orderDemand:a.orderDemand},i.peer===!0)){const p=(a.orderRevision??0)+1,h=new Map;for(const g of a.records){const m=g.sourceEntryId??(g.kind==="tool"||g.kind==="supplement"?null:g.id);typeof m=="string"&&m.length>0&&m.length<=128&&h.set(m,p)}c={...c,...h.size>0?{journalBodyOwed:h}:{},journalSourceVoid:void 0}}let d=c.journalPositions??new Map;const u=d,f=(p,h,g)=>{if(!Kt(g))return;const m=d.get(p);m&&m.seq>=g||(d===u&&(d=new Map(d)),d.set(p,{entryId:h,seq:g}))};for(const[p,h]of Object.entries(t.journal_ordinals??{}))f(p,p,h);for(const p of n)typeof p.id=="string"&&(f(p.id,p.id,p.journal_seq),p.role==="tool"&&typeof p.tool_call_id=="string"&&f(`tool:${p.tool_call_id}`,p.id,p.journal_seq),typeof p.anchor=="string"&&f(`supplement:${p.anchor}`,p.id,p.journal_seq));return d!==u&&(c={...c,journalPositions:d}),c}function ro(e,t){if(!e.journalMode||typeof t.id!="string"||!Array.isArray(t.tool_calls))return e;let n=e.journalCallOwners??new Map,r=e.journalCallSlots??new Map;const s=n,i=r;return t.tool_calls.forEach((a,l)=>{!a||typeof a.id!="string"||(n.get(a.id)!==t.id&&(n===s&&(n=new Map(n)),n.set(a.id,t.id)),r.get(a.id)!==l&&(r===i&&(r=new Map(r)),r.set(a.id,l)))}),n===s&&r===i?e:{...e,journalCallOwners:n,journalCallSlots:r}}function Ic(e,t){const n=new Set(e.map(i=>i.id));let r=!1,s;for(let i=0;i<e.length;i++){const a=e[i];if(a.kind==="user"&&a.provisional===!0){s=a;continue}!t(a)&&s&&(a.sourceAdmissionAnchor===void 0||!n.has(a.sourceAdmissionAnchor))&&(e[i]={...a,sourceAdmissionAnchor:s.id},r=!0),s=e[i]}return r}function xc(e,t,n,r,s){const i=[],a=new Set;let l=e,c;for(;l!==void 0;){if(s.has(l.id)){c=s.get(l.id);break}if(n(l)){c=r(l);break}if(l.kind==="user"&&l.provisional===!0||a.has(l.id))break;a.add(l.id),i.push(l.id),l=l.sourceAdmissionAnchor?t.get(l.sourceAdmissionAnchor):void 0}for(const d of i)s.set(d,c);return c}function Tc(e,t){const n=new Map;return r=>{if(!r)return;const s=t(r);if(s===void 0)return;const i=[],a=new Set;let l=r,c=!0;for(;l;){if(n.has(l.id)){c=n.get(l.id)===!0;break}if(a.has(l.id)||t(l)===void 0){c=!1;break}a.add(l.id),i.push(l.id),l=l.sourceAdmissionAnchor===void 0?void 0:e.get(l.sourceAdmissionAnchor)}for(const d of i)n.set(d,c);return c?s:void 0}}function ns(e,t){const n=e.journalCallOwners,r=e.journalCallSlots;if(!n||!r)return t;const s=new Map;t.forEach((a,l)=>{if(a.kind!=="tool")return;const c=n.get(a.toolCallId);if(c===void 0||!r.has(a.toolCallId))return;const d=s.get(c);d?d.push(l):s.set(c,[l])});let i=t;for(const a of s.values()){if(a.length<2)continue;const l=a.map(c=>t[c]).sort((c,d)=>(r.get(c.toolCallId)??0)-(r.get(d.toolCallId)??0));l.every((c,d)=>c===t[a[d]])||(i===t&&(i=t.slice()),a.forEach((c,d)=>{i[c]=l[d]}))}return i}function Cc(e,t){if(!e.journalMode)return t;if(e.journalPeerSource===!0)return sm(e,t);const n=e.journalGeneration,r=e.journalPositions;let s=!1;const i=t.map(h=>{let m=[r?.get(h.sourceEntryId??h.id),r?.get(h.id)].filter(v=>v!==void 0).sort((v,I)=>I.seq-v.seq)[0];if(h.journalGeneration===n&&Kt(h.journalSeq)&&(!m||h.journalSeq>m.seq)&&(m={entryId:h.sourceEntryId??h.id,seq:h.journalSeq}),!m||!n||!(h.kind==="user"&&(h.provisional===!0||h.local===!0))&&h.sourceEntryId===m.entryId&&h.journalSeq===m.seq&&h.journalGeneration===n)return h;s=!0;let _={...h,sourceEntryId:m.entryId,journalSeq:m.seq,journalGeneration:n};if(_.kind==="user"){const{provisional:v,local:I,...C}=_;_=C}return _});Ic(i,h=>h.journalGeneration===n&&Kt(h.journalSeq))&&(s=!0);const l=new Map,c=new Map(i.map(h=>[h.id,h])),d=Tc(c,h=>h!==void 0&&h.journalGeneration===n&&Kt(h.journalSeq)?h.journalSeq:void 0),u=h=>d(h)!==void 0,f=(h,g)=>{const m=d(h);if(h.kind==="user"&&h.provisional===!0&&m===void 0)return[1,0,0,0,g];const y=h.kind==="supplement"?h.anchor:h.kind==="tool"?e.journalCallOwners?.get(h.toolCallId)??e.argsByCall.get(h.toolCallId)?.anchorId:void 0,_=typeof y=="string"?d(c.get(y)):void 0,v=m===void 0?xc(h,c,u,d,l):void 0,I=_??m??v;return I===void 0?[1,0,0,0,g]:[0,I,_!==void 0?1:m!==void 0?0:2,m??Number.MAX_SAFE_INTEGER,g]},p=i.map((h,g)=>({record:h,index:g,rank:f(h,g)}));return p.sort((h,g)=>{for(let m=0;m<h.rank.length;m++){const y=h.rank[m]-g.rank[m];if(y)return y}return 0}),!s&&p.every((h,g)=>h.index===g)?ns(e,t):ns(e,p.map(h=>h.record))}function sm(e,t){const n=e.journalGeneration,r=e.journalPositions,s=new Map;for(const m of t){let _=[r?.get(m.sourceEntryId??m.id),r?.get(m.id)].filter(v=>v!==void 0).sort((v,I)=>I.seq-v.seq)[0];m.journalGeneration===n&&Kt(m.journalSeq)&&(!_||m.journalSeq>_.seq)&&(_={entryId:m.sourceEntryId??m.id,seq:m.journalSeq}),_&&s.set(m.id,_)}const i=m=>m===void 0?void 0:s.get(m.id)??r?.get(m.sourceEntryId??m.id)??r?.get(m.id);let a=!1;const l=t.slice();Ic(l,m=>m.journalGeneration===n&&Kt(m.journalSeq))&&(a=!0);const d=new Map,u=new Map(l.map(m=>[m.id,m])),f=Tc(u,m=>i(m)?.seq),p=m=>f(m)!==void 0,h=(m,y)=>{const _=f(m);if(m.kind==="user"&&m.provisional===!0&&_===void 0)return[1,0,0,0,y];const v=m.kind==="supplement"?m.anchor:m.kind==="tool"?e.journalCallOwners?.get(m.toolCallId)??e.argsByCall.get(m.toolCallId)?.anchorId:void 0,I=typeof v=="string"?f(u.get(v)):void 0,C=_===void 0?xc(m,u,p,f,d):void 0,J=I??_??C;return J===void 0?[1,0,0,0,y]:[0,J,I!==void 0?1:_!==void 0?0:2,_??Number.MAX_SAFE_INTEGER,y]},g=l.map((m,y)=>({record:m,index:y,rank:h(m,y)}));return g.sort((m,y)=>{for(let _=0;_<m.rank.length;_++){const v=m.rank[_]-y.rank[_];if(v)return v}return 0}),!a&&g.every((m,y)=>m.index===y)?ns(e,t):ns(e,g.map(m=>m.record))}function ut(e){const t=e.records.filter(s=>s.kind==="user"&&s.provisional===!0),n=e.records.filter(s=>s.journalGeneration!==e.journalGeneration||!Kt(s.journalSeq)),r=[...t,...n].map(s=>s.sourceEntryId??(s.kind==="tool"||s.kind==="supplement"?null:s.id));if(r.push(...so(e)),e.journalPositions?.has(e.oldestId??"")||r.push(e.oldestId),e.journalSourceVoid?.size)for(let s=r.length-1;s>=0;s--){const i=r[s];typeof i=="string"&&e.journalSourceVoid.has(i)&&r.splice(s,1)}return[...new Set(r.filter(s=>typeof s=="string"&&s.length>0&&s.length<=128))]}function so(e){if(e.journalPeerSource!==!0||!e.journalBodyOwed)return[];const t=new Set;for(const r of e.records){const s=r.sourceEntryId??(r.kind==="tool"||r.kind==="supplement"?null:r.id);typeof s=="string"&&s.length>0&&s.length<=128&&t.add(s)}const n=[];for(const r of e.journalBodyOwed.keys())r.length<1||r.length>128||t.has(r)&&(e.journalSourceVoid?.has(r)||n.push(r));return n}function Ac(e,t){const n=e.journalPositions;return ut(e).filter(r=>!n?.has(r)&&!t?.has(r))}const Ke=e=>e.orderRevision??0;async function im(e){const t=new Map,n=l=>{let c=t.get(l);return c||(c=new Set,t.set(l,c)),c},r=(l,c)=>c==="payload"?so(l):c==="lookup"?Ac(l):ut(l);let s=e.getTranscript().journalGeneration,i=0,a=0;for(;;){if(!e.isCurrent())return{kind:"stale"};const l=e.getTranscript(),c=wi(l),d=c.revision,u=e.sweep?.(l,n);if(u?.kind==="none")return{kind:"complete",transcript:l};const f=u?.kind??"authority",p=pp(r(l,f).filter(y=>!n(f).has(y)),u?.path??e.lookupPath,u?.query??new URLSearchParams({journal_order:"1"})),h=await e.read(p,f);if(!e.isCurrent()||Ke(e.getTranscript())!==d)return{kind:"stale"};if(e.commit(h,d,c),!e.isCurrent())return{kind:"stale"};const g=e.getTranscript(),m=e.page(h);if(m.journal_order_state==="ready"&&m.journal_generation===g.journalGeneration){m.journal_generation!==s&&(t.clear(),s=m.journal_generation);for(const v of p)n(f).add(v);if(g.orderNeedsReconcile){if(g.orderDemand===c.demand||i===1)return{kind:"waiting"};i++,t.clear();continue}if(f==="payload"){const v=(m.source_retry_ids??[]).filter(I=>typeof I=="string"&&I.length>0&&I.length<=128);if(v.length>0&&p.length>1&&a===0){a++;for(const I of v)n("payload").delete(I);continue}}const y=e.sweep?.(g,n);if(y?.kind==="none")return{kind:"complete",transcript:g};const _=y?.kind??"authority";if(r(g,_).some(v=>!n(_).has(v)))continue;return{kind:"complete",transcript:g}}if(!g.orderNeedsReconcile||g.orderDemand===c.demand||i===1)return{kind:"waiting"};i++,t.clear()}}function rt(e){const t=e.payload,n=t?.tool_call_id;if(t?.role==="tool"&&typeof n=="string"&&n)return`tool:${n}`;const s=(t?.details??{}).anchor;return t?.custom_type==="completion_attention"&&typeof s=="string"&&s?s:e.id}function Ws(e){return typeof e!="number"||!Number.isFinite(e)?null:Math.max(0,Math.trunc(e))}function Ga(e){return typeof e!="number"||!Number.isFinite(e)||e<0?null:e}function pk(e){if(!e||e.runs_state!=="ready")return null;const t=e.runs;if(!t||t.length===0)return null;const n=new Map;for(const i of t){if(!i.settled||typeof i.run_key!="string"||i.run_key.length===0)continue;const a=Ws(i.action_count);if(a===null)continue;const l={actions:a,workedSeconds:Ga(i.worked_seconds),failed:Ws(i.failed_count)??0,complete:i.complete!==!1,openingUserId:typeof i.opening_user_id=="string"&&i.opening_user_id.length>0?i.opening_user_id:null,closingAnswerId:typeof i.closing_answer_id=="string"&&i.closing_answer_id.length>0?i.closing_answer_id:null,crossSessionActions:Ws(i.cross_session_action_count),crossSessionWorkedSeconds:Ga(i.cross_session_worked_seconds)};n.set(i.run_key,l),l.openingUserId!==null&&n.set(l.openingUserId,l),l.closingAnswerId!==null&&n.set(l.closingAnswerId,l)}if(n.size===0)return null;const r=new Set;for(const i of e.entries)r.add(rt(i));const s=e.entries[e.entries.length-1];return{runs:n,page:{ids:r,newestKey:s?rt(s):null}}}function om(e){if(!e||e.runs_state!=="ready"||e.head_cut===!0)return null;const t=e.runs,n=e.entries[0];if(!n||!t||t.length===0||!t.find(i=>i.opening_user_id===n.id))return null;const s=Math.round((n.ts??0)*1e3);return s>0?{id:n.id,tsMs:s}:null}function am(e,t,n){const r=om(e),s=e?.entries;if(r===null||!s||s.length===0)return!1;const i=Math.round((s[s.length-1].ts??0)*1e3);if(!(i>r.tsMs))return!1;for(const[a,l]of t)if(!n.has(a)&&(l===null||!(l>r.tsMs)||!(l<i)))return!1;return!0}const io=new Set,en="\\t\\n\\v\\f\\r\\u001C-\\u001F \\u0085\\u00A0\\u1680\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000",Oc=new RegExp(`[${en}]`),hk=new RegExp(`[${en}]+`),mk=new RegExp(`[${en}]+`,"g"),lm=new RegExp(`^[${en}]+|[${en}]+$`,"g"),cm=new RegExp(`^[${en}]+`),gk=new RegExp(`[^${en}]`);function Ot(e){return e.replace(lm,"")}function cr(e){return e.replace(cm,"")}function dm(e,t){return t===0||Oc.test(e[t-1])}function Pc(e){const t=[];for(let n=0;n<e.length;n++)e[n]==="/"&&dm(e,n)&&t.push(n);return t}function oo(e,t){let n=t===null||t>e.length?e.length:t;n<0&&(n=0);const r=e.lastIndexOf(`
2
- `,n-1)+1,s=e.indexOf(`
3
- `,n),i=s===-1?e.length:s;let a=e.slice(r,i);return a.endsWith("\r")&&(a=a.slice(0,-1)),{line:a,lineStart:r,column:n-r}}function um(e,t){if(t.size===0)return null;for(const n of Pc(e)){const r=e.slice(n+1),s=r.indexOf(" ");if(s!==-1&&t.has(r.slice(0,s).toLowerCase()))return n}return null}function ao(e,t,n){const r=um(e,n);let s=null;for(const i of Pc(e)){if(i===r)return t>i?i:s;i<=t&&(s=i)}return s}function fm(e,t=null,n=io){const{line:r,lineStart:s,column:i}=oo(e,t),a=ao(r,i,n);if(a===null)return null;let l=a+1;for(;l<r.length&&!Oc.test(r[l]);)l++;return i>l?null:{start:s+a,query:r.slice(a+1,l),end:s+l}}function yk(e,t=null,n=io){const{line:r,lineStart:s,column:i}=oo(e,t),a=ao(r,i,n);return a===null?null:{start:s+a,end:s+r.length}}function pm(e,t,n=null,r=io){const{line:s,lineStart:i,column:a}=oo(e,n),l=r.size>0?r:new Set(t.map(h=>h.toLowerCase())),c=ao(s,a,l);if(c===null)return null;const d=s.slice(c+1),u=d.indexOf(" ");if(u===-1)return null;const f=d.slice(0,u);if(!t.some(h=>h.toLowerCase()===f.toLowerCase()))return null;const p=c+1+f.length;return a<=p?null:{value:d.slice(u+1),start:i+p+1,end:i+s.length,tokenStart:i+c}}function Ha(e,t){return Ot(e.slice(0,t))===""}function vk(e,t,n,r){const s=pm(e,r,t,n);if(s!==null&&Ha(e,s.tokenStart))return"argument";const i=fm(e,t,n);return i!==null&&Ha(e,i.start)?"command":null}function _k(e,t,n,r){let s=t,i=n;const a=l=>l>=0&&l<e.length&&`
4
- `.includes(e[l]);return r===""?s>0&&a(s-1)?s-=1:a(i)&&(i+=1):s===0&&a(i)&&(i+=1),{text:`${e.slice(0,s)}${r}${e.slice(i)}`,caret:s+r.length}}const hm=/^\$([A-Za-z0-9][A-Za-z0-9._-]*)/,mm=/<skill name="([^"]*)" invocation="([^"]*)">/;function bk(e,t){const n=cr(e),r=hm.exec(n);if(!r)return null;const s=r[1];let i=t.includes(s)?s:void 0;if(i===void 0){const l=s.toLowerCase();i=t.find(c=>c.toLowerCase()===l)}if(i===void 0)return null;const a=Ot(n.slice(r[0].length));return{name:i,request:a,token:r[0],typed:Ot(n)}}function gm(e){return e.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\n/g,"&#10;")}function ym(e){return e.replace(/&#10;/g,`
5
- `).replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&quot;/g,'"').replace(/&amp;/g,"&")}function wk(e){if(!e||Ot(e)==="")return!1;let t=cr(e);if(t.startsWith("---")){const n=t.slice(3),r=n.indexOf(`
6
- ---`);r!==-1&&(t=n.slice(r+4))}return Ot(t)!==""}function Sk(e,t){const n=`The user invoked the \`${e.name}\` skill directly. Follow it for this request. Its reference files, if any, are listed at the end of the body and are read with \`skill://<name>/<path>\`.`,r=gm(e.typed),s=[n,`<skill name="${e.name}" invocation="${r}">`,t,"</skill>"];return e.request&&s.push(e.request),s.join(`
7
- `)}const Ae=[];for(let e=0;e<256;++e)Ae.push((e+256).toString(16).slice(1));function vm(e,t=0){return(Ae[e[t+0]]+Ae[e[t+1]]+Ae[e[t+2]]+Ae[e[t+3]]+"-"+Ae[e[t+4]]+Ae[e[t+5]]+"-"+Ae[e[t+6]]+Ae[e[t+7]]+"-"+Ae[e[t+8]]+Ae[e[t+9]]+"-"+Ae[e[t+10]]+Ae[e[t+11]]+Ae[e[t+12]]+Ae[e[t+13]]+Ae[e[t+14]]+Ae[e[t+15]]).toLowerCase()}let zs;const _m=new Uint8Array(16);function bm(){if(!zs){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");zs=crypto.getRandomValues.bind(crypto)}return zs(_m)}const wm=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Wa={randomUUID:wm};function Sm(e,t,n){if(Wa.randomUUID&&!e)return Wa.randomUUID();e=e||{};const r=e.random??e.rng?.()??bm();if(r.length<16)throw new Error("Random bytes length must be >= 16");return r[6]=r[6]&15|64,r[8]=r[8]&63|128,vm(r)}const jc=/^\s*<reply-to>([\s\S]*?)<\/reply-to>/,Mc=e=>{let t=e;for(;;){const n=jc.exec(t);if(n===null)break;t=t.slice(n[0].length)}return{prefix:e.slice(0,e.length-t.length),rest:t}},km=e=>{const t=[];let n=e;for(;;){const r=jc.exec(n);if(r===null)break;t.push({id:Sm(),text:r[1]}),n=n.slice(r[0].length)}return{replies:t,remainingContent:n.trim()}};function gs(e){return Dc(e)?.skill}const Rm=/^\s/,Em=/^[>|](?:[-+]\d?|\d[-+]?)?(?:\s+#.*)?$/,Im=/^The user invoked the `([^`\n]+)` skill directly\.[^\n]*\n/;function xm(e){const t=cr(e);if(!t.startsWith("---"))return null;const r=t.slice(3).indexOf(`
8
- ---`);return r===-1?null:e.length-t.length+3+r+4}function Tm(e){return e.replace(/\\"/g,'"').replace(/\\\\/g,"\\")}function za(e,t){const n=[];for(let r=1;r<e.length;r+=1){const s=e[r];if(t==='"'&&s==="\\"&&r+1<e.length){n.push(s,e[r+1]),r+=1;continue}if(s!==t){n.push(s);continue}if(t==="'"&&e[r+1]==="'"){n.push(s,s),r+=1;continue}const i=e.slice(r+1).trim();if(i!==""&&!i.startsWith("#"))return null;const a=n.join(""),l=t==="'"?a.replace(/''/g,"'"):Tm(a);return l===""?null:l}return null}function Cm(e){const t=e.split(`
9
- `);for(const[n,r]of t.entries()){if(!r.startsWith("description:"))continue;const s=r.slice(12).trim(),i=s!==""&&Em.test(s),a=[];s!==""&&!i&&a.push(s);for(let u=n+1;u<t.length;u+=1){const f=t[u];if(f.trim()!==""){if(!Rm.test(f))break;a.push(f.trim())}}if(a.length===0)return null;const l=a.join(" ");if(i)return l.trim()===""?null:l.trim();if(l.startsWith('"'))return za(l,'"');if(l.startsWith("'"))return za(l,"'");const c=l.indexOf(" #"),d=(c===-1?l:l.slice(0,c)).trim();return d===""?null:d}return null}function Dc(e){const{prefix:t,rest:n}=Mc(e),r=n.slice(0,n.length-cr(n).length),s=cr(n),i=Im.exec(s);if(i===null)return null;const a=mm.exec(s.slice(i[0].length));if(a===null||a.index!==0||a[1]!==i[1])return null;const l=i[0].length+a[0].length,c=s.indexOf("</skill>",l);if(c===-1)return null;const d=s.slice(l,c),u=xm(d),f=u===null?null:Cm(d.slice(0,u)),p=a[1],h=ym(a[2]);return{text:t+r+h,skill:{name:p,token:`$${p}`,request:Ot(s.slice(c+8)),purpose:f,body:Ot(u===null?d:d.slice(u))}}}function Am(e){const t=Dc(e);if(t===null)return null;const{prefix:n}=Mc(e);return{replies:km(e).replies,text:t.text.slice(n.length).trimStart()}}function kk(e){return Am(e)?.text??e}const Om=new Map([["This changes your instructions. Apply it from now on, and drop work it makes pointless.","steer"],["Answer it now with the `hub` tool — a short, direct reply — then carry on with what you were doing. Do not restructure your work around the question.","ask"],["This is a note, not a question. No reply is needed unless it changes what you should do.","note"]]),Pm=/\blabel=(['"])(.*?)\1/,jm=/\bjob=(['"])(.*?)\1/,Mm=/^<(parent-message|subagent-message)\b[^>]*>\n([\s\S]*)\n<\/\1>$/;function Si(e){const t=typeof e.text=="string"?e.text:"",n=Mm.exec(t);let r=n?.[2];const s=r?.indexOf(`
10
-
11
- `)??-1,a=n?.[1]==="parent-message"&&(e.direction===void 0||e.direction===""||e.direction==="to_child")&&s>=0?Om.get((r??"").slice(0,s)):void 0;n?.[1]==="parent-message"&&a&&(r=(r??"").slice(s+2));const l=typeof e.direction=="string"?e.direction:n?.[1]==="subagent-message"?"to_parent":a?"to_child":"";return{body:typeof e.body=="string"?e.body:r?.trim()?r:t,envelope:t,direction:l,label:dr(e.label??(n&&Pm.exec(n[0].split(`
12
- `,1)[0])?.[2])),jobId:dr(e.job_id??(n&&jm.exec(n[0].split(`
13
- `,1)[0])?.[2])),sender:Bc(e).sender,expectsReply:typeof e.expects_reply=="boolean"?e.expects_reply:e.expects_reply===void 0&&a?a==="ask":null,steer:typeof e.steer=="boolean"?e.steer:e.steer===void 0&&a?a==="steer":null}}function Rk(e){return[e.label||e.jobId||e.sender.conversationName||e.sender.sessionId||(e.direction==="to_child"?"Parent":e.direction==="to_parent"?"Subagent":"Hub"),e.expectsReply?"Reply requested":"",e.steer?"Steered":""].filter(Boolean).join(" · ")}function Dm(e){if(e.kind==="peer")return"incoming";if(e.kind==="wake")return"wake";if(e.kind!=="custom")return null;switch(e.customType){case"hub_message":return"incoming";case"job_result":return"job_result";case"monitor_prompt":return"monitor_prompt";default:return null}}function Ek(e){return Dm(e)!==null}const Nc=/\s+/,Nm=/[\\/]+$/,Lm=/[\\/]/,Lc=`
14
-
15
- `,$m=" — cancel with wake(",Um=120,$c=/(?:\u001b[\]PX^_]|[\u009d\u0090\u0098\u009e\u009f])(?:(?!\u0007|\u001b\\|\u009c)[\s\S])*(?:\u0007|\u001b\\|\u009c|$)|(?:\u001b\[|\u009b)[0-?]*[ -/]*[@-~]|(?:\u001b\[|\u009b)[0-?]*[ -/]*$|\u001b[ -/]+[0-~]|\u001b[@-Z\\-_]|\u001b$|[\u0000-\u0008\u000b-\u001f\u007f-\u009f]/g,Fm=new RegExp("\\p{Cf}","gu"),Bm=4096;function dr(e){return e==null?"":(typeof e=="string"?e:String(e)).replace($c,"").replace(Fm,"").split(Nc).filter(Boolean).join(" ").slice(0,Um)}const Ik={pid:"",conversationName:"",cwd:"",sessionId:"",modelLabel:""};function Uc(e){if(e.conversationName)return{name:e.conversationName,quoted:!0};const t=e.cwd.replace(Nm,"");if(t){const n=t.split(Lm).pop()??"";if(n)return{name:`${n}/`,quoted:!1}}return e.sessionId?{name:e.sessionId.slice(0,8),quoted:!1}:{name:"",quoted:!1}}function Fc(e){const{name:t,quoted:n}=Uc(e);return t?n?`"${t}"`:t:e.pid?`pid ${e.pid}`:"another session"}function Gm(e){const{name:t,quoted:n}=Uc(e),r=[];return e.pid&&r.push(`pid ${e.pid}`),e.modelLabel&&r.push(e.modelLabel),t?[n?`"${t}"`:t,...r].join(" · "):r.length>0?r.join(" · "):"another session"}function xk(e,t){return t.trim()?!0:Gm(e)!==Fc(e)}function Hm(e){for(const t of e.slice(0,Bm).split(`
16
- `)){const n=dr(t);if(n)return n}return""}function Tk(e,t){const n=Fc(e),r=Hm(t);return r?`${n} · ${r}`:n}function Zs(e,t){return e.pid===t.pid&&e.conversationName===t.conversationName&&e.cwd===t.cwd&&e.sessionId===t.sessionId&&e.modelLabel===t.modelLabel}const Wm=/^<peer-session-message\s+((?:[^>"']|"[^"]*"|'[^']*')*)>([\s\S]*?)<\/peer-session-message>\s*$/,zm=/<\/?peer-session-message(?:[^>"']|"[^"]*"|'[^']*')*>/g,Zm=/^<peer-session-message[^>]*>/,Vm=/([a-zA-Z_]+)\s*=\s*(?:'([^']*)'|"([^"]*)"|([^\s>]+))/g;function Bc(e){const t=String(e.text??e.detail??""),n=Wm.exec(t.trim()),r={};if(n)for(const d of n[1].matchAll(Vm))r[d[1]]=d[2]??d[3]??d[4]??"";const s=n?n[2]:"",a=(String(e.body??"").trim()||s||(n?"":t.trim().replace(Zm,""))).replace(zm,"").trim(),l=e.sender??{},c=(d,u)=>dr(d)||dr(u);return{body:a,sender:{pid:c(l.pid,r.from_pid),conversationName:c(l.conversation_name,r.conversation),cwd:c(l.cwd,void 0),sessionId:c(l.session_id,void 0),modelLabel:c(l.model_label,r.model)}}}function Km(e){return!!e.wake_catchup}function Ym(e){return e.hidden===!0}function Ck(e){let t=e.split(Lc)[0]??"";t=t.split(Nc).filter(Boolean).join(" "),t=t.split($m)[0];const n="(alarm) ";for(;t.startsWith(n);)t=t.slice(n.length);const r="Scheduled wake ";return t.startsWith(r)&&(t=t.slice(r.length)),t.trim()}function Ak(e){const t=e.indexOf(Lc);return t===-1?"":e.slice(t+2).trim()}const Qm=new Set(["command","path","file_path","url","pattern","query","name","target","message","milestone"]),Jm=new Set(["true","yes","y","t","on","1"]),Xm={hub:{steps:e=>{const t=yn(e);return t!==null&&Number.isInteger(t)&&t>=0?`${t} ${t===1?"step":"steps"}`:""}},wait:{wait_ms:e=>{const t=yn(e);return t!==null&&t>0?`· ${zc(t/1e3)}`:""}}};function yn(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(typeof e=="string"&&e!==""){const t=Number(e);return Number.isFinite(t)?t:null}return null}const Za="mcp__",qm=/^\/(?:Users|home)\/[^/]+\//,eg=/\s+/;function tg(e){return!e.startsWith("/")||e.includes(" ")?e:e.replace(qm,"~/")}function ze(e){return typeof e=="string"?tg(e.trim()).replace(/\n/g," ").trim():typeof e=="number"||typeof e=="boolean"?String(e):""}function ng(e){return e.now?"now":e.wake===!1?"quiet":"wake"}function rg(e){const t=e.pid;if(typeof t=="number"&&Number.isFinite(t))return`pid ${t}`;const n=String(e.session??"").trim();return n?`session ${n}`:String(e.target??"").split(eg).filter(Boolean).join(" ")||"?"}function sg(e){return[ng(e),ze(rg(e))||"?",ze(e.message)].filter(Boolean).join(" · ")}const ig=new Set(["delivered","mailbox","unconfirmed","failed"]);function og(e){if(!e||typeof e!="object")return null;const t=e.delivery;if(!t||typeof t!="object")return null;const n=t.state;return typeof n=="string"&&ig.has(n)?n:null}function Gc(e,t){return!e||typeof e!="object"?t??null:og(e)}function ag(e){if(!e||typeof e!="object"||Array.isArray(e))return null;const t=e;return!("stage"in t)&&!("error_type"in t)&&!("billing_basis"in t)&&!("settled"in t)&&!("artifacts"in t)&&!(typeof t.total=="number"&&typeof t.item=="number")?null:t}const lg=["stage","queue_position","progress_fraction","log_lines","error","error_type","cost_usd","billing_basis","settled","cost","artifacts","cost_complete","completed","failed","cancelled","total","item","name"];function cg(e,t){if(e===t)return!0;if(!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length)return!1;for(let n=0;n<e.length;n++){const r=e[n],s=t[n];if(!(!!r&&typeof r=="object")||!(!!s&&typeof s=="object")){if(r!==s)return!1;continue}const l=r,c=s;if(l.message!==c.message||l.timestamp!==c.timestamp)return!1}return!0}const dg=["name","digest","path","duration_s","format","cost_usd","billing_basis","request_id","error","status","cost"];function ug(e,t){return e===t?!0:!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length?!1:e.every((n,r)=>{const s=t[r];return!n||typeof n!="object"||!s||typeof s!="object"?n===s:dg.every(i=>i==="cost"?n.cost?.basis===s.cost?.basis:n[i]===s[i])})}function fg(e,t){for(const n of lg){const r=e[n],s=t[n];if(n==="artifacts"){if(!ug(r,s))return!1;continue}if(n==="cost"){const i=a=>a&&typeof a=="object"?a.basis:void 0;if(i(r)!==i(s))return!1;continue}if(n==="log_lines"){if(!cg(r,s))return!1;continue}if(r!==s)return!1}return!0}function ki(e,t){const n=ag(e);return n?t&&fg(n,t)?t:n:t??null}const Ok={mailbox:"wake unconfirmed",unconfirmed:"delivery unconfirmed",failed:"not delivered"},Pk={mailbox:"In their mailbox. The wake got no answer, so they will read it on their next turn.",unconfirmed:"No wake answer and not yet in their transcript — it may still arrive. Check before resending."},jk={mailbox:"Delivered to their mailbox. The wake got no answer, so they will read the message on their next turn. Do not send it again.",unconfirmed:"Not confirmed: there was no answer and the message is not in their transcript. It may still arrive, so check before resending.",failed:"Nothing was delivered. Fix the cause named below, or retry the send."},Mk={mailbox:"delivered, wake unconfirmed",unconfirmed:"delivery unconfirmed — it may still arrive, so check before resending"};function Hc(e){return e==="mailbox"||e==="unconfirmed"}function Dk(e){return Hc(e)?"partial":null}function Nk(e){return e==="failed"?"Attempted":null}function Lk(e,t){return e!==!0?!1:!Hc(t)}function Va(e){const t=yn(e.pid);return t!==null&&Number.isInteger(t)?`pid ${t}`:ze(e.session)||ze(e.target)||"?"}function pg(e){const t=ze(e.query);if(t){const a=yn(e.steps);return a!==null&&Number.isInteger(a)&&a>=0?`search ${t} · ${a} around`:`search ${t}`}const n=yn(e.steps);if(n!==null&&Number.isInteger(n)&&n>=0)return`last ${n}`;const r=yn(e.head);if(r!==null&&Number.isInteger(r)&&r>=0)return`first ${r}`;if(e.digest===!0)return"digest";const s=ze(e.before_id);if(s)return`before ${s}`;const i=ze(e.around_id);return i?`around ${i}`:""}function hg(e){const t=vg(e);if(t==="spawn"){const n=ze(e.visibility)||"workstream",r=ze(e.name)||ze(e.prompt);return[n,r].filter(Boolean).join(" · ")}if(t==="stop"||t==="resume"||t==="info")return Va(e);if(t==="peek")return[Va(e),pg(e)].filter(Boolean).join(" · ");if(t==="list"){const n=[];e.include_stored===!0&&n.push("stored");const r=ze(e.query);return r&&n.push(r),n.join(" · ")}return null}function $k(e,t){const n=e.trim();if(!t)return n;if(n==="send")return sg(t)||n;if(n.toLowerCase()==="sessions"){const i=hg(t);if(i!==null)return i||n}const r=_g(n)?Object.entries(t).filter(([i])=>!Zc.has(i)):Object.entries(t);let s=r.filter(([i])=>Qm.has(i)).map(([,i])=>ze(i)).filter(Boolean);if(s.length===0){const i=Xm[n.toLowerCase()];s=r.map(([a,l])=>i?.[a]?.(l)||ze(l)).filter(Boolean)}return s.slice(0,2).join(" ")||n}function Wc(e){const t=e.trim();if(!t.toLowerCase().startsWith(Za))return t;const n=t.slice(Za.length),r=n.indexOf("_");return r<=0?n||t:n.slice(r+1)||n}function mg(e,t){return e===t||e===Wc(t)}const gg=/^(?:exit code:?\s*-?\d*|\(empty\)|--- (?:stdout|stderr) ---)$/,yg="… ";function Uk(e,t=!1){if(!e||t)return null;for(const n of e.split(`
17
- `)){const r=n.trim();if(r&&!gg.test(r))return`${yg}${r.slice(0,160)}`}return null}function zc(e){const t=Math.max(0,Math.floor(e));if(t<60)return`${t}s`;if(t<3600){const s=Math.floor(t/60),i=t%60;return i===0?`${s}m`:`${s}m${i}s`}if(t<86400){const s=Math.floor(t/3600),i=Math.floor(t%3600/60);return i===0?`${s}h`:`${s}h${i}m`}const n=Math.floor(t/86400);if(n>99)return"100d+";const r=Math.floor(t%86400/3600);return r===0?`${n}d`:`${n}d${r}h`}function Fk(e){if(e===null)return"";const t=Math.max(0,e);return t<.05?"<0.1s":t<10?`${t.toFixed(1)}s`:t<60?`${Math.round(t)}s`:zc(t)}function Ka(e){const t=e*10,n=Math.floor(t),r=t-n;return((r>.5?n+1:r<.5||n%2===0?n:n+1)/10).toFixed(1)}function Bk(e){return e<1024?`${e} B`:e<1024*1024?`${Ka(e/1024)} KB`:`${Ka(e/(1024*1024))} MB`}function Ya(e){return typeof e!="number"||!Number.isInteger(e)||e<=0?0:e}const Qa={read:"read",glob:"read",grep:"read",web_fetch:"read",web_read:"read",web_search:"read",browser:"read",lsp:"read",list_variables:"read",read_variable:"read",write:"mutate",edit:"mutate",bash:"exec",eval:"exec",console:"exec",task:"meta",agent:"meta",team:"meta",hub:"meta",todo:"meta",send:"meta",wake:"meta",ask:"meta",wait:"meta",jobs:"meta",secret:"meta",network:"meta",project:"meta",team_delete:"meta",project_delete:"meta",sessions:"meta"};function Gk(e){const t=e.trim().toLowerCase();return Object.prototype.hasOwnProperty.call(Qa,t)?Qa[t]:"plain"}function vg(e){if(!e)return"";for(const t of Zc){const n=e[t];if(typeof n=="string"&&n.trim()){const r=n.trim().toLowerCase(),s=e.remove,i=s===!0||s===1||typeof s=="string"&&Jm.has(s.toLowerCase());return r==="milestone"&&i?"milestone-remove":r}}return""}const Zc=new Set(["op","action","method"]),_g=e=>Object.prototype.hasOwnProperty.call(Vc,e.trim().toLowerCase()),bg={bash:{settled:"Ran",running:"Running"},eval:{settled:"Ran Python",running:"Running Python"},read:{settled:"Read",running:"Reading"},write:{settled:"Wrote",running:"Writing"},edit:{settled:"Edited",running:"Editing"},glob:{settled:"Listed",running:"Listing"},grep:{settled:"Searched",running:"Searching"},web_search:{settled:"Searched the web",running:"Searching the web"},web_fetch:{settled:"Fetched",running:"Fetching"},web_read:{settled:"Read",running:"Reading"},browser:{settled:"Browsed",running:"Browsing"},list_variables:{settled:"Listed variables",running:"Listing variables"},read_variable:{settled:"Read variable",running:"Reading variable"},ask:{settled:"Asked",running:"Asking"},send:{settled:"Sent",running:"Sending"},wait:{settled:"Waited for jobs",running:"Waiting for jobs"},team_delete:{settled:"Deleted team",running:"Deleting team"},project_delete:{settled:"Deleted project",running:"Deleting project"},peer:{settled:"Received",running:"Receiving"},task:{settled:"Delegated",running:"Delegating"}},Vc={agent:{list:{settled:"Listed agents",running:"Listing agents"},show:{settled:"Viewed agent",running:"Viewing agent"},search:{settled:"Searched agents",running:"Searching agents"},install:{settled:"Installed agent",running:"Installing agent"},reset:{settled:"Reset agent",running:"Resetting agent"},create:{settled:"Created agent",running:"Creating agent"},update:{settled:"Updated agent",running:"Updating agent"},sync:{settled:"Synced agents",running:"Syncing agents"}},team:{list:{settled:"Listed teams",running:"Listing teams"},show:{settled:"Viewed team",running:"Viewing team"},create:{settled:"Created team",running:"Creating team"},update:{settled:"Updated team",running:"Updating team"}},hub:{list:{settled:"Listed subagents",running:"Listing subagents"},peek:{settled:"Peeked at",running:"Peeking at"},send:{settled:"Messaged",running:"Messaging"},ask:{settled:"Asked",running:"Asking"},steer:{settled:"Steered",running:"Steering"},pause:{settled:"Paused",running:"Pausing"},cancel:{settled:"Cancelled",running:"Cancelling"},resume:{settled:"Resumed",running:"Resuming"}},secret:{store:{settled:"Stored secret",running:"Storing secret"},retrieve:{settled:"Retrieved secret",running:"Retrieving secret"},list:{settled:"Listed secrets",running:"Listing secrets"},describe:{settled:"Described secret",running:"Describing secret"},update:{settled:"Updated secret",running:"Updating secret"},delete:{settled:"Deleted secret",running:"Deleting secret"}},project:{list:{settled:"Listed projects",running:"Listing projects"},show:{settled:"Viewed project",running:"Viewing project"},create:{settled:"Created project",running:"Creating project"},update:{settled:"Updated project",running:"Updating project"},link:{settled:"Linked session to",running:"Linking session to"},unlink:{settled:"Unlinked session from",running:"Unlinking session from"},milestone:{settled:"Updated milestone",running:"Updating milestone"},"milestone-remove":{settled:"Removed milestone",running:"Removing milestone"}},todo:{view:{settled:"Read todos",running:"Reading todos"},init:{settled:"Updated todos",running:"Updating todos"},add:{settled:"Updated todos",running:"Updating todos"},done:{settled:"Updated todos",running:"Updating todos"},block:{settled:"Updated todos",running:"Updating todos"},drop:{settled:"Updated todos",running:"Updating todos"}},wake:{create:{settled:"Scheduled",running:"Scheduling"},list:{settled:"Listed wakes",running:"Listing wakes"},cancel:{settled:"Cancelled wake",running:"Cancelling wake"}},jobs:{list:{settled:"Listed jobs",running:"Listing jobs"},peek:{settled:"Peeked at",running:"Peeking at"},cancel:{settled:"Cancelled job",running:"Cancelling job"}},network:{status:{settled:"Checked network status",running:"Checking network status"},ls:{settled:"Listed networks",running:"Listing networks"},show:{settled:"Viewed network",running:"Viewing network"},peers:{settled:"Listed network peers",running:"Listing network peers"},log:{settled:"Read network log",running:"Reading network log"},doctor:{settled:"Diagnosed network",running:"Diagnosing network"},init:{settled:"Created network",running:"Creating network"},invite:{settled:"Invited device",running:"Inviting device"},join:{settled:"Joined network",running:"Joining network"},member_rm:{settled:"Removed device",running:"Removing device"},disconnect:{settled:"Left network",running:"Leaving network"},panic:{settled:"Raised panic",running:"Raising panic"}},console:{list:{settled:"Listed consoles",running:"Listing consoles"},create:{settled:"Opened console",running:"Opening console"},status:{settled:"Checked console",running:"Checking console"},read:{settled:"Read console",running:"Reading console"},screenshot:{settled:"Captured console",running:"Capturing console"},input:{settled:"Typed in console",running:"Typing in console"},keys:{settled:"Sent keys",running:"Sending keys"},resize:{settled:"Resized console",running:"Resizing console"},secure:{settled:"Updated secure input",running:"Updating secure input"},close:{settled:"Closed console",running:"Closing console"}},lsp:{definitions:{settled:"Found definition",running:"Finding definition"},references:{settled:"Found references",running:"Finding references"},symbols:{settled:"Listed symbols",running:"Listing symbols"},rename_preview:{settled:"Previewed rename",running:"Previewing rename"}},sessions:{list:{settled:"Listed sessions",running:"Listing sessions"},info:{settled:"Viewed session",running:"Viewing session"},spawn:{settled:"Spawned session",running:"Spawning session"},resume:{settled:"Resumed session",running:"Resuming session"},stop:{settled:"Stopped session",running:"Stopping session"},peek:{settled:"Peeked at session",running:"Peeking at session"}}};function wg(e,t){const n=e.trim().toLowerCase(),r=(t??"").trim().toLowerCase(),s=r?Vc[n]?.[r]:void 0;if(s)return{...s,named:!0};const i=bg[n];return i?{...i,named:!0}:{settled:"Called",running:"Calling",named:!1}}function Hk(e,t,n,r,s="",i=null){const a=wg(e,s),l=mg(t,e)?n??"":t;return{verb:r?a.running:i??a.settled,object:a.named?l:[Wc(e),l].filter(Boolean).join(" ")}}const Sg=new Set(["write","edit"]);function kg(e){return Sg.has(e.trim().toLowerCase())}function Wk(e){return kg(e.toolName)&&e.diff!==null&&!e.isError}function Kc(e){if(!e||typeof e!="object")return null;const t=e.diff;if(typeof t=="string")return t?t.split(`
18
- `):null;if(!Array.isArray(t))return null;const n=t.filter(r=>typeof r=="string");return n.length?n:null}function Rg(e,t){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function Yc(e,t){return e===null||Rg(e,t)?t:e}function Qc(e,t){if(!e||typeof e!="object")return{added:t?.added??0,removed:t?.removed??0};const n=e;return{added:Ya(n.added),removed:Ya(n.removed)}}function Eg(e){return e.length>=2&&Ri(e[0])==="---"&&Ri(e[1])==="+++"?e.slice(2):e.slice()}const Ig=/\s+$/;function Ri(e){return e.replace(Ig,"")}function xg(e){const t=e.slice(0,1);return t==="@"?"hunk":t==="+"?"added":t==="-"?"removed":"context"}const Tg=40;function zk(e){const t=Eg(e),n=t.slice(0,Tg);return{lines:n.map(r=>{const s=Ri(r);return{text:s,marker:s.slice(0,1),kind:xg(s)}}),hidden:t.length-n.length}}function Zk(e){return`… ${e} more diff line${e===1?"":"s"}`}const Cg=`Continue working toward this goal:
19
-
20
- `,Ag=`
21
-
22
- Make concrete progress with the tools available, then state plainly what advanced and what remains. If the goal is fully met, say so and stop.`,Og=`Work toward this goal:
23
-
24
- {goal}
25
-
26
- Make concrete progress with the tools available, then briefly state what advanced and what remains. If the goal is already fully met, say so plainly.`,[Pg="",jg=""]=Og.split("{goal}"),Mg="Continue working toward the standing goal. Make concrete progress with the tools available, then briefly state what advanced and what remains. If the goal is already fully met, say so plainly and stop.";function Jc(e){const t=e.trim();return t===Mg||t.startsWith(Cg)&&t.endsWith(Ag)||t.startsWith(Pg.trim())&&t.endsWith(jg.trim())}const Dg=/Cost \$[0-9]+(?:\.[0-9]+)? \((?:billed|estimated[^)]*)\)\.?/;function Ng(e,t){const n=t?.match(Dg)?.[0]??null;if(!e||typeof e!="object")return n;const r=e,s=r.cost_usd,i=r.billing_basis;if(typeof s!="number"||!Number.isFinite(s)||s<0)return n;if(i!=="billed"&&i!=="estimated")return null;const a=Number(s.toFixed(4));return`Cost ${a===0&&s>0?"<$0.0001":`$${a}`} (${i}).`}function Xc(e){return e}const Ei="supplement_v1",Lg="superseded",rs=120,lo=480,$g=20,Vk=500;function co(e){return`supplement:${e}`}function Ug(e){const t=e.payload??{};if(String(t.custom_type??"")!==Ei)return null;const n=t.details??{},r=typeof n.anchor=="string"?n.anchor:"";return r?co(r):null}function ss(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function Fg(e){if(!e||typeof e!="object")return null;const t=e,n=typeof t.path=="string"?t.path:"",r=typeof t.name=="string"?t.name:"";return!n&&!r?null:{path:n,name:r,kind:typeof t.kind=="string"?t.kind:"",sizeBytes:ss(t.size_bytes)??0,mtime:ss(t.mtime)??0,why:typeof t.why=="string"?t.why:""}}function qc(e){if(!Array.isArray(e))return[];const t=[];for(const n of e){const r=Fg(n);r&&t.push(r)}return t}function Bg(e){if(!e||typeof e!="object")return null;const t=e,n=typeof t.attachment=="string"?t.attachment:"";if(!nd(n))return null;const r=ss(t.height_hint);return{attachment:n,title:typeof t.title=="string"?t.title:"",source:typeof t.source=="string"?t.source:"",mime:typeof t.mime=="string"?t.mime:"text/html",heightHint:r===null?rs:Math.min(lo,Math.max(rs,Math.round(r)))}}function ed(e){if(!Array.isArray(e))return[];const t=[];for(const n of e){const r=Bg(n);r&&t.push(r)}return t}function Gg(e){if(!e||typeof e!="object")return null;const t=e,n=typeof t.attachment=="string"?t.attachment:"";return nd(n)?{attachment:n,mime:typeof t.mime=="string"?t.mime:"audio/mpeg",title:typeof t.title=="string"?t.title:"",durationS:ss(t.duration_s)}:null}function td(e){if(!Array.isArray(e))return[];const t=[];for(const n of e){const r=Gg(n);r&&t.push(r)}return t}const Hg=/^[a-f0-9]{32}$/,Wg=/\s+/,zg=/\.0$/;function nd(e){return typeof e=="string"&&Hg.test(e)}const Zg={preparing:"files_preparing",cancelled_retry:"files_cancelled_retry",failed_retry:"files_failed_retry"};function Ja(e){switch(e){case"decided":return 0;case"queued":return 1;case"running":return 2;case"cancelling":return 3;case"done":case"failed":case"cancelled":case"skipped":return 4;default:return 0}}function Kk(e,t){const n=e.state;if(e.error===Lg||e.dismissed||n==="skipped")return"nothing";if(n==="done")return e.files.length||e.components.length||e.sounds?.length?"block":"nothing";let r;if(n==="failed")r="failed_retry";else if(n==="cancelled")r="cancelled_retry";else if(n==="decided"||n==="queued"||n==="running"||n==="cancelling")r=t?"preparing":"cancelled_retry";else return"nothing";return e.files.length?Zg[r]??r:r}const Yk="Preparing highlights…",Qk="Highlights cancelled",Jk="Couldn't prepare highlights",Xk="Adjust…",qk="Cancel",eR="Retry",Vg=64,Kg={provider_quota:"provider limit reached",provider_auth:"provider sign-in needed",provider_transient:"provider temporarily unavailable",provider_timeout:"provider timed out",provider_request:"provider refused the request",provider_content:"provider blocked the content",provider_context:"provider context limit"};function tR(e){return typeof e=="string"&&e?Kg[e]??"":""}function Vs(e){return typeof e!="string"?"":e.replace($c,"").split(Wg).filter(Boolean).join(" ")}function nR(e){const t=Math.max(0,Math.floor(e));return t===1?"1 more file":`${t} more files`}function Yg(e){if(typeof e!="number"||!Number.isFinite(e)||e<0)return"";if(e<1024)return`${Math.trunc(e)} B`;const t=[["KB",1024],["MB",1024**2],["GB",1024**3]];for(const[n,r]of t)if(e<r*1024||n==="GB")return`${(e/r).toFixed(1).replace(zg,"")} ${n}`;return""}function rR(e){const t=Vs(e.name)||Vs(e.path),n=Vs(e.path);return{name:t,path:n===t?"":n,size:Yg(e.sizeBytes)}}function Ks(e,t){const n=Math.max(0,Math.floor(e));return n===1?`1 ${t}`:`${n} ${t}s`}function sR(e,t,n=e){return t?`Hide ${Ks(e,"graphic")}`:n<e?`Show ${Math.max(0,Math.floor(n))} of ${Ks(e,"graphic")}`:`Show ${Ks(e,"graphic")}`}function iR(e){const t=Math.max(0,Math.floor(e));return t===1?"Show all 1 graphic":`Show all ${t} graphics`}const Qg="supplement",Jg=1,Xg=["ready","resize","error","pong"],qg=["resize","error","pong"],ey=64,uo=300,oR=5e3,aR=2e4;function lR(e,t){if(!e||typeof e!="object")return null;const n=e;if(n.lo!==Qg||n.v!==Jg)return null;const r=n.t;if(typeof r!="string"||!Xg.includes(r))return null;const s=r;if(qg.includes(s)&&(!t||t.length>ey||n.n!==t))return null;if(s==="error"){const i=n.msg;if(typeof i!="string"||i.length>uo)return null}if(s==="resize"){const i=n.h;if(typeof i!="number"||!Number.isFinite(i)||i<0)return null}return{lo:"supplement",v:1,t:s,...typeof n.n=="string"?{n:n.n}:{},...typeof n.h=="number"?{h:n.h}:{},...typeof n.msg=="string"?{msg:n.msg}:{}}}function cR(){const e=new Uint8Array(16);crypto.getRandomValues(e);let t="";for(const n of e)t+=n.toString(16).padStart(2,"0");return t}const ty=["--lo-accent","--lo-accent-wash","--lo-border-control","--lo-canvas","--lo-danger","--lo-hairline","--lo-info","--lo-ink","--lo-ink-dim","--lo-ink-muted","--lo-success","--lo-sunken","--lo-surface","--lo-warning","--font-mono","--font-sans"],ny=120;function ry(e=typeof document>"u"?null:document.documentElement){if(!e||typeof getComputedStyle!="function")return{mode:"dark",vars:{}};const t=getComputedStyle(e),n={};for(const s of ty){const i=t.getPropertyValue(s).trim();i&&(n[s]=i.slice(0,ny))}return{mode:e.classList.contains("dark")?"dark":"light",vars:n}}function dR(e){if(typeof MutationObserver>"u"||typeof document>"u")return()=>{};const t=new MutationObserver(()=>e(ry()));return t.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme","class"]}),()=>t.disconnect()}function uR(e){return`data:text/html;base64,${sy(e)}`}function sy(e){const t=iy(e),n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";let r="";for(let s=0;s<t.length;s+=3){const i=t[s]??0,a=t[s+1]??0,l=t[s+2]??0;r+=n[i>>2],r+=n[(i&3)<<4|a>>4],r+=s+1<t.length?n[(a&15)<<2|l>>6]:"=",r+=s+2<t.length?n[l&63]:"="}return r}function iy(e){const t=[];for(const n of e){const r=n.codePointAt(0)??0;r<=127?t.push(r):r<=2047?t.push(192|r>>6,128|r&63):r<=65535?t.push(224|r>>12,128|r>>6&63,128|r&63):t.push(240|r>>18,128|r>>12&63,128|r>>6&63,128|r&63)}return t}function fR(e){return Math.min(480,Math.round(.4*Math.max(0,e)))}function oy(e){return Math.min(lo,Math.max(rs,e.heightHint))}function ay(e){return Math.min(lo,Math.max(rs,e))}function pR(e,t,n){let r=0;const s=[];for(let i=0;i<e.length;i+=1){const a=e[i],l=n?.get(a.attachment),c=l!==void 0?ay(l):oy(a);if(i>0&&(!s.every(u=>n?.get(u.attachment)!==void 0)||r+c>t))break;r+=c,s.push(a)}return{visible:s,hidden:e.slice(s.length)}}const ly=/^[a-z][a-z0-9-]*\/[a-zA-Z0-9._:/-]{1,160}$/,rd=/^turn \d{1,2}: ProviderError status=(?:None|[1-5]\d{2}) kind=(?:auth|quota|transient|timeout|request|content|context|unknown)$/,cy=/kind=(auth|quota)\b/,dy=/kind=(transient|timeout)\b/;function sd(e){const t=a=>typeof a=="string"&&ly.test(a)&&!a.includes("://")?a:"",n=t(e.model),r=Array.isArray(e.attempts)?e.attempts.map(t).filter(Boolean).slice(0,8):void 0,s=Array.isArray(e.detail)?e.detail.filter(a=>typeof a=="string"&&(rd.test(a)||a==="prepared:unsupported")).slice(0,8):void 0,i=typeof e.cause=="string"?e.cause.slice(0,Vg):"";return{...n?{model:n}:{},...r?{attempts:r}:{},...s?{detail:s}:{},...i?{cause:i}:{}}}function hR(e){if(!rd.exec(e))return"";const n=e.split(" "),r=n[1].replace(":",""),s=n[3].slice(7),i=n[4].slice(5);return`Attempt ${r}: ${i}${s==="None"?"":` (HTTP ${s})`}`}function mR(e){const t=e.error==="generator:ProviderError"?e.detail?.at(-1)??"":"";return cy.test(t)?"The highlights model is unavailable right now. Your answer and files are unchanged.":dy.test(t)?"The highlights service did not respond. Your answer and files are unchanged.":e.error==="bound:cost"?"Highlights stopped at the spending limit or unavailable pricing. Your answer and files are unchanged.":e.error==="bound:time"?"Highlights reached the time limit. Your answer and files are unchanged.":"Your answer and files are unchanged. You can retry the highlights."}function uy(e){const t=typeof e.anchor=="string"?e.anchor:"";if(!t)return null;const n=String(e.state??"");return id(n)?{anchor:t,job:typeof e.job=="string"?e.job:"",version:typeof e.version=="number"&&Number.isInteger(e.version)?e.version:0,state:n,...n==="decided"||n==="done"?{files:qc(e.files)}:{},...n==="done"?{components:ed(e.components),sounds:td(e.sounds)}:{},...typeof e.error=="string"&&e.error?{error:e.error.slice(0,uo)}:{},...sd(e),live:!od(n)}:null}function fy(e){const t=typeof e.anchor=="string"?e.anchor:"";if(!t)return null;const n=String(e.state??"");if(!id(n))return null;const r=typeof e.files_more=="number"&&Number.isInteger(e.files_more)&&e.files_more>=0?e.files_more:0,s=Array.isArray(e.more)?e.more.filter(a=>typeof a=="string").slice(0,$g):[];return{anchor:t,job:typeof e.job=="string"?e.job:"",version:typeof e.version=="number"&&Number.isInteger(e.version)?e.version:0,state:n,files:qc(e.files),filesMore:r,more:s,components:ed(e.components),sounds:td(e.sounds),...sd(e),...e.dismissed===!0?{dismissed:!0}:{},...typeof e.error=="string"&&e.error?{error:e.error.slice(0,uo)}:{}}}function Xa(e,t,n){const r=fy(t);if(!r)return null;const s=n&&n.kind==="supplement"&&n.anchor===r.anchor?n:null;return ad(s,r,e)}function id(e){return e==="decided"||e==="queued"||e==="running"||e==="cancelling"||e==="done"||e==="failed"||e==="cancelled"||e==="skipped"}function od(e){return e==="done"||e==="failed"||e==="cancelled"||e==="skipped"}function py(e,t){return e===t?!0:e.length!==t.length?!1:e.every((n,r)=>{const s=t[r];return n.path===s.path&&n.name===s.name&&n.kind===s.kind&&n.sizeBytes===s.sizeBytes&&n.mtime===s.mtime&&n.why===s.why})}function hy(e,t){return e===t?!0:e.length!==t.length?!1:e.every((n,r)=>{const s=t[r];return n.attachment===s.attachment&&n.title===s.title&&n.source===s.source&&n.mime===s.mime&&n.heightHint===s.heightHint})}function my(e,t){return e===t?!0:e.length!==t.length?!1:e.every((n,r)=>{const s=t[r];return n.attachment===s.attachment&&n.mime===s.mime&&n.title===s.title&&n.durationS===s.durationS})}function ad(e,t,n){if(e&&(t.version<e.version||t.version===e.version&&Ja(t.state)<Ja(e.state)))return null;const r=!e||t.version>e.version,s=t.files!==void 0?t.files:e?.files??[],i=t.components!==void 0?t.components:e?.components??[],a=t.sounds!==void 0?t.sounds:e?.sounds??[],l=t.filesMore!==void 0?t.filesMore:e?.filesMore??0,c=t.more!==void 0?t.more:e?.more??[],d=t.error??(r?"":e?.error??""),u=t.cause??(r?"":e?.cause??""),f=t.dismissed??(r?!1:e?.dismissed??!1),p=t.live!==void 0?t.live===!0?!0:od(t.state)?!1:e?.live??!1:e?.live??!1;return{kind:"supplement",id:co(t.anchor),ts:e?.ts??n,anchor:t.anchor,job:t.job||e?.job||"",version:t.version,state:t.state,files:py(s,e?.files??[])?e?.files??[]:s,filesMore:l,more:gy(c,e?.more??[])?e?.more??[]:c,components:hy(i,e?.components??[])?e?.components??[]:i,sounds:my(a,e?.sounds??[])?e?.sounds??[]:a,error:d,cause:u,model:t.model??(r?"":e?.model??""),attempts:t.attempts??(r?[]:e?.attempts??[]),detail:t.detail??(r?[]:e?.detail??[]),dismissed:f,live:p}}function gy(e,t){return e===t?!0:e.length!==t.length?!1:e.every((n,r)=>n===t[r])}const gR=e=>e.kind===void 0||e.kind==="image",st={records:[],index:new Map,generation:0,compacting:!1,compactingSince:0,viewEpoch:0,oldestId:null,oldestTs:0,hasMore:!1,argsByCall:new Map};function ld(e){return e==="skipped"||e==="aborted"}function qa(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function el(e,t,n,r){return qa(n.args)??(r?.kind==="tool"?r.args:null)??qa(e.argsByCall.get(t)?.arguments)}function cd(e){return e?e.type==="image"||typeof e.attachment=="string"&&e.attachment?!0:typeof e.data=="string"&&e.data.length>0:!1}function dd(e){if(!e)return null;const t=e.kind;return t!=="image"&&t!=="video"&&t!=="audio"?null:typeof e.content_type=="string"||typeof e.attachment=="string"||typeof e.source_url=="string"?t:null}function $r(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function ft(e){const t=e?.content;return Array.isArray(t)?t.filter(n=>n&&!cd(n)&&dd(n)===null).filter(n=>(n.type??"text")==="text").map(n=>n.text??"").join(""):""}function Zt(e,t,n){const r=e?.content;if(!Array.isArray(r))return n?.length?n:Vn;const s=[];for(const i of r){const a=dd(i);if(a===null&&!cd(i))continue;const l={id:`${t}:${s.length}`,data:typeof i.data=="string"&&i.data?i.data:null,attachment:typeof i.attachment=="string"&&i.attachment?i.attachment:null,mimeType:typeof i.content_type=="string"&&i.content_type||typeof i.mime_type=="string"&&i.mime_type||"image/png"};a!==null&&(l.kind=a,l.width=$r(i.width),l.height=$r(i.height),l.sizeBytes=$r(i.size_bytes),l.durationS=$r(i.duration_s),l.name=typeof i.name=="string"&&i.name?i.name:null,l.sourceUrl=typeof i.source_url=="string"&&i.source_url?i.source_url:null),s.push(l)}return s.length===0?Vn:n&&fo(n,s)?n:s}const Vn=[];function tl(e){let t=0;for(const n of e)n.kind!==void 0&&(t+=1),n.width!=null&&(t+=1),n.height!=null&&(t+=1),n.sizeBytes!=null&&(t+=1),n.durationS!=null&&(t+=1),n.name!=null&&(t+=1),n.sourceUrl!=null&&(t+=1);return t}function ud(e,t,n){if(t.length===0)return e;if(e.length===0||fo(e,t))return t;const r=tl(e),s=tl(t);return r!==s?r>s?e:t:n==="incoming"?e:t}function yy(e,t){return ud(e,t,"incoming")}function fo(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n].id!==t[n].id||e[n].data!==t[n].data||e[n].attachment!==t[n].attachment||e[n].mimeType!==t[n].mimeType||e[n].kind!==t[n].kind||e[n].width!==t[n].width||e[n].height!==t[n].height||e[n].sizeBytes!==t[n].sizeBytes||e[n].durationS!==t[n].durationS||e[n].name!==t[n].name||e[n].sourceUrl!==t[n].sourceUrl)return!1;return!0}function Ve(e){const t=new Map;return e.forEach((n,r)=>t.set(n.id,r)),t}function vy(e,t){return t&&(!e||t.epoch!==e.epoch||t.seq>=e.seq)?t:e}const kt=new Set;function po(e){return e.kind==="user"&&e.provisional===!0}function fd(e){let t=Number.POSITIVE_INFINITY;return e.forEach((n,r)=>{po(n)&&r<t&&(t=r)}),t}function ur(e,t=kt,n){if(n?.journalMode)return Cc(n,e).map(Xc);const r=e.map((a,l)=>({record:a,position:l})),s=fd(e),i=a=>po(a.record)||a.position>s&&!t.has(a.record.id);return r.sort((a,l)=>{const c=i(a),d=i(l);return c!==d?c?1:-1:c?a.position-l.position:a.record.ts!==l.record.ts?a.record.ts-l.record.ts:a.position-l.position}).map(a=>a.record)}function _y(e,t,n){if(!n||t<=0)return kt;let r=null;for(const s of e){if(!po(s)||!(t>s.ts))continue;let i=!1,a=!1;for(const l of e)if(l.ts>s.ts?i=!0:l.ts<s.ts&&yo(l)&&(a=!0),i&&a)break;i&&a&&(r??=new Set,r.add(s.id))}return r??kt}function by(e){const{provisional:t,...n}=e;return n}function Ii(e,t){const n=e,r=t,s=Object.keys(n);if(s.length!==Object.keys(r).length)return!1;for(const i of s)if(n[i]!==r[i]){if(i==="images"){const a=n[i],l=r[i];if(Array.isArray(a)&&Array.isArray(l)&&fo(a,l))continue}if(i==="frame"){const a=n[i],l=r[i];if(a!==void 0&&l!==void 0&&a.epoch===l.epoch&&a.seq===l.seq)continue}if(i==="skill"){const a=n[i],l=r[i];if(a!==void 0&&l!==void 0&&wy(a,l))continue}return!1}return!0}function wy(e,t){return e.name===t.name&&e.token===t.token&&e.request===t.request&&e.purpose===t.purpose&&e.body===t.body}function ge(e,t){const n=e.index.get(t.id);if(n!==void 0){const i=e.records[n];if(Ii(i,t))return e;const a=e.records.slice();if(a[n]=e.journalMode?{...t,...i.sourceEntryId?{sourceEntryId:t.sourceEntryId??i.sourceEntryId}:{},...i.sourceAdmissionAnchor&&!t.sourceAdmissionAnchor?{sourceAdmissionAnchor:i.sourceAdmissionAnchor}:{},...i.journalGeneration?{journalGeneration:t.journalGeneration??i.journalGeneration,journalSeq:t.journalSeq??i.journalSeq}:{}}:t,!e.journalMode)return{...e,records:a};const l=ur(a,kt,e);return{...e,records:l,index:Ve(l)}}const r=e.journalMode?ur([...e.records,t],kt,e):[...e.records,t],s=Ve(r);return{...e,records:r,index:s}}function ho(e,t){if(!e.records.some(t))return e;const n=e.records.filter(r=>!t(r));return{...e,records:n,index:Ve(n)}}function Ys(e,t){const n=`tool:${t}`,r=e.index.get(n);if(r===void 0)return e;const s=e.records[r];return s.kind==="tool"&&(s.phase==="composing"||s.phase==="queued")?ho(e,i=>i.id===n):e}function Sy(e,t,n){const r=e.index.get(`tool:${t}`);if(r===void 0)return e;const s=e.records[r];if(!(s.kind==="tool"&&(s.phase==="composing"||s.phase==="queued")))return e;const i=e.records.slice();return i[r]=n,{...e,records:i,index:Ve(i)}}const ky=new Set(["frontend_state_checkpoint_v1","session_state","hub_communication","wake_schedule","prune"]);function pd(e){const t=e.trim()||"compaction did not run";return{text:`Compaction did not run${t.includes(":")?" — ":": "}${t}`,level:t.startsWith("compaction failed")?"error":"warning"}}function Ry(e,t){const n=ul(e),r=ul(t);return n===r?`Context compacted to ${r} tokens`:`Context compacted, ${n} to ${r} tokens`}const hd="Context compacted",Ey=12e4;function md(e){const t=[],n=[];for(const d of e)d.kind==="compaction"&&(d.id.startsWith("compaction:")?t.push(d):n.push(d));if(t.length===0||n.length===0)return e;const r=new Set,s=new Set,i=new Map,a=(d,u)=>{r.add(u.id),s.add(d.id),i.set(u.id,d.text)},l=[...t].sort((d,u)=>d.ts-u.ts);for(const d of l){if(d.before===void 0)continue;const u=n.find(f=>!r.has(f.id)&&f.before===d.before);u&&a(d,u)}const c=[];for(const d of l)if(!s.has(d.id))for(const u of n){if(u.before!==void 0)continue;const f=Math.abs(u.ts-d.ts);f>Ey||c.push({live:d,durable:u,distance:f})}c.sort((d,u)=>d.distance-u.distance);for(const{live:d,durable:u}of c)s.has(d.id)||r.has(u.id)||a(d,u);return s.size===0?e:e.filter(d=>!s.has(d.id)).map(d=>{const u=i.get(d.id);return u===void 0||d.kind!=="compaction"&&d.kind!=="notice"||u===d.text?d:{...d,text:u}})}function Iy(e){const t=md(e.records);return t===e.records?e:{...e,records:t,index:Ve(t)}}const xy="peer_message",Ty="ask_response",Cy="ask_timeout",gd="Completed — runtime retired/disposed",yd="Retired for an update — a turn was in flight and was cut; its earlier output is kept",Ay="wake_prompt",Oy="session_mcp_unavailable",Py=new Set(["session_mcp_recovery","session_model_switch","session_credential"]),jy=/^\[session incident(?:\s*\(([^)]*)\))?\]\s*([^:\n]{1,40}):\s*/,nl=/^<\/?[a-z][a-z0-9-]*(\s[^>]*)?>$/i,My=new Set(["this changes your instructions. apply it from now on, and drop work it makes pointless.","answer it now with the `hub` tool — a short, direct reply — then carry on with what you were doing. do not restructure your work around the question.","this is a note, not a question. no reply is needed unless it changes what you should do."]),vd=/^\[[^\]]{1,32}\]\s*/,is="Reason:",Dy=/[\n;,(]| [—–] /,Ny=/^\d+\.$/,Ly=/[A-Z]/,$y=/\s/,Kn=160;function zr(e,t,n){if(e==="audio_settle_v1")return{level:"info",headline:t,detail:null,category:"Audio settlement",provider:null};if(e==="session_incident")return{level:"error",...Hy(t,n)};let r;return e===Oy?r=Uy(t):Py.has(e)?r=By(t.trim().replace(vd,"")):r=Wy(t),{level:"info",category:null,provider:null,...r}}function Uy(e){const t=e.trim().replace(vd,"").split(`
27
- `).map(l=>l.trim()),n=t[0]??"",r=t[1]?.startsWith(is)?t[1]:null,s=t.slice(r?2:1).filter(Boolean).join(`
28
- `),i=(r?`${n} ${r}`:n).trim();if(i.length<=Kn)return{headline:i,detail:s||null};const a=r===null?null:Fy(r);if(a!==null){const l=(f,p)=>`${is} ${[f,p].filter(Boolean).join(" ")}`,c=f=>[f,s].filter(Boolean).join(`
29
- `)||null,d=`${n} ${l(a.leading,a.clause)}`;if(d.length<=Kn)return{headline:d,detail:c(a.rest)};const u=`${n} ${l("",a.clause)}`;if(u.length<=Kn)return{headline:u,detail:c([a.leading,a.rest].filter(Boolean).join(" "))}}return{headline:bd(i),detail:[r,s].filter(Boolean).join(`
30
- `)||null}}function Fy(e){const t=e.startsWith(is)?e.slice(is.length):e,n=t.indexOf("/mcp");if(n<0)return null;const r=t.slice(n),s=r.search(Dy),i=(s<0?r:r.slice(0,s)).trim();return i?{leading:t.slice(0,n).trim(),clause:i,rest:(s<0?"":r.slice(s)).trim()}:null}function By(e){const t=e.trim(),n=Gy(t);if(n<0)return{headline:t,detail:null};const r=t.slice(n).trim();return{headline:t.slice(0,n).trim(),detail:r||null}}function Gy(e){for(let t=0;t<e.length-1;t++)if(".!?…".includes(e[t])&&$y.test(e[t+1])&&!Ny.test(e.slice(0,t+1))&&Ly.test(e.slice(t+1).trimStart()[0]??""))return t+1;return-1}function Hy(e,t){const n=e.split(`
31
- `),r=n[0].match(jy),i=(typeof t.raw=="string"?t.raw.trim():"")||(r?n[0].slice(r[0].length):n[0]).trim()||e.trim(),a=n.slice(1).join(`
32
- `).trim();return{provider:(r?.[1]??"").trim()||null,category:(r?.[2]??"").trim()||null,headline:i,detail:a||null}}function _d(e){if(typeof e!="object"||e===null)return null;const t=e.hub_receipt;if(typeof t!="object"||t===null)return null;const n=t,r=n.direction;if(r!=="to_child"&&r!=="to_parent")return null;const s=n.body;if(typeof s!="string"||!s.trim())return null;const i={...n};for(const a of["expects_reply","steer"])typeof i[a]!="boolean"&&(i[a]=null);for(const a of["label","job_id"])a in i&&typeof i[a]!="string"&&delete i[a];return i}function Wy(e){const t=zy(e),n=e.split(`
33
- `).map(r=>r.trim()).filter(Boolean).join(" ");return{headline:t,detail:n===t?null:e}}function zy(e){const t=e.split(`
34
- `).map(l=>l.trim()).filter(Boolean),n=l=>!nl.test(l)&&!Zy(l),r=t.find(n),s=t.find(l=>nl.test(l)&&!l.startsWith("</"));let i=r??s??e.trim();const a=t.indexOf(i);if(a>=0&&i.endsWith(":")){const l=t.slice(a+1).find(n);l&&(i=`${i} ${l}`)}return bd(i)}function Zy(e){return My.has(e.replace(/\s+/g," ").trim().toLowerCase())}function bd(e){const t=e.trim();if(t.length<=Kn)return t;const n=t.slice(0,Kn),r=n.lastIndexOf(" ");return`${(r>0?n.slice(0,r):n).trimEnd()}…`}const Vy="harness_injected",wd=e=>!e||typeof e!="object"?!1:e[Vy]===!0;function Sd(e){return e!=null&&(Array.isArray(e.asks)||e.asks_open!=null)}function kd(e){if(!e||typeof e!="object")return!1;const t=e.ask_gate;return!t||typeof t!="object"?!1:!!t.hidden}const Ky="ask";function rl(e,t){return t===!0&&String(e??"")===Ky}function Rd(e,t){const n=e.payload??{},r=Math.round((e.ts??0)*1e3);if(e.type==="compaction"){const a=t?.kind==="compaction"?t.text:hd,l=n.tokens_before;return{kind:"compaction",id:e.id,ts:r,text:a,...typeof l=="number"?{before:l}:{}}}if(e.type==="message"&&n.custom_type==="compaction_refused"){const a=n.details??{},l=pd(String(a.detail??""));return{kind:"notice",id:e.id,ts:r,text:l.text,level:l.level}}if(e.type==="custom"&&n.custom_type==="completion_attention"){const a=n.details??{};if(typeof a.anchor=="string"){if(a.kind==="closed")return{kind:"notice",id:a.anchor,ts:r,complete:!0,text:gd,level:"info"};if(a.kind==="retired")return{kind:"notice",id:a.anchor,ts:r,complete:!0,text:yd,level:"warning"};if(a.kind==="error"||a.kind==="interrupted")return{kind:"notice",id:a.anchor,ts:r,complete:!0,text:a.kind==="error"?"Stopped with an error":"Interrupted",level:a.kind==="error"?"error":"warning"}}}if(e.type==="custom"&&n.custom_type===Ei){const a=n.details??{};return Xa(r,a,t)}if(e.type!=="message")return null;if(String(n.kind??"message")==="custom"){const a=String(n.custom_type??"");if(ky.has(a))return null;const l=n.details??{};if(a==="hub_message"){const u=Si(l);if(!u.body.trim())return null;const f=t?.kind==="custom"?t.receipt:void 0;return f&&Zs(f.sender,u.sender)&&(u.sender=f.sender),{kind:"custom",id:e.id,ts:r,customType:a,text:u.envelope,attribution:"user",...zr(a,u.envelope||u.body,l),receipt:f&&Object.keys(u).every(p=>f[p]===u[p])?f:u,images:Zt(n.content?n:l,e.id,t?.kind==="custom"?t.images:void 0)}}if(a===xy){const{body:u,sender:f}=Bc(l);return{kind:"peer",id:e.id,ts:r,body:u,sender:t?.kind==="peer"&&Zs(t.sender,f)?t.sender:f}}if(a===Ay){if(Km(l)||Ym(l))return null;const u=String(l.text??"");return u.trim()?{kind:"wake",id:e.id,ts:r,text:u}:null}if(a===Ty){const u=l.answers,f={};if(u&&typeof u=="object")for(const[g,m]of Object.entries(u))f[String(g)]=Array.isArray(m)?m.map(y=>String(y)):[];const p=l.questions,h=Array.isArray(p)?p.flatMap(g=>{if(!g||typeof g!="object")return[];const m=g;return[{id:String(m.id??""),question:String(m.question??""),secret:m.secret===!0}]}):[];return{kind:"ask_response",id:e.id,ts:r,askId:String(l.ask_id??""),status:String(l.status??"answered"),questions:h,answers:f,secretLost:l.secret_lost===!0}}if(a===Cy){const u=Number(l.waited_s);return{kind:"ask_timeout",id:e.id,ts:r,askId:String(l.ask_id??""),waitedS:Number.isFinite(u)&&u>0?u:0,urgent:l.urgent===!0}}if(a===Ei)return Xa(r,l,t);const d=(a==="audio_settle_v1"&&l.terminal===!0?Ng(l):null)??String(l.text??l.detail??"");return d.trim()?{kind:"custom",id:e.id,ts:r,customType:a,text:d,attribution:n.attribution??"system",...zr(a,d,l)}:null}const i=String(n.role??"");if(i==="user"){const a=_d(n.provider_payload);if(a){const d=Si({...a,text:ft(n)});if(d.body.trim()){const u=t?.kind==="custom"?t.receipt:void 0;u&&Zs(u.sender,d.sender)&&(d.sender=u.sender);const f=t?.kind==="custom"||t?.kind==="user"?t.images:void 0;return{kind:"custom",id:e.id,ts:r,customType:"hub_message",text:d.envelope,attribution:"user",...zr("hub_message",d.envelope||d.body,{...a,text:ft(n)}),receipt:u&&Object.keys(d).every(p=>u[p]===d[p])?u:d,images:Zt(n,e.id,f)}}}if(wd(n.provider_payload))return null;const l=ft(n);if(Jc(l))return null;if(l.startsWith("Harness recovery notice:"))return{kind:"notice",id:e.id,ts:r,text:l,level:"warning"};const c=gs(l);return{kind:"user",id:e.id,ts:r,text:l,images:Zt(n,e.id,t?.kind==="user"?t.images:void 0),...c?{skill:c}:{}}}if(i==="assistant"){const a=Array.isArray(n.tool_calls)?n.tool_calls:[],l=ft(n);return!l&&a.length>0?{kind:"assistant",id:e.id,ts:r,text:"",streaming:!1,stopReason:String(n.stop_reason??"toolUse"),callsTools:!0,error:!1}:{kind:"assistant",id:e.id,ts:r,text:l,complete:!0,streaming:!1,callsTools:a.length>0,stopReason:n.stop_reason??null,error:!!n.is_error}}if(i==="tool"){const a=String(n.tool_call_id??e.id),l=n.provider_payload??{},c=l.details??{};if(kd(c))return null;const d=ld(c.__fault);return{kind:"tool",id:`tool:${a}`,ts:r,toolCallId:a,toolName:String(n.tool_name??""),intent:null,args:null,phase:"done",argumentBytes:0,notRunReason:null,notRunKind:null,neverSent:!1,output:ft(n)||null,isError:d?!1:!!n.is_error,durationS:typeof l.duration_s=="number"?l.duration_s:null,startedAt:null,endedAt:null,images:Zt(n,`tool:${a}`,t?.kind==="tool"?t.images:void 0),...Qc(l.details,t?.kind==="tool"?t:null),diff:Yc(Kc(l.details),t?.kind==="tool"?t.diff:null),stopped:d,delivery:Gc(l.details,t?.kind==="tool"?t.delivery:null),details:ki(l.details,t?.kind==="tool"?t.details??null:null)}}return null}function Yy(e,t){if(!e.cursor_missing||e.entries.length===0)return null;const n=e.entries[0]?.id;return typeof n!="string"||n===t?null:n}const Qy=/^(?:tool|compaction|local):/;function Jy(e){for(const t of e.records){switch(t.kind){case"user":case"assistant":case"custom":case"peer":case"wake":case"compaction":case"ask_response":case"ask_timeout":break;default:continue}if(!(t.kind==="user"&&t.local)&&!Qy.test(t.id))return t.id}return null}function Xy(e,t){const n=Ug(t);if(n)return e.records[e.index.get(n)??-1]}function mo(e){const t=Cc(e,e.records);if(t===e.records)return e;const n=t.map(Xc);return{...e,records:n,index:Ve(n)}}const fr=e=>typeof e=="number"&&Number.isSafeInteger(e)&&e>=0;function Ed(e,t,n,r){const s={...e,sourceEntryId:t,journalSeq:r,journalGeneration:n};if(e.kind==="user"&&(e.provisional===!0||e.local===!0)){const{provisional:i,local:a,...l}=s;return l}return s}function qy(e){const t=new Set,n=new Set;for(const r of e.records){const s=r.sourceEntryId??(r.kind==="tool"||r.kind==="supplement"?null:r.id);typeof s!="string"||s.length<1||s.length>128||(t.add(s),r.journalGeneration===e.journalGeneration&&fr(r.journalSeq)&&n.add(s))}return{carried:t,admitted:n}}function go(e){if(e.journalSeq===void 0&&e.journalGeneration===void 0)return e;const{journalSeq:t,journalGeneration:n,...r}=e;return r}function sl(e,t){const n=new Set;for(const a of t)typeof a=="string"&&a.length>0&&a.length<=128&&n.add(a);if(n.size===0)return e;let r=!1;const s=e.records.map(a=>{const l=a.sourceEntryId??(a.kind==="tool"||a.kind==="supplement"?null:a.id);if(l===null||!n.has(l))return a;const c=go(a);return c!==a&&(r=!0),c});let i=r?{...e,records:s}:e;return i=Id(i,n),i}function Id(e,t){if(e.journalPeerSource!==!0)return e;const{carried:n,admitted:r}=qy(e),s=e.orderRevision??0,i=e.journalBodyOwed;let a=null;const l=e.journalSourceVoid;let c=null;for(const d of t)typeof d!="string"||d.length<1||d.length>128||!n.has(d)||r.has(d)||(a||(a=new Map(i??[])),a.set(d,s),l?.has(d)&&(c||(c=new Set(l)),c.delete(d)));return a?{...e,journalBodyOwed:a,...c?{journalSourceVoid:c}:{}}:e}function os(e,t,n){const r=n&&e.journalSourceUnavailable===!0?{...e,journalSourceUnavailable:void 0}:e;if(t.length===0)return r;const s=r.journalBodyOwed;let i=null;const a=r.journalSourceVoid;let l=null;for(const c of t)s?.has(c)&&(i||(i=new Map(s)),i.delete(c)),a?.has(c)&&(l||(l=new Set(a)),l.delete(c));return!i&&!l?r:{...r,...i?{journalBodyOwed:i}:{},...l?{journalSourceVoid:l}:{}}}function br(e,t){return e.journalPeerSource===!0===t?e:{...e,journalPeerSource:t}}function xd(e,t){return t.journal_order_state!=="ready"||e.journalSourceUnavailable!==!0?e:{...e,journalSourceUnavailable:void 0}}function ev(e,t,n){let r=Rn(e,t,t.entries.map(i=>({id:i.id,journal_seq:i.journal_seq,role:i.payload?.role,tool_call_id:i.payload?.tool_call_id})),!0,n);for(const i of t.entries)r=ro(r,{...i.payload,id:i.id});const s=br(r,!1);return mo(s.journalPeerSource===void 0&&!s.journalBodyOwed&&!s.journalSourceVoid&&s.journalSourceUnavailable===void 0?s:{...s,journalBodyOwed:void 0,journalSourceVoid:void 0,journalSourceUnavailable:void 0})}function il(e,t,n){let r=Rn(e,t,(t.entries??[]).map(i=>({id:i.id,journal_seq:i.journal_seq,role:i.payload?.role,tool_call_id:i.payload?.tool_call_id})),n.authoritative,n.orderRead,{peer:!0});if(r=br(r,!0),t.journal_order_state==="ready"&&typeof t.journal_generation=="string"&&t.journal_generation===r.journalGeneration){const i=[...Object.keys(t.journal_ordinals??{}),...(t.entries??[]).map(l=>l.id)];i.length>0&&(r=Id(r,i));const a=(t.journal_missing_ids??[]).filter(l=>typeof l=="string"&&l.length>0&&l.length<=128);if(a.length>0){r=os(r,a,!1);const l=new Set(r.journalSourceVoid??[]);for(const c of a)l.add(c);r={...r,journalSourceVoid:l}}}return r=xd(r,t),mo(r)}function tv(e,t,n,r){let s=Rn(e,t,[],!1,n,{peer:!0});s=br(s,!0);const i=s.journalBodyOwed,a=h=>r!==void 0&&(i?.get(h)??Number.NEGATIVE_INFINITY)>r,l=t.journal_order_state==="ready"&&typeof t.journal_generation=="string"&&t.journal_generation===s.journalGeneration,c=l?[...t.entries??[],...t.dependency_entries??[]]:[],d=[];let u=s.records,f=s.index;if(c.length>0){const h=new Map;for(const g of c){if(typeof g.id!="string"||g.id===""||a(g.id))continue;const m=`tool:${String(g.payload?.tool_call_id??"")}`,y=f.get(g.id)??f.get(m),_=y===void 0?void 0:u[y];if(!_)continue;let v=Rd(g,_);v&&(v={...v,sourceEntryId:g.id},fr(g.journal_seq)?(v=Ed(v,g.id,t.journal_generation,g.journal_seq),d.push(g.id)):v=go(v),h.set(_.id,v))}h.size>0&&(u=u.map(g=>h.get(g.id)??g),f=Ve(u))}let p=u===s.records?s:{...s,records:u,index:f};if(l){p=os(p,d,!1);const h=(t.source_missing_ids??[]).filter(g=>typeof g=="string"&&g.length>0&&g.length<=128&&!a(g));if(h.length>0){p=os(p,h,!1);const g=new Set(p.journalSourceVoid??[]);for(const m of h)g.add(m);p={...p,journalSourceVoid:g}}}return p=xd(p,t),mo(p)}function Ur(e,t=!0){return e.journalSourceUnavailable===!0===t?e:{...e,journalSourceUnavailable:t}}function Yn(e,t,n={}){let r=e;const s=r,i=[],a=x=>br(os(x,i,n.peerSource===!0&&t.journal_order_state==="ready"),n.peerSource===!0);if(r=Rn(r,t,t.entries.map(x=>({id:x.id,journal_seq:x.journal_seq,role:x.payload?.role,tool_call_id:x.payload?.tool_call_id})),n.authoritative===!0,n.orderRead,{peer:n.peerSource===!0}),t.journal_generation&&t.journal_generation!==r.journalGeneration)return a(r);const l=n.peerSource===!0&&typeof t.journal_generation=="string"&&t.journal_generation.length>0&&t.journal_generation===r.journalGeneration;for(const x of t.entries)r=ro(r,{...x.payload,id:x.id});const c=n.keepPaging===!0&&r.viewEpoch>0,d=[];for(const x of t.entries){if(c&&!_v(x,r.clearedAt))continue;const O=r.records[r.index.get(x.id)??-1]??r.records[r.index.get(`tool:${String(x.payload?.tool_call_id??"")}`)??-1]??Xy(r,x);let oe=Rd(x,O);oe&&r.journalMode&&(oe={...oe,sourceEntryId:x.id}),oe&&l&&fr(x.journal_seq)?(oe=Ed(oe,x.id,t.journal_generation,x.journal_seq),i.push(x.id)):oe&&n.peerSource===!0&&(oe=go(oe)),oe&&d.push(oe)}let u=r.argsByCall,f=!1;for(const x of t.entries){const O=x.payload?.tool_calls;if(!Array.isArray(O))continue;const oe=Math.round((x.ts??0)*1e3);for(const je of O)!je||typeof je.id!="string"||u.has(je.id)||(f||(u=new Map(u),f=!0),u.set(je.id,{...je,anchoredAt:oe,anchorId:x.id}))}for(let x=0;x<d.length;x++){const O=d[x];if(O.kind!=="tool")continue;const oe=u.get(O.toolCallId);if(!oe)continue;const je=oe.arguments??null;d[x]={...O,args:je,intent:typeof je?.i=="string"?je.i:null}}const p=f?r.records.map(x=>{if(x.kind!=="tool"||x.args)return x;const oe=u.get(x.toolCallId)?.arguments??null;return oe?{...x,args:oe,intent:x.intent??(typeof oe.i=="string"?oe.i:null)}:x}):r.records,h=new Set(t.entries.map(x=>x.id)),g=n.peerSource===!0&&n.replace===!0?r.records.filter(x=>x.kind==="user"&&(x.provisional===!0||x.local===!0)&&!h.has(x.id)):[],m=n.replace?g.length>0?{...st,records:g,index:Ve(g)}:st:{...r,records:p},y=new Map(m.records.map(x=>[x.id,x]));let _=r!==s||n.replace||!n.replace&&p!==r.records;for(const x of d){const O=y.get(x.id);if(!O){_=!0,y.set(x.id,x);continue}if(O.kind==="tool"&&x.kind==="tool"){const oe={...x,args:x.args??O.args,intent:x.intent??O.intent,images:ud(x.images,O.images,"current")};Ii(O,oe)||(_=!0,y.set(x.id,oe));continue}Ii(O,x)||(_=!0,y.set(x.id,x))}const v=r.compacting&&t.entries.some(x=>r.index.has(x.id)||Math.round((x.ts??0)*1e3)<r.compactingSince?!1:x.type==="compaction"||x.type==="message"&&x.payload?.custom_type==="compaction_refused"),I=t.entries[0],C=I?Math.round((I.ts??0)*1e3):0,J=r.journalMode?kt:_y(m.records,C,n.statedByOwner!==!1);let j=m.oldestId,A=m.oldestTs,S=r.hasMore;n.keepPaging||(n.replace||r.oldestId===null?(I&&(j=I.id,A=C),S=t.has_more):n.pagedBefore!==void 0?I?(j=I.id,A=C,S=t.has_more):S=!1:I&&(r.journalMode?(r.journalPositions?.get(I.id)?.seq??Number.POSITIVE_INFINITY)<(r.journalPositions?.get(r.oldestId??"")?.seq??-1):C>0&&C<r.oldestTs)&&(j=I.id,A=C,S=t.has_more));const U=j!==r.oldestId||A!==r.oldestTs;if(!_&&!U&&r.hasMore===S&&!v&&J.size===0)return a(r);const Z=J.size===0?[...y.values()]:[...y.values()].map(x=>J.has(x.id)?by(x):x),re=md(ur(Z,n.statedByOwner===!1?kt:new Set(d.map(x=>x.id)),r));return n.keepPaging?a({...r,records:re,index:Ve(re),argsByCall:u}):a({...r,records:re,index:Ve(re),oldestId:j,oldestTs:A,hasMore:S,argsByCall:u,compacting:v?!1:r.compacting,compactingSince:v?0:r.compactingSince})}const nv=/^(?:local|notice|retry|subagent|compaction):/;function yo(e){switch(e.kind){case"user":return!e.local&&!e.provisional;case"assistant":return!e.streaming;case"tool":return e.phase==="done";default:return!nv.test(e.id)}}function rv(e,t,n=kt){if(e.journalMode||t.ts<=0)return e;const r=e.records.filter(s=>!(s.ts<t.ts&&yo(s)&&!n.has(s.id)));return r.length===e.records.length?e:{...e,records:r,index:Ve(r),oldestId:t.id,oldestTs:t.ts,hasMore:!0}}const vt={settledAssistantUpdate:0,seededDeltaWithheld:0,staleUpdateFrameDropped:0,idlessFrameRefused:0};function Qs(e){const t=e?.id;return typeof t=="string"&&t!==""?t:null}function xi(e,t,n=Date.now(),r={}){let s=e;const i=t.message;if(t.type==="journal_order_ready"){const c=typeof t.journal_generation=="string"?t.journal_generation:void 0;if(s={...s,orderNeedsReconcile:!0,orderWantedGeneration:t.reconcile===!0?void 0:c,orderDemand:t.reconcile===!0?{}:{generation:c}},t.reconcile===!0)return s;const d=Rn(s,{journal_generation:typeof t.journal_generation=="string"?t.journal_generation:void 0},Array.isArray(t.rows)?t.rows:[],!1),u=ur(d.records,kt,d);return d===s&&u===s.records?s:{...d,records:u,index:Ve(u)}}i&&(s=ro(s,i));const a=r.frame,l=r.queuedAskEngine;switch(t.type){case"agent_start":{const c=Number(t.generation??s.generation+1);return c===s.generation?s:{...s,generation:c,compacting:!1,compactingSince:0}}case"compaction_start":return s.compacting?s:{...s,compacting:!0,compactingSince:n};case"agent_end":{if(Number(t.generation??s.generation)<s.generation)return s;let d=s;for(const u of s.records)if(u.kind==="assistant"&&u.streaming&&(d=ge(d,{...u,streaming:!1,settledAt:n,callsTools:!1,stopReason:t.aborted?"aborted":u.stopReason})),u.kind==="tool"&&u.phase!=="done"){const f=u.phase==="composing"||u.phase==="queued";d=ge(d,{...u,phase:"done",startedAt:null,stopped:!!t.aborted||f,neverSent:u.neverSent||f})}return d}case"message_start":{const c=Qs(i);if(i===void 0||c===null)return vt.idlessFrameRefused+=1,s;const d=s.records[s.index.get(c)??-1];if(i.role==="user"){const u=_d(i.provider_payload);if(u){const g=ft(i),m=Si({...u,text:g});if(m.body.trim()){const y=d?.kind==="user"&&d.provisional===!0;return ge(s,{kind:"custom",id:c,ts:y?as(s,n):n,customType:"hub_message",text:m.envelope,attribution:"user",...zr("hub_message",m.envelope||m.body,{...u}),receipt:m,images:Zt(i,c,d?.kind==="custom"||d?.kind==="user"?d.images:void 0)})}}if(wd(i.provider_payload))return s;const f=ft(i);if(Jc(f))return s;const p=d?.kind==="user"&&d.provisional===!0,h=gs(f);return ge(s,{kind:"user",id:c,ts:p?as(s,n):n,text:f,images:Zt(i,c,d?.kind==="user"?d.images:void 0),...p?{provisional:!0}:{},...h?{skill:h}:{}})}return i.role!=="assistant"||d?s:ge(s,{kind:"assistant",id:c,ts:n,text:"",streaming:!0,...a?{frame:a}:{},stopReason:null,error:!1})}case"message_update":{const c=Qs(i);if(i===void 0||c===null)return vt.idlessFrameRefused+=1,s;const d=s.index.get(c),u=String(t.delta??""),f=ft(i);if(d===void 0)return!f&&!u?s:ge(s,{kind:"assistant",id:c,ts:n,text:f?f+u:u,streaming:!0,truncated:f===""?"prefix":void 0,...a?{frame:a}:{},stopReason:null,error:!1});const p=s.records[d];if(p.kind!=="assistant")return s;if(!p.streaming)return vt.settledAssistantUpdate+=1,s;if(r.seed!==!0&&a&&p.frame&&a.epoch===p.frame.epoch&&a.seq<=p.frame.seq)return vt.staleUpdateFrameDropped+=1,s;const h=vy(p.frame,a);if(r.seed===!0&&!f)return!p.text&&!u?s:(vt.seededDeltaWithheld+=p.text?1:0,ge(s,{...p,text:p.text||u,...h?{frame:h}:{},truncated:p.text?"interrupted":"prefix"}));let g;if(f){if(g=f+u,g.length<=p.text.length)return s}else{if(!u)return s;g=p.text+u}return ge(s,{...p,text:g,...h?{frame:h}:{},truncated:f?void 0:p.truncated})}case"message_end":{const c=Qs(i);if(i===void 0)return vt.idlessFrameRefused+=1,s;if(c===null){if(i.role!=="assistant")return vt.idlessFrameRefused+=1,s;let g;for(const _ of s.records)if(!(_.kind!=="assistant"||!_.streaming)){if(g!==void 0)return vt.idlessFrameRefused+=1,s;g=_}if(g===void 0)return vt.idlessFrameRefused+=1,s;const m=Array.isArray(i.tool_calls)?i.tool_calls:[],y={...g,streaming:!1,settledAt:g.settledAt??n,callsTools:m.length>0,...g.text||m.length===0?{complete:!0}:{}};return ge(s,y)}if(i.role!=="assistant")return s;const d=s.index.get(c),u=ft(i),f=d===void 0?void 0:s.records[d],p=Array.isArray(i.tool_calls)?i.tool_calls:[],h={kind:"assistant",id:c,ts:d===void 0?n:s.records[d].ts,text:u,...u||p.length===0?{complete:!0}:{},streaming:!1,callsTools:p.length>0,settledAt:f?.kind==="assistant"&&f.settledAt!==void 0?f.settledAt:n,stopReason:i.stop_reason??null,error:!!i.is_error};return ge(s,h)}case"history_delta":{const d=(Array.isArray(t.messages)?t.messages:[]).filter(I=>String(I.id??"")!==""),u=typeof t.journal_generation=="string"&&t.journal_generation.length>0?t.journal_generation:void 0,f=t.journal_ordinals&&typeof t.journal_ordinals=="object"&&!Array.isArray(t.journal_ordinals)?t.journal_ordinals:void 0,p=t.entry_times&&typeof t.entry_times=="object"&&!Array.isArray(t.entry_times)?t.entry_times:void 0,h="journal_generation"in t||"journal_ordinals"in t||"entry_times"in t,g=s.journalPeerSource===!0||h,m=g&&u!==void 0&&u===s.journalGeneration,y=d.map(I=>String(I.id??"")).filter(I=>I.length>0&&I.length<=128),_={entries:d.map(I=>{const C=String(I.id??""),J=f?.[C],j=p?.[C];return{id:C,ts:m&&typeof j=="number"&&Number.isFinite(j)?j:n/1e3,type:"message",payload:{kind:I.custom_type?"custom":"message",...I},...m&&fr(J)?{journal_seq:J}:{}}}),has_more:s.hasMore,...m?{journal_generation:u}:{}};let v=Yn(s,_,{replace:t.reset===!0,statedByOwner:t.reset===!0,peerSource:g});if(g&&y.length>0)if(m){const I=y.filter(C=>!fr(f?.[C]));I.length>0&&(v=sl(v,I))}else v=sl(v,y),u!==void 0&&(v=Rn(v,{journal_generation:u,journal_order_state:"ready"},[],!1,void 0,{peer:!0}),v=br(v,!0));return v}case"tool_call_compose":{const c=String(t.tool_call_id??"");if(!c)return s;const d=String(t.supersedes_tool_call_id??""),u=`tool:${c}`,f=s.records[s.index.get(u)??-1],p=d?s.records[s.index.get(`tool:${d}`)??-1]:void 0,h=f?.kind==="tool"?f:p?.kind==="tool"?p:void 0;if(h&&h.phase!=="composing"&&h.phase!=="queued")return d&&f?.kind==="tool"?Ys(s,d):s;const m=String(t.not_run_reason??"").trim()||null,y=String(t.not_run_kind??"").trim()||null;if(rl(t.tool_name,l)&&!m&&!h)return d?Ys(s,d):s;const _=Number(t.argument_bytes??0),v={kind:"tool",id:u,ts:h?.ts??n,toolCallId:c,toolName:String(t.tool_name??""),intent:t.intent??null,args:null,phase:m?"done":t.dictation_complete===!0?"queued":"composing",argumentBytes:_>0?_:h?.argumentBytes??0,output:null,isError:!1,durationS:null,startedAt:null,endedAt:null,images:Vn,added:0,removed:0,diff:null,stopped:!1,notRunReason:m,notRunKind:m?y:null,neverSent:m!==null};return d&&p?.kind==="tool"&&f?.kind!=="tool"?Sy(s,d,v):ge(d&&f?.kind==="tool"?Ys(s,d):s,v)}case"tool_execution_start":{const c=String(t.tool_call_id??"");if(!c)return s;const d=`tool:${c}`,u=s.records[s.index.get(d)??-1];if(u&&u.kind==="tool"&&u.phase==="done"&&!u.notRunReason)return s;const f=el(s,c,t,u),p=f&&!s.argsByCall.has(c)?new Map(s.argsByCall).set(c,{arguments:f,anchoredAt:vn(t)??n}):s.argsByCall,h=p===s.argsByCall?s:{...s,argsByCall:p};return rl(t.tool_name,l)&&!u?h:ge(h,{kind:"tool",id:d,ts:u?.ts??n,toolCallId:c,toolName:String(t.tool_name??""),intent:t.intent??(typeof f?.i=="string"?f.i:null),args:f,phase:"running",notRunReason:null,notRunKind:null,neverSent:!1,argumentBytes:0,output:null,isError:!1,durationS:null,startedAt:vn(t)??(u?.kind==="tool"&&u.startedAt!==null?u.startedAt:n),endedAt:null,images:u?.kind==="tool"?u.images:Vn,added:0,removed:0,diff:u?.kind==="tool"?u.diff:null,details:u?.kind==="tool"?u.details??null:null,stopped:!1})}case"tool_execution_update":{const c=String(t.tool_call_id??"");if(!c)return s;const d=`tool:${c}`,u=s.records[s.index.get(d)??-1];if(!u||u.kind!=="tool")return s;const f=t.partial_result??{},p=ki(f.details,u.details);return p===(u.details??null)?s:ge(s,{...u,details:p})}case"tool_execution_end":{const c=String(t.tool_call_id??"");if(!c)return s;const d=`tool:${c}`,u=s.records[s.index.get(d)??-1],f=t.result??{};if(kd(f.details))return Ad(s,d);const p=el(s,c,t,u),h=u&&u.kind==="tool"?u:{kind:"tool",id:d,ts:n,toolCallId:c,toolName:String(t.tool_name??""),intent:null,args:null,phase:"done",argumentBytes:0,notRunReason:null,notRunKind:null,neverSent:!1,output:null,isError:!1,durationS:null,startedAt:null,endedAt:null,images:Vn,added:0,removed:0,diff:null,stopped:!1},g=p&&!s.argsByCall.has(c)?new Map(s.argsByCall).set(c,{arguments:p,anchoredAt:vn(t)??n}):s.argsByCall,m=g===s.argsByCall?s:{...s,argsByCall:g},y=r.userStoppedAt??null,_=!!(t.is_error??f.is_error),v=ld(f.details?.__fault),I=y!==null&&(typeof h.startedAt=="number"?h.startedAt<=y:_);return ge(m,{...h,args:p,phase:"done",notRunReason:null,notRunKind:null,neverSent:!1,output:ft(f)||null,isError:I||v?!1:_,durationS:typeof t.duration_s=="number"?t.duration_s:null,endedAt:typeof t.duration_s=="number"&&typeof h.startedAt=="number"?h.startedAt+t.duration_s*1e3:null,startedAt:null,images:yy(Zt(f,d,h.images),h.images),...Qc(f.details,h),diff:Yc(Kc(f.details),h.diff),stopped:h.stopped||I||v,delivery:Gc(f.details,h.delivery),details:ki(f.details,h.details)})}case"supplement_progress":{const c=uy(t);if(!c)return s;const d=co(c.anchor),u=s.records[s.index.get(d)??-1],f=u&&u.kind==="supplement"?u:null,p=ad(f,c,n);return p?ge(s,p):s}case"notice":{const c=String(t.text??"");if(!c)return s;const d=`notice:${s.generation}:${c}`;return s.index.has(d)?s:ge(s,{kind:"notice",id:d,ts:n,text:c,level:t.kind??"info"})}case"compaction_end":{const c=Number(t.tokens_before??0),d=Number(t.tokens_after??0),f=!!t.success?null:pd(String(t.detail??"")),p=f?f.text:c&&d?Ry(c,d):hd,h=`compaction:${s.generation}:${c}:${d}`,g=s.compacting?{...s,compacting:!1,compactingSince:0}:s;return g.index.has(h)?g:f?ge(g,{kind:"notice",id:h,ts:n,text:p,level:f.level}):Iy(ge(g,{kind:"compaction",id:h,ts:n,text:p,before:c}))}case"retry_start":{const c=`Retrying after an error (attempt ${String(t.attempt??"?")})${t.fallback_model?`, falling back to ${String(t.fallback_model)}`:""}`,d=`retry:${s.generation}:${String(t.attempt??"")}`;return s.index.has(d)?s:ge(s,{kind:"notice",id:d,ts:n,text:c,level:"warning"})}case"subagent_end":{const c=`subagent:${String(t.job_id??"")}`,d=String(t.status??""),u=`${String(t.label??"Subagent")} ${d||"finished"}`,f=s.records[s.index.get(c)??-1];return f&&f.kind==="notice"&&f.text===u?s:ge(s,{kind:"notice",id:c,ts:f?.ts??n,text:u,level:d==="failed"?"error":"info"})}default:return s}}function vn(e){return Lh(e.started_at_epoch)}function vo(e){if(!e.type.startsWith("tool_"))return null;const t=String(e.tool_call_id??"");return t||null}function sv(e){const t=vo(e);if(t)return`tool:${t}`;const n=e.message;return typeof n?.id=="string"&&n.id?n.id:null}function iv(e,t){const n=vn(e);if(n!==null)return n;const r=vo(e);if(!r)return null;const s=t.argsByCall.get(r)?.anchoredAt;return typeof s=="number"&&Number.isFinite(s)&&s>0?s:null}function ov(e,t){if(vn(e)!==null)return!1;const n=vo(e);if(!n)return!1;const r=t.argsByCall.get(n)?.anchorId;if(typeof r!="string")return!1;const s=t.index.get(r);return s!==void 0&&s<=fd(t.records)}function _o(e){return e.type!=="tool_call_compose"?!1:typeof e.not_run_reason=="string"&&e.not_run_reason.trim().length>0?!0:e.dictation_complete===!0}function ys(e){return e.type==="tool_execution_end"}function av(e,t,n=Date.now(),r=null){let s=e;t.streaming&&t.generation>s.generation&&(s={...s,generation:t.generation}),s.compacting&&(s={...s,compacting:!1,compactingSince:0});const i=t.streaming===!0,a=Sd(t);let l=!1;const c=new Set;for(const u of t.live_events??[]){const f=u;let p=n;const h=sv(f);if(h!==null&&!s.index.has(h)){const g=iv(f,s);if(g!==null)p=g,l=!0,ov(f,s)&&c.add(h);else if(ys(f)||_o(f)||!i)continue}s=xi(s,f,p,{seed:!0,queuedAskEngine:a,...r?{frame:r}:{}})}if(!l)return s;const d=ur(s.records,c,s);return{...s,records:d,index:Ve(d)}}function ol(e){const t=new Map;for(const n of e??[]){if(!n)continue;const r=n;if(!ys(r)&&!_o(r))continue;const s=String(r.tool_call_id??"");if(!s)continue;const i=vn(r);i!==null&&t.set(s,i)}return t}function lv(e){const t=new Set;for(const n of e??[]){if(!n)continue;const r=n;if(r.type!=="tool_call_compose")continue;const s=r.not_run_reason;if(typeof s=="string"&&s.trim().length>0)continue;const i=String(r.tool_call_id??"");i&&t.add(i)}return t}const cv=5e3;function dv(e,t){const n=new Set(t),r=new Map;if(n.size===0)return r;for(const s of e){if(s.payload?.role!=="tool")continue;const i=s.payload.tool_call_id;if(typeof i!="string"||!n.has(i))continue;const a=s.ts;typeof a!="number"||!Number.isFinite(a)||r.set(i,Math.round(a*1e3))}return r}function uv(e,t,n,r=new Map,s=new Set){const i=e[0]?.ts;if(typeof i!="number"||!Number.isFinite(i))return!1;let a=null;for(const c of t){const d=n.get(c);if(d===void 0){if(s.has(c))continue;return!1}(a===null||d<a)&&(a=d)}for(const c of r.values())(a===null||c<a)&&(a=c);return a===null?!1:Math.round(i*1e3)<=a-cv}function al(e,t){const n=[];for(const r of e??[]){if(!r)continue;const s=r;if(!ys(s)&&!_o(s))continue;const i=String(s.tool_call_id??"");!i||n.includes(i)||t.has(i)||n.push(i)}return n}function ll(e,t,n,r){const s=[],i=new Set;for(const a of t)i.has(a)||(i.add(a),!n.has(a)&&((e.get(a)??0)>=r||s.push(a)));return s}const fv=3.25,Ti=100,bo=500;function cl(e){return e<=0?Ti:Math.min(bo,Ti+Math.ceil(fv*e))}function Js(e,t){const n=[];if(t.size===0)return n;for(const r of e){const s=r.payload?.tool_calls;if(Array.isArray(s))for(const i of s)i&&typeof i.id=="string"&&t.has(i.id)&&n.push(i.id)}return n}function pv(e){for(const t of e)if(t.payload?.role==="user")return!0;return!1}function hv(e,t){const n=new Set(t);for(const i of e){const a=i.payload?.tool_calls;if(Array.isArray(a))for(const l of a)l&&typeof l.id=="string"&&n.add(l.id)}const r=[],s=new Set;for(const i of e){if(i.payload?.role!=="tool")continue;const a=i.payload.tool_call_id;typeof a!="string"||n.has(a)||s.has(a)||(s.add(a),r.push(a))}return r}function mv(e,t){return e&&t===0}function gv(e){const t=new Set;for(const n of e??[]){if(!n)continue;const r=n,s=r.not_run_reason,i=r.type==="tool_call_compose"&&typeof s=="string"&&s.trim().length>0;if(r.type!=="tool_execution_start"&&!ys(r)&&!i)continue;const a=String(r.tool_call_id??"");a&&t.add(a)}return t}function Td(e,t,n){const r=new Set(e),s=[];for(const i of t)!r.has(i)&&!n.has(i)&&s.push(i);for(const i of e){if(n.has(i))return s;t.has(i)&&s.push(i)}return s}function yv(e,t,n){return Td(e,t,n).length}function dl(e){let t=e.compacting?{...e,compacting:!1,compactingSince:0}:e;for(const n of e.records)n.kind!=="assistant"||!n.streaming||n.truncated||(t=ge(t,{...n,truncated:"interrupted"}));return t}function vv(e,t=Date.now()){return e.records.length===0?e:{...st,generation:e.generation,compacting:e.compacting,compactingSince:e.compactingSince,viewEpoch:e.viewEpoch+1,clearedAt:t,argsByCall:e.argsByCall}}function _v(e,t){return e.type==="compaction"||e.type==="message"&&e.payload?.custom_type==="compaction_refused"?t===void 0?!0:Math.round((e.ts??0)*1e3)>=t:!1}function ul(e){return e<1e3?String(e):e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function bv(e){const t=e.compacting?{...e,compacting:!1,compactingSince:0}:e;return ho(t,n=>n.kind==="assistant"&&n.streaming||n.kind==="tool"&&n.phase!=="done")}function as(e,t){let n=t;for(const r of e.records)r.ts>n&&(n=r.ts);return n}function Cd(e,t,n,r,s=Date.now()){if(e.index.has(t))return e;const i=gs(n);return ge(e,{kind:"user",id:t,ts:as(e,s),text:n,images:r,...i?{skill:i}:{},local:!0,provisional:!0})}function Ad(e,t){return ho(e,n=>n.id===t)}let fl=0;function wv(e,t,n,r=Date.now()){return fl+=1,ge(e,{kind:"notice",id:`local:${r}:${fl}`,ts:as(e,r),text:t,level:n})}function yR(e,t,n,r){const s=t?.anchor_id,i=t?.kind;return!s||i!=="error"&&i!=="interrupted"&&i!=="closed"&&i!=="retired"||n||e.index.has(s)||!t?.unseen&&!r?.has(s)?e:(r?.add(s),ge(e,{kind:"notice",id:s,ts:e.records.at(-1)?.ts??Date.now(),complete:!0,text:i==="closed"?gd:i==="retired"?yd:i==="error"?"Stopped with an error":"Interrupted",level:i==="closed"?"info":i==="retired"?"warning":i==="error"?"error":"warning"}))}const Sv="compacting context…";function vR(e){return typeof e=="string"&&e.trim()===Sv}const kv=[1500,5e3];async function _R(e,t=n=>new Promise(r=>setTimeout(r,n))){for(const n of kv){await t(n);try{if(await e())return}catch{}}}function Rv(e,t){return e.some(n=>Math.round((n.ts??0)*1e3)<t?!1:n.type==="compaction"||n.type==="message"&&n.payload?.custom_type==="compaction_refused")}const pl=new Set(["openrouter","radient","radient-key"]),Ev=new Set(["auto","openrouter/auto"]),Iv="Auto";function Od(e){return e.slice(e.lastIndexOf("/")+1)||e}function xv(e,t){return e===t||e===Od(t)}function Xs(e){if(!e)return null;const t=typeof e.provider=="string"?e.provider:"";if(!t)return null;const n=typeof e.model_id=="string"?e.model_id:"";return n?`${t}/${n}`:null}function bR(e){if(!e||typeof e.model_id!="string"||!e.model_id)return null;const t=typeof e.provider=="string"?e.provider:"",n=t?`${t}/${e.model_id}`:e.model_id,r=typeof e.display_name=="string"?e.display_name.trim():"",s=pl.has(t)||!r||xv(r,e.model_id)||r.toLowerCase()==="unknown";return{name:pl.has(t)&&Ev.has(e.model_id)?Iv:s?Od(n):r,selector:n}}function wR(e,t){const n=e?.effective_model??e?.selected_model??null;return{identity:t??n,effort:n}}function SR(e){return e?.supports_fast_mode!==!0?null:e.fast_mode===!0?"on":"off"}function kR(e){return Array.isArray(e?.reasoning_efforts)?e.reasoning_efforts.filter(t=>typeof t=="string"&&t!==""):[]}function RR(e){if(!e)return null;for(const t of[e.reasoning_effort,e.reasoning_default_effort])if(typeof t=="string"&&t.trim())return t.trim().toLowerCase();return null}function ER(e){const t=e?.effort_displacement,n=t?.note;if(typeof n!="string"||!n.trim())return null;const r=new Map;for(const a of[e?.effective_model,e?.selected_model]){const l=typeof a?.display_name=="string"?a.display_name.trim():"";if(!a||!l||!a.provider||!a.model_id)continue;const c=`${a.provider}/${a.model_id}`;c!==t?.serving&&c!==t?.selected||r.set(c,l)}if(!r.size)return n.trim();const s=[...r.keys()].sort((a,l)=>l.length-a.length).map(a=>a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")),i=new RegExp(`(^|[\\s(])(${s.join("|")})(?=$|[\\s;,)\\]}]|\\.(?=\\s|$))`,"g");return n.trim().replace(i,(a,l,c)=>`${l}${r.get(c)}`)}function IR(e){const t=e?.effort_displacement?.chosen;return typeof t=="string"&&t.trim()?t.trim().toLowerCase():null}function xR(e){const t=e.trim();return t&&({auto:"Auto",none:"None",minimal:"Minimal",low:"Low",medium:"Medium",high:"High",xhigh:"xHigh",max:"Max"}[t.toLowerCase()]??t)}function Pd(e){if(!e)return!1;const t=typeof e.reasoning_effort=="string"?e.reasoning_effort.trim():"",n=typeof e.reasoning_default_effort=="string"?e.reasoning_default_effort.trim():"";return typeof e.model_id=="string"&&e.model_id!==""&&!t&&!n&&!e.reasoning&&Array.isArray(e.reasoning_efforts)&&e.reasoning_efforts.length===0&&typeof e.display_name=="string"&&e.display_name.trim()===""}function TR(e,t){const n=(e??t)?.effective_model;return Pd(n)?null:n?.model_id??null}function CR(e){if(!e)return null;const t=typeof e.reasoning_effort=="string"?e.reasoning_effort.trim().toLowerCase():"",n=Array.isArray(e.reasoning_efforts)?e.reasoning_efforts.filter(i=>typeof i=="string"):null,r=typeof e.reasoning_default_effort=="string"?e.reasoning_default_effort.trim().toLowerCase():"",s=Pd(e);return t?{label:t,adjustable:n===null||n.length>0,knownLadder:!!(n&&n.length>0),levelKnown:!0,detail:n&&n.length>0?`Reasoning effort. This model offers ${n.join(", ")}.`:"Reasoning effort for this session."}:n&&n.length>0?{label:"auto",adjustable:!0,knownLadder:!0,levelKnown:!0,detail:`No level is set, so this model runs at its own default${r?` (${r})`:""}. It offers ${n.join(", ")}.`}:s?{label:"unknown",adjustable:!0,knownLadder:!1,levelKnown:!1,detail:"This session has not reported its reasoning effort yet. It appears after the next turn, or run /effort <level> to set one now."}:n&&e.reasoning?{label:"reasoning",adjustable:!1,knownLadder:!0,levelKnown:!0,detail:"This model reasons, but exposes no effort levels to choose between."}:n===null&&r?{label:r,adjustable:!1,knownLadder:!1,levelKnown:!0,detail:"The level this model runs at by default. This backend does not report which other levels it accepts."}:null}function AR(e,t){if(!e)return null;if(!t||t.length===0||e.knownLadder)return e;const n=t.map(r=>typeof r=="object"&&r!==null&&"value"in r?String(r.value):"").filter(Boolean);return n.length===0?e:{...e,adjustable:!0,detail:`Reasoning effort. This model offers ${n.join(", ")}.`}}function Tv(e,t){const n=e?.model_access;if(n&&typeof n.effective_state=="string"){const a=Ln(n.provider);if(!a)return null;const l=Ln(e?.selected_model?.provider);if(l&&l!==a)return null;const d=["local","pending","eligible_borrow_unverified","effective_borrow","expired","withdrawn","owner_unavailable","device_bound","absent"].includes(n.effective_state)?n.effective_state:"pending";return d==="local"?null:{...d==="absent"?{connectHere:t==="local"}:{},provider:a,label:Ln(n.label)||a,effectiveState:d,owner:Ln(n.owner_label)||Ln(n.owner_device)||"the owner device",observedAt:qs(n.observed_at),lastGrantAt:qs(n.last_grant_at),lastGrantExpiresAt:qs(n.last_grant_expires_at)}}if(!n||n.state!=="signed_out"&&n.state!=="temporarily_unavailable")return null;const r=typeof n.provider=="string"?n.provider:"";if(!r)return null;const s=e?.effective_model?.provider;if(s&&s!==r)return null;const i=typeof n.label=="string"&&n.label.trim()!==""?n.label:r;return n.state==="temporarily_unavailable"?{provider:r,label:i,state:n.state}:{provider:r,label:i}}function OR(e,t){if(!t)return;const n=e.find(r=>r.session_id===t)?.locality;return n==="local"||n==="remote"?n:void 0}function PR(e){return e&&e.draft!==!0?Tv(e.frontend,e.servingLocality):null}function Ln(e){return typeof e=="string"?e.trim():""}function qs(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0&&e<=864e10?e:void 0}function ei(e){return new Intl.DateTimeFormat(void 0,{dateStyle:"medium",timeStyle:"short"}).format(new Date(e*1e3))}function jR(e){const{label:t,effectiveState:n}=e,r=e.owner||"the owner device",s={local:[`${t} access available`,"This session uses its own provider access."],pending:[`Checking ${t} access`,"Access has not converged yet. The next request checks the owner automatically; no additional sign-in is needed here."],eligible_borrow_unverified:[`Checking access from ${r}`,`This session may borrow ${t} access, but it has not resolved it yet. The next request verifies ${r} automatically.`],effective_borrow:[`${t} access from ${r}`,"The runtime resolved borrowed access for this session. Every new request checks the owner again."],expired:[`Fresh ${t} access needed`,`The last borrowed grant expired, but borrowing permission is still present. The next request asks ${r} for fresh access automatically.`],withdrawn:[`${t} access needs attention`,"The owner cannot currently provide borrowed access, or borrowing permission is unavailable. Restore owner access or permission before retrying, or choose another model."],owner_unavailable:[`${r} cannot provide access`,`This session could not resolve ${t} access from ${r}. Previous access cannot be reused. Retry after owner access is restored, or choose another model.`],device_bound:[`${t} needs a device sign-in`,"This login cannot be borrowed. Sign in on the device running this session, or choose another model."],absent:[`No ${t} access`,e.connectHere===!0?"The serving device has no effective provider access for this session. Connect an account or choose another model.":"The device running this session has no effective provider access. Sign in or restore access on that device, or choose another model."]},i=e.state==="temporarily_unavailable",[a,l]=n?s[n]:[i?`${t} is temporarily unavailable`:`Not signed in to ${t}`,i?"Your saved sign-in is still present. Try again later or choose another model.":`This session runs ${t} without a working sign-in, so it cannot answer until you connect it.`],c=[];return n&&e.observedAt!==void 0&&c.push(`Last checked: ${ei(e.observedAt)}.`),n&&e.lastGrantAt!==void 0&&c.push(`Last resolved: ${ei(e.lastGrantAt)}.`),n&&e.lastGrantExpiresAt!==void 0&&c.push(`Recorded grant expiry: ${ei(e.lastGrantExpiresAt)}.`),n&&(e.lastGrantAt!==void 0||e.lastGrantExpiresAt!==void 0)&&c.push("History only; not permission to reuse access."),{title:a,description:l,history:c.join(" "),tone:n==="effective_borrow"?"neutral":"warning",canConnect:n?n==="absent"&&e.connectHere===!0:!i,canSwitchModel:n!=="effective_borrow"}}function MR(e){return e.kind==="needs-sign-in"||e.kind==="signing-in"||e.kind==="settled"&&e.canRetry}function DR(e){return e?.provider==="radient"&&e.effectiveState!==void 0&&(e.effectiveState!=="absent"||e.connectHere!==!0)}function NR(e,t){return t&&e.provider==="radient"&&(e.effectiveState===void 0||e.effectiveState==="absent"&&e.connectHere===!0)}function Cv(e,t){if(e&&!(e.settled||e.error!==null))return{...e,text:e.text+t,streaming:!0}}function Av(e,t){return!!e.streams[t]}function jd(e,t){return e.attached[t]?.turns.at(-1)}function LR(e,t){const n=jd(e,t);return n?e.streams[n.asideId]:void 0}function $R(e,t){const n=e.attached[t]?.turns??[];for(let r=n.length-1;r>=0;r-=1){const s=n[r];if(s&&e.streams[s.asideId]?.settled)return s.asideId}}function Ov(){return{text:"",streaming:!0,settled:!1,error:null}}function Pv(e){return{text:e,streaming:!1,settled:!0,error:null}}function jv(e,t){return{text:e?.text??"",streaming:!1,settled:!1,error:t}}const Mv=_r(e=>({streams:{},attached:{},attachAside:t=>e(n=>{const r=n.attached[t];return r&&r.notice===null?n:{attached:{...n.attached,[t]:r?{...r,notice:null}:{turns:[],notice:null}}}}),beginAsk:(t,n,r)=>e(s=>({streams:{...s.streams,[n]:Ov()},attached:{...s.attached,[t]:{turns:[...s.attached[t]?.turns??[],{asideId:n,question:r}],notice:null}}})),applyAsideDelta:(t,n)=>e(r=>{const s=Cv(r.streams[t],n);return s?{streams:{...r.streams,[t]:s}}:r}),settleAside:(t,n)=>e(r=>r.streams[t]?{streams:{...r.streams,[t]:Pv(n)}}:r),failAside:(t,n)=>e(r=>Av(r,t)?{streams:{...r.streams,[t]:jv(r.streams[t],n)}}:r),setAsideNotice:(t,n)=>e(r=>{const s=r.attached[t];return s?{attached:{...r.attached,[t]:{...s,notice:n}}}:r}),queueAdoption:(t,n,r)=>e(s=>{const i=s.attached[t];return i?{attached:{...s.attached,[t]:{...i,notice:null,queued:{asideId:n,messageIds:[...r]}}}}:s}),unqueueAdoption:(t,n,r)=>e(s=>{const i=s.attached[t];if(i?.queued?.asideId!==n)return s;const{queued:a,...l}=i;return{attached:{...s.attached,[t]:{...l,notice:r}}}}),detachAside:t=>e(n=>{const r=n.attached[t],s={...n.attached};if(delete s[t],!r)return{attached:s};const i={...n.streams};for(const a of r.turns)delete i[a.asideId];return{streams:i,attached:s}})}));function UR(e,t){return jd(e,t)?.asideId}const Dv=4*1024*1024,hl=1024*1024,pt=new Map;function ml(e){if(e.length===0)return 0;try{return new TextEncoder().encode(JSON.stringify(e)).length}catch{return Number.POSITIVE_INFINITY}}function Nv(e){const t=e.slice(-200),n=ml(t);if(n<=hl)return{records:t,bytes:n};let r=0,s=t.length,i=0;for(;s-r>1;){const a=Math.floor((r+s)/2),l=ml(t.slice(a));l>hl?r=a:(s=a,i=l)}return{records:t.slice(s),bytes:i}}function Lv(e,t){const{records:n,bytes:r}=Nv(bv(t.transcript).records);if(n.length===0){pt.delete(e);return}const s={...t.transcript,records:n,index:new Map(n.map((a,l)=>[a.id,l])),oldestId:null,oldestTs:0,hasMore:!1,argsByCall:new Map},i={transcript:s,savedAt:Date.now(),bytes:r,owedLabels:gl(n,t.owedLabels),markLabels:gl(n,t.markLabels),replayBorn:new Set([...t.replayBorn??[]].filter(a=>s.index.has(a)))};pt.delete(e),pt.set(e,i),Uv()}function gl(e,t){if(!t||t.size===0)return yl;const n=new Set;for(const r of e)r.kind!=="tool"||r.args||r.toolCallId&&t.has(r.toolCallId)&&n.add(r.toolCallId);return n.size>0?n:yl}const yl=new Set;function Md(e){const t=pt.get(e);if(!t)return null;const{bytes:n,...r}=t;return r}function $v(e){pt.delete(e)}function Uv(){let e=0;for(const t of pt.values())e+=t.bytes;for(;e>Dv&&pt.size>0;){const t=pt.keys().next().value;if(t===void 0)break;const n=pt.get(t);pt.delete(t),e-=n?.bytes??0}}const Fv=8,Bv=128,Dd=new Set,Gv="",bt=new Map,wo=e=>e??Gv;function FR(e){return bt.get(wo(e))??Dd}function BR(e,t,n){const r=wo(e),s=bt.get(r)??new Set,i=new Set(s);if(n)for(i.delete(t),i.add(t);i.size>Bv;){const a=i.values().next().value;if(a===void 0)break;i.delete(a)}else i.delete(t);for(bt.delete(r),i.size>0&&bt.set(r,i);bt.size>Fv;){const a=bt.keys().next().value;if(a===void 0)break;bt.delete(a)}return bt.get(r)??Dd}function Hv(e){bt.delete(wo(e))}const Wv=128,ls=4096,ti=e=>({complete:e===null,owners:new Map,keys:new Map,reason:e}),vl=e=>e.startsWith("qg:")&&e.length>3;function GR(e,t,n=null,r=[]){const s=new Map,i=new Map;for(let l=0;l<e.length;l+=1){const c=e[l];for(let d=0;d<c.segmentIds.length;d+=1){const u=c.segmentIds[d];if(s.has(u))return ti("duplicate-prior-id");if(s.size===ls)return ti("prior-id-limit");s.set(u,{ordinal:l,order:d})}c.eligible!==!1&&vl(c.key)&&t.has(c.key)&&i.size<Wv&&i.set(l,c.key)}for(const l of r)if(!s.has(l)){if(s.size===ls)return ti("prior-id-limit");s.set(l,{ordinal:-1,order:-1})}const a=n===null?void 0:s.get(n);if(a!==void 0&&a.ordinal>=0){const l=e[a.ordinal];l.eligible!==!1&&vl(l.key)&&i.set(a.ordinal,l.key)}return{complete:!0,owners:s,keys:i,reason:null}}function HR(e,t,n={}){const r=f=>({episodes:[...t],reason:f});if(!e.complete)return r(e.reason??"incomplete-prior");if(e.owners.size>ls)return r("prior-id-limit");const s=new Set,i=n.currentIdsUnique===!0?null:new Set,a=new Map,l=new Map,c=(f,p,h)=>{const g=a.get(f);g===void 0?a.set(f,{current:p,many:!1,lastOrder:h,reordered:!1,outside:!1}):(g.current!==p&&(g.many=!0),h<=g.lastOrder&&(g.reordered=!0),g.lastOrder=h)};for(let f=0;f<t.length;f+=1){const p=t[f];let h=null,g=!1;for(const y of p.segmentIds){if(i!==null){if(i.has(y))return r("duplicate-current-id");if(i.size===ls)return r("current-uniqueness-unproved");i.add(y)}const _=e.owners.get(y);if(_!==void 0){if(s.has(y))return r("duplicate-current-id");s.add(y),c(_.ordinal,f,_.order),h===null?h=_.ordinal:h!==_.ordinal&&(g=!0)}}if(p.eligible===!1||g||h===null||h<0)continue;const m=e.keys.get(h);m!==void 0&&l.set(f,{owner:h,key:m})}for(const f of n.outsideCurrentIds??[]){const p=e.owners.get(f);if(p===void 0||s.has(f))continue;const h=a.get(p.ordinal);h!==void 0&&(h.outside=!0)}for(const[f,p]of l){const h=a.get(p.owner),g=p.key.slice(3);(h===void 0||h.many||h.reordered||h.outside||!s.has(g))&&l.delete(f)}const d=new Set(e.keys.values()),u=new Set;for(let f=0;f<t.length;f+=1){const p=l.get(f)?.key??t[f].key;if(d.has(p)){if(u.has(p))return r("key-collision");u.add(p)}}return{episodes:t.map((f,p)=>{const h=l.get(p);return h===void 0?f:{...f,key:h.key}}),reason:null}}const zv=8,Zv="",zt=new Map,So=e=>e??Zv;function WR(e){return zt.get(So(e))??null}function zR(e,t){const n=So(e);for(zt.delete(n),zt.set(n,t);zt.size>zv;){const r=zt.keys().next().value;if(r===void 0)break;zt.delete(r)}}function Vv(e){zt.delete(So(e))}function Kv(){let e=null;const t=async(n,r)=>{n.setLoading?.(!0);const s=n.getTranscript().orderRevision??0,i=()=>(n.getTranscript().orderRevision??0)===s;try{let a=r,l=await n.readPage(a);if(!n.isCurrent()||!i())return{kind:"stale"};if(l.cursor_missing){const u=Jy(n.getTranscript()),f=u!==null&&u!==a?u:Yy(l,a);if(f===null)return{kind:"failed",reason:"cursor-missing"};if(a=f,l=await n.readPage(a),!n.isCurrent()||!i())return{kind:"stale"};if(l.cursor_missing)return{kind:"failed",reason:"cursor-missing"}}let c=n.getTranscript();const d=n.commit(u=>(c=u,(u.orderRevision??0)!==s?u:Yn(u,l,{...u.oldestId===r?{pagedBefore:a}:{},...n.peerSource?.()===!0?{peerSource:!0}:{}})));return(d.orderRevision??0)!==s||l.journal_generation!==void 0&&l.journal_generation!==d.journalGeneration?{kind:"stale"}:{kind:"applied",newRecords:Math.max(0,d.records.length-c.records.length),exhausted:!d.hasMore}}catch{return{kind:"failed",reason:"request"}}finally{n.setLoading?.(!1)}};return{busy:n=>e!==null&&e.key===n,load(n,r){if(e!==null&&e.key===n)return e.promise;const s=r.getTranscript();if(!s.hasMore||!s.oldestId)return Promise.resolve({kind:"nothing-to-load"});const i={key:n,promise:t(r,s.oldestId)};e=i;const a=()=>{e===i&&(e=null)};return i.promise.then(a,a),i.promise}}}const Yv=new Set(["subagent_start","subagent_progress","subagent_end"]),Qv=(e,t)=>({...e,[t]:(e[t]??0)+1}),Jv=e=>{const t={};if(!Array.isArray(e))return t;for(const n of e){const r=Nd(n);r&&(t[r]=(t[r]??0)+1)}return t},Nd=e=>{if(!e||typeof e!="object")return null;const t=e;return Yv.has(String(t.type??""))&&typeof t.job_id=="string"&&t.job_id?t.job_id:null},Xv=(e,t)=>{const n=Nd(t);return n?Qv(e,n):e};function _l(e,t,n){if(!n||!e)return{};const r=e.context_tokens;if(typeof r!="number"||!Number.isFinite(r)||r<=0)return{};const s=t.context_tokens;return typeof s=="number"&&Number.isFinite(s)&&s>=r?{}:{context_tokens:r,context_is_estimate:e.context_is_estimate??t.context_is_estimate,context_window:e.context_window??t.context_window,last_usage:e.last_usage??null}}function qv(e){for(const t of e)t.type==="aside_delta"&&Mv.getState().applyAsideDelta(t.payload.aside_id,t.payload.delta)}function e_(e){return e.some(t=>t.type!=="aside_delta"&&t.type!=="heartbeat")}const Ht=new Set,Hn=new Set;function t_(e,t){let n=null;for(const r of t)e.has(r)&&(n=n??new Set(e),n.delete(r));return n??e}const n_=new Set(["agent_end","agent_start","provider_start","steering_delivered","turn_end","turn_start"]),r_=15e3,Ci=[500,1e3,2e3,4e3,8e3,8e3],s_=Ci.length,i_=2e4,o_=1e4,a_=1e4;function bl(e){const t=Math.max(1,Math.min(e,Ci.length));return Ci[t-1]??8e3}const l_=3,c_=250,d_=32*1024,wl=512,Sl=new Set(["turn_end","agent_end"]),kl=2,u_=500,Rl=bo,f_=6,ni=bc("sessions.history"),p_=2e3,El={targets:new Set,order:[],every:new Set,found:new Set,pending:[],starts:new Map,waiting:new Set},Yt=new Map,Zr=new Map,h_=8,m_=2048,Il=1024,g_=1024,y_="",Bt=new Map;function xl(e){const t=e??y_,n=Bt.get(t);if(n)return Bt.delete(t),Bt.set(t,n),n;const r={attempts:new Map,painted:new Set,inFlight:new Set,refused:!1,depth:0,order:[],starts:new Map,waiting:new Set,settled:new Set,settleRows:0};for(Bt.set(t,r);Bt.size>h_;){const s=Bt.keys().next().value;if(s===void 0||s===t)break;Bt.delete(s)}return r}function ri(e){return e.terminal||e.failure?!1:(e.frontend??e.heldFrontend)?.streaming===!0}function si(e,t,n,r){return t.has(n)?!1:e.inFlight.has(n)?!0:r}function v_(e,t){return Zr.set(e,t),()=>{Zr.get(e)===t&&Zr.delete(e)}}function ZR(e){const t=Zr.get(e);return t?(t(),!0):!1}const Re=new Map,__=4,b_=16;function Ld(e,t){e(n=>Cd(n,t.id,t.text,t.images)),t.painted||(t.painted=!0,t.onPainted?.())}function w_(e,t,n){const r=e.index.get(t),s=r===void 0?void 0:e.records[r];if(r===void 0||!s||s.kind!=="user"||!s.local||s.text===n)return e;const i=e.records.slice(),{skill:a,...l}=s,c=gs(n);return i[r]=c?{...l,text:n,skill:c}:{...l,text:n},{...e,records:i}}function Ai(e,t){let n=Re.get(e);if(!n){if(Re.size>=b_){const i=Re.keys().next();i.done||Re.delete(i.value)}n=new Map,Re.set(e,n)}const r={identity:e,id:t.id,text:t.text,images:t.images,onPainted:t.onPainted,settled:t.settled,submittedAt:t.submittedAt};for(n.set(r.id,r);n.size>__;){const i=n.keys().next();if(i.done)break;n.delete(i.value)}const s=Yt.get(e);s&&Ld(s,r)}function VR(e){if(!e)return null;const t=Re.get(e);if(!t)return null;for(const n of t.values())if(!n.settled)return n;return null}function Oi(e,t){const n=Re.get(e);n&&(n.delete(t),n.size===0&&Re.delete(e))}function Pi(e,t){const n=Re.get(e)?.get(t);n&&(n.settled=!0)}function Tl(e,t){return e?Re.get(e)?.has(t)===!0:!1}function KR(e){return e?(Re.get(e)?.size??0)>0:!1}function S_(e,t,n){const r=Re.get(e)?.get(t);if(!r)return;r.text=n;const s=Yt.get(e);s&&s(i=>w_(i,t,n))}function k_(e,t){if(e===t)return;const n=Re.get(e);if(!n)return;Re.delete(e);const r=Re.get(t)??new Map;for(const[s,i]of n)i.identity=t,r.set(s,i);Re.set(t,r)}function Fr(e){Re.delete(e)}function R_(e,t){const n=Re.get(e);if(n)for(const r of[...n.keys()]){const s=t.index.get(r),i=s===void 0?void 0:t.records[s];i?.kind==="user"&&i.local!==!0&&Oi(e,r)}}function E_(e,t){Yt.set(e,t);const n=Re.get(e);if(n)for(const r of n.values())Ld(t,r);return()=>{Yt.get(e)===t&&Yt.delete(e)}}function I_(e,t){const n=Re.get(e);if(!n)return t;let r=t;for(const s of n.values())r=Cd(r,s.id,s.text,s.images);return r}function x_(e,t,n){return e===t?!0:!n}function T_(e,t){const n=Yt.get(e);if(!n)return Oi(e,t),"queued";let r="queued";return n(s=>{const i=s.records[s.index.get(t)??-1];return!i||i.kind!=="user"?s:i.local?(r="retracted",Ad(s,t)):(r="owner",s)}),Oi(e,t),r}function $d(e,t){const n=Yt.get(e);if(!n)return"unseen";let r="unseen";return n(s=>{const i=s.records[s.index.get(t)??-1];return!i||i.kind!=="user"||(r=i.local?"local":"owner"),s}),r}function C_(e){const t=Md(e);return t?{transcript:t.transcript,stale:!0,owedLabels:t.owedLabels,markLabels:t.markLabels}:{transcript:st,stale:!1,owedLabels:Ht,markLabels:Hn}}function A_(e){return"cold_reason"in e&&!e.history.cursor_missing&&e.history.entries.length>0}function ii(e,t){if(e.size!==0)for(const n of t)e.delete(rt(n))}function Br(e,t){for(const n of t)e.add(rt(n))}function YR(e,t,n=!0,r=e,s={}){const i=s.openFrame===!0,a=s.journalOrder===!0,l=b.useRef(a);l.current=a;const c=b.useRef(i);c.current=i;const d=s.peerJournalSource===!0,u=b.useRef(d);u.current=d;const f=b.useRef(null),p=b.useRef(0),h=b.useRef(0),g=b.useRef(0),m=b.useRef(null),y=b.useRef(null),_=b.useCallback(()=>{if(!e||!l.current||!u.current)return!1;const T=Qe.getState();return vb(T.sessions,T.placementFacts,e)},[e]),v=b.useCallback(()=>{const T=f.current;return _()&&T!==null&&T.sessionId===e&&T.peer},[_,e]),I=b.useCallback(()=>{const T=f.current;return T!==null&&T.sessionId===e&&T.peer},[e]),[C,J]=b.useState(()=>{const T=t&&e?C_(e):null;return{status:"connecting",frontend:null,heldFrontend:null,contextCarried:!1,pendingModel:null,history:null,cold:!1,subscriptionId:null,ownerEpoch:null,receipt:null,terminal:null,turnsCompleted:0,failure:null,liveUpdatesPaused:!1,liveUpdatesNotice:"none",liveUpdatesReloadFailed:!1,liveUpdatesReloading:!1,transcript:r?I_(r,T?.transcript??st):st,stale:T?.stale??!1,missing:!1,loadingOlder:!1,olderFailed:!1,subagentPulses:{},labelPending:T?.owedLabels??Ht,labelMarked:T?.markLabels??Hn,labelHoldLate:!1,hydrated:!1,historyReadPending:!1}}),j=b.useRef(C),A=b.useCallback(T=>{const V=T(j.current);return V===j.current||(j.current=V,J(V)),V},[]),S=b.useRef(e),U=b.useRef([]),Z=b.useRef(st.index),re=b.useRef(new Set),x=b.useRef(new Set),O=b.useRef(xl(e)),oe=b.useRef(new Set),je=b.useRef(null),xn=b.useRef({}),Is=b.useRef(null),xs=b.useRef(null),Ts=b.useRef(null),Tn=b.useRef(0),Xe=b.useRef(0);b.useEffect(()=>{if(!e||!t)return;const T=++Xe.current,V=new WeakMap,se=(H,W)=>{const K=V.get(H);if(K===void 0||Ke(W)===K.revision)return!1;const q=H.payload.history.journal_generation;return!(typeof q=="string"&&q.length>0&&q===W.journalGeneration)};let pe=null,G=!1,we=0,Le=0,ue=0,me=0,D=0,he=0,ae=0,Ee=!1;const Se=()=>{he&&(window.clearTimeout(he),he=0)},Te=H=>{for(const W of H)O.current.attempts.set(W,(O.current.attempts.get(W)??0)+1)},sn=H=>{A(W=>{const K=new Set;for(const ee of W.labelPending)W.labelPending.has(ee)&&(si(O.current,W.transcript.argsByCall,ee,ri(W))||K.add(ee));let q=null;for(const ee of W.labelMarked)si(O.current,W.transcript.argsByCall,ee,ri(W))||(q=q??new Set(W.labelMarked),q.delete(ee));if(K.size===0&&!q)return W;const ie=new Set(W.labelPending);for(const ee of K)ie.delete(ee);return{...W,labelPending:ie.size?ie:Ht,labelMarked:q&&q.size===0?Hn:q??W.labelMarked}})},Hu=H=>{A(W=>{let K=null,q=null;for(const ie of H)W.labelPending.has(ie)&&(K=K??new Set(W.labelPending),K.delete(ie),q=q??new Set(W.labelMarked),q.add(ie));return!K||!q?W:{...W,labelPending:K.size?K:Ht,labelMarked:q}})},xr=async(H,W,K=El,q=1,ie,ee=W,Fe=null)=>{Tn.current+=1,Xe.current===H&&A(Ie=>Ie.historyReadPending?Ie:{...Ie,historyReadPending:!0});for(const Ie of K.targets)O.current.inFlight.add(Ie),oe.current.add(Ie);let Me=!1;try{Me=await Wu(H,W,ee,Fe,K,q,ie)}finally{if(Tn.current=Math.max(0,Tn.current-1),Tn.current===0&&A(Ie=>Ie.historyReadPending?{...Ie,historyReadPending:!1}:Ie),!Me){for(const Ie of K.targets)O.current.inFlight.delete(Ie);O.current.refused&&Hu(K.targets),sn()}}},Wu=async(H,W,K,q,ie,ee,Fe)=>{const Me={keys:new Set,oldest:null,hasMore:!1,joined:!1,reachedHeld:K.size===0},Ie=j.current.transcript.viewEpoch,Ce=await zu(H,W,K,q,ie,ee,Me,Fe);if(Ce||Xe.current!==H||Me.reachedHeld||j.current.transcript.viewEpoch!==Ie)return Ce;const Be=W!==K&&[...W].some(He=>K.has(He));if(Be&&Me.joined)return Ce;let Ge;if(Me.oldest){if(!Me.hasMore)return Ce;Ge={id:Me.oldest.id,ts:Math.round((Me.oldest.ts??0)*1e3)}}else{if(Be||!q)return Ce;Ge=q}if(!Ge)return Ce;const It=A(He=>{const et=rv(He.transcript,Ge,Me.keys);return et===He.transcript?He:{...He,transcript:et}});return Z.current=It.transcript.index,Ce},zu=async(H,W,K,q,ie,ee,Fe,Me)=>{const Ie=j.current.transcript.viewEpoch,Ce=()=>j.current.transcript.viewEpoch!==Ie,Be=new Set;let Ge,It=0,He=0,et=!1,xt=K.size===0,on=!1;const Tr=j.current.cold,tt=new Set(ie.found),ct=()=>yv(ie.order,ie.targets,tt),Cr=()=>Td(ie.order,ie.targets,tt),Ps=()=>{const $=new Map;for(const be of w){if(tt.has(be))continue;const ce=fe.get(be);ce!==void 0&&$.set(be,ce)}return $},R=new Set(ie.every);for(const $ of tt)R.add($);const w=new Set,fe=new Map;let _e=1;const De=ie.targets.size>0;let z=Math.max(cl(ct()),De?O.current.depth:0),jn=0;for(;It<Rl&&He<f_;){He+=1;let $;const be=wi(j.current.transcript),ce=be.revision;try{$=await xe({op:"sessions.history",sessionId:e,...Ge?{beforeId:Ge}:{},limit:Math.min(z,Rl-It),openFrame:c.current,...l.current?{journalOrder:!0,orderIds:ut(j.current.transcript).slice(0,512),...v()?{peerJournalSource:!0}:{}}:{}})}catch{if(Ce())return!1;if(j.current.transcript.records.length>0){if(jn++>0)return O.current.refused=!0,!1;continue}return ee<l_?(D=window.setTimeout(()=>{if(D=0,Xe.current!==H||Ce()){sn();return}xr(H,W,ie,ee+1,Me,K,q)},bl(ee)),!0):(A(de=>({...de,status:"unavailable",failure:Bh,heldFrontend:null,...de.liveUpdatesReloading?{liveUpdatesReloadFailed:!0}:{},liveUpdatesReloading:!1})),!1)}finally{sn()}if(Xe.current!==H||Ce())return!1;if(Ke(j.current.transcript)!==ce){if(!j.current.hydrated)continue;return!1}O.current.refused=!1;const nt=$.entries[0];It+=$.entries.length,Me?.($.entries.length),ii(re.current,$.entries),Br(x.current,$.entries),A(de=>{if(Ke(de.transcript)!==ce)return de;const dt=Yn(de.transcript,$,{authoritative:!0,orderRead:be,peerSource:I()}),ln=Js($.entries,R),js=new Set(de.labelPending);for(const Ku of ln)js.delete(Ku);return{...de,hydrated:de.hydrated||$.entries.length>0||!Tr,labelPending:js.size?js:Ht,labelMarked:t_(de.labelMarked,ln),transcript:dt}}),e&&Ge===void 0&&Qe.getState().resolveHeldFromServer(e,$.entries,!$.cursor_missing);const Ft=ct();for(const de of Js($.entries,R))tt.add(de),R.add(de);if(pv($.entries)&&(on=!0),De){const de=hv($.entries,R);for(const dt of de)w.add(dt),R.add(dt);for(const[dt,ln]of dv($.entries,de))fe.set(dt,ln);for(const dt of[...w])tt.has(dt)&&w.delete(dt);w.size>0&&_e--<=0&&w.clear()}et=et||W.size===0||$.entries.some(de=>W.has(rt(de))||Be.has(de.id)),xt=xt||$.entries.some(de=>K.has(rt(de)));for(const de of $.entries)Be.add(de.id);for(const de of $.entries)Fe.keys.add(rt(de));nt&&(Fe.oldest=nt),Fe.hasMore=$.has_more,Fe.joined=et,Fe.reachedHeld=xt;const an=ct()+w.size;De&&ct()<Ft&&(O.current.depth=Math.min(bo,Math.max(O.current.depth,It)));let ta=!1;if(De){const de=Cr();ta=uv($.entries,de,ie.starts,Ps(),new Set(de.filter(ln=>ie.waiting.has(ln))))||on}if(mv(et&&xt,ta?0:an)||!nt||!$.has_more)return!1;Ge=nt.id,z=an>0?cl(an):Ti}return!1},Jo=()=>{if(we&&cancelAnimationFrame(we),Le&&clearTimeout(Le),we=0,Le=0,Xe.current!==T)return;const H=U.current;if(U.current=[],H.length===0)return;const W=new Set,K=new Map;for(const R of re.current)j.current.transcript.index.has(R)||re.current.delete(R);for(const R of x.current)j.current.transcript.index.has(R)||x.current.delete(R);for(const R of j.current.transcript.records)yo(R)&&!re.current.has(R.id)&&(W.add(R.id),K.set(R.id,x.current.has(R.id)?R.ts:null));let q=null;for(const R of H){if(R.type!=="snapshot")continue;const w=R.payload.history,fe=w.entries[0];if(!fe||!w.has_more)continue;const _e=Math.round((fe.ts??0)*1e3);_e>0&&(!q||_e<q.ts)&&(q={id:fe.id,ts:_e})}qv(H);const ie=R=>{const w=R.payload.history.entries,fe=w.at(-1);if(!fe)return!1;if(A_(R.payload)){if(W.size===0)return!0;const _e=new Set;for(const De of w)_e.add(rt(De));return w.some(De=>W.has(rt(De)))?!0:am(R.payload.history,K,_e)}return fe.id===R.payload.frontend.snapshot.history_cursor?!1:W.has(rt(fe))},ee=R=>R!=null&&Z.current.has(R);let Fe=!1;const Me=H.some(R=>R.type==="attention"?!ee(R.payload.anchor_id):R.type==="snapshot"&&!ie(R)),Ie=j.current.cold&&!j.current.hydrated&&H.some(R=>R.type==="snapshot"||R.type==="frontend.replace"||R.type==="frontend.update"?R.payload.cold===!1:!1),Ce=new Set(j.current.transcript.argsByCall.keys()),Be=[],Ge=new Set;for(const R of H){if(R.type!=="snapshot")continue;const w=se(R,j.current.transcript);w||Br(x.current,R.payload.history.entries);for(const fe of R.payload.history.entries){w||Ge.add(rt(fe));const _e=fe.payload?.tool_calls;if(Array.isArray(_e))for(const De of _e)De&&typeof De.id=="string"&&Ce.add(De.id)}for(const fe of R.payload.frontend.snapshot.live_events??[]){const _e=fe.message;!w&&typeof _e?.id=="string"&&Ge.add(_e.id)}Be.push(...R.payload.frontend.snapshot.live_events??[])}const It=H.some(R=>R.type==="event"&&Sl.has(String(R.payload.type??""))),He=ll(O.current.attempts,al(Be,Ce),Ce,kl),et=It?ll(O.current.attempts,[...O.current.attempts.keys(),...O.current.settled],Ce,kl):[],xt=[];for(const R of H){if(R.type!=="event")continue;const w=R.payload;String(w.type??"")==="tool_execution_end"&&String(w.tool_call_id??"")&&xt.push(w)}const on=[];for(const R of xt){const w=String(R.tool_call_id??"");Ce.has(w)||O.current.settled.has(w)||on.push(w)}for(const R of on)O.current.settled.add(R);for(;O.current.settled.size>wl;){const R=O.current.settled.values().next().value;if(R===void 0)break;O.current.settled.delete(R)}for(const[R,w]of ol(xt))O.current.starts.set(R,w);for(;O.current.starts.size>Il;){const R=O.current.starts.keys().next().value;if(R===void 0)break;O.current.starts.delete(R)}const Tr=O.current.settleRows<u_?on:[],tt=[...new Set([...He,...et,...Tr])],ct=tt.filter(R=>!O.current.painted.has(R));if(Be.length>0){O.current.order=al(Be,new Set);for(const[R,w]of ol(Be))O.current.starts.set(R,w);for(;O.current.starts.size>Il;){const R=O.current.starts.keys().next().value;if(R===void 0)break;O.current.starts.delete(R)}for(const R of lv(Be))O.current.waiting.add(R);for(const R of gv(Be))O.current.waiting.delete(R);for(;O.current.waiting.size>g_;){const R=O.current.waiting.values().next().value;if(R===void 0)break;O.current.waiting.delete(R)}}for(const R of[...O.current.attempts.keys()])Ce.has(R)&&O.current.attempts.delete(R);for(Te([...He,...et]);O.current.attempts.size>wl;){const R=O.current.attempts.keys().next().value;if(R===void 0)break;O.current.attempts.delete(R)}if(performance.mark("lop:transcript:flush:start"),A(R=>{let w={...R},fe=w.frontend!==null;Fe=!1;let _e=null;const De=Date.now();for(const z of H){if(z.type==="heartbeat")continue;if(z.type==="gap"){w={...w,frontend:null,heldFrontend:w.frontend??w.heldFrontend,history:null,terminal:null,status:"reconnecting",transcript:dl(w.transcript)},fe=!1;continue}const jn=je.current;if((z.type==="open"||"seq"in z)&&(je.current={epoch:z.epoch,seq:z.seq},w={...w,receipt:je.current}),z.type==="open"){if(w={...w,subscriptionId:z.payload.subscription_id},z.payload.gap){const $=w.frontend??w.heldFrontend;w={...w,frontend:null,heldFrontend:$,history:null,transcript:dl(w.transcript)},$&&w.status==="live"&&(w={...w,status:"reconnecting"}),fe=!1}continue}if(!fe){if(z.type==="event"&&(_e=xi(_e??w.transcript,z.payload,De,{frame:{epoch:z.epoch,seq:z.seq}})),z.type==="snapshot"){const $=V.get(z),be=se(z,w.transcript);be&&(Fe=!0);const ce=z.payload,nt=!ce.history.cursor_missing&&!be;let Ft=_e??w.transcript;nt&&(performance.mark("lop:open:history:start"),Ft=Yn(Ft,ce.history,{authoritative:!0,orderRead:$,peerSource:I()}),performance.mark("lop:open:history:end"),performance.measure("lop:open:history","lop:open:history:start","lop:open:history:end"),ii(re.current,ce.history.entries),Br(x.current,ce.history.entries)),e&&Qe.getState().resolveHeldFromServer(e,ce.history.entries,nt),performance.mark("lop:open:seed:start"),Ft=av(Ft,ce.frontend.snapshot,De,{epoch:z.epoch,seq:z.seq}),performance.mark("lop:open:seed:end"),performance.measure("lop:open:seed","lop:open:seed:start","lop:open:seed:end");const an=_l(w.frontend??w.heldFrontend,ce.frontend.snapshot,ce.cold===!0||ce.attaching===!0);w={...w,contextCarried:Object.keys(an).length>0,subagentPulses:Jv(ce.frontend.snapshot.live_events),status:"live",stale:!1,frontend:{...ce.frontend.snapshot,...an,attention:mn(w.frontend?.attention,ce.frontend.snapshot.attention,e)},history:be?w.history:ce.history,cold:ce.cold,ownerEpoch:ce.frontend.epoch,failure:null,hydrated:w.hydrated||nt&&ce.history.entries.length>0,liveUpdatesPaused:!1,liveUpdatesNotice:"none",liveUpdatesReloadFailed:!1,liveUpdatesReloading:!1,transcript:Ft},fe=!0,_e=null}continue}if(z.type==="attention"){w.frontend&&(w={...w,frontend:{...w.frontend,attention:mn(w.frontend.attention,z.payload,e)}});continue}if(z.type==="frontend.update"){const $=z.payload,be=$.changes??{};if(($.degraded===!0||$.paused===!0)&&(w={...w,liveUpdatesPaused:!0,liveUpdatesNotice:"update",liveUpdatesReloading:!1,liveUpdatesReloadFailed:!1}),!w.frontend)continue;const ce=$.epoch!==w.ownerEpoch&&be.epoch===$.epoch,nt=$.changes!==void 0&&be.epoch===$.epoch;(ce||$.epoch===w.ownerEpoch&&(w.frontend.sequence<$.sequence||w.frontend.sequence===$.sequence&&nt))&&(w={...w,contextCarried:!1,ownerEpoch:ce?$.epoch:w.ownerEpoch,frontend:{...w.frontend,...be,...be.jobs==null&&$.job_deltas?{jobs:rm(w.frontend.jobs??[],$.job_deltas)}:{},attention:mn(w.frontend.attention,be.attention,e),sequence:$.sequence},...typeof $.cold=="boolean"?{cold:$.cold}:{}},nt&&w.liveUpdatesNotice==="update"&&w.liveUpdatesPaused&&(w={...w,liveUpdatesPaused:!1,liveUpdatesNotice:"none",liveUpdatesReloading:!1,liveUpdatesReloadFailed:!1}));continue}if(z.type==="frontend.replace"){if(w.frontend&&$h(jn,e,z)){const $=z.payload.frontend,be=_l(w.frontend,$.snapshot,z.payload.cold===!0);w={...w,contextCarried:Object.keys(be).length>0,frontend:{...$.snapshot,...be,attention:mn(w.frontend.attention,$.snapshot.attention,e)},ownerEpoch:$.epoch,cold:z.payload.cold,...w.liveUpdatesPaused?{liveUpdatesPaused:!1,liveUpdatesNotice:"none",liveUpdatesReloading:!1,liveUpdatesReloadFailed:!1}:{}}}continue}if(z.type==="event"){const $=String(z.payload.type??"");if(z.payload.action==="reload"){w={...w,liveUpdatesPaused:!0,liveUpdatesNotice:"event",liveUpdatesReloading:!1,liveUpdatesReloadFailed:!1};continue}n_.has($)&&(w={...w,terminal:$}),Sl.has($)&&(w={...w,turnsCompleted:w.turnsCompleted+1});const be=xi(w.transcript,z.payload,De,{frame:{epoch:z.epoch,seq:z.seq},userStoppedAt:e?Qe.getState().stoppedTurns[e]??null:null,queuedAskEngine:Sd(w.frontend)});be!==w.transcript&&(w={...w,transcript:be});const ce=Xv(w.subagentPulses,z.payload);ce!==w.subagentPulses&&(w={...w,subagentPulses:ce})}}if(!fe&&_e){for(const z of _e.index.keys())w.transcript.index.has(z)||re.current.add(z);w={...w,transcript:_e}}if(performance.mark("lop:transcript:flush:end"),performance.measure("lop:transcript:flush","lop:transcript:flush:start","lop:transcript:flush:end"),Z.current=w.transcript.index,!e_(H))return R;if(ct.length>0){const z=new Set(w.labelPending);for(const jn of ct)z.add(jn);w={...w,labelPending:z}}return w.frontend!==null&&w.frontend!==w.heldFrontend&&(w={...w,heldFrontend:w.frontend}),w}),ct.length>0){for(const R of ct)O.current.painted.add(R);for(;O.current.painted.size>m_;){const R=O.current.painted.values().next().value;if(R===void 0)break;O.current.painted.delete(R)}}const Cr=Me||Fe,Ps=Tr.length>0&&He.length===0&&et.length===0&&!Cr&&!Ie;if(Cr||tt.length>0||Ie){const R=new Set(tt),w=O.current.order;xr(T,Ge,tt.length>0?{targets:R,order:w,starts:O.current.starts,waiting:O.current.waiting,every:new Set([...w,...R]),found:new Set(Js(H.flatMap(fe=>fe.type==="snapshot"?fe.payload.history.entries:[]),new Set(w))),pending:ct}:El,1,Ps?fe=>{O.current.settleRows+=fe}:void 0,W,q)}},On=()=>{const H=pe;if(pe=null,f.current=null,p.current+=1,h.current&&(window.clearTimeout(h.current),h.current=0),g.current+=1,!!H){G=!0;try{H()}finally{G=!1}}},Pn=()=>{const H=wi(j.current.transcript);Se(),he=window.setTimeout(()=>{he=0,Xe.current===T&&(On(),A(K=>({...K,subscriptionId:null,status:"unavailable",failure:Ua(Zn.ended),...K.liveUpdatesReloading?{liveUpdatesReloadFailed:!0}:{},liveUpdatesReloading:!1,heldFrontend:null})),!Ee&&(Ee=!0,ae=window.setTimeout(()=>{ae=0,Xe.current===T&&qo()},o_)))},i_);const W=_();pe=nm({sessionId:e,epoch:xn.current.epoch,afterSeq:xn.current.afterSeq,openFrame:c.current,...l.current?{journalOrder:a,orderIds:ut(j.current.transcript).slice(0,512),...W?{peerJournalSource:!0}:{}}:{}},K=>{if(Xe.current===T){if(K.kind==="error"||K.kind==="end"){if(G)return;if(Se(),On(),K.kind==="error"&&K.status===404){e&&($v(e),Hv(e),Vv(e),Qe.getState().retireDraftsForSession(e)),A(ee=>({...ee,subscriptionId:null,status:"unavailable",missing:!0,failure:null,...ee.liveUpdatesReloading?{liveUpdatesReloadFailed:!0}:{},liveUpdatesReloading:!1,heldFrontend:null}));return}const q=K.kind==="error"?K.detail??"The event stream failed.":"The event stream closed unexpectedly.";if(A(ee=>({...ee,subscriptionId:null})),ue>=s_){A(ee=>({...ee,status:"unavailable",failure:Ua(q),...ee.liveUpdatesReloading?{liveUpdatesReloadFailed:!0}:{},liveUpdatesReloading:!1,heldFrontend:null}));return}ue+=1;const ie=je.current;ie&&(xn.current={epoch:ie.epoch,afterSeq:ie.seq}),A(ee=>ee.status==="unavailable"&&ue>1?ee:{...ee,status:"reconnecting",failure:null}),me=window.setTimeout(()=>{me=0,Xe.current===T&&Pn()},bl(ue));return}if(K.data!==void 0)try{const q=K.data,ie=q.length>=d_;ie&&performance.mark("lop:open:parse:start");const ee=JSON.parse(q);ee.type==="snapshot"&&V.set(ee,H),ie&&(performance.mark("lop:open:parse:end"),performance.measure("lop:open:parse","lop:open:parse:start","lop:open:parse:end")),ee.type==="snapshot"&&(ue=0,Se(),Ee=!1),U.current.push(ee),we||(we=requestAnimationFrame(Jo)),Le||(Le=window.setTimeout(Jo,c_))}catch{}}}),f.current={sessionId:e,peer:W},p.current+=1},Xo=()=>{me!==0&&(window.clearTimeout(me),me=0),xn.current={},je.current=null,On(),Pn()},qo=()=>{ue=0,ae&&(window.clearTimeout(ae),ae=0),me&&(window.clearTimeout(me),me=0),D&&(window.clearTimeout(D),D=0),A(H=>({...H,failure:null,status:H.status==="unavailable"?"connecting":H.status,transcript:Ur(H.transcript,!1)})),j.current.hydrated||xr(T,new Set(j.current.transcript.index.keys())),!pe&&Pn()};Pn(),Is.current=qo,xs.current=()=>{j.current.liveUpdatesReloading||(A(H=>({...H,liveUpdatesReloading:!0,liveUpdatesReloadFailed:!1})),ue=0,me&&(window.clearTimeout(me),me=0),ae&&(window.clearTimeout(ae),ae=0),Xo())},Ts.current=()=>{!j.current.hydrated&&Tn.current===0&&xr(T,new Set(j.current.transcript.index.keys()))};const Zu=v_(e,Xo),ea=()=>{if(!t||!e||m.current===e)return;const H=f.current;H===null||H.sessionId!==e||H.peer||_()&&(m.current=e,On(),Pn())};y.current=ea;const Vu=Qe.subscribe(()=>{ea()});return()=>{Xe.current+=1,Is.current=null,Ts.current=null,xs.current=null,y.current=null,Vu(),h.current&&(window.clearTimeout(h.current),h.current=0),Zu(),On(),we&&cancelAnimationFrame(we),Le&&clearTimeout(Le),me&&clearTimeout(me),D&&clearTimeout(D),qe.current&&(window.clearTimeout(qe.current),qe.current=0),yt.current&&(window.clearTimeout(yt.current),yt.current=0),ae&&window.clearTimeout(ae),Se(),U.current=[]}},[A,e,t,a,_,v,I]),b.useEffect(()=>{!e||!t||y.current?.()},[e,t,d]),b.useEffect(()=>{xn.current={},je.current=null,Z.current=st.index;const T=x_(S.current,e,n);S.current=e;const V=e?Md(e):null;Z.current=T?j.current.transcript.index:(V?.transcript??st).index;const se=new Set(T?re.current:[]);for(const G of V?.replayBorn??[])se.add(G);const pe=T?j.current.transcript.index:(V?.transcript??st).index;for(const G of se)pe.has(G)||se.delete(G);re.current=se,T||(x.current=new Set),A(G=>({...G,frontend:null,heldFrontend:T?G.heldFrontend:null,contextCarried:T?G.contextCarried:!1,pendingModel:null,history:null,terminal:null,turnsCompleted:T?G.turnsCompleted:0,transcript:T?G.transcript:V?.transcript??st,stale:T?G.stale:V!==null,missing:T?G.missing:!1,status:"connecting",subagentPulses:{},labelPending:V?.owedLabels??Ht,labelMarked:V?.markLabels??Hn,labelHoldLate:!1,hydrated:!1,loadingOlder:!1,historyReadPending:!1,olderFailed:!1})),O.current=xl(e)},[e,n]),b.useEffect(()=>{if(e)return()=>{const T=j.current.transcript;T.records.length>0&&Lv(e,{transcript:T,owedLabels:new Set([...j.current.labelPending].filter(V=>si(O.current,j.current.transcript.argsByCall,V,ri(j.current)))),markLabels:new Set(j.current.labelMarked),replayBorn:new Set(re.current)});for(const V of oe.current)O.current.inFlight.delete(V);oe.current.clear()}},[e]);const qe=b.useRef(0);b.useEffect(()=>{if(C.labelPending.size===0&&C.labelMarked.size===0){qe.current&&(window.clearTimeout(qe.current),qe.current=0);return}if(qe.current)return;const T=()=>{qe.current=0;const V=j.current.labelPending,se=j.current.labelMarked;if(V.size===0&&se.size===0)return;const pe=O.current;for(const G of V)if(pe.inFlight.has(G)){qe.current=window.setTimeout(T,ni);return}for(const G of se)if(pe.inFlight.has(G)){qe.current=window.setTimeout(T,ni);return}A(G=>G.labelPending.size===0&&G.labelMarked.size===0?G:{...G,labelPending:Ht,labelMarked:Hn})};qe.current=window.setTimeout(T,ni)},[A,C.labelPending,C.labelMarked]);const yt=b.useRef(0);b.useEffect(()=>{if(C.labelPending.size===0){yt.current&&(window.clearTimeout(yt.current),yt.current=0),A(T=>T.labelHoldLate?{...T,labelHoldLate:!1}:T);return}C.labelHoldLate||yt.current||(yt.current=window.setTimeout(()=>{yt.current=0,A(T=>T.labelPending.size===0||T.labelHoldLate?T:{...T,labelHoldLate:!0})},p_))},[A,C.labelPending,C.labelHoldLate]);const Et=b.useRef(e);Et.current=e;const Cn=b.useRef({id:e,epoch:0});Cn.current.id!==e&&(Cn.current={id:e,epoch:Cn.current.epoch+1});const Cs=b.useRef(null);Cs.current===null&&(Cs.current=Kv());const As=b.useRef(!1),An=b.useRef(null),[Bo,Gu]=b.useState(0);b.useEffect(()=>{const T=C.transcript,V=ut(T);if(!e||!a||!T.orderNeedsReconcile&&(!T.journalGeneration||V.length===0)||As.current)return;const se=D=>({fields:JSON.stringify([Bo,e,D.viewEpoch,Ke(D),D.orderNeedsReconcile,D.orderWantedGeneration,ut(D)]),demand:D.orderDemand}),pe=se(T);if(An.current?.fields===pe.fields&&An.current.demand===pe.demand)return;An.current=pe;const G=e,we=T.viewEpoch;As.current=!0;let Le=null,ue=T;const me=D=>{if(!D.peer||Et.current!==G||j.current.transcript.viewEpoch!==we||p.current!==D.streamEpoch)return;const he=D.kind==="authority"?D.frame.payload.history:D.page,ae=he.journal_order_state;if(ae==="ready"){h.current&&(window.clearTimeout(h.current),h.current=0),A(Se=>{const Te=Ur(Se.transcript,!1);return Te===Se.transcript?Se:{...Se,transcript:Te}});return}if(ae==="unavailable"){if(h.current&&(window.clearTimeout(h.current),h.current=0),he.reconcile===!0)return;A(Se=>{const Te=Ur(Se.transcript,!0);return Te===Se.transcript?Se:{...Se,transcript:Te}});return}if(ae!=="building")return;h.current&&(window.clearTimeout(h.current),h.current=0);const Ee=++g.current;h.current=window.setTimeout(()=>{h.current=0,g.current===Ee&&Et.current===G&&j.current.transcript.viewEpoch===we&&p.current===D.streamEpoch&&A(Se=>{const Te=Ur(Se.transcript,!0);return Te===Se.transcript?Se:{...Se,transcript:Te}})},a_)};im({getTranscript:()=>j.current.transcript,isCurrent:()=>Et.current===G&&j.current.transcript.viewEpoch===we,sweep:(D,he)=>{if(!v())return;if(D.orderNeedsReconcile===!0)return{kind:"authority",path:`/v1/desktop/sessions/${G}`,query:new URLSearchParams({journal_order:"1",peer_journal_source:"1"})};const ae=D.journalGeneration;if(typeof ae!="string"||ae.length===0)return{kind:"none",path:`/v1/desktop/sessions/${G}/history`,query:new URLSearchParams};if(Ac(D,he?.("lookup")).length>0){const Te=new URLSearchParams({limit:"100",journal_order:"1",peer_journal_source:"1",source_read:"metadata",expected_journal_generation:ae});return{kind:"lookup",path:`/v1/desktop/sessions/${G}/history`,query:Te}}if(so(D).length>0){const Te=new URLSearchParams({limit:"100",journal_order:"1",peer_journal_source:"1",source_read:"payload",expected_journal_generation:ae});return{kind:"payload",path:`/v1/desktop/sessions/${G}/history`,query:Te}}return{kind:"none",path:`/v1/desktop/sessions/${G}/history`,query:new URLSearchParams}},read:async(D,he)=>{ue=j.current.transcript,An.current=se(ue);const ae=v(),Ee=p.current;if(he==="lookup"||he==="payload"){const Te=j.current.transcript.journalGeneration,sn=await xe({op:"sessions.history",sessionId:G,limit:100,journalOrder:!0,orderIds:D,peerJournalSource:!0,sourceRead:he==="payload"?"payload":"metadata",...typeof Te=="string"&&Te.length>0?{expectedJournalGeneration:Te}:{}});return he==="payload"?{kind:"payload",page:sn,peer:ae,streamEpoch:Ee}:{kind:"lookup",page:sn,peer:ae,streamEpoch:Ee}}return{kind:"authority",frame:await xe({op:"sessions.get",sessionId:G,journalOrder:!0,orderIds:D,...ae?{peerJournalSource:!0}:{}}),peer:ae,streamEpoch:Ee}},page:D=>D.kind==="authority"?D.frame.payload.history:D.page,lookupPath:`/v1/desktop/sessions/${G}`,commit:(D,he,ae)=>{D.peer&&p.current!==D.streamEpoch||(A(Ee=>Et.current!==G||Ke(Ee.transcript)!==he||Ee.transcript.viewEpoch!==we?Ee:{...Ee,transcript:D.kind==="authority"?D.peer?il(Ee.transcript,D.frame.payload.history,{authoritative:!0,orderRead:ae}):ev(Ee.transcript,D.frame.payload.history,ae):D.kind==="payload"?tv(Ee.transcript,D.page,ae,he):il(Ee.transcript,D.page,{authoritative:!1})}),me(D))}}).then(D=>{Le=D.kind==="complete"?D.transcript:null}).catch(D=>{console.warn("[canonical] source-order reconcile refused",D)}).finally(()=>{As.current=!1;const D=j.current.transcript,he=Le??ue;Le&&Et.current===G&&D.viewEpoch===we&&!D.orderNeedsReconcile&&(An.current=se(he)),(Et.current!==G||D.viewEpoch!==we||Ke(D)!==Ke(he)||D.orderWantedGeneration!==he.orderWantedGeneration||D.orderNeedsReconcile!==he.orderNeedsReconcile||D.orderDemand!==he.orderDemand||JSON.stringify(ut(D))!==JSON.stringify(ut(he)))&&Gu(ae=>ae+1)})},[A,e,a,v,C.transcript,Bo]);const Ir=b.useCallback(async()=>{const T=Cs.current;if(!e||!T)return{kind:"nothing-to-load"};const V=e,se=Cn.current.epoch,pe=()=>Cn.current.epoch===se,G=j.current.transcript.viewEpoch,we=()=>j.current.transcript.viewEpoch===G,Le=await T.load(`${V}#${se}`,{getTranscript:()=>j.current.transcript,readPage:ue=>xe({op:"sessions.history",sessionId:V,beforeId:ue,limit:100,openFrame:c.current,...l.current?{journalOrder:!0,orderIds:ut(j.current.transcript).slice(0,512),...v()?{peerJournalSource:!0}:{}}:{}}),isCurrent:()=>pe()&&we(),commit:ue=>A(me=>{const D=ue(me.transcript);return D===me.transcript?me:{...me,transcript:D}}).transcript,setLoading:ue=>{pe()&&A(me=>me.loadingOlder===ue?me:{...me,loadingOlder:ue})},peerSource:I});return pe()&&(Le.kind==="failed"?A(ue=>ue.olderFailed?ue:{...ue,olderFailed:!0}):Le.kind==="applied"&&A(ue=>ue.olderFailed?{...ue,olderFailed:!1}:ue)),Le},[A,e,v,I]),Go=b.useCallback(async()=>(await Ir()).kind==="applied",[Ir]),Os=b.useRef(!1),Ho=b.useCallback(async(T,V)=>{if(!e||Os.current)return!1;const se=e;Os.current=!0;const pe=Ke(j.current.transcript);try{const G=await xe({op:"sessions.history",sessionId:se,limit:100,openFrame:c.current,...l.current?{journalOrder:!0,orderIds:ut(j.current.transcript).slice(0,512),...v()?{peerJournalSource:!0}:{}}:{}});return Et.current!==se||Ke(j.current.transcript)!==pe||j.current.transcript.viewEpoch!==V?!1:(A(we=>Ke(we.transcript)!==pe?we:{...we,transcript:Yn(we.transcript,G,{keepPaging:!0,peerSource:I()})}),ii(re.current,G.entries),Br(x.current,G.entries),Rv(G.entries,T))}catch{return!1}finally{Os.current=!1}},[A,e,v,I]);b.useEffect(()=>r?E_(r,V=>{A(se=>{const pe=V(se.transcript);return pe===se.transcript?se:{...se,transcript:pe}})}):void 0,[A,r]),b.useEffect(()=>{r&&R_(r,C.transcript)},[r,C.transcript]);const Wo=b.useCallback(()=>{A(T=>({...T,transcript:vv(T.transcript),olderFailed:!1,heldFrontend:null}))},[A]),zo=b.useCallback(()=>{Is.current?.()},[]),Zo=b.useCallback(()=>{xs.current?.()},[]),Vo=b.useCallback(()=>{Ts.current?.()},[]),Ko=b.useCallback((T,V="info")=>{A(se=>({...se,transcript:wv(se.transcript,T,V)}))},[A]),Yo=b.useCallback(T=>{A(V=>({...V,pendingModel:T}))},[A]),Qo=b.useCallback(()=>{A(T=>T.pendingModel===null?T:{...T,pendingModel:null})},[A]);return b.useEffect(()=>{const T=C.pendingModel;if(!T)return;const V=Xs(T);if(!V)return;const se=C.frontend;(Xs(se?.selected_model)===V||Xs(se?.effective_model)===V)&&A(pe=>({...pe,pendingModel:null}))},[A,C.frontend,C.pendingModel]),b.useEffect(()=>{if(!C.pendingModel)return;const T=window.setTimeout(()=>A(V=>({...V,pendingModel:null})),r_);return()=>window.clearTimeout(T)},[A,C.pendingModel]),b.useMemo(()=>({...C,awaitingHydration:t&&!!e&&n&&!C.hydrated,loadOlder:Go,loadOlderDetailed:Ir,refreshTail:Ho,clearView:Wo,addNote:Ko,paintPendingModel:Yo,clearPendingModel:Qo,retry:zo,rehydrate:Vo,reloadFromHistory:Zo}),[C,t,e,n,Go,Ir,Ho,Wo,Ko,Yo,Qo,zo,Vo,Zo])}function vs(e,t){return t===""?e:e===""?t:e===t||e.startsWith(`${t}
35
-
36
- `)?e:`${t}
37
-
38
- ${e}`}const oi={currentInput:"",submittedMessages:[],currentHistoryIndex:null,replies:[],attachments:[]};function Vr(e,t,n){const r=[...e.attachments??[]],s=[],i=[],a=new Set;for(const p of t.attachments){const h=r.find(m=>m.path===p&&!a.has(m.id));if(h){a.add(h.id),i.push(h.id);continue}const g={id:n(),path:p};s.push(g),i.push(g.id)}const l=[...e.replies??[]],c=t.replies.filter(p=>!l.some(h=>h.id===p.id)),d=t.text,u=[...s,...r],f=[...c,...l];return{...e,attachments:u,replies:f,textRevision:(e.textRevision??0)+1,volatilePendingText:e.volatilePendingText===!0||t.volatileText===!0,pendingText:d===""?e.pendingText:vs(e.pendingText??"",d),unredactedChars:Math.max(e.unredactedChars??0,t.unredactedChars??0),returned:{text:d,chipIds:i,replyIds:t.replies.map(p=>f.find(h=>h.id===p.id)?.id).filter(p=>p!==void 0),volatileText:t.volatileText},inFlight:void 0,lateDelivered:void 0}}function O_(e,t){const n=e.lateDeliveredText??e.returned?.text;if(!n||t.includes(n))return!0;const r=Math.max(8,Math.min(24,Math.floor(n.length/3)));for(let s=0;s+r<=n.length;s++)if(t.includes(n.slice(s,s+r)))return!0;return!1}function P_(e){return{text:vs(e.currentInput??"",e.pendingText??""),attachments:(e.attachments??[]).map(t=>t.path),replies:e.replies??[]}}function j_(e,t){if(!e||!t)return!1;const n=P_(e),r=e.attachments??[],s=e.replies??[];return n.text.trim()===t.text.trim()&&r.length===t.chipIds.length&&r.every((i,a)=>i.id===t.chipIds[a])&&s.length===t.replyIds.length&&s.every((i,a)=>i.id===t.replyIds[a])}function M_(e,t=()=>crypto.randomUUID()){const n={};for(const[r,s]of Object.entries(e??{}))n[r]=s.inFlight?Vr(s,s.inFlight,t):s;return n}function D_(e,t){const n=t.text,r=vs(e.currentInput??"",e.pendingText??"");let s=r,i="overlap";n===""?i="draft-only":r.startsWith(n)&&(s=r.slice(n.length).replace(/^\n+/,""),i="draft-only");const a=new Set(t.chipIds),l=new Set(t.replyIds);return{row:{...e,currentInput:s,pendingText:void 0,attachments:(e.attachments??[]).filter(c=>!a.has(c.id)),replies:(e.replies??[]).filter(c=>!l.has(c.id)),unredactedChars:n===""?e.unredactedChars??0:0},box:i}}const We=_r()(ms((e,t)=>({inputByConversation:{},addReply:(n,r)=>{const s=t().inputByConversation[n]||{currentInput:"",submittedMessages:[],currentHistoryIndex:null,replies:[],attachments:[]},i=Array.isArray(s.replies)?s.replies:[];e({inputByConversation:{...t().inputByConversation,[n]:{...s,replies:[...i,r]}}})},removeReply:(n,r)=>{const s=t().inputByConversation[n];s&&e({inputByConversation:{...t().inputByConversation,[n]:{...s,replies:s.replies.filter(i=>i.id!==r)}}})},clearReplies:n=>{const r=t().inputByConversation[n];r&&e({inputByConversation:{...t().inputByConversation,[n]:{...r,replies:[]}}})},addAttachment:(n,r)=>{const s=t().inputByConversation[n]||{currentInput:"",submittedMessages:[],currentHistoryIndex:null,replies:[],attachments:[]},i=Array.isArray(s.attachments)?s.attachments:[];e({inputByConversation:{...t().inputByConversation,[n]:{...s,attachments:[...i,r]}}})},removeAttachment:(n,r)=>{const s=t().inputByConversation[n];s&&e({inputByConversation:{...t().inputByConversation,[n]:{...s,attachments:s.attachments.filter(i=>i.id!==r)}}})},clearAttachments:n=>{const r=t().inputByConversation[n];r&&e({inputByConversation:{...t().inputByConversation,[n]:{...r,attachments:[]}}})},setCurrentInput:(n,r,s=0)=>{const i=t().inputByConversation[n]||{currentInput:"",submittedMessages:[],currentHistoryIndex:null,replies:[],attachments:[]};e({inputByConversation:{...t().inputByConversation,[n]:{...i,lateDelivered:i.lateDelivered==="overlap"&&!O_(i,r)?void 0:i.lateDelivered,currentInput:r,unredactedChars:r?s:0}}})},getUnredactedChars:n=>t().inputByConversation[n]?.unredactedChars||0,getCurrentInput:n=>t().inputByConversation[n]?.currentInput||"",addSubmittedMessage:(n,r)=>{const s=t().inputByConversation[n]||{currentInput:"",submittedMessages:[],currentHistoryIndex:null,replies:[],attachments:[]},i=s.submittedMessages[s.submittedMessages.length-1],a=r&&r!==i?[...s.submittedMessages.slice(-19),r]:s.submittedMessages;e({inputByConversation:{...t().inputByConversation,[n]:{...s,submittedMessages:a}}})},getSubmittedMessages:n=>t().inputByConversation[n]?.submittedMessages||[],clearSubmittedMessages:n=>{const r=t().inputByConversation[n];r&&e({inputByConversation:{...t().inputByConversation,[n]:{...r,submittedMessages:[]}}})},getCurrentHistoryIndex:n=>t().inputByConversation[n]?.currentHistoryIndex??null,setCurrentHistoryIndex:(n,r)=>{const s=t().inputByConversation[n]||{currentInput:"",submittedMessages:[],currentHistoryIndex:null,replies:[],attachments:[]},i=s.submittedMessages;let a=null;typeof r=="number"&&i.length>0&&(a=Math.max(0,Math.min(r,i.length-1))),e({inputByConversation:{...t().inputByConversation,[n]:{...s,currentHistoryIndex:a}}})},resetCurrentHistoryIndex:n=>{const r=t().inputByConversation[n];r&&e({inputByConversation:{...t().inputByConversation,[n]:{...r,currentHistoryIndex:null}}})},clearAll:n=>{const{[n]:r,...s}=t().inputByConversation;e({inputByConversation:s})},restoreRow:(n,r)=>{e({inputByConversation:{...t().inputByConversation,[n]:{...r,textRevision:(r.textRevision??0)+1}}})},beginInFlight:(n,r,s=!0)=>{const i=t().inputByConversation[n]??oi,a=new Set(r.attachments.map(d=>d.id)),l=new Set(r.replies.map(d=>d.id)),c=i.currentInput===r.text;e({inputByConversation:{...t().inputByConversation,[n]:{...i,currentInput:c?"":i.currentInput,unredactedChars:c?0:i.unredactedChars,textRevision:c?(i.textRevision??0)+1:i.textRevision,attachments:(i.attachments??[]).filter(d=>!a.has(d.id)),replies:(i.replies??[]).filter(d=>!l.has(d.id)),inFlight:s?{text:r.text,attachments:r.attachments.map(d=>d.path),replies:[...r.replies],unredactedChars:c?i.unredactedChars:0,volatileText:r.volatileText}:i.inFlight,returned:void 0,lateDelivered:void 0}}})},settleInFlight:n=>{const r={...t().inputByConversation};let s=!1;for(const i of n){const a=r[i];!a||!a.inFlight&&!a.returned||(r[i]={...a,inFlight:void 0,returned:void 0},s=!0)}s&&e({inputByConversation:r})},returnInFlight:(n,r)=>{const s={...t().inputByConversation},i=s[n],a=i?.inFlight??s[r]?.inFlight;let l=s[r]??oi;n!==r&&i&&(l=Vr(l,{text:i.currentInput??"",attachments:(i.attachments??[]).map(c=>c.path),replies:i.replies??[],unredactedChars:i.unredactedChars},()=>crypto.randomUUID()),l={...l,returned:s[r]?.returned},delete s[n]),a&&(l=Vr(l,a,()=>crypto.randomUUID())),!(!a&&n===r)&&(s[r]=l,e({inputByConversation:s}))},adoptReturnedText:n=>{const r=t().inputByConversation[n];if(r?.pendingText===void 0)return null;const s=vs(r.currentInput??"",r.pendingText);return e({inputByConversation:{...t().inputByConversation,[n]:{...r,currentInput:s,pendingText:void 0,textRevision:(r.textRevision??0)+1}}}),s},returnPayload:(n,r)=>{const s=t().inputByConversation[n]??oi;s.inFlight||e({inputByConversation:{...t().inputByConversation,[n]:Vr(s,r,()=>crypto.randomUUID())}})},reconcileDelivered:n=>{const r=t().inputByConversation[n];if(!r)return;const s=f=>(f.currentInput??"")===""&&(f.attachments??[]).length===0&&(f.replies??[]).length===0,i=r.returned!==void 0||r.inFlight!==void 0,a=r.returned?j_(r,r.returned):s(r),l=r.returned?D_(r,r.returned):null,c={...r,currentInput:"",unredactedChars:0,attachments:[],replies:[],pendingText:void 0,returned:void 0,inFlight:void 0,lateDelivered:void 0,lateDeliveredText:void 0,volatilePendingText:void 0,textRevision:(r.textRevision??0)+1},d=(l?.row.currentInput??"")==="",u=l&&!s(l.row)?{...l.row,returned:void 0,inFlight:void 0,volatilePendingText:d?void 0:r.volatilePendingText,lateDelivered:l.box==="overlap"&&d?"draft-only":l.box,lateDeliveredText:l.box==="overlap"&&!d?r.returned?.text:void 0,textRevision:(r.textRevision??0)+1}:{...r,returned:void 0,inFlight:void 0,lateDelivered:i&&r.returned?.text?"overlap":i?"delivered":void 0,lateDeliveredText:i?r.returned?.text:void 0};e({inputByConversation:{...t().inputByConversation,[n]:a||l!==null&&s(l.row)?c:u}})},dismissLateDelivery:n=>{const r=t().inputByConversation[n];r?.lateDelivered&&e({inputByConversation:{...t().inputByConversation,[n]:{...r,lateDelivered:void 0,lateDeliveredText:void 0}}})},clearComposer:n=>{const r=t().inputByConversation[n];r&&e({inputByConversation:{...t().inputByConversation,[n]:{...r,currentInput:"",unredactedChars:0,attachments:[],replies:[],pendingText:void 0,volatilePendingText:void 0,returned:void 0,inFlight:void 0,lateDelivered:void 0,lateDeliveredText:void 0,textRevision:(r.textRevision??0)+1}}})},setComposerText:(n,r)=>{const s=t().inputByConversation[n]||{currentInput:"",submittedMessages:[],currentHistoryIndex:null,replies:[],attachments:[]};e({inputByConversation:{...t().inputByConversation,[n]:{...s,currentInput:r,unredactedChars:s.unredactedChars??0,textRevision:(s.textRevision??0)+1}}})}}),{name:"conversation-input-store",partialize:e=>({inputByConversation:Object.fromEntries(Object.entries(e.inputByConversation).map(([t,n])=>{let r=n;return r.inFlight?.volatileText&&(r={...r,inFlight:{...r.inFlight,text:""}}),r.returned?.volatileText&&(r={...r,returned:{...r.returned,text:""}}),r.volatilePendingText&&(r={...r,pendingText:void 0}),r.volatilePendingText&&(r={...r,lateDeliveredText:void 0}),[t,r]}))}),merge:(e,t)=>({...t,inputByConversation:M_(e?.inputByConversation)})}));function X(e){return typeof e=="string"?e.trim():""}function fn(e){const t=X(e);return t||null}function Ut(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function Wn(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0&&Number.isInteger(e)?e:null}function Ud(e){return typeof e!="number"||!Number.isFinite(e)?0:Math.max(0,Math.floor(e))}function Qt(e,t){return typeof e=="boolean"?e:t}function ji(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function En(e){if(Array.isArray(e))return e.filter(t=>typeof t=="object"&&t!==null);if(typeof e=="object"&&e!==null){const t=e.peers;if(Array.isArray(t))return En(t)}return[]}function N_(e){if(!Pt(e))return;const t=e.state;if(!(t!=="reconnecting"&&t!=="down"))return{state:t,attempts:Ud(e.attempts),last_frame_at:Ut(e.last_frame_at),next_retry_at:Ut(e.next_retry_at),last_error:X(e.last_error)}}function Pt(e){return typeof e=="object"&&e!==null}const L_=["reachable","relay_down","address_unreachable","handshake_refused","not_attempted","no_endpoint","not_a_member"];function $_(e,t){const n=X(e);return L_.includes(n)?n:t?"reachable":"unreachable_legacy"}const U_=["running","not_listening","unknown"];function F_(e){const t=X(e);return U_.includes(t)?t:void 0}function B_(e){if(Array.isArray(e))return e.filter(Pt).map(t=>({endpoint:X(t.endpoint),connected:t.connected===!0,detail:X(t.detail),latency_ms:Ut(t.latency_ms)})).filter(t=>t.endpoint!=="")}function QR(e){const t=new Set,n=[];for(const a of En(e)){const l=X(a.device_id);if(!l||t.has(l)||typeof a.reachable!="boolean")continue;t.add(l);const c=F_(a.remote_relay),d=B_(a.attempts),u=a.reachable?void 0:N_(a.redial);n.push({device_id:l,name:X(a.name),reachable:a.reachable,link_state:$_(a.link_state,a.reachable),...c?{remote_relay:c}:{},...d?{attempts:d}:{},...u?{redial:u}:{},unreachable_reason:fn(a.unreachable_reason??a.reason),last_seen_at:Ut(a.last_seen_at),session_count:Wn(a.session_count),rtt_ms:Ut(a.rtt_ms)})}const r=Pt(e)?e:{},s=X(r.self_device_id),i=ji(r.degraded);return{peers:n,...s?{self_device_id:s}:{},...i.length?{degraded:i}:{}}}function G_(e){const t=X(e.device_id);return t?{device_id:t,name:X(e.name),role:X(e.role),capabilities:ji(e.capabilities),active:Qt(e.active,!0),suspect:Qt(e.suspect,!1),endpoints:ji(e.endpoints),last_seen_at:Ut(e.last_seen_at),reachable:Qt(e.reachable,!0),reason:X(e.reason??e.unreachable_reason),scope:X(e.scope)}:null}function H_(e){const t=X(e.network_id);return t?{network_id:t,name:X(e.name),epoch:Ud(e.epoch),trust:X(e.trust),members:En(e.members).map(G_).filter(n=>n!==null)}:null}function JR(e){const t=Pt(e)?e:{},n=X(t.self_device_id);return{networks:En(t.networks).map(H_).filter(r=>r!==null),...n?{self_device_id:n}:{}}}function W_(e){return e.live_state.trim().toLowerCase()==="busy"}function XR(e){const t=[],n=new Set,r=Array.isArray(e)?e:e?.sessions??e;for(const s of En(r)){const i=X(s.id);if(!i||n.has(i))continue;const a=s.locality==="remote"?"remote":X(s.locality)==="local"?"local":null;if(!a)continue;n.add(i);const l=Pt(s.status)?{code:X(s.status.code),label:X(s.status.label)}:null,c=Pt(s.binding)?{agent:fn(s.binding.agent),team:fn(s.binding.team)}:null,d=Pt(s.opened_by)?{agent:fn(s.opened_by.agent),label:fn(s.opened_by.label),session:fn(s.opened_by.session)}:null;t.push({id:i,name:X(s.name),mtime:Ut(s.mtime)??0,locality:a,owner_device:X(s.owner_device),owner_device_name:X(s.owner_device_name),reachable:Qt(s.reachable,!0),unreachable_reason:X(s.unreachable_reason),live_state:X(s.live_state),archived:Qt(s.archived,!1),created_at:Ut(s.created_at),pinned:Qt(s.pinned,!1),...typeof s.active=="boolean"?{active:s.active}:{},waiting_on:Wn(s.waiting_on),jobs_running:Wn(s.jobs_running),subagents_running:Wn(s.subagents_running),subagents_queued:Wn(s.subagents_queued),...l?{status:l}:{},...c?{binding:c}:{},...d?{opened_by:d}:{}})}return t}function qR(e){const{id:t,name:n,mtime:r,...s}=e;return{...s,session_id:t,title:n,updated_at:r}}function eE(e){if(!Pt(e))return null;const t=X(e.session_id);if(!t)return null;const n=e.mode==="keep"?"keep":"move",r=X(e.new_session_id)||(n==="move"?t:"");return r?{locality:e.locality==="local"?"local":"remote",owner_device:X(e.owner_device),source_retired:Qt(e.source_retired,n==="move"),session_id:t,new_session_id:r,mode:n,phases:En(e.phases).map(s=>({phase:X(s.phase),peer:X(s.peer),progress:typeof s.progress=="number"?s.progress:0}))}:null}const z_=new Set(["relay_unavailable","deadline_exceeded","peer_unreachable"]);function tE(e){const t=e,n=X(t?.code)||"move_refused",r=typeof t?.status=="number"?t.status:null;return{code:n,sentence:X(t?.message)||"the move was refused",status:r,unconfirmed:r===503||z_.has(n)}}function nE(e){const t=X(e.name);return t||le("ui.mesh.mesh_types.device_suffix",{suffix:X(e.device_id).slice(-6)})}function rE(e){const t=X(e.name);return t||le("ui.mesh.mesh_types.network_suffix",{suffix:X(e.network_id).slice(-6)})}const Z_=["the listing budget ran out before this member was probed","the relay is not running, so no device was asked"];function V_(e){const t=e.trim();return t!==""&&Z_.includes(t)}function Fd(e){return e.state==="self"?"self":e.reachable?"reached":e.state==="relay_down"?"relay-down":e.state==="handshake_refused"?"handshake-refused":e.linkState==="address_unreachable"?"address-unreachable":e.linkState==="no_endpoint"?"no-endpoint":e.linkState==="not_a_member"?"not-a-member":e.linkState==="not_attempted"||V_(e.reason)?"not-attempted":e.reason?"unanswered":e.sessionCount===null?"unknown":"unanswered"}const sE=()=>le("ui.mesh.mesh_graph.identity_suspect");function Bd(e){switch(e){case"self":return le("ui.mesh.mesh_drop.this_device");case"reached":return le("ui.mesh.mesh_reach.reached");case"relay-down":return le("ui.mesh.mesh_reach.relay_not_running");case"handshake-refused":return le("ui.mesh.mesh_reach.handshake_refused");case"address-unreachable":return le("ui.mesh.mesh_reach.address_unreachable");case"no-endpoint":return le("ui.mesh.mesh_reach.no_endpoint");case"not-a-member":return le("ui.mesh.mesh_reach.not_a_member");case"unanswered":return le("ui.mesh.mesh_reach.no_answer");case"not-attempted":return le("ui.mesh.mesh_reach.not_asked");default:return le("ui.mesh.mesh_reach.unknown")}}function iE(e){const t=Fd(e),n=Bd(t);return e.reason?`${n} — ${e.reason}`:n}const oE={self:"text-accent",reached:"text-ink-muted","relay-down":"text-warning","handshake-refused":"text-warning","address-unreachable":"text-warning","no-endpoint":"text-ink-dim","not-a-member":"text-ink-dim",unanswered:"text-warning","not-attempted":"text-ink-dim",unknown:"text-ink-dim"},aE={self:"●",reached:"●","relay-down":"◍","handshake-refused":"◒","address-unreachable":"◔","no-endpoint":"⊘","not-a-member":"◓",unanswered:"◉","not-attempted":"○",unknown:"◌"};function lE(e){const t=e.trim();switch(t){case"ok":return le("ui.mesh.mesh_reach.attempt_answered");case"connect_failed:ConnectionRefusedError":return le("ui.mesh.mesh_reach.attempt_nothing_listening");case"connect_failed:TimeoutError":case"no_answer":return le("ui.mesh.mesh_reach.attempt_no_answer");case"not_attempted":return le("ui.mesh.mesh_reach.attempt_not_tried");case"bad_endpoint":return le("ui.mesh.mesh_reach.attempt_bad_address");default:return t.startsWith("connect_failed:")?le("ui.mesh.mesh_reach.attempt_could_not_connect"):t}}function cE(e){return e.reachable?"":e.remoteRelay==="not_listening"?le("ui.mesh.mesh_reach.peer_relay_not_running"):e.linkState==="handshake_refused"?le("ui.mesh.mesh_reach.peer_closed_handshake"):""}function dE(e,t){return e.sessionCount===null?{activity:null,source:"none"}:{activity:t.some(r=>W_(r))?"working":"idle",source:"derived"}}function K_(e,t){const n={...e};for(const[r,s]of Object.entries(t))(!n[r]||s.at>=n[r].at)&&(n[r]=s);return n}function Y_(e,t){if(e.locality!=="remote"||typeof e.owner_device!="string")return e;const n=t[e.owner_device];if(!n)return e.peer_reach||e.link_down?{...e,peer_reach:"unknown",link_down:!1,link_reconnecting:!1,reachable:!1,link_down_reason:null,last_seen_at:null}:e;const r=Fd({state:"unreachable",reachable:n.reachable,reason:n.reason??"",sessionCount:n.session_count??null}),s=r==="unanswered",i=s&&n.redial_state==="reconnecting";return e.peer_reach===r&&e.link_down===s&&(e.link_reconnecting??!1)===i&&e.reachable===n.reachable&&e.last_seen_at===n.last_seen_at&&e.link_down_reason===n.reason?e:{...e,reachable:n.reachable,link_down:s,link_reconnecting:i,peer_reach:r,last_seen_at:n.last_seen_at,link_down_reason:n.reason}}function uE(e,t=Date.now()/1e3){const n=typeof e.last_seen_at=="number"?e.last_seen_at:null;return e.link_reconnecting===!0?`${le("ui.chat.canonical.transcript.reconnecting")} · ${Mi(n,t)}`:le("ui.presence.link_down_last_seen",{age:Mi(n,t)})}function Mi(e,t){if(e===null)return le("ui.presence.unknown");const n=Math.max(0,Math.floor(t-e));return n<60?le("ui.presence.just_now"):n<3600?le("ui.presence.minutes_ago",{count:Math.floor(n/60)}):n<86400?le("ui.presence.hours_ago",{count:Math.floor(n/3600)}):le("ui.presence.days_ago",{count:Math.floor(n/86400)})}function fE(e,t){if(e.link_reconnecting===!0)return le("ui.chat.canonical.transcript.reconnecting");const n=typeof e.last_seen_at=="number"?e.last_seen_at:null;return le("ui.presence.link_down_compact",{age:Mi(n,t)})}function Q_(e,t,n,r){if(r<=n)return{facts:e,watermark:n,removed:[]};const s=Object.fromEntries(Object.entries(e).filter(([,i])=>i.at>r));for(const[i,a]of Object.entries(t))(!s[i]||a.at>=s[i].at)&&(s[i]=a);return{facts:s,watermark:r,removed:Object.keys(e).filter(i=>!s[i])}}function pE(e){return e.peer_reach==="not-attempted"||e.peer_reach==="unknown"?Bd(e.peer_reach):null}const Gr=(e,t)=>e instanceof ye?no(e,t):e instanceof Error?e.message:t,_s="session_unvalidated",J_="This chat is not ready for messages yet, so the message was not sent. Sending works once it is ready.",cs="leading_slash_message",Gd="A message can't start with / — that is a command. Move it below your text, or send it on its own.";function X_(e,t){return e instanceof ye&&e.status===422&&e.code===void 0&&t.trimStart().startsWith("/")}const Hd="attachment_read_failed",Wd="store_out_of_space",zd="store_unavailable";function Cl(e){return e===Wd||e===zd}const q_="answer_not_sent",Zd="aside_not_answered",Vd="aside_still_answering";function zn(e){return e===cs||e===Hd||e===Wd||e===zd||e===q_||e===Zd||e===Vd||e===_s||e===ps}function eb(e){return e instanceof ye&&e.status===409&&ko(e)===void 0}function Kd(e,t=!1){return rb(e)||eb(e)&&!t?"not_sent":e instanceof ye&&e.status===404?"gone":"unknown"}function ko(e){if(e instanceof ye||e instanceof $t)return e.code;if(e&&typeof e=="object"&&"code"in e){const t=e.code;if(typeof t=="string")return t}}const Ue={unconfirmed:"Couldn't confirm your message was sent. Sending it again is safe.",unreachable:"Couldn't reach Local Operator. Your message may not have been sent.",busy:"The agent is busy, so your message wasn't sent.",asideNotAnswered:"The aside was not answered.",asideStillAnswering:"The aside is still answering. Press Enter again once the answer is in.",retiring:"Local Operator is restarting, so your message wasn't sent. Try again in a moment.",notReady:"This chat isn't ready yet, so your message wasn't sent.",generic:"Your message wasn't sent.",gone:"This conversation no longer exists, so your message wasn't sent.",sendLock:"Your last message is still sending.",queuedSend:"Your message will send as soon as the conversation is ready.",gateLock:"Answer the question above first.",lateDelivery:"Your earlier message was delivered.",lateDeliveryDraft:"Your earlier message was delivered. What's here now hasn't been sent.",lateDeliveryOverlap:"Your earlier message was delivered. Its words are still in the box, so sending again would repeat them."};function hE(e){return e?Ue.gateLock:Ue.sendLock}const mE="Retry",gE="Clear";function tb(e,t,n=!1){const r=Kd(e,n),s=t??ko(e),i=no(e,Ue.generic);return r==="gone"?{message:Ue.gone,retry:!1,code:s}:r==="not_sent"?s===ps?{message:Ue.busy,retry:!0,code:s}:s===yc?{message:Ue.retiring,retry:!0,code:s}:s===_s?{message:Ue.notReady,retry:!zn(s),code:s}:s===Zd?{message:Ue.asideNotAnswered,retry:!1,code:s}:s===Vd?{message:Ue.asideStillAnswering,retry:!1,code:s}:s===cs?{message:Gd,retry:!1,code:s}:{message:i,retry:!1,code:s}:s===Je.transportFailed?{message:Ue.unreachable,retry:!0,code:s}:hs(s)?{message:eo[s],retry:!1,code:s}:s===to?{message:Ue.unconfirmed,retry:!zn(s),code:s}:s===nh.runtimeUnreachable?{message:Ue.unconfirmed,retry:!0,code:s}:s?{message:i,retry:!zn(s),code:s}:{message:Ue.unconfirmed,retry:!zn(s),code:s}}function Di(e){return e.trim()}function yE(e,t){if(t.length===0)return Di(e);const n=t.map(r=>`<reply-to>${r.text}</reply-to>`).join(`
39
- `);return Di(`${n}
40
- ${e}`)}function Ni(e,t){return e.sessionId===t||e.key===t||e.key===`send:${t}`}function nb(e,t,n,r){if(t.peer!==void 0||n?.locality==="remote"||r?.locality==="remote")return!1;const s=t.submittedAt;if(s===void 0||s<=0)return!1;const i=e[0]?.ts;return i===void 0||i<=0?!1:i*1e3<=s}function vE(e,t,n){if(e)return e;if(!t)return null;const r=Object.entries(n).filter(([,i])=>Ni(i,t));return(r.find(([,i])=>i.submittedText!==void 0||i.undelivered!==void 0||i.error!==void 0||i.admissionAttempted===!0||i.pending===!0)??r[0])?.[0]??`send:${t}`}function Ro(e,t){return t??e??void 0}function Yd(e,t,n){return e?t??void 0:n??void 0}function _E(e,t,n){return Ro(e,Yd(e,t,n))}function rb(e){return e instanceof ye?e.status===413||e.status===422?!0:e.code===ps||e.code===yc||e.code===Je.noCredential||Cl(e.code):e instanceof $t&&(e.code===_s||e.code===Hd||Cl(e.code))}function wr(e,t){const n=e.startsWith("send:")?e.slice(5):null;return Ro(e.startsWith("draft:")?e:null,t??n)??e}function sb(e,t){const n=We.getState(),r=wr(e,t),s=r===""||r===e?[e]:[e,r];n.settleInFlight(s),r!==""&&r!==e&&n.inputByConversation[e]&&n.returnInFlight(e,r)}function bE(e,t){if(!t||t.migratedHeld||t.pending||!(t.heldClaimCode!==void 0||t.errorRetry===void 0&&t.submittedRendered===void 0)||!t.admissionAttempted||t.submittedText===void 0)return!1;const r=wr(e,t.sessionId);return We.getState().returnPayload(r,{text:t.submittedText,attachments:t.submittedAttachments??[],replies:[]}),Qe.getState().updateDraft(e,{migratedHeld:!0,submittedText:void 0,submittedAttachments:void 0,error:Ue.unconfirmed,errorCode:t.heldClaimCode,errorRetry:!zn(t.heldClaimCode),heldClaimCode:void 0}),!0}function wE(e,t){if(!t)return!1;const n=t.undelivered,r=t.submittedText,s=r!==void 0&&t.error!==void 0&&t.errorRetry!==void 0;if(!n&&!s)return!1;const i=wr(e,t.sessionId);if(n){if(Tl(i,n.recordId))return!1;const l=$d(i,n.recordId);return l!=="unseen"?(l==="owner"&&Qe.getState().retractUndelivered(e,n.recordId),!1):(Ai(i,{id:n.recordId,text:n.text,images:[],settled:!0,submittedAt:t.submittedAt}),!0)}if(r===void 0)return!1;const a=t.admissionRequestId;return Tl(i,a)?!1:(Ai(i,{id:a,text:t.submittedRendered??r,submittedAt:t.submittedAt,images:(t.submittedImages??[]).map((l,c)=>({id:`${a}:${c}`,data:l.data_b64,attachment:null,mimeType:l.mime_type}))}),!0)}function Al(e,t,n){T_(wr(e,t),n)}function ib(e,t,n){if(e.submittedText!==t)return!1;const r=e.submittedAttachments??[];return r.length!==n.length?!1:r.every((s,i)=>s===n[i])}function ob(e,t){return!!t&&e===t}const ab=3,lb=5e3,cb=2e3;async function db(e){for(let t=0;;t++)try{return await e()}catch(n){if(t>=ab||!(n instanceof ye)||n.code!==ps)throw n;const r=Math.min(Math.max(0,n.retryAfterMs??cb),lb);await new Promise(s=>setTimeout(s,r))}}async function ub(e){await db(async()=>{await xe(e)})}async function SE(e,t,n,r,s){const i=Qe.getState();if(ob(i.validatingSessionId,n))throw new $t(J_,_s);const a=i.drafts[e];if(a?.pending)return null;const l=Di(t.text),c=a?.submittedText!==void 0&&ib(a,l,t.attachments),d=a??{key:e,createRequestId:crypto.randomUUID(),admissionRequestId:crypto.randomUUID()},u=c?a?.submittedImages??t.images:t.images,f=c?a?.submittedMode??t.mode:t.mode,p=c&&a?a.submittedInputMode:t.inputMode,h=c&&a?a.submittedInputPath:t.inputPath,g=a?.submittedText===void 0||c?a?.admissionRequestId??crypto.randomUUID():crypto.randomUUID(),m=Date.now();i.updateDraft(e,{...d,admissionAttempted:c,admissionRequestId:g,submittedRendered:c?a?.submittedRendered:void 0,migratedHeld:a?.migratedHeld,pending:!0,submittedText:l,submittedAttachments:t.attachments,submittedImages:u,submittedMode:f,submittedInputMode:p,submittedInputPath:h,error:void 0,errorCode:void 0,submittedAt:m});const y=Ro(e.startsWith("draft:")?e:null,n??d.sessionId)??null;y&&Ai(y,{id:g,submittedAt:m,text:l,images:u.map((C,J)=>({id:`${g}:${J}`,data:C.data_b64,attachment:null,mimeType:C.mime_type})),onPainted:r});let _=c,v=n??d.sessionId,I=null;try{if(!v){if(I="sessions.create",v=await i.createSession(t.cwd,d.target,d.createRequestId,d.model??null,d.warmId,d.peer)??void 0,!v)throw new $t(Qe.getState().error??"Chat could not start.");i.updateDraft(e,{sessionId:v}),y&&k_(y,v),i.fetchSessions()}const C=c&&a?.submittedRendered!==void 0?a.submittedRendered:s?await s(v)??l:l;return _=!0,i.updateDraft(e,{error:void 0,errorCode:void 0,errorRetry:void 0,admissionAttempted:!0,submittedRendered:C}),v&&S_(v,g,C),I="sessions.message",await ub({op:"sessions.message",sessionId:v,requestId:g,text:C,images:u.length?u:void 0,mode:f,inputMode:p,inputPath:h}),i.finishDraft(e,v),Qe.setState({error:null}),v}catch(C){Qe.setState({error:null});const J=c&&a?.admissionAttempted===!0,j=Kd(C,J),A=I==="sessions.message"&&X_(C,l),S=A?cs:ko(C),U=tb(C,S,J);let Z=!1;const re=v??y??void 0;if(re&&j==="unknown"&&(Z=_&&$d(re,g)==="owner"),i.updateDraft(e,{pending:!1,admissionAttempted:j==="unknown"&&_,errorCode:S,error:U.message,errorRetry:U.retry}),Z)return v?(i.finishDraft(e,v),v):null;const x=wr(e,v??d.sessionId),O=y&&y!==x?[y,x]:[x];throw We.getState().settleInFlight(O),y&&y!==x&&We.getState().returnInFlight(y,x),re&&Pi(re,g),e!==re&&Pi(e,g),A?new ye(422,Gd,C,cs):C}}const Qd=50,Ol="activity",fb=25,pb=500;function hb(e){return e?Qd:pb}function Pl(e,t){return`${e}:${t}`}function mb(e){const t=new Set;for(const n of Object.values(e))for(const r of n.ids)t.add(r);return t}function gb(e){const t=[];for(const[n,r]of Object.entries(e))r.locality==="remote"&&t.push(n);return t}function yb(e,t){const n=new Set;for(const[r,s]of Object.entries(t))s.locality==="remote"&&n.add(r);for(const r of e)r.locality==="remote"&&n.add(r.session_id);return n}function vb(e,t,n){if(t[n]?.locality==="remote")return!0;for(const r of e)if(r.session_id===n&&r.locality==="remote")return!0;return!1}function _b(e){const t=new Set(e.tailIds),n=new Set(e.keepIds??[]),r=new Set(e.page.map(l=>l.session_id)),s=e.sessions.filter(l=>r.has(l.session_id)?!1:e.scopeIds.has(l.session_id)||n.has(l.session_id)?!0:t.has(l.session_id)),i=e.merge(e.sessions,e.page),a=new Set(i.map(l=>l.session_id));for(const l of s)a.has(l.session_id)||(a.add(l.session_id),i.push(l));return{rows:i,tailIds:e.tailIds.filter(l=>a.has(l))}}function bb(e){const t=[...e.previousIds],n=new Set(t);for(const i of e.page)n.has(i.session_id)||(n.add(i.session_id),t.push(i.session_id));const r=[...e.sessions],s=new Map(r.map((i,a)=>[i.session_id,a]));for(const i of e.page){const a=s.get(i.session_id);if(a===void 0){s.set(i.session_id,r.length),r.push(i);continue}r[a]=e.merge(r[a],i)}return{rows:r,ids:t}}function Wt(e,t){return{...e,...t,...Rb(e,t),...Eb(t,e),attention:mn(e?.attention,t.attention,t.session_id)}}const wb=e=>{if(e.attention?.unseen!==!0)return null;const t=e.status?.code;return t==="complete"||t==="error"||t==="interrupted"?t:null},Sb=e=>e.filter(t=>{if(wb(t)===null)return!1;const n=t.attention?.completion_token;return typeof n=="string"&&n.length>0}),jl=(e,t,n)=>{const r=e.findIndex(l=>l.session_id===t);if(r<0)return e;const s=e[r],i=mn(s.attention,n,t);if(i===s.attention)return e;const a=e.slice();return a[r]={...s,attention:i},a},kb=(e,t)=>({sessionId:t,revision:(e?.revision??0)+1});function Rb(e,t){const n=r=>typeof r?.status_revision=="number"&&typeof r?.status_epoch=="string"?{status_revision:r.status_revision,status_epoch:r.status_epoch}:void 0;return n(t)??n(e)??{}}function Eb(e,t){const n=typeof t?.status_epoch=="string"&&t.status_epoch===e.status_epoch,r=t?.status_revision,s=e.status_revision;return t?.status!==void 0&&n&&typeof r=="number"&&typeof s=="number"&&r>s?{status:t?.status,status_revision:t?.status_revision,status_epoch:t?.status_epoch}:{}}function Ib(e,t){const n={};let r=!1;for(const[s,i]of Object.entries(e)){if(i.at<t){r=!0;continue}n[s]=i}return r?n:e}function ai(e,t){const n={...e.archiveFacts};delete n[t];const r={...e.placementFacts};delete r[t];const s=e.answerSeq+1;return{sessions:e.sessions.filter(i=>i.session_id!==t),archiveFacts:n,placementFacts:r,answerSeq:s,forgotten:{...e.forgotten,[t]:{at:s,title:e.sessions.find(i=>i.session_id===t)?.title??void 0}},deleteCandidate:e.deleteCandidate===t?null:e.deleteCandidate}}function Jd(e){return{...e,sessionId:void 0,pending:!1,error:void 0,errorCode:void 0,errorRetry:void 0,submittedText:void 0,submittedRendered:void 0,submittedAttachments:void 0,submittedImages:void 0,submittedMode:void 0,submittedInputMode:void 0,submittedInputPath:void 0,submittedAt:void 0,admissionAttempted:void 0,undelivered:void 0,warmId:void 0,migratedHeld:void 0,createRequestId:crypto.randomUUID(),admissionRequestId:crypto.randomUUID()}}function Xd(e){const t=e.submittedText??e.undelivered?.text,n=e.submittedAttachments??e.undelivered?.attachments??[];return t===void 0&&n.length===0?null:{text:t??"",attachments:[...n]}}function qd(e,t,n){const r=We.getState();if(t&&t!==e){r.adoptReturnedText(t);const s=We.getState().inputByConversation[t];s&&s.inFlight===void 0&&((s.currentInput??"")!==""||(s.attachments?.length??0)>0)&&r.returnInFlight(t,e)}n&&r.returnPayload(e,{text:n.text,attachments:n.attachments,replies:[]})}function xb(e,t){let n=null;const r=[];for(const[s,i]of Object.entries(e))!i.sessionId||t[i.sessionId]===void 0||(n??={...e},n[s]=Jd(i),r.push({key:s,sessionId:i.sessionId,payload:Xd(i)}));return{drafts:n??e,restored:r}}function eu(e){return e.map(({id:t,name:n,mtime:r,...s})=>({...s,session_id:t,title:n,updated_at:r}))}function Ml(e,t){return eu(e).filter(n=>t[n.session_id]===void 0)}function li(e){return typeof e=="string"&&e.length>0?e:null}function Tb(e){if(e===null||typeof e!="object")return null;const t=e,n=l=>typeof l=="number"&&Number.isFinite(l)&&l>=0?Math.floor(l):null,r=n(t.total),s=n(t.active),i=n(t.unbound);if(r===null||s===null||i===null||!Array.isArray(t.scopes))return null;const a=[];for(const l of t.scopes){if(l===null||typeof l!="object")return null;const c=l;if(c.kind!=="team"&&c.kind!=="agent"||typeof c.name!="string"||c.name.length===0)continue;const d=n(c.total),u=n(c.active);d===null||u===null||a.push({kind:c.kind,name:c.name,total:d,active:u})}return{total:r,active:s,unbound:i,scopes:a}}function Cb(e,t){const n=new Map(e.map(r=>[r.session_id,r]));return[...new Map(t.map(r=>[r.session_id,Wt(n.get(r.session_id),r)])).values()]}let ci=0,dn=null;function Ab(e,t,n){const r=dn;if(r)return r.invalidated=!0,r.limit=e,r.withCounts=t,r.promise;const s={limit:e,withCounts:t,invalidated:!1,promise:null};return dn=s,s.promise=(async()=>{try{for(;;){s.invalidated=!1;let i;try{i=await n(s.limit,s.withCounts)}catch(a){if(s.invalidated)continue;throw a}if(!s.invalidated)return dn===s&&(dn=null),i}}finally{dn===s&&(dn=null)}})(),s.promise}function tu(){try{const e=window.api?.desktop;return e?e.initialSession?{kind:"session",sessionId:e.initialSession}:e.initialCatalogue?{kind:"catalogue"}:{kind:"restore"}:{kind:"restore"}}catch{return{kind:"restore"}}}function Ob(){const e=tu();return e.kind==="session"?e.sessionId:null}function Pb(e){if(e.activeSessionId||e.activeDraftKey)return null;const t=`draft:${crypto.randomUUID()}`;return{activeDraftKey:t,drafts:{...e.drafts,[t]:{key:t,createRequestId:crypto.randomUUID(),admissionRequestId:crypto.randomUUID()}}}}function jb(e,t){const n={...t,...e},{drafts:r,restored:s}=xb(n.drafts,n.forgotten),i=r===n.drafts?n:{...n,drafts:r};for(const c of s)qd(c.key,c.sessionId,c.payload);const a=tu();if(a.kind==="session")return{...i,activeSessionId:a.sessionId};if(a.kind==="catalogue")return{...i,activeSessionId:null};const l=Pb(i);return l?{...i,...l}:i}const Qe=_r()(ms((e,t)=>({sessions:[],cataloguePageable:!1,catalogueActivityHead:!1,draftWarmable:!1,activeSessionId:Ob(),activeDraftKey:null,drafts:{},validatingSessionId:null,pinFailure:null,pinFacts:{},answerSeq:0,readAckRearm:null,readAckNotice:null,loading:!1,truncated:!1,head:{pageIds:[],tailIds:[],nextCursor:null,tailCursor:null,tailStarted:!1,complete:!1,loading:!1,error:null,at:0},scopes:{},counts:null,statusUnavailable:[],archiveFacts:{},placementFacts:{},peerDeviceFacts:{},peerDeviceSnapshotAt:0,forgotten:{},stoppedTurns:{},archiveFailure:null,archiveUndo:null,draftsUndo:null,bulkReadDeferral:null,stagedByDiscard:null,deleteCandidate:null,archiveCandidate:null,error:null,cwd:"~",setCwd:n=>e(r=>{const s=Object.entries(r.drafts);return s.some(([,i])=>!i.sessionId)?{cwd:n,drafts:Object.fromEntries(s.map(([i,a])=>a.sessionId?[i,a]:[i,{...a,warmId:void 0,draftRequestId:crypto.randomUUID()}]))}:{cwd:n}}),fetchSessions:async(n=hb(t().cataloguePageable),r=!1)=>{const s=++ci,i=t().answerSeq+1;e({answerSeq:i}),e({loading:!0,error:null});try{const a=await Ab(n,r,(c,d)=>xe({op:"sessions.list",limit:c,include_archived:!0,...d?{with_counts:!0}:{},...t().catalogueActivityHead?{sort:Ol}:{}}));if(s!==ci)return;const l=eu(a.sessions);e(c=>{const d={...c.pinFacts};for(const[S,U]of Object.entries(d))U.at>=i||delete d[S];const u=new Set(l.map(S=>S.session_id));let f=!1;const p={...c.forgotten};for(const[S,U]of Object.entries(p))U.at<i&&u.has(S)&&(delete p[S],f=!0);const h=f?p:c.forgotten,g=l.filter(S=>h[S.session_id]===void 0);let m=null;for(const S of g){const U=c.placementFacts[S.session_id];if(U===void 0||U.at>=i)continue;const Z=S.locality==="remote"?"remote":S.locality==="local"?"local":null;Z!==null&&(m??={...c.placementFacts},m[S.session_id]={locality:Z,owner_device:typeof S.owner_device=="string"?S.owner_device:"",at:c.answerSeq+1})}const y=li(a.next_cursor),_=y===null&&a.truncated!==!0,v=g.map(S=>S.session_id),I=c.sessions.filter(S=>h[S.session_id]===void 0&&(c.pinFacts[S.session_id]?.at??-1)>=i),C=_b({sessions:c.sessions,scopeIds:mb(c.scopes),keepIds:[...c.activeSessionId===null?[]:[c.activeSessionId],...gb(c.placementFacts)],tailIds:_?[]:c.head.tailIds,page:g,merge:Cb});let J=C.rows;for(const S of I){const U=c.pinFacts[S.session_id],Z=J.findIndex(re=>re.session_id===S.session_id);Z===-1?J=[...J,{...S,pinned:U.pinned}]:J[Z]={...J[Z],pinned:U.pinned}}const j=Ib(c.archiveFacts,i),A=Tb(a.counts);return{sessions:J,pinFacts:d,archiveFacts:j,...m===null?{}:{placementFacts:m,answerSeq:c.answerSeq+1},forgotten:h,loading:!1,truncated:a.truncated===!0,head:{pageIds:v,tailIds:C.tailIds,nextCursor:y,tailCursor:_?null:c.head.tailStarted?c.head.tailCursor:y,tailStarted:c.head.tailStarted,complete:_,loading:!1,error:null,at:i},...A===null?{}:{counts:A},statusUnavailable:Array.isArray(a.degraded)?a.degraded.filter(S=>typeof S=="string"):[]}})}catch(a){s===ci&&e({loading:!1,error:Gr(a,"Chats could not refresh. Retry to reconnect.")})}},fetchCatalogueTail:async()=>{const n=t().head,r=n.tailCursor;if(!(r===null||n.loading)){e(s=>({head:{...s.head,loading:!0,error:null,tailStarted:!0,tailCursor:r}}));try{const s=await xe({op:"sessions.list",limit:Qd,include_archived:!0,cursor:r,...t().catalogueActivityHead?{sort:Ol}:{}}),i=Ml(s.sessions,t().forgotten);e(a=>{const l=new Map(a.sessions.map((f,p)=>[f.session_id,p])),c=[...a.sessions],d=[];for(const f of i){const p=l.get(f.session_id);if(p===void 0){l.set(f.session_id,c.length),c.push(f),d.push(f.session_id);continue}c[p]=Wt(c[p],f)}const u=li(s.next_cursor);return{sessions:c,head:{...a.head,tailIds:[...a.head.tailIds,...d],tailCursor:u,complete:u===null,loading:!1,error:null}}})}catch(s){e(i=>({head:{...i.head,loading:!1,error:Gr(s,"Could not load more chats.")}}))}}},fetchScopePage:async(n,r,s=null,i=fb)=>{const a=Pl(n,r);if(t().scopes[a]?.loading)return;const l=t().answerSeq+1;e({answerSeq:l}),e(c=>({scopes:{...c.scopes,[a]:{ids:c.scopes[a]?.ids??[],nextCursor:c.scopes[a]?.nextCursor??null,loading:!0,error:null,at:l}}}));try{const c=await xe({op:"sessions.list",limit:i,include_archived:!1,scope_kind:n,scope_name:r,...s===null?{}:{cursor:s}}),d=Ml(c.sessions,t().forgotten);e(u=>{const f=u.scopes[a];if(f===void 0||f.at!==l)return{};const p=s!==null&&c.cursor_missing!==!0,h=bb({sessions:u.sessions,previousIds:p?f.ids:[],page:d,merge:Wt}),g=li(c.next_cursor);return{sessions:h.rows,scopes:{...u.scopes,[a]:{ids:h.ids,nextCursor:g,loading:!1,error:null,at:l}}}})}catch(c){e(d=>{const u=d.scopes[a];return u===void 0||u.at!==l?{}:{scopes:{...d.scopes,[a]:{...u,loading:!1,error:Gr(c,"Could not load this group's chats.")}}}})}},clearScope:(n,r)=>{const s=Pl(n,r);e(i=>{const a=i.scopes[s];if(a===void 0)return{};const l={...i.scopes};delete l[s];const c=i.activeSessionId,d=new Set(a.ids),u=new Set(i.head.pageIds),f=i.sessions.filter(p=>!d.has(p.session_id)||u.has(p.session_id)||c!==null&&p.session_id===c);return{scopes:l,sessions:f}})},setCataloguePageable:n=>{t().cataloguePageable!==n&&e({cataloguePageable:n})},setCatalogueActivityHead:n=>{t().catalogueActivityHead!==n&&e({catalogueActivityHead:n})},setDraftWarmable:n=>{if(t().draftWarmable===n||(e({draftWarmable:n}),!n))return;const r=t().activeDraftKey,s=r?t().drafts[r]:void 0;if(!r||!s||s.sessionId||s.warmId)return;We.getState().inputByConversation[r]?.currentInput&&t().ensureDraftWarm(r)},setArchiveUndo:n=>{e({archiveUndo:n})},setDraftsUndo:n=>{e({draftsUndo:n})},raiseBulkReadDeferral:n=>{e(r=>({bulkReadDeferral:{count:n,at:r.answerSeq+1}}))},clearBulkReadDeferral:()=>{e({bulkReadDeferral:null})},setStagedByDiscard:n=>{e({stagedByDiscard:n})},restoreDraftsUndo:()=>e(n=>{const r=n.draftsUndo;if(!r)return{};const s={...n.drafts};for(const[a,l]of Object.entries(r.drafts))a in s||(s[a]=l);const i=We.getState();for(const[a,l]of Object.entries(r.composer)){const c=i.inputByConversation[a];(c?.currentInput??"").length>0||(c?.pendingText??null)!==null||i.restoreRow(a,l)}return{drafts:s,draftsUndo:null}}),clearArchiveFailure:()=>{e({archiveFailure:null})},setSessionArchived:async(n,r,s)=>{const i=t().answerSeq+1,a=t().archiveFacts[n]??null,l=s??t().sessions.find(c=>c.session_id===n)?.title;e(c=>({answerSeq:i,archiveFacts:{...c.archiveFacts,[n]:{archived:r,at:i,answered:!1}}}));try{return await xe({op:"sessions.archive",sessionId:n,archived:r}),e(c=>{const u=c.archiveFacts[n]?.at!==i;return{archiveFacts:u?c.archiveFacts:{...c.archiveFacts,[n]:{archived:r,at:i,answered:!0}},archiveUndo:u?c.archiveUndo:r?{sessionId:n,title:l??void 0,archived:!0,at:i}:null,archiveFailure:c.archiveFailure?.sessionId===n?null:c.archiveFailure}}),!0}catch(c){return e(d=>{const u=d.archiveFacts[n]?.at!==i,f={...d.archiveFacts};return u||(a?.answered===!0?f[n]=a:(delete f[n],a!==null&&t().fetchSessions())),{archiveFacts:u?d.archiveFacts:f,answerSeq:d.answerSeq+1,archiveFailure:{sessionId:n,at:d.answerSeq+1,archived:r,title:l||"Untitled chat",detail:c instanceof ye&&c.message?c.message:""}}}),!1}},deleteSession:async n=>{try{return await xe({op:"sessions.delete",sessionId:n,confirmed:!0}),e(r=>ai(r,n)),t().retireDraftsForSession(n),{ok:!0}}catch(r){const s=r instanceof ye?r.status:null,i=r instanceof ye?r.code??null:null;return s===404?(e(a=>ai(a,n)),t().retireDraftsForSession(n),{ok:!0}):{ok:!1,guarded:i==="session_delete_refused",detail:r instanceof ye&&r.message?r.message:"The conversation could not be deleted."}}},requestSessionDelete:n=>e({deleteCandidate:n}),requestArchiveConfirm:n=>e({archiveCandidate:n}),createSession:async(n,r,s=crypto.randomUUID(),i,a,l)=>{try{const c=await xe({op:"sessions.create",requestId:s,cwd:n,...r?{target:r}:{},...i?{model:i}:{},...a?{draftId:a}:{},...l?{peer:l}:{}});return t().upsertSession({session_id:c.session_id,cwd:n,binding:c.binding}),l&&t().settlePlacement(c.session_id,{locality:"remote",owner_device:l}),c.session_id}catch(c){throw e({error:Gr(c,"Chat could not start. Retry with the same draft.")}),c}},setActiveSession:n=>{e({activeSessionId:n,activeDraftKey:null,validatingSessionId:null})},markTurnStopped:(n,r=Date.now())=>e(s=>({stoppedTurns:{...s.stoppedTurns,[n]:r}})),clearTurnStopped:n=>e(r=>{if(!(n in r.stoppedTurns))return r;const{[n]:s,...i}=r.stoppedTurns;return{stoppedTurns:i}}),openDraft:n=>{t().drafts[n]&&e({activeDraftKey:n,activeSessionId:null,validatingSessionId:null,error:null})},confirmSessionLive:n=>{n&&t().validatingSessionId===n&&e({validatingSessionId:null})},confirmSessionMissing:n=>{!n||t().validatingSessionId!==n||(e({validatingSessionId:null,...ai(t(),n)}),t().retireDraftsForSession(n))},rearmReadAck:n=>{e(r=>({readAckRearm:kb(r.readAckRearm,n)}))},publishReadAckNotice:(n,r,s)=>{e(i=>{const a=i.readAckNotice;return a?.sessionId===n&&a.kind===r?i:{readAckNotice:{sessionId:n,kind:r,revision:(a?.revision??0)+1,reason:s}}})},clearReadAckNotice:n=>{e(r=>r.readAckNotice?.sessionId===n?{readAckNotice:null}:r)},applyAttention:(n,r)=>{e(s=>{const i=jl(s.sessions,n,r);return i===s.sessions?s:{...s,sessions:i}})},applyAttentionMany:n=>{e(r=>{let s=r.sessions;for(const i of n){const a=i?.conversation_id;typeof a!="string"||!a.startsWith("session/")||(s=jl(s,a.slice(8),i))}return s===r.sessions?r:{...r,sessions:s}})},markAllRead:async()=>{const n=Sb(t().sessions).map(a=>({sessionId:a.session_id,completionToken:a.attention?.completion_token}));if(n.length===0)return{attempted:0,cleared:0,superseded:0,unknown:0,deferred:0};const r=await xe({op:"attention.seen",items:n});t().applyAttentionMany(r.read);const s=yb(t().sessions,t().placementFacts),i=r.unknown.filter(a=>s.has(a)).length;return{attempted:n.length,cleared:r.read.length,superseded:r.superseded.length,unknown:r.unknown.length,deferred:i}},applySessionStatus:(n,r,s,i)=>{e(a=>{const l=a.sessions.findIndex(p=>p.session_id===n);let c=!1;const d=a.sessions.map(p=>{if(p.status_epoch===void 0&&p.status_revision===void 0||p.status_epoch===i)return p;c=!0;const{status_revision:h,status_epoch:g,...m}=p;return m});if(l<0)return c?{...a,sessions:d}:a;const u=d[l],f=u.status?.code===r.code&&u.status?.label===r.label&&u.status_revision===s&&u.status_epoch===i;return f&&!c?a:(f||(d[l]={...u,status:r,status_revision:s,status_epoch:i}),{...a,sessions:d})})},openSession:async n=>t().activeSessionId===n&&!t().activeDraftKey?(t().rearmReadAck(n),!0):(e({activeSessionId:n,activeDraftKey:null,validatingSessionId:n,error:null}),t().rearmReadAck(n),!0),stageDraft:(n,r=!1)=>{const i=(!r&&n?`draft:${n.kind}:${n.name}`:null)??`draft:${crypto.randomUUID()}`,a=t().drafts[i],l=Yd(t().activeDraftKey,t().activeDraftKey?t().drafts[t().activeDraftKey]?.sessionId:void 0,t().activeSessionId);if(a?.sessionId&&!a.pending&&a.sessionId!==l){const d=t().drafts[`send:${a.sessionId}`]?`draft:${crypto.randomUUID()}`:`send:${a.sessionId}`;e(u=>{const f={...u.drafts};return delete f[i],f[d]={...a,key:d},{drafts:f}})}const c=t().drafts[i];return e(d=>({activeDraftKey:i,validatingSessionId:null,error:null,drafts:{...d.drafts,[i]:c??{key:i,target:n,createRequestId:crypto.randomUUID(),admissionRequestId:crypto.randomUUID()}}})),i},restageDraft:(n,r)=>{const s=t().activeDraftKey,i=t().stageDraft(n),a=We.getState(),l=r??(s?a.getCurrentInput(s):"");return l&&a.setComposerText(i,l),s&&s!==i&&a.setComposerText(s,""),i},updateDraft:(n,r)=>e(s=>{const i=s.drafts[n],a=r.key!==void 0&&r.createRequestId!==void 0&&r.admissionRequestId!==void 0;return!i&&!a?{}:{drafts:{...s.drafts,[n]:{...s.drafts[n],...r}}}}),setDraftPeer:(n,r)=>e(s=>{const i=s.drafts[n];if(!i)return{};const a=r??void 0;return(i.peer??void 0)===a?{}:{drafts:{...s.drafts,[n]:{...i,peer:a,...i.sessionId?{}:{createRequestId:crypto.randomUUID(),warmId:void 0,draftRequestId:crypto.randomUUID()}}}}}),setDraftModel:(n,r)=>e(s=>{const i=s.drafts[n];return i?{drafts:{...s.drafts,[n]:{...i,model:r,...i.sessionId?{}:{createRequestId:crypto.randomUUID(),warmId:void 0,draftRequestId:crypto.randomUUID()}}}}:{}}),ensureDraftWarm:n=>{const r=t();if(!r.draftWarmable)return;const s=r.drafts[n];if(!s||s.sessionId||s.warmId||!r.cwd||s.peer)return;const i=s.draftRequestId??crypto.randomUUID();s.draftRequestId||t().updateDraft(n,{draftRequestId:i}),xe({op:"sessions.draft",requestId:i,cwd:r.cwd,...s.target?{target:s.target}:{},...s.model?{model:s.model}:{}}).then(a=>{const l=t().drafts[n];l&&!l.warmId&&!l.sessionId&&l.draftRequestId===i&&t().updateDraft(n,{warmId:a.draft_id})}).catch(()=>{})},finishDraft:(n,r)=>e(s=>{sb(n,r);const i={...s.drafts};return delete i[n],{drafts:i,...s.activeDraftKey===n?{activeDraftKey:null,activeSessionId:r}:{}}}),retireDraftSession:n=>{const r=t().drafts[n];if(!r?.sessionId||r.pending)return;const s=r.sessionId,i=Xd(r);e(a=>{const l=a.drafts[n];return!l?.sessionId||l.pending?{}:{drafts:{...a.drafts,[n]:Jd(l)}}}),qd(n,s,i)},retireDraftsForSession:n=>{for(const[r,s]of Object.entries(t().drafts))r.startsWith("draft:")&&s.sessionId===n&&t().retireDraftSession(r)},discardDraft:n=>e(r=>{const s={...r.drafts},i=s[n]?.sessionId??(n.startsWith("send:")?n.slice(5):void 0),a=s[n],l=We.getState().inputByConversation[n];Fr(n),i&&i!==n&&Fr(i),delete s[n],We.getState().clearAll(n);const c=a?{at:r.answerSeq+1,keys:[n],drafts:{[n]:a},composer:l?{[n]:l}:{}}:null;return{drafts:s,...c?{answerSeq:c.at,draftsUndo:c}:{},...r.activeDraftKey===n?{activeDraftKey:null}:{}}}),discardDrafts:n=>e(r=>{const s={...r.drafts};let i=!1;const a=[],l={},c={};for(const u of n){if(!(u in s))continue;const f=s[u];if(!f)continue;const p=f.sessionId??(u.startsWith("send:")?u.slice(5):void 0);Fr(u),p&&p!==u&&Fr(p),a.push(u),l[u]=f;const h=We.getState().inputByConversation[u];h&&(c[u]=h),delete s[u],We.getState().clearAll(u),r.activeDraftKey===u&&(i=!0)}if(a.length===0)return{};const d=r.answerSeq+1;return{drafts:s,answerSeq:d,draftsUndo:{at:d,keys:a,drafts:l,composer:c},...i?{activeDraftKey:null}:{}}}),resolveHeldFromServer:(n,r,s)=>e(i=>{const a=r.map(Z=>Z.id),l=Object.entries(i.drafts).filter(([,Z])=>Ni(Z,n)&&Z.undelivered!==void 0&&a.includes(Z.undelivered.recordId));let c=i.drafts;if(l.length>0){c={...c};for(const[Z,re]of l){const x=re.undelivered?.recordId,{undelivered:O,...oe}=re;c[Z]=oe,x!==void 0&&Al(Z,re.sessionId,x)}}const d=Object.entries(c).find(([,Z])=>Ni(Z,n)&&Z.admissionAttempted===!0&&Z.pending!==!0&&Z.submittedText!==void 0);if(!d)return l.length>0?{drafts:c}:{};const[u,f]=d,p=f.admissionRequestId,h=a.includes(p);if(!h&&!s)return l.length>0?{drafts:c}:{};if(!h&&!nb(r,f,i.placementFacts[n],i.sessions.find(Z=>Z.session_id===n)))return l.length>0?{drafts:c}:{};const{admissionAttempted:g,submittedText:m,submittedAttachments:y,submittedImages:_,submittedMode:v,submittedInputMode:I,submittedInputPath:C,heldClaimCode:J,error:j,errorCode:A,errorRetry:S,...U}=f;return h||Pi(n,p),{drafts:{...c,[u]:{...U,...h?{}:{undelivered:{recordId:p,text:m??"",attachments:y??[]}},admissionRequestId:crypto.randomUUID()}}}}),retractUndelivered:(n,r)=>{const s=t().drafts[n];!s||s.undelivered?.recordId!==r||(e(i=>{const{undelivered:a,...l}=i.drafts[n];return{drafts:{...i.drafts,[n]:l}}}),Al(n,s.sessionId,r))},bindSession:(n,r)=>t().setActiveSession(r),beginAnswer:()=>{const n=t().answerSeq+1;return e({answerSeq:n}),n},applySearchAnswer:(n,r)=>e(s=>{let i=null,a=null,l=null;for(const c of r){const d=s.archiveFacts[c.id];if(d!==void 0&&d.at<n&&(l=l??{...s.archiveFacts},delete l[c.id]),!(d!==void 0&&d.at>=n)&&typeof c.archived=="boolean"&&s.sessions.some(f=>f.session_id===c.id&&f.archived!==c.archived)){a=a??s.sessions.map(f=>({...f}));for(const f of a)f.session_id===c.id&&(f.archived=c.archived===!0)}if(typeof c.pinned!="boolean")continue;const u=s.pinFacts[c.id];if(!(u!==void 0&&u.at>=n)&&(u!==void 0&&(i=i??{...s.pinFacts},delete i[c.id]),s.sessions.some(f=>f.session_id===c.id&&f.pinned!==c.pinned))){a=a??s.sessions.map(f=>({...f}));for(const f of a)f.session_id===c.id&&(f.pinned=c.pinned===!0)}}return i===null&&a===null&&l===null?{}:{...i===null?{}:{pinFacts:i},...a===null?{}:{sessions:a},...l===null?{}:{archiveFacts:l}}}),setSessionPin:async(n,r,s)=>{const i=t().sessions.find(p=>p.session_id===n),a=t().pinFacts[n]??null,l=i===void 0?a?.pinned??!1:i.pinned===!0,c=i===void 0&&s!==void 0?{session_id:n,title:s.title||"Untitled chat",updated_at:s.updated_at,pinned:r}:null,d=t().beginAnswer(),u=i?.title??s?.title,f=i?.updated_at??s?.updated_at;e(p=>({sessions:c===null?p.sessions.map(h=>h.session_id===n?{...h,pinned:r}:h):[...p.sessions,c],pinFacts:{...p.pinFacts,[n]:{pinned:r,at:d,title:u,updated_at:f}},pinFailure:null}));try{const p=await xe({op:"sessions.pin",sessionId:n,pinned:r});let h=!1;return e(g=>{const m=g.pinFacts[n];return m===void 0||m.at!==d?{}:(h=!0,{sessions:g.sessions.map(y=>y.session_id===n?{...y,pinned:p.pinned===!0}:y),pinFacts:{...g.pinFacts,[n]:{...m,pinned:p.pinned===!0}}})}),h}catch(p){return e(h=>{const g=h.pinFacts[n];if(g!==void 0&&g.at!==d)return{};const m={...h.pinFacts};return a===null&&i===void 0?delete m[n]:m[n]={pinned:l,at:Math.max(a?.at??0,d),title:a?.title??u,updated_at:a?.updated_at??f},{sessions:h.sessions.map(y=>y.session_id===n?{...y,pinned:l}:y),pinFacts:m,pinFailure:{sessionId:n,pinned:r,title:i?.title||"this chat",detail:no(p,"")}}}),!1}},upsertSession:n=>e(r=>({sessions:r.sessions.some(i=>i.session_id===n.session_id)?r.sessions.map(i=>i.session_id===n.session_id?Wt(i,n):i):[...r.sessions,n]})),settlePlacement:(n,r)=>{const s=t().beginAnswer();e(i=>({sessions:i.sessions.map(a=>a.session_id===n?Wt(a,{session_id:n,locality:r.locality,owner_device:r.owner_device}):a),placementFacts:{...i.placementFacts,[n]:{locality:r.locality,owner_device:r.owner_device,at:s}}}))},settlePeerCatalogue:(n,r,s={},i=void 0)=>{e(a=>{const l={...a.forgotten};for(const S of n)l[S.session_id]?.at<r&&delete l[S.session_id];const c=n.filter(S=>{if(l[S.session_id]||S.locality==="remote"&&a.peerDeviceSnapshotAt>r&&typeof S.owner_device=="string"&&!a.peerDeviceFacts[S.owner_device])return!1;const U=a.placementFacts[S.session_id];return!U||U.at<r}),d={...a.placementFacts},u=new Set;let f=!1,p=0;for(const S of c){const U=S.locality==="remote"?"remote":S.locality==="local"?"local":null;if(U===null)continue;const Z=a.placementFacts[S.session_id];if(Z!==void 0){if(Z.at>=r)continue}else if(U!=="remote")continue;p=p===0?a.answerSeq+1:p,u.add(S.session_id),d[S.session_id]={locality:U,owner_device:U==="remote"&&typeof S.owner_device=="string"?S.owner_device:"",at:p},f=!0}const h=i===void 0?null:Q_(a.peerDeviceFacts,s,a.peerDeviceSnapshotAt,i),g=h?.facts??K_(a.peerDeviceFacts,Object.fromEntries(Object.entries(s).filter(([,S])=>S.at>a.peerDeviceSnapshotAt))),m=c.filter(S=>S.locality==="remote");let y=a.sessions,_=!1;const v=[],I=new Map;for(let S=0;S<y.length;S+=1)I.set(y[S].session_id,S);for(const S of m){const U=I.get(S.session_id);if(U===void 0){v.push(S);continue}y[U]!==S&&(_||(y=y.slice(),_=!0),y[U]=Wt(y[U],S))}v.length>0&&(y=[...y,...v]);for(const S of c){if(S.locality==="remote"||!u.has(S.session_id))continue;const U=I.get(S.session_id);U===void 0||y[U]===S||(_||(y=y.slice(),_=!0),y[U]=Wt(y[U],S))}const C=new Set(c.map(S=>S.session_id)),J=new Set;for(const S of c)S.locality==="remote"&&typeof S.owner_device=="string"&&S.owner_device!==""&&S.reachable!==!1&&J.add(S.owner_device);const j=new Set;for(const S of y){if(S.locality!=="remote"||typeof S.owner_device!="string"||!h?.removed.includes(S.owner_device))continue;const U=a.placementFacts[S.session_id];U&&U.at>=(i??0)||(j.add(S.session_id),delete d[S.session_id])}for(const[S,U]of Object.entries(a.placementFacts))U.locality==="remote"&&(C.has(S)||U.at>=r||g[U.owner_device]?.reachable!==!1&&(U.owner_device===""||!J.has(U.owner_device)||(j.add(S),delete d[S])));j.size>0&&(y=y.filter(S=>!j.has(S.session_id)));const A=y.map(S=>Y_(S,g));return A.some((S,U)=>S!==y[U])&&(y=A,_=!0),!f&&v.length===0&&!_&&j.size===0&&Object.keys(s).length===0&&i===void 0?{}:{sessions:y,placementFacts:d,peerDeviceFacts:g,peerDeviceSnapshotAt:h?.watermark??a.peerDeviceSnapshotAt,forgotten:l,...f?{answerSeq:a.answerSeq+1}:{}}})}}),{name:"canonical-sessions-storage",merge:jb,partialize:e=>({activeSessionId:e.activeSessionId,activeDraftKey:e.activeDraftKey,cwd:e.cwd,forgotten:Object.fromEntries(Object.entries(e.forgotten).map(([t,n])=>[t,{at:0,title:n.title}])),drafts:Object.fromEntries(Object.entries(e.drafts).map(([t,n])=>[t,{...n,pending:!1,warmId:void 0}]))})}));function kE(e,t){return t?e.filter(n=>n.archived!==!0):e}function RE(e,t){let n=!1;const r=e.map(s=>{const i=t[s.session_id];return i===void 0||!i.answered||s.archived===i.archived?s:(n=!0,{...s,archived:i.archived})});return n?r:e}function EE(e,t){return`${t?"Unarchive":"Archive"} “${e}”`}function IE(e,t,n){return e!=="sessions.archive"&&e!=="sessions.unarchive"?!0:n?e==="sessions.unarchive"?t===!0:t!==!0:!1}const xE="This backend cannot archive conversations. Update the backend and try again.",TE="This conversation is already archived. Use /unarchive to restore it.",CE="This conversation is not archived, so there is nothing to restore.",AE="This window cannot tell whether that conversation is archived - it is not among the chats listed here. Find it with search and use its row to restore it.";function OE(e,t,n){return n&&e&&t.trim().length>0}function PE(e,t){return t===e}var Sr=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},tn=typeof window>"u"||"Deno"in globalThis;function Ye(){}function Mb(e,t){return typeof e=="function"?e(t):e}function Li(e){return typeof e=="number"&&e>=0&&e!==1/0}function nu(e,t){return Math.max(e+(t||0)-Date.now(),0)}function _n(e,t){return typeof e=="function"?e(t):e}function it(e,t){return typeof e=="function"?e(t):e}function Dl(e,t){const{type:n="all",exact:r,fetchStatus:s,predicate:i,queryKey:a,stale:l}=e;if(a){if(r){if(t.queryHash!==Eo(a,t.options))return!1}else if(!hr(t.queryKey,a))return!1}if(n!=="all"){const c=t.isActive();if(n==="active"&&!c||n==="inactive"&&c)return!1}return!(typeof l=="boolean"&&t.isStale()!==l||s&&s!==t.state.fetchStatus||i&&!i(t))}function Nl(e,t){const{exact:n,status:r,predicate:s,mutationKey:i}=e;if(i){if(!t.options.mutationKey)return!1;if(n){if(pr(t.options.mutationKey)!==pr(i))return!1}else if(!hr(t.options.mutationKey,i))return!1}return!(r&&t.state.status!==r||s&&!s(t))}function Eo(e,t){return(t?.queryKeyHashFn||pr)(e)}function pr(e){return JSON.stringify(e,(t,n)=>Ui(n)?Object.keys(n).sort().reduce((r,s)=>(r[s]=n[s],r),{}):n)}function hr(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(n=>hr(e[n],t[n])):!1}function ru(e,t){if(e===t)return e;const n=Ll(e)&&Ll(t);if(n||Ui(e)&&Ui(t)){const r=n?e:Object.keys(e),s=r.length,i=n?t:Object.keys(t),a=i.length,l=n?[]:{};let c=0;for(let d=0;d<a;d++){const u=n?d:i[d];(!n&&r.includes(u)||n)&&e[u]===void 0&&t[u]===void 0?(l[u]=void 0,c++):(l[u]=ru(e[u],t[u]),l[u]===e[u]&&e[u]!==void 0&&c++)}return s===a&&c===s?e:l}return t}function $i(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(e[n]!==t[n])return!1;return!0}function Ll(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function Ui(e){if(!$l(e))return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(!$l(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function $l(e){return Object.prototype.toString.call(e)==="[object Object]"}function Db(e){return new Promise(t=>{setTimeout(t,e)})}function Fi(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?ru(e,t):t}function jE(e){return e}function Nb(e,t,n=0){const r=[...e,t];return n&&r.length>n?r.slice(1):r}function Lb(e,t,n=0){const r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var Io=Symbol();function su(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===Io?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}var $b=class extends Sr{#t;#e;#n;constructor(){super(),this.#n=e=>{if(!tn&&window.addEventListener){const t=()=>e();return window.addEventListener("visibilitychange",t,!1),()=>{window.removeEventListener("visibilitychange",t)}}}}onSubscribe(){this.#e||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#e?.(),this.#e=void 0)}setEventListener(e){this.#n=e,this.#e?.(),this.#e=e(t=>{typeof t=="boolean"?this.setFocused(t):this.onFocus()})}setFocused(e){this.#t!==e&&(this.#t=e,this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#t=="boolean"?this.#t:globalThis.document?.visibilityState!=="hidden"}},xo=new $b,Ub=class extends Sr{#t=!0;#e;#n;constructor(){super(),this.#n=e=>{if(!tn&&window.addEventListener){const t=()=>e(!0),n=()=>e(!1);return window.addEventListener("online",t,!1),window.addEventListener("offline",n,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",n)}}}}onSubscribe(){this.#e||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#e?.(),this.#e=void 0)}setEventListener(e){this.#n=e,this.#e?.(),this.#e=e(this.setOnline.bind(this))}setOnline(e){this.#t!==e&&(this.#t=e,this.listeners.forEach(n=>{n(e)}))}isOnline(){return this.#t}},ds=new Ub;function Bi(){let e,t;const n=new Promise((s,i)=>{e=s,t=i});n.status="pending",n.catch(()=>{});function r(s){Object.assign(n,s),delete n.resolve,delete n.reject}return n.resolve=s=>{r({status:"fulfilled",value:s}),e(s)},n.reject=s=>{r({status:"rejected",reason:s}),t(s)},n}function Fb(e){return Math.min(1e3*2**e,3e4)}function iu(e){return(e??"online")==="online"?ds.isOnline():!0}var ou=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function di(e){return e instanceof ou}function au(e){let t=!1,n=0,r=!1,s;const i=Bi(),a=m=>{r||(p(new ou(m)),e.abort?.())},l=()=>{t=!0},c=()=>{t=!1},d=()=>xo.isFocused()&&(e.networkMode==="always"||ds.isOnline())&&e.canRun(),u=()=>iu(e.networkMode)&&e.canRun(),f=m=>{r||(r=!0,e.onSuccess?.(m),s?.(),i.resolve(m))},p=m=>{r||(r=!0,e.onError?.(m),s?.(),i.reject(m))},h=()=>new Promise(m=>{s=y=>{(r||d())&&m(y)},e.onPause?.()}).then(()=>{s=void 0,r||e.onContinue?.()}),g=()=>{if(r)return;let m;const y=n===0?e.initialPromise:void 0;try{m=y??e.fn()}catch(_){m=Promise.reject(_)}Promise.resolve(m).then(f).catch(_=>{if(r)return;const v=e.retry??(tn?0:3),I=e.retryDelay??Fb,C=typeof I=="function"?I(n,_):I,J=v===!0||typeof v=="number"&&n<v||typeof v=="function"&&v(n,_);if(t||!J){p(_);return}n++,e.onFail?.(n,_),Db(C).then(()=>d()?void 0:h()).then(()=>{t?p(_):g()})})};return{promise:i,cancel:a,continue:()=>(s?.(),i),cancelRetry:l,continueRetry:c,canStart:u,start:()=>(u()?g():h().then(g),i)}}var Bb=e=>setTimeout(e,0);function Gb(){let e=[],t=0,n=l=>{l()},r=l=>{l()},s=Bb;const i=l=>{t?e.push(l):s(()=>{n(l)})},a=()=>{const l=e;e=[],l.length&&s(()=>{r(()=>{l.forEach(c=>{n(c)})})})};return{batch:l=>{let c;t++;try{c=l()}finally{t--,t||a()}return c},batchCalls:l=>(...c)=>{i(()=>{l(...c)})},schedule:i,setNotifyFunction:l=>{n=l},setBatchNotifyFunction:l=>{r=l},setScheduler:l=>{s=l}}}var Pe=Gb(),lu=class{#t;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Li(this.gcTime)&&(this.#t=setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(tn?1/0:5*60*1e3))}clearGcTimeout(){this.#t&&(clearTimeout(this.#t),this.#t=void 0)}},Hb=class extends lu{#t;#e;#n;#r;#s;#a;#o;constructor(e){super(),this.#o=!1,this.#a=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#r=e.client,this.#n=this.#r.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=Wb(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get promise(){return this.#s?.promise}setOptions(e){this.options={...this.#a,...e},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#n.remove(this)}setData(e,t){const n=Fi(this.state.data,e,this.options);return this.#i({data:n,type:"success",dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e,t){this.#i({type:"setState",state:e,setStateOptions:t})}cancel(e){const t=this.#s?.promise;return this.#s?.cancel(e),t?t.then(Ye).catch(Ye):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(this.#t)}isActive(){return this.observers.some(e=>it(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Io||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStale(){return this.state.isInvalidated?!0:this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0}isStaleByTime(e=0){return this.state.isInvalidated||this.state.data===void 0||!nu(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(t=>t.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#s?.continue()}onOnline(){this.observers.find(t=>t.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#s?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#n.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#s&&(this.#o?this.#s.cancel({revert:!0}):this.#s.cancelRetry()),this.scheduleGc()),this.#n.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#i({type:"invalidate"})}fetch(e,t){if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#s)return this.#s.continueRetry(),this.#s.promise}if(e&&this.setOptions(e),!this.options.queryFn){const l=this.observers.find(c=>c.options.queryFn);l&&this.setOptions(l.options)}const n=new AbortController,r=l=>{Object.defineProperty(l,"signal",{enumerable:!0,get:()=>(this.#o=!0,n.signal)})},s=()=>{const l=su(this.options,t),c={client:this.#r,queryKey:this.queryKey,meta:this.meta};return r(c),this.#o=!1,this.options.persister?this.options.persister(l,c,this):l(c)},i={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#r,state:this.state,fetchFn:s};r(i),this.options.behavior?.onFetch(i,this),this.#e=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==i.fetchOptions?.meta)&&this.#i({type:"fetch",meta:i.fetchOptions?.meta});const a=l=>{di(l)&&l.silent||this.#i({type:"error",error:l}),di(l)||(this.#n.config.onError?.(l,this),this.#n.config.onSettled?.(this.state.data,l,this)),this.scheduleGc()};return this.#s=au({initialPromise:t?.initialPromise,fn:i.fetchFn,abort:n.abort.bind(n),onSuccess:l=>{if(l===void 0){a(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(l)}catch(c){a(c);return}this.#n.config.onSuccess?.(l,this),this.#n.config.onSettled?.(l,this.state.error,this),this.scheduleGc()},onError:a,onFail:(l,c)=>{this.#i({type:"failed",failureCount:l,error:c})},onPause:()=>{this.#i({type:"pause"})},onContinue:()=>{this.#i({type:"continue"})},retry:i.options.retry,retryDelay:i.options.retryDelay,networkMode:i.options.networkMode,canRun:()=>!0}),this.#s.start()}#i(e){const t=n=>{switch(e.type){case"failed":return{...n,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...n,fetchStatus:"paused"};case"continue":return{...n,fetchStatus:"fetching"};case"fetch":return{...n,...cu(n.data,this.options),fetchMeta:e.meta??null};case"success":return{...n,data:e.data,dataUpdateCount:n.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const r=e.error;return di(r)&&r.revert&&this.#e?{...this.#e,fetchStatus:"idle"}:{...n,error:r,errorUpdateCount:n.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:n.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error"};case"invalidate":return{...n,isInvalidated:!0};case"setState":return{...n,...e.state}}};this.state=t(this.state),Pe.batch(()=>{this.observers.forEach(n=>{n.onQueryUpdate()}),this.#n.notify({query:this,type:"updated",action:e})})}};function cu(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:iu(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Wb(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var zb=class extends Sr{constructor(e={}){super(),this.config=e,this.#t=new Map}#t;build(e,t,n){const r=t.queryKey,s=t.queryHash??Eo(r,t);let i=this.get(s);return i||(i=new Hb({client:e,queryKey:r,queryHash:s,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(r)}),this.add(i)),i}add(e){this.#t.has(e.queryHash)||(this.#t.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const t=this.#t.get(e.queryHash);t&&(e.destroy(),t===e&&this.#t.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){Pe.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#t.get(e)}getAll(){return[...this.#t.values()]}find(e){const t={exact:!0,...e};return this.getAll().find(n=>Dl(t,n))}findAll(e={}){const t=this.getAll();return Object.keys(e).length>0?t.filter(n=>Dl(e,n)):t}notify(e){Pe.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){Pe.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){Pe.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},Zb=class extends lu{#t;#e;#n;constructor(e){super(),this.mutationId=e.mutationId,this.#e=e.mutationCache,this.#t=[],this.state=e.state||Vb(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#e.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#e.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#e.remove(this))}continue(){return this.#n?.continue()??this.execute(this.state.variables)}async execute(e){this.#n=au({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error("No mutationFn found")),onFail:(r,s)=>{this.#r({type:"failed",failureCount:r,error:s})},onPause:()=>{this.#r({type:"pause"})},onContinue:()=>{this.#r({type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#e.canRun(this)});const t=this.state.status==="pending",n=!this.#n.canStart();try{if(!t){this.#r({type:"pending",variables:e,isPaused:n}),await this.#e.config.onMutate?.(e,this);const s=await this.options.onMutate?.(e);s!==this.state.context&&this.#r({type:"pending",context:s,variables:e,isPaused:n})}const r=await this.#n.start();return await this.#e.config.onSuccess?.(r,e,this.state.context,this),await this.options.onSuccess?.(r,e,this.state.context),await this.#e.config.onSettled?.(r,null,this.state.variables,this.state.context,this),await this.options.onSettled?.(r,null,e,this.state.context),this.#r({type:"success",data:r}),r}catch(r){try{throw await this.#e.config.onError?.(r,e,this.state.context,this),await this.options.onError?.(r,e,this.state.context),await this.#e.config.onSettled?.(void 0,r,this.state.variables,this.state.context,this),await this.options.onSettled?.(void 0,r,e,this.state.context),r}finally{this.#r({type:"error",error:r})}}finally{this.#e.runNext(this)}}#r(e){const t=n=>{switch(e.type){case"failed":return{...n,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...n,isPaused:!0};case"continue":return{...n,isPaused:!1};case"pending":return{...n,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...n,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...n,data:void 0,error:e.error,failureCount:n.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}};this.state=t(this.state),Pe.batch(()=>{this.#t.forEach(n=>{n.onMutationUpdate(e)}),this.#e.notify({mutation:this,type:"updated",action:e})})}};function Vb(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Kb=class extends Sr{constructor(e={}){super(),this.config=e,this.#t=new Set,this.#e=new Map,this.#n=0}#t;#e;#n;build(e,t,n){const r=new Zb({mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#t.add(e);const t=Hr(e);if(typeof t=="string"){const n=this.#e.get(t);n?n.push(e):this.#e.set(t,[e])}this.notify({type:"added",mutation:e})}remove(e){if(this.#t.delete(e)){const t=Hr(e);if(typeof t=="string"){const n=this.#e.get(t);if(n)if(n.length>1){const r=n.indexOf(e);r!==-1&&n.splice(r,1)}else n[0]===e&&this.#e.delete(t)}}this.notify({type:"removed",mutation:e})}canRun(e){const t=Hr(e);if(typeof t=="string"){const r=this.#e.get(t)?.find(s=>s.state.status==="pending");return!r||r===e}else return!0}runNext(e){const t=Hr(e);return typeof t=="string"?this.#e.get(t)?.find(r=>r!==e&&r.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){Pe.batch(()=>{this.#t.forEach(e=>{this.notify({type:"removed",mutation:e})}),this.#t.clear(),this.#e.clear()})}getAll(){return Array.from(this.#t)}find(e){const t={exact:!0,...e};return this.getAll().find(n=>Nl(t,n))}findAll(e={}){return this.getAll().filter(t=>Nl(e,t))}notify(e){Pe.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){const e=this.getAll().filter(t=>t.state.isPaused);return Pe.batch(()=>Promise.all(e.map(t=>t.continue().catch(Ye))))}};function Hr(e){return e.options.scope?.id}function Ul(e){return{onFetch:(t,n)=>{const r=t.options,s=t.fetchOptions?.meta?.fetchMore?.direction,i=t.state.data?.pages||[],a=t.state.data?.pageParams||[];let l={pages:[],pageParams:[]},c=0;const d=async()=>{let u=!1;const f=g=>{Object.defineProperty(g,"signal",{enumerable:!0,get:()=>(t.signal.aborted?u=!0:t.signal.addEventListener("abort",()=>{u=!0}),t.signal)})},p=su(t.options,t.fetchOptions),h=async(g,m,y)=>{if(u)return Promise.reject();if(m==null&&g.pages.length)return Promise.resolve(g);const _={client:t.client,queryKey:t.queryKey,pageParam:m,direction:y?"backward":"forward",meta:t.options.meta};f(_);const v=await p(_),{maxPages:I}=t.options,C=y?Lb:Nb;return{pages:C(g.pages,v,I),pageParams:C(g.pageParams,m,I)}};if(s&&i.length){const g=s==="backward",m=g?du:Gi,y={pages:i,pageParams:a},_=m(r,y);l=await h(y,_,g)}else{const g=e??i.length;do{const m=c===0?a[0]??r.initialPageParam:Gi(r,l);if(c>0&&m==null)break;l=await h(l,m),c++}while(c<g)}return l};t.options.persister?t.fetchFn=()=>t.options.persister?.(d,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=d}}}function Gi(e,{pages:t,pageParams:n}){const r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function du(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function ME(e,t){return t?Gi(e,t)!=null:!1}function DE(e,t){return!t||!e.getPreviousPageParam?!1:du(e,t)!=null}var Yb=class{#t;#e;#n;#r;#s;#a;#o;#i;constructor(e={}){this.#t=e.queryCache||new zb,this.#e=e.mutationCache||new Kb,this.#n=e.defaultOptions||{},this.#r=new Map,this.#s=new Map,this.#a=0}mount(){this.#a++,this.#a===1&&(this.#o=xo.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#t.onFocus())}),this.#i=ds.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#t.onOnline())}))}unmount(){this.#a--,this.#a===0&&(this.#o?.(),this.#o=void 0,this.#i?.(),this.#i=void 0)}isFetching(e){return this.#t.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#e.findAll({...e,status:"pending"}).length}getQueryData(e){const t=this.defaultQueryOptions({queryKey:e});return this.#t.get(t.queryHash)?.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),n=this.#t.build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(_n(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#t.findAll(e).map(({queryKey:t,state:n})=>{const r=n.data;return[t,r]})}setQueryData(e,t,n){const r=this.defaultQueryOptions({queryKey:e}),i=this.#t.get(r.queryHash)?.state.data,a=Mb(t,i);if(a!==void 0)return this.#t.build(this,r).setData(a,{...n,manual:!0})}setQueriesData(e,t,n){return Pe.batch(()=>this.#t.findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){const t=this.defaultQueryOptions({queryKey:e});return this.#t.get(t.queryHash)?.state}removeQueries(e){const t=this.#t;Pe.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=this.#t;return Pe.batch(()=>(n.findAll(e).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){const n={revert:!0,...t},r=Pe.batch(()=>this.#t.findAll(e).map(s=>s.cancel(n)));return Promise.all(r).then(Ye).catch(Ye)}invalidateQueries(e,t={}){return Pe.batch(()=>(this.#t.findAll(e).forEach(n=>{n.invalidate()}),e?.refetchType==="none"?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t)))}refetchQueries(e,t={}){const n={...t,cancelRefetch:t.cancelRefetch??!0},r=Pe.batch(()=>this.#t.findAll(e).filter(s=>!s.isDisabled()).map(s=>{let i=s.fetch(void 0,n);return n.throwOnError||(i=i.catch(Ye)),s.state.fetchStatus==="paused"?Promise.resolve():i}));return Promise.all(r).then(Ye)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=this.#t.build(this,t);return n.isStaleByTime(_n(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Ye).catch(Ye)}fetchInfiniteQuery(e){return e.behavior=Ul(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Ye).catch(Ye)}ensureInfiniteQueryData(e){return e.behavior=Ul(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return ds.isOnline()?this.#e.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#t}getMutationCache(){return this.#e}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(pr(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...this.#r.values()],n={};return t.forEach(r=>{hr(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){this.#s.set(pr(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...this.#s.values()],n={};return t.forEach(r=>{hr(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=Eo(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===Io&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#t.clear(),this.#e.clear()}},Qb=class extends Sr{constructor(e,t){super(),this.options=t,this.#t=e,this.#i=null,this.#o=Bi(),this.options.experimental_prefetchInRender||this.#o.reject(new Error("experimental_prefetchInRender feature flag is not enabled")),this.bindMethods(),this.setOptions(t)}#t;#e=void 0;#n=void 0;#r=void 0;#s;#a;#o;#i;#m;#f;#p;#c;#d;#l;#h=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#e.addObserver(this),Fl(this.#e,this.options)?this.#u():this.updateResult(),this.#_())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Hi(this.#e,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Hi(this.#e,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#w(),this.#e.removeObserver(this)}setOptions(e){const t=this.options,n=this.#e;if(this.options=this.#t.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof it(this.options.enabled,this.#e)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#S(),this.#e.setOptions(this.options),t._defaulted&&!$i(this.options,t)&&this.#t.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#e,observer:this});const r=this.hasListeners();r&&Bl(this.#e,n,this.options,t)&&this.#u(),this.updateResult(),r&&(this.#e!==n||it(this.options.enabled,this.#e)!==it(t.enabled,this.#e)||_n(this.options.staleTime,this.#e)!==_n(t.staleTime,this.#e))&&this.#g();const s=this.#y();r&&(this.#e!==n||it(this.options.enabled,this.#e)!==it(t.enabled,this.#e)||s!==this.#l)&&this.#v(s)}getOptimisticResult(e){const t=this.#t.getQueryCache().build(this.#t,e),n=this.createResult(t,e);return Xb(this,n)&&(this.#r=n,this.#a=this.options,this.#s=this.#e.state),n}getCurrentResult(){return this.#r}trackResult(e,t){const n={};return Object.keys(e).forEach(r=>{Object.defineProperty(n,r,{configurable:!1,enumerable:!0,get:()=>(this.trackProp(r),t?.(r),e[r])})}),n}trackProp(e){this.#h.add(e)}getCurrentQuery(){return this.#e}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const t=this.#t.defaultQueryOptions(e),n=this.#t.getQueryCache().build(this.#t,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#u({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#u(e){this.#S();let t=this.#e.fetch(this.options,e);return e?.throwOnError||(t=t.catch(Ye)),t}#g(){this.#b();const e=_n(this.options.staleTime,this.#e);if(tn||this.#r.isStale||!Li(e))return;const n=nu(this.#r.dataUpdatedAt,e)+1;this.#c=setTimeout(()=>{this.#r.isStale||this.updateResult()},n)}#y(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#e):this.options.refetchInterval)??!1}#v(e){this.#w(),this.#l=e,!(tn||it(this.options.enabled,this.#e)===!1||!Li(this.#l)||this.#l===0)&&(this.#d=setInterval(()=>{(this.options.refetchIntervalInBackground||xo.isFocused())&&this.#u()},this.#l))}#_(){this.#g(),this.#v(this.#y())}#b(){this.#c&&(clearTimeout(this.#c),this.#c=void 0)}#w(){this.#d&&(clearInterval(this.#d),this.#d=void 0)}createResult(e,t){const n=this.#e,r=this.options,s=this.#r,i=this.#s,a=this.#a,c=e!==n?e.state:this.#n,{state:d}=e;let u={...d},f=!1,p;if(t._optimisticResults){const S=this.hasListeners(),U=!S&&Fl(e,t),Z=S&&Bl(e,n,t,r);(U||Z)&&(u={...u,...cu(d.data,e.options)}),t._optimisticResults==="isRestoring"&&(u.fetchStatus="idle")}let{error:h,errorUpdatedAt:g,status:m}=u;p=u.data;let y=!1;if(t.placeholderData!==void 0&&p===void 0&&m==="pending"){let S;s?.isPlaceholderData&&t.placeholderData===a?.placeholderData?(S=s.data,y=!0):S=typeof t.placeholderData=="function"?t.placeholderData(this.#p?.state.data,this.#p):t.placeholderData,S!==void 0&&(m="success",p=Fi(s?.data,S,t),f=!0)}if(t.select&&p!==void 0&&!y)if(s&&p===i?.data&&t.select===this.#m)p=this.#f;else try{this.#m=t.select,p=t.select(p),p=Fi(s?.data,p,t),this.#f=p,this.#i=null}catch(S){this.#i=S}this.#i&&(h=this.#i,p=this.#f,g=Date.now(),m="error");const _=u.fetchStatus==="fetching",v=m==="pending",I=m==="error",C=v&&_,J=p!==void 0,A={status:m,fetchStatus:u.fetchStatus,isPending:v,isSuccess:m==="success",isError:I,isInitialLoading:C,isLoading:C,data:p,dataUpdatedAt:u.dataUpdatedAt,error:h,errorUpdatedAt:g,failureCount:u.fetchFailureCount,failureReason:u.fetchFailureReason,errorUpdateCount:u.errorUpdateCount,isFetched:u.dataUpdateCount>0||u.errorUpdateCount>0,isFetchedAfterMount:u.dataUpdateCount>c.dataUpdateCount||u.errorUpdateCount>c.errorUpdateCount,isFetching:_,isRefetching:_&&!v,isLoadingError:I&&!J,isPaused:u.fetchStatus==="paused",isPlaceholderData:f,isRefetchError:I&&J,isStale:To(e,t),refetch:this.refetch,promise:this.#o};if(this.options.experimental_prefetchInRender){const S=re=>{A.status==="error"?re.reject(A.error):A.data!==void 0&&re.resolve(A.data)},U=()=>{const re=this.#o=A.promise=Bi();S(re)},Z=this.#o;switch(Z.status){case"pending":e.queryHash===n.queryHash&&S(Z);break;case"fulfilled":(A.status==="error"||A.data!==Z.value)&&U();break;case"rejected":(A.status!=="error"||A.error!==Z.reason)&&U();break}}return A}updateResult(){const e=this.#r,t=this.createResult(this.#e,this.options);if(this.#s=this.#e.state,this.#a=this.options,this.#s.data!==void 0&&(this.#p=this.#e),$i(t,e))return;this.#r=t;const n=()=>{if(!e)return!0;const{notifyOnChangeProps:r}=this.options,s=typeof r=="function"?r():r;if(s==="all"||!s&&!this.#h.size)return!0;const i=new Set(s??this.#h);return this.options.throwOnError&&i.add("error"),Object.keys(this.#r).some(a=>{const l=a;return this.#r[l]!==e[l]&&i.has(l)})};this.#k({listeners:n()})}#S(){const e=this.#t.getQueryCache().build(this.#t,this.options);if(e===this.#e)return;const t=this.#e;this.#e=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#_()}#k(e){Pe.batch(()=>{e.listeners&&this.listeners.forEach(t=>{t(this.#r)}),this.#t.getQueryCache().notify({query:this.#e,type:"observerResultsUpdated"})})}};function Jb(e,t){return it(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function Fl(e,t){return Jb(e,t)||e.state.data!==void 0&&Hi(e,t,t.refetchOnMount)}function Hi(e,t,n){if(it(t.enabled,e)!==!1){const r=typeof n=="function"?n(e):n;return r==="always"||r!==!1&&To(e,t)}return!1}function Bl(e,t,n,r){return(e!==t||it(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&To(e,n)}function To(e,t){return it(t.enabled,e)!==!1&&e.isStaleByTime(_n(t.staleTime,e))}function Xb(e,t){return!$i(e.getCurrentResult(),t)}var Co=b.createContext(void 0),qb=e=>{const t=b.useContext(Co);if(e)return e;if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},NE=({client:e,children:t})=>(b.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),Yu.jsx(Co.Provider,{value:e,children:t})),uu=b.createContext(!1),ew=()=>b.useContext(uu);uu.Provider;function tw(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var nw=b.createContext(tw()),rw=()=>b.useContext(nw);function sw(e,t){return typeof e=="function"?e(...t):!!e}function Gl(){}var iw=(e,t)=>{(e.suspense||e.throwOnError||e.experimental_prefetchInRender)&&(t.isReset()||(e.retryOnMount=!1))},ow=e=>{b.useEffect(()=>{e.clearReset()},[e])},aw=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:s})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(s&&e.data===void 0||sw(n,[e.error,r])),lw=e=>{const t=e.staleTime;e.suspense&&(e.staleTime=typeof t=="function"?(...n)=>Math.max(t(...n),1e3):Math.max(t??1e3,1e3),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3)))},cw=(e,t)=>e.isLoading&&e.isFetching&&!t,dw=(e,t)=>e?.suspense&&t.isPending,Hl=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function uw(e,t,n){const r=qb(n),s=ew(),i=rw(),a=r.defaultQueryOptions(e);r.getDefaultOptions().queries?._experimental_beforeQuery?.(a),a._optimisticResults=s?"isRestoring":"optimistic",lw(a),iw(a,i),ow(i);const l=!r.getQueryCache().get(a.queryHash),[c]=b.useState(()=>new t(r,a)),d=c.getOptimisticResult(a),u=!s&&e.subscribed!==!1;if(b.useSyncExternalStore(b.useCallback(f=>{const p=u?c.subscribe(Pe.batchCalls(f)):Gl;return c.updateResult(),p},[c,u]),()=>c.getCurrentResult(),()=>c.getCurrentResult()),b.useEffect(()=>{c.setOptions(a)},[a,c]),dw(a,d))throw Hl(a,c,i);if(aw({result:d,errorResetBoundary:i,throwOnError:a.throwOnError,query:r.getQueryCache().get(a.queryHash),suspense:a.suspense}))throw d.error;return r.getDefaultOptions().queries?._experimental_afterQuery?.(a,d),a.experimental_prefetchInRender&&!tn&&cw(d,s)&&(l?Hl(a,c,i):r.getQueryCache().get(a.queryHash)?.promise)?.catch(Gl).finally(()=>{c.updateResult()}),a.notifyOnChangeProps?d:c.trackResult(d)}function fu(e,t){return uw(e,Qb,t)}/**
41
- * @remix-run/router v1.23.0
42
- *
43
- * Copyright (c) Remix Software Inc.
44
- *
45
- * This source code is licensed under the MIT license found in the
46
- * LICENSE.md file in the root directory of this source tree.
47
- *
48
- * @license MIT
49
- */function mr(){return mr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mr.apply(this,arguments)}var At;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(At||(At={}));const Wl="popstate";function LE(e){e===void 0&&(e={});function t(s,i){let{pathname:a="/",search:l="",hash:c=""}=nn(s.location.hash.substr(1));return!a.startsWith("/")&&!a.startsWith(".")&&(a="/"+a),Wi("",{pathname:a,search:l,hash:c},i.state&&i.state.usr||null,i.state&&i.state.key||"default")}function n(s,i){let a=s.document.querySelector("base"),l="";if(a&&a.getAttribute("href")){let c=s.location.href,d=c.indexOf("#");l=d===-1?c:c.slice(0,d)}return l+"#"+(typeof i=="string"?i:pu(i))}function r(s,i){Ao(s.pathname.charAt(0)==="/","relative pathnames are not supported in hash history.push("+JSON.stringify(i)+")")}return pw(t,n,r,e)}function ke(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Ao(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function fw(){return Math.random().toString(36).substr(2,8)}function zl(e,t){return{usr:e.state,key:e.key,idx:t}}function Wi(e,t,n,r){return n===void 0&&(n=null),mr({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?nn(t):t,{state:n,key:t&&t.key||r||fw()})}function pu(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function nn(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function pw(e,t,n,r){r===void 0&&(r={});let{window:s=document.defaultView,v5Compat:i=!1}=r,a=s.history,l=At.Pop,c=null,d=u();d==null&&(d=0,a.replaceState(mr({},a.state,{idx:d}),""));function u(){return(a.state||{idx:null}).idx}function f(){l=At.Pop;let y=u(),_=y==null?null:y-d;d=y,c&&c({action:l,location:m.location,delta:_})}function p(y,_){l=At.Push;let v=Wi(m.location,y,_);n&&n(v,y),d=u()+1;let I=zl(v,d),C=m.createHref(v);try{a.pushState(I,"",C)}catch(J){if(J instanceof DOMException&&J.name==="DataCloneError")throw J;s.location.assign(C)}i&&c&&c({action:l,location:m.location,delta:1})}function h(y,_){l=At.Replace;let v=Wi(m.location,y,_);n&&n(v,y),d=u();let I=zl(v,d),C=m.createHref(v);a.replaceState(I,"",C),i&&c&&c({action:l,location:m.location,delta:0})}function g(y){let _=s.location.origin!=="null"?s.location.origin:s.location.href,v=typeof y=="string"?y:pu(y);return v=v.replace(/ $/,"%20"),ke(_,"No window.location.(origin|href) available to create URL for href: "+v),new URL(v,_)}let m={get action(){return l},get location(){return e(s,a)},listen(y){if(c)throw new Error("A history only accepts one active listener");return s.addEventListener(Wl,f),c=y,()=>{s.removeEventListener(Wl,f),c=null}},createHref(y){return t(s,y)},createURL:g,encodeLocation(y){let _=g(y);return{pathname:_.pathname,search:_.search,hash:_.hash}},push:p,replace:h,go(y){return a.go(y)}};return m}var Zl;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Zl||(Zl={}));function hw(e,t,n){return n===void 0&&(n="/"),mw(e,t,n)}function mw(e,t,n,r){let s=typeof t=="string"?nn(t):t,i=gu(s.pathname||"/",n);if(i==null)return null;let a=hu(e);gw(a);let l=null;for(let c=0;l==null&&c<a.length;++c){let d=Tw(i);l=Ew(a[c],d)}return l}function hu(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let s=(i,a,l)=>{let c={relativePath:l===void 0?i.path||"":l,caseSensitive:i.caseSensitive===!0,childrenIndex:a,route:i};c.relativePath.startsWith("/")&&(ke(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let d=jt([r,c.relativePath]),u=n.concat(c);i.children&&i.children.length>0&&(ke(i.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),hu(i.children,t,u,d)),!(i.path==null&&!i.index)&&t.push({path:d,score:kw(d,i.index),routesMeta:u})};return e.forEach((i,a)=>{var l;if(i.path===""||!((l=i.path)!=null&&l.includes("?")))s(i,a);else for(let c of mu(i.path))s(i,a,c)}),t}function mu(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,s=n.endsWith("?"),i=n.replace(/\?$/,"");if(r.length===0)return s?[i,""]:[i];let a=mu(r.join("/")),l=[];return l.push(...a.map(c=>c===""?i:[i,c].join("/"))),s&&l.push(...a),l.map(c=>e.startsWith("/")&&c===""?"/":c)}function gw(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Rw(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const yw=/^:[\w-]+$/,vw=3,_w=2,bw=1,ww=10,Sw=-2,Vl=e=>e==="*";function kw(e,t){let n=e.split("/"),r=n.length;return n.some(Vl)&&(r+=Sw),t&&(r+=_w),n.filter(s=>!Vl(s)).reduce((s,i)=>s+(yw.test(i)?vw:i===""?bw:ww),r)}function Rw(e,t){return e.length===t.length&&e.slice(0,-1).every((r,s)=>r===t[s])?e[e.length-1]-t[t.length-1]:0}function Ew(e,t,n){let{routesMeta:r}=e,s={},i="/",a=[];for(let l=0;l<r.length;++l){let c=r[l],d=l===r.length-1,u=i==="/"?t:t.slice(i.length)||"/",f=Iw({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},u),p=c.route;if(!f)return null;Object.assign(s,f.params),a.push({params:s,pathname:jt([i,f.pathname]),pathnameBase:Pw(jt([i,f.pathnameBase])),route:p}),f.pathnameBase!=="/"&&(i=jt([i,f.pathnameBase]))}return a}function Iw(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=xw(e.path,e.caseSensitive,e.end),s=t.match(n);if(!s)return null;let i=s[0],a=i.replace(/(.)\/+$/,"$1"),l=s.slice(1);return{params:r.reduce((d,u,f)=>{let{paramName:p,isOptional:h}=u;if(p==="*"){let m=l[f]||"";a=i.slice(0,i.length-m.length).replace(/(.)\/+$/,"$1")}const g=l[f];return h&&!g?d[p]=void 0:d[p]=(g||"").replace(/%2F/g,"/"),d},{}),pathname:i,pathnameBase:a,pattern:e}}function xw(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Ao(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],s="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(a,l,c)=>(r.push({paramName:l,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),s+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?s+="\\/*$":e!==""&&e!=="/"&&(s+="(?:(?=\\/|$))"),[new RegExp(s,t?void 0:"i"),r]}function Tw(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Ao(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function gu(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function Cw(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:s=""}=typeof e=="string"?nn(e):e;return{pathname:n?n.startsWith("/")?n:Aw(n,t):t,search:jw(r),hash:Mw(s)}}function Aw(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(s=>{s===".."?n.length>1&&n.pop():s!=="."&&n.push(s)}),n.length>1?n.join("/"):"/"}function ui(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function Ow(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Oo(e,t){let n=Ow(e);return t?n.map((r,s)=>s===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function Po(e,t,n,r){r===void 0&&(r=!1);let s;typeof e=="string"?s=nn(e):(s=mr({},e),ke(!s.pathname||!s.pathname.includes("?"),ui("?","pathname","search",s)),ke(!s.pathname||!s.pathname.includes("#"),ui("#","pathname","hash",s)),ke(!s.search||!s.search.includes("#"),ui("#","search","hash",s)));let i=e===""||s.pathname==="",a=i?"/":s.pathname,l;if(a==null)l=n;else{let f=t.length-1;if(!r&&a.startsWith("..")){let p=a.split("/");for(;p[0]==="..";)p.shift(),f-=1;s.pathname=p.join("/")}l=f>=0?t[f]:"/"}let c=Cw(s,l),d=a&&a!=="/"&&a.endsWith("/"),u=(i||a===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const jt=e=>e.join("/").replace(/\/\/+/g,"/"),Pw=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),jw=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Mw=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Dw(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const yu=["post","put","patch","delete"];new Set(yu);const Nw=["get",...yu];new Set(Nw);/**
50
- * React Router v6.30.0
51
- *
52
- * Copyright (c) Remix Software Inc.
53
- *
54
- * This source code is licensed under the MIT license found in the
55
- * LICENSE.md file in the root directory of this source tree.
56
- *
57
- * @license MIT
58
- */function gr(){return gr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gr.apply(this,arguments)}const jo=b.createContext(null),Lw=b.createContext(null),rn=b.createContext(null),bs=b.createContext(null),Rt=b.createContext({outlet:null,matches:[],isDataRoute:!1}),vu=b.createContext(null);function $E(e,t){let{relative:n}=t===void 0?{}:t;In()||ke(!1);let{basename:r,navigator:s}=b.useContext(rn),{hash:i,pathname:a,search:l}=Fw(e,{relative:n}),c=a;return r!=="/"&&(c=a==="/"?r:jt([r,a])),s.createHref({pathname:c,search:l,hash:i})}function In(){return b.useContext(bs)!=null}function ws(){return In()||ke(!1),b.useContext(bs).location}function _u(e){b.useContext(rn).static||b.useLayoutEffect(e)}function $w(){let{isDataRoute:e}=b.useContext(Rt);return e?Xw():Uw()}function Uw(){In()||ke(!1);let e=b.useContext(jo),{basename:t,future:n,navigator:r}=b.useContext(rn),{matches:s}=b.useContext(Rt),{pathname:i}=ws(),a=JSON.stringify(Oo(s,n.v7_relativeSplatPath)),l=b.useRef(!1);return _u(()=>{l.current=!0}),b.useCallback(function(d,u){if(u===void 0&&(u={}),!l.current)return;if(typeof d=="number"){r.go(d);return}let f=Po(d,JSON.parse(a),i,u.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:jt([t,f.pathname])),(u.replace?r.replace:r.push)(f,u.state,u)},[t,r,a,i,e])}function UE(){let{matches:e}=b.useContext(Rt),t=e[e.length-1];return t?t.params:{}}function Fw(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=b.useContext(rn),{matches:s}=b.useContext(Rt),{pathname:i}=ws(),a=JSON.stringify(Oo(s,r.v7_relativeSplatPath));return b.useMemo(()=>Po(e,JSON.parse(a),i,n==="path"),[e,a,i,n])}function Bw(e,t){return Gw(e,t)}function Gw(e,t,n,r){In()||ke(!1);let{navigator:s,static:i}=b.useContext(rn),{matches:a}=b.useContext(Rt),l=a[a.length-1],c=l?l.params:{};l&&l.pathname;let d=l?l.pathnameBase:"/";l&&l.route;let u=ws(),f;if(t){var p;let _=typeof t=="string"?nn(t):t;d==="/"||(p=_.pathname)!=null&&p.startsWith(d)||ke(!1),f=_}else f=u;let h=f.pathname||"/",g=h;if(d!=="/"){let _=d.replace(/^\//,"").split("/");g="/"+h.replace(/^\//,"").split("/").slice(_.length).join("/")}let m=hw(e,{pathname:g}),y=Vw(m&&m.map(_=>Object.assign({},_,{params:Object.assign({},c,_.params),pathname:jt([d,s.encodeLocation?s.encodeLocation(_.pathname).pathname:_.pathname]),pathnameBase:_.pathnameBase==="/"?d:jt([d,s.encodeLocation?s.encodeLocation(_.pathnameBase).pathname:_.pathnameBase])})),a,n,r);return t&&y?b.createElement(bs.Provider,{value:{location:gr({pathname:"/",search:"",hash:"",state:null,key:"default"},f),navigationType:At.Pop}},y):y}function Hw(){let e=Jw(),t=Dw(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,s={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return b.createElement(b.Fragment,null,b.createElement("h2",null,"Unexpected Application Error!"),b.createElement("h3",{style:{fontStyle:"italic"}},t),n?b.createElement("pre",{style:s},n):null,null)}const Ww=b.createElement(Hw,null);class zw extends b.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?b.createElement(Rt.Provider,{value:this.props.routeContext},b.createElement(vu.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Zw(e){let{routeContext:t,match:n,children:r}=e,s=b.useContext(jo);return s&&s.static&&s.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(s.staticContext._deepestRenderedBoundaryId=n.route.id),b.createElement(Rt.Provider,{value:t},r)}function Vw(e,t,n,r){var s;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var i;if(!n)return null;if(n.errors)e=n.matches;else if((i=r)!=null&&i.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let a=e,l=(s=n)==null?void 0:s.errors;if(l!=null){let u=a.findIndex(f=>f.route.id&&l?.[f.route.id]!==void 0);u>=0||ke(!1),a=a.slice(0,Math.min(a.length,u+1))}let c=!1,d=-1;if(n&&r&&r.v7_partialHydration)for(let u=0;u<a.length;u++){let f=a[u];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(d=u),f.route.id){let{loaderData:p,errors:h}=n,g=f.route.loader&&p[f.route.id]===void 0&&(!h||h[f.route.id]===void 0);if(f.route.lazy||g){c=!0,d>=0?a=a.slice(0,d+1):a=[a[0]];break}}}return a.reduceRight((u,f,p)=>{let h,g=!1,m=null,y=null;n&&(h=l&&f.route.id?l[f.route.id]:void 0,m=f.route.errorElement||Ww,c&&(d<0&&p===0?(qw("route-fallback"),g=!0,y=null):d===p&&(g=!0,y=f.route.hydrateFallbackElement||null)));let _=t.concat(a.slice(0,p+1)),v=()=>{let I;return h?I=m:g?I=y:f.route.Component?I=b.createElement(f.route.Component,null):f.route.element?I=f.route.element:I=u,b.createElement(Zw,{match:f,routeContext:{outlet:u,matches:_,isDataRoute:n!=null},children:I})};return n&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?b.createElement(zw,{location:n.location,revalidation:n.revalidation,component:m,error:h,children:v(),routeContext:{outlet:null,matches:_,isDataRoute:!0}}):v()},null)}var bu=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(bu||{}),wu=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(wu||{});function Kw(e){let t=b.useContext(jo);return t||ke(!1),t}function Yw(e){let t=b.useContext(Lw);return t||ke(!1),t}function Qw(e){let t=b.useContext(Rt);return t||ke(!1),t}function Su(e){let t=Qw(),n=t.matches[t.matches.length-1];return n.route.id||ke(!1),n.route.id}function Jw(){var e;let t=b.useContext(vu),n=Yw(),r=Su();return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function Xw(){let{router:e}=Kw(bu.UseNavigateStable),t=Su(wu.UseNavigateStable),n=b.useRef(!1);return _u(()=>{n.current=!0}),b.useCallback(function(s,i){i===void 0&&(i={}),n.current&&(typeof s=="number"?e.navigate(s):e.navigate(s,gr({fromRouteId:t},i)))},[e,t])}const Kl={};function qw(e,t,n){Kl[e]||(Kl[e]=!0)}function FE(e,t){e?.v7_startTransition,e?.v7_relativeSplatPath}function BE(e){let{to:t,replace:n,state:r,relative:s}=e;In()||ke(!1);let{future:i,static:a}=b.useContext(rn),{matches:l}=b.useContext(Rt),{pathname:c}=ws(),d=$w(),u=Po(t,Oo(l,i.v7_relativeSplatPath),c,s==="path"),f=JSON.stringify(u);return b.useEffect(()=>d(JSON.parse(f),{replace:n,state:r,relative:s}),[d,f,s,n,r]),null}function e0(e){ke(!1)}function GE(e){let{basename:t="/",children:n=null,location:r,navigationType:s=At.Pop,navigator:i,static:a=!1,future:l}=e;In()&&ke(!1);let c=t.replace(/^\/*/,"/"),d=b.useMemo(()=>({basename:c,navigator:i,static:a,future:gr({v7_relativeSplatPath:!1},l)}),[c,l,i,a]);typeof r=="string"&&(r=nn(r));let{pathname:u="/",search:f="",hash:p="",state:h=null,key:g="default"}=r,m=b.useMemo(()=>{let y=gu(u,c);return y==null?null:{location:{pathname:y,search:f,hash:p,state:h,key:g},navigationType:s}},[c,u,f,p,h,g,s]);return m==null?null:b.createElement(rn.Provider,{value:d},b.createElement(bs.Provider,{children:n,value:m}))}function HE(e){let{children:t,location:n}=e;return Bw(zi(t),n)}new Promise(()=>{});function zi(e,t){t===void 0&&(t=[]);let n=[];return b.Children.forEach(e,(r,s)=>{if(!b.isValidElement(r))return;let i=[...t,s];if(r.type===b.Fragment){n.push.apply(n,zi(r.props.children,i));return}r.type!==e0&&ke(!1),!r.props.index||!r.props.children||ke(!1);let a={id:r.props.id||i.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(a.children=zi(r.props.children,i)),n.push(a)}),n}function WE(e){return e!=="detached"&&e!=="wedged"}function ku(e){return e!=="governed-elsewhere"&&e!=="pre-handshake"}function zE(e){if(!e)return{title:"Not connected to a Local Operator server.",detail:null,retry:!0};const t=e.addressSubstitution??null;if(t&&e.state!=="detached"&&e.state!=="wedged")return t.kind==="substituted"?{title:`Serving on ${t.serving}, not the address this app is configured for.`,detail:t.holder?`${t.holder}. The app uses ${t.serving} while that holds.${t.reclaim?` ${t.reclaim}`:""} It is back on ${t.configured} on its next launch or recovery.`:`The daemon this app is using was already running, so it did not start one. It looks for ${t.configured} again on its next launch or recovery.`,retry:!0}:{title:`Back on ${t.configured}, the address this app is configured for.`,detail:`It served on ${t.serving} while the configured address was held; it is on the address it was told to use again.`,retry:!1,dismiss:!0};const n=e.detail?.trim()?e.detail.trim():null,r=ku(e.pairing?.cause??null);switch(e.state){case"wedged":return{title:"A Local Operator server is running on this machine and this app is not attached to it.",detail:n,retry:r};case"detached":return e.reconnecting?{title:r?"Not connected to a Local Operator server. If one is still running, the app reconnects to it on its own.":"Not connected to a Local Operator server.",detail:n,retry:r}:{title:r?"The Local Operator server stopped. The app keeps looking for one and attaches to it when it appears.":"Not connected to a Local Operator server. The app keeps looking for one.",detail:n,retry:r};default:return null}}function t0(e){if(em(e))return"deadline";const t=e instanceof ye?e.status:null;return t===null||t===503?"unreachable":t===401||t===403?"unauthorized":t===404?"outdated":"unknown"}const Ru={unreachable:"",deadline:"",unauthorized:"",outdated:"Update the server and try again.",unknown:""},Zi={unreachable:"The Local Operator server is not answering.",deadline:"The Local Operator server did not answer in time.",unauthorized:"This app cannot authenticate to the running Local Operator server.",outdated:"The Local Operator server is older than this app expects.",unknown:""};function n0(e,t){const n=t0(t);return[e,Zi[n],Ru[n]].filter(Boolean).join(" ")}const Vi={successor:"The Local Operator server was replaced while this app was running. Pairing with the new one.","governed-elsewhere":"The Local Operator server on this machine is already managed by another program, so this app cannot use its settings, provider sign-in, slash commands or MCP management.","pre-handshake":"The Local Operator server on this machine is older than the pairing handshake this app uses, so this app cannot drive its controls. The server itself, and anything you run against it from the terminal, are unaffected.","credential-refused":"This app's credential for the running Local Operator server was refused, so provider sign-in, settings, slash commands and MCP management are unavailable.",unpaired:"This app is not paired with the running Local Operator server, so provider sign-in, settings, slash commands and MCP management are unavailable."},r0={successor:"This conversation cannot be read here until the app finishes pairing with the replacement server. Your chats are still on that server.","governed-elsewhere":"This conversation cannot be read here: the server's desktop controls belong to another program. Your chats are still on that server.","pre-handshake":"This conversation cannot be read here: that server is older than the pairing handshake this app uses. Your chats are still on that server.","credential-refused":"This conversation cannot be read here: the server refused this app's credential. Your chats are still on that server.",unpaired:"This conversation cannot be read here: the app is not paired with the running server. Your chats are still on that server."};function ZE(e,t){return e!=="unpaired"?null:r0[t??"unpaired"]}function VE(e,t){return e!=="unpaired"?null:Vi[t??"unpaired"]}function KE(e){const{kind:t,unpaired:n,answered:r,cause:s=null,servedByThisApp:i=!1}=e;return s==="pre-handshake"?i:s!==null||n?!1:r?i:t==="outdated"}function YE(e){const{kind:t,unpaired:n,missing:r,answered:s,cause:i=null}=e;if(i!==null)return Vi[i];if(!s){if(t==="unreachable")return`${Zi.unreachable} Provider sign-in, settings, slash commands and MCP management need it running.`;if(t==="unauthorized")return"This app cannot authenticate to the running Local Operator server, so provider sign-in, settings, slash commands and MCP management are unavailable.";if(t==="deadline")return`${Zi.deadline} Provider sign-in, settings, slash commands and MCP management need it answering.`;if(t==="outdated")return`The Local Operator server is older than this app expects, so provider sign-in, settings, slash commands and MCP management are off. ${Ru.outdated}`}return n?Vi.unpaired:s?`The Local Operator server is missing ${r.join(", ")} support. Update it to enable those surfaces.`:"Provider sign-in, settings, slash commands and MCP management are unavailable because the Local Operator server did not answer as expected."}const s0=["auth","settings","commands","catalogues","lifecycle","mcp","radient"];function QE(e,t=null){return t!==null||!e?!0:s0.filter(r=>(e.features?.[r]??0)<1).length>0||e.desktop_available!==!0}function i0(e,t){return t instanceof ye&&t.status===null?!1:e<1}function JE(e,t){return t instanceof ye&&t.status!==null&&t.status>=400&&t.status<500&&t.status!==408&&t.status!==425&&t.status!==429?!1:e<1}const o0={successor:"Your settings could not be loaded: the app is pairing with the server that replaced the one it was using.","governed-elsewhere":"Your settings could not be loaded: another program is managing this machine's Local Operator server, so this page cannot read or change them here.","pre-handshake":"Your settings could not be loaded: the server this app is talking to is older than the pairing handshake, so this page cannot read them from it.","credential-refused":"Your settings could not be loaded: the server refused this app's credential, so this page cannot read them from it.",unpaired:"Your settings could not be loaded: this app is not paired with the running server, so this page cannot read them from it."};function XE(e,t,n){return e===null?{sentence:n0(t,n),remedy:!0}:{sentence:o0[e],remedy:ku(e)}}const kr=260,Eu=220,Iu=320,Ki=56,a0=kr,l0=1024,xu=480,Tu=44,Cu=400,c0=560;function Au(e){return Math.max(0,Math.min(c0,e-xu))}function Yl(e){return Au(e)>=Cu?"docked":"overlay"}function qE({capacity:e,min:t,max:n,drawn:r}){const s=e>=t;return s?{resizable:s,value:Math.min(Math.max(r,t),e),minWidth:t,maxWidth:Math.min(n,e)}:{resizable:s,value:r,minWidth:r,maxWidth:r}}function d0(e,t=kr,n=Tu){return Yl(e-Ou(t)-n)==="overlay"&&Yl(e-Ki-n)==="docked"}function Ou(e){return Number.isNaN(e)?kr:Math.min(Iu,Math.max(Eu,e))}function eI(e,t,n,r=kr,s=!1,i=Tu){if(e>=l0){const l=!t&&s&&d0(e,r,i);return{mode:t||l?"strip":"docked",width:t||l?Ki:Ou(r),collapsed:t||l,sheetOpen:!1,resizable:!t&&!l}}return{mode:n?"overlay":"strip",width:n?a0:Ki,collapsed:!0,sheetOpen:n,resizable:!1}}function tI(e){return e.shiftKey||e.altKey||!(e.metaKey||e.ctrlKey)?!1:e.key.toLowerCase()==="b"}const nI=e=>e?"⌘B":"Ctrl+B",u0=()=>{const e=b.useContext(Co)??null,t=b.useMemo(()=>new Yb({defaultOptions:{queries:{enabled:!1,retry:!1}}}),[]);return b.useMemo(()=>e?{client:e,provided:!0}:{client:t,provided:!1},[e,t])},f0="data-canvas-shortcuts",p0=`[${f0}]`,h0=e=>Pu(e,p0),m0='[role="dialog"], [role="alertdialog"], [role="menu"], [role="listbox"]',rI=e=>Pu(e,m0);function Pu(e,t){const n=e;return typeof n?.closest=="function"?n.closest(t)!==null:!1}const sI=e=>{if(!(e.metaKey||e.ctrlKey))return null;const t=e.key.toLowerCase();return t==="o"?"open-file":t==="n"&&h0(e.target)?"new-file":null},g0=["active","created"],iI={running:"Running",today:"Today",week:"This week",older:"Older"},y0=new Set(["waiting","busy","delegating","approval","answer","wedged"]);function Ss(e){return y0.has(e.status?.code??"")}const v0=new Set(["approval","answer"]);function _0(e){return v0.has(e.status?.code??"")}const b0=24*60*60*1e3,w0=e=>{const t=new Date(e);return t.setHours(0,0,0,0),t.getTime()};function Mo(e,t){const n=t==="created"?e.created_at:e.updated_at;return typeof n!="number"||!Number.isFinite(n)||n<=0?null:n*1e3}const S0="last_user_at";function k0(e){const t=e[S0],n=typeof t=="number"&&Number.isFinite(t)&&t>0?t:e.created_at;return typeof n!="number"||!Number.isFinite(n)||n<=0?null:n*1e3}function R0(e,t,n){if(Ss(e))return"running";const r=Mo(e,n);if(r===null)return"older";const s=w0(t);return r>=s?"today":r>=s-6*b0?"week":"older"}function oI(e,t,n){const r={running:[],today:[],week:[],older:[]};for(const s of e)r[R0(s,t,n)].push(s);return r}function E0(e,t,n){const r=Mo(e,n);if(r===null)return"";const s=Math.floor(Math.max(0,t-r)/6e4);if(s<1)return"now";if(s<60)return`${s}m`;const i=Math.floor(s/60);if(i<24)return`${i}h`;const a=Math.floor(i/24);if(a<7)return`${a}d`;const l=Math.floor(a/7);return a<365?`${l}w`:`${Math.floor(a/365)}y`}function aI(e,t,n){const r=E0(e,t,n);if(!r)return"";const s=n==="created"?"created":"last active";if(r==="now")return`${s} just now`;const i={m:"minute",h:"hour",d:"day",w:"week",y:"year"},a=Number.parseInt(r,10),l=i[r.slice(-1)];return`${s} ${a} ${l}${a===1?"":"s"} ago`}const Yi=["pinned","running","today","week","older","agents","teams"];function lI(e){return e==="agents"||e==="teams"}const yr=8;function I0(e,t){if(!(t in e))return e;const n={...e};return delete n[t],n}function cI(e,t){return{...e,[t]:(e[t]??yr)+yr}}function dI(e,t,n,r,s){const i=!(e[n]??r);return{expanded:{...e,[n]:i},caps:!i&&!s?I0(t,n):t}}function uI(e,t,n,r){return(e||t!=="")&&(r>yr||n.trim()!=="")}const fI="Collapse, then reopen, to restore the compact list";function pI(e){return(e??yr)>yr}const hI=e=>`section-grown-hint-${e}`,x0=e=>e===1?"Show 1 more":`Show ${e} more`;function mI(e,t){return`${x0(e)} ${t}`}const pn={hidden:[],order:[...Yi],pins:[],groupBy:"section",tagsEnabled:!1,autoTagForks:!0,basis:"active",orderBy:"active-first",loads:0,pinnedAgents:[]},T0=10,$n=[25,50],C0=50,A0=500,O0=64;function bn(e){const t=Math.max(0,Math.floor(e));return t===0?T0:t<=$n.length?$n[t-1]:$n[$n.length-1]+(t-$n.length)*C0}function gI(e,t){const n=bn(e+1)-bn(e),r=Math.max(0,Math.min(n,t));return r===1?"Show 1 more chat":`Show ${r} more chats`}function yI(e,t,n){const r=bn(t+1)-bn(t),s=bn(t),i=Math.min(s+r,e.length);let a=0;for(let c=s;c<i;c+=1)Do(e[c])&&(a+=1);const l=Math.max(0,i-s-a);return l>0?l:Math.max(0,Math.min(r,n))}function Do(e){return Ss(e)}function P0(e){return _0(e)?0:Ss(e)?1:2}function j0(e,t){return Ss(e)?k0(e):Mo(e,t)}function M0(e,t){return e===null&&t===null?0:e===null?1:t===null?-1:t-e}function vI(e,t,n){const r=e.map((s,i)=>({row:s,index:i,lane:t==="active-first"?P0(s):0,at:j0(s,n)}));return r.sort((s,i)=>s.lane-i.lane||M0(s.at,i.at)||s.index-i.index),r.map(s=>s.row)}function _I(e,t){const{limit:n,currentId:r,searching:s=!1}=t;if(s)return{rows:[...e],lifted:!1,remaining:0};const i=[];let a=Math.max(0,n);for(const d of e){if(a>0){i.push(d),a-=1;continue}Do(d)&&i.push(d)}const l=Math.max(0,e.length-i.length);if(!r)return{rows:i,lifted:!1,remaining:l};const c=e.find(d=>d.session_id===r)??null;return c===null||i.includes(c)?{rows:i,lifted:!1,remaining:l}:{rows:[c,...i],lifted:!0,remaining:l}}function bI(e,t){if(t.searching)return{rows:[...e],lifted:!1,hidden:0,held:e.length};const n=bn(t.loads),r=[];let s=n;for(const c of e){if(Do(c)){r.push(c);continue}s>0&&(r.push(c),s-=1)}const i=t.currentId,a=i==null?null:e.find(c=>c.session_id===i)??null,l=a!==null&&!r.includes(a);return{rows:l&&a!==null?[a,...r]:r,lifted:l,hidden:e.length-r.length-(l?1:0),held:e.length}}function wI(e){if(e.add<=0)return null;const t=e.add===1?"Show 1 more chat":`Show ${e.add} more chats`;if(e.drawn>=e.total)return{label:t,aria:t};const n=`${e.drawn} of ${e.total}`;return{label:`${t} · ${n}`,aria:`${t} · ${n} shown`}}const D0="mt-4",N0="mt-2";function SI(e){return e?D0:N0}function kI(e,t,n,r){return n?e.toLocaleLowerCase().includes(n.toLocaleLowerCase())||(r??"").toLocaleLowerCase().includes(n.toLocaleLowerCase())||t>0:!0}function RI(e,t){if(t==="section")return null;if(t==="flat")return[{key:"all",label:"",rows:[...e]}];const n=new Map;for(const i of e){const a=i.binding?.team||i.binding?.agent||"",l=a||"ungrouped",c=n.get(l)??{key:l,label:a||"Ungrouped",rows:[]};c.rows.push(i),n.set(l,c)}const r=[...n.values()],s=r.findIndex(i=>i.key==="ungrouped");return s>0&&r.push(...r.splice(s,1)),r}function L0(e,t){return!e.hidden.includes(t)}function ju(e){return e.order.filter(t=>L0(e,t))}function EI(e,t){const n=e.hidden.includes(t)?e.hidden.filter(r=>r!==t):[...e.hidden,t];return{...e,hidden:n}}function II(e,t,n){const r=ju(e),s=r.indexOf(t),i=r[s+n];if(s<0||i===void 0)return e;const a=e.order.indexOf(t),l=e.order.indexOf(i),c=[...e.order];return c[a]=i,c[l]=t,{...e,order:c}}const $0=["running","today","week","older"];function Ql(e){return $0.includes(e)}function xI(e,t,n,r){if(!Ql(t)||r&&!r(t))return!1;const s=ju(e),i=s.indexOf(t);if(i<0)return!1;const a=s[i+n];return a===void 0||!Ql(a)?!1:r?r(a):!0}const U0=["section","agent","flat"],F0=["active-first","recent"];function TI(e){if(typeof e!="object"||e===null)return pn;const t=e,n=new Set(Yi),r=[];if(Array.isArray(t.order))for(const p of t.order)typeof p=="string"&&n.has(p)&&(r.includes(p)||r.push(p));for(const p of Yi)r.includes(p)||r.push(p);const s=[];if(Array.isArray(t.hidden))for(const p of t.hidden)typeof p=="string"&&n.has(p)&&(s.includes(p)||s.push(p));const i=U0.includes(t.groupBy)?t.groupBy:pn.groupBy,a=g0.includes(t.basis)?t.basis:pn.basis,l=F0.includes(t.orderBy)?t.orderBy:pn.orderBy,c=typeof t.loads=="number"&&Number.isFinite(t.loads)&&t.loads>0?Math.min(A0,Math.floor(t.loads)):0,d=[];if(Array.isArray(t.pinnedAgents)){for(const p of t.pinnedAgents)if(typeof p=="string"&&p!==""&&!d.includes(p)){if(d.length>=O0)break;d.push(p)}}const u=[],f=new Set;if(Array.isArray(t.pins))for(const p of t.pins)typeof p=="string"&&p.length!==0&&(f.has(p)||(f.add(p),u.push(p)));return{hidden:s,order:r,groupBy:i,tagsEnabled:typeof t.tagsEnabled=="boolean"?t.tagsEnabled:!1,autoTagForks:typeof t.autoTagForks=="boolean"?t.autoTagForks:pn.autoTagForks,basis:a,orderBy:l,loads:c,pins:u,pinnedAgents:d}}const Mu={sort:"recent",order:"asc",group:!0,workingOpen:!1,closedSections:[],kinds:[]},B0=["recent","name","kind","modified","created","size"],G0=["images","video","audio","documents","spreadsheets","presentations","code","archives","other"];function No(e){const t=e&&typeof e=="object"?e:{};return{sort:B0.includes(t.sort??"")?t.sort:Mu.sort,order:t.order==="desc"?"desc":"asc",group:typeof t.group=="boolean"?t.group:!0,workingOpen:t.workingOpen===!0,closedSections:Array.isArray(t.closedSections)?[...new Set(t.closedSections.filter(n=>["Highlights","Images","Videos","Sounds","Documents","Spreadsheets","Other"].includes(n)))]:[],kinds:Array.isArray(t.kinds)?[...new Set(t.kinds.filter(n=>G0.includes(n)))]:[]}}function CI(e,t){const n=r=>{switch(t.sort){case"name":return r.row.name;case"kind":return`${r.row.kind}\0${r.row.name}`;case"modified":return r.modified;case"created":return r.created;case"size":return r.row.document.sizeBytes??null;default:return r.mentioned}};return[...e].sort((r,s)=>{const i=n(r),a=n(s);if(i===null||a===null)return i===a?0:i===null?1:-1;const l=typeof i=="string"&&typeof a=="string"?i.localeCompare(a,void 0,{numeric:!0}):Number(i)-Number(a);return(t.order==="asc"?l:-l)||r.mentioned-s.mentioned})}const H0=e=>{switch(e.row.kind){case"images":return"Images";case"video":return"Videos";case"audio":return"Sounds";case"spreadsheets":return"Spreadsheets";case"documents":case"presentations":case"code":return"Documents";default:return"Other"}};function AI(e,t,n,r){const s=e.filter(l=>l.highlighted),i=e.filter(l=>!l.highlighted),a=[];if(s.length&&a.push({id:"Highlights",label:"Highlights",items:s,open:n||!r.has("Highlights"),highlights:!0}),s.length&&i.length&&(a.push({id:"Working files",label:"Working files",items:[],open:t.workingOpen||n,highlights:!1}),!t.workingOpen&&!n))return a;if(!t.group)i.length&&a.push({id:"Files",label:"Files",items:i,open:!0,highlights:!1});else for(const l of["Images","Videos","Sounds","Documents","Spreadsheets","Other"]){const c=i.filter(d=>H0(d)===l);c.length&&a.push({id:l,label:l,items:c,open:n||!r.has(l),highlights:!1})}return a}const W0=32,OI=4;function PI(e,t,n){const r=[],s=new Map,i=Math.max(136,t-16),a=Math.max(1,Math.floor((i+4)/140));let l=0;const c=(d,u,f,p,h=1)=>{p.forEach((g,m)=>s.set(g.row.document.id,{band:r.length,column:m})),r.push({section:d,kind:u,height:f,top:l,items:p,cols:h}),l+=f};for(const d of e)if(c(d,"header",W0,[]),!!d.open)if(d.highlights)for(const u of d.items)c(d,"highlight",u.why?68:44,[u]);else if(n&&d.id==="Images"){const u=(i-4*(a-1))/a,f=Math.round((u-8)*3/4)+32;for(let p=0;p<d.items.length;p+=a)c(d,"tiles",f,d.items.slice(p,p+a),a)}else if(n&&d.id==="Videos")for(const u of d.items)c(d,"video",Math.min(Math.round((i-8)*9/16),280)+32,[u]);else if(n&&d.id==="Sounds")for(const u of d.items)c(d,"audio",80,[u]);else for(const u of d.items)c(d,"compact",36,[u]);return{bands:r,height:l,columns:a,positions:s}}function jI(e,t,n,r){const s=Math.max(600,n*.75);let i=0,a=e.bands.length;for(;i<a;){const d=i+a>>>1,u=e.bands[d];u.top+u.height<t-s?i=d+1:a=d}const l=new Set;for(let d=i;d<e.bands.length&&e.bands[d].top<=t+n+s;d++)l.add(d);const c=r?e.positions.get(r):null;return c&&l.add(c.band),[...l].sort((d,u)=>d-u)}function MI(e,t,n,r){const s=e.positions.get(t);if(!s)return null;const i=e.bands[s.band],a=e.bands.filter(u=>u.section.id===i.section.id&&u.items.length);if(n==="Home")return a[0]?.items[0]?.row.document.id??null;if(n==="End")return a.at(-1)?.items.at(-1)?.row.document.id??null;if(n==="ArrowLeft"||n==="ArrowRight")return i.items[s.column+(n==="ArrowLeft"?-1:1)]?.row.document.id??null;const l=n==="ArrowUp"||n==="PageUp"?-1:1,c=i.top+(n.startsWith("Page")?r*l:l);let d=s.band+l;for(;d>=0&&d<e.bands.length;d+=l){const u=e.bands[d];if(u.items.length&&!(n.startsWith("Page")&&(l>0?u.top<c:u.top>c)))return u.items[Math.min(s.column,u.items.length-1)].row.document.id}if(n.startsWith("Page")){const u=e.bands.filter(p=>p.items.length),f=l<0?u[0]:u.at(-1);return f?.items[l<0?0:f.items.length-1]?.row.document.id??null}return null}const z0="both",Du="by-turn",Qi=[{value:"by-turn",label:"By turn"},{value:"by-response",label:"By response"}];function DI(e){for(const t of Qi)if(e===t.value)return t.value;return Du}function NI(e){return Qi.find(t=>t.value===e)?.label??Qi[0].label}const LI="primary+alt+shift+space",Z0=/^f([1-9]|1[0-9]|2[0-4])$/;function V0(e){return Z0.test(e)}function K0(e,t){const n=Y0(e,t);return t==="mac"?n.join(""):n.join("+")}function Y0(e,t){const r=t==="mac"?{primary:"⌘",meta:"⌘",ctrl:"⌃",alt:"⌥",shift:"⇧"}:{primary:"Ctrl",meta:t==="win"?"Win":"Super",ctrl:"Ctrl",alt:"Alt",shift:"Shift"},s={space:"Space",backspace:"Backspace",delete:"Delete",insert:"Insert",home:"Home",end:"End",pageup:"PageUp",pagedown:"PageDown",up:"Up",down:"Down",left:"Left",right:"Right"};return e.split("+").map(i=>i.trim().toLowerCase()).filter(i=>i.length>0).map(i=>i in r?r[i]:i in s?s[i]:V0(i)||i.length===1?i.toUpperCase():i)}const ks=[{id:"panel.console",label:"Open console",category:"Panels",defaultChord:"primary+j",scope:"app"},{id:"panel.canvas",label:"Open canvas",category:"Panels",defaultChord:"primary+shift+c",scope:"app"},{id:"panel.run",label:"Open run details",category:"Panels",defaultChord:null,scope:"app"},{id:"panel.ask",label:"Open asks",category:"Panels",defaultChord:null,scope:"app"},{id:"panel.browser",label:"Open browser",category:"Panels",defaultChord:null,scope:"app"},{id:"panel.code",label:"Open code review",category:"Panels",defaultChord:null,scope:"app"}],Q0=new Map(ks.map(e=>[e.id,e])),J0=e=>Q0.get(e),X0=new Set(["primary+0","primary+r","primary+shift+r","primary+t","primary+shift+t","primary+l",...[1,2,3,4,5,6,7,8,9].map(e=>`primary+${e}`)]),Lo=new Map([["primary+p","Reserved: opens the command palette from anywhere."],["primary+shift+p","Reserved: opens the command palette on commands."],["primary+shift+s","Reserved: starts speech to text."],["primary+k","Reserved: opens the command palette on chats."],["primary+n","Reserved: starts a new chat."],["primary+b","Reserved: toggles the sidebar."],["primary+[","Reserved: goes back in the browser, or between chats outside it."],["primary+]","Reserved: goes forward in the browser, or between chats outside it."],["primary+f","Reserved: finds in the browser page, or searches the transcript outside it."],["primary+alt+up","Reserved: walks up the chat regions."],["primary+alt+down","Reserved: walks down the chat regions."],["primary+shift+a","Reserved: archives the focused conversation."],["primary+shift+l","Reserved: opens the focused conversation's tags."],["primary+s","Reserved: saves the canvas document."],["primary+o","Reserved: opens a file in the canvas."],["primary+shift+up","Reserved: moves the focused chat up the pinned order."],["primary+shift+down","Reserved: moves the focused chat down the pinned order."],["primary+c","Reserved: copy."],["primary+x","Reserved: cut."],["primary+v","Reserved: paste."],["primary+a","Reserved: select all."],["primary+z","Reserved: undo."],["primary+shift+z","Reserved: redo."],["primary+y","Reserved: redo on Windows and Linux."],["primary+r","Reserved: reloads the browser page."],["primary+shift+r","Reserved: reloads the browser page, ignoring the cache."],["primary+t","Reserved: opens a new browser tab."],["primary+shift+t","Reserved: reopens the last closed browser tab."],["primary+l","Reserved: focuses the browser address bar."],...[1,2,3,4,5,6,7,8,9].map(e=>[`primary+${e}`,e===9?"Reserved: switches to the last browser tab.":`Reserved: switches to browser tab ${e}.`]),["primary+0","Reserved: resets browser page zoom, or app zoom outside it."],["primary+plus","Reserved: zooms the browser page or app in."],["primary+=","Reserved: zooms the browser page or app in."],["primary+-","Reserved: zooms the browser page or app out."],["primary+q","Reserved: quits the app."],["primary+w","Reserved: closes the browser tab, or the window outside it."],["primary+m","Reserved: minimises the window."]]),q0=["primary","alt","shift"],eS={primary:"primary",meta:"primary",cmd:"primary",command:"primary",super:"primary",ctrl:"primary",control:"primary",alt:"alt",option:"alt",shift:"shift"},tS=new Set(["space","backspace","delete","insert","home","end","pageup","pagedown","up","down","left","right"]),nS=e=>tS.has(e)||/^[a-z0-9]$/.test(e);function $o(e){if(typeof e!="string")return null;const t=e.toLowerCase().split("+").map(i=>i.trim()).filter(i=>i.length>0);if(t.length===0)return null;const n=t[t.length-1];if(!nS(n))return null;const r=new Set;for(const i of t.slice(0,-1)){const a=eS[i];if(a===void 0)return null;r.add(a)}return[...q0.filter(i=>r.has(i)),n].join("+")}const Nu=e=>e.split("+").includes("primary");function Rs(e,t){const n=t?.[e];return n===null?null:typeof n=="string"&&!Lo.has(n)?n:J0(e)?.defaultChord??null}function $I(e){const t=new Map;for(const n of ks){const r=Rs(n.id,e);r!==null&&!t.has(r)&&t.set(r,n.id)}return t}const rS=e=>e==="mac"?"A shortcut needs ⌘ or Ctrl.":"A shortcut needs Ctrl.";function sS(e,t,n,r="linux"){const s=e===null?null:$o(e);if(s===null)return"That key cannot be bound.";if(!Nu(s))return rS(r);const i=Lo.get(s);if(i!==void 0)return i;for(const a of ks)if(a.id!==t&&Rs(a.id,n)===s)return`Already assigned to ${a.label}.`;return null}function iS(e){if(e===null||typeof e!="object"||Array.isArray(e))return{};const t=e,n=new Set,r={};for(const s of ks){const i=t[s.id];if(i===null){r[s.id]=null;continue}const a=typeof i=="string"?$o(i):null,l=a!==null&&X0.has(a),c=a!==null&&Nu(a)&&(l||!Lo.has(a)&&!n.has(a))?a:null;c!==null&&(r[s.id]=c);const d=Rs(s.id,r);d!==null&&n.add(d)}return r}function UI(e,t,n){const r=Rs(e,t);return r===null?null:Lu(r,n)}function Lu(e,t){return K0(e,t)}function FI(e,t){const n=e.split("+"),r=n[n.length-1],s=n.slice(0,-1).map(i=>i==="primary"?t==="mac"?"Meta":"Control":i==="shift"?"Shift":i==="alt"?"Alt":i);return{glyph:Lu(e,t),aria:[...s,r.length===1?r.toUpperCase():r].join("+")}}const Jl=64,Ji=["canvas","run","browser","console","code"],oS={canvas:"isCanvasOpen",run:"isRunPanelOpen",browser:"isBrowserPaneOpen",console:"isConsolePaneOpen",code:"isCodeReviewPaneOpen"};function $u(e){return typeof e=="string"&&Ji.includes(e)}function Uo(e){return e.startsWith("draft:")}function Rr(e,t){for(let n=e.length-1;n>=0;n-=1){const r=e[n];if(r[0]===t)return r[1]}}function Fo(e){return e.length>Jl?e.slice(e.length-Jl):e}function Uu(e,t,n){return Fo([...e.filter(([r])=>r!==t),[t,n]])}function aS(e,t,n){return Rr(e,t)!==n?e:e.filter(([r])=>r!==t)}function lS(e,t){return Rr(e,t)===void 0?e:e.filter(([n])=>n!==t)}function cS(e,t,n){const r=Rr(e,t);return r===void 0?e:Fo([...e.filter(([s])=>s!==t&&s!==n),[n,r]])}const Xl=Object.freeze({isCanvasOpen:!1,isRunPanelOpen:!1,isBrowserPaneOpen:!1,isConsolePaneOpen:!1,isCodeReviewPaneOpen:!1});function ql(e,t,n){if(n||typeof t!="string")return Xl;const r=Rr(e,t);return r===void 0?Xl:{isCanvasOpen:r==="canvas",isRunPanelOpen:r==="run",isBrowserPaneOpen:r==="browser",isConsolePaneOpen:r==="console",isCodeReviewPaneOpen:r==="code"}}function dS(e){if(!Array.isArray(e))return[];const t=new Map;for(const n of e){if(!Array.isArray(n)||n.length!==2)continue;const[r,s]=n;typeof r!="string"||r===""||Uo(r)||$u(s)&&(t.delete(r),t.set(r,s))}return Fo([...t.entries()])}function BI(e){const t=new Set(Object.keys(e.forgotten));for(const[n,r]of Object.entries(e.archiveFacts))r?.archived===!0&&r.answered===!0&&t.add(n);return t}function ec(e){return oS[e]}const uS={canvas:"isCanvasOpen",run:"isRunPanelOpen",browser:"isBrowserPaneOpen",console:"isConsolePaneOpen",code:"isCodeReviewPaneOpen"},Er=e=>e.isCanvasOpen?"canvas":e.isRunPanelOpen?"run":e.isBrowserPaneOpen?"browser":e.isConsolePaneOpen?"console":e.isCodeReviewPaneOpen?"code":e.isAskDrawerOpen?"ask":null,Es=(e,t)=>e==="ask"?t.askDrawerScope==="fleet"||t.rightSlotRoute.mounted&&t.rightSlotRoute.session:t.rightSlotRoute.mounted,fS=e=>{const t=Er(e);return t===null||t==="ask"?null:uS[t]},Ct=e=>({isRunPanelOpen:e==="isRunPanelOpen",isCanvasOpen:e==="isCanvasOpen",isBrowserPaneOpen:e==="isBrowserPaneOpen",isConsolePaneOpen:e==="isConsolePaneOpen",isCodeReviewPaneOpen:e==="isCodeReviewPaneOpen",isAskDrawerOpen:e==="isAskDrawerOpen",askDrawerEvictedPane:null}),Gt=(e,t)=>{const n=e.rightSlotKey;return typeof n!="string"?{}:{rightSlotMemory:Uu(e.rightSlotMemory,n,t)}},Un=(e,t)=>{const n=e.rightSlotKey;if(typeof n!="string")return{};const r=aS(e.rightSlotMemory,n,t);return r===e.rightSlotMemory?{}:{rightSlotMemory:r}},pS=e=>{const t=e.rightSlotKey;if(typeof t!="string")return{};const n=lS(e.rightSlotMemory,t);return n===e.rightSlotMemory?{}:{rightSlotMemory:n}},hS=Object.freeze({mounted:!1,session:!1}),Fu=Object.freeze([]);function GI(e,t){const n=Er(t);if(n===null||!Es(n,t))return 0;let r;switch(n){case"canvas":case"ask":r=Math.max(Cu,t.rightSlotWidth||Fn);break;case"run":r=Math.max(nc,t.rightSlotWidth||Fn);break;case"browser":r=Math.max(vS,t.rightSlotWidth||Fn);break;case"console":r=Math.max(_S,t.rightSlotWidth||Fn);break;case"code":r=Math.max(nc,t.rightSlotWidth||Fn);break}return e<=0?r:n==="canvas"||n==="ask"?Math.min(r,Au(e)):Math.min(r,Math.max(0,e-xu))}function HI(e){const t=Er(e);return t!==null&&Es(t,e)}function WI(e){const t=Er(e);return t!==null&&Es(t,e)?t:null}function zI(e){const t=Er(e);return(t==="canvas"||t==="ask")&&Es(t,e)}const Fn=640,tc=kr,mS=20,gS=4,yS=20,nc=320,vS=480,_S=480,bS=5e3,ZI=(e,t)=>e.some(n=>n.surface===t),VI=(e,t=Date.now())=>e.some(n=>t-n.at<bS),wS=[],SS=4,kS=["chatMeasureWidth"],KI=_r()(ms((e,t)=>({finderFiles:Mu,setFinderFiles:n=>e({finderFiles:No({...t().finderFiles,...n})}),isCommandPaletteOpen:!1,commandPaletteQuery:"",isSidebarCollapsed:!1,sidebarOverflowExpanded:!1,showAgentReasoning:!1,transcriptDisplayMode:Du,themeName:Qu,rightSlotWidth:0,chatSidebarWidth:tc,chatSidebarRegions:z0,chatSidebarView:pn,chatSidebarListHeight:null,chatSidebarOrder:"entities-first",dismissedBuiltinOfferSignature:"",isCanvasOpen:!1,isRunPanelOpen:!1,isBrowserPaneOpen:!1,isConsolePaneOpen:!1,isCodeReviewPaneOpen:!1,rightSlotKey:void 0,rightSlotMemory:Fu,rightSlotLegacySeed:null,isAskDrawerOpen:!1,askDrawerScope:"session",askDrawerEvictedPane:null,askOpenIntent:null,rightSlotRoute:hS,consoleOpenIntent:null,consoleLiveSurface:null,runPanelReveal:null,codeReviewReveal:null,browserPaneScope:"conversation",consoleActiveSurface:null,consoleUnseen:wS,isCreateAgentDialogOpen:!1,mentionRecents:null,profileRecents:{agent:[],team:[]},conversationRecents:[],shortcutBindings:{},openCreateAgentDialog:()=>{e({isCreateAgentDialogOpen:!0})},closeCreateAgentDialog:()=>{e({isCreateAgentDialogOpen:!1})},openCommandPalette:()=>{e({isCommandPaletteOpen:!0})},closeCommandPalette:()=>{e({isCommandPaletteOpen:!1,commandPaletteQuery:""})},toggleCommandPalette:(n="")=>{e(r=>({isCommandPaletteOpen:!r.isCommandPaletteOpen,commandPaletteQuery:r.isCommandPaletteOpen?r.commandPaletteQuery:n}))},setCommandPaletteQuery:n=>{e({commandPaletteQuery:n})},toggleSidebar:()=>{e(n=>({isSidebarCollapsed:!n.isSidebarCollapsed}))},setSidebarOverflowExpanded:n=>{e({sidebarOverflowExpanded:n})},setSidebarCollapsed:n=>{e({isSidebarCollapsed:n})},setShowAgentReasoning:n=>{e({showAgentReasoning:n})},setTranscriptDisplayMode:n=>{e({transcriptDisplayMode:n})},setTheme:n=>{e({themeName:n})},setCanvasOpen:n=>{e(r=>n?{...Ct("isCanvasOpen"),...Gt(r,"canvas")}:{isCanvasOpen:!1,...Un(r,"canvas")})},setRunPanelOpen:n=>{e(r=>n?{...Ct("isRunPanelOpen"),...Gt(r,"run")}:{isRunPanelOpen:!1,...Un(r,"run")})},setBrowserPaneOpen:n=>{e(r=>n?{...Ct("isBrowserPaneOpen"),...Gt(r,"browser")}:{isBrowserPaneOpen:!1,...Un(r,"browser")})},setConsolePaneOpen:n=>{e(r=>n?{...Ct("isConsolePaneOpen"),...Gt(r,"console")}:{isConsolePaneOpen:!1,...Un(r,"console")})},setCodeReviewPaneOpen:n=>{e(r=>n?{...Ct("isCodeReviewPaneOpen"),...Gt(r,"code")}:{isCodeReviewPaneOpen:!1,...Un(r,"code")})},clearCodeReviewReveal:n=>{e(r=>r.codeReviewReveal?.nonce===n?{codeReviewReveal:null}:{})},revealCodeReviewPane:()=>{e(n=>({...Ct("isCodeReviewPaneOpen"),...Gt(n,"code"),codeReviewReveal:{nonce:(n.codeReviewReveal?.nonce??0)+1}}))},setAskDrawerOpen:(n,r,s)=>{e(i=>{const a=typeof i.rightSlotKey=="string";if(n)return{...Ct("isAskDrawerOpen"),askDrawerScope:r,askDrawerEvictedPane:a?null:fS(i),askOpenIntent:null};const l={isAskDrawerOpen:!1,askDrawerEvictedPane:null,askOpenIntent:null};return a?s?.dismissSlot?{...l,...pS(i)}:{...l,...ql(i.rightSlotMemory,i.rightSlotKey,!1)}:i.rightSlotKey===null?s?.dismissSlot?{...l,rightSlotLegacySeed:null}:l:s?.dismissSlot?{...l,rightSlotLegacySeed:null}:{...l,...i.askDrawerEvictedPane===null?null:{[i.askDrawerEvictedPane]:!0}}})},requestAskOpen:(n,r="menu")=>{e({askOpenIntent:{scope:n,via:r}})},clearAskOpenIntent:n=>{e(r=>r.askOpenIntent?.scope===n?{askOpenIntent:null}:{})},setConsoleActiveSurface:n=>{e({consoleActiveSurface:n})},requestConsoleOpen:n=>{e({consoleOpenIntent:n})},clearConsoleOpenIntent:n=>{e(r=>r.consoleOpenIntent===n?{consoleOpenIntent:null}:{})},setConsoleLiveSurface:(n,r)=>{e(s=>{if(n===null||r<=0)return s.consoleLiveSurface===null?{}:{consoleLiveSurface:null};const i=s.consoleLiveSurface;return i?.sessionId===n&&i.count===r?{}:{consoleLiveSurface:{sessionId:n,count:r}}})},markConsoleUnseen:(n,r)=>{e(s=>s.consoleUnseen.some(i=>i.surface===r)?{}:{consoleUnseen:[...s.consoleUnseen,{sessionId:n,surface:r,at:Date.now()}]})},clearConsoleUnseen:n=>{const r=Array.isArray(n)?n:[n];e(s=>{const i=s.consoleUnseen.filter(a=>!r.includes(a.surface));return i.length===s.consoleUnseen.length?{}:{consoleUnseen:i}})},setRightSlotWidth:n=>{e({rightSlotWidth:n})},restoreDefaultRightSlotWidth:()=>{e({rightSlotWidth:0})},bindRightSlotKey:(n,r)=>{e(s=>{let i=s.rightSlotMemory,a=s.rightSlotLegacySeed;const l=r?.admittedFrom;return typeof l=="string"&&typeof n=="string"&&(i=cS(i,l,n)),n===null||(Uo(n)?a=null:a!==null&&Rr(i,n)===void 0&&(i=Uu(i,n,a),a=null)),{rightSlotKey:n,rightSlotMemory:i,rightSlotLegacySeed:a,...ql(i,n,s.isAskDrawerOpen)}})},setRightSlotRoute:n=>{const r=t().rightSlotRoute;r.mounted===n.mounted&&r.session===n.session||e({rightSlotRoute:{...n}})},setShortcutBinding:(n,r)=>{if(r===null){e(i=>{const a={...i.shortcutBindings};return delete a[n],{shortcutBindings:a}});return}const s=$o(r);s!==null&&sS(s,n,t().shortcutBindings)===null&&e(i=>({shortcutBindings:{...i.shortcutBindings,[n]:s}}))},clearShortcutBinding:n=>{e(r=>({shortcutBindings:{...r.shortcutBindings,[n]:null}}))},setBrowserPaneScope:n=>{e({browserPaneScope:n})},revealRunPanelSection:n=>{e(r=>({...Ct("isRunPanelOpen"),...Gt(r,"run"),runPanelReveal:{section:n,nonce:(r.runPanelReveal?.nonce??0)+1}}))},clearRunPanelReveal:n=>{e(r=>r.runPanelReveal?.nonce===n?{runPanelReveal:null}:{})},setChatSidebarWidth:n=>{e({chatSidebarWidth:Math.min(Iu,Math.max(Eu,n))})},setChatSidebarRegions:n=>{e({chatSidebarRegions:n})},setChatSidebarListHeight:n=>{e({chatSidebarListHeight:n})},restoreDefaultChatSidebarListHeight:()=>{e({chatSidebarListHeight:null})},setChatSidebarOrder:n=>{e({chatSidebarOrder:n})},setChatSidebarView:n=>{e({chatSidebarView:n})},dismissBuiltinOffer:n=>{e({dismissedBuiltinOfferSignature:n})},restoreDefaultChatSidebarWidth:()=>{e({chatSidebarWidth:tc})},rememberMention:(n,r)=>{e(s=>{const i=s.mentionRecents,a=i?.cwd===n?i.paths:[],l=[r,...a.filter(c=>c!==r)].slice(0,mS);return{mentionRecents:{cwd:n,paths:l}}})},rememberProfile:(n,r)=>{e(s=>({profileRecents:{...s.profileRecents,[n]:RS(s.profileRecents[n]??[],r)}}))},rememberConversation:n=>{e(r=>{const s=xS(r.conversationRecents),i=ES(s,n);return i.length===s.length&&i.every((a,l)=>a===s[l])?r:{conversationRecents:i}})}}),{name:"ui-preferences-storage",version:SS,migrate:OS,partialize:TS,merge:AS}));function RS(e,t){return[t,...e.filter(n=>n!==t)].slice(0,gS)}function ES(e,t){return[t,...e.filter(n=>n!==t)].slice(0,yS)}const IS=[];function xS(e){return Array.isArray(e)?e:IS}function TS(e){const{runPanelReveal:t,codeReviewReveal:n,consoleOpenIntent:r,consoleLiveSurface:s,askOpenIntent:i,isAskDrawerOpen:a,askDrawerScope:l,askDrawerEvictedPane:c,rightSlotRoute:d,isCanvasOpen:u,isRunPanelOpen:f,isBrowserPaneOpen:p,isConsolePaneOpen:h,isCodeReviewPaneOpen:g,rightSlotKey:m,...y}=e;return{...y,rightSlotMemory:CS(e.rightSlotMemory)}}function CS(e){return(e??Fu).filter(([t])=>!Uo(t))}function AS(e,t){const n=e??{},{isCanvasOpen:r,isRunPanelOpen:s,isBrowserPaneOpen:i,isConsolePaneOpen:a,isCodeReviewPaneOpen:l,...c}=n;return{...t,...c,finderFiles:No(n.finderFiles),rightSlotKey:t.rightSlotKey,rightSlotMemory:dS(n.rightSlotMemory),rightSlotLegacySeed:$u(n.rightSlotLegacySeed)?n.rightSlotLegacySeed:null,shortcutBindings:iS(n.shortcutBindings)}}function OS(e,t){const n={...e??{}};if(t<1&&PS(n),t<2)for(const r of kS)delete n[r];if(t<3){let r=null;for(const s of Ji)if(n[ec(s)]===!0){r=s;break}r!==null&&(n.rightSlotLegacySeed=r);for(const s of Ji)delete n[ec(s)]}return t<4&&(n.finderFiles=No(n.finderFiles)),n}function PS(e){const t=[["canvasWidth",800],["runPanelWidth",420],["browserPanelWidth",640],["consolePanelWidth",796]];let n=0;for(const[r,s]of t){const i=e[r];if(typeof i=="number"&&i>0&&i!==s){n=i;break}}for(const[r]of t)delete e[r];e.rightSlotWidth=n}const Bu={settings:["desktop","settings"],capabilities:["desktop","capabilities"],providers:["desktop","auth","providers"],commands:["desktop","commands"],accounts:["desktop","auth","accounts"],catalogue:["desktop","models"],credentials:e=>["desktop","credentials",e]},jS=3e4,MS=15e3;function DS(e){return e?.desktop_available===!0}function YI(){const{client:e,provided:t}=u0();return fu({enabled:t,queryKey:Bu.capabilities,queryFn:async()=>{try{return await xe({op:"capabilities"})}catch(n){throw n instanceof Error?n:new Error(String(n))}},staleTime:6e4,retry:!1,refetchInterval:n=>DS(n.state.data)?jS:MS,refetchIntervalInBackground:!0},e)}function NS(e,t,n=1){return e?e.desktop_available?(e.features?.[t]??0)>=n?"enabled":"below-version":"unpaired":"unknown"}function QI(e,t,n=1){return NS(e,t,n)==="enabled"}function JI(e){return fu({queryKey:Bu.providers,queryFn:()=>xe({op:"providers.list"}).then(t=>t.providers),enabled:e,staleTime:3e4,retry:i0})}const Xi=e=>e.replace(/\\/g,"/"),XI=()=>window.location.hash?Xi(window.location.hash.substring(1)):Xi(window.location.pathname),qI=(e,t)=>{if(t!==null&&(e===t||e.startsWith(`${t}/`)||e.startsWith(`${t}\\`))){const r=e.substring(t.length);return r.startsWith("/")||r.startsWith("\\")||r===""?`~${r.replace(/\\/g,"/")}`:`~/${r.replace(/\\/g,"/")}`}return e==="~"?"~":e.replace(/\\/g,"/")},ex=(e,t)=>{if(e.length<=t)return e;const n=e.split("/"),r=n[n.length-1]??"";if(r.length+1>=t)return`…${r.slice(-39)}`;const s=n[0]==="~"||n[0]==="",i=s?n.slice(0,2):n.slice(0,1),a=n.slice(i.length),l=g=>{const m=t-g.length-(g?3:2);let y=[];for(let _=a.length-1;_>=0;_-=1){const v=[a[_],...y];if(v.join("/").length>m)break;y=v}return y},c=(g,m)=>g?`${g}/…/${m.join("/")}`:`…/${m.join("/")}`,d=i.join("/"),u=l(d);if(u.length>0)return u.length===a.length?e:c(d,u);const f=s?n[0]:"",p=l(f);if(p.length>0)return c(f,p);const h=t-(f?`${f}/…/`.length:2);return h>0?c(f,[r.slice(-h)]):"…"},tx=(e,t)=>Xi(e).includes(t);export{Bu as $,UE as A,dE as B,Fd as C,ye as D,iE as E,Bd as F,oE as G,cE as H,sE as I,lE as J,NS as K,XI as L,Yd as M,BE as N,kE as O,xa as P,RE as Q,aE as R,Ue as S,ws as T,Hd as U,rI as V,xS as W,_r as X,YR as Y,t0 as Z,ms as _,YI as a,W_ as a$,Fp as a0,Qb as a1,Ul as a2,DE as a3,ME as a4,uw as a5,JE as a6,uk as a7,Qp as a8,Jp as a9,lw as aA,iw as aB,ow as aC,Gl as aD,dw as aE,Hl as aF,cw as aG,aw as aH,tx as aI,FS as aJ,US as aK,$S as aL,BS as aM,hp as aN,st as aO,Yn as aP,Qh as aQ,WI as aR,UI as aS,Je as aT,ZR as aU,$t as aV,da as aW,to as aX,nh as aY,ps as aZ,yc as a_,ja as aa,ZS as ab,zS as ac,GS as ad,xR as ae,wR as af,kR as ag,RR as ah,Pd as ai,ks as aj,Rs as ak,Lu as al,sS as am,tg as an,pb as ao,XE as ap,Qi as aq,DI as ar,PE as as,Sb as at,wb as au,Sr as av,Pe as aw,ru as ax,ew as ay,rw as az,VE as b,mI as b$,rE as b0,X as b1,fn as b2,nE as b3,ji as b4,Mi as b5,eE as b6,tE as b7,QR as b8,JR as b9,lI as bA,EI as bB,II as bC,xI as bD,pE as bE,uE as bF,Qd as bG,OE as bH,TI as bI,vI as bJ,_I as bK,bn as bL,pn as bM,oI as bN,ju as bO,uI as bP,kI as bQ,yr as bR,SI as bS,RI as bT,gI as bU,yI as bV,Pl as bW,pI as bX,fI as bY,hI as bZ,x0 as b_,XR as ba,FI as bb,VI as bc,bS as bd,ZI as be,s0 as bf,QE as bg,YE as bh,KE as bi,Rc as bj,ok as bk,qS as bl,vb as bm,Ec as bn,Xi as bo,em as bp,yp as bq,jE as br,vp as bs,Mo as bt,nk as bu,Cl as bv,ak as bw,fb as bx,L0 as by,Ql as bz,QI as c,q_ as c$,cI as c0,bI as c1,wI as c2,E0 as c3,fE as c4,Ss as c5,aI as c6,EE as c7,iI as c8,dI as c9,_S as cA,Yl as cB,xu as cC,Sm as cD,vR as cE,_R as cF,xE as cG,IE as cH,TE as cI,AE as cJ,CE as cK,hk as cL,wr as cM,ku as cN,ZE as cO,Ro as cP,VR as cQ,TR as cR,Vd as cS,ob as cT,_s as cU,bE as cV,wE as cW,Am as cX,KR as cY,OR as cZ,T_ as c_,CI as ca,AI as cb,PI as cc,jI as cd,W0 as ce,OI as cf,MI as cg,HS as ch,sI as ci,qI as cj,ex as ck,NI as cl,zE as cm,Mv as cn,pk as co,HI as cp,hS as cq,GI as cr,qE as cs,Cu as ct,Au as cu,ik as cv,sk as cw,nc as cx,Fn as cy,vS as cz,xe as d,Av as d$,Zd as d0,J_ as d1,Tl as d2,hE as d3,h0 as d4,_E as d5,qR as d6,YS as d7,QS as d8,dk as d9,FE as dA,GE as dB,ck as dC,fk as dD,Ze as dE,db as dF,u0 as dG,kc as dH,zI as dI,eI as dJ,tI as dK,l0 as dL,Ki as dM,Tu as dN,Iu as dO,Eu as dP,JS as dQ,ha as dR,Mh as dS,XS as dT,Sp as dU,$R as dV,UR as dW,VS as dX,KS as dY,LR as dZ,jd as d_,o as da,$I as db,Ut as dc,Qt as dd,gi as de,nI as df,HE as dg,e0 as dh,Ou as di,Hb as dj,K0 as dk,NE as dl,Uo as dm,BI as dn,Ng as dp,$i as dq,pr as dr,Vb as ds,sw as dt,rn as du,gu as dv,$E as dw,Fw as dx,pu as dy,LE as dz,JI as e,$k as e$,ld as e0,Du as e1,Wc as e2,Lh as e3,ek as e4,bR as e5,SR as e6,AR as e7,CR as e8,ER as e9,dR as eA,ry as eB,Vs as eC,lR as eD,ay as eE,rR as eF,Kk as eG,tR as eH,pR as eI,Vk as eJ,nR as eK,iR as eL,mR as eM,hR as eN,sR as eO,Yk as eP,Qk as eQ,Jk as eR,Xk as eS,qk as eT,eR as eU,fR as eV,_p as eW,bp as eX,wp as eY,km as eZ,Dc as e_,mn as ea,rk as eb,lk as ec,tk as ed,Oc as ee,en as ef,Ot as eg,zk as eh,Zk as ei,Hk as ej,Gk as ek,Nk as el,zc as em,Fk as en,Ok as eo,Pk as ep,Mk as eq,gR as er,Dm as es,Bk as et,oy as eu,cR as ev,nd as ew,uR as ex,oR as ey,aR as ez,n0 as f,Hc as f0,Fc as f1,Ik as f2,ga as f3,$o as f4,V0 as f5,Dk as f6,mg as f7,Uk as f8,Wk as f9,jR as fA,cr as fB,oo as fC,fm as fD,pm as fE,gp as fF,yk as fG,_k as fH,Ha as fI,gk as fJ,mk as fK,vk as fL,bc as fM,bk as fN,wk as fO,yE as fP,PR as fQ,NR as fR,MR as fS,DR as fT,mE as fU,gE as fV,Sk as fW,ma as fX,Lk as fa,vg as fb,Rk as fc,Gm as fd,xk as fe,Tk as ff,Ak as fg,Ck as fh,jk as fi,yR as fj,GR as fk,FR as fl,Hv as fm,WR as fn,BR as fo,HR as fp,zR as fq,kk as fr,Ek as fs,hs as ft,eo as fu,_i as fv,xp as fw,Yb as fx,IR as fy,Xs as fz,no as g,fu as h,Np as i,Lp as j,$p as k,Up as l,LI as m,WE as n,vE as o,WS as p,Qe as q,i0 as r,SE as s,rb as t,qb as u,tb as v,KI as w,We as x,Y0 as y,$w as z};