tempest.games 0.2.29 → 0.2.30

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.
@@ -14,7 +14,7 @@ ${D.trace}`:`No previous disposal trace for ${Y} was found.`);return}let G=$.mol
14
14
  ${V.trace}`:`No previous disposal trace for ${G} was found.`),Y}let Q=d$(X),H=U.molecules.get(Q);if(!H){let V=$.disposalTraces.buffer.find((D)=>D?.key===Q);return $.logger.error("\u274C","molecule",Y,"claim failed:",`Could not allocate to ${Q} in store "${$.config.name}".`,V?`
15
15
  ${Q} was most recently disposed
16
16
  ${V.trace}`:`No previous disposal trace for ${Q} was found.`),Y}let Z=$.moleculeGraph.getRelationEntries({downstreamMoleculeKey:W.stringKey}).filter(([,{source:V}])=>V!==G).map(([V])=>N4(V));if(z)U.moleculeGraph.delete(G);U.moleculeGraph.set({upstreamMoleculeKey:H.stringKey,downstreamMoleculeKey:W.stringKey},{source:H.stringKey});let O={type:"molecule_transfer",key:W.key,from:Z,to:[H.key]};if(t6(U)&&U.transactionMeta.phase==="building")U.transactionMeta.update.updates.push(O);return Y}function hC($,X,Y){switch(X){case"newValue":{TN($,Y);break}case"oldValue":{tX(Y,$.token);break}}}function fC($,X,Y){switch(X){case"newValue":{tX(Y,$.token);break}case"oldValue":{if(TN($,Y),$.subType==="atom")Y.valueMap.set($.token.key,$.value);break}}}function TN($,X){let{family:Y}=$.token;if(Y){let z=X.families.get(Y.key);if(z)g$(X,z,N4(Y.subKey))}}function gC($,X,Y){switch(X){case"newValue":sX(Y,$.provenance,$.key);break;case"oldValue":eX(Y,$.key);break}}function yC($,X,Y){switch(X){case"newValue":eX(Y,$.key);break;case"oldValue":{let z=$.provenance.map(N4);sX(Y,z,$.key);for(let[G,U]of $.values){let W=Y.families.get(G);if(W){g$(Y,W,$.key);let Q=`${G}(${d$($.key)})`;Y.valueMap.set(Q,U)}}}break}}function uC($,X,Y){switch(X){case"newValue":{let z=$.to.length===1?$.to[0]:$.to;g2(Y,z,$.key,"exclusive")}break;case"oldValue":{let z=$.from.length===1?$.from[0]:$.from;g2(Y,z,$.key,"exclusive")}break}}function RN($,X,Y){let z=$==="newValue"?X.updates:[...X.updates].reverse();for(let G of z)switch(G.type){case"atom_update":case"selector_update":kC($,G,Y);break;case"state_creation":hC(G,$,Y);break;case"state_disposal":fC(G,$,Y);break;case"molecule_creation":gC(G,$,Y);break;case"molecule_disposal":yC(G,$,Y);break;case"molecule_transfer":uC(G,$,Y);break;case"transaction_update":RN($,G,Y);break}}function PN($,X){return $.transactionMeta.actionContinuities.getRelatedKey(X)}function mC($,X){return $.transactionMeta.epoch.get(X)}function cC($,X){if(!H8($))return;let z=PN($,X);if(z===void 0)return;return mC($,z)}function pC($,X,Y){if(!H8($))return;let G=PN($,X);if(G!==void 0)$.transactionMeta.epoch.set(G,Y)}var dC=($,X)=>{let Y=N$(X),{parent:z}=Y;if(z===null||!t6(Y)||Y.transactionMeta?.phase!=="building"){X.logger.warn("\uD83D\uDC1E","transaction","???","applyTransaction called outside of a transaction. This is probably a bug in AtomIO.");return}Y.transactionMeta.phase="applying",Y.transactionMeta.update.output=$,z.child=null,z.on.transactionApplying.next(Y.transactionMeta);let{updates:G}=Y.transactionMeta.update;if(X.logger.info("\uD83D\uDEC4","transaction",Y.transactionMeta.update.key,`Applying transaction with ${G.length} updates:`,G),RN("newValue",Y.transactionMeta.update,z),H8(z))pC(z,Y.transactionMeta.update.key,Y.transactionMeta.update.epoch),P6(X,{key:Y.transactionMeta.update.key,type:"transaction"})?.subject.next(Y.transactionMeta.update),X.logger.info("\uD83D\uDEEC","transaction",Y.transactionMeta.update.key,"Finished applying transaction.");else if(t6(z))z.transactionMeta.update.updates.push(Y.transactionMeta.update);z.on.transactionApplying.next(null)};function lC($){return{store:$}}function b1($,...X){let Y,z,G;if(X.length===1)Y=X[0];else z=X[0],G=X[1],Y=g$($,z,G);if("counterfeit"in Y&&"family"in Y){z=$.families.get(Y.family.key);let U=Y.family.subKey,W=$.disposalTraces.buffer.find((Q)=>Q?.key===U);switch($.logger.error("\u274C",Y.type,Y.key,`could not be retrieved because it was not found in the store "${$.config.name}".`,W?`This state was previously disposed:
17
- ${W.trace}`:"No previous disposal trace was found."),z.type){case"atom_family":case"mutable_atom_family":return $.defaults.get(z.key);case"readonly_pure_selector_family":case"writable_pure_selector_family":case"readonly_held_selector_family":case"writable_held_selector_family":{if($.defaults.has(z.key))return $.defaults.get(Y.family.key);let Q=P6($,z).default(U);return $.defaults.set(z.key,Q),Q}}}return M7($,P6($,Y))}var a1=class extends Map{deleted=new Set;source;constructor($){super();this.source=$}get($){if(super.has($))return super.get($);if(!this.deleted.has($)&&this.source.has($))return this.source.get($);return}set($,X){return this.deleted.delete($),super.set($,X)}hasOwn($){return super.has($)}has($){return!this.deleted.has($)&&(super.has($)||this.source.has($))}delete($){return this.deleted.add($),super.delete($)}},iC=($,X,Y,z)=>{let G=N$($),U={parent:G,child:null,on:G.on,loggers:G.loggers,logger:G.logger,config:G.config,atoms:new a1(G.atoms),atomsThatAreDefault:new Set(G.atomsThatAreDefault),families:new a1(G.families),joins:new a1(G.joins),operation:{open:!1},readonlySelectors:new a1(G.readonlySelectors),timelines:new a1(G.timelines),timelineTopics:new F4(G.timelineTopics.toJSON()),trackers:new Map,transactions:new a1(G.transactions),selectorAtoms:new F4(G.selectorAtoms.toJSON()),selectorGraph:new F4(G.selectorGraph.toJSON(),{makeContentKey:(...Z)=>Z.sort().join(":")}),writableSelectors:new a1(G.writableSelectors),valueMap:new a1(G.valueMap),defaults:G.defaults,disposalTraces:$.disposalTraces.copy(),molecules:new a1(G.molecules),moleculeGraph:new F4(G.moleculeGraph.toJSON(),{makeContentKey:G.moleculeGraph.makeContentKey}),moleculeData:new F4(G.moleculeData.toJSON(),{makeContentKey:G.moleculeData.makeContentKey}),moleculeJoins:new F4(G.moleculeJoins.toJSON(),{makeContentKey:G.moleculeJoins.makeContentKey}),miscResources:new a1(G.miscResources)},W=cC($,X),Q={phase:"building",update:{type:"transaction_update",key:X,id:z,epoch:W===void 0?NaN:W+1,updates:[],params:Y,output:void 0},toolkit:{get:(...Z)=>b1(H,...Z),set:(...Z)=>{Y1(H,...Z)},reset:(...Z)=>{aX(H,...Z)},run:(Z,O=zN())=>YW(H,Z,O),find:(...Z)=>g$($,...Z),json:(Z)=>n8(H,Z),dispose:(...Z)=>{tX(H,...Z)},env:()=>lC(H)}},H=Object.assign(U,{transactionMeta:Q});return G.child=H,$.logger.info("\uD83D\uDEEB","transaction",X,"Building transaction with params:",Y),H};function zW($,X){let{key:Y}=X,z=$.transactions.has(Y),G={key:Y,type:"transaction",run:(Q,H)=>{let Z=iC($,Y,Q,H);try{let O=N$($),{toolkit:w}=Z.transactionMeta,V=X.do(w,...Q);return dC(V,O),V}catch(O){throw qC(U),$.logger.warn("\uD83D\uDCA5","transaction",Y,"caught:",O),O}},install:(Q)=>zW(Q,X),subject:new y$},U=N$($);U.transactions.set(Y,G);let W=L0(G);if(!z)$.on.transactionCreation.next(W);return W}var ZN=class{parent=null;child=null;valueMap=new Map;defaults=new Map;atoms=new Map;writableSelectors=new Map;readonlySelectors=new Map;atomsThatAreDefault=new Set;selectorAtoms=new F4({between:["selectorKey","atomKey"],cardinality:"n:n"});selectorGraph=new F4({between:["upstreamSelectorKey","downstreamSelectorKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});trackers=new Map;families=new Map;joins=new Map;transactions=new Map;transactionMeta={epoch:new Map,actionContinuities:new F4({between:["continuity","action"],cardinality:"1:n"})};timelines=new Map;timelineTopics=new F4({between:["timelineKey","topicKey"],cardinality:"1:n"});disposalTraces=new JC(100);molecules=new Map;moleculeJoins=new F4({between:["moleculeKey","joinKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeGraph=new F4({between:["upstreamMoleculeKey","downstreamMoleculeKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeData=new F4({between:["moleculeKey","stateFamilyKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});miscResources=new Map;on={atomCreation:new y$,atomDisposal:new y$,selectorCreation:new y$,selectorDisposal:new y$,timelineCreation:new y$,transactionCreation:new y$,transactionApplying:new _C(null),operationClose:new y$,moleculeCreation:new y$,moleculeDisposal:new y$};operation={open:!1};config={name:"IMPLICIT_STORE",lifespan:"ephemeral"};loggers=[new YN("warn",($,X,Y)=>!$Y(Y))];logger={error:(...$)=>{for(let X of this.loggers)X.error(...$)},info:(...$)=>{for(let X of this.loggers)X.info(...$)},warn:(...$)=>{for(let X of this.loggers)X.warn(...$)}};constructor($,X=null){if(this.config={...X?.config,...$},X!==null){if(this.valueMap=new Map(X?.valueMap),this.operation={...X?.operation},H8(X))this.transactionMeta={epoch:new Map(X?.transactionMeta.epoch),actionContinuities:new F4(X?.transactionMeta.actionContinuities.toJSON())};for(let[,z]of X.families){if(z.internalRoles?.includes("mutable")||z.internalRoles?.includes("join"))continue;z.install(this)}let Y=new Set;for(let[,z]of X.atoms){if(Y.has(z.key))continue;if(z.install(this),z.type==="mutable_atom"){let G=n8(X,z),U=AW(z);Y.add(G.key),Y.add(U.key)}}for(let[,z]of X.readonlySelectors)z.install(this);for(let[,z]of X.writableSelectors){if(Y.has(z.key))continue;z.install(this)}for(let[,z]of X.transactions)z.install(this);for(let[,z]of X.timelines)z.install(this)}}},R6={get STORE(){return globalThis.ATOM_IO_IMPLICIT_STORE??=new ZN({name:"IMPLICIT_STORE",lifespan:"ephemeral"}),globalThis.ATOM_IO_IMPLICIT_STORE}};function P6($,X){let Y,z=$;while(z!==null){switch(X.type){case"atom":case"mutable_atom":Y=z.atoms.get(X.key);break;case"writable_pure_selector":case"writable_held_selector":Y=z.writableSelectors.get(X.key);break;case"readonly_pure_selector":case"readonly_held_selector":Y=z.readonlySelectors.get(X.key);break;case"atom_family":case"mutable_atom_family":case"writable_pure_selector_family":case"readonly_pure_selector_family":case"writable_held_selector_family":case"readonly_held_selector_family":Y=z.families.get(X.key);break;case"timeline":Y=z.timelines.get(X.key);break;case"transaction":Y=z.transactions.get(X.key);break}if(Y)return Y;z=z.child}throw new OW(X,$)}var rC=($,X)=>{let Y=N$($);if(Y.operation.open)return Y.operation.prev.get(X.key);return Y.valueMap.get(X.key)};var EN=($,X)=>{let Y=N$($);return JN(X,$).map((G)=>{return G.subject.subscribe(`${X.type}:${X.key}`,(U)=>{$.logger.info("\uD83D\uDCE2",X.type,X.key,"root",G.key,"went",U.oldValue,"->",U.newValue);let W=rC(Y,X),Q=M7(Y,X);$.logger.info("\u2728",X.type,X.key,"went",W,"->",Q),X.subject.next({newValue:Q,oldValue:W})})})};function u2($,X,Y,z){function G(w){if($.operation.open){let V=$.on.operationClose.subscribe(`state subscription ${Y}`,()=>{V(),z(w)})}else z(w)}let U=P6($,X);$.logger.info("\uD83D\uDC40",U.type,U.key,`Adding subscription "${Y}"`);let W=U.type==="writable_pure_selector"||U.type==="readonly_pure_selector",Q=null,H=G;if(W)Q=EN($,U),H=(w)=>{if(Q)Q.length=0,Q.push(...EN($,U));G(w)};let Z=U.subject.subscribe(Y,H);return()=>{if($.logger.info("\uD83D\uDE48",U.type,U.key,`Removing subscription "${Y}"`),Z(),Q)for(let w of Q)w()}}var nC=($,X,Y,z)=>{let G=P6($,X);$.logger.info("\uD83D\uDC40","timeline",X.key,`Adding subscription "${Y}"`);let U=G.subject.subscribe(Y,z);return()=>{$.logger.info("\uD83D\uDE48","timeline",X.key,`Removing subscription "${Y}" from timeline`),U()}};var MW=class{initializeState($,X){let Y=`*${$.key}`;X.atoms.delete(Y),X.valueMap.delete(Y);let z=$.family?{key:`*${$.family.key}`,subKey:$.family.subKey}:void 0,G=o8(X,{key:Y,default:null},z);if(X.parent?.valueMap.has(Y)){let U=X.parent.valueMap.get(Y);X.valueMap.set(Y,U)}return G}unsubscribeFromInnerValue;unsubscribeFromState;observeCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`,G=b1(Y,$);this.unsubscribeFromInnerValue=G.subscribe(z,(U)=>{Y1(Y,X,U)}),this.unsubscribeFromState=u2(Y,$,z,(U)=>{if(U.newValue!==U.oldValue)this.unsubscribeFromInnerValue(),this.unsubscribeFromInnerValue=U.newValue.subscribe(z,(W)=>{Y1(Y,X,W)})})}updateCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`;u2(Y,X,z,({newValue:G,oldValue:U})=>{let W=Y.timelineTopics.getRelatedKey(X.key);if(W){if(Y.timelines.get(W)?.timeTraveling){let Z=nC(Y,{key:W,type:"timeline"},z,(O)=>{Z(),Y1(Y,$,(w)=>{if(O==="redo"&&G)w.do(G);else if(O==="undo"&&U)w.undo(U);return w})});return}}let Q=Y.on.operationClose.subscribe(z,()=>{Q();let H=b1(Y,$),Z=G===null?-1:H.getUpdateNumber(G),O=Z-H.cacheUpdateNumber;if(G&&O===1)Y1(Y,$,(w)=>(w.do(G),w));else Y.logger.info("\u274C","mutable_atom",$.key,`could not be updated. Expected update number ${H.cacheUpdateNumber+1}, but got ${Z}`)})})}mutableState;latestUpdateState;[Symbol.dispose];constructor($,X){this.mutableState=$;let Y=N$(X);this.latestUpdateState=this.initializeState($,Y),this.observeCore($,this.latestUpdateState,Y),this.updateCore($,this.latestUpdateState,Y),Y.trackers.set($.key,this),this[Symbol.dispose]=()=>{this.unsubscribeFromInnerValue(),this.unsubscribeFromState(),Y.trackers.delete($.key)}}};function LW($,X,Y){$.logger.info("\uD83D\uDD28","atom",X.key,`creating in store "${$.config.name}"`);let z=N$($),{key:G,default:U}=X,W=z.atoms.get(G),Q="mutable_atom";if(W&&W.type===Q)return $.logger.error("\u274C",Q,G,"Tried to create atom, but it already exists in the store."),L0(W);let H=new y$,Z={...X,type:Q,install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),LW(V,X,Y)},subject:H};if(Y)Z.family=Y;let O=U();z.atoms.set(Z.key,Z),s1(z,G,O,H);let w=L0(Z);if(X.effects){let V=0,D=[];for(let E of X.effects){let F=E({resetSelf:()=>{aX($,w)},setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>u2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}Z.cleanup=()=>{for(let E of D)E()}}if(new MW(w,$),!Y)eE(w,X,$);return w}var oC=class{trackers=new Map;latestUpdateAtoms;mutableAtoms;constructor($,X){let Y=c2(X,{key:`*${$.key}`,default:null},["mutable","updates"]);this.latestUpdateAtoms=P6(X,Y),this.mutableAtoms=$,this.mutableAtoms.subject.subscribe(`store=${X.config.name}::tracker-atom-family`,(z)=>{let{type:G,token:U}=z;if(U.family){let W=N4(U.family.subKey);switch(G){case"state_creation":this.trackers.set(W,new MW(U,X));break;case"state_disposal":{let Q=this.trackers.get(W);if(Q)Q[Symbol.dispose](),this.trackers.delete(W)}break}}})}};function JW($,X,Y){let z={key:X.key,type:"mutable_atom_family"},G=$.families.get(X.key);if(G)$.logger.error("\u2757","mutable_atom_family",X.key,`Overwriting an existing ${r8(G)} "${G.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let U=new y$,Q=Object.assign((H)=>{let Z=d$(H),O={key:X.key,subKey:Z},w=`${X.key}(${Z})`,V=N$($),D={key:w,default:()=>X.default(H),toJson:X.toJson,fromJson:X.fromJson,mutable:!0};if(X.effects)D.effects=X.effects(H);let E=LW(V,D,O);return U.next({type:"state_creation",token:E}),E},z,{subject:U,install:(H)=>JW(H,X),toJson:X.toJson,fromJson:X.fromJson,internalRoles:Y});return $.families.set(X.key,Q),$N($,Q,X),new oC(Q,$),z}var NN=($,X)=>{let Y=N$(X),z=`${$.key}:JSON`;return Y.families.get(z)},n8=($,X)=>{if(X.family){let z=N$($),U={key:`${X.family.key}:JSON`,type:"writable_pure_selector_family"},W=P6(z,U),Q=JSON.parse(X.family.subKey);return g$($,W,Q)}return{type:"writable_pure_selector",key:`${X.key}:JSON`}};var AW=($)=>{let Y={type:"atom",key:`*${$.key}`};if($.family)Y.family={key:`*${$.family.key}`,subKey:$.family.subKey};return Y};function tC($){return typeof $==="object"&&$!==null&&"do"in $&&"undo"in $&&"subscribe"in $}function HW($,X,Y){let z=Y.valueMap.get(X.key),G=$.valueMap.get(X.key);if(z!==G)return G;if(z===void 0)return X.default();Y.logger.info("\uD83D\uDCC3","atom",X.key,"copying");let U=X.toJson(z),W=X.fromJson(U);return $.valueMap.set(X.key,W),new MW(X,Y),W}function s1($,X,Y,z){let G=$.valueMap.get(X);if(G instanceof WW){let U=G;if(Y instanceof Promise)return U;return $.valueMap.set(X,Y),Y}if(Y instanceof Promise){let U=new WW(Y);return $.valueMap.set(X,U),U.then((W)=>{if($.valueMap.get(X)===U){s1($,X,W,z);let H=$.atoms.get(X);if(H)N7($,H),QW($,H),F7($);else{let Z=$.writableSelectors.get(X)??$.readonlySelectors.get(X);if(Z)N7($,Z),RC($,Z),F7($)}z.next({newValue:W,oldValue:U})}}).catch((W)=>{$.logger.error("\uD83D\uDCA5","state",X,"rejected:",W)}),U}return $.valueMap.set(X,Y),Y}var aC=($,X)=>{let Y=X.valueMap.get($.key);if($.type==="mutable_atom"&&t6(X)){let{parent:z}=X;Y=HW(X,$,z)}return Y},vN=($,X)=>{let Y=X.valueMap.get($);if(Y instanceof WW){let z=Y,G=X.writableSelectors.get($)??X.readonlySelectors.get($);if(G)z.use(G.get());return}if(X.operation.open)X.operation.prev.set($,Y);X.valueMap.delete($),X.logger.info("\uD83D\uDDD1","state",$,"evicted")};function o8($,X,Y){let{key:G,default:U}=X;$.logger.info("\uD83D\uDD28","atom",G,`creating in store "${$.config.name}"`);let W=N$($),Q=W.atoms.get(G);if(Q&&Q.type==="atom")return $.logger.error("\u274C","atom",G,"Tried to create atom, but it already exists in the store."),L0(Q);let H=new y$,Z={...X,type:"atom",install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),o8(V,X,Y)},subject:H};if(Y)Z.family=Y;let O=U;if(U instanceof Function)O=U();W.atoms.set(G,Z),s1(W,G,O,H);let w=L0(Z);if(X.effects){let V=0,D=[];for(let E of X.effects){let F=E({resetSelf:()=>{aX($,w)},setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>u2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}Z.cleanup=()=>{for(let E of D)E()}}return w}function HN($,X){if("mutable"in X){let G=LW($,X,void 0);return $.on.atomCreation.next(G),G}let z=o8($,X,void 0);return $.on.atomCreation.next(z),z}function CN($,X){let Y=N$($),{key:z,family:G}=X,U=P6(Y,X);if(!G)$.logger.error("\u274C","atom",z,"Standalone atoms cannot be disposed.");else{U.cleanup?.();let W=$.valueMap.get(U.key),Q=P6($,{key:G.key,type:"atom_family"}),H={type:"state_disposal",subType:"atom",token:X,value:W};Q.subject.next(H);let Z=t6(Y);if(Y.atoms.delete(z),Y.valueMap.delete(z),Y.selectorAtoms.delete(z),Y.atomsThatAreDefault.delete(z),$.timelineTopics.delete(z),X.type==="mutable_atom"){let O=AW(X);CN($,O),$.trackers.delete(z)}if($.logger.info("\uD83D\uDD25","atom",z,"deleted"),Z&&Y.transactionMeta.phase==="building"){let O=Y.transactionMeta.update.updates.at(-1);if(!(O?.type==="molecule_disposal"&&O.values.some(([D])=>D===U.family?.key)))Y.transactionMeta.update.updates.push(H)}else $.on.atomDisposal.next(X)}}var UW=class{toolkit;options;defaultContent;molecules=new Map;relations;states;core;transact($,X){let Y=this.toolkit;this.toolkit=$,X(this),this.toolkit=Y}store;realm;[Symbol.dispose](){}constructor($,X,Y=R6.STORE){this.store=Y,this.realm=new GN(Y),this.options=$,this.defaultContent=X,this.store.miscResources.set(`join:${$.key}`,this),this.realm.allocate("root",$.key),this.toolkit={get:(..._)=>b1(Y,..._),set:(..._)=>{Y1(Y,..._)},find:(..._)=>g$(Y,..._),json:(_)=>n8(Y,_)};let z=$.between[0],G=$.between[1],U=JW(Y,{key:`${$.key}/relatedKeys`,default:()=>new y4,mutable:!0,fromJson:(_)=>y4.fromJSON(_),toJson:(_)=>_.toJSON()},["join","relations"]);this.core={relatedKeysAtoms:U};let W=({get:_},v)=>_(U,v),Q=({set:_},v,x)=>{if(!this.store.molecules.has(d$(v)))this.realm.allocate($.key,v);_(U,v,(S)=>S.add(x)),_(U,x,(S)=>S.add(v))},H=({set:_},v,x)=>{_(U,v,(S)=>{return S.delete(x),S}),_(U,x,(S)=>{return S.delete(v),S})},Z=(_,v,x)=>{let{find:S,get:u,set:$$}=_,I=S(U,v),Y$=u(I);for(let l of Y$){if(x.includes(l))continue;$$(U,l,(K$)=>{return K$.delete(v),K$})}$$(I,(l)=>{return l.transaction((U$)=>{U$.clear();for(let K$ of x){let b$=W(_,K$),K6=b$.has(v);if(this.relations.cardinality==="1:n"){let Y4=[];for(let m of b$){if(m===v)continue;let Q$=W(_,m);if(Q$.delete(K$),Q$.size===0)Y4.push(m)}if(!K6&&b$.size>0)b$.clear();for(let m of Y4){let Q$=[K$,m].sort(),h$=`"${Q$[0]}:${Q$[1]}"`;this.molecules.delete(h$)}}if(!K6)b$.add(v);U$.add(K$)}return!0}),l})},O=(_,v,x)=>{let{set:S}=_;S(U,v,(u)=>{return u.transaction(($$)=>{for(let I of x)$$.add(I);return!0}),u});for(let u of x)S(U,u,($$)=>{return $$.add(v),$$});return!0},w=(_,v,x)=>{let S=W(_,v);return x?S.has(x):S.size>0},V={getRelatedKeys:(_)=>W(this.toolkit,_),addRelation:(_,v)=>{this.store.moleculeJoins.set(_,$.key),this.store.moleculeJoins.set(v,$.key),Q(this.toolkit,_,v)},deleteRelation:(_,v)=>{H(this.toolkit,_,v)},replaceRelationsSafely:(_,v)=>{Z(this.toolkit,_,v)},replaceRelationsUnsafely:(_,v)=>{O(this.toolkit,_,v)},has:(_,v)=>w(this.toolkit,_,v)},D,E;if(X){E=c2(Y,{key:`${$.key}/content`,default:X},["join","content"]);let _=({get:S},u)=>S(E,u),v=({set:S},u,$$)=>{S(E,u,$$)};D=Object.assign(V,{getContent:(S)=>{return _(this.toolkit,S)},setContent:(S,u)=>{v(this.toolkit,S,u)},deleteContent:(S)=>{this.realm.deallocate(S)}})}else D=V;let F=new F4($,{externalStore:D,isAType:$.isAType,isBType:$.isBType,makeContentKey:(..._)=>{let[v,x]=_,S=_.sort(),u=`${S[0]}:${S[1]}`,$$=Y.molecules.get(d$(v)),I=Y.molecules.get(d$(x));if(!$$)this.realm.allocate($.key,v);if(!I)this.realm.allocate($.key,x);return this.realm.allocate(v,u,"all"),this.realm.claim(x,u),this.store.moleculeJoins.set(u,$.key),u}}),L=()=>i8(Y,{key:`${$.key}/singleRelatedKey`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x)return S;return null}},["join","keys"]),K=()=>{return i8(Y,{key:`${$.key}/multipleRelatedKeys`,get:(_)=>({get:v})=>{let x=NN(U,Y);return v(x,_).members}},["join","keys"])},q=()=>i8(Y,{key:`${$.key}/singleRelatedEntry`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x){let u=F.isAType?.(_)?_:void 0,$$=u===void 0?_:void 0;u??=S,$$??=S;let I=F.makeContentKey(u,$$),Y$=v(E,I);return[S,Y$]}return null}},["join","entries"]),R=()=>i8(Y,{key:`${$.key}/multipleRelatedEntries`,get:(_)=>({get:v})=>{let x=NN(U,Y);return v(x,_).members.map((u)=>{let $$=F.isAType?.(_)?_:void 0,I=$$===void 0?_:void 0;$$??=u,I??=u;let Y$=F.makeContentKey($$,I),l=v(E,Y$);return[u,l]})}},["join","entries"]);switch($.cardinality){case"1:1":{let _=L(),v=`${z}KeyOf${U6(G)}`,x=`${G}KeyOf${U6(z)}`,S={[v]:_,[x]:_},u;if(X){let $$=q(),I=`${z}EntryOf${U6(G)}`,Y$=`${G}EntryOf${U6(z)}`,l={[I]:$$,[Y$]:$$};u=Object.assign(S,l)}else u=S;this.relations=F,this.states=u;break}case"1:n":{let _=L(),v=K(),x=`${z}KeyOf${U6(G)}`,S=`${G}KeysOf${U6(z)}`,u={[x]:_,[S]:v},$$;if(X){let I=q(),Y$=R(),l=`${z}EntryOf${U6(G)}`,U$=`${G}EntriesOf${U6(z)}`,K$={[l]:I,[U$]:Y$};$$=Object.assign(u,K$)}else $$=u;this.relations=F,this.states=$$;break}case"n:n":{let _=K(),v=`${z}KeysOf${U6(G)}`,x=`${G}KeysOf${U6(z)}`,S={[v]:_,[x]:_},u;if(X){let $$=R(),I=`${z}EntriesOf${U6(G)}`,Y$=`${G}EntriesOf${U6(z)}`,l={[I]:$$,[Y$]:$$};u=Object.assign(S,l)}else u=S;this.relations=F,this.states=u}}}};function KW($,X){let Y=X.joins.get($.key);if(Y===void 0){let G=R6.STORE.joins.get($.key);if(G===void 0)throw new Error(`Join "${$.key}" not found in store "${X.config.name}"`);Y=new UW(G.options,G.defaultContent,X),X.joins.set($.key,Y)}return Y}function y2($,X,Y){let z=KW($,Y),G=N$(Y);if(t6(G)){let{toolkit:U}=G.transactionMeta;z.transact(U,({relations:W})=>{X(W)})}else X(z.relations)}function ON($,X,Y){let z=KW($,Y),G;switch($.cardinality){case"1:1":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeyOf${U6($.a)}`;G={get[U](){let H=z.states[U];return g$(Y,H,X)},get[W](){let H=z.states[W];return g$(Y,H,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let H=`${$.b}EntryOf${U6($.a)}`;Object.assign(G,{get[Q](){let Z=z.states[Q];return g$(Y,Z,X)},get[H](){let Z=z.states[H];return g$(Y,Z,X)}})}break}case"1:n":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let H=z.states[U];return g$(Y,H,X)},get[W](){let H=z.states[W];return g$(Y,H,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let H=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let Z=z.states[Q];return g$(Y,Z,X)},get[H](){let Z=z.states[H];return g$(Y,Z,X)}})}break}case"n:n":{let U=`${$.a}KeysOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let H=z.states[U];return g$(Y,H,X)},get[W](){let H=z.states[W];return g$(Y,H,X)}};let Q=`${$.a}EntriesOf${U6($.b)}`;if(Q in z.states){let H=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let Z=z.states[Q];return g$(Y,Z,X)},get[H](){let Z=z.states[H];return g$(Y,Z,X)}})}}}return G}function wN($,X){return KW($,X).core.relatedKeysAtoms}function $Y($){return $.startsWith("\uD83D\uDD0D ")}var sC=class extends Map{set($,X){if(this.has($))return console.warn("Tried to set a key that already exists in an InvariantMap",{key:$,value:X}),this;return super.set($,X)}clear(){throw new Error("Cannot clear an InvariantMap")}},Qu=class ${type="continuity";globals=[];actions=[];perspectives=[];key;constructor(X){this.key=X}static existing=new sC;static create(X,Y){let z=new $(X),{type:G,globals:U,actions:W,perspectives:Q}=Y(z),H={type:G,key:X,globals:U,actions:W,perspectives:Q};return $.existing.set(X,H),H}add(...X){switch(X[0].type){case"atom":case"mutable_atom":this.globals.push(...X);break;case"transaction":this.actions.push(...X);break;case"atom_family":case"mutable_atom_family":{let[z,G]=X;this.perspectives.push({type:"realtime_perspective",resourceAtoms:z,viewAtoms:G})}break}return this}};var Zu=oX({key:"usersInRoomIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),_W=oX({key:"roomIndex",default:()=>new y4,mutable:!0,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),eC={enteredAtEpoch:0},p2=D7({key:"usersInRooms",between:["room","user"],cardinality:"1:n",isAType:($)=>typeof $==="string",isBType:($)=>typeof $==="string"},eC),Hu=E7({key:"usersInMyRoomView",get:($)=>({find:X})=>{let Y=XN(p2);return[X(Y,$)]}});import{spawn as $j}from"child_process";var qW=class{listeners;globalListeners;handleEvent($,...X){for(let z of this.globalListeners)z($,...X);let Y=this.listeners.get($);if(Y)for(let z of Y)z(...X)}id="no_id_retrieved";emit;constructor($){this.emit=$,this.listeners=new Map,this.globalListeners=new Set}on($,X){let Y=this.listeners.get($);if(Y)Y.add(X);else this.listeners.set($,new Set([X]));return this}onAny($){return this.globalListeners.add($),this}off($,X){let Y=this.listeners.get($);if(Y)if(X)Y.delete(X);else this.listeners.delete($);return this}offAny($){return this.globalListeners.delete($),this}},Xj=class extends qW{incompleteData="";unprocessedEvents=[];incompleteLog="";unprocessedLogs=[];id="#####";process;key;logger;handleLog($){if(Array.isArray($)){let[X,...Y]=$;switch(X){case"i":this.logger.info(...Y);break;case"w":this.logger.warn(...Y);break;case"e":this.logger.error(...Y);break;default:return}}}constructor($,X,Y){super((z,...G)=>{let U=JSON.stringify([z,...G])+"\x03",W=(Q)=>{if(Q.code==="EPIPE")console.error("EPIPE error during write",this.process.stdin);this.process.stdin.removeListener("error",W)};return this.process.stdin.once("error",W),this.process.stdin.write(U),this});if(this.process=$,this.key=X,this.logger=Y??{info:(...z)=>{console.info(this.id,this.key,...z)},warn:(...z)=>{console.warn(this.id,this.key,...z)},error:(...z)=>{console.error(this.id,this.key,...z)}},this.process.stdout.on("data",(z)=>{let G=z.toString();if(G==="ALIVE")return;this.unprocessedEvents.push(...G.split("\x03"));let U=this.unprocessedEvents.shift();this.incompleteData+=U??"";try{if(this.incompleteData.startsWith("error"))console.log("\u2757",this.incompleteData);let W=N4(this.incompleteData);this.handleEvent(...W);while(this.unprocessedEvents.length>0){let Q=this.unprocessedEvents.shift();if(Q){if(this.unprocessedEvents.length===0)this.incompleteData=Q;W=N4(Q),this.handleEvent(...W)}}this.incompleteData=""}catch(W){console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.warn(this.incompleteData),console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.error(W)}}),this.process.stderr.on("data",(z)=>{let G=z.toString();this.unprocessedLogs.push(...G.split("\x03"));let U=this.unprocessedLogs.shift();this.incompleteLog+=U??"";try{let W=N4(this.incompleteLog);this.handleLog(W);while(this.unprocessedLogs.length>0)if(this.incompleteLog=this.unprocessedLogs.shift()??"",this.incompleteLog)W=N4(this.incompleteLog),this.handleLog(W)}catch(W){console.error("\u274C\u274C\u274C"),console.error(this.incompleteLog),console.error(W),console.error("\u274C\u274C\u274C\uFE0F")}}),$.pid)this.id=$.pid.toString()}},Yj=class extends qW{in;out;id="no_id_retrieved";disposalFunctions=[];constructor($){super((...X)=>{return this.out.next(X),this});this.id=$,this.in=new y$,this.out=new y$,this.in.subscribe("socket",(X)=>{this.handleEvent(...X)})}dispose(){for(let $ of this.disposalFunctions)$()}},jN=class extends qW{incompleteData="";unprocessedEvents=[];relays;relayServices;process;id="#####";log(...$){this.process.stderr.write(d$($.map((X)=>X instanceof y4?`{ ${X.toJSON().members.join(" | ")} }`:X))+"\x03")}logger={info:(...$)=>{this.log("i",...$)},warn:(...$)=>{this.log("w",...$)},error:(...$)=>{this.log("e",...$)}};constructor(){super(($,...X)=>{let Y=JSON.stringify([$,...X]);return this.process.stdout.write(Y+"\x03"),this});if(this.process=process,this.process.stdin.resume(),this.relays=new Map,this.relayServices=[],this.process.stdin.on("data",($)=>{let X=$.toString();this.unprocessedEvents.push(...X.split("\x03"));let Y=this.unprocessedEvents.shift();this.incompleteData+=Y??"";try{let z=N4(this.incompleteData);this.logger.info("\uD83C\uDFB0","received",z),this.handleEvent(...z);while(this.unprocessedEvents.length>0){let G=this.unprocessedEvents.shift();if(G){if(this.unprocessedEvents.length===0)this.incompleteData=G;let U=N4(G);this.handleEvent(...U)}}this.incompleteData=""}catch(z){if(z instanceof Error)this.logger.error("\u2757",z.message,z.cause,z.stack)}}),this.on("exit",()=>{this.logger.info("\uD83D\uDD25",this.id,'received "exit"'),process.exit(0)}),process.on("exit",($)=>{this.logger.info("\uD83D\uDD25",this.id,`exited with code ${$}`)}),process.on("end",()=>{this.logger.info("\uD83D\uDD25",this.id,"ended"),process.exit(0)}),process.on("SIGTERM",()=>{this.logger.error("\uD83D\uDD25",this.id,"terminated"),process.exit(0)}),process.on("SIGINT",()=>{this.logger.error("\uD83D\uDD25",this.id,"interrupted"),process.exit(0)}),process.pid)this.id=process.pid?.toString();this.on("user-joins",($)=>{this.logger.info("\uD83D\uDC64","user",$,"joined");let X=new Yj(`user:${$}`);this.relays.set($,X),this.logger.info("\uD83D\uDD17","attaching services:",`[${[...this.relayServices.keys()].join(", ")}]`);for(let Y of this.relayServices){let z=Y(X);if(z)X.disposalFunctions.push(z)}this.on(`user:${$}`,(...Y)=>{X.in.next(Y)}),X.out.subscribe("socket",(Y)=>{this.emit(...Y)})}),this.on("user-leaves",($)=>{let X=this.relays.get($);if(this.off(`relay:${$}`),X)X.dispose(),this.relays.delete($)}),process.stdout.write("ALIVE")}relay($){this.logger.info("\uD83D\uDD17","running relay method"),this.relayServices.push($)}},BN=h2({key:"roomArguments",default:["echo",["Hello World!"]]}),Gj=E7({key:"room",get:($)=>async({get:X,find:Y})=>{let z=Y(BN,$),G=X(z),[U,W]=G,Q=await new Promise((H)=>{let Z=$j(U,W,{env:process.env}),O=(w)=>{if(w.toString()==="ALIVE")Z.stdout.off("data",O),H(Z)};Z.stdout.on("data",O)});return new Xj(Q,$)}}),Ju=f2({key:"createRoom",do:({get:$,set:X,find:Y},z,G,U)=>{let W=U?[G,U]:[G],Q=Y(BN,z);X(Q,W),X(_W,(O)=>O.add(z));let H=Y(Gj,z);return $(H)}}),Au=f2({key:"joinRoom",do:($,X,Y,z)=>{let G={enteredAtEpoch:z};return y2(p2,(U)=>{U.set({room:X,user:Y},G)},$.env().store),G}}),Ku=f2({key:"leaveRoom",do:($,X,Y)=>{y2(p2,(z)=>{z.delete({room:X,user:Y})},$.env().store)}}),_u=f2({key:"destroyRoom",do:($,X)=>{y2(p2,(Y)=>{Y.delete({room:X})},$.env().store),$.set(_W,(Y)=>(Y.delete(X),Y))}});var qu=h2({key:"redactor",default:{occlude:($)=>$}}),Tu=h2({key:"unacknowledgedUpdates",default:()=>[]}),Ru=h2({key:"sockets",default:null}),Pu=oX({key:"socketsIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),vu=oX({key:"usersIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),Cu=D7({key:"usersOfSockets",between:["user","socket"],cardinality:"1:1",isAType:($)=>$.startsWith("user::"),isBType:($)=>$.startsWith("socket::")});var Jz={};Z8(Jz,{xid:()=>GI,void:()=>TI,uuidv7:()=>tB,uuidv6:()=>oB,uuidv4:()=>nB,uuid:()=>rB,url:()=>aB,uppercase:()=>VG,unknown:()=>Oz,union:()=>Mz,undefined:()=>_I,ulid:()=>YI,uint64:()=>AI,uint32:()=>MI,tuple:()=>II,trim:()=>LG,treeifyError:()=>hW,transform:()=>lO,toUpperCase:()=>AG,toLowerCase:()=>JG,toJSONSchema:()=>wO,templateLiteral:()=>uI,symbol:()=>KI,superRefine:()=>lF,success:()=>gI,stringbool:()=>dI,stringFormat:()=>DI,string:()=>AO,strictObject:()=>CI,startsWith:()=>EG,size:()=>HG,setErrorMap:()=>nI,set:()=>kI,safeParseAsync:()=>JO,safeParse:()=>LO,registry:()=>b7,regexes:()=>e8,regex:()=>OG,refine:()=>dF,record:()=>AF,readonly:()=>gF,property:()=>YO,promise:()=>mI,prettifyError:()=>fW,preprocess:()=>iI,prefault:()=>IF,positive:()=>sH,pipe:()=>Dz,partialRecord:()=>xI,parseAsync:()=>MO,parse:()=>FO,overwrite:()=>q0,optional:()=>wz,object:()=>vI,number:()=>UF,nullish:()=>fI,nullable:()=>Vz,null:()=>OF,normalize:()=>MG,nonpositive:()=>$O,nonoptional:()=>xF,nonnegative:()=>XO,never:()=>Ez,negative:()=>eH,nativeEnum:()=>bI,nanoid:()=>eB,nan:()=>yI,multipleOf:()=>YX,minSize:()=>GX,minLength:()=>w8,mime:()=>FG,maxSize:()=>QY,maxLength:()=>ZY,map:()=>SI,lte:()=>A1,lt:()=>K0,lowercase:()=>wG,looseObject:()=>jI,locales:()=>WG,literal:()=>RF,length:()=>HY,lazy:()=>mF,ksuid:()=>zI,keyof:()=>PI,jwt:()=>VI,json:()=>lI,iso:()=>Zz,ipv6:()=>WI,ipv4:()=>UI,intersection:()=>LF,int64:()=>JI,int32:()=>FI,int:()=>KO,instanceof:()=>pI,includes:()=>DG,guid:()=>iB,gte:()=>m4,gt:()=>_0,globalRegistry:()=>e1,getErrorMap:()=>oI,function:()=>OO,formatError:()=>$G,float64:()=>NI,float32:()=>EI,flattenError:()=>e2,file:()=>hI,enum:()=>qF,endsWith:()=>NG,emoji:()=>sB,email:()=>lB,e164:()=>wI,discriminatedUnion:()=>BI,date:()=>RI,custom:()=>cI,cuid2:()=>XI,cuid:()=>$I,core:()=>T0,config:()=>v6,coerce:()=>oO,clone:()=>G1,cidrv6:()=>ZI,cidrv4:()=>QI,check:()=>pF,catch:()=>bF,boolean:()=>WF,bigint:()=>LI,base64url:()=>OI,base64:()=>HI,array:()=>mO,any:()=>qI,_default:()=>jF,_ZodString:()=>_O,ZodXID:()=>BO,ZodVoid:()=>EF,ZodUnknown:()=>VF,ZodUnion:()=>cO,ZodUndefined:()=>ZF,ZodUUID:()=>R0,ZodURL:()=>TO,ZodULID:()=>jO,ZodType:()=>P$,ZodTuple:()=>JF,ZodTransform:()=>dO,ZodTemplateLiteral:()=>yF,ZodSymbol:()=>QF,ZodSuccess:()=>SF,ZodStringFormat:()=>a$,ZodString:()=>qG,ZodSet:()=>_F,ZodRecord:()=>pO,ZodRealError:()=>OY,ZodReadonly:()=>fF,ZodPromise:()=>cF,ZodPrefault:()=>BF,ZodPipe:()=>nO,ZodOptional:()=>iO,ZodObject:()=>Fz,ZodNumberFormat:()=>wY,ZodNumber:()=>TG,ZodNullable:()=>vF,ZodNull:()=>HF,ZodNonOptional:()=>rO,ZodNever:()=>DF,ZodNanoID:()=>PO,ZodNaN:()=>hF,ZodMap:()=>KF,ZodLiteral:()=>TF,ZodLazy:()=>uF,ZodKSUID:()=>IO,ZodJWT:()=>yO,ZodIssueCode:()=>rI,ZodIntersection:()=>MF,ZodISOTime:()=>Wz,ZodISODuration:()=>Qz,ZodISODateTime:()=>zz,ZodISODate:()=>Uz,ZodIPv6:()=>SO,ZodIPv4:()=>xO,ZodGUID:()=>Hz,ZodFile:()=>PF,ZodError:()=>pB,ZodEnum:()=>_G,ZodEmoji:()=>RO,ZodEmail:()=>qO,ZodE164:()=>gO,ZodDiscriminatedUnion:()=>FF,ZodDefault:()=>CF,ZodDate:()=>Nz,ZodCustomStringFormat:()=>zF,ZodCustom:()=>Lz,ZodCatch:()=>kF,ZodCUID2:()=>CO,ZodCUID:()=>vO,ZodCIDRv6:()=>bO,ZodCIDRv4:()=>kO,ZodBoolean:()=>RG,ZodBigIntFormat:()=>uO,ZodBigInt:()=>PG,ZodBase64URL:()=>fO,ZodBase64:()=>hO,ZodArray:()=>NF,ZodAny:()=>wF,TimePrecision:()=>RH,NEVER:()=>TW,$output:()=>KH,$input:()=>_H,$brand:()=>RW});var T0={};Z8(T0,{version:()=>SQ,util:()=>n,treeifyError:()=>hW,toJSONSchema:()=>wO,toDotPath:()=>SN,safeParseAsync:()=>yW,safeParse:()=>gW,registry:()=>b7,regexes:()=>e8,prettifyError:()=>fW,parseAsync:()=>q7,parse:()=>K7,locales:()=>WG,isValidJWT:()=>aN,isValidBase64URL:()=>tN,isValidBase64:()=>$Z,globalRegistry:()=>e1,globalConfig:()=>d2,function:()=>OO,formatError:()=>$G,flattenError:()=>e2,config:()=>v6,clone:()=>G1,_xid:()=>r7,_void:()=>nH,_uuidv7:()=>u7,_uuidv6:()=>y7,_uuidv4:()=>g7,_uuid:()=>f7,_url:()=>m7,_uppercase:()=>VG,_unknown:()=>WY,_union:()=>KB,_undefined:()=>dH,_ulid:()=>i7,_uint64:()=>cH,_uint32:()=>hH,_tuple:()=>GO,_trim:()=>LG,_transform:()=>BB,_toUpperCase:()=>AG,_toLowerCase:()=>JG,_templateLiteral:()=>yB,_symbol:()=>pH,_success:()=>bB,_stringbool:()=>QO,_stringFormat:()=>ZO,_string:()=>qH,_startsWith:()=>EG,_size:()=>HG,_set:()=>PB,_safeParseAsync:()=>R7,_safeParse:()=>T7,_regex:()=>OG,_refine:()=>WO,_record:()=>TB,_readonly:()=>gB,_property:()=>YO,_promise:()=>mB,_positive:()=>sH,_pipe:()=>fB,_parseAsync:()=>_7,_parse:()=>A7,_overwrite:()=>q0,_optional:()=>IB,_number:()=>BH,_nullable:()=>xB,_null:()=>lH,_normalize:()=>MG,_nonpositive:()=>$O,_nonoptional:()=>kB,_nonnegative:()=>XO,_never:()=>rH,_negative:()=>eH,_nativeEnum:()=>CB,_nanoid:()=>p7,_nan:()=>aH,_multipleOf:()=>YX,_minSize:()=>GX,_minLength:()=>w8,_min:()=>m4,_mime:()=>FG,_maxSize:()=>QY,_maxLength:()=>ZY,_max:()=>A1,_map:()=>RB,_lte:()=>A1,_lt:()=>K0,_lowercase:()=>wG,_literal:()=>jB,_length:()=>HY,_lazy:()=>uB,_ksuid:()=>n7,_jwt:()=>Yz,_isoTime:()=>CH,_isoDuration:()=>jH,_isoDateTime:()=>PH,_isoDate:()=>vH,_ipv6:()=>t7,_ipv4:()=>o7,_intersection:()=>qB,_int64:()=>mH,_int32:()=>bH,_int:()=>xH,_includes:()=>DG,_guid:()=>ZG,_gte:()=>m4,_gt:()=>_0,_float64:()=>kH,_float32:()=>SH,_file:()=>zO,_enum:()=>vB,_endsWith:()=>NG,_emoji:()=>c7,_email:()=>h7,_e164:()=>Xz,_discriminatedUnion:()=>_B,_default:()=>SB,_date:()=>oH,_custom:()=>UO,_cuid2:()=>l7,_cuid:()=>d7,_coercedString:()=>TH,_coercedNumber:()=>IH,_coercedDate:()=>tH,_coercedBoolean:()=>gH,_coercedBigint:()=>uH,_cidrv6:()=>s7,_cidrv4:()=>a7,_catch:()=>hB,_boolean:()=>fH,_bigint:()=>yH,_base64url:()=>$z,_base64:()=>e7,_array:()=>KG,_any:()=>iH,TimePrecision:()=>RH,NEVER:()=>TW,JSONSchemaGenerator:()=>Gz,JSONSchema:()=>XF,Doc:()=>j7,$output:()=>KH,$input:()=>_H,$constructor:()=>P,$brand:()=>RW,$ZodXID:()=>dQ,$ZodVoid:()=>DZ,$ZodUnknown:()=>UY,$ZodUnion:()=>k7,$ZodUndefined:()=>HZ,$ZodUUID:()=>hQ,$ZodURL:()=>gQ,$ZodULID:()=>pQ,$ZodType:()=>F$,$ZodTuple:()=>XX,$ZodTransform:()=>GG,$ZodTemplateLiteral:()=>SZ,$ZodSymbol:()=>ZZ,$ZodSuccess:()=>jZ,$ZodStringFormat:()=>i$,$ZodString:()=>$X,$ZodSet:()=>AZ,$ZodRegistry:()=>QG,$ZodRecord:()=>LZ,$ZodRealError:()=>GY,$ZodReadonly:()=>xZ,$ZodPromise:()=>kZ,$ZodPrefault:()=>vZ,$ZodPipe:()=>zG,$ZodOptional:()=>TZ,$ZodObject:()=>NZ,$ZodNumberFormat:()=>WZ,$ZodNumber:()=>x7,$ZodNullable:()=>RZ,$ZodNull:()=>OZ,$ZodNonOptional:()=>CZ,$ZodNever:()=>VZ,$ZodNanoID:()=>uQ,$ZodNaN:()=>IZ,$ZodMap:()=>JZ,$ZodLiteral:()=>_Z,$ZodLazy:()=>bZ,$ZodKSUID:()=>lQ,$ZodJWT:()=>zZ,$ZodIntersection:()=>MZ,$ZodISOTime:()=>nQ,$ZodISODuration:()=>oQ,$ZodISODateTime:()=>iQ,$ZodISODate:()=>rQ,$ZodIPv6:()=>aQ,$ZodIPv4:()=>tQ,$ZodGUID:()=>bQ,$ZodFunction:()=>HO,$ZodFile:()=>qZ,$ZodError:()=>s2,$ZodEnum:()=>KZ,$ZodEmoji:()=>yQ,$ZodEmail:()=>fQ,$ZodE164:()=>GZ,$ZodDiscriminatedUnion:()=>FZ,$ZodDefault:()=>PZ,$ZodDate:()=>EZ,$ZodCustomStringFormat:()=>UZ,$ZodCustom:()=>hZ,$ZodCheckUpperCase:()=>PQ,$ZodCheckStringFormat:()=>zY,$ZodCheckStartsWith:()=>CQ,$ZodCheckSizeEquals:()=>AQ,$ZodCheckRegex:()=>TQ,$ZodCheckProperty:()=>BQ,$ZodCheckOverwrite:()=>xQ,$ZodCheckNumberFormat:()=>FQ,$ZodCheckMultipleOf:()=>NQ,$ZodCheckMinSize:()=>JQ,$ZodCheckMinLength:()=>_Q,$ZodCheckMimeType:()=>IQ,$ZodCheckMaxSize:()=>LQ,$ZodCheckMaxLength:()=>KQ,$ZodCheckLowerCase:()=>RQ,$ZodCheckLessThan:()=>v7,$ZodCheckLengthEquals:()=>qQ,$ZodCheckIncludes:()=>vQ,$ZodCheckGreaterThan:()=>C7,$ZodCheckEndsWith:()=>jQ,$ZodCheckBigIntFormat:()=>MQ,$ZodCheck:()=>w6,$ZodCatch:()=>BZ,$ZodCUID2:()=>cQ,$ZodCUID:()=>mQ,$ZodCIDRv6:()=>eQ,$ZodCIDRv4:()=>sQ,$ZodBoolean:()=>XG,$ZodBigIntFormat:()=>QZ,$ZodBigInt:()=>S7,$ZodBase64URL:()=>YZ,$ZodBase64:()=>XZ,$ZodAsyncError:()=>J0,$ZodArray:()=>YG,$ZodAny:()=>wZ});var TW=Object.freeze({status:"aborted"});function P($,X,Y){function z(Q,H){var Z;Object.defineProperty(Q,"_zod",{value:Q._zod??{},enumerable:!1}),(Z=Q._zod).traits??(Z.traits=new Set),Q._zod.traits.add($),X(Q,H);for(let O in W.prototype)if(!(O in Q))Object.defineProperty(Q,O,{value:W.prototype[O].bind(Q)});Q._zod.constr=W,Q._zod.def=H}let G=Y?.Parent??Object;class U extends G{}Object.defineProperty(U,"name",{value:$});function W(Q){var H;let Z=Y?.Parent?new U:this;z(Z,Q),(H=Z._zod).deferred??(H.deferred=[]);for(let O of Z._zod.deferred)O();return Z}return Object.defineProperty(W,"init",{value:z}),Object.defineProperty(W,Symbol.hasInstance,{value:(Q)=>{if(Y?.Parent&&Q instanceof Y.Parent)return!0;return Q?._zod?.traits?.has($)}}),Object.defineProperty(W,"name",{value:$}),W}var RW=Symbol("zod_brand");class J0 extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}var d2={};function v6($){if($)Object.assign(d2,$);return d2}var n={};Z8(n,{unwrapMessage:()=>l2,stringifyPrimitive:()=>r,required:()=>Aj,randomString:()=>wj,propertyKeyTypes:()=>o2,promiseAllObject:()=>Oj,primitiveTypes:()=>IW,prefixIssues:()=>u4,pick:()=>Nj,partial:()=>Jj,optionalKeys:()=>xW,omit:()=>Fj,numKeys:()=>Vj,nullish:()=>O8,normalizeParams:()=>d,merge:()=>Lj,jsonStringifyReplacer:()=>vW,joinValues:()=>f,issue:()=>bW,isPlainObject:()=>YY,isObject:()=>XY,getSizableOrigin:()=>t2,getParsedType:()=>Dj,getLengthableOrigin:()=>a2,getEnumValues:()=>i2,getElementAtPath:()=>Hj,floatSafeRemainder:()=>CW,finalizeIssue:()=>z1,extend:()=>Mj,escapeRegex:()=>A0,esc:()=>t8,defineLazy:()=>u$,createTransparentProxy:()=>Ej,clone:()=>G1,cleanRegex:()=>n2,cleanEnum:()=>Kj,captureStackTrace:()=>J7,cached:()=>r2,assignProp:()=>jW,assertNotEqual:()=>Uj,assertNever:()=>Qj,assertIs:()=>Wj,assertEqual:()=>zj,assert:()=>Zj,allowsEval:()=>BW,aborted:()=>a8,NUMBER_FORMAT_RANGES:()=>SW,Class:()=>IN,BIGINT_FORMAT_RANGES:()=>kW});function zj($){return $}function Uj($){return $}function Wj($){}function Qj($){throw new Error}function Zj($){}function i2($){let X=Object.values($).filter((z)=>typeof z==="number");return Object.entries($).filter(([z,G])=>X.indexOf(+z)===-1).map(([z,G])=>G)}function f($,X="|"){return $.map((Y)=>r(Y)).join(X)}function vW($,X){if(typeof X==="bigint")return X.toString();return X}function r2($){return{get value(){{let Y=$();return Object.defineProperty(this,"value",{value:Y}),Y}throw new Error("cached value already set")}}}function O8($){return $===null||$===void 0}function n2($){let X=$.startsWith("^")?1:0,Y=$.endsWith("$")?$.length-1:$.length;return $.slice(X,Y)}function CW($,X){let Y=($.toString().split(".")[1]||"").length,z=(X.toString().split(".")[1]||"").length,G=Y>z?Y:z,U=Number.parseInt($.toFixed(G).replace(".","")),W=Number.parseInt(X.toFixed(G).replace(".",""));return U%W/10**G}function u$($,X,Y){Object.defineProperty($,X,{get(){{let G=Y();return $[X]=G,G}throw new Error("cached value already set")},set(G){Object.defineProperty($,X,{value:G})},configurable:!0})}function jW($,X,Y){Object.defineProperty($,X,{value:Y,writable:!0,enumerable:!0,configurable:!0})}function Hj($,X){if(!X)return $;return X.reduce((Y,z)=>Y?.[z],$)}function Oj($){let X=Object.keys($),Y=X.map((z)=>$[z]);return Promise.all(Y).then((z)=>{let G={};for(let U=0;U<X.length;U++)G[X[U]]=z[U];return G})}function wj($=10){let Y="";for(let z=0;z<$;z++)Y+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return Y}function t8($){return JSON.stringify($)}var J7=Error.captureStackTrace?Error.captureStackTrace:(...$)=>{};function XY($){return typeof $==="object"&&$!==null&&!Array.isArray($)}var BW=r2(()=>{if(typeof navigator!=="undefined"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch($){return!1}});function YY($){if(XY($)===!1)return!1;let X=$.constructor;if(X===void 0)return!0;let Y=X.prototype;if(XY(Y)===!1)return!1;if(Object.prototype.hasOwnProperty.call(Y,"isPrototypeOf")===!1)return!1;return!0}function Vj($){let X=0;for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))X++;return X}var Dj=($)=>{let X=typeof $;switch(X){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN($)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray($))return"array";if($===null)return"null";if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return"promise";if(typeof Map!=="undefined"&&$ instanceof Map)return"map";if(typeof Set!=="undefined"&&$ instanceof Set)return"set";if(typeof Date!=="undefined"&&$ instanceof Date)return"date";if(typeof File!=="undefined"&&$ instanceof File)return"file";return"object";default:throw new Error(`Unknown data type: ${X}`)}},o2=new Set(["string","number","symbol"]),IW=new Set(["string","number","bigint","boolean","symbol","undefined"]);function A0($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function G1($,X,Y){let z=new $._zod.constr(X??$._zod.def);if(!X||Y?.parent)z._zod.parent=$;return z}function d($){let X=$;if(!X)return{};if(typeof X==="string")return{error:()=>X};if(X?.message!==void 0){if(X?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");X.error=X.message}if(delete X.message,typeof X.error==="string")return{...X,error:()=>X.error};return X}function Ej($){let X;return new Proxy({},{get(Y,z,G){return X??(X=$()),Reflect.get(X,z,G)},set(Y,z,G,U){return X??(X=$()),Reflect.set(X,z,G,U)},has(Y,z){return X??(X=$()),Reflect.has(X,z)},deleteProperty(Y,z){return X??(X=$()),Reflect.deleteProperty(X,z)},ownKeys(Y){return X??(X=$()),Reflect.ownKeys(X)},getOwnPropertyDescriptor(Y,z){return X??(X=$()),Reflect.getOwnPropertyDescriptor(X,z)},defineProperty(Y,z,G){return X??(X=$()),Reflect.defineProperty(X,z,G)}})}function r($){if(typeof $==="bigint")return $.toString()+"n";if(typeof $==="string")return`"${$}"`;return`${$}`}function xW($){return Object.keys($).filter((X)=>{return $[X]._zod.optin==="optional"&&$[X]._zod.optout==="optional"})}var SW={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},kW={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Nj($,X){let Y={},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;Y[G]=z.shape[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Fj($,X){let Y={...$._zod.def.shape},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;delete Y[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Mj($,X){if(!YY(X))throw new Error("Invalid input to extend: expected a plain object");let Y={...$._zod.def,get shape(){let z={...$._zod.def.shape,...X};return jW(this,"shape",z),z},checks:[]};return G1($,Y)}function Lj($,X){return G1($,{...$._zod.def,get shape(){let Y={...$._zod.def.shape,...X._zod.def.shape};return jW(this,"shape",Y),Y},catchall:X._zod.def.catchall,checks:[]})}function Jj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in z))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=$?new $({type:"optional",innerType:z[U]}):z[U]}else for(let U in z)G[U]=$?new $({type:"optional",innerType:z[U]}):z[U];return G1(X,{...X._zod.def,shape:G,checks:[]})}function Aj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in G))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=new $({type:"nonoptional",innerType:z[U]})}else for(let U in z)G[U]=new $({type:"nonoptional",innerType:z[U]});return G1(X,{...X._zod.def,shape:G,checks:[]})}function a8($,X=0){for(let Y=X;Y<$.issues.length;Y++)if($.issues[Y]?.continue!==!0)return!0;return!1}function u4($,X){return X.map((Y)=>{var z;return(z=Y).path??(z.path=[]),Y.path.unshift($),Y})}function l2($){return typeof $==="string"?$:$?.message}function z1($,X,Y){let z={...$,path:$.path??[]};if(!$.message){let G=l2($.inst?._zod.def?.error?.($))??l2(X?.error?.($))??l2(Y.customError?.($))??l2(Y.localeError?.($))??"Invalid input";z.message=G}if(delete z.inst,delete z.continue,!X?.reportInput)delete z.input;return z}function t2($){if($ instanceof Set)return"set";if($ instanceof Map)return"map";if($ instanceof File)return"file";return"unknown"}function a2($){if(Array.isArray($))return"array";if(typeof $==="string")return"string";return"unknown"}function bW(...$){let[X,Y,z]=$;if(typeof X==="string")return{message:X,code:"custom",input:Y,inst:z};return{...X}}function Kj($){return Object.entries($).filter(([X,Y])=>{return Number.isNaN(Number.parseInt(X,10))}).map((X)=>X[1])}class IN{constructor(...$){}}var xN=($,X)=>{$.name="$ZodError",Object.defineProperty($,"_zod",{value:$._zod,enumerable:!1}),Object.defineProperty($,"issues",{value:X,enumerable:!1}),Object.defineProperty($,"message",{get(){return JSON.stringify(X,vW,2)},enumerable:!0}),Object.defineProperty($,"toString",{value:()=>$.message,enumerable:!1})},s2=P("$ZodError",xN),GY=P("$ZodError",xN,{Parent:Error});function e2($,X=(Y)=>Y.message){let Y={},z=[];for(let G of $.issues)if(G.path.length>0)Y[G.path[0]]=Y[G.path[0]]||[],Y[G.path[0]].push(X(G));else z.push(X(G));return{formErrors:z,fieldErrors:Y}}function $G($,X){let Y=X||function(U){return U.message},z={_errors:[]},G=(U)=>{for(let W of U.issues)if(W.code==="invalid_union"&&W.errors.length)W.errors.map((Q)=>G({issues:Q}));else if(W.code==="invalid_key")G({issues:W.issues});else if(W.code==="invalid_element")G({issues:W.issues});else if(W.path.length===0)z._errors.push(Y(W));else{let Q=z,H=0;while(H<W.path.length){let Z=W.path[H];if(H!==W.path.length-1)Q[Z]=Q[Z]||{_errors:[]};else Q[Z]=Q[Z]||{_errors:[]},Q[Z]._errors.push(Y(W));Q=Q[Z],H++}}};return G($),z}function hW($,X){let Y=X||function(U){return U.message},z={errors:[]},G=(U,W=[])=>{var Q,H;for(let Z of U.issues)if(Z.code==="invalid_union"&&Z.errors.length)Z.errors.map((O)=>G({issues:O},Z.path));else if(Z.code==="invalid_key")G({issues:Z.issues},Z.path);else if(Z.code==="invalid_element")G({issues:Z.issues},Z.path);else{let O=[...W,...Z.path];if(O.length===0){z.errors.push(Y(Z));continue}let w=z,V=0;while(V<O.length){let D=O[V],E=V===O.length-1;if(typeof D==="string")w.properties??(w.properties={}),(Q=w.properties)[D]??(Q[D]={errors:[]}),w=w.properties[D];else w.items??(w.items=[]),(H=w.items)[D]??(H[D]={errors:[]}),w=w.items[D];if(E)w.errors.push(Y(Z));V++}}};return G($),z}function SN($){let X=[];for(let Y of $)if(typeof Y==="number")X.push(`[${Y}]`);else if(typeof Y==="symbol")X.push(`[${JSON.stringify(String(Y))}]`);else if(/[^\w$]/.test(Y))X.push(`[${JSON.stringify(Y)}]`);else{if(X.length)X.push(".");X.push(Y)}return X.join("")}function fW($){let X=[],Y=[...$.issues].sort((z,G)=>z.path.length-G.path.length);for(let z of Y)if(X.push(`\u2716 ${z.message}`),z.path?.length)X.push(` \u2192 at ${SN(z.path)}`);return X.join(`
17
+ ${W.trace}`:"No previous disposal trace was found."),z.type){case"atom_family":case"mutable_atom_family":return $.defaults.get(z.key);case"readonly_pure_selector_family":case"writable_pure_selector_family":case"readonly_held_selector_family":case"writable_held_selector_family":{if($.defaults.has(z.key))return $.defaults.get(Y.family.key);let Q=P6($,z).default(U);return $.defaults.set(z.key,Q),Q}}}return M7($,P6($,Y))}var a1=class extends Map{deleted=new Set;source;constructor($){super();this.source=$}get($){if(super.has($))return super.get($);if(!this.deleted.has($)&&this.source.has($))return this.source.get($);return}set($,X){return this.deleted.delete($),super.set($,X)}hasOwn($){return super.has($)}has($){return!this.deleted.has($)&&(super.has($)||this.source.has($))}delete($){return this.deleted.add($),super.delete($)}},iC=($,X,Y,z)=>{let G=N$($),U={parent:G,child:null,on:G.on,loggers:G.loggers,logger:G.logger,config:G.config,atoms:new a1(G.atoms),atomsThatAreDefault:new Set(G.atomsThatAreDefault),families:new a1(G.families),joins:new a1(G.joins),operation:{open:!1},readonlySelectors:new a1(G.readonlySelectors),timelines:new a1(G.timelines),timelineTopics:new F4(G.timelineTopics.toJSON()),trackers:new Map,transactions:new a1(G.transactions),selectorAtoms:new F4(G.selectorAtoms.toJSON()),selectorGraph:new F4(G.selectorGraph.toJSON(),{makeContentKey:(...Z)=>Z.sort().join(":")}),writableSelectors:new a1(G.writableSelectors),valueMap:new a1(G.valueMap),defaults:G.defaults,disposalTraces:$.disposalTraces.copy(),molecules:new a1(G.molecules),moleculeGraph:new F4(G.moleculeGraph.toJSON(),{makeContentKey:G.moleculeGraph.makeContentKey}),moleculeData:new F4(G.moleculeData.toJSON(),{makeContentKey:G.moleculeData.makeContentKey}),moleculeJoins:new F4(G.moleculeJoins.toJSON(),{makeContentKey:G.moleculeJoins.makeContentKey}),miscResources:new a1(G.miscResources)},W=cC($,X),Q={phase:"building",update:{type:"transaction_update",key:X,id:z,epoch:W===void 0?NaN:W+1,updates:[],params:Y,output:void 0},toolkit:{get:(...Z)=>b1(H,...Z),set:(...Z)=>{Y1(H,...Z)},reset:(...Z)=>{aX(H,...Z)},run:(Z,O=zN())=>YW(H,Z,O),find:(...Z)=>g$($,...Z),json:(Z)=>n8(H,Z),dispose:(...Z)=>{tX(H,...Z)},env:()=>lC(H)}},H=Object.assign(U,{transactionMeta:Q});return G.child=H,$.logger.info("\uD83D\uDEEB","transaction",X,"Building transaction with params:",Y),H};function zW($,X){let{key:Y}=X,z=$.transactions.has(Y),G={key:Y,type:"transaction",run:(Q,H)=>{let Z=iC($,Y,Q,H);try{let O=N$($),{toolkit:w}=Z.transactionMeta,V=X.do(w,...Q);return dC(V,O),V}catch(O){throw qC(U),$.logger.warn("\uD83D\uDCA5","transaction",Y,"caught:",O),O}},install:(Q)=>zW(Q,X),subject:new y$},U=N$($);U.transactions.set(Y,G);let W=L0(G);if(!z)$.on.transactionCreation.next(W);return W}var ZN=class{parent=null;child=null;valueMap=new Map;defaults=new Map;atoms=new Map;writableSelectors=new Map;readonlySelectors=new Map;atomsThatAreDefault=new Set;selectorAtoms=new F4({between:["selectorKey","atomKey"],cardinality:"n:n"});selectorGraph=new F4({between:["upstreamSelectorKey","downstreamSelectorKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});trackers=new Map;families=new Map;joins=new Map;transactions=new Map;transactionMeta={epoch:new Map,actionContinuities:new F4({between:["continuity","action"],cardinality:"1:n"})};timelines=new Map;timelineTopics=new F4({between:["timelineKey","topicKey"],cardinality:"1:n"});disposalTraces=new JC(100);molecules=new Map;moleculeJoins=new F4({between:["moleculeKey","joinKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeGraph=new F4({between:["upstreamMoleculeKey","downstreamMoleculeKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeData=new F4({between:["moleculeKey","stateFamilyKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});miscResources=new Map;on={atomCreation:new y$,atomDisposal:new y$,selectorCreation:new y$,selectorDisposal:new y$,timelineCreation:new y$,transactionCreation:new y$,transactionApplying:new _C(null),operationClose:new y$,moleculeCreation:new y$,moleculeDisposal:new y$};operation={open:!1};config={name:"IMPLICIT_STORE",lifespan:"ephemeral"};loggers=[new YN("warn",($,X,Y)=>!$Y(Y))];logger={error:(...$)=>{for(let X of this.loggers)X.error(...$)},info:(...$)=>{for(let X of this.loggers)X.info(...$)},warn:(...$)=>{for(let X of this.loggers)X.warn(...$)}};constructor($,X=null){if(this.config={...X?.config,...$},X!==null){if(this.valueMap=new Map(X?.valueMap),this.operation={...X?.operation},H8(X))this.transactionMeta={epoch:new Map(X?.transactionMeta.epoch),actionContinuities:new F4(X?.transactionMeta.actionContinuities.toJSON())};for(let[,z]of X.families){if(z.internalRoles?.includes("mutable")||z.internalRoles?.includes("join"))continue;z.install(this)}let Y=new Set;for(let[,z]of X.atoms){if(Y.has(z.key))continue;if(z.install(this),z.type==="mutable_atom"){let G=n8(X,z),U=AW(z);Y.add(G.key),Y.add(U.key)}}for(let[,z]of X.readonlySelectors)z.install(this);for(let[,z]of X.writableSelectors){if(Y.has(z.key))continue;z.install(this)}for(let[,z]of X.transactions)z.install(this);for(let[,z]of X.timelines)z.install(this)}}},R6={get STORE(){return globalThis.ATOM_IO_IMPLICIT_STORE??=new ZN({name:"IMPLICIT_STORE",lifespan:"ephemeral"}),globalThis.ATOM_IO_IMPLICIT_STORE}};function P6($,X){let Y,z=$;while(z!==null){switch(X.type){case"atom":case"mutable_atom":Y=z.atoms.get(X.key);break;case"writable_pure_selector":case"writable_held_selector":Y=z.writableSelectors.get(X.key);break;case"readonly_pure_selector":case"readonly_held_selector":Y=z.readonlySelectors.get(X.key);break;case"atom_family":case"mutable_atom_family":case"writable_pure_selector_family":case"readonly_pure_selector_family":case"writable_held_selector_family":case"readonly_held_selector_family":Y=z.families.get(X.key);break;case"timeline":Y=z.timelines.get(X.key);break;case"transaction":Y=z.transactions.get(X.key);break}if(Y)return Y;z=z.child}throw new OW(X,$)}var rC=($,X)=>{let Y=N$($);if(Y.operation.open)return Y.operation.prev.get(X.key);return Y.valueMap.get(X.key)};var EN=($,X)=>{let Y=N$($);return JN(X,$).map((G)=>{return G.subject.subscribe(`${X.type}:${X.key}`,(U)=>{$.logger.info("\uD83D\uDCE2",X.type,X.key,"root",G.key,"went",U.oldValue,"->",U.newValue);let W=rC(Y,X),Q=M7(Y,X);$.logger.info("\u2728",X.type,X.key,"went",W,"->",Q),X.subject.next({newValue:Q,oldValue:W})})})};function u2($,X,Y,z){function G(w){if($.operation.open){let V=$.on.operationClose.subscribe(`state subscription ${Y}`,()=>{V(),z(w)})}else z(w)}let U=P6($,X);$.logger.info("\uD83D\uDC40",U.type,U.key,`Adding subscription "${Y}"`);let W=U.type==="writable_pure_selector"||U.type==="readonly_pure_selector",Q=null,H=G;if(W)Q=EN($,U),H=(w)=>{if(Q)Q.length=0,Q.push(...EN($,U));G(w)};let Z=U.subject.subscribe(Y,H);return()=>{if($.logger.info("\uD83D\uDE48",U.type,U.key,`Removing subscription "${Y}"`),Z(),Q)for(let w of Q)w()}}var nC=($,X,Y,z)=>{let G=P6($,X);$.logger.info("\uD83D\uDC40","timeline",X.key,`Adding subscription "${Y}"`);let U=G.subject.subscribe(Y,z);return()=>{$.logger.info("\uD83D\uDE48","timeline",X.key,`Removing subscription "${Y}" from timeline`),U()}};var MW=class{initializeState($,X){let Y=`*${$.key}`;X.atoms.delete(Y),X.valueMap.delete(Y);let z=$.family?{key:`*${$.family.key}`,subKey:$.family.subKey}:void 0,G=o8(X,{key:Y,default:null},z);if(X.parent?.valueMap.has(Y)){let U=X.parent.valueMap.get(Y);X.valueMap.set(Y,U)}return G}unsubscribeFromInnerValue;unsubscribeFromState;observeCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`,G=b1(Y,$);this.unsubscribeFromInnerValue=G.subscribe(z,(U)=>{Y1(Y,X,U)}),this.unsubscribeFromState=u2(Y,$,z,(U)=>{if(U.newValue!==U.oldValue)this.unsubscribeFromInnerValue(),this.unsubscribeFromInnerValue=U.newValue.subscribe(z,(W)=>{Y1(Y,X,W)})})}updateCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`;u2(Y,X,z,({newValue:G,oldValue:U})=>{let W=Y.timelineTopics.getRelatedKey(X.key);if(W){if(Y.timelines.get(W)?.timeTraveling){let Z=nC(Y,{key:W,type:"timeline"},z,(O)=>{Z(),Y1(Y,$,(w)=>{if(O==="redo"&&G)w.do(G);else if(O==="undo"&&U)w.undo(U);return w})});return}}let Q=Y.on.operationClose.subscribe(z,()=>{Q();let H=b1(Y,$),Z=G===null?-1:H.getUpdateNumber(G),O=Z-H.cacheUpdateNumber;if(G&&O===1)Y1(Y,$,(w)=>(w.do(G),w));else Y.logger.info("\u274C","mutable_atom",$.key,`could not be updated. Expected update number ${H.cacheUpdateNumber+1}, but got ${Z}`)})})}mutableState;latestUpdateState;[Symbol.dispose];constructor($,X){this.mutableState=$;let Y=N$(X);this.latestUpdateState=this.initializeState($,Y),this.observeCore($,this.latestUpdateState,Y),this.updateCore($,this.latestUpdateState,Y),Y.trackers.set($.key,this),this[Symbol.dispose]=()=>{this.unsubscribeFromInnerValue(),this.unsubscribeFromState(),Y.trackers.delete($.key)}}};function LW($,X,Y){$.logger.info("\uD83D\uDD28","atom",X.key,`creating in store "${$.config.name}"`);let z=N$($),{key:G,default:U}=X,W=z.atoms.get(G),Q="mutable_atom";if(W&&W.type===Q)return $.logger.error("\u274C",Q,G,"Tried to create atom, but it already exists in the store."),L0(W);let H=new y$,Z={...X,type:Q,install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),LW(V,X,Y)},subject:H};if(Y)Z.family=Y;let O=U();z.atoms.set(Z.key,Z),s1(z,G,O,H);let w=L0(Z);if(X.effects){let V=0,D=[];for(let E of X.effects){let F=E({resetSelf:()=>{aX($,w)},setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>u2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}Z.cleanup=()=>{for(let E of D)E()}}if(new MW(w,$),!Y)eE(w,X,$);return w}var oC=class{trackers=new Map;latestUpdateAtoms;mutableAtoms;constructor($,X){let Y=c2(X,{key:`*${$.key}`,default:null},["mutable","updates"]);this.latestUpdateAtoms=P6(X,Y),this.mutableAtoms=$,this.mutableAtoms.subject.subscribe(`store=${X.config.name}::tracker-atom-family`,(z)=>{let{type:G,token:U}=z;if(U.family){let W=N4(U.family.subKey);switch(G){case"state_creation":this.trackers.set(W,new MW(U,X));break;case"state_disposal":{let Q=this.trackers.get(W);if(Q)Q[Symbol.dispose](),this.trackers.delete(W)}break}}})}};function JW($,X,Y){let z={key:X.key,type:"mutable_atom_family"},G=$.families.get(X.key);if(G)$.logger.error("\u2757","mutable_atom_family",X.key,`Overwriting an existing ${r8(G)} "${G.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let U=new y$,Q=Object.assign((H)=>{let Z=d$(H),O={key:X.key,subKey:Z},w=`${X.key}(${Z})`,V=N$($),D={key:w,default:()=>X.default(H),toJson:X.toJson,fromJson:X.fromJson,mutable:!0};if(X.effects)D.effects=X.effects(H);let E=LW(V,D,O);return U.next({type:"state_creation",token:E}),E},z,{subject:U,install:(H)=>JW(H,X),toJson:X.toJson,fromJson:X.fromJson,internalRoles:Y});return $.families.set(X.key,Q),$N($,Q,X),new oC(Q,$),z}var NN=($,X)=>{let Y=N$(X),z=`${$.key}:JSON`;return Y.families.get(z)},n8=($,X)=>{if(X.family){let z=N$($),U={key:`${X.family.key}:JSON`,type:"writable_pure_selector_family"},W=P6(z,U),Q=JSON.parse(X.family.subKey);return g$($,W,Q)}return{type:"writable_pure_selector",key:`${X.key}:JSON`}};var AW=($)=>{let Y={type:"atom",key:`*${$.key}`};if($.family)Y.family={key:`*${$.family.key}`,subKey:$.family.subKey};return Y};function tC($){return typeof $==="object"&&$!==null&&"do"in $&&"undo"in $&&"subscribe"in $}function HW($,X,Y){let z=Y.valueMap.get(X.key),G=$.valueMap.get(X.key);if(z!==G)return G;if(z===void 0)return X.default();Y.logger.info("\uD83D\uDCC3","atom",X.key,"copying");let U=X.toJson(z),W=X.fromJson(U);return $.valueMap.set(X.key,W),new MW(X,Y),W}function s1($,X,Y,z){let G=$.valueMap.get(X);if(G instanceof WW){let U=G;if(Y instanceof Promise)return U.use(Y),U;return $.valueMap.set(X,Y),Y}if(Y instanceof Promise){let U=new WW(Y);return $.valueMap.set(X,U),U.then((W)=>{if($.valueMap.get(X)===U){s1($,X,W,z);let H=$.atoms.get(X);if(H)N7($,H),QW($,H),F7($);else{let Z=$.writableSelectors.get(X)??$.readonlySelectors.get(X);if(Z)N7($,Z),RC($,Z),F7($)}z.next({newValue:W,oldValue:U})}}).catch((W)=>{$.logger.error("\uD83D\uDCA5","state",X,"rejected:",W)}),U}return $.valueMap.set(X,Y),Y}var aC=($,X)=>{let Y=X.valueMap.get($.key);if($.type==="mutable_atom"&&t6(X)){let{parent:z}=X;Y=HW(X,$,z)}return Y},vN=($,X)=>{let Y=X.valueMap.get($);if(Y instanceof WW){let z=Y,G=X.writableSelectors.get($)??X.readonlySelectors.get($);if(G)z.use(G.get());return}if(X.operation.open)X.operation.prev.set($,Y);X.valueMap.delete($),X.logger.info("\uD83D\uDDD1","state",$,"evicted")};function o8($,X,Y){let{key:G,default:U}=X;$.logger.info("\uD83D\uDD28","atom",G,`creating in store "${$.config.name}"`);let W=N$($),Q=W.atoms.get(G);if(Q&&Q.type==="atom")return $.logger.error("\u274C","atom",G,"Tried to create atom, but it already exists in the store."),L0(Q);let H=new y$,Z={...X,type:"atom",install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),o8(V,X,Y)},subject:H};if(Y)Z.family=Y;let O=U;if(U instanceof Function)O=U();W.atoms.set(G,Z),s1(W,G,O,H);let w=L0(Z);if(X.effects){let V=0,D=[];for(let E of X.effects){let F=E({resetSelf:()=>{aX($,w)},setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>u2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}Z.cleanup=()=>{for(let E of D)E()}}return w}function HN($,X){if("mutable"in X){let G=LW($,X,void 0);return $.on.atomCreation.next(G),G}let z=o8($,X,void 0);return $.on.atomCreation.next(z),z}function CN($,X){let Y=N$($),{key:z,family:G}=X,U=P6(Y,X);if(!G)$.logger.error("\u274C","atom",z,"Standalone atoms cannot be disposed.");else{U.cleanup?.();let W=$.valueMap.get(U.key),Q=P6($,{key:G.key,type:"atom_family"}),H={type:"state_disposal",subType:"atom",token:X,value:W};Q.subject.next(H);let Z=t6(Y);if(Y.atoms.delete(z),Y.valueMap.delete(z),Y.selectorAtoms.delete(z),Y.atomsThatAreDefault.delete(z),$.timelineTopics.delete(z),X.type==="mutable_atom"){let O=AW(X);CN($,O),$.trackers.delete(z)}if($.logger.info("\uD83D\uDD25","atom",z,"deleted"),Z&&Y.transactionMeta.phase==="building"){let O=Y.transactionMeta.update.updates.at(-1);if(!(O?.type==="molecule_disposal"&&O.values.some(([D])=>D===U.family?.key)))Y.transactionMeta.update.updates.push(H)}else $.on.atomDisposal.next(X)}}var UW=class{toolkit;options;defaultContent;molecules=new Map;relations;states;core;transact($,X){let Y=this.toolkit;this.toolkit=$,X(this),this.toolkit=Y}store;realm;[Symbol.dispose](){}constructor($,X,Y=R6.STORE){this.store=Y,this.realm=new GN(Y),this.options=$,this.defaultContent=X,this.store.miscResources.set(`join:${$.key}`,this),this.realm.allocate("root",$.key),this.toolkit={get:(..._)=>b1(Y,..._),set:(..._)=>{Y1(Y,..._)},find:(..._)=>g$(Y,..._),json:(_)=>n8(Y,_)};let z=$.between[0],G=$.between[1],U=JW(Y,{key:`${$.key}/relatedKeys`,default:()=>new y4,mutable:!0,fromJson:(_)=>y4.fromJSON(_),toJson:(_)=>_.toJSON()},["join","relations"]);this.core={relatedKeysAtoms:U};let W=({get:_},v)=>_(U,v),Q=({set:_},v,x)=>{if(!this.store.molecules.has(d$(v)))this.realm.allocate($.key,v);_(U,v,(S)=>S.add(x)),_(U,x,(S)=>S.add(v))},H=({set:_},v,x)=>{_(U,v,(S)=>{return S.delete(x),S}),_(U,x,(S)=>{return S.delete(v),S})},Z=(_,v,x)=>{let{find:S,get:u,set:$$}=_,I=S(U,v),Y$=u(I);for(let l of Y$){if(x.includes(l))continue;$$(U,l,(K$)=>{return K$.delete(v),K$})}$$(I,(l)=>{return l.transaction((U$)=>{U$.clear();for(let K$ of x){let b$=W(_,K$),K6=b$.has(v);if(this.relations.cardinality==="1:n"){let Y4=[];for(let m of b$){if(m===v)continue;let Q$=W(_,m);if(Q$.delete(K$),Q$.size===0)Y4.push(m)}if(!K6&&b$.size>0)b$.clear();for(let m of Y4){let Q$=[K$,m].sort(),h$=`"${Q$[0]}:${Q$[1]}"`;this.molecules.delete(h$)}}if(!K6)b$.add(v);U$.add(K$)}return!0}),l})},O=(_,v,x)=>{let{set:S}=_;S(U,v,(u)=>{return u.transaction(($$)=>{for(let I of x)$$.add(I);return!0}),u});for(let u of x)S(U,u,($$)=>{return $$.add(v),$$});return!0},w=(_,v,x)=>{let S=W(_,v);return x?S.has(x):S.size>0},V={getRelatedKeys:(_)=>W(this.toolkit,_),addRelation:(_,v)=>{this.store.moleculeJoins.set(_,$.key),this.store.moleculeJoins.set(v,$.key),Q(this.toolkit,_,v)},deleteRelation:(_,v)=>{H(this.toolkit,_,v)},replaceRelationsSafely:(_,v)=>{Z(this.toolkit,_,v)},replaceRelationsUnsafely:(_,v)=>{O(this.toolkit,_,v)},has:(_,v)=>w(this.toolkit,_,v)},D,E;if(X){E=c2(Y,{key:`${$.key}/content`,default:X},["join","content"]);let _=({get:S},u)=>S(E,u),v=({set:S},u,$$)=>{S(E,u,$$)};D=Object.assign(V,{getContent:(S)=>{return _(this.toolkit,S)},setContent:(S,u)=>{v(this.toolkit,S,u)},deleteContent:(S)=>{this.realm.deallocate(S)}})}else D=V;let F=new F4($,{externalStore:D,isAType:$.isAType,isBType:$.isBType,makeContentKey:(..._)=>{let[v,x]=_,S=_.sort(),u=`${S[0]}:${S[1]}`,$$=Y.molecules.get(d$(v)),I=Y.molecules.get(d$(x));if(!$$)this.realm.allocate($.key,v);if(!I)this.realm.allocate($.key,x);return this.realm.allocate(v,u,"all"),this.realm.claim(x,u),this.store.moleculeJoins.set(u,$.key),u}}),L=()=>i8(Y,{key:`${$.key}/singleRelatedKey`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x)return S;return null}},["join","keys"]),K=()=>{return i8(Y,{key:`${$.key}/multipleRelatedKeys`,get:(_)=>({get:v})=>{let x=NN(U,Y);return v(x,_).members}},["join","keys"])},q=()=>i8(Y,{key:`${$.key}/singleRelatedEntry`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x){let u=F.isAType?.(_)?_:void 0,$$=u===void 0?_:void 0;u??=S,$$??=S;let I=F.makeContentKey(u,$$),Y$=v(E,I);return[S,Y$]}return null}},["join","entries"]),R=()=>i8(Y,{key:`${$.key}/multipleRelatedEntries`,get:(_)=>({get:v})=>{let x=NN(U,Y);return v(x,_).members.map((u)=>{let $$=F.isAType?.(_)?_:void 0,I=$$===void 0?_:void 0;$$??=u,I??=u;let Y$=F.makeContentKey($$,I),l=v(E,Y$);return[u,l]})}},["join","entries"]);switch($.cardinality){case"1:1":{let _=L(),v=`${z}KeyOf${U6(G)}`,x=`${G}KeyOf${U6(z)}`,S={[v]:_,[x]:_},u;if(X){let $$=q(),I=`${z}EntryOf${U6(G)}`,Y$=`${G}EntryOf${U6(z)}`,l={[I]:$$,[Y$]:$$};u=Object.assign(S,l)}else u=S;this.relations=F,this.states=u;break}case"1:n":{let _=L(),v=K(),x=`${z}KeyOf${U6(G)}`,S=`${G}KeysOf${U6(z)}`,u={[x]:_,[S]:v},$$;if(X){let I=q(),Y$=R(),l=`${z}EntryOf${U6(G)}`,U$=`${G}EntriesOf${U6(z)}`,K$={[l]:I,[U$]:Y$};$$=Object.assign(u,K$)}else $$=u;this.relations=F,this.states=$$;break}case"n:n":{let _=K(),v=`${z}KeysOf${U6(G)}`,x=`${G}KeysOf${U6(z)}`,S={[v]:_,[x]:_},u;if(X){let $$=R(),I=`${z}EntriesOf${U6(G)}`,Y$=`${G}EntriesOf${U6(z)}`,l={[I]:$$,[Y$]:$$};u=Object.assign(S,l)}else u=S;this.relations=F,this.states=u}}}};function KW($,X){let Y=X.joins.get($.key);if(Y===void 0){let G=R6.STORE.joins.get($.key);if(G===void 0)throw new Error(`Join "${$.key}" not found in store "${X.config.name}"`);Y=new UW(G.options,G.defaultContent,X),X.joins.set($.key,Y)}return Y}function y2($,X,Y){let z=KW($,Y),G=N$(Y);if(t6(G)){let{toolkit:U}=G.transactionMeta;z.transact(U,({relations:W})=>{X(W)})}else X(z.relations)}function ON($,X,Y){let z=KW($,Y),G;switch($.cardinality){case"1:1":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeyOf${U6($.a)}`;G={get[U](){let H=z.states[U];return g$(Y,H,X)},get[W](){let H=z.states[W];return g$(Y,H,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let H=`${$.b}EntryOf${U6($.a)}`;Object.assign(G,{get[Q](){let Z=z.states[Q];return g$(Y,Z,X)},get[H](){let Z=z.states[H];return g$(Y,Z,X)}})}break}case"1:n":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let H=z.states[U];return g$(Y,H,X)},get[W](){let H=z.states[W];return g$(Y,H,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let H=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let Z=z.states[Q];return g$(Y,Z,X)},get[H](){let Z=z.states[H];return g$(Y,Z,X)}})}break}case"n:n":{let U=`${$.a}KeysOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let H=z.states[U];return g$(Y,H,X)},get[W](){let H=z.states[W];return g$(Y,H,X)}};let Q=`${$.a}EntriesOf${U6($.b)}`;if(Q in z.states){let H=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let Z=z.states[Q];return g$(Y,Z,X)},get[H](){let Z=z.states[H];return g$(Y,Z,X)}})}}}return G}function wN($,X){return KW($,X).core.relatedKeysAtoms}function $Y($){return $.startsWith("\uD83D\uDD0D ")}var sC=class extends Map{set($,X){if(this.has($))return console.warn("Tried to set a key that already exists in an InvariantMap",{key:$,value:X}),this;return super.set($,X)}clear(){throw new Error("Cannot clear an InvariantMap")}},Qu=class ${type="continuity";globals=[];actions=[];perspectives=[];key;constructor(X){this.key=X}static existing=new sC;static create(X,Y){let z=new $(X),{type:G,globals:U,actions:W,perspectives:Q}=Y(z),H={type:G,key:X,globals:U,actions:W,perspectives:Q};return $.existing.set(X,H),H}add(...X){switch(X[0].type){case"atom":case"mutable_atom":this.globals.push(...X);break;case"transaction":this.actions.push(...X);break;case"atom_family":case"mutable_atom_family":{let[z,G]=X;this.perspectives.push({type:"realtime_perspective",resourceAtoms:z,viewAtoms:G})}break}return this}};var Zu=oX({key:"usersInRoomIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),_W=oX({key:"roomIndex",default:()=>new y4,mutable:!0,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),eC={enteredAtEpoch:0},p2=D7({key:"usersInRooms",between:["room","user"],cardinality:"1:n",isAType:($)=>typeof $==="string",isBType:($)=>typeof $==="string"},eC),Hu=E7({key:"usersInMyRoomView",get:($)=>({find:X})=>{let Y=XN(p2);return[X(Y,$)]}});import{spawn as $j}from"child_process";var qW=class{listeners;globalListeners;handleEvent($,...X){for(let z of this.globalListeners)z($,...X);let Y=this.listeners.get($);if(Y)for(let z of Y)z(...X)}id="no_id_retrieved";emit;constructor($){this.emit=$,this.listeners=new Map,this.globalListeners=new Set}on($,X){let Y=this.listeners.get($);if(Y)Y.add(X);else this.listeners.set($,new Set([X]));return this}onAny($){return this.globalListeners.add($),this}off($,X){let Y=this.listeners.get($);if(Y)if(X)Y.delete(X);else this.listeners.delete($);return this}offAny($){return this.globalListeners.delete($),this}},Xj=class extends qW{incompleteData="";unprocessedEvents=[];incompleteLog="";unprocessedLogs=[];id="#####";process;key;logger;handleLog($){if(Array.isArray($)){let[X,...Y]=$;switch(X){case"i":this.logger.info(...Y);break;case"w":this.logger.warn(...Y);break;case"e":this.logger.error(...Y);break;default:return}}}constructor($,X,Y){super((z,...G)=>{let U=JSON.stringify([z,...G])+"\x03",W=(Q)=>{if(Q.code==="EPIPE")console.error("EPIPE error during write",this.process.stdin);this.process.stdin.removeListener("error",W)};return this.process.stdin.once("error",W),this.process.stdin.write(U),this});if(this.process=$,this.key=X,this.logger=Y??{info:(...z)=>{console.info(this.id,this.key,...z)},warn:(...z)=>{console.warn(this.id,this.key,...z)},error:(...z)=>{console.error(this.id,this.key,...z)}},this.process.stdout.on("data",(z)=>{let G=z.toString();if(G==="ALIVE")return;this.unprocessedEvents.push(...G.split("\x03"));let U=this.unprocessedEvents.shift();this.incompleteData+=U??"";try{if(this.incompleteData.startsWith("error"))console.log("\u2757",this.incompleteData);let W=N4(this.incompleteData);this.handleEvent(...W);while(this.unprocessedEvents.length>0){let Q=this.unprocessedEvents.shift();if(Q){if(this.unprocessedEvents.length===0)this.incompleteData=Q;W=N4(Q),this.handleEvent(...W)}}this.incompleteData=""}catch(W){console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.warn(this.incompleteData),console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.error(W)}}),this.process.stderr.on("data",(z)=>{let G=z.toString();this.unprocessedLogs.push(...G.split("\x03"));let U=this.unprocessedLogs.shift();this.incompleteLog+=U??"";try{let W=N4(this.incompleteLog);this.handleLog(W);while(this.unprocessedLogs.length>0)if(this.incompleteLog=this.unprocessedLogs.shift()??"",this.incompleteLog)W=N4(this.incompleteLog),this.handleLog(W)}catch(W){console.error("\u274C\u274C\u274C"),console.error(this.incompleteLog),console.error(W),console.error("\u274C\u274C\u274C\uFE0F")}}),$.pid)this.id=$.pid.toString()}},Yj=class extends qW{in;out;id="no_id_retrieved";disposalFunctions=[];constructor($){super((...X)=>{return this.out.next(X),this});this.id=$,this.in=new y$,this.out=new y$,this.in.subscribe("socket",(X)=>{this.handleEvent(...X)})}dispose(){for(let $ of this.disposalFunctions)$()}},jN=class extends qW{incompleteData="";unprocessedEvents=[];relays;relayServices;process;id="#####";log(...$){this.process.stderr.write(d$($.map((X)=>X instanceof y4?`{ ${X.toJSON().members.join(" | ")} }`:X))+"\x03")}logger={info:(...$)=>{this.log("i",...$)},warn:(...$)=>{this.log("w",...$)},error:(...$)=>{this.log("e",...$)}};constructor(){super(($,...X)=>{let Y=JSON.stringify([$,...X]);return this.process.stdout.write(Y+"\x03"),this});if(this.process=process,this.process.stdin.resume(),this.relays=new Map,this.relayServices=[],this.process.stdin.on("data",($)=>{let X=$.toString();this.unprocessedEvents.push(...X.split("\x03"));let Y=this.unprocessedEvents.shift();this.incompleteData+=Y??"";try{let z=N4(this.incompleteData);this.logger.info("\uD83C\uDFB0","received",z),this.handleEvent(...z);while(this.unprocessedEvents.length>0){let G=this.unprocessedEvents.shift();if(G){if(this.unprocessedEvents.length===0)this.incompleteData=G;let U=N4(G);this.handleEvent(...U)}}this.incompleteData=""}catch(z){if(z instanceof Error)this.logger.error("\u2757",z.message,z.cause,z.stack)}}),this.on("exit",()=>{this.logger.info("\uD83D\uDD25",this.id,'received "exit"'),process.exit(0)}),process.on("exit",($)=>{this.logger.info("\uD83D\uDD25",this.id,`exited with code ${$}`)}),process.on("end",()=>{this.logger.info("\uD83D\uDD25",this.id,"ended"),process.exit(0)}),process.on("SIGTERM",()=>{this.logger.error("\uD83D\uDD25",this.id,"terminated"),process.exit(0)}),process.on("SIGINT",()=>{this.logger.error("\uD83D\uDD25",this.id,"interrupted"),process.exit(0)}),process.pid)this.id=process.pid?.toString();this.on("user-joins",($)=>{this.logger.info("\uD83D\uDC64","user",$,"joined");let X=new Yj(`user:${$}`);this.relays.set($,X),this.logger.info("\uD83D\uDD17","attaching services:",`[${[...this.relayServices.keys()].join(", ")}]`);for(let Y of this.relayServices){let z=Y(X);if(z)X.disposalFunctions.push(z)}this.on(`user:${$}`,(...Y)=>{X.in.next(Y)}),X.out.subscribe("socket",(Y)=>{this.emit(...Y)})}),this.on("user-leaves",($)=>{let X=this.relays.get($);if(this.off(`relay:${$}`),X)X.dispose(),this.relays.delete($)}),process.stdout.write("ALIVE")}relay($){this.logger.info("\uD83D\uDD17","running relay method"),this.relayServices.push($)}},BN=h2({key:"roomArguments",default:["echo",["Hello World!"]]}),Gj=E7({key:"room",get:($)=>async({get:X,find:Y})=>{let z=Y(BN,$),G=X(z),[U,W]=G,Q=await new Promise((H)=>{let Z=$j(U,W,{env:process.env}),O=(w)=>{if(w.toString()==="ALIVE")Z.stdout.off("data",O),H(Z)};Z.stdout.on("data",O)});return new Xj(Q,$)}}),Ju=f2({key:"createRoom",do:({get:$,set:X,find:Y},z,G,U)=>{let W=U?[G,U]:[G],Q=Y(BN,z);X(Q,W),X(_W,(O)=>O.add(z));let H=Y(Gj,z);return $(H)}}),Au=f2({key:"joinRoom",do:($,X,Y,z)=>{let G={enteredAtEpoch:z};return y2(p2,(U)=>{U.set({room:X,user:Y},G)},$.env().store),G}}),Ku=f2({key:"leaveRoom",do:($,X,Y)=>{y2(p2,(z)=>{z.delete({room:X,user:Y})},$.env().store)}}),_u=f2({key:"destroyRoom",do:($,X)=>{y2(p2,(Y)=>{Y.delete({room:X})},$.env().store),$.set(_W,(Y)=>(Y.delete(X),Y))}});var qu=h2({key:"redactor",default:{occlude:($)=>$}}),Tu=h2({key:"unacknowledgedUpdates",default:()=>[]}),Ru=h2({key:"sockets",default:null}),Pu=oX({key:"socketsIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),vu=oX({key:"usersIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),Cu=D7({key:"usersOfSockets",between:["user","socket"],cardinality:"1:1",isAType:($)=>$.startsWith("user::"),isBType:($)=>$.startsWith("socket::")});var Jz={};Z8(Jz,{xid:()=>GI,void:()=>TI,uuidv7:()=>tB,uuidv6:()=>oB,uuidv4:()=>nB,uuid:()=>rB,url:()=>aB,uppercase:()=>VG,unknown:()=>Oz,union:()=>Mz,undefined:()=>_I,ulid:()=>YI,uint64:()=>AI,uint32:()=>MI,tuple:()=>II,trim:()=>LG,treeifyError:()=>hW,transform:()=>lO,toUpperCase:()=>AG,toLowerCase:()=>JG,toJSONSchema:()=>wO,templateLiteral:()=>uI,symbol:()=>KI,superRefine:()=>lF,success:()=>gI,stringbool:()=>dI,stringFormat:()=>DI,string:()=>AO,strictObject:()=>CI,startsWith:()=>EG,size:()=>HG,setErrorMap:()=>nI,set:()=>kI,safeParseAsync:()=>JO,safeParse:()=>LO,registry:()=>b7,regexes:()=>e8,regex:()=>OG,refine:()=>dF,record:()=>AF,readonly:()=>gF,property:()=>YO,promise:()=>mI,prettifyError:()=>fW,preprocess:()=>iI,prefault:()=>IF,positive:()=>sH,pipe:()=>Dz,partialRecord:()=>xI,parseAsync:()=>MO,parse:()=>FO,overwrite:()=>q0,optional:()=>wz,object:()=>vI,number:()=>UF,nullish:()=>fI,nullable:()=>Vz,null:()=>OF,normalize:()=>MG,nonpositive:()=>$O,nonoptional:()=>xF,nonnegative:()=>XO,never:()=>Ez,negative:()=>eH,nativeEnum:()=>bI,nanoid:()=>eB,nan:()=>yI,multipleOf:()=>YX,minSize:()=>GX,minLength:()=>w8,mime:()=>FG,maxSize:()=>QY,maxLength:()=>ZY,map:()=>SI,lte:()=>A1,lt:()=>K0,lowercase:()=>wG,looseObject:()=>jI,locales:()=>WG,literal:()=>RF,length:()=>HY,lazy:()=>mF,ksuid:()=>zI,keyof:()=>PI,jwt:()=>VI,json:()=>lI,iso:()=>Zz,ipv6:()=>WI,ipv4:()=>UI,intersection:()=>LF,int64:()=>JI,int32:()=>FI,int:()=>KO,instanceof:()=>pI,includes:()=>DG,guid:()=>iB,gte:()=>m4,gt:()=>_0,globalRegistry:()=>e1,getErrorMap:()=>oI,function:()=>OO,formatError:()=>$G,float64:()=>NI,float32:()=>EI,flattenError:()=>e2,file:()=>hI,enum:()=>qF,endsWith:()=>NG,emoji:()=>sB,email:()=>lB,e164:()=>wI,discriminatedUnion:()=>BI,date:()=>RI,custom:()=>cI,cuid2:()=>XI,cuid:()=>$I,core:()=>T0,config:()=>v6,coerce:()=>oO,clone:()=>G1,cidrv6:()=>ZI,cidrv4:()=>QI,check:()=>pF,catch:()=>bF,boolean:()=>WF,bigint:()=>LI,base64url:()=>OI,base64:()=>HI,array:()=>mO,any:()=>qI,_default:()=>jF,_ZodString:()=>_O,ZodXID:()=>BO,ZodVoid:()=>EF,ZodUnknown:()=>VF,ZodUnion:()=>cO,ZodUndefined:()=>ZF,ZodUUID:()=>R0,ZodURL:()=>TO,ZodULID:()=>jO,ZodType:()=>P$,ZodTuple:()=>JF,ZodTransform:()=>dO,ZodTemplateLiteral:()=>yF,ZodSymbol:()=>QF,ZodSuccess:()=>SF,ZodStringFormat:()=>a$,ZodString:()=>qG,ZodSet:()=>_F,ZodRecord:()=>pO,ZodRealError:()=>OY,ZodReadonly:()=>fF,ZodPromise:()=>cF,ZodPrefault:()=>BF,ZodPipe:()=>nO,ZodOptional:()=>iO,ZodObject:()=>Fz,ZodNumberFormat:()=>wY,ZodNumber:()=>TG,ZodNullable:()=>vF,ZodNull:()=>HF,ZodNonOptional:()=>rO,ZodNever:()=>DF,ZodNanoID:()=>PO,ZodNaN:()=>hF,ZodMap:()=>KF,ZodLiteral:()=>TF,ZodLazy:()=>uF,ZodKSUID:()=>IO,ZodJWT:()=>yO,ZodIssueCode:()=>rI,ZodIntersection:()=>MF,ZodISOTime:()=>Wz,ZodISODuration:()=>Qz,ZodISODateTime:()=>zz,ZodISODate:()=>Uz,ZodIPv6:()=>SO,ZodIPv4:()=>xO,ZodGUID:()=>Hz,ZodFile:()=>PF,ZodError:()=>pB,ZodEnum:()=>_G,ZodEmoji:()=>RO,ZodEmail:()=>qO,ZodE164:()=>gO,ZodDiscriminatedUnion:()=>FF,ZodDefault:()=>CF,ZodDate:()=>Nz,ZodCustomStringFormat:()=>zF,ZodCustom:()=>Lz,ZodCatch:()=>kF,ZodCUID2:()=>CO,ZodCUID:()=>vO,ZodCIDRv6:()=>bO,ZodCIDRv4:()=>kO,ZodBoolean:()=>RG,ZodBigIntFormat:()=>uO,ZodBigInt:()=>PG,ZodBase64URL:()=>fO,ZodBase64:()=>hO,ZodArray:()=>NF,ZodAny:()=>wF,TimePrecision:()=>RH,NEVER:()=>TW,$output:()=>KH,$input:()=>_H,$brand:()=>RW});var T0={};Z8(T0,{version:()=>SQ,util:()=>n,treeifyError:()=>hW,toJSONSchema:()=>wO,toDotPath:()=>SN,safeParseAsync:()=>yW,safeParse:()=>gW,registry:()=>b7,regexes:()=>e8,prettifyError:()=>fW,parseAsync:()=>q7,parse:()=>K7,locales:()=>WG,isValidJWT:()=>aN,isValidBase64URL:()=>tN,isValidBase64:()=>$Z,globalRegistry:()=>e1,globalConfig:()=>d2,function:()=>OO,formatError:()=>$G,flattenError:()=>e2,config:()=>v6,clone:()=>G1,_xid:()=>r7,_void:()=>nH,_uuidv7:()=>u7,_uuidv6:()=>y7,_uuidv4:()=>g7,_uuid:()=>f7,_url:()=>m7,_uppercase:()=>VG,_unknown:()=>WY,_union:()=>KB,_undefined:()=>dH,_ulid:()=>i7,_uint64:()=>cH,_uint32:()=>hH,_tuple:()=>GO,_trim:()=>LG,_transform:()=>BB,_toUpperCase:()=>AG,_toLowerCase:()=>JG,_templateLiteral:()=>yB,_symbol:()=>pH,_success:()=>bB,_stringbool:()=>QO,_stringFormat:()=>ZO,_string:()=>qH,_startsWith:()=>EG,_size:()=>HG,_set:()=>PB,_safeParseAsync:()=>R7,_safeParse:()=>T7,_regex:()=>OG,_refine:()=>WO,_record:()=>TB,_readonly:()=>gB,_property:()=>YO,_promise:()=>mB,_positive:()=>sH,_pipe:()=>fB,_parseAsync:()=>_7,_parse:()=>A7,_overwrite:()=>q0,_optional:()=>IB,_number:()=>BH,_nullable:()=>xB,_null:()=>lH,_normalize:()=>MG,_nonpositive:()=>$O,_nonoptional:()=>kB,_nonnegative:()=>XO,_never:()=>rH,_negative:()=>eH,_nativeEnum:()=>CB,_nanoid:()=>p7,_nan:()=>aH,_multipleOf:()=>YX,_minSize:()=>GX,_minLength:()=>w8,_min:()=>m4,_mime:()=>FG,_maxSize:()=>QY,_maxLength:()=>ZY,_max:()=>A1,_map:()=>RB,_lte:()=>A1,_lt:()=>K0,_lowercase:()=>wG,_literal:()=>jB,_length:()=>HY,_lazy:()=>uB,_ksuid:()=>n7,_jwt:()=>Yz,_isoTime:()=>CH,_isoDuration:()=>jH,_isoDateTime:()=>PH,_isoDate:()=>vH,_ipv6:()=>t7,_ipv4:()=>o7,_intersection:()=>qB,_int64:()=>mH,_int32:()=>bH,_int:()=>xH,_includes:()=>DG,_guid:()=>ZG,_gte:()=>m4,_gt:()=>_0,_float64:()=>kH,_float32:()=>SH,_file:()=>zO,_enum:()=>vB,_endsWith:()=>NG,_emoji:()=>c7,_email:()=>h7,_e164:()=>Xz,_discriminatedUnion:()=>_B,_default:()=>SB,_date:()=>oH,_custom:()=>UO,_cuid2:()=>l7,_cuid:()=>d7,_coercedString:()=>TH,_coercedNumber:()=>IH,_coercedDate:()=>tH,_coercedBoolean:()=>gH,_coercedBigint:()=>uH,_cidrv6:()=>s7,_cidrv4:()=>a7,_catch:()=>hB,_boolean:()=>fH,_bigint:()=>yH,_base64url:()=>$z,_base64:()=>e7,_array:()=>KG,_any:()=>iH,TimePrecision:()=>RH,NEVER:()=>TW,JSONSchemaGenerator:()=>Gz,JSONSchema:()=>XF,Doc:()=>j7,$output:()=>KH,$input:()=>_H,$constructor:()=>P,$brand:()=>RW,$ZodXID:()=>dQ,$ZodVoid:()=>DZ,$ZodUnknown:()=>UY,$ZodUnion:()=>k7,$ZodUndefined:()=>HZ,$ZodUUID:()=>hQ,$ZodURL:()=>gQ,$ZodULID:()=>pQ,$ZodType:()=>F$,$ZodTuple:()=>XX,$ZodTransform:()=>GG,$ZodTemplateLiteral:()=>SZ,$ZodSymbol:()=>ZZ,$ZodSuccess:()=>jZ,$ZodStringFormat:()=>i$,$ZodString:()=>$X,$ZodSet:()=>AZ,$ZodRegistry:()=>QG,$ZodRecord:()=>LZ,$ZodRealError:()=>GY,$ZodReadonly:()=>xZ,$ZodPromise:()=>kZ,$ZodPrefault:()=>vZ,$ZodPipe:()=>zG,$ZodOptional:()=>TZ,$ZodObject:()=>NZ,$ZodNumberFormat:()=>WZ,$ZodNumber:()=>x7,$ZodNullable:()=>RZ,$ZodNull:()=>OZ,$ZodNonOptional:()=>CZ,$ZodNever:()=>VZ,$ZodNanoID:()=>uQ,$ZodNaN:()=>IZ,$ZodMap:()=>JZ,$ZodLiteral:()=>_Z,$ZodLazy:()=>bZ,$ZodKSUID:()=>lQ,$ZodJWT:()=>zZ,$ZodIntersection:()=>MZ,$ZodISOTime:()=>nQ,$ZodISODuration:()=>oQ,$ZodISODateTime:()=>iQ,$ZodISODate:()=>rQ,$ZodIPv6:()=>aQ,$ZodIPv4:()=>tQ,$ZodGUID:()=>bQ,$ZodFunction:()=>HO,$ZodFile:()=>qZ,$ZodError:()=>s2,$ZodEnum:()=>KZ,$ZodEmoji:()=>yQ,$ZodEmail:()=>fQ,$ZodE164:()=>GZ,$ZodDiscriminatedUnion:()=>FZ,$ZodDefault:()=>PZ,$ZodDate:()=>EZ,$ZodCustomStringFormat:()=>UZ,$ZodCustom:()=>hZ,$ZodCheckUpperCase:()=>PQ,$ZodCheckStringFormat:()=>zY,$ZodCheckStartsWith:()=>CQ,$ZodCheckSizeEquals:()=>AQ,$ZodCheckRegex:()=>TQ,$ZodCheckProperty:()=>BQ,$ZodCheckOverwrite:()=>xQ,$ZodCheckNumberFormat:()=>FQ,$ZodCheckMultipleOf:()=>NQ,$ZodCheckMinSize:()=>JQ,$ZodCheckMinLength:()=>_Q,$ZodCheckMimeType:()=>IQ,$ZodCheckMaxSize:()=>LQ,$ZodCheckMaxLength:()=>KQ,$ZodCheckLowerCase:()=>RQ,$ZodCheckLessThan:()=>v7,$ZodCheckLengthEquals:()=>qQ,$ZodCheckIncludes:()=>vQ,$ZodCheckGreaterThan:()=>C7,$ZodCheckEndsWith:()=>jQ,$ZodCheckBigIntFormat:()=>MQ,$ZodCheck:()=>w6,$ZodCatch:()=>BZ,$ZodCUID2:()=>cQ,$ZodCUID:()=>mQ,$ZodCIDRv6:()=>eQ,$ZodCIDRv4:()=>sQ,$ZodBoolean:()=>XG,$ZodBigIntFormat:()=>QZ,$ZodBigInt:()=>S7,$ZodBase64URL:()=>YZ,$ZodBase64:()=>XZ,$ZodAsyncError:()=>J0,$ZodArray:()=>YG,$ZodAny:()=>wZ});var TW=Object.freeze({status:"aborted"});function P($,X,Y){function z(Q,H){var Z;Object.defineProperty(Q,"_zod",{value:Q._zod??{},enumerable:!1}),(Z=Q._zod).traits??(Z.traits=new Set),Q._zod.traits.add($),X(Q,H);for(let O in W.prototype)if(!(O in Q))Object.defineProperty(Q,O,{value:W.prototype[O].bind(Q)});Q._zod.constr=W,Q._zod.def=H}let G=Y?.Parent??Object;class U extends G{}Object.defineProperty(U,"name",{value:$});function W(Q){var H;let Z=Y?.Parent?new U:this;z(Z,Q),(H=Z._zod).deferred??(H.deferred=[]);for(let O of Z._zod.deferred)O();return Z}return Object.defineProperty(W,"init",{value:z}),Object.defineProperty(W,Symbol.hasInstance,{value:(Q)=>{if(Y?.Parent&&Q instanceof Y.Parent)return!0;return Q?._zod?.traits?.has($)}}),Object.defineProperty(W,"name",{value:$}),W}var RW=Symbol("zod_brand");class J0 extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}var d2={};function v6($){if($)Object.assign(d2,$);return d2}var n={};Z8(n,{unwrapMessage:()=>l2,stringifyPrimitive:()=>r,required:()=>Aj,randomString:()=>wj,propertyKeyTypes:()=>o2,promiseAllObject:()=>Oj,primitiveTypes:()=>IW,prefixIssues:()=>u4,pick:()=>Nj,partial:()=>Jj,optionalKeys:()=>xW,omit:()=>Fj,numKeys:()=>Vj,nullish:()=>O8,normalizeParams:()=>d,merge:()=>Lj,jsonStringifyReplacer:()=>vW,joinValues:()=>f,issue:()=>bW,isPlainObject:()=>YY,isObject:()=>XY,getSizableOrigin:()=>t2,getParsedType:()=>Dj,getLengthableOrigin:()=>a2,getEnumValues:()=>i2,getElementAtPath:()=>Hj,floatSafeRemainder:()=>CW,finalizeIssue:()=>z1,extend:()=>Mj,escapeRegex:()=>A0,esc:()=>t8,defineLazy:()=>u$,createTransparentProxy:()=>Ej,clone:()=>G1,cleanRegex:()=>n2,cleanEnum:()=>Kj,captureStackTrace:()=>J7,cached:()=>r2,assignProp:()=>jW,assertNotEqual:()=>Uj,assertNever:()=>Qj,assertIs:()=>Wj,assertEqual:()=>zj,assert:()=>Zj,allowsEval:()=>BW,aborted:()=>a8,NUMBER_FORMAT_RANGES:()=>SW,Class:()=>IN,BIGINT_FORMAT_RANGES:()=>kW});function zj($){return $}function Uj($){return $}function Wj($){}function Qj($){throw new Error}function Zj($){}function i2($){let X=Object.values($).filter((z)=>typeof z==="number");return Object.entries($).filter(([z,G])=>X.indexOf(+z)===-1).map(([z,G])=>G)}function f($,X="|"){return $.map((Y)=>r(Y)).join(X)}function vW($,X){if(typeof X==="bigint")return X.toString();return X}function r2($){return{get value(){{let Y=$();return Object.defineProperty(this,"value",{value:Y}),Y}throw new Error("cached value already set")}}}function O8($){return $===null||$===void 0}function n2($){let X=$.startsWith("^")?1:0,Y=$.endsWith("$")?$.length-1:$.length;return $.slice(X,Y)}function CW($,X){let Y=($.toString().split(".")[1]||"").length,z=(X.toString().split(".")[1]||"").length,G=Y>z?Y:z,U=Number.parseInt($.toFixed(G).replace(".","")),W=Number.parseInt(X.toFixed(G).replace(".",""));return U%W/10**G}function u$($,X,Y){Object.defineProperty($,X,{get(){{let G=Y();return $[X]=G,G}throw new Error("cached value already set")},set(G){Object.defineProperty($,X,{value:G})},configurable:!0})}function jW($,X,Y){Object.defineProperty($,X,{value:Y,writable:!0,enumerable:!0,configurable:!0})}function Hj($,X){if(!X)return $;return X.reduce((Y,z)=>Y?.[z],$)}function Oj($){let X=Object.keys($),Y=X.map((z)=>$[z]);return Promise.all(Y).then((z)=>{let G={};for(let U=0;U<X.length;U++)G[X[U]]=z[U];return G})}function wj($=10){let Y="";for(let z=0;z<$;z++)Y+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return Y}function t8($){return JSON.stringify($)}var J7=Error.captureStackTrace?Error.captureStackTrace:(...$)=>{};function XY($){return typeof $==="object"&&$!==null&&!Array.isArray($)}var BW=r2(()=>{if(typeof navigator!=="undefined"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch($){return!1}});function YY($){if(XY($)===!1)return!1;let X=$.constructor;if(X===void 0)return!0;let Y=X.prototype;if(XY(Y)===!1)return!1;if(Object.prototype.hasOwnProperty.call(Y,"isPrototypeOf")===!1)return!1;return!0}function Vj($){let X=0;for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))X++;return X}var Dj=($)=>{let X=typeof $;switch(X){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN($)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray($))return"array";if($===null)return"null";if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return"promise";if(typeof Map!=="undefined"&&$ instanceof Map)return"map";if(typeof Set!=="undefined"&&$ instanceof Set)return"set";if(typeof Date!=="undefined"&&$ instanceof Date)return"date";if(typeof File!=="undefined"&&$ instanceof File)return"file";return"object";default:throw new Error(`Unknown data type: ${X}`)}},o2=new Set(["string","number","symbol"]),IW=new Set(["string","number","bigint","boolean","symbol","undefined"]);function A0($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function G1($,X,Y){let z=new $._zod.constr(X??$._zod.def);if(!X||Y?.parent)z._zod.parent=$;return z}function d($){let X=$;if(!X)return{};if(typeof X==="string")return{error:()=>X};if(X?.message!==void 0){if(X?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");X.error=X.message}if(delete X.message,typeof X.error==="string")return{...X,error:()=>X.error};return X}function Ej($){let X;return new Proxy({},{get(Y,z,G){return X??(X=$()),Reflect.get(X,z,G)},set(Y,z,G,U){return X??(X=$()),Reflect.set(X,z,G,U)},has(Y,z){return X??(X=$()),Reflect.has(X,z)},deleteProperty(Y,z){return X??(X=$()),Reflect.deleteProperty(X,z)},ownKeys(Y){return X??(X=$()),Reflect.ownKeys(X)},getOwnPropertyDescriptor(Y,z){return X??(X=$()),Reflect.getOwnPropertyDescriptor(X,z)},defineProperty(Y,z,G){return X??(X=$()),Reflect.defineProperty(X,z,G)}})}function r($){if(typeof $==="bigint")return $.toString()+"n";if(typeof $==="string")return`"${$}"`;return`${$}`}function xW($){return Object.keys($).filter((X)=>{return $[X]._zod.optin==="optional"&&$[X]._zod.optout==="optional"})}var SW={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},kW={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Nj($,X){let Y={},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;Y[G]=z.shape[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Fj($,X){let Y={...$._zod.def.shape},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;delete Y[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Mj($,X){if(!YY(X))throw new Error("Invalid input to extend: expected a plain object");let Y={...$._zod.def,get shape(){let z={...$._zod.def.shape,...X};return jW(this,"shape",z),z},checks:[]};return G1($,Y)}function Lj($,X){return G1($,{...$._zod.def,get shape(){let Y={...$._zod.def.shape,...X._zod.def.shape};return jW(this,"shape",Y),Y},catchall:X._zod.def.catchall,checks:[]})}function Jj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in z))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=$?new $({type:"optional",innerType:z[U]}):z[U]}else for(let U in z)G[U]=$?new $({type:"optional",innerType:z[U]}):z[U];return G1(X,{...X._zod.def,shape:G,checks:[]})}function Aj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in G))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=new $({type:"nonoptional",innerType:z[U]})}else for(let U in z)G[U]=new $({type:"nonoptional",innerType:z[U]});return G1(X,{...X._zod.def,shape:G,checks:[]})}function a8($,X=0){for(let Y=X;Y<$.issues.length;Y++)if($.issues[Y]?.continue!==!0)return!0;return!1}function u4($,X){return X.map((Y)=>{var z;return(z=Y).path??(z.path=[]),Y.path.unshift($),Y})}function l2($){return typeof $==="string"?$:$?.message}function z1($,X,Y){let z={...$,path:$.path??[]};if(!$.message){let G=l2($.inst?._zod.def?.error?.($))??l2(X?.error?.($))??l2(Y.customError?.($))??l2(Y.localeError?.($))??"Invalid input";z.message=G}if(delete z.inst,delete z.continue,!X?.reportInput)delete z.input;return z}function t2($){if($ instanceof Set)return"set";if($ instanceof Map)return"map";if($ instanceof File)return"file";return"unknown"}function a2($){if(Array.isArray($))return"array";if(typeof $==="string")return"string";return"unknown"}function bW(...$){let[X,Y,z]=$;if(typeof X==="string")return{message:X,code:"custom",input:Y,inst:z};return{...X}}function Kj($){return Object.entries($).filter(([X,Y])=>{return Number.isNaN(Number.parseInt(X,10))}).map((X)=>X[1])}class IN{constructor(...$){}}var xN=($,X)=>{$.name="$ZodError",Object.defineProperty($,"_zod",{value:$._zod,enumerable:!1}),Object.defineProperty($,"issues",{value:X,enumerable:!1}),Object.defineProperty($,"message",{get(){return JSON.stringify(X,vW,2)},enumerable:!0}),Object.defineProperty($,"toString",{value:()=>$.message,enumerable:!1})},s2=P("$ZodError",xN),GY=P("$ZodError",xN,{Parent:Error});function e2($,X=(Y)=>Y.message){let Y={},z=[];for(let G of $.issues)if(G.path.length>0)Y[G.path[0]]=Y[G.path[0]]||[],Y[G.path[0]].push(X(G));else z.push(X(G));return{formErrors:z,fieldErrors:Y}}function $G($,X){let Y=X||function(U){return U.message},z={_errors:[]},G=(U)=>{for(let W of U.issues)if(W.code==="invalid_union"&&W.errors.length)W.errors.map((Q)=>G({issues:Q}));else if(W.code==="invalid_key")G({issues:W.issues});else if(W.code==="invalid_element")G({issues:W.issues});else if(W.path.length===0)z._errors.push(Y(W));else{let Q=z,H=0;while(H<W.path.length){let Z=W.path[H];if(H!==W.path.length-1)Q[Z]=Q[Z]||{_errors:[]};else Q[Z]=Q[Z]||{_errors:[]},Q[Z]._errors.push(Y(W));Q=Q[Z],H++}}};return G($),z}function hW($,X){let Y=X||function(U){return U.message},z={errors:[]},G=(U,W=[])=>{var Q,H;for(let Z of U.issues)if(Z.code==="invalid_union"&&Z.errors.length)Z.errors.map((O)=>G({issues:O},Z.path));else if(Z.code==="invalid_key")G({issues:Z.issues},Z.path);else if(Z.code==="invalid_element")G({issues:Z.issues},Z.path);else{let O=[...W,...Z.path];if(O.length===0){z.errors.push(Y(Z));continue}let w=z,V=0;while(V<O.length){let D=O[V],E=V===O.length-1;if(typeof D==="string")w.properties??(w.properties={}),(Q=w.properties)[D]??(Q[D]={errors:[]}),w=w.properties[D];else w.items??(w.items=[]),(H=w.items)[D]??(H[D]={errors:[]}),w=w.items[D];if(E)w.errors.push(Y(Z));V++}}};return G($),z}function SN($){let X=[];for(let Y of $)if(typeof Y==="number")X.push(`[${Y}]`);else if(typeof Y==="symbol")X.push(`[${JSON.stringify(String(Y))}]`);else if(/[^\w$]/.test(Y))X.push(`[${JSON.stringify(Y)}]`);else{if(X.length)X.push(".");X.push(Y)}return X.join("")}function fW($){let X=[],Y=[...$.issues].sort((z,G)=>z.path.length-G.path.length);for(let z of Y)if(X.push(`\u2716 ${z.message}`),z.path?.length)X.push(` \u2192 at ${SN(z.path)}`);return X.join(`
18
18
  `)}var A7=($)=>(X,Y,z,G)=>{let U=z?Object.assign(z,{async:!1}):{async:!1},W=X._zod.run({value:Y,issues:[]},U);if(W instanceof Promise)throw new J0;if(W.issues.length){let Q=new(G?.Err??$)(W.issues.map((H)=>z1(H,U,v6())));throw J7(Q,G?.callee),Q}return W.value},K7=A7(GY),_7=($)=>async(X,Y,z,G)=>{let U=z?Object.assign(z,{async:!0}):{async:!0},W=X._zod.run({value:Y,issues:[]},U);if(W instanceof Promise)W=await W;if(W.issues.length){let Q=new(G?.Err??$)(W.issues.map((H)=>z1(H,U,v6())));throw J7(Q,G?.callee),Q}return W.value},q7=_7(GY),T7=($)=>(X,Y,z)=>{let G=z?{...z,async:!1}:{async:!1},U=X._zod.run({value:Y,issues:[]},G);if(U instanceof Promise)throw new J0;return U.issues.length?{success:!1,error:new($??s2)(U.issues.map((W)=>z1(W,G,v6())))}:{success:!0,data:U.value}},gW=T7(GY),R7=($)=>async(X,Y,z)=>{let G=z?Object.assign(z,{async:!0}):{async:!0},U=X._zod.run({value:Y,issues:[]},G);if(U instanceof Promise)U=await U;return U.issues.length?{success:!1,error:new $(U.issues.map((W)=>z1(W,G,v6())))}:{success:!0,data:U.value}},yW=R7(GY);var e8={};Z8(e8,{xid:()=>pW,uuid7:()=>Pj,uuid6:()=>Rj,uuid4:()=>Tj,uuid:()=>s8,uppercase:()=>EQ,unicodeEmail:()=>jj,undefined:()=>VQ,ulid:()=>cW,time:()=>zQ,string:()=>WQ,rfc5322Email:()=>Cj,number:()=>HQ,null:()=>wQ,nanoid:()=>lW,lowercase:()=>DQ,ksuid:()=>dW,ipv6:()=>aW,ipv4:()=>tW,integer:()=>ZQ,html5Email:()=>vj,hostname:()=>XQ,guid:()=>rW,extendedDuration:()=>qj,emoji:()=>oW,email:()=>nW,e164:()=>YQ,duration:()=>iW,domain:()=>xj,datetime:()=>UQ,date:()=>GQ,cuid2:()=>mW,cuid:()=>uW,cidrv6:()=>eW,cidrv4:()=>sW,browserEmail:()=>Bj,boolean:()=>OQ,bigint:()=>QQ,base64url:()=>P7,base64:()=>$Q,_emoji:()=>Ij});var uW=/^[cC][^\s-]{8,}$/,mW=/^[0-9a-z]+$/,cW=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,pW=/^[0-9a-vA-V]{20}$/,dW=/^[A-Za-z0-9]{27}$/,lW=/^[a-zA-Z0-9_-]{21}$/,iW=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,qj=/^[-+]?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)?)??$/,rW=/^([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})$/,s8=($)=>{if(!$)return/^([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)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${$}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},Tj=s8(4),Rj=s8(6),Pj=s8(7),nW=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,vj=/^[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])?)*$/,Cj=/^(([^<>()\[\]\\.,;:\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,}))$/,jj=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,Bj=/^[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])?)*$/,Ij="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function oW(){return new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")}var tW=/^(?:(?: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])$/,aW=/^(([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})$/,sW=/^((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])$/,eW=/^(([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])$/,$Q=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,P7=/^[A-Za-z0-9_-]*$/,XQ=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,xj=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,YQ=/^\+(?:[0-9]){6,14}[0-9]$/,kN="(?:(?:\\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])))",GQ=new RegExp(`^${kN}$`);function bN($){return typeof $.precision==="number"?$.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":$.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${$.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function zQ($){return new RegExp(`^${bN($)}$`)}function UQ($){let X=bN({precision:$.precision}),Y=["Z"];if($.local)Y.push("");if($.offset)Y.push("([+-]\\d{2}:\\d{2})");let z=`${X}(?:${Y.join("|")})`;return new RegExp(`^${kN}T(?:${z})$`)}var WQ=($)=>{let X=$?`[\\s\\S]{${$?.minimum??0},${$?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${X}$`)},QQ=/^\d+n?$/,ZQ=/^\d+$/,HQ=/^-?\d+(?:\.\d+)?/i,OQ=/true|false/i,wQ=/null/i;var VQ=/undefined/i;var DQ=/^[^A-Z]*$/,EQ=/^[^a-z]*$/;var w6=P("$ZodCheck",($,X)=>{var Y;$._zod??($._zod={}),$._zod.def=X,(Y=$._zod).onattach??(Y.onattach=[])}),fN={number:"number",bigint:"bigint",object:"date"},v7=P("$ZodCheckLessThan",($,X)=>{w6.init($,X);let Y=fN[typeof X.value];$._zod.onattach.push((z)=>{let G=z._zod.bag,U=(X.inclusive?G.maximum:G.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(X.value<U)if(X.inclusive)G.maximum=X.value;else G.exclusiveMaximum=X.value}),$._zod.check=(z)=>{if(X.inclusive?z.value<=X.value:z.value<X.value)return;z.issues.push({origin:Y,code:"too_big",maximum:X.value,input:z.value,inclusive:X.inclusive,inst:$,continue:!X.abort})}}),C7=P("$ZodCheckGreaterThan",($,X)=>{w6.init($,X);let Y=fN[typeof X.value];$._zod.onattach.push((z)=>{let G=z._zod.bag,U=(X.inclusive?G.minimum:G.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(X.value>U)if(X.inclusive)G.minimum=X.value;else G.exclusiveMinimum=X.value}),$._zod.check=(z)=>{if(X.inclusive?z.value>=X.value:z.value>X.value)return;z.issues.push({origin:Y,code:"too_small",minimum:X.value,input:z.value,inclusive:X.inclusive,inst:$,continue:!X.abort})}}),NQ=P("$ZodCheckMultipleOf",($,X)=>{w6.init($,X),$._zod.onattach.push((Y)=>{var z;(z=Y._zod.bag).multipleOf??(z.multipleOf=X.value)}),$._zod.check=(Y)=>{if(typeof Y.value!==typeof X.value)throw new Error("Cannot mix number and bigint in multiple_of check.");if(typeof Y.value==="bigint"?Y.value%X.value===BigInt(0):CW(Y.value,X.value)===0)return;Y.issues.push({origin:typeof Y.value,code:"not_multiple_of",divisor:X.value,input:Y.value,inst:$,continue:!X.abort})}}),FQ=P("$ZodCheckNumberFormat",($,X)=>{w6.init($,X),X.format=X.format||"float64";let Y=X.format?.includes("int"),z=Y?"int":"number",[G,U]=SW[X.format];$._zod.onattach.push((W)=>{let Q=W._zod.bag;if(Q.format=X.format,Q.minimum=G,Q.maximum=U,Y)Q.pattern=ZQ}),$._zod.check=(W)=>{let Q=W.value;if(Y){if(!Number.isInteger(Q)){W.issues.push({expected:z,format:X.format,code:"invalid_type",input:Q,inst:$});return}if(!Number.isSafeInteger(Q)){if(Q>0)W.issues.push({input:Q,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:$,origin:z,continue:!X.abort});else W.issues.push({input:Q,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:$,origin:z,continue:!X.abort});return}}if(Q<G)W.issues.push({origin:"number",input:Q,code:"too_small",minimum:G,inclusive:!0,inst:$,continue:!X.abort});if(Q>U)W.issues.push({origin:"number",input:Q,code:"too_big",maximum:U,inst:$})}}),MQ=P("$ZodCheckBigIntFormat",($,X)=>{w6.init($,X);let[Y,z]=kW[X.format];$._zod.onattach.push((G)=>{let U=G._zod.bag;U.format=X.format,U.minimum=Y,U.maximum=z}),$._zod.check=(G)=>{let U=G.value;if(U<Y)G.issues.push({origin:"bigint",input:U,code:"too_small",minimum:Y,inclusive:!0,inst:$,continue:!X.abort});if(U>z)G.issues.push({origin:"bigint",input:U,code:"too_big",maximum:z,inst:$})}}),LQ=P("$ZodCheckMaxSize",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.size!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.maximum??Number.POSITIVE_INFINITY;if(X.maximum<G)z._zod.bag.maximum=X.maximum}),$._zod.check=(z)=>{let G=z.value;if(G.size<=X.maximum)return;z.issues.push({origin:t2(G),code:"too_big",maximum:X.maximum,input:G,inst:$,continue:!X.abort})}}),JQ=P("$ZodCheckMinSize",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.size!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(X.minimum>G)z._zod.bag.minimum=X.minimum}),$._zod.check=(z)=>{let G=z.value;if(G.size>=X.minimum)return;z.issues.push({origin:t2(G),code:"too_small",minimum:X.minimum,input:G,inst:$,continue:!X.abort})}}),AQ=P("$ZodCheckSizeEquals",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.size!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.minimum=X.size,G.maximum=X.size,G.size=X.size}),$._zod.check=(z)=>{let G=z.value,U=G.size;if(U===X.size)return;let W=U>X.size;z.issues.push({origin:t2(G),...W?{code:"too_big",maximum:X.size}:{code:"too_small",minimum:X.size},inclusive:!0,exact:!0,input:z.value,inst:$,continue:!X.abort})}}),KQ=P("$ZodCheckMaxLength",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.length!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.maximum??Number.POSITIVE_INFINITY;if(X.maximum<G)z._zod.bag.maximum=X.maximum}),$._zod.check=(z)=>{let G=z.value;if(G.length<=X.maximum)return;let W=a2(G);z.issues.push({origin:W,code:"too_big",maximum:X.maximum,inclusive:!0,input:G,inst:$,continue:!X.abort})}}),_Q=P("$ZodCheckMinLength",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.length!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(X.minimum>G)z._zod.bag.minimum=X.minimum}),$._zod.check=(z)=>{let G=z.value;if(G.length>=X.minimum)return;let W=a2(G);z.issues.push({origin:W,code:"too_small",minimum:X.minimum,inclusive:!0,input:G,inst:$,continue:!X.abort})}}),qQ=P("$ZodCheckLengthEquals",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.length!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.minimum=X.length,G.maximum=X.length,G.length=X.length}),$._zod.check=(z)=>{let G=z.value,U=G.length;if(U===X.length)return;let W=a2(G),Q=U>X.length;z.issues.push({origin:W,...Q?{code:"too_big",maximum:X.length}:{code:"too_small",minimum:X.length},inclusive:!0,exact:!0,input:z.value,inst:$,continue:!X.abort})}}),zY=P("$ZodCheckStringFormat",($,X)=>{var Y,z;if(w6.init($,X),$._zod.onattach.push((G)=>{let U=G._zod.bag;if(U.format=X.format,X.pattern)U.patterns??(U.patterns=new Set),U.patterns.add(X.pattern)}),X.pattern)(Y=$._zod).check??(Y.check=(G)=>{if(X.pattern.lastIndex=0,X.pattern.test(G.value))return;G.issues.push({origin:"string",code:"invalid_format",format:X.format,input:G.value,...X.pattern?{pattern:X.pattern.toString()}:{},inst:$,continue:!X.abort})});else(z=$._zod).check??(z.check=()=>{})}),TQ=P("$ZodCheckRegex",($,X)=>{zY.init($,X),$._zod.check=(Y)=>{if(X.pattern.lastIndex=0,X.pattern.test(Y.value))return;Y.issues.push({origin:"string",code:"invalid_format",format:"regex",input:Y.value,pattern:X.pattern.toString(),inst:$,continue:!X.abort})}}),RQ=P("$ZodCheckLowerCase",($,X)=>{X.pattern??(X.pattern=DQ),zY.init($,X)}),PQ=P("$ZodCheckUpperCase",($,X)=>{X.pattern??(X.pattern=EQ),zY.init($,X)}),vQ=P("$ZodCheckIncludes",($,X)=>{w6.init($,X);let Y=A0(X.includes),z=new RegExp(typeof X.position==="number"?`^.{${X.position}}${Y}`:Y);X.pattern=z,$._zod.onattach.push((G)=>{let U=G._zod.bag;U.patterns??(U.patterns=new Set),U.patterns.add(z)}),$._zod.check=(G)=>{if(G.value.includes(X.includes,X.position))return;G.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:X.includes,input:G.value,inst:$,continue:!X.abort})}}),CQ=P("$ZodCheckStartsWith",($,X)=>{w6.init($,X);let Y=new RegExp(`^${A0(X.prefix)}.*`);X.pattern??(X.pattern=Y),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.patterns??(G.patterns=new Set),G.patterns.add(Y)}),$._zod.check=(z)=>{if(z.value.startsWith(X.prefix))return;z.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:X.prefix,input:z.value,inst:$,continue:!X.abort})}}),jQ=P("$ZodCheckEndsWith",($,X)=>{w6.init($,X);let Y=new RegExp(`.*${A0(X.suffix)}$`);X.pattern??(X.pattern=Y),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.patterns??(G.patterns=new Set),G.patterns.add(Y)}),$._zod.check=(z)=>{if(z.value.endsWith(X.suffix))return;z.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:X.suffix,input:z.value,inst:$,continue:!X.abort})}});function hN($,X,Y){if($.issues.length)X.issues.push(...u4(Y,$.issues))}var BQ=P("$ZodCheckProperty",($,X)=>{w6.init($,X),$._zod.check=(Y)=>{let z=X.schema._zod.run({value:Y.value[X.property],issues:[]},{});if(z instanceof Promise)return z.then((G)=>hN(G,Y,X.property));hN(z,Y,X.property);return}}),IQ=P("$ZodCheckMimeType",($,X)=>{w6.init($,X);let Y=new Set(X.mime);$._zod.onattach.push((z)=>{z._zod.bag.mime=X.mime}),$._zod.check=(z)=>{if(Y.has(z.value.type))return;z.issues.push({code:"invalid_value",values:X.mime,input:z.value.type,inst:$})}}),xQ=P("$ZodCheckOverwrite",($,X)=>{w6.init($,X),$._zod.check=(Y)=>{Y.value=X.tx(Y.value)}});class j7{constructor($=[]){if(this.content=[],this.indent=0,this)this.args=$}indented($){this.indent+=1,$(this),this.indent-=1}write($){if(typeof $==="function"){$(this,{execution:"sync"}),$(this,{execution:"async"});return}let Y=$.split(`
19
19
  `).filter((U)=>U),z=Math.min(...Y.map((U)=>U.length-U.trimStart().length)),G=Y.map((U)=>U.slice(z)).map((U)=>" ".repeat(this.indent*2)+U);for(let U of G)this.content.push(U)}compile(){let $=Function,X=this?.args,z=[...(this?.content??[""]).map((G)=>` ${G}`)];return new $(...X,z.join(`
20
20
  `))}}var SQ={major:4,minor:0,patch:0};var F$=P("$ZodType",($,X)=>{var Y;$??($={}),$._zod.def=X,$._zod.bag=$._zod.bag||{},$._zod.version=SQ;let z=[...$._zod.def.checks??[]];if($._zod.traits.has("$ZodCheck"))z.unshift($);for(let G of z)for(let U of G._zod.onattach)U($);if(z.length===0)(Y=$._zod).deferred??(Y.deferred=[]),$._zod.deferred?.push(()=>{$._zod.run=$._zod.parse});else{let G=(U,W,Q)=>{let H=a8(U),Z;for(let O of W){if(O._zod.def.when){if(!O._zod.def.when(U))continue}else if(H)continue;let w=U.issues.length,V=O._zod.check(U);if(V instanceof Promise&&Q?.async===!1)throw new J0;if(Z||V instanceof Promise)Z=(Z??Promise.resolve()).then(async()=>{if(await V,U.issues.length===w)return;if(!H)H=a8(U,w)});else{if(U.issues.length===w)continue;if(!H)H=a8(U,w)}}if(Z)return Z.then(()=>{return U});return U};$._zod.run=(U,W)=>{let Q=$._zod.parse(U,W);if(Q instanceof Promise){if(W.async===!1)throw new J0;return Q.then((H)=>G(H,z,W))}return G(Q,z,W)}}$["~standard"]={validate:(G)=>{try{let U=gW($,G);return U.success?{value:U.data}:{issues:U.error?.issues}}catch(U){return yW($,G).then((W)=>W.success?{value:W.data}:{issues:W.error?.issues})}},vendor:"zod",version:1}}),$X=P("$ZodString",($,X)=>{F$.init($,X),$._zod.pattern=[...$?._zod.bag?.patterns??[]].pop()??WQ($._zod.bag),$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=String(Y.value)}catch(G){}if(typeof Y.value==="string")return Y;return Y.issues.push({expected:"string",code:"invalid_type",input:Y.value,inst:$}),Y}}),i$=P("$ZodStringFormat",($,X)=>{zY.init($,X),$X.init($,X)}),bQ=P("$ZodGUID",($,X)=>{X.pattern??(X.pattern=rW),i$.init($,X)}),hQ=P("$ZodUUID",($,X)=>{if(X.version){let z={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[X.version];if(z===void 0)throw new Error(`Invalid UUID version: "${X.version}"`);X.pattern??(X.pattern=s8(z))}else X.pattern??(X.pattern=s8());i$.init($,X)}),fQ=P("$ZodEmail",($,X)=>{X.pattern??(X.pattern=nW),i$.init($,X)}),gQ=P("$ZodURL",($,X)=>{i$.init($,X),$._zod.check=(Y)=>{try{let z=Y.value,G=new URL(z),U=G.href;if(X.hostname){if(X.hostname.lastIndex=0,!X.hostname.test(G.hostname))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:XQ.source,input:Y.value,inst:$,continue:!X.abort})}if(X.protocol){if(X.protocol.lastIndex=0,!X.protocol.test(G.protocol.endsWith(":")?G.protocol.slice(0,-1):G.protocol))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:X.protocol.source,input:Y.value,inst:$,continue:!X.abort})}if(!z.endsWith("/")&&U.endsWith("/"))Y.value=U.slice(0,-1);else Y.value=U;return}catch(z){Y.issues.push({code:"invalid_format",format:"url",input:Y.value,inst:$,continue:!X.abort})}}}),yQ=P("$ZodEmoji",($,X)=>{X.pattern??(X.pattern=oW()),i$.init($,X)}),uQ=P("$ZodNanoID",($,X)=>{X.pattern??(X.pattern=lW),i$.init($,X)}),mQ=P("$ZodCUID",($,X)=>{X.pattern??(X.pattern=uW),i$.init($,X)}),cQ=P("$ZodCUID2",($,X)=>{X.pattern??(X.pattern=mW),i$.init($,X)}),pQ=P("$ZodULID",($,X)=>{X.pattern??(X.pattern=cW),i$.init($,X)}),dQ=P("$ZodXID",($,X)=>{X.pattern??(X.pattern=pW),i$.init($,X)}),lQ=P("$ZodKSUID",($,X)=>{X.pattern??(X.pattern=dW),i$.init($,X)}),iQ=P("$ZodISODateTime",($,X)=>{X.pattern??(X.pattern=UQ(X)),i$.init($,X)}),rQ=P("$ZodISODate",($,X)=>{X.pattern??(X.pattern=GQ),i$.init($,X)}),nQ=P("$ZodISOTime",($,X)=>{X.pattern??(X.pattern=zQ(X)),i$.init($,X)}),oQ=P("$ZodISODuration",($,X)=>{X.pattern??(X.pattern=iW),i$.init($,X)}),tQ=P("$ZodIPv4",($,X)=>{X.pattern??(X.pattern=tW),i$.init($,X),$._zod.onattach.push((Y)=>{let z=Y._zod.bag;z.format="ipv4"})}),aQ=P("$ZodIPv6",($,X)=>{X.pattern??(X.pattern=aW),i$.init($,X),$._zod.onattach.push((Y)=>{let z=Y._zod.bag;z.format="ipv6"}),$._zod.check=(Y)=>{try{new URL(`http://[${Y.value}]`)}catch{Y.issues.push({code:"invalid_format",format:"ipv6",input:Y.value,inst:$,continue:!X.abort})}}}),sQ=P("$ZodCIDRv4",($,X)=>{X.pattern??(X.pattern=sW),i$.init($,X)}),eQ=P("$ZodCIDRv6",($,X)=>{X.pattern??(X.pattern=eW),i$.init($,X),$._zod.check=(Y)=>{let[z,G]=Y.value.split("/");try{if(!G)throw new Error;let U=Number(G);if(`${U}`!==G)throw new Error;if(U<0||U>128)throw new Error;new URL(`http://[${z}]`)}catch{Y.issues.push({code:"invalid_format",format:"cidrv6",input:Y.value,inst:$,continue:!X.abort})}}});function $Z($){if($==="")return!0;if($.length%4!==0)return!1;try{return atob($),!0}catch{return!1}}var XZ=P("$ZodBase64",($,X)=>{X.pattern??(X.pattern=$Q),i$.init($,X),$._zod.onattach.push((Y)=>{Y._zod.bag.contentEncoding="base64"}),$._zod.check=(Y)=>{if($Z(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64",input:Y.value,inst:$,continue:!X.abort})}});function tN($){if(!P7.test($))return!1;let X=$.replace(/[-_]/g,(z)=>z==="-"?"+":"/"),Y=X.padEnd(Math.ceil(X.length/4)*4,"=");return $Z(Y)}var YZ=P("$ZodBase64URL",($,X)=>{X.pattern??(X.pattern=P7),i$.init($,X),$._zod.onattach.push((Y)=>{Y._zod.bag.contentEncoding="base64url"}),$._zod.check=(Y)=>{if(tN(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64url",input:Y.value,inst:$,continue:!X.abort})}}),GZ=P("$ZodE164",($,X)=>{X.pattern??(X.pattern=YQ),i$.init($,X)});function aN($,X=null){try{let Y=$.split(".");if(Y.length!==3)return!1;let[z]=Y;if(!z)return!1;let G=JSON.parse(atob(z));if("typ"in G&&G?.typ!=="JWT")return!1;if(!G.alg)return!1;if(X&&(!("alg"in G)||G.alg!==X))return!1;return!0}catch{return!1}}var zZ=P("$ZodJWT",($,X)=>{i$.init($,X),$._zod.check=(Y)=>{if(aN(Y.value,X.alg))return;Y.issues.push({code:"invalid_format",format:"jwt",input:Y.value,inst:$,continue:!X.abort})}}),UZ=P("$ZodCustomStringFormat",($,X)=>{i$.init($,X),$._zod.check=(Y)=>{if(X.fn(Y.value))return;Y.issues.push({code:"invalid_format",format:X.format,input:Y.value,inst:$,continue:!X.abort})}}),x7=P("$ZodNumber",($,X)=>{F$.init($,X),$._zod.pattern=$._zod.bag.pattern??HQ,$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=Number(Y.value)}catch(W){}let G=Y.value;if(typeof G==="number"&&!Number.isNaN(G)&&Number.isFinite(G))return Y;let U=typeof G==="number"?Number.isNaN(G)?"NaN":!Number.isFinite(G)?"Infinity":void 0:void 0;return Y.issues.push({expected:"number",code:"invalid_type",input:G,inst:$,...U?{received:U}:{}}),Y}}),WZ=P("$ZodNumber",($,X)=>{FQ.init($,X),x7.init($,X)}),XG=P("$ZodBoolean",($,X)=>{F$.init($,X),$._zod.pattern=OQ,$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=Boolean(Y.value)}catch(U){}let G=Y.value;if(typeof G==="boolean")return Y;return Y.issues.push({expected:"boolean",code:"invalid_type",input:G,inst:$}),Y}}),S7=P("$ZodBigInt",($,X)=>{F$.init($,X),$._zod.pattern=QQ,$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=BigInt(Y.value)}catch(G){}if(typeof Y.value==="bigint")return Y;return Y.issues.push({expected:"bigint",code:"invalid_type",input:Y.value,inst:$}),Y}}),QZ=P("$ZodBigInt",($,X)=>{MQ.init($,X),S7.init($,X)}),ZZ=P("$ZodSymbol",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{let G=Y.value;if(typeof G==="symbol")return Y;return Y.issues.push({expected:"symbol",code:"invalid_type",input:G,inst:$}),Y}}),HZ=P("$ZodUndefined",($,X)=>{F$.init($,X),$._zod.pattern=VQ,$._zod.values=new Set([void 0]),$._zod.optin="optional",$._zod.optout="optional",$._zod.parse=(Y,z)=>{let G=Y.value;if(typeof G==="undefined")return Y;return Y.issues.push({expected:"undefined",code:"invalid_type",input:G,inst:$}),Y}}),OZ=P("$ZodNull",($,X)=>{F$.init($,X),$._zod.pattern=wQ,$._zod.values=new Set([null]),$._zod.parse=(Y,z)=>{let G=Y.value;if(G===null)return Y;return Y.issues.push({expected:"null",code:"invalid_type",input:G,inst:$}),Y}}),wZ=P("$ZodAny",($,X)=>{F$.init($,X),$._zod.parse=(Y)=>Y}),UY=P("$ZodUnknown",($,X)=>{F$.init($,X),$._zod.parse=(Y)=>Y}),VZ=P("$ZodNever",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{return Y.issues.push({expected:"never",code:"invalid_type",input:Y.value,inst:$}),Y}}),DZ=P("$ZodVoid",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{let G=Y.value;if(typeof G==="undefined")return Y;return Y.issues.push({expected:"void",code:"invalid_type",input:G,inst:$}),Y}}),EZ=P("$ZodDate",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=new Date(Y.value)}catch(Q){}let G=Y.value,U=G instanceof Date;if(U&&!Number.isNaN(G.getTime()))return Y;return Y.issues.push({expected:"date",code:"invalid_type",input:G,...U?{received:"Invalid Date"}:{},inst:$}),Y}});function yN($,X,Y){if($.issues.length)X.issues.push(...u4(Y,$.issues));X.value[Y]=$.value}var YG=P("$ZodArray",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{let G=Y.value;if(!Array.isArray(G))return Y.issues.push({expected:"array",code:"invalid_type",input:G,inst:$}),Y;Y.value=Array(G.length);let U=[];for(let W=0;W<G.length;W++){let Q=G[W],H=X.element._zod.run({value:Q,issues:[]},z);if(H instanceof Promise)U.push(H.then((Z)=>yN(Z,Y,W)));else yN(H,Y,W)}if(U.length)return Promise.all(U).then(()=>Y);return Y}});function B7($,X,Y){if($.issues.length)X.issues.push(...u4(Y,$.issues));X.value[Y]=$.value}function uN($,X,Y,z){if($.issues.length)if(z[Y]===void 0)if(Y in z)X.value[Y]=void 0;else X.value[Y]=$.value;else X.issues.push(...u4(Y,$.issues));else if($.value===void 0){if(Y in z)X.value[Y]=void 0}else X.value[Y]=$.value}var NZ=P("$ZodObject",($,X)=>{F$.init($,X);let Y=r2(()=>{let w=Object.keys(X.shape);for(let D of w)if(!(X.shape[D]instanceof F$))throw new Error(`Invalid element at key "${D}": expected a Zod schema`);let V=xW(X.shape);return{shape:X.shape,keys:w,keySet:new Set(w),numKeys:w.length,optionalKeys:new Set(V)}});u$($._zod,"propValues",()=>{let w=X.shape,V={};for(let D in w){let E=w[D]._zod;if(E.values){V[D]??(V[D]=new Set);for(let F of E.values)V[D].add(F)}}return V});let z=(w)=>{let V=new j7(["shape","payload","ctx"]),D=Y.value,E=(q)=>{let R=t8(q);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};V.write("const input = payload.value;");let F=Object.create(null),L=0;for(let q of D.keys)F[q]=`key_${L++}`;V.write("const newResult = {}");for(let q of D.keys)if(D.optionalKeys.has(q)){let R=F[q];V.write(`const ${R} = ${E(q)};`);let _=t8(q);V.write(`
@@ -94,9 +94,9 @@ Provided:
94
94
  ${Q}
95
95
 
96
96
  Cached:
97
- ${W}`)}let H=h1.join(this.baseDir,`${$}/${X}.output.json`);return JSON.parse(L6.readFileSync(H,"utf-8"))}async write($,X,Y,z){let G=h1.join(this.baseDir,$),U=h1.join(G,`${X}.input.json`),W=h1.join(G,`${X}.output.json`),Q=JSON.stringify(Y,null,"\t");if(!L6.existsSync(this.baseDir))L6.mkdirSync(this.baseDir,{recursive:!0});if(!L6.existsSync(G))L6.mkdirSync(G);if(L6.writeFileSync(U,Q),L6.existsSync(W))L6.unlinkSync(W);let H=await z(...Y),Z=JSON.stringify(H,null,"\t");return L6.writeFileSync(W,Z),H}add($,X){let Y=`${this.rootName}${k6}${BG($)}`;return{flush:()=>{this.flush($)},for:(z)=>{if(this.mode!=="off"){if(this.filesTouched.set($,new Set),s$.storage.initialized&&!s$.storage.getItem(`list${k6}${Y}`))s$.storage.setItem(`list${k6}${Y}`,"true")}return{get:async(...G)=>{let U=z;if(this.mode!=="off"){let W=this.filenameCache.get(z);if(!W)W=BG(z),this.filenameCache.set(z,W);U=W,this.filesTouched.get($)?.add(U);let Q=`${Y}${k6}${U}`,H=`file${k6}${Q}`;if(s$.storage.initialized&&!s$.storage.getItem(H))s$.storage.setItem(H,"true")}switch(this.mode){case"off":return X(...G);case"read":return this.read($,U,G);case"write":return this.write($,U,G,X);case"read-write":try{return this.read($,U,G)}catch(W){if(W instanceof Error)return this.write($,U,G,X);throw W}}}}}}}flush(...$){console.log(this.filesTouched);for(let[X,Y]of this.filesTouched.entries())if($.length===0||$.includes(X)){let z=h1.join(this.baseDir,X),G=L6.readdirSync(z);for(let U of G){let W=U.replace(".input.json","").replace(".output.json","");if(!Y.has(W))console.info(`\uD83E\uDDF9 Flushing ${W}`),L6.unlinkSync(h1.join(z,U))}}}};function Z$($,X,Y,z,G){if(z==="m")throw new TypeError("Private method is not writable");if(z==="a"&&!G)throw new TypeError("Private accessor was defined without a setter");if(typeof X==="function"?$!==X||!G:!X.has($))throw new TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?G.call($,Y):G?G.value=Y:X.set($,Y),Y}function C($,X,Y,z){if(Y==="a"&&!z)throw new TypeError("Private accessor was defined without a getter");if(typeof X==="function"?$!==X||!z:!X.has($))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Y==="m"?z:Y==="a"?z.call($):z?z.value:X.get($)}var eO=function(){let{crypto:$}=globalThis;if($?.randomUUID)return eO=$.randomUUID.bind($),$.randomUUID();let X=new Uint8Array(1),Y=$?()=>$.getRandomValues(X)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(z)=>(+z^Y()&15>>+z/4).toString(16))};function IG($){return typeof $==="object"&&$!==null&&(("name"in $)&&$.name==="AbortError"||("message"in $)&&String($.message).includes("FetchRequestCanceledException"))}var xG=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null){try{if(Object.prototype.toString.call($)==="[object Error]"){let X=new Error($.message,$.cause?{cause:$.cause}:{});if($.stack)X.stack=$.stack;if($.cause&&!X.cause)X.cause=$.cause;if($.name)X.name=$.name;return X}}catch{}try{return new Error(JSON.stringify($))}catch{}}return new Error($)};class G$ extends Error{}class C6 extends G${constructor($,X,Y,z){super(`${C6.makeMessage($,X,Y)}`);this.status=$,this.headers=z,this.requestID=z?.get("x-request-id"),this.error=X;let G=X;this.code=G?.code,this.param=G?.param,this.type=G?.type}static makeMessage($,X,Y){let z=X?.message?typeof X.message==="string"?X.message:JSON.stringify(X.message):X?JSON.stringify(X):Y;if($&&z)return`${$} ${z}`;if($)return`${$} status code (no body)`;if(z)return z;return"(no status code or body)"}static generate($,X,Y,z){if(!$||!z)return new zX({message:Y,cause:xG(X)});let G=X?.error;if($===400)return new SG($,G,Y,z);if($===401)return new kG($,G,Y,z);if($===403)return new bG($,G,Y,z);if($===404)return new hG($,G,Y,z);if($===409)return new fG($,G,Y,z);if($===422)return new gG($,G,Y,z);if($===429)return new yG($,G,Y,z);if($>=500)return new uG($,G,Y,z);return new C6($,G,Y,z)}}class b6 extends C6{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}}class zX extends C6{constructor({message:$,cause:X}){super(void 0,void 0,$||"Connection error.",void 0);if(X)this.cause=X}}class UX extends zX{constructor({message:$}={}){super({message:$??"Request timed out."})}}class SG extends C6{}class kG extends C6{}class bG extends C6{}class hG extends C6{}class fG extends C6{}class gG extends C6{}class yG extends C6{}class uG extends C6{}class mG extends G${constructor(){super("Could not parse response content as the length limit was reached")}}class cG extends G${constructor(){super("Could not parse response content as the request was rejected by the content filter")}}class P0 extends Error{constructor($){super($)}}var Vx=/^[a-z][a-z0-9+.-]*:/i,VM=($)=>{return Vx.test($)},W4=($)=>(W4=Array.isArray,W4($)),$w=W4;function DM($){if(typeof $!=="object")return{};return $??{}}function EM($){if(!$)return!0;for(let X in $)return!1;return!0}function NM($,X){return Object.prototype.hasOwnProperty.call($,X)}function pG($){return $!=null&&typeof $==="object"&&!Array.isArray($)}var FM=($,X)=>{if(typeof X!=="number"||!Number.isInteger(X))throw new G$(`${$} must be an integer`);if(X<0)throw new G$(`${$} must be a positive integer`);return X};var MM=($)=>{try{return JSON.parse($)}catch(X){return}};var $0=($)=>new Promise((X)=>setTimeout(X,$));var V8="5.10.2";var KM=()=>{return typeof window!=="undefined"&&typeof window.document!=="undefined"&&typeof navigator!=="undefined"};function Dx(){if(typeof Deno!=="undefined"&&Deno.build!=null)return"deno";if(typeof EdgeRuntime!=="undefined")return"edge";if(Object.prototype.toString.call(typeof globalThis.process!=="undefined"?globalThis.process:0)==="[object process]")return"node";return"unknown"}var Ex=()=>{let $=Dx();if($==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":JM(Deno.build.os),"X-Stainless-Arch":LM(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version==="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime!=="undefined")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if($==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":JM(globalThis.process.platform??"unknown"),"X-Stainless-Arch":LM(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let X=Nx();if(X)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${X.browser}`,"X-Stainless-Runtime-Version":X.version};return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function Nx(){if(typeof navigator==="undefined"||!navigator)return null;let $=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:X,pattern:Y}of $){let z=Y.exec(navigator.userAgent);if(z){let G=z[1]||0,U=z[2]||0,W=z[3]||0;return{browser:X,version:`${G}.${U}.${W}`}}}return null}var LM=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},JM=($)=>{if($=$.toLowerCase(),$.includes("ios"))return"iOS";if($==="android")return"Android";if($==="darwin")return"MacOS";if($==="win32")return"Windows";if($==="freebsd")return"FreeBSD";if($==="openbsd")return"OpenBSD";if($==="linux")return"Linux";if($)return`Other:${$}`;return"Unknown"},AM,_M=()=>{return AM??(AM=Ex())};function qM(){if(typeof fetch!=="undefined")return fetch;throw new Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new OpenAI({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function Xw(...$){let X=globalThis.ReadableStream;if(typeof X==="undefined")throw new Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new X(...$)}function _z($){let X=Symbol.asyncIterator in $?$[Symbol.asyncIterator]():$[Symbol.iterator]();return Xw({start(){},async pull(Y){let{done:z,value:G}=await X.next();if(z)Y.close();else Y.enqueue(G)},async cancel(){await X.return?.()}})}function Yw($){if($[Symbol.asyncIterator])return $;let X=$.getReader();return{async next(){try{let Y=await X.read();if(Y?.done)X.releaseLock();return Y}catch(Y){throw X.releaseLock(),Y}},async return(){let Y=X.cancel();return X.releaseLock(),await Y,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function TM($){if($===null||typeof $!=="object")return;if($[Symbol.asyncIterator]){await $[Symbol.asyncIterator]().return?.();return}let X=$.getReader(),Y=X.cancel();X.releaseLock(),await Y}var RM=({headers:$,body:X})=>{return{bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(X)}};var qz="RFC3986",Gw=($)=>String($),Tz={RFC1738:($)=>String($).replace(/%20/g,"+"),RFC3986:Gw},zw="RFC1738";var Rz=($,X)=>(Rz=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty),Rz($,X)),X0=(()=>{let $=[];for(let X=0;X<256;++X)$.push("%"+((X<16?"0":"")+X.toString(16)).toUpperCase());return $})();var Uw=1024,PM=($,X,Y,z,G)=>{if($.length===0)return $;let U=$;if(typeof $==="symbol")U=Symbol.prototype.toString.call($);else if(typeof $!=="string")U=String($);if(Y==="iso-8859-1")return escape(U).replace(/%u[0-9a-f]{4}/gi,function(Q){return"%26%23"+parseInt(Q.slice(2),16)+"%3B"});let W="";for(let Q=0;Q<U.length;Q+=Uw){let H=U.length>=Uw?U.slice(Q,Q+Uw):U,Z=[];for(let O=0;O<H.length;++O){let w=H.charCodeAt(O);if(w===45||w===46||w===95||w===126||w>=48&&w<=57||w>=65&&w<=90||w>=97&&w<=122||G===zw&&(w===40||w===41)){Z[Z.length]=H.charAt(O);continue}if(w<128){Z[Z.length]=X0[w];continue}if(w<2048){Z[Z.length]=X0[192|w>>6]+X0[128|w&63];continue}if(w<55296||w>=57344){Z[Z.length]=X0[224|w>>12]+X0[128|w>>6&63]+X0[128|w&63];continue}O+=1,w=65536+((w&1023)<<10|H.charCodeAt(O)&1023),Z[Z.length]=X0[240|w>>18]+X0[128|w>>12&63]+X0[128|w>>6&63]+X0[128|w&63]}W+=Z.join("")}return W};function vM($){if(!$||typeof $!=="object")return!1;return!!($.constructor&&$.constructor.isBuffer&&$.constructor.isBuffer($))}function Ww($,X){if(W4($)){let Y=[];for(let z=0;z<$.length;z+=1)Y.push(X($[z]));return Y}return X($)}var jM={brackets($){return String($)+"[]"},comma:"comma",indices($,X){return String($)+"["+X+"]"},repeat($){return String($)}},BM=function($,X){Array.prototype.push.apply($,W4(X)?X:[X])},CM,h6={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:PM,encodeValuesOnly:!1,format:qz,formatter:Gw,indices:!1,serializeDate($){return(CM??(CM=Function.prototype.call.bind(Date.prototype.toISOString)))($)},skipNulls:!1,strictNullHandling:!1};function Lx($){return typeof $==="string"||typeof $==="number"||typeof $==="boolean"||typeof $==="symbol"||typeof $==="bigint"}var Qw={};function IM($,X,Y,z,G,U,W,Q,H,Z,O,w,V,D,E,F,L,K){let q=$,R=K,_=0,v=!1;while((R=R.get(Qw))!==void 0&&!v){let I=R.get($);if(_+=1,typeof I!=="undefined")if(I===_)throw new RangeError("Cyclic object value");else v=!0;if(typeof R.get(Qw)==="undefined")_=0}if(typeof Z==="function")q=Z(X,q);else if(q instanceof Date)q=V?.(q);else if(Y==="comma"&&W4(q))q=Ww(q,function(I){if(I instanceof Date)return V?.(I);return I});if(q===null){if(U)return H&&!F?H(X,h6.encoder,L,"key",D):X;q=""}if(Lx(q)||vM(q)){if(H){let I=F?X:H(X,h6.encoder,L,"key",D);return[E?.(I)+"="+E?.(H(q,h6.encoder,L,"value",D))]}return[E?.(X)+"="+E?.(String(q))]}let x=[];if(typeof q==="undefined")return x;let S;if(Y==="comma"&&W4(q)){if(F&&H)q=Ww(q,H);S=[{value:q.length>0?q.join(",")||null:void 0}]}else if(W4(Z))S=Z;else{let I=Object.keys(q);S=O?I.sort(O):I}let u=Q?String(X).replace(/\./g,"%2E"):String(X),$$=z&&W4(q)&&q.length===1?u+"[]":u;if(G&&W4(q)&&q.length===0)return $$+"[]";for(let I=0;I<S.length;++I){let Y$=S[I],l=typeof Y$==="object"&&typeof Y$.value!=="undefined"?Y$.value:q[Y$];if(W&&l===null)continue;let U$=w&&Q?Y$.replace(/\./g,"%2E"):Y$,K$=W4(q)?typeof Y==="function"?Y($$,U$):$$:$$+(w?"."+U$:"["+U$+"]");K.set($,_);let b$=new WeakMap;b$.set(Qw,K),BM(x,IM(l,K$,Y,z,G,U,W,Q,Y==="comma"&&F&&W4(q)?null:H,Z,O,w,V,D,E,F,L,b$))}return x}function Jx($=h6){if(typeof $.allowEmptyArrays!=="undefined"&&typeof $.allowEmptyArrays!=="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(typeof $.encodeDotInKeys!=="undefined"&&typeof $.encodeDotInKeys!=="boolean")throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if($.encoder!==null&&typeof $.encoder!=="undefined"&&typeof $.encoder!=="function")throw new TypeError("Encoder has to be a function.");let X=$.charset||h6.charset;if(typeof $.charset!=="undefined"&&$.charset!=="utf-8"&&$.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");let Y=qz;if(typeof $.format!=="undefined"){if(!Rz(Tz,$.format))throw new TypeError("Unknown format option provided.");Y=$.format}let z=Tz[Y],G=h6.filter;if(typeof $.filter==="function"||W4($.filter))G=$.filter;let U;if($.arrayFormat&&$.arrayFormat in jM)U=$.arrayFormat;else if("indices"in $)U=$.indices?"indices":"repeat";else U=h6.arrayFormat;if("commaRoundTrip"in $&&typeof $.commaRoundTrip!=="boolean")throw new TypeError("`commaRoundTrip` must be a boolean, or absent");let W=typeof $.allowDots==="undefined"?!!$.encodeDotInKeys===!0?!0:h6.allowDots:!!$.allowDots;return{addQueryPrefix:typeof $.addQueryPrefix==="boolean"?$.addQueryPrefix:h6.addQueryPrefix,allowDots:W,allowEmptyArrays:typeof $.allowEmptyArrays==="boolean"?!!$.allowEmptyArrays:h6.allowEmptyArrays,arrayFormat:U,charset:X,charsetSentinel:typeof $.charsetSentinel==="boolean"?$.charsetSentinel:h6.charsetSentinel,commaRoundTrip:!!$.commaRoundTrip,delimiter:typeof $.delimiter==="undefined"?h6.delimiter:$.delimiter,encode:typeof $.encode==="boolean"?$.encode:h6.encode,encodeDotInKeys:typeof $.encodeDotInKeys==="boolean"?$.encodeDotInKeys:h6.encodeDotInKeys,encoder:typeof $.encoder==="function"?$.encoder:h6.encoder,encodeValuesOnly:typeof $.encodeValuesOnly==="boolean"?$.encodeValuesOnly:h6.encodeValuesOnly,filter:G,format:Y,formatter:z,serializeDate:typeof $.serializeDate==="function"?$.serializeDate:h6.serializeDate,skipNulls:typeof $.skipNulls==="boolean"?$.skipNulls:h6.skipNulls,sort:typeof $.sort==="function"?$.sort:null,strictNullHandling:typeof $.strictNullHandling==="boolean"?$.strictNullHandling:h6.strictNullHandling}}function Zw($,X={}){let Y=$,z=Jx(X),G,U;if(typeof z.filter==="function")U=z.filter,Y=U("",Y);else if(W4(z.filter))U=z.filter,G=U;let W=[];if(typeof Y!=="object"||Y===null)return"";let Q=jM[z.arrayFormat],H=Q==="comma"&&z.commaRoundTrip;if(!G)G=Object.keys(Y);if(z.sort)G.sort(z.sort);let Z=new WeakMap;for(let V=0;V<G.length;++V){let D=G[V];if(z.skipNulls&&Y[D]===null)continue;BM(W,IM(Y[D],D,Q,H,z.allowEmptyArrays,z.strictNullHandling,z.skipNulls,z.encodeDotInKeys,z.encode?z.encoder:null,z.filter,z.sort,z.allowDots,z.serializeDate,z.format,z.formatter,z.encodeValuesOnly,z.charset,Z))}let O=W.join(z.delimiter),w=z.addQueryPrefix===!0?"?":"";if(z.charsetSentinel)if(z.charset==="iso-8859-1")w+="utf8=%26%2310003%3B&";else w+="utf8=%E2%9C%93&";return O.length>0?w+O:""}function kM($){let X=0;for(let G of $)X+=G.length;let Y=new Uint8Array(X),z=0;for(let G of $)Y.set(G,z),z+=G.length;return Y}var xM;function DY($){let X;return(xM??(X=new globalThis.TextEncoder,xM=X.encode.bind(X)))($)}var SM;function Hw($){let X;return(SM??(X=new globalThis.TextDecoder,SM=X.decode.bind(X)))($)}var U1,W1;class EY{constructor(){U1.set(this,void 0),W1.set(this,void 0),Z$(this,U1,new Uint8Array,"f"),Z$(this,W1,null,"f")}decode($){if($==null)return[];let X=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?DY($):$;Z$(this,U1,kM([C(this,U1,"f"),X]),"f");let Y=[],z;while((z=Kx(C(this,U1,"f"),C(this,W1,"f")))!=null){if(z.carriage&&C(this,W1,"f")==null){Z$(this,W1,z.index,"f");continue}if(C(this,W1,"f")!=null&&(z.index!==C(this,W1,"f")+1||z.carriage)){Y.push(Hw(C(this,U1,"f").subarray(0,C(this,W1,"f")-1))),Z$(this,U1,C(this,U1,"f").subarray(C(this,W1,"f")),"f"),Z$(this,W1,null,"f");continue}let G=C(this,W1,"f")!==null?z.preceding-1:z.preceding,U=Hw(C(this,U1,"f").subarray(0,G));Y.push(U),Z$(this,U1,C(this,U1,"f").subarray(z.index),"f"),Z$(this,W1,null,"f")}return Y}flush(){if(!C(this,U1,"f").length)return[];return this.decode(`
97
+ ${W}`)}let H=h1.join(this.baseDir,`${$}/${X}.output.json`);return JSON.parse(L6.readFileSync(H,"utf-8"))}async write($,X,Y,z){let G=h1.join(this.baseDir,$),U=h1.join(G,`${X}.input.json`),W=h1.join(G,`${X}.output.json`),Q=JSON.stringify(Y,null,"\t");if(!L6.existsSync(this.baseDir))L6.mkdirSync(this.baseDir,{recursive:!0});if(!L6.existsSync(G))L6.mkdirSync(G);if(L6.writeFileSync(U,Q),L6.existsSync(W))L6.unlinkSync(W);let H=await z(...Y),Z=JSON.stringify(H,null,"\t");return L6.writeFileSync(W,Z),H}add($,X){let Y=`${this.rootName}${k6}${BG($)}`;return{flush:()=>{this.flush($)},for:(z)=>{if(this.mode!=="off"){if(this.filesTouched.set($,new Set),s$.storage.initialized&&!s$.storage.getItem(`list${k6}${Y}`))s$.storage.setItem(`list${k6}${Y}`,"true")}return{get:async(...G)=>{let U=z;if(this.mode!=="off"){let W=this.filenameCache.get(z);if(!W)W=BG(z),this.filenameCache.set(z,W);U=W,this.filesTouched.get($)?.add(U);let Q=`${Y}${k6}${U}`,H=`file${k6}${Q}`;if(s$.storage.initialized&&!s$.storage.getItem(H))s$.storage.setItem(H,"true")}switch(this.mode){case"off":return X(...G);case"read":return this.read($,U,G);case"write":return this.write($,U,G,X);case"read-write":try{return this.read($,U,G)}catch(W){if(W instanceof Error)return this.write($,U,G,X);throw W}}}}}}}flush(...$){console.log(this.filesTouched);for(let[X,Y]of this.filesTouched.entries())if($.length===0||$.includes(X)){let z=h1.join(this.baseDir,X),G=L6.readdirSync(z);for(let U of G){let W=U.replace(".input.json","").replace(".output.json","");if(!Y.has(W))console.info(`\uD83E\uDDF9 Flushing ${W}`),L6.unlinkSync(h1.join(z,U))}}}};function Z$($,X,Y,z,G){if(z==="m")throw new TypeError("Private method is not writable");if(z==="a"&&!G)throw new TypeError("Private accessor was defined without a setter");if(typeof X==="function"?$!==X||!G:!X.has($))throw new TypeError("Cannot write private member to an object whose class did not declare it");return z==="a"?G.call($,Y):G?G.value=Y:X.set($,Y),Y}function C($,X,Y,z){if(Y==="a"&&!z)throw new TypeError("Private accessor was defined without a getter");if(typeof X==="function"?$!==X||!z:!X.has($))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Y==="m"?z:Y==="a"?z.call($):z?z.value:X.get($)}var eO=function(){let{crypto:$}=globalThis;if($?.randomUUID)return eO=$.randomUUID.bind($),$.randomUUID();let X=new Uint8Array(1),Y=$?()=>$.getRandomValues(X)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(z)=>(+z^Y()&15>>+z/4).toString(16))};function IG($){return typeof $==="object"&&$!==null&&(("name"in $)&&$.name==="AbortError"||("message"in $)&&String($.message).includes("FetchRequestCanceledException"))}var xG=($)=>{if($ instanceof Error)return $;if(typeof $==="object"&&$!==null){try{if(Object.prototype.toString.call($)==="[object Error]"){let X=new Error($.message,$.cause?{cause:$.cause}:{});if($.stack)X.stack=$.stack;if($.cause&&!X.cause)X.cause=$.cause;if($.name)X.name=$.name;return X}}catch{}try{return new Error(JSON.stringify($))}catch{}}return new Error($)};class G$ extends Error{}class C6 extends G${constructor($,X,Y,z){super(`${C6.makeMessage($,X,Y)}`);this.status=$,this.headers=z,this.requestID=z?.get("x-request-id"),this.error=X;let G=X;this.code=G?.code,this.param=G?.param,this.type=G?.type}static makeMessage($,X,Y){let z=X?.message?typeof X.message==="string"?X.message:JSON.stringify(X.message):X?JSON.stringify(X):Y;if($&&z)return`${$} ${z}`;if($)return`${$} status code (no body)`;if(z)return z;return"(no status code or body)"}static generate($,X,Y,z){if(!$||!z)return new zX({message:Y,cause:xG(X)});let G=X?.error;if($===400)return new SG($,G,Y,z);if($===401)return new kG($,G,Y,z);if($===403)return new bG($,G,Y,z);if($===404)return new hG($,G,Y,z);if($===409)return new fG($,G,Y,z);if($===422)return new gG($,G,Y,z);if($===429)return new yG($,G,Y,z);if($>=500)return new uG($,G,Y,z);return new C6($,G,Y,z)}}class b6 extends C6{constructor({message:$}={}){super(void 0,void 0,$||"Request was aborted.",void 0)}}class zX extends C6{constructor({message:$,cause:X}){super(void 0,void 0,$||"Connection error.",void 0);if(X)this.cause=X}}class UX extends zX{constructor({message:$}={}){super({message:$??"Request timed out."})}}class SG extends C6{}class kG extends C6{}class bG extends C6{}class hG extends C6{}class fG extends C6{}class gG extends C6{}class yG extends C6{}class uG extends C6{}class mG extends G${constructor(){super("Could not parse response content as the length limit was reached")}}class cG extends G${constructor(){super("Could not parse response content as the request was rejected by the content filter")}}class P0 extends Error{constructor($){super($)}}var Vx=/^[a-z][a-z0-9+.-]*:/i,VM=($)=>{return Vx.test($)},W4=($)=>(W4=Array.isArray,W4($)),$w=W4;function DM($){if(typeof $!=="object")return{};return $??{}}function EM($){if(!$)return!0;for(let X in $)return!1;return!0}function NM($,X){return Object.prototype.hasOwnProperty.call($,X)}function pG($){return $!=null&&typeof $==="object"&&!Array.isArray($)}var FM=($,X)=>{if(typeof X!=="number"||!Number.isInteger(X))throw new G$(`${$} must be an integer`);if(X<0)throw new G$(`${$} must be a positive integer`);return X};var MM=($)=>{try{return JSON.parse($)}catch(X){return}};var $0=($)=>new Promise((X)=>setTimeout(X,$));var V8="5.11.0";var KM=()=>{return typeof window!=="undefined"&&typeof window.document!=="undefined"&&typeof navigator!=="undefined"};function Dx(){if(typeof Deno!=="undefined"&&Deno.build!=null)return"deno";if(typeof EdgeRuntime!=="undefined")return"edge";if(Object.prototype.toString.call(typeof globalThis.process!=="undefined"?globalThis.process:0)==="[object process]")return"node";return"unknown"}var Ex=()=>{let $=Dx();if($==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":JM(Deno.build.os),"X-Stainless-Arch":LM(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version==="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime!=="undefined")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if($==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":JM(globalThis.process.platform??"unknown"),"X-Stainless-Arch":LM(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let X=Nx();if(X)return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${X.browser}`,"X-Stainless-Runtime-Version":X.version};return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":V8,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function Nx(){if(typeof navigator==="undefined"||!navigator)return null;let $=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:X,pattern:Y}of $){let z=Y.exec(navigator.userAgent);if(z){let G=z[1]||0,U=z[2]||0,W=z[3]||0;return{browser:X,version:`${G}.${U}.${W}`}}}return null}var LM=($)=>{if($==="x32")return"x32";if($==="x86_64"||$==="x64")return"x64";if($==="arm")return"arm";if($==="aarch64"||$==="arm64")return"arm64";if($)return`other:${$}`;return"unknown"},JM=($)=>{if($=$.toLowerCase(),$.includes("ios"))return"iOS";if($==="android")return"Android";if($==="darwin")return"MacOS";if($==="win32")return"Windows";if($==="freebsd")return"FreeBSD";if($==="openbsd")return"OpenBSD";if($==="linux")return"Linux";if($)return`Other:${$}`;return"Unknown"},AM,_M=()=>{return AM??(AM=Ex())};function qM(){if(typeof fetch!=="undefined")return fetch;throw new Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new OpenAI({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function Xw(...$){let X=globalThis.ReadableStream;if(typeof X==="undefined")throw new Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new X(...$)}function _z($){let X=Symbol.asyncIterator in $?$[Symbol.asyncIterator]():$[Symbol.iterator]();return Xw({start(){},async pull(Y){let{done:z,value:G}=await X.next();if(z)Y.close();else Y.enqueue(G)},async cancel(){await X.return?.()}})}function Yw($){if($[Symbol.asyncIterator])return $;let X=$.getReader();return{async next(){try{let Y=await X.read();if(Y?.done)X.releaseLock();return Y}catch(Y){throw X.releaseLock(),Y}},async return(){let Y=X.cancel();return X.releaseLock(),await Y,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function TM($){if($===null||typeof $!=="object")return;if($[Symbol.asyncIterator]){await $[Symbol.asyncIterator]().return?.();return}let X=$.getReader(),Y=X.cancel();X.releaseLock(),await Y}var RM=({headers:$,body:X})=>{return{bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(X)}};var qz="RFC3986",Gw=($)=>String($),Tz={RFC1738:($)=>String($).replace(/%20/g,"+"),RFC3986:Gw},zw="RFC1738";var Rz=($,X)=>(Rz=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty),Rz($,X)),X0=(()=>{let $=[];for(let X=0;X<256;++X)$.push("%"+((X<16?"0":"")+X.toString(16)).toUpperCase());return $})();var Uw=1024,PM=($,X,Y,z,G)=>{if($.length===0)return $;let U=$;if(typeof $==="symbol")U=Symbol.prototype.toString.call($);else if(typeof $!=="string")U=String($);if(Y==="iso-8859-1")return escape(U).replace(/%u[0-9a-f]{4}/gi,function(Q){return"%26%23"+parseInt(Q.slice(2),16)+"%3B"});let W="";for(let Q=0;Q<U.length;Q+=Uw){let H=U.length>=Uw?U.slice(Q,Q+Uw):U,Z=[];for(let O=0;O<H.length;++O){let w=H.charCodeAt(O);if(w===45||w===46||w===95||w===126||w>=48&&w<=57||w>=65&&w<=90||w>=97&&w<=122||G===zw&&(w===40||w===41)){Z[Z.length]=H.charAt(O);continue}if(w<128){Z[Z.length]=X0[w];continue}if(w<2048){Z[Z.length]=X0[192|w>>6]+X0[128|w&63];continue}if(w<55296||w>=57344){Z[Z.length]=X0[224|w>>12]+X0[128|w>>6&63]+X0[128|w&63];continue}O+=1,w=65536+((w&1023)<<10|H.charCodeAt(O)&1023),Z[Z.length]=X0[240|w>>18]+X0[128|w>>12&63]+X0[128|w>>6&63]+X0[128|w&63]}W+=Z.join("")}return W};function vM($){if(!$||typeof $!=="object")return!1;return!!($.constructor&&$.constructor.isBuffer&&$.constructor.isBuffer($))}function Ww($,X){if(W4($)){let Y=[];for(let z=0;z<$.length;z+=1)Y.push(X($[z]));return Y}return X($)}var jM={brackets($){return String($)+"[]"},comma:"comma",indices($,X){return String($)+"["+X+"]"},repeat($){return String($)}},BM=function($,X){Array.prototype.push.apply($,W4(X)?X:[X])},CM,h6={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:PM,encodeValuesOnly:!1,format:qz,formatter:Gw,indices:!1,serializeDate($){return(CM??(CM=Function.prototype.call.bind(Date.prototype.toISOString)))($)},skipNulls:!1,strictNullHandling:!1};function Lx($){return typeof $==="string"||typeof $==="number"||typeof $==="boolean"||typeof $==="symbol"||typeof $==="bigint"}var Qw={};function IM($,X,Y,z,G,U,W,Q,H,Z,O,w,V,D,E,F,L,K){let q=$,R=K,_=0,v=!1;while((R=R.get(Qw))!==void 0&&!v){let I=R.get($);if(_+=1,typeof I!=="undefined")if(I===_)throw new RangeError("Cyclic object value");else v=!0;if(typeof R.get(Qw)==="undefined")_=0}if(typeof Z==="function")q=Z(X,q);else if(q instanceof Date)q=V?.(q);else if(Y==="comma"&&W4(q))q=Ww(q,function(I){if(I instanceof Date)return V?.(I);return I});if(q===null){if(U)return H&&!F?H(X,h6.encoder,L,"key",D):X;q=""}if(Lx(q)||vM(q)){if(H){let I=F?X:H(X,h6.encoder,L,"key",D);return[E?.(I)+"="+E?.(H(q,h6.encoder,L,"value",D))]}return[E?.(X)+"="+E?.(String(q))]}let x=[];if(typeof q==="undefined")return x;let S;if(Y==="comma"&&W4(q)){if(F&&H)q=Ww(q,H);S=[{value:q.length>0?q.join(",")||null:void 0}]}else if(W4(Z))S=Z;else{let I=Object.keys(q);S=O?I.sort(O):I}let u=Q?String(X).replace(/\./g,"%2E"):String(X),$$=z&&W4(q)&&q.length===1?u+"[]":u;if(G&&W4(q)&&q.length===0)return $$+"[]";for(let I=0;I<S.length;++I){let Y$=S[I],l=typeof Y$==="object"&&typeof Y$.value!=="undefined"?Y$.value:q[Y$];if(W&&l===null)continue;let U$=w&&Q?Y$.replace(/\./g,"%2E"):Y$,K$=W4(q)?typeof Y==="function"?Y($$,U$):$$:$$+(w?"."+U$:"["+U$+"]");K.set($,_);let b$=new WeakMap;b$.set(Qw,K),BM(x,IM(l,K$,Y,z,G,U,W,Q,Y==="comma"&&F&&W4(q)?null:H,Z,O,w,V,D,E,F,L,b$))}return x}function Jx($=h6){if(typeof $.allowEmptyArrays!=="undefined"&&typeof $.allowEmptyArrays!=="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(typeof $.encodeDotInKeys!=="undefined"&&typeof $.encodeDotInKeys!=="boolean")throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if($.encoder!==null&&typeof $.encoder!=="undefined"&&typeof $.encoder!=="function")throw new TypeError("Encoder has to be a function.");let X=$.charset||h6.charset;if(typeof $.charset!=="undefined"&&$.charset!=="utf-8"&&$.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");let Y=qz;if(typeof $.format!=="undefined"){if(!Rz(Tz,$.format))throw new TypeError("Unknown format option provided.");Y=$.format}let z=Tz[Y],G=h6.filter;if(typeof $.filter==="function"||W4($.filter))G=$.filter;let U;if($.arrayFormat&&$.arrayFormat in jM)U=$.arrayFormat;else if("indices"in $)U=$.indices?"indices":"repeat";else U=h6.arrayFormat;if("commaRoundTrip"in $&&typeof $.commaRoundTrip!=="boolean")throw new TypeError("`commaRoundTrip` must be a boolean, or absent");let W=typeof $.allowDots==="undefined"?!!$.encodeDotInKeys===!0?!0:h6.allowDots:!!$.allowDots;return{addQueryPrefix:typeof $.addQueryPrefix==="boolean"?$.addQueryPrefix:h6.addQueryPrefix,allowDots:W,allowEmptyArrays:typeof $.allowEmptyArrays==="boolean"?!!$.allowEmptyArrays:h6.allowEmptyArrays,arrayFormat:U,charset:X,charsetSentinel:typeof $.charsetSentinel==="boolean"?$.charsetSentinel:h6.charsetSentinel,commaRoundTrip:!!$.commaRoundTrip,delimiter:typeof $.delimiter==="undefined"?h6.delimiter:$.delimiter,encode:typeof $.encode==="boolean"?$.encode:h6.encode,encodeDotInKeys:typeof $.encodeDotInKeys==="boolean"?$.encodeDotInKeys:h6.encodeDotInKeys,encoder:typeof $.encoder==="function"?$.encoder:h6.encoder,encodeValuesOnly:typeof $.encodeValuesOnly==="boolean"?$.encodeValuesOnly:h6.encodeValuesOnly,filter:G,format:Y,formatter:z,serializeDate:typeof $.serializeDate==="function"?$.serializeDate:h6.serializeDate,skipNulls:typeof $.skipNulls==="boolean"?$.skipNulls:h6.skipNulls,sort:typeof $.sort==="function"?$.sort:null,strictNullHandling:typeof $.strictNullHandling==="boolean"?$.strictNullHandling:h6.strictNullHandling}}function Zw($,X={}){let Y=$,z=Jx(X),G,U;if(typeof z.filter==="function")U=z.filter,Y=U("",Y);else if(W4(z.filter))U=z.filter,G=U;let W=[];if(typeof Y!=="object"||Y===null)return"";let Q=jM[z.arrayFormat],H=Q==="comma"&&z.commaRoundTrip;if(!G)G=Object.keys(Y);if(z.sort)G.sort(z.sort);let Z=new WeakMap;for(let V=0;V<G.length;++V){let D=G[V];if(z.skipNulls&&Y[D]===null)continue;BM(W,IM(Y[D],D,Q,H,z.allowEmptyArrays,z.strictNullHandling,z.skipNulls,z.encodeDotInKeys,z.encode?z.encoder:null,z.filter,z.sort,z.allowDots,z.serializeDate,z.format,z.formatter,z.encodeValuesOnly,z.charset,Z))}let O=W.join(z.delimiter),w=z.addQueryPrefix===!0?"?":"";if(z.charsetSentinel)if(z.charset==="iso-8859-1")w+="utf8=%26%2310003%3B&";else w+="utf8=%E2%9C%93&";return O.length>0?w+O:""}function kM($){let X=0;for(let G of $)X+=G.length;let Y=new Uint8Array(X),z=0;for(let G of $)Y.set(G,z),z+=G.length;return Y}var xM;function DY($){let X;return(xM??(X=new globalThis.TextEncoder,xM=X.encode.bind(X)))($)}var SM;function Hw($){let X;return(SM??(X=new globalThis.TextDecoder,SM=X.decode.bind(X)))($)}var U1,W1;class EY{constructor(){U1.set(this,void 0),W1.set(this,void 0),Z$(this,U1,new Uint8Array,"f"),Z$(this,W1,null,"f")}decode($){if($==null)return[];let X=$ instanceof ArrayBuffer?new Uint8Array($):typeof $==="string"?DY($):$;Z$(this,U1,kM([C(this,U1,"f"),X]),"f");let Y=[],z;while((z=Kx(C(this,U1,"f"),C(this,W1,"f")))!=null){if(z.carriage&&C(this,W1,"f")==null){Z$(this,W1,z.index,"f");continue}if(C(this,W1,"f")!=null&&(z.index!==C(this,W1,"f")+1||z.carriage)){Y.push(Hw(C(this,U1,"f").subarray(0,C(this,W1,"f")-1))),Z$(this,U1,C(this,U1,"f").subarray(C(this,W1,"f")),"f"),Z$(this,W1,null,"f");continue}let G=C(this,W1,"f")!==null?z.preceding-1:z.preceding,U=Hw(C(this,U1,"f").subarray(0,G));Y.push(U),Z$(this,U1,C(this,U1,"f").subarray(z.index),"f"),Z$(this,W1,null,"f")}return Y}flush(){if(!C(this,U1,"f").length)return[];return this.decode(`
98
98
  `)}}U1=new WeakMap,W1=new WeakMap;EY.NEWLINE_CHARS=new Set([`
99
- `,"\r"]);EY.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function Kx($,X){for(let G=X??0;G<$.length;G++){if($[G]===10)return{preceding:G,index:G+1,carriage:!1};if($[G]===13)return{preceding:G,index:G+1,carriage:!0}}return null}function bM($){for(let z=0;z<$.length-1;z++){if($[z]===10&&$[z+1]===10)return z+2;if($[z]===13&&$[z+1]===13)return z+2;if($[z]===13&&$[z+1]===10&&z+3<$.length&&$[z+2]===13&&$[z+3]===10)return z+4}return-1}var vz={off:0,error:200,warn:300,info:400,debug:500},Ow=($,X,Y)=>{if(!$)return;if(NM(vz,$))return $;_6(Y).warn(`${X} was set to ${JSON.stringify($)}, expected one of ${JSON.stringify(Object.keys(vz))}`);return};function dG(){}function Pz($,X,Y){if(!X||vz[$]>vz[Y])return dG;else return X[$].bind(X)}var _x={error:dG,warn:dG,info:dG,debug:dG},hM=new WeakMap;function _6($){let X=$.logger,Y=$.logLevel??"off";if(!X)return _x;let z=hM.get(X);if(z&&z[0]===Y)return z[1];let G={error:Pz("error",X,Y),warn:Pz("warn",X,Y),info:Pz("info",X,Y),debug:Pz("debug",X,Y)};return hM.set(X,[Y,G]),G}var v0=($)=>{if($.options)$.options={...$.options},delete $.options.headers;if($.headers)$.headers=Object.fromEntries(($.headers instanceof Headers?[...$.headers]:Object.entries($.headers)).map(([X,Y])=>[X,X.toLowerCase()==="authorization"||X.toLowerCase()==="cookie"||X.toLowerCase()==="set-cookie"?"***":Y]));if("retryOfRequestLogID"in $){if($.retryOfRequestLogID)$.retryOf=$.retryOfRequestLogID;delete $.retryOfRequestLogID}return $};var lG;class Q1{constructor($,X,Y){this.iterator=$,lG.set(this,void 0),this.controller=X,Z$(this,lG,Y,"f")}static fromSSEResponse($,X,Y){let z=!1,G=Y?_6(Y):console;async function*U(){if(z)throw new G$("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");z=!0;let W=!1;try{for await(let Q of qx($,X)){if(W)continue;if(Q.data.startsWith("[DONE]")){W=!0;continue}if(Q.event===null||Q.event.startsWith("response.")||Q.event.startsWith("image_edit.")||Q.event.startsWith("image_generation.")||Q.event.startsWith("transcript.")){let H;try{H=JSON.parse(Q.data)}catch(Z){throw G.error("Could not parse message into JSON:",Q.data),G.error("From chunk:",Q.raw),Z}if(H&&H.error)throw new C6(void 0,H.error,void 0,$.headers);yield H}else{let H;try{H=JSON.parse(Q.data)}catch(Z){throw console.error("Could not parse message into JSON:",Q.data),console.error("From chunk:",Q.raw),Z}if(Q.event=="error")throw new C6(void 0,H.error,H.message,void 0);yield{event:Q.event,data:H}}}W=!0}catch(Q){if(IG(Q))return;throw Q}finally{if(!W)X.abort()}}return new Q1(U,X,Y)}static fromReadableStream($,X,Y){let z=!1;async function*G(){let W=new EY,Q=Yw($);for await(let H of Q)for(let Z of W.decode(H))yield Z;for(let H of W.flush())yield H}async function*U(){if(z)throw new G$("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");z=!0;let W=!1;try{for await(let Q of G()){if(W)continue;if(Q)yield JSON.parse(Q)}W=!0}catch(Q){if(IG(Q))return;throw Q}finally{if(!W)X.abort()}}return new Q1(U,X,Y)}[(lG=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let $=[],X=[],Y=this.iterator(),z=(G)=>{return{next:()=>{if(G.length===0){let U=Y.next();$.push(U),X.push(U)}return G.shift()}}};return[new Q1(()=>z($),this.controller,C(this,lG,"f")),new Q1(()=>z(X),this.controller,C(this,lG,"f"))]}toReadableStream(){let $=this,X;return Xw({async start(){X=$[Symbol.asyncIterator]()},async pull(Y){try{let{value:z,done:G}=await X.next();if(G)return Y.close();let U=DY(JSON.stringify(z)+`
99
+ `,"\r"]);EY.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function Kx($,X){for(let G=X??0;G<$.length;G++){if($[G]===10)return{preceding:G,index:G+1,carriage:!1};if($[G]===13)return{preceding:G,index:G+1,carriage:!0}}return null}function bM($){for(let z=0;z<$.length-1;z++){if($[z]===10&&$[z+1]===10)return z+2;if($[z]===13&&$[z+1]===13)return z+2;if($[z]===13&&$[z+1]===10&&z+3<$.length&&$[z+2]===13&&$[z+3]===10)return z+4}return-1}var vz={off:0,error:200,warn:300,info:400,debug:500},Ow=($,X,Y)=>{if(!$)return;if(NM(vz,$))return $;_6(Y).warn(`${X} was set to ${JSON.stringify($)}, expected one of ${JSON.stringify(Object.keys(vz))}`);return};function dG(){}function Pz($,X,Y){if(!X||vz[$]>vz[Y])return dG;else return X[$].bind(X)}var _x={error:dG,warn:dG,info:dG,debug:dG},hM=new WeakMap;function _6($){let X=$.logger,Y=$.logLevel??"off";if(!X)return _x;let z=hM.get(X);if(z&&z[0]===Y)return z[1];let G={error:Pz("error",X,Y),warn:Pz("warn",X,Y),info:Pz("info",X,Y),debug:Pz("debug",X,Y)};return hM.set(X,[Y,G]),G}var v0=($)=>{if($.options)$.options={...$.options},delete $.options.headers;if($.headers)$.headers=Object.fromEntries(($.headers instanceof Headers?[...$.headers]:Object.entries($.headers)).map(([X,Y])=>[X,X.toLowerCase()==="authorization"||X.toLowerCase()==="cookie"||X.toLowerCase()==="set-cookie"?"***":Y]));if("retryOfRequestLogID"in $){if($.retryOfRequestLogID)$.retryOf=$.retryOfRequestLogID;delete $.retryOfRequestLogID}return $};var lG;class Q1{constructor($,X,Y){this.iterator=$,lG.set(this,void 0),this.controller=X,Z$(this,lG,Y,"f")}static fromSSEResponse($,X,Y){let z=!1,G=Y?_6(Y):console;async function*U(){if(z)throw new G$("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");z=!0;let W=!1;try{for await(let Q of qx($,X)){if(W)continue;if(Q.data.startsWith("[DONE]")){W=!0;continue}if(Q.event===null||!Q.event.startsWith("thread.")){let H;try{H=JSON.parse(Q.data)}catch(Z){throw G.error("Could not parse message into JSON:",Q.data),G.error("From chunk:",Q.raw),Z}if(H&&H.error)throw new C6(void 0,H.error,void 0,$.headers);yield H}else{let H;try{H=JSON.parse(Q.data)}catch(Z){throw console.error("Could not parse message into JSON:",Q.data),console.error("From chunk:",Q.raw),Z}if(Q.event=="error")throw new C6(void 0,H.error,H.message,void 0);yield{event:Q.event,data:H}}}W=!0}catch(Q){if(IG(Q))return;throw Q}finally{if(!W)X.abort()}}return new Q1(U,X,Y)}static fromReadableStream($,X,Y){let z=!1;async function*G(){let W=new EY,Q=Yw($);for await(let H of Q)for(let Z of W.decode(H))yield Z;for(let H of W.flush())yield H}async function*U(){if(z)throw new G$("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");z=!0;let W=!1;try{for await(let Q of G()){if(W)continue;if(Q)yield JSON.parse(Q)}W=!0}catch(Q){if(IG(Q))return;throw Q}finally{if(!W)X.abort()}}return new Q1(U,X,Y)}[(lG=new WeakMap,Symbol.asyncIterator)](){return this.iterator()}tee(){let $=[],X=[],Y=this.iterator(),z=(G)=>{return{next:()=>{if(G.length===0){let U=Y.next();$.push(U),X.push(U)}return G.shift()}}};return[new Q1(()=>z($),this.controller,C(this,lG,"f")),new Q1(()=>z(X),this.controller,C(this,lG,"f"))]}toReadableStream(){let $=this,X;return Xw({async start(){X=$[Symbol.asyncIterator]()},async pull(Y){try{let{value:z,done:G}=await X.next();if(G)return Y.close();let U=DY(JSON.stringify(z)+`
100
100
  `);Y.enqueue(U)}catch(z){Y.error(z)}},async cancel(){await X.return?.()}})}}async function*qx($,X){if(!$.body){if(X.abort(),typeof globalThis.navigator!=="undefined"&&globalThis.navigator.product==="ReactNative")throw new G$("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api");throw new G$("Attempted to iterate over a response with no body")}let Y=new fM,z=new EY,G=Yw($.body);for await(let U of Tx(G))for(let W of z.decode(U)){let Q=Y.decode(W);if(Q)yield Q}for(let U of z.flush()){let W=Y.decode(U);if(W)yield W}}async function*Tx($){let X=new Uint8Array;for await(let Y of $){if(Y==null)continue;let z=Y instanceof ArrayBuffer?new Uint8Array(Y):typeof Y==="string"?DY(Y):Y,G=new Uint8Array(X.length+z.length);G.set(X),G.set(z,X.length),X=G;let U;while((U=bM(X))!==-1)yield X.slice(0,U),X=X.slice(U)}if(X.length>0)yield X}class fM{constructor(){this.event=null,this.data=[],this.chunks=[]}decode($){if($.endsWith("\r"))$=$.substring(0,$.length-1);if(!$){if(!this.event&&!this.data.length)return null;let G={event:this.event,data:this.data.join(`
101
101
  `),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],G}if(this.chunks.push($),$.startsWith(":"))return null;let[X,Y,z]=Rx($,":");if(z.startsWith(" "))z=z.substring(1);if(X==="event")this.event=z;else if(X==="data")this.data.push(z);return null}}function Rx($,X){let Y=$.indexOf(X);if(Y!==-1)return[$.substring(0,Y),X,$.substring(Y+X.length)];return[$,"",""]}async function Cz($,X){let{response:Y,requestLogID:z,retryOfRequestLogID:G,startTime:U}=X,W=await(async()=>{if(X.options.stream){if(_6($).debug("response",Y.status,Y.url,Y.headers,Y.body),X.options.__streamClass)return X.options.__streamClass.fromSSEResponse(Y,X.controller,$);return Q1.fromSSEResponse(Y,X.controller,$)}if(Y.status===204)return null;if(X.options.__binaryResponse)return Y;let H=Y.headers.get("content-type")?.split(";")[0]?.trim();if(H?.includes("application/json")||H?.endsWith("+json")){let w=await Y.json();return ww(w,Y)}return await Y.text()})();return _6($).debug(`[${z}] response parsed`,v0({retryOfRequestLogID:G,url:Y.url,status:Y.status,body:W,durationMs:Date.now()-U})),W}function ww($,X){if(!$||typeof $!=="object"||Array.isArray($))return $;return Object.defineProperty($,"_request_id",{value:X.headers.get("x-request-id"),enumerable:!1})}var iG;class WX extends Promise{constructor($,X,Y=Cz){super((z)=>{z(null)});this.responsePromise=X,this.parseResponse=Y,iG.set(this,void 0),Z$(this,iG,$,"f")}_thenUnwrap($){return new WX(C(this,iG,"f"),this.responsePromise,async(X,Y)=>ww($(await this.parseResponse(X,Y),Y),Y.response))}asResponse(){return this.responsePromise.then(($)=>$.response)}async withResponse(){let[$,X]=await Promise.all([this.parse(),this.asResponse()]);return{data:$,response:X,request_id:X.headers.get("x-request-id")}}parse(){if(!this.parsedPromise)this.parsedPromise=this.responsePromise.then(($)=>this.parseResponse(C(this,iG,"f"),$));return this.parsedPromise}then($,X){return this.parse().then($,X)}catch($){return this.parse().catch($)}finally($){return this.parse().finally($)}}iG=new WeakMap;var jz;class Vw{constructor($,X,Y,z){jz.set(this,void 0),Z$(this,jz,$,"f"),this.options=z,this.response=X,this.body=Y}hasNextPage(){if(!this.getPaginatedItems().length)return!1;return this.nextPageRequestOptions()!=null}async getNextPage(){let $=this.nextPageRequestOptions();if(!$)throw new G$("No next page expected; please check `.hasNextPage()` before calling `.getNextPage()`.");return await C(this,jz,"f").requestAPIList(this.constructor,$)}async*iterPages(){let $=this;yield $;while($.hasNextPage())$=await $.getNextPage(),yield $}async*[(jz=new WeakMap,Symbol.asyncIterator)](){for await(let $ of this.iterPages())for(let X of $.getPaginatedItems())yield X}}class Bz extends WX{constructor($,X,Y){super($,X,async(z,G)=>new Y(z,G.response,await Cz(z,G),G.options))}async*[Symbol.asyncIterator](){let $=await this;for await(let X of $)yield X}}class C0 extends Vw{constructor($,X,Y,z){super($,X,Y,z);this.data=Y.data||[],this.object=Y.object}getPaginatedItems(){return this.data??[]}nextPageRequestOptions(){return null}}class T$ extends Vw{constructor($,X,Y,z){super($,X,Y,z);this.data=Y.data||[],this.has_more=Y.has_more||!1}getPaginatedItems(){return this.data??[]}hasNextPage(){if(this.has_more===!1)return!1;return super.hasNextPage()}nextPageRequestOptions(){let $=this.getPaginatedItems(),X=$[$.length-1]?.id;if(!X)return null;return{...this.options,query:{...DM(this.options.query),after:X}}}}var Ew=()=>{if(typeof File==="undefined"){let{process:$}=globalThis,X=typeof $?.versions?.node==="string"&&parseInt($.versions.node.split("."))<20;throw new Error("`File` is not defined as a global, which is required for file uploads."+(X?" Update to Node 20 LTS or newer, or set `globalThis.File` to `import('node:buffer').File`.":""))}};function NY($,X,Y){return Ew(),new File($,X??"unknown_file",Y)}function rG($){return(typeof $==="object"&&$!==null&&(("name"in $)&&$.name&&String($.name)||("url"in $)&&$.url&&String($.url)||("filename"in $)&&$.filename&&String($.filename)||("path"in $)&&$.path&&String($.path))||"").split(/[\\/]/).pop()||void 0}var Nw=($)=>$!=null&&typeof $==="object"&&typeof $[Symbol.asyncIterator]==="function";var Z1=async($,X)=>{return{...$,body:await Cx($.body,X)}},gM=new WeakMap;function vx($){let X=typeof $==="function"?$:$.fetch,Y=gM.get(X);if(Y)return Y;let z=(async()=>{try{let G="Response"in X?X.Response:(await X("data:,")).constructor,U=new FormData;if(U.toString()===await new G(U).text())return!1;return!0}catch{return!0}})();return gM.set(X,z),z}var Cx=async($,X)=>{if(!await vx(X))throw new TypeError("The provided fetch function does not support file uploads with the current global FormData class.");let Y=new FormData;return await Promise.all(Object.entries($||{}).map(([z,G])=>Dw(Y,z,G))),Y},jx=($)=>$ instanceof Blob&&("name"in $);var Dw=async($,X,Y)=>{if(Y===void 0)return;if(Y==null)throw new TypeError(`Received null for "${X}"; to pass null in FormData, you must use the string 'null'`);if(typeof Y==="string"||typeof Y==="number"||typeof Y==="boolean")$.append(X,String(Y));else if(Y instanceof Response)$.append(X,NY([await Y.blob()],rG(Y)));else if(Nw(Y))$.append(X,NY([await new Response(_z(Y)).blob()],rG(Y)));else if(jx(Y))$.append(X,Y,rG(Y));else if(Array.isArray(Y))await Promise.all(Y.map((z)=>Dw($,X+"[]",z)));else if(typeof Y==="object")await Promise.all(Object.entries(Y).map(([z,G])=>Dw($,`${X}[${z}]`,G)));else throw new TypeError(`Invalid value given to form, expected a string, number, boolean, object, Array, File or Blob but got ${Y} instead`)};var yM=($)=>$!=null&&typeof $==="object"&&typeof $.size==="number"&&typeof $.type==="string"&&typeof $.text==="function"&&typeof $.slice==="function"&&typeof $.arrayBuffer==="function",Bx=($)=>$!=null&&typeof $==="object"&&typeof $.name==="string"&&typeof $.lastModified==="number"&&yM($),Ix=($)=>$!=null&&typeof $==="object"&&typeof $.url==="string"&&typeof $.blob==="function";async function Iz($,X,Y){if(Ew(),$=await $,Bx($)){if($ instanceof File)return $;return NY([await $.arrayBuffer()],$.name)}if(Ix($)){let G=await $.blob();return X||(X=new URL($.url).pathname.split(/[\\/]/).pop()),NY(await Fw(G),X,Y)}let z=await Fw($);if(X||(X=rG($)),!Y?.type){let G=z.find((U)=>typeof U==="object"&&("type"in U)&&U.type);if(typeof G==="string")Y={...Y,type:G}}return NY(z,X,Y)}async function Fw($){let X=[];if(typeof $==="string"||ArrayBuffer.isView($)||$ instanceof ArrayBuffer)X.push($);else if(yM($))X.push($ instanceof Blob?$:await $.arrayBuffer());else if(Nw($))for await(let Y of $)X.push(...await Fw(Y));else{let Y=$?.constructor?.name;throw new Error(`Unexpected data type: ${typeof $}${Y?`; constructor: ${Y}`:""}${xx($)}`)}return X}function xx($){if(typeof $!=="object"||$===null)return"";return`; props: [${Object.getOwnPropertyNames($).map((Y)=>`"${Y}"`).join(", ")}]`}class c{constructor($){this._client=$}}function mM($){return $.replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/g,encodeURIComponent)}var uM=Object.freeze(Object.create(null)),kx=($=mM)=>function X(Y,...z){if(Y.length===1)return Y[0];let G=!1,U=[],W=Y.reduce((O,w,V)=>{if(/[?#]/.test(w))G=!0;let D=z[V],E=(G?encodeURIComponent:$)(""+D);if(V!==z.length&&(D==null||typeof D==="object"&&D.toString===Object.getPrototypeOf(Object.getPrototypeOf(D.hasOwnProperty??uM)??uM)?.toString))E=D+"",U.push({start:O.length+w.length,length:E.length,error:`Value of type ${Object.prototype.toString.call(D).slice(8,-1)} is not a valid path parameter`});return O+w+(V===z.length?"":E)},""),Q=W.split(/[?#]/,1)[0],H=/(?<=^|\/)(?:\.|%2e){1,2}(?=\/|$)/gi,Z;while((Z=H.exec(Q))!==null)U.push({start:Z.index,length:Z[0].length,error:`Value "${Z[0]}" can't be safely passed as a path parameter`});if(U.sort((O,w)=>O.start-w.start),U.length>0){let O=0,w=U.reduce((V,D)=>{let E=" ".repeat(D.start-O),F="^".repeat(D.length);return O=D.start+D.length,V+E+F},"");throw new G$(`Path parameters result in path with invalid segments:
102
102
  ${U.map((V)=>V.error).join(`