bridge-agent 0.20.5 → 0.20.6
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.
|
Binary file
|
package/dist/index.js
CHANGED
|
@@ -282,7 +282,7 @@ On your first message, call bridge_get_blueprint: if the project blueprint is em
|
|
|
282
282
|
`)).join(`
|
|
283
283
|
`);var BR=/^[A-Za-z0-9][A-Za-z0-9._:\/-]{0,127}$/;function Gp(t){return t?BR.test(t):!1}var VR=new Set(["claude","aider","ollama"]);function nk(t){return VR.has(t)}var ok=A(require("os"));async function Wp(){return ok.default.platform()!=="darwin"?null:{key:"sim_ios",displayName:"iOS Simulator",binaryPath:"xcrun",authStatus:"ok"}}var Nn=require("child_process"),Jp=require("fs/promises"),lk=require("crypto"),Qo=A(require("fs")),ll=A(require("path")),Kp=A(require("os"));var $s=require("child_process"),ik=require("fs/promises"),sk=A(require("path")),ak=A(require("os"));async function GR(){return new Promise(t=>{let e=(0,$s.spawn)("xcrun",["simctl","list","devices","booted","--json"],{timeout:5e3}),r="";e.stdout.on("data",n=>{r+=n.toString("utf8")}),e.on("close",n=>{if(n!==0){t(null);return}try{let o=JSON.parse(r);for(let i of Object.values(o.devices)){let s=i.find(a=>a.state==="Booted");if(s){t(s.udid);return}}t(null)}catch{t(null)}}),e.on("error",()=>t(null))})}async function WR(){return new Promise(t=>{let e=(0,$s.spawn)("xcrun",["simctl","list","devices","available","--json"],{timeout:5e3}),r="";e.stdout.on("data",n=>{r+=n.toString("utf8")}),e.on("close",n=>{if(n!==0){t([]);return}try{let o=JSON.parse(r),i=[];for(let[s,a]of Object.entries(o.devices)){for(let c of a){let l=s.replace(/^com\.apple\.CoreSimulator\.SimRuntime\./,"").replace(/-/g,".");if(i.push(`${c.name} (${l})`),i.length>=3)break}if(i.length>=3)break}t(i)}catch{t([])}}),e.on("error",()=>t([]))})}async function Hp(t){let e=[],r=null,n=await new Promise(i=>{let s=(0,$s.spawn)("xcrun",["simctl","help"],{timeout:2e3});s.on("close",a=>i(a===0)),s.on("error",()=>i(!1)),s.stdout?.resume(),s.stderr?.resume()});e.push({id:"xcrun_exists",status:n?"pass":"fail",label:"Xcode CLI tools",detail:n?void 0:"Xcode command-line tools not found. Install them to use the iOS Simulator panel.",fixCmd:n?void 0:"xcode-select --install"});let o=!1;if(n){let i=sk.default.join(ak.default.homedir(),".local/bin/idb");o=await(0,ik.access)(i).then(()=>!0).catch(()=>!1)}if(e.push({id:"idb_present",status:o?"pass":"fail",label:"idb",detail:o?void 0:"idb not found at ~/.local/bin/idb. Required for simulator automation.",fixCmd:o?void 0:"pip3 install fb-idb && brew install facebook/fb/idb-companion"}),n){let i=await new Promise(s=>{let a=(0,$s.spawn)("xcrun",["simctl","list","--json"],{timeout:5e3});a.on("close",c=>s(c===0)),a.on("error",()=>s(!1)),a.stdout?.resume(),a.stderr?.resume()});if(e.push({id:"simctl_ok",status:i?"pass":"fail",label:"simctl",detail:i?void 0:"simctl is not responding. Xcode may not be fully installed.",fixCmd:i?void 0:"sudo xcode-select --reset"}),i)if(r=await GR(),r)e.push({id:"booted_simulator",status:"pass",label:"Booted simulator"});else{let s=await WR();e.push({id:"booted_simulator",status:"fail",label:"Booted simulator",detail:s.length>0?`No simulator is booted. Available: ${s.join(", ")}. Open Simulator.app and boot one.`:"No simulator is booted and no devices found. Open Xcode \u2192 Window \u2192 Devices and Simulators to add one.",fixCmd:"open -a Simulator"})}else e.push({id:"booted_simulator",status:"fail",label:"Booted simulator",detail:"Skipped \u2014 previous check failed"})}else e.push({id:"simctl_ok",status:"fail",label:"simctl",detail:"Skipped \u2014 previous check failed"}),e.push({id:"booted_simulator",status:"fail",label:"Booted simulator",detail:"Skipped \u2014 previous check failed"});return{checks:e,udid:r}}var Yp=ll.default.join(Kp.default.homedir(),".local/bin/idb");async function ck(t){try{let e=await new Promise((i,s)=>{let a=(0,Nn.spawn)(Yp,["describe","--udid",t,"--json"],{timeout:1e4}),c="",l="";a.stdout.on("data",u=>{c+=u.toString("utf8")}),a.stderr.on("data",u=>{l+=u.toString("utf8")}),a.on("close",u=>{u!==0?s(new Error(l||`idb exited ${u}`)):i(c)}),a.on("error",u=>s(u))}),r=JSON.parse(e),n=r.screen_dimensions?.width_points,o=r.screen_dimensions?.height_points;if(Number.isFinite(n)&&Number.isFinite(o))return{width:n,height:o}}catch(e){console.warn("[daemon] simulator.metadata.error",{udid:t,error:String(e)})}return{}}function HR(t,e,r){let n=Buffer.from(t,"utf-8"),o=Buffer.allocUnsafe(1+n.length+4);return o.writeUInt8(n.length,0),n.copy(o,1),o.writeUInt16BE(Math.max(0,Math.min(65535,e)),1+n.length),o.writeUInt16BE(Math.max(0,Math.min(65535,r)),1+n.length+2),o}function JR(t,e){let r=`/tmp/sim_frame_${e}.png`,n=`/tmp/sim_frame_${e}.jpg`;return new Promise(o=>{let i=(0,Nn.spawn)("xcrun",["simctl","io",t,"screenshot",r],{stdio:["ignore","ignore","ignore"]});i.on("close",async s=>{if(s!==0){o(null);return}try{await new Promise((a,c)=>{let l=(0,Nn.spawn)("sips",["-s","format","jpeg",r,"--out",n],{stdio:["ignore","ignore","ignore"]});l.on("close",u=>u===0?a():c(new Error(`sips exited ${u}`))),l.on("error",u=>c(u))}),o(await(0,Jp.readFile)(n))}catch{try{o(await(0,Jp.readFile)(r))}catch{o(null)}}}),i.on("error",()=>o(null))})}function cl(t,e){return new Promise((r,n)=>{let o=(0,Nn.spawn)(Yp,[...e,"--udid",t],{timeout:15e3}),i="";o.stderr.on("data",s=>{i+=s.toString("utf8")}),o.on("close",s=>{s!==0?n(new Error(i||`idb exited ${s}`)):r()}),o.on("error",s=>n(s))})}var ul=class{sessions=new Map;pendingSubscriptions=new Set;pendingUdids=new Map;pendingDaemonBootedUdids=new Set;bootedUdidsByAgent=new Map;ws=null;daemonId;installProc=new Map;cancelledInstalls=new Set;constructor(e){this.daemonId=e}updateWs(e){this.ws=e}async start(e){if(this.sessions.has(e)){console.warn("[daemon] simulator.start: session already exists",{agentId:e});return}let{checks:r,udid:n}=await Hp(e);if(this.sendSimHealth(e,r),r.find(d=>d.status==="fail")){if(this.bootedUdidsByAgent.has(e)){let d=this.bootedUdidsByAgent.get(e);this.pendingDaemonBootedUdids.delete(d),this.bootedUdidsByAgent.delete(e)}return}if(!n){this.sendError(e,"SPAWN_FAILED","No booted iOS simulator found");return}let i=[...this.sessions.values()].find(d=>d.udid===n);if(i){this.sendError(e,"DUPLICATE_SIMULATOR",`Simulator already attached as agent ${i.agentId}`,{existingAgentId:i.agentId,udid:n});return}let s=this.pendingUdids.get(n);if(s&&s!==e){this.sendError(e,"DUPLICATE_SIMULATOR",`Simulator already being attached as agent ${s}`,{existingAgentId:s,udid:n});return}this.pendingUdids.set(n,e);let a=this.pendingSubscriptions.has(e);this.pendingSubscriptions.delete(e);let c=await ck(n);c.width!=null&&c.height!=null&&console.log("[daemon] simulator.metadata",{agentId:e,udid:n,logicalWidth:c.width,logicalHeight:c.height});let l=this.pendingDaemonBootedUdids.has(n);l&&(this.pendingDaemonBootedUdids.delete(n),this.bootedUdidsByAgent.delete(e));let u={agentId:e,udid:n,frameInterval:null,capturing:!1,subscribed:a,logicalWidth:c.width,logicalHeight:c.height,lastDescribeAt:Date.now(),daemonBooted:l};if(this.sessions.set(e,u),this.pendingUdids.delete(n),u.frameInterval=setInterval(async()=>{if(!(!u.subscribed||u.capturing)&&!(!this.ws||this.ws.bufferedAmount>256*1024)){u.capturing=!0;try{Date.now()-u.lastDescribeAt>=5e3&&(u.lastDescribeAt=Date.now(),ck(n).then(p=>{p.width!=null&&p.height!=null&&(p.width!==u.logicalWidth||p.height!==u.logicalHeight)&&(console.log("[daemon] simulator.metadata.update",{agentId:e,udid:n,from:{logicalWidth:u.logicalWidth,logicalHeight:u.logicalHeight},to:p}),u.logicalWidth=p.width,u.logicalHeight=p.height)}).catch(()=>{}));let d=await JR(n,e);if(d&&this.ws&&this.ws.readyState===P.OPEN){let p=u.logicalWidth??0,f=u.logicalHeight??0,m=HR(e,p,f);this.ws.send(Buffer.concat([m,d]),{binary:!0})}}catch(d){console.error("[daemon] simulator.capture.error",{agentId:e,error:String(d)})}finally{u.capturing=!1}}},200),this.ws&&this.ws.readyState===P.OPEN){let d=(0,lk.randomUUID)();this.ws.send(JSON.stringify({type:"session_started",agentId:e,sessionId:d})),this.ws.send(JSON.stringify({type:"agent_spawned",agentId:e,agentKey:"sim_ios",daemonId:this.daemonId}))}console.log("[daemon] simulator.started",{agentId:e,udid:n})}stop(e){let r=this.installProc.get(e);r&&(console.log("[daemon] simulator.install.cancelled",{agentId:e}),this.cancelledInstalls.add(e),r.kill("SIGTERM"),this.installProc.delete(e));let n=this.sessions.get(e);if(!n){for(let[s,a]of this.pendingUdids)if(a===e){this.pendingUdids.delete(s);break}return}n.frameInterval&&clearInterval(n.frameInterval);let o=n.udid,i=n.daemonBooted;this.sessions.delete(e),this.pendingUdids.delete(o),this.ws&&this.ws.readyState===P.OPEN&&this.ws.send(JSON.stringify({type:"exit",agentId:e,exitCode:0,signal:null})),console.log("[daemon] simulator.stop",{agentId:e,udid:o,daemonBooted:i}),i&&(0,Nn.spawn)("xcrun",["simctl","shutdown",o],{stdio:"ignore"}).on("error",s=>console.warn("[daemon] simulator.shutdown.error",{udid:o,err:String(s)}))}stopAll(){for(let e of[...this.installProc.keys()])this.stop(e);for(let e of[...this.sessions.keys()])this.stop(e)}subscribe(e){let r=this.sessions.get(e);r&&(r.subscribed=!0)}unsubscribe(e){let r=this.sessions.get(e);r&&(r.subscribed=!1)}async handle(e){let r=this.sessions.get(e.agentId);if(e.type==="sim_subscribe"){r?this.subscribe(e.agentId):this.pendingSubscriptions.add(e.agentId);return}if(e.type==="sim_unsubscribe"){this.pendingSubscriptions.delete(e.agentId),r&&this.unsubscribe(e.agentId);return}if(e.type==="sim_healthcheck"){let{checks:n}=await Hp(e.agentId);this.sendSimHealth(e.agentId,n);return}if(e.type==="sim_install_run"){await this.handleSimInstallRun(e.agentId);return}if(e.type==="sim_install_cancel"){this.handleSimInstallCancel(e.agentId);return}if(!r){console.warn("[daemon] simulator.handle: no session",{agentId:e.agentId,type:e.type});return}try{switch(e.type){case"sim_tap":{await cl(r.udid,["ui","tap",String(e.x),String(e.y)]);break}case"sim_swipe":{await cl(r.udid,["ui","swipe",String(e.x1),String(e.y1),String(e.x2),String(e.y2),"--duration",String(e.duration??.5)]);break}case"sim_key":{await cl(r.udid,["ui","text",e.key]);break}case"sim_button":{console.log("[daemon] simulator.button.start",{agentId:e.agentId,button:e.button,udid:r.udid}),await cl(r.udid,["ui","button",e.button]),console.log("[daemon] simulator.button.done",{agentId:e.agentId,button:e.button});break}case"sim_get_source":{let n=await new Promise((o,i)=>{let s=(0,Nn.spawn)(Yp,["ui","describe-all","--udid",r.udid],{timeout:15e3}),a="",c="";s.stdout.on("data",l=>{a+=l.toString("utf8")}),s.stderr.on("data",l=>{c+=l.toString("utf8")}),s.on("close",l=>{l!==0?i(new Error(c||`idb exited ${l}`)):o(a)}),s.on("error",l=>i(l))});this.ws&&this.ws.readyState===P.OPEN&&this.ws.send(JSON.stringify({type:"sim_source",agentId:e.agentId,source:n}));break}}}catch(n){console.error("[daemon] simulator.handle.error",{agentId:e.agentId,type:e.type,error:String(n)})}}sendError(e,r,n,o){this.ws&&this.ws.readyState===P.OPEN&&this.ws.send(JSON.stringify({type:"error",code:r,message:n,agentId:e,...o}))}sendSimHealth(e,r){this.ws&&this.ws.readyState===P.OPEN&&this.ws.send(JSON.stringify({type:"sim_health",agentId:e,checks:r}))}resolveSimInstallScript(){let e=process.env.BRIDGE_SIM_INSTALL_SCRIPT;if(e)return e;let r=ll.default.join(Kp.default.homedir(),".bridge/install-sim-prereqs.sh");if(Qo.default.existsSync(r))return r;let n=ll.default.join(__dirname,"../../../scripts/install-sim-prereqs.sh");return Qo.default.existsSync(n)?n:null}async handleSimInstallRun(e){if(this.installProc.has(e)){this.sendInstallProgress(e,{step:"error",error:"already installing"});return}this.cancelledInstalls.delete(e);let r=this.resolveSimInstallScript();if(!r){this.sendInstallProgress(e,{step:"error",error:"install script not found"});return}try{Qo.default.accessSync(r,Qo.default.constants.F_OK|Qo.default.constants.X_OK)}catch{this.sendInstallProgress(e,{step:"error",error:`install script not found at ${r}`});return}let n=(0,Nn.spawn)("bash",["-lc",r],{timeout:6e5});this.installProc.set(e,n);let o="pre_check",i="",s="";n.stdout?.on("data",a=>{i+=a.toString("utf8");let c;for(;(c=i.indexOf(`
|
|
284
284
|
`))!==-1;){let l=i.slice(0,c);if(i=i.slice(c+1),!!l)if(l.startsWith("STEP:"))o=l.slice(5).trim(),this.sendInstallProgress(e,{step:o});else if(l.startsWith("BOOTED_UDID:")){let u=l.slice(12).trim();this.pendingDaemonBootedUdids.add(u),this.bootedUdidsByAgent.set(e,u)}else this.sendInstallProgress(e,{stream:"stdout",line:l})}}),n.stderr?.on("data",a=>{s+=a.toString("utf8");let c;for(;(c=s.indexOf(`
|
|
285
|
-
`))!==-1;){let l=s.slice(0,c);s=s.slice(c+1),l&&this.sendInstallProgress(e,{stream:"stderr",line:l})}}),n.on("close",a=>{if(this.installProc.delete(e),a!==0){let l=this.bootedUdidsByAgent.get(e);l&&(this.pendingDaemonBootedUdids.delete(l),this.bootedUdidsByAgent.delete(e))}if(i){let l=i;i="",l.startsWith("STEP:")?(o=l.slice(5).trim(),this.sendInstallProgress(e,{step:o})):this.sendInstallProgress(e,{stream:"stdout",line:l})}if(s){let l=s;s="",this.sendInstallProgress(e,{stream:"stderr",line:l})}let c=this.cancelledInstalls.has(e);this.cancelledInstalls.delete(e),!c&&(a===0?this.sendInstallProgress(e,{step:"done",exitCode:0}):this.sendInstallProgress(e,{step:"error",exitCode:a??void 0,error:`install script exited with code ${a}`}))}),n.on("error",a=>{this.installProc.delete(e);let c=this.bootedUdidsByAgent.get(e);c&&(this.pendingDaemonBootedUdids.delete(c),this.bootedUdidsByAgent.delete(e));let l=this.cancelledInstalls.has(e);this.cancelledInstalls.delete(e),!l&&this.sendInstallProgress(e,{step:"error",error:String(a)})})}handleSimInstallCancel(e){let r=this.installProc.get(e);if(!r)return;this.cancelledInstalls.add(e);let n=this.bootedUdidsByAgent.get(e);n&&(this.pendingDaemonBootedUdids.delete(n),this.bootedUdidsByAgent.delete(e)),r.kill("SIGTERM"),this.installProc.delete(e),this.sendInstallProgress(e,{step:"error",error:"cancelled by user"})}sendInstallProgress(e,r){this.ws&&this.ws.readyState===P.OPEN&&this.ws.send(JSON.stringify({type:"sim_install_progress",agentId:e,...r}))}};mo();et();var bk=A(require("path")),QR="0.20.
|
|
285
|
+
`))!==-1;){let l=s.slice(0,c);s=s.slice(c+1),l&&this.sendInstallProgress(e,{stream:"stderr",line:l})}}),n.on("close",a=>{if(this.installProc.delete(e),a!==0){let l=this.bootedUdidsByAgent.get(e);l&&(this.pendingDaemonBootedUdids.delete(l),this.bootedUdidsByAgent.delete(e))}if(i){let l=i;i="",l.startsWith("STEP:")?(o=l.slice(5).trim(),this.sendInstallProgress(e,{step:o})):this.sendInstallProgress(e,{stream:"stdout",line:l})}if(s){let l=s;s="",this.sendInstallProgress(e,{stream:"stderr",line:l})}let c=this.cancelledInstalls.has(e);this.cancelledInstalls.delete(e),!c&&(a===0?this.sendInstallProgress(e,{step:"done",exitCode:0}):this.sendInstallProgress(e,{step:"error",exitCode:a??void 0,error:`install script exited with code ${a}`}))}),n.on("error",a=>{this.installProc.delete(e);let c=this.bootedUdidsByAgent.get(e);c&&(this.pendingDaemonBootedUdids.delete(c),this.bootedUdidsByAgent.delete(e));let l=this.cancelledInstalls.has(e);this.cancelledInstalls.delete(e),!l&&this.sendInstallProgress(e,{step:"error",error:String(a)})})}handleSimInstallCancel(e){let r=this.installProc.get(e);if(!r)return;this.cancelledInstalls.add(e);let n=this.bootedUdidsByAgent.get(e);n&&(this.pendingDaemonBootedUdids.delete(n),this.bootedUdidsByAgent.delete(e)),r.kill("SIGTERM"),this.installProc.delete(e),this.sendInstallProgress(e,{step:"error",error:"cancelled by user"})}sendInstallProgress(e,r){this.ws&&this.ws.readyState===P.OPEN&&this.ws.send(JSON.stringify({type:"sim_install_progress",agentId:e,...r}))}};mo();et();var bk=A(require("path")),QR="0.20.6",vk;function wt(){return QR}function Nt(){if(vk)return vk;if(process.pkg!==void 0)return process.execPath;let t=[...process.env.npm_config_global_prefix?[bk.default.join(process.env.npm_config_global_prefix,"lib","node_modules","bridge-agent","dist","index.js")]:[],...process.argv[1]?[process.argv[1]]:[],process.execPath];for(let e of t)try{return require("node:fs").realpathSync(e)}catch{}return process.execPath}var kl=require("fs"),oi=A(require("path")),Ek=A(require("os"));var tf=require("node:fs"),_l=class{cache=new Map;get(e,r){let n=this.cache.get(e);if(n&&n.mtimeMs===r.mtimeMs&&n.size===r.size)return n.value}set(e,r,n){this.cache.set(e,{mtimeMs:r.mtimeMs,size:r.size,value:n})}invalidate(e){this.cache.delete(e)}clear(){this.cache.clear()}prune(e){for(let r of this.cache.keys())e.has(r)||this.cache.delete(r)}prunePrefix(e,r){for(let n of this.cache.keys())n.startsWith(e)&&!r.has(n)&&this.cache.delete(n)}get size(){return this.cache.size}},er=new _l,HB=new _l;async function _r(t){try{let e=await tf.promises.stat(t);return{mtimeMs:e.mtimeMs,size:e.size}}catch{return null}}async function wk(t,e){let r=await tf.promises.open(t,"r");try{let o=(await r.stat()).size-e;if(o<=0)return Buffer.alloc(0);let i=Buffer.alloc(o);return await r.read(i,0,o,e),i}finally{await r.close()}}function rn(){return new Promise(t=>setImmediate(t))}var ni=require("node:fs"),Sk=A(require("node:os")),ho=A(require("node:path")),eA=/bridge_codegraph_/,tA=new Set(["Read","Grep","Glob"]);function rA(t){return eA.test(t)?"codegraph":tA.has(t)?"nativeSearch":"other"}var nA=new Set(["assistant","user","system","summary","last-prompt","mode","permission-mode","attachment","file-history-snapshot","file-history-delta","ai-title","relocated","worktree-state","queue-operation"]);function rf(){return{input:0,cacheCreation:0,cacheRead:0,output:0}}function Ps(t,e){t.input+=e.input,t.cacheCreation+=e.cacheCreation,t.cacheRead+=e.cacheRead,t.output+=e.output}async function oA(t){let e=ho.default.join(t,"subagents"),r;try{r=await ni.promises.readdir(e,{withFileTypes:!0})}catch{return[]}let n=[];for(let o of r){if(!o.isFile())continue;let i=/^agent-(.+)\.jsonl$/.exec(o.name);if(!i||!i[1])continue;let s={path:ho.default.join(e,o.name),agentId:i[1]};try{let a=await ni.promises.readFile(ho.default.join(e,`agent-${i[1]}.meta.json`),"utf-8"),c=JSON.parse(a);typeof c.agentType=="string"&&(s.agentType=c.agentType),typeof c.spawnDepth=="number"&&(s.spawnDepth=c.spawnDepth)}catch{}n.push(s)}return n.sort((o,i)=>o.path.localeCompare(i.path)),n}async function xk(t,e){let r=e??ho.default.join(Sk.default.homedir(),".claude","projects"),n;try{n=await ni.promises.readdir(r,{withFileTypes:!0})}catch{return null}for(let o of n){if(!o.isDirectory())continue;let i=ho.default.join(r,o.name,`${t}.jsonl`);try{await ni.promises.access(i)}catch{continue}let s=await oA(ho.default.join(r,o.name,t));return{main:i,subagents:s,projectSlug:o.name}}return null}function ri(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function vl(t){return typeof t=="number"&&Number.isFinite(t)?t:0}function iA(t){return{input:vl(t.input_tokens),cacheCreation:vl(t.cache_creation_input_tokens),cacheRead:vl(t.cache_read_input_tokens),output:vl(t.output_tokens)}}function sA(t,e,r){let n;try{n=JSON.parse(t)}catch{return!1}if(r.linesParsed++,!ri(n))return!0;let o=ri(n.message)?n.message:void 0,i=n.type;if((o||typeof i=="string"&&nA.has(i)||"parentUuid"in n||"sessionId"in n)&&(r.sawClaudeMarker=!0),(n.isCompactSummary===!0||i==="system"&&(n.subtype==="compact_boundary"||n.isCompactSummary===!0))&&(r.hadCompaction=!0),o&&ri(o.usage)){let s=iA(o.usage),a=o.id;if(typeof a=="string"&&a!==""){let c=r.seen.get(a);if(c){if(c.input!==s.input||c.cacheCreation!==s.cacheCreation||c.cacheRead!==s.cacheRead)r.anomalyCount++;else if(s.output>c.output){let l=s.output-c.output;c.output=s.output,r.totals.output+=l,e&&(r.subagentTotals.output+=l)}}else r.seen.set(a,s),Ps(r.totals,s),e&&Ps(r.subagentTotals,s)}else Ps(r.totals,s),e&&Ps(r.subagentTotals,s)}if(i==="assistant"&&o&&Array.isArray(o.content)){let s=typeof o.id=="string"?o.id:void 0;for(let a of o.content){if(!ri(a)||a.type!=="tool_use")continue;let c=a.name;if(typeof c!="string"||c==="")continue;r.tools.set(c,(r.tools.get(c)??0)+1);let l=rA(c);r.buckets[l]++;let u=a.id;if(typeof u=="string"&&u!==""&&r.toolUseBucketById.set(u,l),s){let d=r.msgBuckets.get(s);d||(d=new Set,r.msgBuckets.set(s,d)),d.add(l)}}}if(i==="user"&&o&&Array.isArray(o.content))for(let s of o.content){if(!ri(s)||s.type!=="tool_result")continue;let a=s.content,c=0;typeof a=="string"?c=a.length:(Array.isArray(a)||ri(a))&&(c=JSON.stringify(a).length),r.pendingResults.push({toolUseId:typeof s.tool_use_id=="string"?s.tool_use_id:void 0,bytes:c})}return!0}async function kk(t,e,r){let o=(await ni.promises.readFile(t,"utf-8")).split(`
|
|
286
286
|
`),i=o.length-1;for(let s=0;s<o.length;s++){let a=o[s];if(!a||!a.trim())continue;!sA(a,e,r)&&s===i&&(r.truncatedTail=!0)}}async function $k(t,e){let r={seen:new Map,totals:rf(),subagentTotals:rf(),anomalyCount:0,hadCompaction:!1,truncatedTail:!1,tools:new Map,buckets:{codegraph:0,nativeSearch:0,other:0},toolUseBucketById:new Map,msgBuckets:new Map,pendingResults:[],linesParsed:0,sawClaudeMarker:!1};t.main&&await kk(t.main,!1,r);for(let a of t.subagents)try{await kk(a.path,!0,r)}catch{}if(r.linesParsed>0&&!r.sawClaudeMarker)throw new Error(`not a Claude Code transcript: ${r.linesParsed} lines parsed but no message.usage shape found`);let n={codegraph:0,nativeSearch:0,other:0};for(let a of r.pendingResults){let c=a.toolUseId&&r.toolUseBucketById.get(a.toolUseId)||"other";n[c]+=a.bytes}let o={turns:0,tokens:rf()};for(let[a,c]of r.seen){let l=r.msgBuckets.get(a);l&&(l.has("codegraph")||l.has("nativeSearch"))&&(o.turns++,Ps(o.tokens,c))}let i={input:r.totals.input-o.tokens.input,cacheCreation:r.totals.cacheCreation-o.tokens.cacheCreation,cacheRead:r.totals.cacheRead-o.tokens.cacheRead,output:r.totals.output-o.tokens.output},s={};for(let[a,c]of[...r.tools.entries()].sort((l,u)=>u[1]-l[1]))s[a]=c;return{sessionId:e,projectSlug:t.projectSlug,files:{main:t.main,subagents:t.subagents.map(a=>a.path)},totals:r.totals,subagentTotals:r.subagentTotals,turns:r.seen.size,anomalyCount:r.anomalyCount,hadCompaction:r.hadCompaction,truncatedTail:r.truncatedTail,tools:s,buckets:r.buckets,resultBytes:n,attributed:o,residual:{tokens:i}}}var aA=2e5,Ik=1e5,cA=/bridge_codegraph_/,lA=new Set(["Read","Grep","Glob"]);function uA(t){return cA.test(t)?"codegraph":lA.has(t)?"nativeSearch":"other"}async function dA(t){let e=oi.default.join(Ek.default.homedir(),".claude","projects");try{let r=await kl.promises.readdir(e,{withFileTypes:!0});for(let n of r){if(!n.isDirectory())continue;let o=oi.default.join(e,n.name,`${t}.jsonl`);if(!await _r(o))continue;let s=oi.default.join(e,n.name,t,"subagents");return{main:o,subagents:await Tk(s),subagentsDir:s}}}catch{}}async function Tk(t){if(!t)return[];try{return(await kl.promises.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()&&/^agent-.+\.jsonl$/.test(r.name)).map(r=>oi.default.join(t,r.name)).sort()}catch{return[]}}function bl(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function wl(t){return typeof t=="number"&&Number.isFinite(t)?t:0}function nf(t,e,r){let n,o=!0,i=!0,s=-1,a=0,c=0,l=0,u=0,d=new Map,p=new Map,f=new Set,m=new Set,h=x=>{c=x.input+x.cacheCreation+x.cacheRead,a=Math.min(100,Math.round(c/aA*100))},g=async(x,E,W,F)=>{f.add(x);let I=await _r(x);if(!I)return;let $=d.get(x);if($||($={offset:0,pending:Buffer.alloc(0)},d.set(x,$)),I.size<$.offset&&($.offset=0,$.pending=Buffer.alloc(0),console.log("[daemon] claude-usage.rotate",{agentId:t,sessionId:e,filePath:x})),I.size===$.offset&&$.pending.length===0)return;let b=await wk(x,$.offset);if(b.length===0)return;$.offset+=b.length;let N=$.pending.length>0?Buffer.concat([$.pending,b]):b,G=N.lastIndexOf(10);if(G===-1){$.pending=N;return}let C=N.subarray(0,G+1).toString("utf-8");$.pending=N.subarray(G+1);for(let re of C.split(`
|
|
287
287
|
`)){if(!re||!re.trim())continue;let Ze;try{Ze=JSON.parse(re)}catch{continue}if(!bl(Ze))continue;let Pe=bl(Ze.message)?Ze.message:void 0;if(Ze.type==="assistant"&&Pe){let ze=Pe.content;if(Array.isArray(ze))for(let Xe of ze){if(!bl(Xe)||Xe.type!=="tool_use")continue;let vt=Xe.name;if(typeof vt!="string"||vt==="")continue;let he=typeof Xe.id=="string"?Xe.id:void 0;if(he){if(m.has(he))continue;if(m.add(he),m.size>Ik){let $e=m.values().next().value;$e!==void 0&&m.delete($e)}}F[uA(vt)]++}}let ct=Pe&&bl(Pe.usage)?Pe.usage:void 0;if(!ct)continue;let me={input:wl(ct.input_tokens),cacheCreation:wl(ct.cache_creation_input_tokens),cacheRead:wl(ct.cache_read_input_tokens),output:wl(ct.output_tokens)};E&&h(me);let _t=Pe&&typeof Pe.id=="string"?Pe.id:void 0;if(_t){let ze=p.get(_t);if(ze){ze.input!==me.input||ze.cacheCreation!==me.cacheCreation||ze.cacheRead!==me.cacheRead?l++:me.output>ze.output&&(W.output+=me.output-ze.output,ze.output=me.output);continue}if(p.set(_t,me),p.size>Ik){let Xe=p.keys().next().value;Xe!==void 0&&p.delete(Xe)}}W.input+=me.input,W.cacheCreation+=me.cacheCreation,W.cacheRead+=me.cacheRead,W.output+=me.output}},_=async()=>{if(o)try{if(n||(n=await dA(e)),!n)return;n.subagents=await Tk(n.subagentsDir);let x={input:0,cacheCreation:0,cacheRead:0,output:0},E={codegraph:0,nativeSearch:0,other:0},W=0;n.main&&(await g(n.main,!0,x,E),W++,await rn());for(let $ of n.subagents)await g($,!1,x,E),W++,await rn();if(W===0||!o)return;l!==u&&(u=l,console.warn("[daemon] claude-usage.anomaly",{agentId:t,sessionId:e,anomalyCount:l})),i&&(i=!1,s=c,r(t,a,c,null,null,!0));let F=x.input>0||x.cacheCreation>0||x.cacheRead>0||x.output>0,I=E.codegraph>0||E.nativeSearch>0||E.other>0;(F||I||c!==s)&&(s=c,r(t,a,c,{inputTokens:x.input,cacheCreationTokens:x.cacheCreation,cacheReadTokens:x.cacheRead,outputTokens:x.output},I?E:null,!1))}catch{}},w=setTimeout(()=>{_()},5e3),S=setInterval(()=>{_()},6e4);return()=>(o=!1,clearTimeout(w),clearInterval(S),{sessionId:e,files:[...f]})}async function Pk(t,e){let r=[...new Set(t)],n=new Set,o;for(let l of r){let u=await xk(l).catch(()=>null);if(u){u.main&&(n.add(u.main),o=u.main);for(let d of u.subagents)n.add(d.path)}}for(let l of e)n.add(l);let i=[];for(let l of n)try{await kl.promises.access(l),i.push(l)}catch{}let s=r[r.length-1];if(!s||i.length===0)return null;let a=o&&i.includes(o)?o:i[0],c=await $k({main:a,subagents:i.filter(l=>l!==a).map(l=>({path:l,agentId:oi.default.basename(l).replace(/\.jsonl$/,"")})),projectSlug:void 0},s);return{sessionId:s,stats:{input:c.totals.input,cacheCreation:c.totals.cacheCreation,cacheRead:c.totals.cacheRead,output:c.totals.output,turns:c.turns,codegraphCalls:c.buckets.codegraph,nativeSearchCalls:c.buckets.nativeSearch,otherCalls:c.buckets.other,hadCompaction:c.hadCompaction,anomalyCount:c.anomalyCount,truncatedTail:c.truncatedTail}}}var O0=A(yS(),1),Sa=A(require("node:process"),1),N0=require("node:stream");var _S=Object.freeze({status:"aborted"});function y(t,e,r){function n(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:s,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);let l=s.prototype,u=Object.keys(l);for(let d=0;d<u.length;d++){let p=u[d];p in a||(a[p]=l[p].bind(a))}}let o=r?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:t});function s(a){var c;let l=r?.Parent?new i:this;n(l,a),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(s,"name",{value:t}),s}var Ar=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},go=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}},xl={};function Ke(t){return t&&Object.assign(xl,t),xl}var R={};so(R,{BIGINT_FORMAT_RANGES:()=>Sf,Class:()=>hf,NUMBER_FORMAT_RANGES:()=>kf,aborted:()=>jn,allowsEval:()=>_f,assert:()=>ZA,assertEqual:()=>MA,assertIs:()=>LA,assertNever:()=>FA,assertNotEqual:()=>UA,assignProp:()=>Cn,base64ToUint8Array:()=>IS,base64urlToUint8Array:()=>QA,cached:()=>ci,captureStackTrace:()=>Il,cleanEnum:()=>XA,cleanRegex:()=>Rs,clone:()=>kt,cloneDef:()=>BA,createTransparentProxy:()=>KA,defineLazy:()=>se,esc:()=>$l,escapeRegex:()=>tr,extend:()=>kS,finalizeIssue:()=>Rt,floatSafeRemainder:()=>gf,getElementAtPath:()=>VA,getEnumValues:()=>Ns,getLengthableOrigin:()=>Ds,getParsedType:()=>JA,getSizableOrigin:()=>Cs,hexToUint8Array:()=>tC,isObject:()=>yo,isPlainObject:()=>Dn,issue:()=>li,joinValues:()=>K,jsonStringifyReplacer:()=>ai,merge:()=>YA,mergeDefs:()=>nn,normalizeParams:()=>D,nullish:()=>An,numKeys:()=>HA,objectClone:()=>qA,omit:()=>wS,optionalKeys:()=>wf,parsedType:()=>X,partial:()=>xS,pick:()=>bS,prefixIssues:()=>Lt,primitiveTypes:()=>bf,promiseAllObject:()=>GA,propertyKeyTypes:()=>As,randomString:()=>WA,required:()=>$S,safeExtend:()=>SS,shallowClone:()=>vf,slugify:()=>yf,stringifyPrimitive:()=>Y,uint8ArrayToBase64:()=>ES,uint8ArrayToBase64url:()=>eC,uint8ArrayToHex:()=>rC,unwrapMessage:()=>Os});function MA(t){return t}function UA(t){return t}function LA(t){}function FA(t){throw new Error("Unexpected value in exhaustive check")}function ZA(t){}function Ns(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function K(t,e="|"){return t.map(r=>Y(r)).join(e)}function ai(t,e){return typeof e=="bigint"?e.toString():e}function ci(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function An(t){return t==null}function Rs(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function gf(t,e){let r=(t.toString().split(".")[1]||"").length,n=e.toString(),o=(n.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(n)){let c=n.match(/\d?e-(\d?)/);c?.[1]&&(o=Number.parseInt(c[1]))}let i=r>o?r:o,s=Number.parseInt(t.toFixed(i).replace(".","")),a=Number.parseInt(e.toFixed(i).replace(".",""));return s%a/10**i}var vS=Symbol("evaluating");function se(t,e,r){let n;Object.defineProperty(t,e,{get(){if(n!==vS)return n===void 0&&(n=vS,n=r()),n},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function qA(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function Cn(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function nn(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);Object.assign(e,n)}return Object.defineProperties({},e)}function BA(t){return nn(t._zod.def)}function VA(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function GA(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let i=0;i<e.length;i++)o[e[i]]=n[i];return o})}function WA(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function $l(t){return JSON.stringify(t)}function yf(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Il="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function yo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var _f=ci(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Dn(t){if(yo(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(yo(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function vf(t){return Dn(t)?{...t}:Array.isArray(t)?[...t]:t}function HA(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var JA=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},As=new Set(["string","number","symbol"]),bf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function tr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function kt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function D(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function KA(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,i){return e??(e=t()),Reflect.set(e,n,o,i)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function Y(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function wf(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var kf={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Sf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function bS(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let i=nn(t._zod.def,{get shape(){let s={};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(s[a]=r.shape[a])}return Cn(this,"shape",s),s},checks:[]});return kt(t,i)}function wS(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let i=nn(t._zod.def,{get shape(){let s={...t._zod.def.shape};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete s[a]}return Cn(this,"shape",s),s},checks:[]});return kt(t,i)}function kS(t,e){if(!Dn(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let i=t._zod.def.shape;for(let s in e)if(Object.getOwnPropertyDescriptor(i,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=nn(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e};return Cn(this,"shape",i),i}});return kt(t,o)}function SS(t,e){if(!Dn(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=nn(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e};return Cn(this,"shape",n),n}});return kt(t,r)}function YA(t,e){let r=nn(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e._zod.def.shape};return Cn(this,"shape",n),n},get catchall(){return e._zod.def.catchall},checks:[]});return kt(t,r)}function xS(t,e,r){let o=e._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let s=nn(e._zod.def,{get shape(){let a=e._zod.def.shape,c={...a};if(r)for(let l in r){if(!(l in a))throw new Error(`Unrecognized key: "${l}"`);r[l]&&(c[l]=t?new t({type:"optional",innerType:a[l]}):a[l])}else for(let l in a)c[l]=t?new t({type:"optional",innerType:a[l]}):a[l];return Cn(this,"shape",c),c},checks:[]});return kt(e,s)}function $S(t,e,r){let n=nn(e._zod.def,{get shape(){let o=e._zod.def.shape,i={...o};if(r)for(let s in r){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=new t({type:"nonoptional",innerType:o[s]}))}else for(let s in o)i[s]=new t({type:"nonoptional",innerType:o[s]});return Cn(this,"shape",i),i}});return kt(e,n)}function jn(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Lt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Os(t){return typeof t=="string"?t:t?.message}function Rt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Os(t.inst?._zod.def?.error?.(t))??Os(e?.error?.(t))??Os(r.customError?.(t))??Os(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Cs(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Ds(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function X(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function li(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function XA(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function IS(t){let e=atob(t),r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n);return r}function ES(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return btoa(e)}function QA(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-e.length%4)%4);return IS(e+r)}function eC(t){return ES(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function tC(t){let e=t.replace(/^0x/,"");if(e.length%2!==0)throw new Error("Invalid hex string length");let r=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)r[n/2]=Number.parseInt(e.slice(n,n+2),16);return r}function rC(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}var hf=class{constructor(...e){}};var TS=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,ai,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},El=y("$ZodError",TS),js=y("$ZodError",TS,{Parent:Error});function Tl(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function Pl(t,e=r=>r.message){let r={_errors:[]},n=o=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(s=>n({issues:s}));else if(i.code==="invalid_key")n({issues:i.issues});else if(i.code==="invalid_element")n({issues:i.issues});else if(i.path.length===0)r._errors.push(e(i));else{let s=r,a=0;for(;a<i.path.length;){let c=i.path[a];a===i.path.length-1?(s[c]=s[c]||{_errors:[]},s[c]._errors.push(e(i))):s[c]=s[c]||{_errors:[]},s=s[c],a++}}};return n(t),r}var zs=t=>(e,r,n,o)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new Ar;if(s.issues.length){let a=new(o?.Err??t)(s.issues.map(c=>Rt(c,i,Ke())));throw Il(a,o?.callee),a}return s.value},Ms=zs(js),Us=t=>async(e,r,n,o)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){let a=new(o?.Err??t)(s.issues.map(c=>Rt(c,i,Ke())));throw Il(a,o?.callee),a}return s.value},Ls=Us(js),Fs=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},i=e._zod.run({value:r,issues:[]},o);if(i instanceof Promise)throw new Ar;return i.issues.length?{success:!1,error:new(t??El)(i.issues.map(s=>Rt(s,o,Ke())))}:{success:!0,data:i.value}},ui=Fs(js),Zs=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new t(i.issues.map(s=>Rt(s,o,Ke())))}:{success:!0,data:i.value}},qs=Zs(js),PS=t=>(e,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return zs(t)(e,r,o)};var OS=t=>(e,r,n)=>zs(t)(e,r,n);var NS=t=>async(e,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Us(t)(e,r,o)};var RS=t=>async(e,r,n)=>Us(t)(e,r,n);var AS=t=>(e,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Fs(t)(e,r,o)};var CS=t=>(e,r,n)=>Fs(t)(e,r,n);var DS=t=>async(e,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Zs(t)(e,r,o)};var jS=t=>async(e,r,n)=>Zs(t)(e,r,n);var rr={};so(rr,{base64:()=>Uf,base64url:()=>Ol,bigint:()=>Vf,boolean:()=>Wf,browserEmail:()=>dC,cidrv4:()=>zf,cidrv6:()=>Mf,cuid:()=>xf,cuid2:()=>$f,date:()=>Ff,datetime:()=>qf,domain:()=>mC,duration:()=>Of,e164:()=>Lf,email:()=>Rf,emoji:()=>Af,extendedDuration:()=>oC,guid:()=>Nf,hex:()=>hC,hostname:()=>fC,html5Email:()=>cC,idnEmail:()=>uC,integer:()=>Gf,ipv4:()=>Cf,ipv6:()=>Df,ksuid:()=>Tf,lowercase:()=>Kf,mac:()=>jf,md5_base64:()=>yC,md5_base64url:()=>_C,md5_hex:()=>gC,nanoid:()=>Pf,null:()=>Hf,number:()=>Nl,rfc5322Email:()=>lC,sha1_base64:()=>bC,sha1_base64url:()=>wC,sha1_hex:()=>vC,sha256_base64:()=>SC,sha256_base64url:()=>xC,sha256_hex:()=>kC,sha384_base64:()=>IC,sha384_base64url:()=>EC,sha384_hex:()=>$C,sha512_base64:()=>PC,sha512_base64url:()=>OC,sha512_hex:()=>TC,string:()=>Bf,time:()=>Zf,ulid:()=>If,undefined:()=>Jf,unicodeEmail:()=>zS,uppercase:()=>Yf,uuid:()=>_o,uuid4:()=>iC,uuid6:()=>sC,uuid7:()=>aC,xid:()=>Ef});var xf=/^[cC][^\s-]{8,}$/,$f=/^[0-9a-z]+$/,If=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ef=/^[0-9a-vA-V]{20}$/,Tf=/^[A-Za-z0-9]{27}$/,Pf=/^[a-zA-Z0-9_-]{21}$/,Of=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,oC=/^[-+]?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)?)??$/,Nf=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,_o=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,iC=_o(4),sC=_o(6),aC=_o(7),Rf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,cC=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,lC=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,zS=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,uC=zS,dC=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,pC="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Af(){return new RegExp(pC,"u")}var Cf=/^(?:(?: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])$/,Df=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,jf=t=>{let e=tr(t??":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},zf=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,Mf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Uf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ol=/^[A-Za-z0-9_-]*$/,fC=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,mC=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Lf=/^\+[1-9]\d{6,14}$/,MS="(?:(?:\\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])))",Ff=new RegExp(`^${MS}$`);function US(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Zf(t){return new RegExp(`^${US(t)}$`)}function qf(t){let e=US({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${MS}T(?:${n})$`)}var Bf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Vf=/^-?\d+n?$/,Gf=/^-?\d+$/,Nl=/^-?\d+(?:\.\d+)?$/,Wf=/^(?:true|false)$/i,Hf=/^null$/i;var Jf=/^undefined$/i;var Kf=/^[^A-Z]*$/,Yf=/^[^a-z]*$/,hC=/^[0-9a-fA-F]*$/;function Bs(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function Vs(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var gC=/^[0-9a-fA-F]{32}$/,yC=Bs(22,"=="),_C=Vs(22),vC=/^[0-9a-fA-F]{40}$/,bC=Bs(27,"="),wC=Vs(27),kC=/^[0-9a-fA-F]{64}$/,SC=Bs(43,"="),xC=Vs(43),$C=/^[0-9a-fA-F]{96}$/,IC=Bs(64,""),EC=Vs(64),TC=/^[0-9a-fA-F]{128}$/,PC=Bs(86,"=="),OC=Vs(86);var Oe=y("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),FS={number:"number",bigint:"bigint",object:"date"},Xf=y("$ZodCheckLessThan",(t,e)=>{Oe.init(t,e);let r=FS[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,i=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<i&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Qf=y("$ZodCheckGreaterThan",(t,e)=>{Oe.init(t,e);let r=FS[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,i=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>i&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),ZS=y("$ZodCheckMultipleOf",(t,e)=>{Oe.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):gf(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),qS=y("$ZodCheckNumberFormat",(t,e)=>{Oe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,i]=kf[e.format];t._zod.onattach.push(s=>{let a=s._zod.bag;a.format=e.format,a.minimum=o,a.maximum=i,r&&(a.pattern=Gf)}),t._zod.check=s=>{let a=s.value;if(r){if(!Number.isInteger(a)){s.issues.push({expected:n,format:e.format,code:"invalid_type",continue:!1,input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?s.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort}):s.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort});return}}a<o&&s.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>i&&s.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}}),BS=y("$ZodCheckBigIntFormat",(t,e)=>{Oe.init(t,e);let[r,n]=Sf[e.format];t._zod.onattach.push(o=>{let i=o._zod.bag;i.format=e.format,i.minimum=r,i.maximum=n}),t._zod.check=o=>{let i=o.value;i<r&&o.issues.push({origin:"bigint",input:i,code:"too_small",minimum:r,inclusive:!0,inst:t,continue:!e.abort}),i>n&&o.issues.push({origin:"bigint",input:i,code:"too_big",maximum:n,inclusive:!0,inst:t,continue:!e.abort})}}),VS=y("$ZodCheckMaxSize",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!An(o)&&o.size!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;o.size<=e.maximum||n.issues.push({origin:Cs(o),code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),GS=y("$ZodCheckMinSize",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!An(o)&&o.size!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;o.size>=e.minimum||n.issues.push({origin:Cs(o),code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),WS=y("$ZodCheckSizeEquals",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!An(o)&&o.size!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.size,o.maximum=e.size,o.size=e.size}),t._zod.check=n=>{let o=n.value,i=o.size;if(i===e.size)return;let s=i>e.size;n.issues.push({origin:Cs(o),...s?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),HS=y("$ZodCheckMaxLength",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!An(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let s=Ds(o);n.issues.push({origin:s,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),JS=y("$ZodCheckMinLength",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!An(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let s=Ds(o);n.issues.push({origin:s,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),KS=y("$ZodCheckLengthEquals",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!An(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,i=o.length;if(i===e.length)return;let s=Ds(o),a=i>e.length;n.issues.push({origin:s,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Gs=y("$ZodCheckStringFormat",(t,e)=>{var r,n;Oe.init(t,e),t._zod.onattach.push(o=>{let i=o._zod.bag;i.format=e.format,e.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),YS=y("$ZodCheckRegex",(t,e)=>{Gs.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),XS=y("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Kf),Gs.init(t,e)}),QS=y("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Yf),Gs.init(t,e)}),ex=y("$ZodCheckIncludes",(t,e)=>{Oe.init(t,e);let r=tr(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),tx=y("$ZodCheckStartsWith",(t,e)=>{Oe.init(t,e);let r=new RegExp(`^${tr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),rx=y("$ZodCheckEndsWith",(t,e)=>{Oe.init(t,e);let r=new RegExp(`.*${tr(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});function LS(t,e,r){t.issues.length&&e.issues.push(...Lt(r,t.issues))}var nx=y("$ZodCheckProperty",(t,e)=>{Oe.init(t,e),t._zod.check=r=>{let n=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(n instanceof Promise)return n.then(o=>LS(o,r,e.property));LS(n,r,e.property)}}),ox=y("$ZodCheckMimeType",(t,e)=>{Oe.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(n=>{n._zod.bag.mime=e.mime}),t._zod.check=n=>{r.has(n.value.type)||n.issues.push({code:"invalid_value",values:e.mime,input:n.value.type,inst:t,continue:!e.abort})}}),ix=y("$ZodCheckOverwrite",(t,e)=>{Oe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Rl=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
288
288
|
`).filter(s=>s),o=Math.min(...n.map(s=>s.length-s.trimStart().length)),i=n.map(s=>s.slice(o)).map(s=>" ".repeat(this.indent*2)+s);for(let s of i)this.content.push(s)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(i=>` ${i}`)];return new e(...r,o.join(`
|