@tokmizer/plugin 0.9.50 → 0.9.51

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.
@@ -1,28 +1,28 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __tkrCreateRequire } from "node:module"; const require = __tkrCreateRequire(import.meta.url);
3
- var Fs=Object.defineProperty;var S=(t,e,r)=>()=>{if(r)throw r[0];try{return t&&(e=t(t=0)),e}catch(n){throw r=[n],n}};var se=(t,e)=>{for(var r in e)Fs(t,r,{get:e[r],enumerable:!0})};var b,Lt,m,z,Ve=S(()=>{(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw new Error}t.assertNever=r,t.arrayToEnum=s=>{let i={};for(let a of s)i[a]=a;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(let o of i)a[o]=s[o];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},t.find=(s,i)=>{for(let a of s)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(b||(b={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Lt||(Lt={}));m=b.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),z=t=>{switch(typeof t){case"undefined":return m.undefined;case"string":return m.string;case"number":return Number.isNaN(t)?m.nan:m.number;case"boolean":return m.boolean;case"function":return m.function;case"bigint":return m.bigint;case"symbol":return m.symbol;case"object":return Array.isArray(t)?m.array:t===null?m.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?m.promise:typeof Map<"u"&&t instanceof Map?m.map:typeof Set<"u"&&t instanceof Set?m.set:typeof Date<"u"&&t instanceof Date?m.date:m.object;default:return m.unknown}}});var u,js,I,dt=S(()=>{Ve();u=b.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),js=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),I=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c<a.path.length;){let l=a.path[c];c===a.path.length-1?(o[l]=o[l]||{_errors:[]},o[l]._errors.push(r(a))):o[l]=o[l]||{_errors:[]},o=o[l],c++}}};return s(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,b.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];r[i]=r[i]||[],r[i].push(e(s))}else n.push(e(s));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};I.create=t=>new I(t)});var Ls,V,zt=S(()=>{dt();Ve();Ls=(t,e)=>{let r;switch(t.code){case u.invalid_type:t.received===m.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case u.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,b.jsonStringifyReplacer)}`;break;case u.unrecognized_keys:r=`Unrecognized key(s) in object: ${b.joinValues(t.keys,", ")}`;break;case u.invalid_union:r="Invalid input";break;case u.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${b.joinValues(t.options)}`;break;case u.invalid_enum_value:r=`Invalid enum value. Expected ${b.joinValues(t.options)}, received '${t.received}'`;break;case u.invalid_arguments:r="Invalid function arguments";break;case u.invalid_return_type:r="Invalid function return type";break;case u.invalid_date:r="Invalid date";break;case u.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:b.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case u.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case u.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case u.custom:r="Invalid input";break;case u.invalid_intersection_types:r="Intersection results could not be merged";break;case u.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case u.not_finite:r="Number must be finite";break;default:r=e.defaultError,b.assertNever(t)}return{message:r}},V=Ls});function zs(t){Vr=t}function Ee(){return Vr}var Vr,ft=S(()=>{zt();Vr=V});function p(t,e){let r=Ee(),n=He({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===V?void 0:V].filter(s=>!!s)});t.common.issues.push(n)}var He,Zs,C,g,ie,D,pt,mt,Y,Ae,Zt=S(()=>{ft();zt();He=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,i=[...r,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="",c=n.filter(l=>!!l).slice().reverse();for(let l of c)o=l(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}},Zs=[];C=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let s of r){if(s.status==="aborted")return g;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let i=await s.key,a=await s.value;n.push({key:i,value:a})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return g;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}},g=Object.freeze({status:"aborted"}),ie=t=>({status:"dirty",value:t}),D=t=>({status:"valid",value:t}),pt=t=>t.status==="aborted",mt=t=>t.status==="dirty",Y=t=>t.status==="valid",Ae=t=>typeof Promise<"u"&&t instanceof Promise});var Hr=S(()=>{});var h,Kr=S(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(h||(h={}))});function v(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(a,o)=>{let{message:c}=t;return a.code==="invalid_enum_value"?{message:c??o.defaultError}:typeof o.data>"u"?{message:c??n??o.defaultError}:a.code!=="invalid_type"?{message:o.defaultError}:{message:c??r??o.defaultError}},description:s}}function Jr(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function si(t){return new RegExp(`^${Jr(t)}$`)}function Yr(t){let e=`${qr}T${Jr(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function ii(t,e){return!!((e==="v4"||!e)&&Ys.test(t)||(e==="v6"||!e)&&Qs.test(t))}function ai(t,e){if(!Ws.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),s=JSON.parse(atob(n));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function oi(t,e){return!!((e==="v4"||!e)&&Xs.test(t)||(e==="v6"||!e)&&ei.test(t))}function ci(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function Te(t){if(t instanceof O){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=P.create(Te(n))}return new O({...t._def,shape:()=>e})}else return t instanceof W?new W({...t._def,type:Te(t.element)}):t instanceof P?P.create(Te(t.unwrap())):t instanceof B?B.create(Te(t.unwrap())):t instanceof Z?Z.create(t.items.map(e=>Te(e))):t}function Ut(t,e){let r=z(t),n=z(e);if(t===e)return{valid:!0,data:t};if(r===m.object&&n===m.object){let s=b.objectKeys(e),i=b.objectKeys(t).filter(o=>s.indexOf(o)!==-1),a={...t,...e};for(let o of i){let c=Ut(t[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(r===m.array&&n===m.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i<t.length;i++){let a=t[i],o=e[i],c=Ut(a,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return r===m.date&&n===m.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function Xr(t,e){return new ge({values:t,typeName:_.ZodEnum,...v(e)})}function Gr(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Qr(t,e={},r){return t?Q.create().superRefine((n,s)=>{let i=t(n);if(i instanceof Promise)return i.then(a=>{if(!a){let o=Gr(e,n),c=o.fatal??r??!0;s.addIssue({code:"custom",...o,fatal:c})}});if(!i){let a=Gr(e,n),o=a.fatal??r??!0;s.addIssue({code:"custom",...a,fatal:o})}}):Q.create()}var N,Wr,w,Bs,Us,Vs,Hs,Ks,Ws,Gs,qs,Js,Bt,Ys,Xs,Qs,ei,ti,ri,qr,ni,X,ae,oe,ce,ue,Re,le,de,Q,K,F,Ce,W,O,fe,H,ht,pe,Z,gt,De,Ie,yt,me,he,ge,ye,ee,M,P,B,_e,ve,Oe,ui,Ke,We,we,li,_,di,en,tn,fi,pi,rn,mi,hi,gi,yi,_i,vi,wi,ki,bi,xi,Si,Ei,Ai,Ti,Ri,Ci,Di,Ii,Oi,Pi,Ni,Mi,$i,Fi,ji,Li,zi,Zi,Bi,Ui,Vi,Hi,Ki,Wi,nn=S(()=>{dt();ft();Kr();Zt();Ve();N=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Wr=(t,e)=>{if(Y(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new I(t.common.issues);return this._error=r,this._error}}};w=class{get description(){return this._def.description}_getType(e){return z(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new C,ctx:{common:e.parent.common,data:e.data,parsedType:z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Ae(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)},s=this._parseSync({data:e,path:n.path,parent:n});return Wr(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Y(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Y(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Ae(s)?s:Promise.resolve(s));return Wr(n,i)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,i)=>{let a=e(s),o=()=>i.addIssue({code:u.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,r){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof r=="function"?r(n,s):r),!1))}_refinement(e){return new M({schema:this,typeName:_.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return P.create(this,this._def)}nullable(){return B.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return W.create(this)}promise(){return ee.create(this,this._def)}or(e){return fe.create([this,e],this._def)}and(e){return pe.create(this,e,this._def)}transform(e){return new M({...v(this._def),schema:this,typeName:_.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new _e({...v(this._def),innerType:this,defaultValue:r,typeName:_.ZodDefault})}brand(){return new Ke({typeName:_.ZodBranded,type:this,...v(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new ve({...v(this._def),innerType:this,catchValue:r,typeName:_.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return We.create(this,e)}readonly(){return we.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Bs=/^c[^\s-]{8,}$/i,Us=/^[0-9a-z]+$/,Vs=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Hs=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Ks=/^[a-z0-9_-]{21}$/i,Ws=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Gs=/^[-+]?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)?)??$/,qs=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Js="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ys=/^(?:(?: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])$/,Xs=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Qs=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ei=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ti=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ri=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,qr="((\\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])))",ni=new RegExp(`^${qr}$`);X=class t extends w{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==m.string){let i=this._getOrReturnCtx(e);return p(i,{code:u.invalid_type,expected:m.string,received:i.parsedType}),g}let n=new C,s;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:u.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:u.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let a=e.data.length>i.value,o=e.data.length<i.value;(a||o)&&(s=this._getOrReturnCtx(e,s),a?p(s,{code:u.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&p(s,{code:u.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")qs.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"email",code:u.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")Bt||(Bt=new RegExp(Js,"u")),Bt.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"emoji",code:u.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")Hs.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"uuid",code:u.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")Ks.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"nanoid",code:u.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")Bs.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cuid",code:u.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")Us.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cuid2",code:u.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")Vs.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"ulid",code:u.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),p(s,{validation:"url",code:u.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"regex",code:u.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),p(s,{code:u.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),p(s,{code:u.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),p(s,{code:u.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?Yr(i).test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:u.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?ni.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:u.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?si(i).test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:u.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?Gs.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"duration",code:u.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?ii(e.data,i.version)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"ip",code:u.invalid_string,message:i.message}),n.dirty()):i.kind==="jwt"?ai(e.data,i.alg)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"jwt",code:u.invalid_string,message:i.message}),n.dirty()):i.kind==="cidr"?oi(e.data,i.version)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cidr",code:u.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?ti.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"base64",code:u.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?ri.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"base64url",code:u.invalid_string,message:i.message}),n.dirty()):b.assertNever(i);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(s=>e.test(s),{validation:r,code:u.invalid_string,...h.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...h.errToObj(e)})}url(e){return this._addCheck({kind:"url",...h.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...h.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...h.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...h.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...h.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...h.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...h.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...h.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...h.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...h.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...h.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...h.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...h.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...h.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...h.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...h.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...h.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...h.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...h.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...h.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...h.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...h.errToObj(r)})}nonempty(e){return this.min(1,h.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};X.create=t=>new X({checks:[],typeName:_.ZodString,coerce:t?.coerce??!1,...v(t)});ae=class t extends w{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==m.number){let i=this._getOrReturnCtx(e);return p(i,{code:u.invalid_type,expected:m.number,received:i.parsedType}),g}let n,s=new C;for(let i of this._def.checks)i.kind==="int"?b.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),p(n,{code:u.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:u.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:u.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?ci(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),p(n,{code:u.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),p(n,{code:u.not_finite,message:i.message}),s.dirty()):b.assertNever(i);return{status:s.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,h.toString(r))}gt(e,r){return this.setLimit("min",e,!1,h.toString(r))}lte(e,r){return this.setLimit("max",e,!0,h.toString(r))}lt(e,r){return this.setLimit("max",e,!1,h.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:h.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:h.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:h.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:h.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:h.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:h.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:h.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:h.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:h.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:h.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&b.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};ae.create=t=>new ae({checks:[],typeName:_.ZodNumber,coerce:t?.coerce||!1,...v(t)});oe=class t extends w{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==m.bigint)return this._getInvalidInput(e);let n,s=new C;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:u.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:u.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),p(n,{code:u.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):b.assertNever(i);return{status:s.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return p(r,{code:u.invalid_type,expected:m.bigint,received:r.parsedType}),g}gte(e,r){return this.setLimit("min",e,!0,h.toString(r))}gt(e,r){return this.setLimit("min",e,!1,h.toString(r))}lte(e,r){return this.setLimit("max",e,!0,h.toString(r))}lt(e,r){return this.setLimit("max",e,!1,h.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:h.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:h.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:h.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:h.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:h.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:h.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};oe.create=t=>new oe({checks:[],typeName:_.ZodBigInt,coerce:t?.coerce??!1,...v(t)});ce=class extends w{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==m.boolean){let n=this._getOrReturnCtx(e);return p(n,{code:u.invalid_type,expected:m.boolean,received:n.parsedType}),g}return D(e.data)}};ce.create=t=>new ce({typeName:_.ZodBoolean,coerce:t?.coerce||!1,...v(t)});ue=class t extends w{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==m.date){let i=this._getOrReturnCtx(e);return p(i,{code:u.invalid_type,expected:m.date,received:i.parsedType}),g}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return p(i,{code:u.invalid_date}),g}let n=new C,s;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:u.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:u.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):b.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:h.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:h.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};ue.create=t=>new ue({checks:[],coerce:t?.coerce||!1,typeName:_.ZodDate,...v(t)});Re=class extends w{_parse(e){if(this._getType(e)!==m.symbol){let n=this._getOrReturnCtx(e);return p(n,{code:u.invalid_type,expected:m.symbol,received:n.parsedType}),g}return D(e.data)}};Re.create=t=>new Re({typeName:_.ZodSymbol,...v(t)});le=class extends w{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return p(n,{code:u.invalid_type,expected:m.undefined,received:n.parsedType}),g}return D(e.data)}};le.create=t=>new le({typeName:_.ZodUndefined,...v(t)});de=class extends w{_parse(e){if(this._getType(e)!==m.null){let n=this._getOrReturnCtx(e);return p(n,{code:u.invalid_type,expected:m.null,received:n.parsedType}),g}return D(e.data)}};de.create=t=>new de({typeName:_.ZodNull,...v(t)});Q=class extends w{constructor(){super(...arguments),this._any=!0}_parse(e){return D(e.data)}};Q.create=t=>new Q({typeName:_.ZodAny,...v(t)});K=class extends w{constructor(){super(...arguments),this._unknown=!0}_parse(e){return D(e.data)}};K.create=t=>new K({typeName:_.ZodUnknown,...v(t)});F=class extends w{_parse(e){let r=this._getOrReturnCtx(e);return p(r,{code:u.invalid_type,expected:m.never,received:r.parsedType}),g}};F.create=t=>new F({typeName:_.ZodNever,...v(t)});Ce=class extends w{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return p(n,{code:u.invalid_type,expected:m.void,received:n.parsedType}),g}return D(e.data)}};Ce.create=t=>new Ce({typeName:_.ZodVoid,...v(t)});W=class t extends w{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==m.array)return p(r,{code:u.invalid_type,expected:m.array,received:r.parsedType}),g;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,o=r.data.length<s.exactLength.value;(a||o)&&(p(r,{code:a?u.too_big:u.too_small,minimum:o?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&r.data.length<s.minLength.value&&(p(r,{code:u.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&r.data.length>s.maxLength.value&&(p(r,{code:u.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,o)=>s.type._parseAsync(new N(r,a,r.path,o)))).then(a=>C.mergeArray(n,a));let i=[...r.data].map((a,o)=>s.type._parseSync(new N(r,a,r.path,o)));return C.mergeArray(n,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:h.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:h.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:h.toString(r)}})}nonempty(e){return this.min(1,e)}};W.create=(t,e)=>new W({type:t,minLength:null,maxLength:null,exactLength:null,typeName:_.ZodArray,...v(e)});O=class t extends w{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=b.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==m.object){let l=this._getOrReturnCtx(e);return p(l,{code:u.invalid_type,expected:m.object,received:l.parsedType}),g}let{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),o=[];if(!(this._def.catchall instanceof F&&this._def.unknownKeys==="strip"))for(let l in s.data)a.includes(l)||o.push(l);let c=[];for(let l of a){let f=i[l],x=s.data[l];c.push({key:{status:"valid",value:l},value:f._parse(new N(s,x,s.path,l)),alwaysSet:l in s.data})}if(this._def.catchall instanceof F){let l=this._def.unknownKeys;if(l==="passthrough")for(let f of o)c.push({key:{status:"valid",value:f},value:{status:"valid",value:s.data[f]}});else if(l==="strict")o.length>0&&(p(s,{code:u.unrecognized_keys,keys:o}),n.dirty());else if(l!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let l=this._def.catchall;for(let f of o){let x=s.data[f];c.push({key:{status:"valid",value:f},value:l._parse(new N(s,x,s.path,f)),alwaysSet:f in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let l=[];for(let f of c){let x=await f.key,E=await f.value;l.push({key:x,value:E,alwaysSet:f.alwaysSet})}return l}).then(l=>C.mergeObjectSync(n,l)):C.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return h.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:h.errToObj(e).message??s}:{message:s}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:_.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of b.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of b.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Te(this)}partial(e){let r={};for(let n of b.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of b.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof P;)i=i._def.innerType;r[n]=i}return new t({...this._def,shape:()=>r})}keyof(){return Xr(b.objectKeys(this.shape))}};O.create=(t,e)=>new O({shape:()=>t,unknownKeys:"strip",catchall:F.create(),typeName:_.ZodObject,...v(e)});O.strictCreate=(t,e)=>new O({shape:()=>t,unknownKeys:"strict",catchall:F.create(),typeName:_.ZodObject,...v(e)});O.lazycreate=(t,e)=>new O({shape:t,unknownKeys:"strip",catchall:F.create(),typeName:_.ZodObject,...v(e)});fe=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(o=>new I(o.ctx.common.issues));return p(r,{code:u.invalid_union,unionErrors:a}),g}if(r.common.async)return Promise.all(n.map(async i=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(s);{let i,a=[];for(let c of n){let l={...r,common:{...r.common,issues:[]},parent:null},f=c._parseSync({data:r.data,path:r.path,parent:l});if(f.status==="valid")return f;f.status==="dirty"&&!i&&(i={result:f,ctx:l}),l.common.issues.length&&a.push(l.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(c=>new I(c));return p(r,{code:u.invalid_union,unionErrors:o}),g}}get options(){return this._def.options}};fe.create=(t,e)=>new fe({options:t,typeName:_.ZodUnion,...v(e)});H=t=>t instanceof me?H(t.schema):t instanceof M?H(t.innerType()):t instanceof he?[t.value]:t instanceof ge?t.options:t instanceof ye?b.objectValues(t.enum):t instanceof _e?H(t._def.innerType):t instanceof le?[void 0]:t instanceof de?[null]:t instanceof P?[void 0,...H(t.unwrap())]:t instanceof B?[null,...H(t.unwrap())]:t instanceof Ke||t instanceof we?H(t.unwrap()):t instanceof ve?H(t._def.innerType):[],ht=class t extends w{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.object)return p(r,{code:u.invalid_type,expected:m.object,received:r.parsedType}),g;let n=this.discriminator,s=r.data[n],i=this.optionsMap.get(s);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(p(r,{code:u.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),g)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let i of r){let a=H(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of a){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new t({typeName:_.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,...v(n)})}};pe=class extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=(i,a)=>{if(pt(i)||pt(a))return g;let o=Ut(i.value,a.value);return o.valid?((mt(i)||mt(a))&&r.dirty(),{status:r.value,value:o.data}):(p(n,{code:u.invalid_intersection_types}),g)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};pe.create=(t,e,r)=>new pe({left:t,right:e,typeName:_.ZodIntersection,...v(r)});Z=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.array)return p(n,{code:u.invalid_type,expected:m.array,received:n.parsedType}),g;if(n.data.length<this._def.items.length)return p(n,{code:u.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;!this._def.rest&&n.data.length>this._def.items.length&&(p(n,{code:u.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...n.data].map((a,o)=>{let c=this._def.items[o]||this._def.rest;return c?c._parse(new N(n,a,n.path,o)):null}).filter(a=>!!a);return n.common.async?Promise.all(i).then(a=>C.mergeArray(r,a)):C.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Z.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Z({items:t,typeName:_.ZodTuple,rest:null,...v(e)})};gt=class t extends w{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.object)return p(n,{code:u.invalid_type,expected:m.object,received:n.parsedType}),g;let s=[],i=this._def.keyType,a=this._def.valueType;for(let o in n.data)s.push({key:i._parse(new N(n,o,n.path,o)),value:a._parse(new N(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?C.mergeObjectAsync(r,s):C.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof w?new t({keyType:e,valueType:r,typeName:_.ZodRecord,...v(n)}):new t({keyType:X.create(),valueType:e,typeName:_.ZodRecord,...v(r)})}},De=class extends w{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.map)return p(n,{code:u.invalid_type,expected:m.map,received:n.parsedType}),g;let s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],l)=>({key:s._parse(new N(n,o,n.path,[l,"key"])),value:i._parse(new N(n,c,n.path,[l,"value"]))}));if(n.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let c of a){let l=await c.key,f=await c.value;if(l.status==="aborted"||f.status==="aborted")return g;(l.status==="dirty"||f.status==="dirty")&&r.dirty(),o.set(l.value,f.value)}return{status:r.value,value:o}})}else{let o=new Map;for(let c of a){let l=c.key,f=c.value;if(l.status==="aborted"||f.status==="aborted")return g;(l.status==="dirty"||f.status==="dirty")&&r.dirty(),o.set(l.value,f.value)}return{status:r.value,value:o}}}};De.create=(t,e,r)=>new De({valueType:e,keyType:t,typeName:_.ZodMap,...v(r)});Ie=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.set)return p(n,{code:u.invalid_type,expected:m.set,received:n.parsedType}),g;let s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(p(n,{code:u.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),r.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(p(n,{code:u.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let l=new Set;for(let f of c){if(f.status==="aborted")return g;f.status==="dirty"&&r.dirty(),l.add(f.value)}return{status:r.value,value:l}}let o=[...n.data.values()].map((c,l)=>i._parse(new N(n,c,n.path,l)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,r){return new t({...this._def,minSize:{value:e,message:h.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:h.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Ie.create=(t,e)=>new Ie({valueType:t,minSize:null,maxSize:null,typeName:_.ZodSet,...v(e)});yt=class t extends w{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.function)return p(r,{code:u.invalid_type,expected:m.function,received:r.parsedType}),g;function n(o,c){return He({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ee(),V].filter(l=>!!l),issueData:{code:u.invalid_arguments,argumentsError:c}})}function s(o,c){return He({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ee(),V].filter(l=>!!l),issueData:{code:u.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof ee){let o=this;return D(async function(...c){let l=new I([]),f=await o._def.args.parseAsync(c,i).catch(A=>{throw l.addIssue(n(c,A)),l}),x=await Reflect.apply(a,this,f);return await o._def.returns._def.type.parseAsync(x,i).catch(A=>{throw l.addIssue(s(x,A)),l})})}else{let o=this;return D(function(...c){let l=o._def.args.safeParse(c,i);if(!l.success)throw new I([n(c,l.error)]);let f=Reflect.apply(a,this,l.data),x=o._def.returns.safeParse(f,i);if(!x.success)throw new I([s(f,x.error)]);return x.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Z.create(e).rest(K.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Z.create([]).rest(K.create()),returns:r||K.create(),typeName:_.ZodFunction,...v(n)})}},me=class extends w{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};me.create=(t,e)=>new me({getter:t,typeName:_.ZodLazy,...v(e)});he=class extends w{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return p(r,{received:r.data,code:u.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:e.data}}get value(){return this._def.value}};he.create=(t,e)=>new he({value:t,typeName:_.ZodLiteral,...v(e)});ge=class t extends w{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return p(r,{expected:b.joinValues(n),received:r.parsedType,code:u.invalid_type}),g}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return p(r,{received:r.data,code:u.invalid_enum_value,options:n}),g}return D(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};ge.create=Xr;ye=class extends w{_parse(e){let r=b.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==m.string&&n.parsedType!==m.number){let s=b.objectValues(r);return p(n,{expected:b.joinValues(s),received:n.parsedType,code:u.invalid_type}),g}if(this._cache||(this._cache=new Set(b.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=b.objectValues(r);return p(n,{received:n.data,code:u.invalid_enum_value,options:s}),g}return D(e.data)}get enum(){return this._def.values}};ye.create=(t,e)=>new ye({values:t,typeName:_.ZodNativeEnum,...v(e)});ee=class extends w{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.promise&&r.common.async===!1)return p(r,{code:u.invalid_type,expected:m.promise,received:r.parsedType}),g;let n=r.parsedType===m.promise?r.data:Promise.resolve(r.data);return D(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};ee.create=(t,e)=>new ee({type:t,typeName:_.ZodPromise,...v(e)});M=class extends w{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{p(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(r.value==="aborted")return g;let c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?g:c.status==="dirty"?ie(c.value):r.value==="dirty"?ie(c.value):c});{if(r.value==="aborted")return g;let o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?g:o.status==="dirty"?ie(o.value):r.value==="dirty"?ie(o.value):o}}if(s.type==="refinement"){let a=o=>{let c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value).then(()=>({status:r.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Y(a))return g;let o=s.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>Y(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:r.value,value:o})):g);b.assertNever(s)}};M.create=(t,e,r)=>new M({schema:t,typeName:_.ZodEffects,effect:e,...v(r)});M.createWithPreprocess=(t,e,r)=>new M({schema:e,effect:{type:"preprocess",transform:t},typeName:_.ZodEffects,...v(r)});P=class extends w{_parse(e){return this._getType(e)===m.undefined?D(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};P.create=(t,e)=>new P({innerType:t,typeName:_.ZodOptional,...v(e)});B=class extends w{_parse(e){return this._getType(e)===m.null?D(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};B.create=(t,e)=>new B({innerType:t,typeName:_.ZodNullable,...v(e)});_e=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===m.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};_e.create=(t,e)=>new _e({innerType:t,typeName:_.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...v(e)});ve=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Ae(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new I(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new I(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};ve.create=(t,e)=>new ve({innerType:t,typeName:_.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...v(e)});Oe=class extends w{_parse(e){if(this._getType(e)!==m.nan){let n=this._getOrReturnCtx(e);return p(n,{code:u.invalid_type,expected:m.nan,received:n.parsedType}),g}return{status:"valid",value:e.data}}};Oe.create=t=>new Oe({typeName:_.ZodNaN,...v(t)});ui=Symbol("zod_brand"),Ke=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},We=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?g:i.status==="dirty"?(r.dirty(),ie(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?g:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:_.ZodPipeline})}},we=class extends w{_parse(e){let r=this._def.innerType._parse(e),n=s=>(Y(s)&&(s.value=Object.freeze(s.value)),s);return Ae(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};we.create=(t,e)=>new we({innerType:t,typeName:_.ZodReadonly,...v(e)});li={object:O.lazycreate};(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(_||(_={}));di=(t,e={message:`Input not instance of ${t.name}`})=>Qr(r=>r instanceof t,e),en=X.create,tn=ae.create,fi=Oe.create,pi=oe.create,rn=ce.create,mi=ue.create,hi=Re.create,gi=le.create,yi=de.create,_i=Q.create,vi=K.create,wi=F.create,ki=Ce.create,bi=W.create,xi=O.create,Si=O.strictCreate,Ei=fe.create,Ai=ht.create,Ti=pe.create,Ri=Z.create,Ci=gt.create,Di=De.create,Ii=Ie.create,Oi=yt.create,Pi=me.create,Ni=he.create,Mi=ge.create,$i=ye.create,Fi=ee.create,ji=M.create,Li=P.create,zi=B.create,Zi=M.createWithPreprocess,Bi=We.create,Ui=()=>en().optional(),Vi=()=>tn().optional(),Hi=()=>rn().optional(),Ki={string:(t=>X.create({...t,coerce:!0})),number:(t=>ae.create({...t,coerce:!0})),boolean:(t=>ce.create({...t,coerce:!0})),bigint:(t=>oe.create({...t,coerce:!0})),date:(t=>ue.create({...t,coerce:!0}))},Wi=g});var d={};se(d,{BRAND:()=>ui,DIRTY:()=>ie,EMPTY_PATH:()=>Zs,INVALID:()=>g,NEVER:()=>Wi,OK:()=>D,ParseStatus:()=>C,Schema:()=>w,ZodAny:()=>Q,ZodArray:()=>W,ZodBigInt:()=>oe,ZodBoolean:()=>ce,ZodBranded:()=>Ke,ZodCatch:()=>ve,ZodDate:()=>ue,ZodDefault:()=>_e,ZodDiscriminatedUnion:()=>ht,ZodEffects:()=>M,ZodEnum:()=>ge,ZodError:()=>I,ZodFirstPartyTypeKind:()=>_,ZodFunction:()=>yt,ZodIntersection:()=>pe,ZodIssueCode:()=>u,ZodLazy:()=>me,ZodLiteral:()=>he,ZodMap:()=>De,ZodNaN:()=>Oe,ZodNativeEnum:()=>ye,ZodNever:()=>F,ZodNull:()=>de,ZodNullable:()=>B,ZodNumber:()=>ae,ZodObject:()=>O,ZodOptional:()=>P,ZodParsedType:()=>m,ZodPipeline:()=>We,ZodPromise:()=>ee,ZodReadonly:()=>we,ZodRecord:()=>gt,ZodSchema:()=>w,ZodSet:()=>Ie,ZodString:()=>X,ZodSymbol:()=>Re,ZodTransformer:()=>M,ZodTuple:()=>Z,ZodType:()=>w,ZodUndefined:()=>le,ZodUnion:()=>fe,ZodUnknown:()=>K,ZodVoid:()=>Ce,addIssueToContext:()=>p,any:()=>_i,array:()=>bi,bigint:()=>pi,boolean:()=>rn,coerce:()=>Ki,custom:()=>Qr,date:()=>mi,datetimeRegex:()=>Yr,defaultErrorMap:()=>V,discriminatedUnion:()=>Ai,effect:()=>ji,enum:()=>Mi,function:()=>Oi,getErrorMap:()=>Ee,getParsedType:()=>z,instanceof:()=>di,intersection:()=>Ti,isAborted:()=>pt,isAsync:()=>Ae,isDirty:()=>mt,isValid:()=>Y,late:()=>li,lazy:()=>Pi,literal:()=>Ni,makeIssue:()=>He,map:()=>Di,nan:()=>fi,nativeEnum:()=>$i,never:()=>wi,null:()=>yi,nullable:()=>zi,number:()=>tn,object:()=>xi,objectUtil:()=>Lt,oboolean:()=>Hi,onumber:()=>Vi,optional:()=>Li,ostring:()=>Ui,pipeline:()=>Bi,preprocess:()=>Zi,promise:()=>Fi,quotelessJson:()=>js,record:()=>Ci,set:()=>Ii,setErrorMap:()=>zs,strictObject:()=>Si,string:()=>en,symbol:()=>hi,transformer:()=>ji,tuple:()=>Ri,undefined:()=>gi,union:()=>Ei,unknown:()=>vi,util:()=>b,void:()=>ki});var Vt=S(()=>{ft();Zt();Hr();Ve();nn();dt()});var Pe=S(()=>{Vt();Vt()});var _t,Ht=S(()=>{"use strict";Pe();_t=d.object({slug:d.string().min(1).max(64),description:d.string().max(255).optional(),match_command:d.string().min(1),priority:d.number().int().default(50),strip_ansi:d.boolean().default(!1),strip_lines_matching:d.array(d.string()).default([]),keep_failures:d.boolean().default(!1),fold_passing:d.boolean().default(!1),fold_passing_threshold:d.number().int().positive().max(1e3).optional(),mask_abs_paths:d.boolean().default(!1),preserve_exact:d.boolean().default(!1),truncate_lines_at:d.number().int().positive().max(1e4).optional(),max_lines:d.number().int().positive().max(1e5).optional(),scale_with_level:d.boolean().default(!0),transform:d.string().max(64).optional(),on_empty:d.string().max(255).optional()})});function te(t){return JSON.stringify(t)+Ne}function*vt(t){let e=0;for(;;){let r=t.indexOf(Ne,e);if(r<0)return;yield t.slice(e,r),e=r+1}}function Ge(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}var Gi,qi,Ji,Yi,sn,vu,wu,an,Ne,on,Kt=S(()=>{"use strict";Pe();Ht();Gi=d.object({id:d.string().min(1).max(64),op:d.literal("filter"),cmd:d.string().min(1).max(2048),plan:d.enum(["trial","smart","pro"]),allowed:d.array(d.string().min(1).max(64)).max(512).optional(),installId:d.string().min(1).max(64).optional()}),qi=d.object({id:d.string().min(1).max(64),op:d.literal("ping")}),Ji=d.object({id:d.string().min(1).max(64),op:d.literal("shutdown"),installId:d.string().min(1).max(64)}),Yi=d.object({id:d.string().min(1).max(64),op:d.literal("reload"),installId:d.string().min(1).max(64).optional()}),sn=d.discriminatedUnion("op",[Gi,qi,Ji,Yi]),vu=d.object({id:d.string(),ok:d.literal(!0),data:d.unknown()}),wu=d.object({id:d.string(),ok:d.literal(!1),err:d.string(),retryAfterMs:d.number().int().nonnegative().optional()}),an=d.object({filter:_t.nullable(),cacheHit:d.boolean().optional()}),Ne=`
4
- `,on=64*1024});import cn from"node:os";import{join as G}from"node:path";function k(){return process.env.TOKMIZER_HOME||G(cn.homedir(),".tokmizer")}function qe(){return G(k(),"install-id")}function Wt(){return G(k(),"bundle-refresh.json")}function wt(){return G(k(),"skills")}function Je(t){return G(wt(),`${t}.md`)}function Gt(){return G(k(),"content-cache")}function qt(){return G(k(),"managed-commands.json")}function Jt(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||G(cn.homedir(),".claude","commands")}function Me(t){return G(Jt(),`${t}.md`)}var $=S(()=>{"use strict"});import Xi from"node:os";import{join as Ye}from"node:path";import{existsSync as Qi,statSync as ea,lstatSync as un,unlinkSync as ta,mkdirSync as ra,chmodSync as na}from"node:fs";import{createHash as sa}from"node:crypto";function ia(t){let e=sa("sha256").update(k()).digest("hex").slice(0,8),r=Ye(Xi.tmpdir(),`tkr-${t}-${e}`),n=Ye(r,"d.sock");if(Buffer.byteLength(n)>Yt)throw new Error("Temporary directory path is too long for IPC");return ln(r,t),n}function aa(t,e){try{let r=un(t);return r.isDirectory()&&r.uid===e&&(r.mode&63)===0}catch{return!1}}function ln(t,e){ra(t,{recursive:!0,mode:448});let r=un(t);if(!r.isDirectory()||r.uid!==e)throw new Error("Unsafe IPC directory");na(t,448)}function ke(){if(process.platform==="win32")return{path:`\\\\.\\pipe\\tokmizer-${process.env.USERNAME??"tokmizer"}`,isPipe:!0};let t=typeof process.getuid=="function"?process.getuid():0,e=process.env.XDG_RUNTIME_DIR;if(e&&aa(e,t)){let s=Ye(e,`tokmizer-${t}.sock`);if(Buffer.byteLength(s)<=Yt)return{path:s,isPipe:!1}}let r=Ye(k(),"run"),n=Ye(r,"daemon.sock");return Buffer.byteLength(n)>Yt?{path:ia(t),isPipe:!1}:(ln(r,t),{path:n,isPipe:!1})}async function Xe(){let{path:t,isPipe:e}=ke();if(e||!Qi(t))return;try{if(!ea(t).isSocket())return}catch{return}let r=await import("node:net");if(!await new Promise(s=>{let i=r.createConnection(t),a=o=>{i.removeAllListeners();try{i.destroy()}catch{}s(o)};i.once("connect",()=>a(!0)),i.once("error",o=>{let c=o.code;a(c!=="ECONNREFUSED"&&c!=="ENOENT")}),setTimeout(()=>a(!0),250)}))try{ta(t)}catch{}}function pn(){let t=process.ppid;if(!t||t===1)return!1;try{return process.kill(t,0),!0}catch{return!1}}var Yt,dn,fn,Xt=S(()=>{"use strict";$();Yt=100;dn=3e4,fn=5*6e4});import{createHash as oa}from"node:crypto";function be(t){let e=mn.get(t);return e||(e=oa("sha256").update(`tkr:${t}`).digest("hex").slice(0,16),mn.set(t,e)),e}var ca,ua,Qt,mn,Qe=S(()=>{"use strict";Pe();ca=d.enum(["normal","compact","minimal"]),ua=d.enum(["off","light","balanced","max"]),Qt=d.object({enabled:d.boolean().default(!0),telemetryOptIn:d.boolean().default(!0),outputVerbosity:ca.default("compact"),reducer:ua.default("off"),filters:d.object({enableAll:d.boolean().default(!0),disabled:d.array(d.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),mn=new Map});function da(t){if(!t)return"*";let e=hn.get(t);return e===void 0&&(e=[...t].join(","),hn.set(t,e)),e}function gn(t,e,r){let n=`${t}::${da(r)}`,s=$e.get(n);if(s!==void 0)return s;let i=null;for(let a of e)r&&!r.has(be(a.slug))||a.matchRegex.test(t)&&(!i||a.priority>i.priority)&&(i=a);if($e.size>=la){let a=$e.keys().next().value;a&&$e.delete(a)}return $e.set(n,i),i}function yn(){$e.clear()}var $e,la,hn,_n=S(()=>{"use strict";Qe();$e=new Map,la=256,hn=new WeakMap});import{join as er}from"node:path";import{mkdir as fa,readFile as pa,writeFile as ma,unlink as vn,rename as ha}from"node:fs/promises";function kt(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function rr(t){return t?.dir??k()}async function R(t){let e=rr(t);try{let r=await pa(er(e,tr),"utf8"),n=JSON.parse(r);return{...n,lastSettingsRevision:n.lastSettingsRevision??0,timeZone:n.timeZone??kt(),bonusActive:n.bonusActive??!1,...n.bonusResetAt!==void 0?{bonusResetAt:n.bonusResetAt}:{}}}catch{return null}}async function nr(t,e){let r=rr(e);await fa(r,{recursive:!0}),t.installedAt==null&&(t.installedAt=Math.floor(Date.now()/1e3));let n=er(r,tr),s=`${n}.tmp-${process.pid}-${process.hrtime.bigint()}`;await ma(s,JSON.stringify(t,null,2),{mode:384});try{await ha(s,n)}catch(i){try{await vn(s)}catch{}throw i}}async function wn(t){let e=rr(t);try{await vn(er(e,tr))}catch{return}}var tr,re=S(()=>{"use strict";$();tr="state.json"});import{createRequire as ga}from"node:module";function _a(){for(let t of["../package.json","../../package.json"])try{let e=ya(t).version;if(typeof e=="string"&&e)return e}catch{}return"0.0.0"}function bt(t,e){if(!t||!e)return!1;let r=t.split(".").map(s=>parseInt(s,10)),n=e.split(".").map(s=>parseInt(s,10));for(let s=0;s<3;s+=1){let i=r[s]??0,a=n[s]??0;if(Number.isNaN(i)||Number.isNaN(a))return!1;if(i<a)return!0;if(i>a)return!1}return!1}var ya,q,Fe=S(()=>{"use strict";ya=ga(import.meta.url);q=_a()});var kn,bn=S(()=>{"use strict";kn=`-----BEGIN PUBLIC KEY-----
3
+ var Hs=Object.defineProperty;var E=(t,e,r)=>()=>{if(r)throw r[0];try{return t&&(e=t(t=0)),e}catch(n){throw r=[n],n}};var ie=(t,e)=>{for(var r in e)Hs(t,r,{get:e[r],enumerable:!0})};var x,Bt,m,z,Ke=E(()=>{(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw new Error}t.assertNever=r,t.arrayToEnum=s=>{let i={};for(let a of s)i[a]=a;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(let o of i)a[o]=s[o];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},t.find=(s,i)=>{for(let a of s)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(x||(x={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Bt||(Bt={}));m=x.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),z=t=>{switch(typeof t){case"undefined":return m.undefined;case"string":return m.string;case"number":return Number.isNaN(t)?m.nan:m.number;case"boolean":return m.boolean;case"function":return m.function;case"bigint":return m.bigint;case"symbol":return m.symbol;case"object":return Array.isArray(t)?m.array:t===null?m.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?m.promise:typeof Map<"u"&&t instanceof Map?m.map:typeof Set<"u"&&t instanceof Set?m.set:typeof Date<"u"&&t instanceof Date?m.date:m.object;default:return m.unknown}}});var l,Ks,D,pt=E(()=>{Ke();l=x.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Ks=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),D=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c<a.path.length;){let u=a.path[c];c===a.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(r(a))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,x.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];r[i]=r[i]||[],r[i].push(e(s))}else n.push(e(s));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};D.create=t=>new D(t)});var Ws,V,Ut=E(()=>{pt();Ke();Ws=(t,e)=>{let r;switch(t.code){case l.invalid_type:t.received===m.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case l.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,x.jsonStringifyReplacer)}`;break;case l.unrecognized_keys:r=`Unrecognized key(s) in object: ${x.joinValues(t.keys,", ")}`;break;case l.invalid_union:r="Invalid input";break;case l.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${x.joinValues(t.options)}`;break;case l.invalid_enum_value:r=`Invalid enum value. Expected ${x.joinValues(t.options)}, received '${t.received}'`;break;case l.invalid_arguments:r="Invalid function arguments";break;case l.invalid_return_type:r="Invalid function return type";break;case l.invalid_date:r="Invalid date";break;case l.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:x.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case l.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case l.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case l.custom:r="Invalid input";break;case l.invalid_intersection_types:r="Intersection results could not be merged";break;case l.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case l.not_finite:r="Number must be finite";break;default:r=e.defaultError,x.assertNever(t)}return{message:r}},V=Ws});function Gs(t){Wr=t}function Ae(){return Wr}var Wr,mt=E(()=>{Ut();Wr=V});function p(t,e){let r=Ae(),n=We({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===V?void 0:V].filter(s=>!!s)});t.common.issues.push(n)}var We,qs,C,g,ae,I,ht,gt,Y,Te,Vt=E(()=>{mt();Ut();We=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,i=[...r,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)o=u(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}},qs=[];C=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let s of r){if(s.status==="aborted")return g;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let i=await s.key,a=await s.value;n.push({key:i,value:a})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return g;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}},g=Object.freeze({status:"aborted"}),ae=t=>({status:"dirty",value:t}),I=t=>({status:"valid",value:t}),ht=t=>t.status==="aborted",gt=t=>t.status==="dirty",Y=t=>t.status==="valid",Te=t=>typeof Promise<"u"&&t instanceof Promise});var Gr=E(()=>{});var h,qr=E(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(h||(h={}))});function v(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(a,o)=>{let{message:c}=t;return a.code==="invalid_enum_value"?{message:c??o.defaultError}:typeof o.data>"u"?{message:c??n??o.defaultError}:a.code!=="invalid_type"?{message:o.defaultError}:{message:c??r??o.defaultError}},description:s}}function Qr(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function fi(t){return new RegExp(`^${Qr(t)}$`)}function en(t){let e=`${Xr}T${Qr(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function pi(t,e){return!!((e==="v4"||!e)&&ii.test(t)||(e==="v6"||!e)&&oi.test(t))}function mi(t,e){if(!ti.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),s=JSON.parse(atob(n));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function hi(t,e){return!!((e==="v4"||!e)&&ai.test(t)||(e==="v6"||!e)&&ci.test(t))}function gi(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function Re(t){if(t instanceof O){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=N.create(Re(n))}return new O({...t._def,shape:()=>e})}else return t instanceof W?new W({...t._def,type:Re(t.element)}):t instanceof N?N.create(Re(t.unwrap())):t instanceof B?B.create(Re(t.unwrap())):t instanceof Z?Z.create(t.items.map(e=>Re(e))):t}function Kt(t,e){let r=z(t),n=z(e);if(t===e)return{valid:!0,data:t};if(r===m.object&&n===m.object){let s=x.objectKeys(e),i=x.objectKeys(t).filter(o=>s.indexOf(o)!==-1),a={...t,...e};for(let o of i){let c=Kt(t[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(r===m.array&&n===m.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i<t.length;i++){let a=t[i],o=e[i],c=Kt(a,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return r===m.date&&n===m.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function tn(t,e){return new ye({values:t,typeName:_.ZodEnum,...v(e)})}function Yr(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function rn(t,e={},r){return t?Q.create().superRefine((n,s)=>{let i=t(n);if(i instanceof Promise)return i.then(a=>{if(!a){let o=Yr(e,n),c=o.fatal??r??!0;s.addIssue({code:"custom",...o,fatal:c})}});if(!i){let a=Yr(e,n),o=a.fatal??r??!0;s.addIssue({code:"custom",...a,fatal:o})}}):Q.create()}var M,Jr,k,Js,Ys,Xs,Qs,ei,ti,ri,ni,si,Ht,ii,ai,oi,ci,ui,li,Xr,di,X,oe,ce,ue,le,Ce,de,fe,Q,K,F,Ie,W,O,pe,H,yt,me,Z,_t,De,Oe,vt,he,ge,ye,_e,ee,$,N,B,ve,we,Pe,yi,Ge,qe,ke,_i,_,vi,nn,sn,wi,ki,an,bi,xi,Ei,Si,Ai,Ti,Ri,Ci,Ii,Di,Oi,Pi,Ni,Mi,$i,Fi,ji,Li,zi,Zi,Bi,Ui,Vi,Hi,Ki,Wi,Gi,qi,Ji,Yi,Xi,Qi,ea,ta,on=E(()=>{pt();mt();qr();Vt();Ke();M=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Jr=(t,e)=>{if(Y(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new D(t.common.issues);return this._error=r,this._error}}};k=class{get description(){return this._def.description}_getType(e){return z(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new C,ctx:{common:e.parent.common,data:e.data,parsedType:z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Te(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)},s=this._parseSync({data:e,path:n.path,parent:n});return Jr(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Y(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Y(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:z(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Te(s)?s:Promise.resolve(s));return Jr(n,i)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,i)=>{let a=e(s),o=()=>i.addIssue({code:l.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,r){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof r=="function"?r(n,s):r),!1))}_refinement(e){return new $({schema:this,typeName:_.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return N.create(this,this._def)}nullable(){return B.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return W.create(this)}promise(){return ee.create(this,this._def)}or(e){return pe.create([this,e],this._def)}and(e){return me.create(this,e,this._def)}transform(e){return new $({...v(this._def),schema:this,typeName:_.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new ve({...v(this._def),innerType:this,defaultValue:r,typeName:_.ZodDefault})}brand(){return new Ge({typeName:_.ZodBranded,type:this,...v(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new we({...v(this._def),innerType:this,catchValue:r,typeName:_.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return qe.create(this,e)}readonly(){return ke.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Js=/^c[^\s-]{8,}$/i,Ys=/^[0-9a-z]+$/,Xs=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Qs=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,ei=/^[a-z0-9_-]{21}$/i,ti=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ri=/^[-+]?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)?)??$/,ni=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,si="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ii=/^(?:(?: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])$/,ai=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,oi=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ci=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ui=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,li=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Xr="((\\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])))",di=new RegExp(`^${Xr}$`);X=class t extends k{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==m.string){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_type,expected:m.string,received:i.parsedType}),g}let n=new C,s;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let a=e.data.length>i.value,o=e.data.length<i.value;(a||o)&&(s=this._getOrReturnCtx(e,s),a?p(s,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&p(s,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")ni.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"email",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")Ht||(Ht=new RegExp(si,"u")),Ht.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"emoji",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")Qs.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"uuid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")ei.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"nanoid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")Js.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cuid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")Ys.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cuid2",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")Xs.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"ulid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),p(s,{validation:"url",code:l.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"regex",code:l.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),p(s,{code:l.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),p(s,{code:l.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),p(s,{code:l.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?en(i).test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:l.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?di.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:l.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?fi(i).test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{code:l.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?ri.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"duration",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?pi(e.data,i.version)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"ip",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="jwt"?mi(e.data,i.alg)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"jwt",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="cidr"?hi(e.data,i.version)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"cidr",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?ui.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"base64",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?li.test(e.data)||(s=this._getOrReturnCtx(e,s),p(s,{validation:"base64url",code:l.invalid_string,message:i.message}),n.dirty()):x.assertNever(i);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(s=>e.test(s),{validation:r,code:l.invalid_string,...h.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...h.errToObj(e)})}url(e){return this._addCheck({kind:"url",...h.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...h.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...h.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...h.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...h.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...h.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...h.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...h.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...h.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...h.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...h.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...h.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...h.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...h.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...h.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...h.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...h.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...h.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...h.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...h.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...h.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...h.errToObj(r)})}nonempty(e){return this.min(1,h.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};X.create=t=>new X({checks:[],typeName:_.ZodString,coerce:t?.coerce??!1,...v(t)});oe=class t extends k{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==m.number){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_type,expected:m.number,received:i.parsedType}),g}let n,s=new C;for(let i of this._def.checks)i.kind==="int"?x.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),p(n,{code:l.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:l.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:l.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?gi(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),p(n,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),p(n,{code:l.not_finite,message:i.message}),s.dirty()):x.assertNever(i);return{status:s.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,h.toString(r))}gt(e,r){return this.setLimit("min",e,!1,h.toString(r))}lte(e,r){return this.setLimit("max",e,!0,h.toString(r))}lt(e,r){return this.setLimit("max",e,!1,h.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:h.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:h.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:h.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:h.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:h.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:h.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:h.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:h.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:h.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:h.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&x.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};oe.create=t=>new oe({checks:[],typeName:_.ZodNumber,coerce:t?.coerce||!1,...v(t)});ce=class t extends k{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==m.bigint)return this._getInvalidInput(e);let n,s=new C;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:l.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),p(n,{code:l.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),p(n,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):x.assertNever(i);return{status:s.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.bigint,received:r.parsedType}),g}gte(e,r){return this.setLimit("min",e,!0,h.toString(r))}gt(e,r){return this.setLimit("min",e,!1,h.toString(r))}lte(e,r){return this.setLimit("max",e,!0,h.toString(r))}lt(e,r){return this.setLimit("max",e,!1,h.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:h.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:h.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:h.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:h.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:h.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:h.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};ce.create=t=>new ce({checks:[],typeName:_.ZodBigInt,coerce:t?.coerce??!1,...v(t)});ue=class extends k{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==m.boolean){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.boolean,received:n.parsedType}),g}return I(e.data)}};ue.create=t=>new ue({typeName:_.ZodBoolean,coerce:t?.coerce||!1,...v(t)});le=class t extends k{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==m.date){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_type,expected:m.date,received:i.parsedType}),g}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_date}),g}let n=new C,s;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:l.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),p(s,{code:l.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):x.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:h.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:h.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};le.create=t=>new le({checks:[],coerce:t?.coerce||!1,typeName:_.ZodDate,...v(t)});Ce=class extends k{_parse(e){if(this._getType(e)!==m.symbol){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.symbol,received:n.parsedType}),g}return I(e.data)}};Ce.create=t=>new Ce({typeName:_.ZodSymbol,...v(t)});de=class extends k{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.undefined,received:n.parsedType}),g}return I(e.data)}};de.create=t=>new de({typeName:_.ZodUndefined,...v(t)});fe=class extends k{_parse(e){if(this._getType(e)!==m.null){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.null,received:n.parsedType}),g}return I(e.data)}};fe.create=t=>new fe({typeName:_.ZodNull,...v(t)});Q=class extends k{constructor(){super(...arguments),this._any=!0}_parse(e){return I(e.data)}};Q.create=t=>new Q({typeName:_.ZodAny,...v(t)});K=class extends k{constructor(){super(...arguments),this._unknown=!0}_parse(e){return I(e.data)}};K.create=t=>new K({typeName:_.ZodUnknown,...v(t)});F=class extends k{_parse(e){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.never,received:r.parsedType}),g}};F.create=t=>new F({typeName:_.ZodNever,...v(t)});Ie=class extends k{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.void,received:n.parsedType}),g}return I(e.data)}};Ie.create=t=>new Ie({typeName:_.ZodVoid,...v(t)});W=class t extends k{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==m.array)return p(r,{code:l.invalid_type,expected:m.array,received:r.parsedType}),g;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,o=r.data.length<s.exactLength.value;(a||o)&&(p(r,{code:a?l.too_big:l.too_small,minimum:o?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&r.data.length<s.minLength.value&&(p(r,{code:l.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&r.data.length>s.maxLength.value&&(p(r,{code:l.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,o)=>s.type._parseAsync(new M(r,a,r.path,o)))).then(a=>C.mergeArray(n,a));let i=[...r.data].map((a,o)=>s.type._parseSync(new M(r,a,r.path,o)));return C.mergeArray(n,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:h.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:h.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:h.toString(r)}})}nonempty(e){return this.min(1,e)}};W.create=(t,e)=>new W({type:t,minLength:null,maxLength:null,exactLength:null,typeName:_.ZodArray,...v(e)});O=class t extends k{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=x.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==m.object){let u=this._getOrReturnCtx(e);return p(u,{code:l.invalid_type,expected:m.object,received:u.parsedType}),g}let{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),o=[];if(!(this._def.catchall instanceof F&&this._def.unknownKeys==="strip"))for(let u in s.data)a.includes(u)||o.push(u);let c=[];for(let u of a){let d=i[u],b=s.data[u];c.push({key:{status:"valid",value:u},value:d._parse(new M(s,b,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof F){let u=this._def.unknownKeys;if(u==="passthrough")for(let d of o)c.push({key:{status:"valid",value:d},value:{status:"valid",value:s.data[d]}});else if(u==="strict")o.length>0&&(p(s,{code:l.unrecognized_keys,keys:o}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let d of o){let b=s.data[d];c.push({key:{status:"valid",value:d},value:u._parse(new M(s,b,s.path,d)),alwaysSet:d in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let u=[];for(let d of c){let b=await d.key,S=await d.value;u.push({key:b,value:S,alwaysSet:d.alwaysSet})}return u}).then(u=>C.mergeObjectSync(n,u)):C.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return h.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:h.errToObj(e).message??s}:{message:s}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:_.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of x.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of x.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Re(this)}partial(e){let r={};for(let n of x.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of x.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof N;)i=i._def.innerType;r[n]=i}return new t({...this._def,shape:()=>r})}keyof(){return tn(x.objectKeys(this.shape))}};O.create=(t,e)=>new O({shape:()=>t,unknownKeys:"strip",catchall:F.create(),typeName:_.ZodObject,...v(e)});O.strictCreate=(t,e)=>new O({shape:()=>t,unknownKeys:"strict",catchall:F.create(),typeName:_.ZodObject,...v(e)});O.lazycreate=(t,e)=>new O({shape:t,unknownKeys:"strip",catchall:F.create(),typeName:_.ZodObject,...v(e)});pe=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(o=>new D(o.ctx.common.issues));return p(r,{code:l.invalid_union,unionErrors:a}),g}if(r.common.async)return Promise.all(n.map(async i=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(s);{let i,a=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},d=c._parseSync({data:r.data,path:r.path,parent:u});if(d.status==="valid")return d;d.status==="dirty"&&!i&&(i={result:d,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(c=>new D(c));return p(r,{code:l.invalid_union,unionErrors:o}),g}}get options(){return this._def.options}};pe.create=(t,e)=>new pe({options:t,typeName:_.ZodUnion,...v(e)});H=t=>t instanceof he?H(t.schema):t instanceof $?H(t.innerType()):t instanceof ge?[t.value]:t instanceof ye?t.options:t instanceof _e?x.objectValues(t.enum):t instanceof ve?H(t._def.innerType):t instanceof de?[void 0]:t instanceof fe?[null]:t instanceof N?[void 0,...H(t.unwrap())]:t instanceof B?[null,...H(t.unwrap())]:t instanceof Ge||t instanceof ke?H(t.unwrap()):t instanceof we?H(t._def.innerType):[],yt=class t extends k{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.object)return p(r,{code:l.invalid_type,expected:m.object,received:r.parsedType}),g;let n=this.discriminator,s=r.data[n],i=this.optionsMap.get(s);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(p(r,{code:l.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),g)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let i of r){let a=H(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of a){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new t({typeName:_.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,...v(n)})}};me=class extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=(i,a)=>{if(ht(i)||ht(a))return g;let o=Kt(i.value,a.value);return o.valid?((gt(i)||gt(a))&&r.dirty(),{status:r.value,value:o.data}):(p(n,{code:l.invalid_intersection_types}),g)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};me.create=(t,e,r)=>new me({left:t,right:e,typeName:_.ZodIntersection,...v(r)});Z=class t extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.array)return p(n,{code:l.invalid_type,expected:m.array,received:n.parsedType}),g;if(n.data.length<this._def.items.length)return p(n,{code:l.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;!this._def.rest&&n.data.length>this._def.items.length&&(p(n,{code:l.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...n.data].map((a,o)=>{let c=this._def.items[o]||this._def.rest;return c?c._parse(new M(n,a,n.path,o)):null}).filter(a=>!!a);return n.common.async?Promise.all(i).then(a=>C.mergeArray(r,a)):C.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Z.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Z({items:t,typeName:_.ZodTuple,rest:null,...v(e)})};_t=class t extends k{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.object)return p(n,{code:l.invalid_type,expected:m.object,received:n.parsedType}),g;let s=[],i=this._def.keyType,a=this._def.valueType;for(let o in n.data)s.push({key:i._parse(new M(n,o,n.path,o)),value:a._parse(new M(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?C.mergeObjectAsync(r,s):C.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof k?new t({keyType:e,valueType:r,typeName:_.ZodRecord,...v(n)}):new t({keyType:X.create(),valueType:e,typeName:_.ZodRecord,...v(r)})}},De=class extends k{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.map)return p(n,{code:l.invalid_type,expected:m.map,received:n.parsedType}),g;let s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],u)=>({key:s._parse(new M(n,o,n.path,[u,"key"])),value:i._parse(new M(n,c,n.path,[u,"value"]))}));if(n.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let c of a){let u=await c.key,d=await c.value;if(u.status==="aborted"||d.status==="aborted")return g;(u.status==="dirty"||d.status==="dirty")&&r.dirty(),o.set(u.value,d.value)}return{status:r.value,value:o}})}else{let o=new Map;for(let c of a){let u=c.key,d=c.value;if(u.status==="aborted"||d.status==="aborted")return g;(u.status==="dirty"||d.status==="dirty")&&r.dirty(),o.set(u.value,d.value)}return{status:r.value,value:o}}}};De.create=(t,e,r)=>new De({valueType:e,keyType:t,typeName:_.ZodMap,...v(r)});Oe=class t extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.set)return p(n,{code:l.invalid_type,expected:m.set,received:n.parsedType}),g;let s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(p(n,{code:l.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),r.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(p(n,{code:l.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let u=new Set;for(let d of c){if(d.status==="aborted")return g;d.status==="dirty"&&r.dirty(),u.add(d.value)}return{status:r.value,value:u}}let o=[...n.data.values()].map((c,u)=>i._parse(new M(n,c,n.path,u)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,r){return new t({...this._def,minSize:{value:e,message:h.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:h.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Oe.create=(t,e)=>new Oe({valueType:t,minSize:null,maxSize:null,typeName:_.ZodSet,...v(e)});vt=class t extends k{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.function)return p(r,{code:l.invalid_type,expected:m.function,received:r.parsedType}),g;function n(o,c){return We({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ae(),V].filter(u=>!!u),issueData:{code:l.invalid_arguments,argumentsError:c}})}function s(o,c){return We({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ae(),V].filter(u=>!!u),issueData:{code:l.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof ee){let o=this;return I(async function(...c){let u=new D([]),d=await o._def.args.parseAsync(c,i).catch(A=>{throw u.addIssue(n(c,A)),u}),b=await Reflect.apply(a,this,d);return await o._def.returns._def.type.parseAsync(b,i).catch(A=>{throw u.addIssue(s(b,A)),u})})}else{let o=this;return I(function(...c){let u=o._def.args.safeParse(c,i);if(!u.success)throw new D([n(c,u.error)]);let d=Reflect.apply(a,this,u.data),b=o._def.returns.safeParse(d,i);if(!b.success)throw new D([s(d,b.error)]);return b.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Z.create(e).rest(K.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Z.create([]).rest(K.create()),returns:r||K.create(),typeName:_.ZodFunction,...v(n)})}},he=class extends k{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};he.create=(t,e)=>new he({getter:t,typeName:_.ZodLazy,...v(e)});ge=class extends k{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return p(r,{received:r.data,code:l.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:e.data}}get value(){return this._def.value}};ge.create=(t,e)=>new ge({value:t,typeName:_.ZodLiteral,...v(e)});ye=class t extends k{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return p(r,{expected:x.joinValues(n),received:r.parsedType,code:l.invalid_type}),g}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return p(r,{received:r.data,code:l.invalid_enum_value,options:n}),g}return I(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};ye.create=tn;_e=class extends k{_parse(e){let r=x.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==m.string&&n.parsedType!==m.number){let s=x.objectValues(r);return p(n,{expected:x.joinValues(s),received:n.parsedType,code:l.invalid_type}),g}if(this._cache||(this._cache=new Set(x.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=x.objectValues(r);return p(n,{received:n.data,code:l.invalid_enum_value,options:s}),g}return I(e.data)}get enum(){return this._def.values}};_e.create=(t,e)=>new _e({values:t,typeName:_.ZodNativeEnum,...v(e)});ee=class extends k{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.promise&&r.common.async===!1)return p(r,{code:l.invalid_type,expected:m.promise,received:r.parsedType}),g;let n=r.parsedType===m.promise?r.data:Promise.resolve(r.data);return I(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};ee.create=(t,e)=>new ee({type:t,typeName:_.ZodPromise,...v(e)});$=class extends k{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{p(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(r.value==="aborted")return g;let c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?g:c.status==="dirty"?ae(c.value):r.value==="dirty"?ae(c.value):c});{if(r.value==="aborted")return g;let o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?g:o.status==="dirty"?ae(o.value):r.value==="dirty"?ae(o.value):o}}if(s.type==="refinement"){let a=o=>{let c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value).then(()=>({status:r.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Y(a))return g;let o=s.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>Y(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:r.value,value:o})):g);x.assertNever(s)}};$.create=(t,e,r)=>new $({schema:t,typeName:_.ZodEffects,effect:e,...v(r)});$.createWithPreprocess=(t,e,r)=>new $({schema:e,effect:{type:"preprocess",transform:t},typeName:_.ZodEffects,...v(r)});N=class extends k{_parse(e){return this._getType(e)===m.undefined?I(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};N.create=(t,e)=>new N({innerType:t,typeName:_.ZodOptional,...v(e)});B=class extends k{_parse(e){return this._getType(e)===m.null?I(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};B.create=(t,e)=>new B({innerType:t,typeName:_.ZodNullable,...v(e)});ve=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===m.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};ve.create=(t,e)=>new ve({innerType:t,typeName:_.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...v(e)});we=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Te(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new D(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new D(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};we.create=(t,e)=>new we({innerType:t,typeName:_.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...v(e)});Pe=class extends k{_parse(e){if(this._getType(e)!==m.nan){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.nan,received:n.parsedType}),g}return{status:"valid",value:e.data}}};Pe.create=t=>new Pe({typeName:_.ZodNaN,...v(t)});yi=Symbol("zod_brand"),Ge=class extends k{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},qe=class t extends k{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?g:i.status==="dirty"?(r.dirty(),ae(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?g:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:_.ZodPipeline})}},ke=class extends k{_parse(e){let r=this._def.innerType._parse(e),n=s=>(Y(s)&&(s.value=Object.freeze(s.value)),s);return Te(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};ke.create=(t,e)=>new ke({innerType:t,typeName:_.ZodReadonly,...v(e)});_i={object:O.lazycreate};(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(_||(_={}));vi=(t,e={message:`Input not instance of ${t.name}`})=>rn(r=>r instanceof t,e),nn=X.create,sn=oe.create,wi=Pe.create,ki=ce.create,an=ue.create,bi=le.create,xi=Ce.create,Ei=de.create,Si=fe.create,Ai=Q.create,Ti=K.create,Ri=F.create,Ci=Ie.create,Ii=W.create,Di=O.create,Oi=O.strictCreate,Pi=pe.create,Ni=yt.create,Mi=me.create,$i=Z.create,Fi=_t.create,ji=De.create,Li=Oe.create,zi=vt.create,Zi=he.create,Bi=ge.create,Ui=ye.create,Vi=_e.create,Hi=ee.create,Ki=$.create,Wi=N.create,Gi=B.create,qi=$.createWithPreprocess,Ji=qe.create,Yi=()=>nn().optional(),Xi=()=>sn().optional(),Qi=()=>an().optional(),ea={string:(t=>X.create({...t,coerce:!0})),number:(t=>oe.create({...t,coerce:!0})),boolean:(t=>ue.create({...t,coerce:!0})),bigint:(t=>ce.create({...t,coerce:!0})),date:(t=>le.create({...t,coerce:!0}))},ta=g});var f={};ie(f,{BRAND:()=>yi,DIRTY:()=>ae,EMPTY_PATH:()=>qs,INVALID:()=>g,NEVER:()=>ta,OK:()=>I,ParseStatus:()=>C,Schema:()=>k,ZodAny:()=>Q,ZodArray:()=>W,ZodBigInt:()=>ce,ZodBoolean:()=>ue,ZodBranded:()=>Ge,ZodCatch:()=>we,ZodDate:()=>le,ZodDefault:()=>ve,ZodDiscriminatedUnion:()=>yt,ZodEffects:()=>$,ZodEnum:()=>ye,ZodError:()=>D,ZodFirstPartyTypeKind:()=>_,ZodFunction:()=>vt,ZodIntersection:()=>me,ZodIssueCode:()=>l,ZodLazy:()=>he,ZodLiteral:()=>ge,ZodMap:()=>De,ZodNaN:()=>Pe,ZodNativeEnum:()=>_e,ZodNever:()=>F,ZodNull:()=>fe,ZodNullable:()=>B,ZodNumber:()=>oe,ZodObject:()=>O,ZodOptional:()=>N,ZodParsedType:()=>m,ZodPipeline:()=>qe,ZodPromise:()=>ee,ZodReadonly:()=>ke,ZodRecord:()=>_t,ZodSchema:()=>k,ZodSet:()=>Oe,ZodString:()=>X,ZodSymbol:()=>Ce,ZodTransformer:()=>$,ZodTuple:()=>Z,ZodType:()=>k,ZodUndefined:()=>de,ZodUnion:()=>pe,ZodUnknown:()=>K,ZodVoid:()=>Ie,addIssueToContext:()=>p,any:()=>Ai,array:()=>Ii,bigint:()=>ki,boolean:()=>an,coerce:()=>ea,custom:()=>rn,date:()=>bi,datetimeRegex:()=>en,defaultErrorMap:()=>V,discriminatedUnion:()=>Ni,effect:()=>Ki,enum:()=>Ui,function:()=>zi,getErrorMap:()=>Ae,getParsedType:()=>z,instanceof:()=>vi,intersection:()=>Mi,isAborted:()=>ht,isAsync:()=>Te,isDirty:()=>gt,isValid:()=>Y,late:()=>_i,lazy:()=>Zi,literal:()=>Bi,makeIssue:()=>We,map:()=>ji,nan:()=>wi,nativeEnum:()=>Vi,never:()=>Ri,null:()=>Si,nullable:()=>Gi,number:()=>sn,object:()=>Di,objectUtil:()=>Bt,oboolean:()=>Qi,onumber:()=>Xi,optional:()=>Wi,ostring:()=>Yi,pipeline:()=>Ji,preprocess:()=>qi,promise:()=>Hi,quotelessJson:()=>Ks,record:()=>Fi,set:()=>Li,setErrorMap:()=>Gs,strictObject:()=>Oi,string:()=>nn,symbol:()=>xi,transformer:()=>Ki,tuple:()=>$i,undefined:()=>Ei,union:()=>Pi,unknown:()=>Ti,util:()=>x,void:()=>Ci});var Wt=E(()=>{mt();Vt();Gr();Ke();on();pt()});var Ne=E(()=>{Wt();Wt()});var wt,Gt=E(()=>{"use strict";Ne();wt=f.object({slug:f.string().min(1).max(64),description:f.string().max(255).optional(),match_command:f.string().min(1),priority:f.number().int().default(50),strip_ansi:f.boolean().default(!1),strip_lines_matching:f.array(f.string()).default([]),keep_failures:f.boolean().default(!1),fold_passing:f.boolean().default(!1),fold_passing_threshold:f.number().int().positive().max(1e3).optional(),mask_abs_paths:f.boolean().default(!1),preserve_exact:f.boolean().default(!1),truncate_lines_at:f.number().int().positive().max(1e4).optional(),max_lines:f.number().int().positive().max(1e5).optional(),scale_with_level:f.boolean().default(!0),transform:f.string().max(64).optional(),on_empty:f.string().max(255).optional()})});function te(t){return JSON.stringify(t)+Me}function*kt(t){let e=0;for(;;){let r=t.indexOf(Me,e);if(r<0)return;yield t.slice(e,r),e=r+1}}function Je(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}var ra,na,sa,ia,cn,Su,Au,un,Me,ln,qt=E(()=>{"use strict";Ne();Gt();ra=f.object({id:f.string().min(1).max(64),op:f.literal("filter"),cmd:f.string().min(1).max(2048),plan:f.enum(["trial","smart","pro"]),allowed:f.array(f.string().min(1).max(64)).max(512).optional(),installId:f.string().min(1).max(64).optional()}),na=f.object({id:f.string().min(1).max(64),op:f.literal("ping")}),sa=f.object({id:f.string().min(1).max(64),op:f.literal("shutdown"),installId:f.string().min(1).max(64)}),ia=f.object({id:f.string().min(1).max(64),op:f.literal("reload"),installId:f.string().min(1).max(64).optional()}),cn=f.discriminatedUnion("op",[ra,na,sa,ia]),Su=f.object({id:f.string(),ok:f.literal(!0),data:f.unknown()}),Au=f.object({id:f.string(),ok:f.literal(!1),err:f.string(),retryAfterMs:f.number().int().nonnegative().optional()}),un=f.object({filter:wt.nullable(),cacheHit:f.boolean().optional()}),Me=`
4
+ `,ln=64*1024});import dn from"node:os";import{join as G}from"node:path";function w(){return process.env.TOKMIZER_HOME||G(dn.homedir(),".tokmizer")}function Ye(){return G(w(),"install-id")}function Jt(){return G(w(),"bundle-refresh.json")}function bt(){return G(w(),"skills")}function Xe(t){return G(bt(),`${t}.md`)}function Yt(){return G(w(),"content-cache")}function Xt(){return G(w(),"managed-commands.json")}function Qt(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||G(dn.homedir(),".claude","commands")}function $e(t){return G(Qt(),`${t}.md`)}var P=E(()=>{"use strict"});import aa from"node:os";import{join as Qe}from"node:path";import{existsSync as oa,statSync as ca,lstatSync as fn,unlinkSync as ua,mkdirSync as la,chmodSync as da}from"node:fs";import{createHash as fa}from"node:crypto";function pa(t){let e=fa("sha256").update(w()).digest("hex").slice(0,8),r=Qe(aa.tmpdir(),`tkr-${t}-${e}`),n=Qe(r,"d.sock");if(Buffer.byteLength(n)>er)throw new Error("Temporary directory path is too long for IPC");return pn(r,t),n}function ma(t,e){try{let r=fn(t);return r.isDirectory()&&r.uid===e&&(r.mode&63)===0}catch{return!1}}function pn(t,e){la(t,{recursive:!0,mode:448});let r=fn(t);if(!r.isDirectory()||r.uid!==e)throw new Error("Unsafe IPC directory");da(t,448)}function be(){if(process.platform==="win32")return{path:`\\\\.\\pipe\\tokmizer-${process.env.USERNAME??"tokmizer"}`,isPipe:!0};let t=typeof process.getuid=="function"?process.getuid():0,e=process.env.XDG_RUNTIME_DIR;if(e&&ma(e,t)){let s=Qe(e,`tokmizer-${t}.sock`);if(Buffer.byteLength(s)<=er)return{path:s,isPipe:!1}}let r=Qe(w(),"run"),n=Qe(r,"daemon.sock");return Buffer.byteLength(n)>er?{path:pa(t),isPipe:!1}:(pn(r,t),{path:n,isPipe:!1})}async function et(){let{path:t,isPipe:e}=be();if(e||!oa(t))return;try{if(!ca(t).isSocket())return}catch{return}let r=await import("node:net");if(!await new Promise(s=>{let i=r.createConnection(t),a=o=>{i.removeAllListeners();try{i.destroy()}catch{}s(o)};i.once("connect",()=>a(!0)),i.once("error",o=>{let c=o.code;a(c!=="ECONNREFUSED"&&c!=="ENOENT")}),setTimeout(()=>a(!0),250)}))try{ua(t)}catch{}}function gn(){let t=process.ppid;if(!t||t===1)return!1;try{return process.kill(t,0),!0}catch{return!1}}var er,mn,hn,tr=E(()=>{"use strict";P();er=100;mn=3e4,hn=5*6e4});import{createHash as ha}from"node:crypto";function xe(t){let e=yn.get(t);return e||(e=ha("sha256").update(`tkr:${t}`).digest("hex").slice(0,16),yn.set(t,e)),e}var ga,ya,Fe,yn,tt=E(()=>{"use strict";Ne();ga=f.enum(["normal","compact","minimal"]),ya=f.enum(["off","light","balanced","max"]),Fe=f.object({enabled:f.boolean().default(!0),telemetryOptIn:f.boolean().default(!0),outputVerbosity:ga.default("compact"),reducer:ya.default("off"),filters:f.object({enableAll:f.boolean().default(!0),disabled:f.array(f.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),yn=new Map});function va(t){if(!t)return"*";let e=_n.get(t);return e===void 0&&(e=[...t].join(","),_n.set(t,e)),e}function vn(t,e,r){let n=`${t}::${va(r)}`,s=je.get(n);if(s!==void 0)return s;let i=null;for(let a of e)r&&!r.has(xe(a.slug))||a.matchRegex.test(t)&&(!i||a.priority>i.priority)&&(i=a);if(je.size>=_a){let a=je.keys().next().value;a&&je.delete(a)}return je.set(n,i),i}function wn(){je.clear()}var je,_a,_n,kn=E(()=>{"use strict";tt();je=new Map,_a=256,_n=new WeakMap});import{join as rr}from"node:path";import{mkdir as wa,readFile as ka,writeFile as ba,unlink as bn,rename as xa}from"node:fs/promises";function xt(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function sr(t){return t?.dir??w()}async function R(t){let e=sr(t);try{let r=await ka(rr(e,nr),"utf8"),n=JSON.parse(r);return{...n,lastSettingsRevision:n.lastSettingsRevision??0,timeZone:n.timeZone??xt(),bonusActive:n.bonusActive??!1,...n.bonusResetAt!==void 0?{bonusResetAt:n.bonusResetAt}:{}}}catch{return null}}async function ir(t,e){let r=sr(e);await wa(r,{recursive:!0}),t.installedAt==null&&(t.installedAt=Math.floor(Date.now()/1e3));let n=rr(r,nr),s=`${n}.tmp-${process.pid}-${process.hrtime.bigint()}`;await ba(s,JSON.stringify(t,null,2),{mode:384});try{await xa(s,n)}catch(i){try{await bn(s)}catch{}throw i}}async function xn(t){let e=sr(t);try{await bn(rr(e,nr))}catch{return}}var nr,re=E(()=>{"use strict";P();nr="state.json"});import{createRequire as Ea}from"node:module";function Aa(){for(let t of["../package.json","../../package.json"])try{let e=Sa(t).version;if(typeof e=="string"&&e)return e}catch{}return"0.0.0"}function Et(t,e){if(!t||!e)return!1;let r=t.split(".").map(s=>parseInt(s,10)),n=e.split(".").map(s=>parseInt(s,10));for(let s=0;s<3;s+=1){let i=r[s]??0,a=n[s]??0;if(Number.isNaN(i)||Number.isNaN(a))return!1;if(i<a)return!0;if(i>a)return!1}return!1}var Sa,q,Le=E(()=>{"use strict";Sa=Ea(import.meta.url);q=Aa()});var En,Sn=E(()=>{"use strict";En=`-----BEGIN PUBLIC KEY-----
5
5
  MCowBQYDK2VwAyEAj/kMlXlhTIGHRKxOKMuGFa1S1ybxxwgdYcAE0YM9fgU=
6
6
  -----END PUBLIC KEY-----
7
- `});import{createHmac as va,createPublicKey as wa,verify as ka}from"node:crypto";function et(){return((process.env.TOKMIZER_DEV==="1"?process.env.TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM:void 0)??kn).replace(/\\n/g,`
8
- `)}function xa(t,e,r,n){try{let s=wa({key:n,format:"pem"});return ka(null,Buffer.from(`${e}.${t}`,"utf8"),s,Buffer.from(r,"base64url"))}catch{return!1}}async function xe(t){let e=await t.text(),r=et(),n=t.headers?.get?.("x-tokmizer-resp-ts")??null;if(n!==null){let a=Number(n);if(!Number.isFinite(a)||Date.now()-a>ba)throw new ne("http","stale server response (resp-ts outside freshness window)")}if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new ne("http","no signing public key configured; refusing to trust server response");let s=t.headers?.get?.("x-tokmizer-resp-sig")??null,i=Number(n);if(!s||n===null||!Number.isFinite(i))throw new ne("http","missing server response signature");if(!xa(e,i,s,r))throw new ne("http","invalid server response signature");return JSON.parse(e)}function Sa(t,e,r){return va("sha256",r).update(`${e}.${t}`).digest("hex")}async function j(t,e,r,n){let s=Date.now(),i=r===void 0?"":JSON.stringify(r),a=n.signingSecret?Sa(i,s,n.signingSecret):"0".repeat(64),o={"content-type":"application/json","x-tokmizer-fingerprint":n.fingerprint,"x-tokmizer-install-id":n.installId,"x-tokmizer-sig":a,"x-tokmizer-ts":String(s),"x-tokmizer-plugin-version":q};n.bearer&&(o.authorization=`Bearer ${n.bearer}`);let c=n.timeoutMs??5e3,l=t!=="GET"&&t!=="DELETE",f={method:t,headers:o,signal:AbortSignal.timeout(c)};l&&(f.body=i);try{return await fetch(`${n.baseUrl}${e}`,f)}catch(x){let E=x.name;throw E==="TimeoutError"||E==="AbortError"?new ne("timeout",`${t} ${e} timed out after ${c}ms`):new ne("network",`${t} ${e} failed: ${x.message}`)}}var ba,ne,je=S(()=>{"use strict";Fe();bn();ba=300*1e3;ne=class extends Error{constructor(r,n,s){super(n);this.kind=r;this.status=s;this.name="TransportError"}kind;status}});import{createCipheriv as Gu,createDecipheriv as Ea,hkdfSync as Aa,randomBytes as qu}from"node:crypto";function Ca(t){return Buffer.from(Aa("sha256",Buffer.from(t,"utf8"),Ta,Ra,32))}function xn(t,e){let r=Ca(e),n=Buffer.from(t,"base64url"),s=n.subarray(0,12),i=n.subarray(12,28),a=n.subarray(28),o=Ea("aes-256-gcm",r,s);return o.setAuthTag(i),Buffer.concat([o.update(a),o.final()]).toString("utf8")}var Ta,Ra,Sn=S(()=>{"use strict";Ta=Buffer.from("tokmizer-bundle-enc-v1"),Ra=Buffer.from("rules-bundle")});import{chmodSync as Da,readFileSync as Ia,writeFileSync as Oa,mkdirSync as Pa,renameSync as Na}from"node:fs";import{join as En}from"node:path";function sr(){return En(k(),"bundle-cache.json")}function An(t){try{let e=k();Pa(e,{recursive:!0});let r={...t,fetchedAt:Date.now()},n=En(e,`bundle-cache.${process.pid}.tmp`);Oa(n,JSON.stringify(r),{mode:384}),Na(n,sr()),Da(sr(),384)}catch{}}function Tn(){try{let t=Ia(sr(),"utf8"),e=Ma.safeParse(JSON.parse(t));return e.success?e.data:null}catch{return null}}var Ma,Rn=S(()=>{"use strict";Pe();$();Ma=d.object({payload:d.string().min(1),signature:d.string().min(1),enc:d.literal("v1"),fetchedAt:d.number().int().nonnegative()})});var Cn={};se(Cn,{BundleFetchError:()=>tt,bundleExpired:()=>ar,fetchBundle:()=>xt,healOn401:()=>or,maxBundleAgeMs:()=>ir,runtimeFromCache:()=>Ba,runtimeFromEnvelope:()=>cr});import{createPublicKey as $a,verify as Fa}from"node:crypto";function ir(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?t:za}function ar(t,e=Date.now()){return e-t.fetchedAt>ir()}function Za(t,e){let r=et();if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Error("tkr-daemon: no valid signing public key configured (set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM at build time).");let n=$a({key:r,format:"pem"});if(!Fa(null,Buffer.from(t.payload,"utf8"),n,Buffer.from(t.signature,"base64url")))throw new Error("tkr-daemon: rules bundle signature invalid");return JSON.parse(xn(t.payload,e))}async function or(t,e,r){if(t instanceof tt&&(t.status===401||t.status===403))try{return await r.heartbeat(e),await r.fetchBundle(e)}catch(n){return r.log(`initial fetch failed after heartbeat: ${n.message}`),null}return r.log(`initial fetch failed: ${t.message}`),null}async function xt(t){let e=await R();if(!e||!e.jwt)throw new Error("tkr-daemon: not activated (no JWT)");if(!e.signingSecret)throw new Error("tkr-daemon: not activated (no signing secret)");let r=await j("GET","/api/v1/rules/bundle",void 0,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:e.fingerprint??"0".repeat(64),installId:e.installId,timeoutMs:1e4});if(!r.ok)throw new tt(r.status);let n=La.parse(await r.json()),s=cr(n,e.signingSecret);return An(n),s}function cr(t,e){let r=Za(t,e),n=ja.parse(r);if(Date.now()-n.signedAt>ir())throw new Error("tkr-daemon: rules bundle is stale");let s=new Map;for(let i of n.filters)s.set(i.slug,{...i,matchRegex:new RegExp(i.match_command)});return yn(),{bundleVersion:n.bundleVersion,signedAt:n.signedAt,ruleCount:s.size,startedAt:Date.now(),fetchedAt:Date.now(),selectFor:(i,a,o)=>gn(i,s.values(),o&&o.length>0?new Set(o):null)}}async function Ba(){try{let t=Tn();if(!t)return null;let e=await R();return e?.signingSecret?cr(t,e.signingSecret):null}catch{return null}}var ja,La,za,tt,St=S(()=>{"use strict";Pe();Ht();_n();re();je();Sn();Rn();ja=d.object({bundleVersion:d.number().int().nonnegative(),signedAt:d.number().int(),filters:d.array(_t)}),La=d.object({payload:d.string().min(1),signature:d.string().min(1),enc:d.literal("v1")}),za=10080*60*1e3;tt=class extends Error{status;constructor(e){super(`tkr-daemon: bundle fetch failed ${e}`),this.status=e}}});import Le from"node:os";import{createHash as Ha,randomUUID as Ka}from"node:crypto";import{readFile as On,writeFile as Pn,mkdir as Wa}from"node:fs/promises";async function Et(){try{let r=(await On(qe(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(r))return r}catch{}await Wa(k(),{recursive:!0});let t=Ka();try{return await Pn(qe(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await On(qe(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await Pn(qe(),t,{mode:384}),t}}function ur(t){return Ha("sha256").update(t).digest("hex")}function Ga(){let t=Le.networkInterfaces();for(let e of Object.keys(t))for(let r of t[e]??[])if(!r.internal&&r.mac&&r.mac!=="00:00:00:00:00:00")return r.mac;return"no-mac"}async function J(){let t=await Et(),e=Le.hostname(),r=Le.platform(),n=Le.release(),s=Le.cpus(),i=s[0]?.model??"unknown",a=s.length,o=ur(Ga()),c=ur(Le.userInfo().username),l=[e,r,n,i,String(a),o,c,t].join("|");return{fingerprint:ur(l),installId:t,hostname:e,os:r,osVersion:n,cpuModel:i,cpuCores:a,macHash:o,usernameHash:c}}var ze=S(()=>{"use strict";$()});import{readFile as lo,writeFile as fo,mkdir as po,chmod as mo,rm as ho,rename as go}from"node:fs/promises";import{join as Wn}from"node:path";async function rt(){try{let t=await lo(Wn(k(),Gn),"utf8"),e=JSON.parse(t);return Qt.parse({...Kn,...e})}catch{return Kn}}async function qn(t){await po(k(),{recursive:!0});let e=Wn(k(),Gn),r=`${e}.tmp-${process.pid}-${process.hrtime.bigint()}`;await fo(r,JSON.stringify(t,null,2),{mode:384});try{await mo(r,384),await go(r,e)}catch(n){try{await ho(r,{force:!0})}catch{}throw n}}var Gn,Kn,Rt=S(()=>{"use strict";Qe();$();Gn="settings-cache.json",Kn=Qt.parse({})});var ns={};se(ns,{connectDaemon:()=>rs,shutdownDaemon:()=>ts});import{createConnection as _o}from"node:net";import{spawn as vo}from"node:child_process";import{existsSync as Qn,openSync as hr,closeSync as Yn,unlinkSync as yr,writeFileSync as _r,mkdirSync as vr,readFileSync as wo,appendFileSync as ko,rmSync as bo,statSync as xo}from"node:fs";import{dirname as So,join as wr}from"node:path";import{fileURLToPath as Eo}from"node:url";function kr(){return wr(k(),"daemon.spawn.fail")}function br(){return wr(k(),"daemon.log")}function Co(){try{let t=Number(wo(kr(),"utf8"));return Number.isFinite(t)&&Date.now()-t<To}catch{return!1}}function Do(t){try{vr(k(),{recursive:!0});let e=br();try{xo(e).size>Ro&&yr(e)}catch{}ko(e,`${new Date().toISOString()} ${t}
9
- `)}catch{}}function Io(t){try{vr(k(),{recursive:!0}),_r(kr(),String(Date.now()))}catch{}Do(`spawn failed: ${t.message}`)}function Oo(){try{bo(kr(),{force:!0})}catch{}}async function Ct(t,e){return new Promise((r,n)=>{let s=_o(t),i=o=>{if(s.removeAllListeners("connect"),s.removeAllListeners("error"),clearTimeout(a),o){try{s.destroy()}catch{}n(o)}else r(s)},a=setTimeout(()=>i(new Error("connect timeout")),e);s.once("connect",()=>i(null)),s.once("error",o=>i(o))})}function Po(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:Eo(new URL("../bin/tkr-daemon.js",import.meta.url))}async function gr(t,e=3e3){let r=Math.ceil(e/75),n=process.platform==="win32";for(let s=0;s<r;s++){if(n)try{return(await Ct(t,75)).destroy(),!0}catch{}else if(Qn(t))return!0;await new Promise(i=>setTimeout(i,75))}return!1}async function No(t){let e=Po();if(!Qn(e))throw new Error(`tkr-daemon binary not found at ${e}`);let{path:r}=ke(),n=process.platform==="win32"?k():So(r);try{vr(n,{recursive:!0})}catch{}let s=wr(n,"daemon.spawn.lock"),i=null;try{i=hr(s,"wx"),_r(i,String(process.pid))}catch(a){if(a.code==="EEXIST"){if(await gr(r,5e3))return;try{yr(s)}catch{}try{i=hr(s,"wx"),_r(i,String(process.pid))}catch(c){if(c.code==="EEXIST"){await gr(r,5e3);return}throw c}}else throw a}try{let a=null;try{a=hr(br(),"a")}catch{}if(vo(process.execPath,[e],{detached:!0,stdio:["ignore","ignore",a??"ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:t}}).unref(),a!==null)try{Yn(a)}catch{}if(!await gr(r,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(i!==null){try{Yn(i)}catch{}try{yr(s)}catch{}}}}async function ts(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:ke(),r=await Et();try{let n=await Ct(e,es);n.write(te({id:Ge(),op:"shutdown",installId:r})),await new Promise(s=>setTimeout(s,150));try{n.destroy()}catch{}return!0}catch{return!1}}async function Mo(t,e){let r=Date.now()+e;for(;Date.now()<r;){try{(await Ct(t,250)).destroy()}catch{return!0}await new Promise(n=>setTimeout(n,100))}return!1}async function rs(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:ke(),r=await Et(),n=null,s=0,i=!1;for(;s<=Xn;)try{n=await Ct(e,es),Oo();break}catch{if(s+=1,s>Xn)throw new Error(`tkr-daemon unreachable at ${e}`);if(Co())throw new Error(`tkr-daemon spawn on cooldown (see ${br()})`);await Xe();try{await No(r),i=!0}catch(f){throw Io(f),f}}if(!n)throw new Error("tkr-daemon: socket setup failed");let a=new Map,o="";n.setEncoding("utf8"),n.on("data",f=>{o+=f;let x=-1;for(let A=0;A<o.length;A++)o[A]===Ne&&(x=A);if(x<0)return;let E=[];for(let A of vt(o.slice(0,x+1)))E.push(A);o=o.slice(x+1);for(let A of E)if(A)try{let y=JSON.parse(A),T=a.get(y.id);if(!T)continue;clearTimeout(T.timer),a.delete(y.id),T.resolve(y)}catch{}}),n.on("close",()=>{for(let f of a.values())clearTimeout(f.timer),f.reject(new Error("daemon socket closed"));a.clear()}),n.on("error",()=>{});function c(f){return new Promise((x,E)=>{let A=setTimeout(()=>{a.delete(f.id),E(new Error(`daemon request timeout (${f.op})`))},Ao);a.set(f.id,{resolve:x,reject:E,timer:A}),n.write(te(f))})}let l={filter:async(f,x,E)=>{let A=await c({id:Ge(),op:"filter",cmd:f.slice(0,2048),plan:x,...E&&E.length>0?{allowed:E.slice(0,512)}:{},installId:r});if(!A.ok)return null;let y=an.safeParse(A.data);return y.success?y.data.filter:null},ping:async()=>{let f=await c({id:Ge(),op:"ping"});if(!f.ok)throw new Error(f.err);return f.data},reload:async()=>{let f=await c({id:Ge(),op:"reload",installId:r});if(!f.ok)throw new Error(f.err);return f.data},close:()=>{try{n.end()}catch{}}};if(!t.skipVersionCheck&&!i){let f=!1;try{f=(await l.ping()).version!==q}catch{}if(f){try{await ts(t.socketPath?{socketPath:t.socketPath}:{})}catch{}l.close();let x=await Mo(e,2e3);if(await Xe(),!x)throw new Error("stale daemon still running after shutdown request");return rs({...t,skipVersionCheck:!0})}}return l}var es,Ao,Xn,To,Ro,ss=S(()=>{"use strict";Kt();Xt();$();ze();Fe();es=500,Ao=3e3,Xn=1,To=6e4,Ro=256*1024});import{readFileSync as $o,renameSync as Fo,statSync as jo,writeFileSync as Lo}from"node:fs";function is(t,e,r){try{if(jo(t).size<=e)return;let n=$o(t,"utf8").split(`
10
- `).filter(o=>o.trim()!==""),s=[],i=0;for(let o=n.length-1;o>=0;o-=1){let c=n[o],l=Buffer.byteLength(c)+1;if(i+l>r)break;s.push(c),i+=l}s.reverse();let a=`${t}.tmp-${process.pid}`;Lo(a,s.length?`${s.join(`
7
+ `});import{createHmac as Ta,createPublicKey as Ra,verify as Ca}from"node:crypto";function rt(){return((process.env.TOKMIZER_DEV==="1"?process.env.TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM:void 0)??En).replace(/\\n/g,`
8
+ `)}function Da(t,e,r,n){try{let s=Ra({key:n,format:"pem"});return Ca(null,Buffer.from(`${e}.${t}`,"utf8"),s,Buffer.from(r,"base64url"))}catch{return!1}}async function Ee(t){let e=await t.text(),r=rt(),n=t.headers?.get?.("x-tokmizer-resp-ts")??null;if(n!==null){let a=Number(n);if(!Number.isFinite(a)||Date.now()-a>Ia)throw new ne("http","stale server response (resp-ts outside freshness window)")}if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new ne("http","no signing public key configured; refusing to trust server response");let s=t.headers?.get?.("x-tokmizer-resp-sig")??null,i=Number(n);if(!s||n===null||!Number.isFinite(i))throw new ne("http","missing server response signature");if(!Da(e,i,s,r))throw new ne("http","invalid server response signature");return JSON.parse(e)}function Oa(t,e,r){return Ta("sha256",r).update(`${e}.${t}`).digest("hex")}async function j(t,e,r,n){let s=Date.now(),i=r===void 0?"":JSON.stringify(r),a=n.signingSecret?Oa(i,s,n.signingSecret):"0".repeat(64),o={"content-type":"application/json","x-tokmizer-fingerprint":n.fingerprint,"x-tokmizer-install-id":n.installId,"x-tokmizer-sig":a,"x-tokmizer-ts":String(s),"x-tokmizer-plugin-version":q};n.bearer&&(o.authorization=`Bearer ${n.bearer}`);let c=n.timeoutMs??5e3,u=t!=="GET"&&t!=="DELETE",d={method:t,headers:o,signal:AbortSignal.timeout(c)};u&&(d.body=i);try{return await fetch(`${n.baseUrl}${e}`,d)}catch(b){let S=b.name;throw S==="TimeoutError"||S==="AbortError"?new ne("timeout",`${t} ${e} timed out after ${c}ms`):new ne("network",`${t} ${e} failed: ${b.message}`)}}var Ia,ne,ze=E(()=>{"use strict";Le();Sn();Ia=300*1e3;ne=class extends Error{constructor(r,n,s){super(n);this.kind=r;this.status=s;this.name="TransportError"}kind;status}});import{createCipheriv as el,createDecipheriv as Pa,hkdfSync as Na,randomBytes as tl}from"node:crypto";function Fa(t){return Buffer.from(Na("sha256",Buffer.from(t,"utf8"),Ma,$a,32))}function An(t,e){let r=Fa(e),n=Buffer.from(t,"base64url"),s=n.subarray(0,12),i=n.subarray(12,28),a=n.subarray(28),o=Pa("aes-256-gcm",r,s);return o.setAuthTag(i),Buffer.concat([o.update(a),o.final()]).toString("utf8")}var Ma,$a,Tn=E(()=>{"use strict";Ma=Buffer.from("tokmizer-bundle-enc-v1"),$a=Buffer.from("rules-bundle")});import{chmodSync as ja,readFileSync as La,writeFileSync as za,mkdirSync as Za,renameSync as Ba}from"node:fs";import{join as Rn}from"node:path";function ar(){return Rn(w(),"bundle-cache.json")}function Cn(t){try{let e=w();Za(e,{recursive:!0});let r={...t,fetchedAt:Date.now()},n=Rn(e,`bundle-cache.${process.pid}.tmp`);za(n,JSON.stringify(r),{mode:384}),Ba(n,ar()),ja(ar(),384)}catch{}}function In(){try{let t=La(ar(),"utf8"),e=Ua.safeParse(JSON.parse(t));return e.success?e.data:null}catch{return null}}var Ua,Dn=E(()=>{"use strict";Ne();P();Ua=f.object({payload:f.string().min(1),signature:f.string().min(1),enc:f.literal("v1"),fetchedAt:f.number().int().nonnegative()})});var On={};ie(On,{BundleFetchError:()=>nt,bundleExpired:()=>cr,fetchBundle:()=>St,healOn401:()=>ur,maxBundleAgeMs:()=>or,runtimeFromCache:()=>Ja,runtimeFromEnvelope:()=>lr});import{createPublicKey as Va,verify as Ha}from"node:crypto";function or(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?t:Ga}function cr(t,e=Date.now()){return e-t.fetchedAt>or()}function qa(t,e){let r=rt();if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Error("tkr-daemon: no valid signing public key configured (set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM at build time).");let n=Va({key:r,format:"pem"});if(!Ha(null,Buffer.from(t.payload,"utf8"),n,Buffer.from(t.signature,"base64url")))throw new Error("tkr-daemon: rules bundle signature invalid");return JSON.parse(An(t.payload,e))}async function ur(t,e,r){if(t instanceof nt&&(t.status===401||t.status===403))try{return await r.heartbeat(e),await r.fetchBundle(e)}catch(n){return r.log(`initial fetch failed after heartbeat: ${n.message}`),null}return r.log(`initial fetch failed: ${t.message}`),null}async function St(t){let e=await R();if(!e||!e.jwt)throw new Error("tkr-daemon: not activated (no JWT)");if(!e.signingSecret)throw new Error("tkr-daemon: not activated (no signing secret)");let r=await j("GET","/api/v1/rules/bundle",void 0,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:e.fingerprint??"0".repeat(64),installId:e.installId,timeoutMs:1e4});if(!r.ok)throw new nt(r.status);let n=Wa.parse(await r.json()),s=lr(n,e.signingSecret);return Cn(n),s}function lr(t,e){let r=qa(t,e),n=Ka.parse(r);if(Date.now()-n.signedAt>or())throw new Error("tkr-daemon: rules bundle is stale");let s=new Map;for(let i of n.filters)s.set(i.slug,{...i,matchRegex:new RegExp(i.match_command)});return wn(),{bundleVersion:n.bundleVersion,signedAt:n.signedAt,ruleCount:s.size,startedAt:Date.now(),fetchedAt:Date.now(),selectFor:(i,a,o)=>vn(i,s.values(),o&&o.length>0?new Set(o):null)}}async function Ja(){try{let t=In();if(!t)return null;let e=await R();return e?.signingSecret?lr(t,e.signingSecret):null}catch{return null}}var Ka,Wa,Ga,nt,At=E(()=>{"use strict";Ne();Gt();kn();re();ze();Tn();Dn();Ka=f.object({bundleVersion:f.number().int().nonnegative(),signedAt:f.number().int(),filters:f.array(wt)}),Wa=f.object({payload:f.string().min(1),signature:f.string().min(1),enc:f.literal("v1")}),Ga=10080*60*1e3;nt=class extends Error{status;constructor(e){super(`tkr-daemon: bundle fetch failed ${e}`),this.status=e}}});import Ze from"node:os";import{createHash as Qa,randomUUID as eo}from"node:crypto";import{readFile as Mn,writeFile as $n,mkdir as to}from"node:fs/promises";async function Tt(){try{let r=(await Mn(Ye(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(r))return r}catch{}await to(w(),{recursive:!0});let t=eo();try{return await $n(Ye(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await Mn(Ye(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await $n(Ye(),t,{mode:384}),t}}function dr(t){return Qa("sha256").update(t).digest("hex")}function ro(){let t=Ze.networkInterfaces();for(let e of Object.keys(t))for(let r of t[e]??[])if(!r.internal&&r.mac&&r.mac!=="00:00:00:00:00:00")return r.mac;return"no-mac"}async function J(){let t=await Tt(),e=Ze.hostname(),r=Ze.platform(),n=Ze.release(),s=Ze.cpus(),i=s[0]?.model??"unknown",a=s.length,o=dr(ro()),c=dr(Ze.userInfo().username),u=[e,r,n,i,String(a),o,c,t].join("|");return{fingerprint:dr(u),installId:t,hostname:e,os:r,osVersion:n,cpuModel:i,cpuCores:a,macHash:o,usernameHash:c}}var Be=E(()=>{"use strict";P()});import{readFile as Xn,writeFile as Qn,mkdir as es,chmod as vo,rm as It,rename as ts,readdir as wo}from"node:fs/promises";import{randomUUID as ko}from"node:crypto";import{join as st}from"node:path";import{setTimeout as qn}from"node:timers/promises";async function se(){try{let t=await Xn(st(w(),rs),"utf8"),e=JSON.parse(t);return Fe.parse({...Jn,...e})}catch{return Jn}}async function yr(t){await es(w(),{recursive:!0});let e=st(w(),rs),r=`${e}.tmp-${process.pid}-${process.hrtime.bigint()}`;await Qn(r,JSON.stringify(t,null,2),{mode:384});try{await vo(r,384),await ts(r,e)}catch(n){try{await It(r,{force:!0})}catch{}throw n}}async function Yn(t){let e=[];for(let r of await wo(t)){let n=/^([1-9]\d*)-[0-9a-f-]{36}\.json$/.exec(r);if(!n)continue;let s=st(t,r);try{process.kill(Number(n[1]),0)}catch(i){let a=i.code;if(a==="ESRCH"){await It(s,{force:!0});continue}if(a!=="EPERM")throw i}try{let i=JSON.parse(await Xn(s,"utf8"));if(!Number.isSafeInteger(i)||i<0)throw new Error("Invalid local settings lock");e.push({id:r,ticket:i})}catch(i){if(i.code!=="ENOENT")throw i}}return e}async function ns(t){let e=bo.parse(t),r=st(w(),"settings-cache-locks");await es(r,{recursive:!0,mode:448});let n=`${process.pid}-${ko()}.json`,s=st(r,n),i=`${s}.tmp`,a=performance.now()+3e3,o=async c=>{for(await Qn(i,String(c),{mode:384});;)try{await ts(i,s);return}catch(u){let d=u.code;if(process.platform!=="win32"||d!=="EPERM"&&d!=="EBUSY"||performance.now()>=a)throw u;await qn(10)}};try{await o(0);let c=Math.max(0,...(await Yn(r)).map(u=>u.ticket))+1;if(!Number.isSafeInteger(c))throw new Error("Invalid local settings lock");for(await o(c);;){if(!(await Yn(r)).some(d=>d.id!==n&&(d.ticket===0||d.ticket<c||d.ticket===c&&d.id<n))){let d=await se(),b=Fe.parse({...d,...e,filters:{...d.filters,...e.filters}});return await yr(b),b}if(performance.now()>=a)throw new Error("Timed out waiting for local settings lock after 3 seconds; another process may still be updating settings");await qn(10)}}finally{await Promise.all([It(s,{force:!0}),It(i,{force:!0})])}}var rs,Jn,bo,Dt=E(()=>{"use strict";tt();P();rs="settings-cache.json",Jn=Fe.parse({}),bo=Fe.partial().extend({filters:Fe.shape.filters.removeDefault().partial().optional()})});var ds={};ie(ds,{connectDaemon:()=>ls,shutdownDaemon:()=>us});import{createConnection as Eo}from"node:net";import{spawn as So}from"node:child_process";import{existsSync as os,openSync as _r,closeSync as is,unlinkSync as wr,writeFileSync as kr,mkdirSync as br,readFileSync as Ao,appendFileSync as To,rmSync as Ro,statSync as Co}from"node:fs";import{dirname as Io,join as xr}from"node:path";import{fileURLToPath as Do}from"node:url";function Er(){return xr(w(),"daemon.spawn.fail")}function Sr(){return xr(w(),"daemon.log")}function Mo(){try{let t=Number(Ao(Er(),"utf8"));return Number.isFinite(t)&&Date.now()-t<Po}catch{return!1}}function $o(t){try{br(w(),{recursive:!0});let e=Sr();try{Co(e).size>No&&wr(e)}catch{}To(e,`${new Date().toISOString()} ${t}
9
+ `)}catch{}}function Fo(t){try{br(w(),{recursive:!0}),kr(Er(),String(Date.now()))}catch{}$o(`spawn failed: ${t.message}`)}function jo(){try{Ro(Er(),{force:!0})}catch{}}async function Ot(t,e){return new Promise((r,n)=>{let s=Eo(t),i=o=>{if(s.removeAllListeners("connect"),s.removeAllListeners("error"),clearTimeout(a),o){try{s.destroy()}catch{}n(o)}else r(s)},a=setTimeout(()=>i(new Error("connect timeout")),e);s.once("connect",()=>i(null)),s.once("error",o=>i(o))})}function Lo(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:Do(new URL("../bin/tkr-daemon.js",import.meta.url))}async function vr(t,e=3e3){let r=Math.ceil(e/75),n=process.platform==="win32";for(let s=0;s<r;s++){if(n)try{return(await Ot(t,75)).destroy(),!0}catch{}else if(os(t))return!0;await new Promise(i=>setTimeout(i,75))}return!1}async function zo(t){let e=Lo();if(!os(e))throw new Error(`tkr-daemon binary not found at ${e}`);let{path:r}=be(),n=process.platform==="win32"?w():Io(r);try{br(n,{recursive:!0})}catch{}let s=xr(n,"daemon.spawn.lock"),i=null;try{i=_r(s,"wx"),kr(i,String(process.pid))}catch(a){if(a.code==="EEXIST"){if(await vr(r,5e3))return;try{wr(s)}catch{}try{i=_r(s,"wx"),kr(i,String(process.pid))}catch(c){if(c.code==="EEXIST"){await vr(r,5e3);return}throw c}}else throw a}try{let a=null;try{a=_r(Sr(),"a")}catch{}if(So(process.execPath,[e],{detached:!0,stdio:["ignore","ignore",a??"ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:t}}).unref(),a!==null)try{is(a)}catch{}if(!await vr(r,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(i!==null){try{is(i)}catch{}try{wr(s)}catch{}}}}async function us(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:be(),r=await Tt();try{let n=await Ot(e,cs);n.write(te({id:Je(),op:"shutdown",installId:r})),await new Promise(s=>setTimeout(s,150));try{n.destroy()}catch{}return!0}catch{return!1}}async function Zo(t,e){let r=Date.now()+e;for(;Date.now()<r;){try{(await Ot(t,250)).destroy()}catch{return!0}await new Promise(n=>setTimeout(n,100))}return!1}async function ls(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:be(),r=await Tt(),n=null,s=0,i=!1;for(;s<=as;)try{n=await Ot(e,cs),jo();break}catch{if(s+=1,s>as)throw new Error(`tkr-daemon unreachable at ${e}`);if(Mo())throw new Error(`tkr-daemon spawn on cooldown (see ${Sr()})`);await et();try{await zo(r),i=!0}catch(d){throw Fo(d),d}}if(!n)throw new Error("tkr-daemon: socket setup failed");let a=new Map,o="";n.setEncoding("utf8"),n.on("data",d=>{o+=d;let b=-1;for(let A=0;A<o.length;A++)o[A]===Me&&(b=A);if(b<0)return;let S=[];for(let A of kt(o.slice(0,b+1)))S.push(A);o=o.slice(b+1);for(let A of S)if(A)try{let y=JSON.parse(A),T=a.get(y.id);if(!T)continue;clearTimeout(T.timer),a.delete(y.id),T.resolve(y)}catch{}}),n.on("close",()=>{for(let d of a.values())clearTimeout(d.timer),d.reject(new Error("daemon socket closed"));a.clear()}),n.on("error",()=>{});function c(d){return new Promise((b,S)=>{let A=setTimeout(()=>{a.delete(d.id),S(new Error(`daemon request timeout (${d.op})`))},Oo);a.set(d.id,{resolve:b,reject:S,timer:A}),n.write(te(d))})}let u={filter:async(d,b,S)=>{let A=await c({id:Je(),op:"filter",cmd:d.slice(0,2048),plan:b,...S&&S.length>0?{allowed:S.slice(0,512)}:{},installId:r});if(!A.ok)return null;let y=un.safeParse(A.data);return y.success?y.data.filter:null},ping:async()=>{let d=await c({id:Je(),op:"ping"});if(!d.ok)throw new Error(d.err);return d.data},reload:async()=>{let d=await c({id:Je(),op:"reload",installId:r});if(!d.ok)throw new Error(d.err);return d.data},close:()=>{try{n.end()}catch{}}};if(!t.skipVersionCheck&&!i){let d=!1;try{d=(await u.ping()).version!==q}catch{}if(d){try{await us(t.socketPath?{socketPath:t.socketPath}:{})}catch{}u.close();let b=await Zo(e,2e3);if(await et(),!b)throw new Error("stale daemon still running after shutdown request");return ls({...t,skipVersionCheck:!0})}}return u}var cs,Oo,as,Po,No,fs=E(()=>{"use strict";qt();tr();P();Be();Le();cs=500,Oo=3e3,as=1,Po=6e4,No=256*1024});import{readFileSync as Bo,renameSync as Uo,statSync as Vo,writeFileSync as Ho}from"node:fs";function ps(t,e,r){try{if(Vo(t).size<=e)return;let n=Bo(t,"utf8").split(`
10
+ `).filter(o=>o.trim()!==""),s=[],i=0;for(let o=n.length-1;o>=0;o-=1){let c=n[o],u=Buffer.byteLength(c)+1;if(i+u>r)break;s.push(c),i+=u}s.reverse();let a=`${t}.tmp-${process.pid}`;Ho(a,s.length?`${s.join(`
11
11
  `)}
12
- `:"",{mode:384}),Fo(a,t)}catch{}}var as=S(()=>{"use strict"});var ds={};se(ds,{codexHookCommand:()=>Yo,codexHookInstalled:()=>qo,codexHooksFile:()=>xr,ensureCodexHook:()=>Jo});import{readFile as zo,writeFile as Zo,rename as Bo,mkdir as Uo,copyFile as Vo}from"node:fs/promises";import{existsSync as os,readFileSync as Ho,accessSync as Ko,constants as Wo}from"node:fs";import{join as Dt}from"node:path";import Go from"node:os";function xr(){return Dt(process.env.CODEX_HOME||Dt(Go.homedir(),".codex"),"hooks.json")}function ls(t){return(t.hooks??[]).find(e=>typeof e.command=="string"&&e.command.includes(us))}function qo(){try{return(JSON.parse(Ho(xr(),"utf8")).hooks?.PreToolUse??[]).some(e=>ls(e)!=null)}catch{return!1}}async function Jo(t){let e=xr(),r={},n=os(e);if(n)try{if(r=JSON.parse(await zo(e,"utf8")),!r||typeof r!="object"||Array.isArray(r))return"error"}catch{return"error"}let s=r.hooks&&typeof r.hooks=="object"?r.hooks:{},i=Array.isArray(s.PreToolUse)?s.PreToolUse:[],a="added",o=i.map(ls).find(c=>c!=null);if(o){if(o.command===t)return"present";o.command=t,a="updated"}else i.push({matcher:"Bash",hooks:[{type:"command",command:t,timeout:10}]});s.PreToolUse=i,r.hooks=s;try{await Uo(Dt(e,".."),{recursive:!0});let c=`${e}.tkr-bak`;n&&!os(c)&&await Vo(e,c);let l=`${e}.tmp-${process.pid}`;await Zo(l,`${JSON.stringify(r,null,2)}
13
- `),await Bo(l,e)}catch{return"error"}return a}function cs(t){return`'${t.replace(/'/g,"'\\''")}'`}function Yo(t,e){if(process.platform!=="win32")for(let r of t.split(":")){if(!r||r.includes("node_modules"))continue;let n=Dt(r,us);try{return Ko(n,Wo.X_OK),cs(n)}catch{}}return`node ${cs(e)}`}var us,fs=S(()=>{"use strict";us="tkr-codex-hook"});var ks={};se(ks,{autoUpdateEnabled:()=>Ar,claimSelfUpdateSlot:()=>ws,defaultDeps:()=>lc,maybeSpawnSelfUpdate:()=>fc,selfUpdate:()=>cc,setAutoUpdate:()=>ac});import{spawn as ys}from"node:child_process";import{accessSync as Xo,constants as Qo,existsSync as nt,mkdirSync as _s,readFileSync as vs,rmSync as ec,writeFileSync as Er,appendFileSync as tc}from"node:fs";import{fileURLToPath as rc}from"node:url";import{join as L}from"node:path";import nc from"node:os";function Ar(){return process.env.TOKMIZER_AUTO_UPDATE==="0"?!1:!nt(Sr())}function ac(t){if(t){ec(Sr(),{force:!0});return}_s(k(),{recursive:!0,mode:448}),Er(Sr(),String(Date.now()))}function ws(t=Date.now()){try{let e=Number(vs(hs(),"utf8"));if(Number.isFinite(e)&&t-e<sc)return!1}catch{}try{_s(k(),{recursive:!0,mode:448}),Er(hs(),String(t))}catch{return!1}return!0}function oc(t){try{let e=L(k(),"self-update.log");tc(e,`${new Date().toISOString()} ${t}
14
- `,{mode:384}),is(e,ms,ms/2)}catch{}}async function cc(t){if(!Ar())return["disabled"];let e=t.latest;if(!e||!ps.test(e))return["no-version"];let r=[],n=[],s=(await t.run("npm",["root","-g"]).catch(()=>({code:1,stdout:""}))).stdout.trim(),i=s?t.npmVersion(s):void 0;if(i)if(!bt(i,e))n.push(i);else if(!t.writable(s))r.push("npm needs permission");else{let o=await t.run("npm",["i","-g",`@tokmizer/plugin@${e}`,"--no-audit","--no-fund"]).catch(()=>({code:1,stdout:""})),c=t.npmVersion(s);o.code===0&&c===e?(r.push(`npm ${i} -> ${e}`),n.push(e)):r.push(`npm failed (${i})`)}if(process.platform!=="win32"){let o=await t.run("brew",["list","--versions","tokmizer"]).catch(()=>({code:1,stdout:""})),c=o.code===0?o.stdout.trim().split(/\s+/)[1]:void 0;if(c&&ps.test(c))if(!bt(c,e))n.push(c);else{let l=await t.run("brew",["upgrade","tokmizer"],{...process.env,HOMEBREW_NO_INSTALL_CLEANUP:"1"}).catch(()=>({code:1,stdout:""}));l.code===0?(r.push(`brew ${c} -> ${e}`),n.push(e)):/untrusted tap/i.test(l.stderr??"")?r.push("brew tap not trusted: run brew trust norwelltw/tokmizer"):r.push(`brew failed (${c})`)}}if(r.some(o=>o.includes("->"))&&await t.run("tkr",["shims-refresh"]).catch(()=>({code:1,stdout:""})),n.some(o=>!bt(o,ic))&&t.codexInstalled()&&!nt(gs())){let o=await t.ensureCodexHook(s).catch(()=>"error");if(o!=="error"){try{Er(gs(),String(Date.now()))}catch{}r.push(`codex hook ${o}`)}}for(let o of r)oc(o);return r}function uc(t,e,r){return new Promise(n=>{let s=ys(t,e,{env:r??process.env,shell:process.platform==="win32",stdio:["ignore","pipe","pipe"],windowsHide:!0}),i="",a="";s.stdout?.on("data",c=>{i+=c.toString("utf8")}),s.stderr?.on("data",c=>{a.length<8192&&(a+=c.toString("utf8"))});let o=setTimeout(()=>s.kill("SIGTERM"),10*6e4);s.on("error",()=>{clearTimeout(o),n({code:127,stdout:""})}),s.on("close",c=>{clearTimeout(o),n({code:c??1,stdout:i,stderr:a})})})}function lc(t){return{latest:t,run:uc,npmVersion:e=>{try{let r=JSON.parse(vs(L(e,"@tokmizer","plugin","package.json"),"utf8")).version;return typeof r=="string"?r:void 0}catch{return}},writable:e=>{try{return Xo(e,Qo.W_OK),!0}catch{return!1}},codexInstalled:()=>nt(process.env.CODEX_HOME||L(nc.homedir(),".codex")),ensureCodexHook:async e=>{let{ensureCodexHook:r,codexHookCommand:n}=await Promise.resolve().then(()=>(fs(),ds)),s=L(e,"@tokmizer","plugin","dist","bin","tkr-codex-hook.js"),i=n(process.env.PATH??"",s);return i.startsWith("node ")&&!nt(s)?"error":r(i)}}}function dc(){let t=rc(new URL(".",import.meta.url));for(let e of[L(t),L(t,"..")])if(nt(L(e,"bin","tkr.js")))return e;return null}function fc(){try{if(!Ar())return;let t=dc();if(!t||!ws())return;let e=ys(process.execPath,[L(t,"bin","tkr.js"),"self-update"],{detached:!0,stdio:"ignore",windowsHide:!0,env:{...process.env,TOKMIZER_SELF_UPDATE_CHILD:"1"}});e.on("error",()=>{}),e.unref()}catch{}}var ps,sc,ic,ms,Sr,hs,gs,bs=S(()=>{"use strict";$();Fe();as();ps=/^\d+\.\d+\.\d+$/,sc=6*36e5,ic="0.9.34",ms=64*1024,Sr=()=>L(k(),"auto-update-off"),hs=()=>L(k(),"self-update-last"),gs=()=>L(k(),"codex-hook-offered")});function st(t){let e=t;for(let[r,n]of pc)e=e.replace(r,n);return e}var pc,Tr=S(()=>{"use strict";pc=[[/(authorization\s*:\s*)([A-Za-z][A-Za-z0-9._-]*)\s+[^\s'"]+/gi,"$1$2 [REDACTED]"],[/(authorization\s*:\s*)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/(bearer\s+)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-b|--cookie)[=\s]+['"]?)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/(--?(?:password|passwd|passphrase|apipass|pass|pwd|token|api[-_]?key|secret|bearer|cookie|jwt)(?:-[a-z0-9]+)*[=\s]+)\S+/gi,"$1[REDACTED]"],[/((?:^|\s)-b[=\s]?['"]?)[^\s'"=]+=[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*:)(\/[^/\s'"][^\s'"]*|[^\s/'"0-9][^\s'"]*|[0-9][^\s'"]*[^\s'"0-9][^\s'"]*)/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*[^\s:/'"0-9][^\s:/'"]*:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:[A-Za-z0-9]+-){0,8}(?:X-Api-Key|Private-Token|[A-Za-z0-9]+-(?:Token|Key|Auth|Secret))\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/(-i\s+)(\/[^\s]+|~\/[^\s]+|[A-Z]:\\[^\s]+)/g,"$1[REDACTED]"],[/([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^:/\s@]*:)[^\s@]+(@[^@/\s]+)/g,"$1[REDACTED]$2"],[/(AWS_(?:ACCESS_KEY_ID|SECRET_ACCESS_KEY|SESSION_TOKEN)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(GOOGLE_APPLICATION_CREDENTIALS\s*=\s*)\S+/g,"$1[REDACTED]"],[/(AZURE_(?:CLIENT_SECRET|TENANT_ID|CLIENT_ID)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-(?:proj-)?[A-Za-z0-9_-]{20,})/g,"sk-[REDACTED]"],[/\b(OPENAI_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(ANTHROPIC_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-ant-[A-Za-z0-9_-]{20,})/g,"sk-ant-[REDACTED]"],[/\b(GH(?:_|ITHUB_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(GITLAB_TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(SLACK_(?:BOT_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/(xox[bpsoa]-[A-Za-z0-9-]{10,})/g,"xox[REDACTED]"],[/(xapp-[A-Za-z0-9-]{10,})/g,"[REDACTED]"],[/(sk_(?:test|live)_[A-Za-z0-9]{16,})/g,"sk_[REDACTED]"],[/(gh[a-z])_[A-Za-z0-9]{20,}/g,"$1_[REDACTED]"],[/(github_pat)_[A-Za-z0-9_]{20,}/g,"$1_[REDACTED]"],[/(gl(?:pat|rt|soat|imt|dt|ft|agent|oas|cbt|ptt))-[A-Za-z0-9_-]{16,}/g,"$1-[REDACTED]"],[/(npm_[A-Za-z0-9_-]{20,})/g,"npm_[REDACTED]"],[/(?:AKIA|ASIA|AGPA|AIDA|AROA|ANPA)[0-9A-Z]{16,}/g,"[REDACTED_AWS_KEY]"],[/AIza[A-Za-z0-9_-]{35}/g,"[REDACTED_GOOGLE_KEY]"],[/hv[sb]\.[A-Za-z0-9_-]{20,}/g,"[REDACTED_VAULT_TOKEN]"],[/dop_v1_[A-Za-z0-9]{40,}/g,"[REDACTED]"],[/dckr_pat_[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/pypi-[A-Za-z0-9_-]{16,}/g,"[REDACTED]"],[/rk_(?:live|test)_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/whsec_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/(eyJ[A-Za-z0-9_-]{6,}(?:\.[A-Za-z0-9_-]{4,}){1,2})/g,"[REDACTED_JWT]"],[/-----BEGIN [A-Z ]*PRIVATE KEY-----(?:[\s\S]*?-----END[^\n]*-----|\r?\n[A-Za-z0-9+/=][A-Za-z0-9+/=\r\n]*)?/g,"[REDACTED_PEM]"],[/\b((?:--?)?[A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|AUTH|_PWD)[A-Za-z0-9_]*['"]?\s*=\s*)(?:"[^"]*"|'[^']*'|[^"'\s]\S*)/gi,"$1[REDACTED]"],[/\b([A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|_PWD)[A-Za-z0-9_]*['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/((?:^|[\s'"{,])['"]?(?:[A-Za-z0-9_]+_)?auth['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/(\bpwd\s*[=:]\s*)(?:"[^"]*"|'[^']*'|[^/~\s][^\s;'"]*)/gi,"$1[REDACTED]"],[/([=:]\s*["']?)[A-Za-z0-9_\-+/=]{40,}/g,"$1[REDACTED]"]]});import{join as Ot}from"node:path";import{appendFileSync as Es,chmodSync as mc,existsSync as it,mkdirSync as Dr,readFileSync as Pr,renameSync as Ir,rmdirSync as As,statSync as Nr,unlinkSync as Ze,utimesSync as hc,writeFileSync as Mr}from"node:fs";function $r(t){return Ot(at(),`${t}.lock`)}function yc(t){let e=$r(t);try{return Dr(at(),{recursive:!0,mode:448}),Dr(e),!0}catch{try{Date.now()-Nr(e).mtimeMs>gc&&As(e)}catch{return!1}return!1}}function _c(t){try{hc($r(t),new Date,new Date)}catch{return}}function vc(t){try{As($r(t))}catch{return}}function at(){return Ot(k(),"spool")}function It(t){return Ot(at(),`${t}.jsonl`)}function Pt(t){return Ot(at(),`${t}.pending.jsonl`)}function Nt(t,e){try{Dr(at(),{recursive:!0,mode:448});let r=It(t);if(it(r)&&Nr(r).size>=Or)return;Es(r,JSON.stringify(e)+`
15
- `,{mode:384}),mc(r,384)}catch{return}}function xs(t,e){Es(t,Pr(e,"utf8"),{mode:384}),Mr(e,"",{mode:384});try{Ze(e)}catch{return}}function wc(t){if(Nr(t).size<=Or)return;let e=Pr(t,"utf8").split(`
16
- `).filter(s=>s.trim()),r=0,n=[];for(let s=e.length-1;s>=0;s--){let i=e[s]??"";if(r+=Buffer.byteLength(i,"utf8")+1,r>Or)break;n.unshift(i)}Mr(t,n.length?n.join(`
12
+ `:"",{mode:384}),Uo(a,t)}catch{}}var ms=E(()=>{"use strict"});var vs={};ie(vs,{codexHookCommand:()=>nc,codexHookInstalled:()=>tc,codexHooksFile:()=>Ar,ensureCodexHook:()=>rc});import{readFile as Ko,writeFile as Wo,rename as Go,mkdir as qo,copyFile as Jo}from"node:fs/promises";import{existsSync as hs,readFileSync as Yo,accessSync as Xo,constants as Qo}from"node:fs";import{join as Pt}from"node:path";import ec from"node:os";function Ar(){return Pt(process.env.CODEX_HOME||Pt(ec.homedir(),".codex"),"hooks.json")}function _s(t){return(t.hooks??[]).find(e=>typeof e.command=="string"&&e.command.includes(ys))}function tc(){try{return(JSON.parse(Yo(Ar(),"utf8")).hooks?.PreToolUse??[]).some(e=>_s(e)!=null)}catch{return!1}}async function rc(t){let e=Ar(),r={},n=hs(e);if(n)try{if(r=JSON.parse(await Ko(e,"utf8")),!r||typeof r!="object"||Array.isArray(r))return"error"}catch{return"error"}let s=r.hooks&&typeof r.hooks=="object"?r.hooks:{},i=Array.isArray(s.PreToolUse)?s.PreToolUse:[],a="added",o=i.map(_s).find(c=>c!=null);if(o){if(o.command===t)return"present";o.command=t,a="updated"}else i.push({matcher:"Bash",hooks:[{type:"command",command:t,timeout:10}]});s.PreToolUse=i,r.hooks=s;try{await qo(Pt(e,".."),{recursive:!0});let c=`${e}.tkr-bak`;n&&!hs(c)&&await Jo(e,c);let u=`${e}.tmp-${process.pid}`;await Wo(u,`${JSON.stringify(r,null,2)}
13
+ `),await Go(u,e)}catch{return"error"}return a}function gs(t){return`'${t.replace(/'/g,"'\\''")}'`}function nc(t,e){if(process.platform!=="win32")for(let r of t.split(":")){if(!r||r.includes("node_modules"))continue;let n=Pt(r,ys);try{return Xo(n,Qo.X_OK),gs(n)}catch{}}return`node ${gs(e)}`}var ys,ws=E(()=>{"use strict";ys="tkr-codex-hook"});var Cs={};ie(Cs,{autoUpdateEnabled:()=>Cr,claimSelfUpdateSlot:()=>Rs,defaultDeps:()=>gc,maybeSpawnSelfUpdate:()=>_c,selfUpdate:()=>mc,setAutoUpdate:()=>fc});import{spawn as Ss}from"node:child_process";import{accessSync as sc,constants as ic,existsSync as it,mkdirSync as As,readFileSync as Ts,rmSync as ac,writeFileSync as Rr,appendFileSync as oc}from"node:fs";import{fileURLToPath as cc}from"node:url";import{join as L}from"node:path";import uc from"node:os";function Cr(){return process.env.TOKMIZER_AUTO_UPDATE==="0"?!1:!it(Tr())}function fc(t){if(t){ac(Tr(),{force:!0});return}As(w(),{recursive:!0,mode:448}),Rr(Tr(),String(Date.now()))}function Rs(t=Date.now()){try{let e=Number(Ts(xs(),"utf8"));if(Number.isFinite(e)&&t-e<lc)return!1}catch{}try{As(w(),{recursive:!0,mode:448}),Rr(xs(),String(t))}catch{return!1}return!0}function pc(t){try{let e=L(w(),"self-update.log");oc(e,`${new Date().toISOString()} ${t}
14
+ `,{mode:384}),ps(e,bs,bs/2)}catch{}}async function mc(t){if(!Cr())return["disabled"];let e=t.latest;if(!e||!ks.test(e))return["no-version"];let r=[],n=[],s=(await t.run("npm",["root","-g"]).catch(()=>({code:1,stdout:""}))).stdout.trim(),i=s?t.npmVersion(s):void 0;if(i)if(!Et(i,e))n.push(i);else if(!t.writable(s))r.push("npm needs permission");else{let o=await t.run("npm",["i","-g",`@tokmizer/plugin@${e}`,"--no-audit","--no-fund"]).catch(()=>({code:1,stdout:""})),c=t.npmVersion(s);o.code===0&&c===e?(r.push(`npm ${i} -> ${e}`),n.push(e)):r.push(`npm failed (${i})`)}if(process.platform!=="win32"){let o=await t.run("brew",["list","--versions","tokmizer"]).catch(()=>({code:1,stdout:""})),c=o.code===0?o.stdout.trim().split(/\s+/)[1]:void 0;if(c&&ks.test(c))if(!Et(c,e))n.push(c);else{let u=await t.run("brew",["upgrade","tokmizer"],{...process.env,HOMEBREW_NO_INSTALL_CLEANUP:"1"}).catch(()=>({code:1,stdout:""}));u.code===0?(r.push(`brew ${c} -> ${e}`),n.push(e)):/untrusted tap/i.test(u.stderr??"")?r.push("brew tap not trusted: run brew trust norwelltw/tokmizer"):r.push(`brew failed (${c})`)}}if(r.some(o=>o.includes("->"))&&await t.run("tkr",["shims-refresh"]).catch(()=>({code:1,stdout:""})),n.some(o=>!Et(o,dc))&&t.codexInstalled()&&!it(Es())){let o=await t.ensureCodexHook(s).catch(()=>"error");if(o!=="error"){try{Rr(Es(),String(Date.now()))}catch{}r.push(`codex hook ${o}`)}}for(let o of r)pc(o);return r}function hc(t,e,r){return new Promise(n=>{let s=Ss(t,e,{env:r??process.env,shell:process.platform==="win32",stdio:["ignore","pipe","pipe"],windowsHide:!0}),i="",a="";s.stdout?.on("data",c=>{i+=c.toString("utf8")}),s.stderr?.on("data",c=>{a.length<8192&&(a+=c.toString("utf8"))});let o=setTimeout(()=>s.kill("SIGTERM"),10*6e4);s.on("error",()=>{clearTimeout(o),n({code:127,stdout:""})}),s.on("close",c=>{clearTimeout(o),n({code:c??1,stdout:i,stderr:a})})})}function gc(t){return{latest:t,run:hc,npmVersion:e=>{try{let r=JSON.parse(Ts(L(e,"@tokmizer","plugin","package.json"),"utf8")).version;return typeof r=="string"?r:void 0}catch{return}},writable:e=>{try{return sc(e,ic.W_OK),!0}catch{return!1}},codexInstalled:()=>it(process.env.CODEX_HOME||L(uc.homedir(),".codex")),ensureCodexHook:async e=>{let{ensureCodexHook:r,codexHookCommand:n}=await Promise.resolve().then(()=>(ws(),vs)),s=L(e,"@tokmizer","plugin","dist","bin","tkr-codex-hook.js"),i=n(process.env.PATH??"",s);return i.startsWith("node ")&&!it(s)?"error":r(i)}}}function yc(){let t=cc(new URL(".",import.meta.url));for(let e of[L(t),L(t,"..")])if(it(L(e,"bin","tkr.js")))return e;return null}function _c(){try{if(!Cr())return;let t=yc();if(!t||!Rs())return;let e=Ss(process.execPath,[L(t,"bin","tkr.js"),"self-update"],{detached:!0,stdio:"ignore",windowsHide:!0,env:{...process.env,TOKMIZER_SELF_UPDATE_CHILD:"1"}});e.on("error",()=>{}),e.unref()}catch{}}var ks,lc,dc,bs,Tr,xs,Es,Is=E(()=>{"use strict";P();Le();ms();ks=/^\d+\.\d+\.\d+$/,lc=6*36e5,dc="0.9.34",bs=64*1024,Tr=()=>L(w(),"auto-update-off"),xs=()=>L(w(),"self-update-last"),Es=()=>L(w(),"codex-hook-offered")});function at(t){let e=t;for(let[r,n]of vc)e=e.replace(r,n);return e}var vc,Ir=E(()=>{"use strict";vc=[[/(authorization\s*:\s*)([A-Za-z][A-Za-z0-9._-]*)\s+[^\s'"]+/gi,"$1$2 [REDACTED]"],[/(authorization\s*:\s*)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/(bearer\s+)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-b|--cookie)[=\s]+['"]?)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/(--?(?:password|passwd|passphrase|apipass|pass|pwd|token|api[-_]?key|secret|bearer|cookie|jwt)(?:-[a-z0-9]+)*[=\s]+)\S+/gi,"$1[REDACTED]"],[/((?:^|\s)-b[=\s]?['"]?)[^\s'"=]+=[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*:)(\/[^/\s'"][^\s'"]*|[^\s/'"0-9][^\s'"]*|[0-9][^\s'"]*[^\s'"0-9][^\s'"]*)/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*[^\s:/'"0-9][^\s:/'"]*:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:[A-Za-z0-9]+-){0,8}(?:X-Api-Key|Private-Token|[A-Za-z0-9]+-(?:Token|Key|Auth|Secret))\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/(-i\s+)(\/[^\s]+|~\/[^\s]+|[A-Z]:\\[^\s]+)/g,"$1[REDACTED]"],[/([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^:/\s@]*:)[^\s@]+(@[^@/\s]+)/g,"$1[REDACTED]$2"],[/(AWS_(?:ACCESS_KEY_ID|SECRET_ACCESS_KEY|SESSION_TOKEN)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(GOOGLE_APPLICATION_CREDENTIALS\s*=\s*)\S+/g,"$1[REDACTED]"],[/(AZURE_(?:CLIENT_SECRET|TENANT_ID|CLIENT_ID)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-(?:proj-)?[A-Za-z0-9_-]{20,})/g,"sk-[REDACTED]"],[/\b(OPENAI_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(ANTHROPIC_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-ant-[A-Za-z0-9_-]{20,})/g,"sk-ant-[REDACTED]"],[/\b(GH(?:_|ITHUB_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(GITLAB_TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(SLACK_(?:BOT_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/(xox[bpsoa]-[A-Za-z0-9-]{10,})/g,"xox[REDACTED]"],[/(xapp-[A-Za-z0-9-]{10,})/g,"[REDACTED]"],[/(sk_(?:test|live)_[A-Za-z0-9]{16,})/g,"sk_[REDACTED]"],[/(gh[a-z])_[A-Za-z0-9]{20,}/g,"$1_[REDACTED]"],[/(github_pat)_[A-Za-z0-9_]{20,}/g,"$1_[REDACTED]"],[/(gl(?:pat|rt|soat|imt|dt|ft|agent|oas|cbt|ptt))-[A-Za-z0-9_-]{16,}/g,"$1-[REDACTED]"],[/(npm_[A-Za-z0-9_-]{20,})/g,"npm_[REDACTED]"],[/(?:AKIA|ASIA|AGPA|AIDA|AROA|ANPA)[0-9A-Z]{16,}/g,"[REDACTED_AWS_KEY]"],[/AIza[A-Za-z0-9_-]{35}/g,"[REDACTED_GOOGLE_KEY]"],[/hv[sb]\.[A-Za-z0-9_-]{20,}/g,"[REDACTED_VAULT_TOKEN]"],[/dop_v1_[A-Za-z0-9]{40,}/g,"[REDACTED]"],[/dckr_pat_[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/pypi-[A-Za-z0-9_-]{16,}/g,"[REDACTED]"],[/rk_(?:live|test)_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/whsec_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/(eyJ[A-Za-z0-9_-]{6,}(?:\.[A-Za-z0-9_-]{4,}){1,2})/g,"[REDACTED_JWT]"],[/-----BEGIN [A-Z ]*PRIVATE KEY-----(?:[\s\S]*?-----END[^\n]*-----|\r?\n[A-Za-z0-9+/=][A-Za-z0-9+/=\r\n]*)?/g,"[REDACTED_PEM]"],[/\b((?:--?)?[A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|AUTH|_PWD)[A-Za-z0-9_]*['"]?\s*=\s*)(?:"[^"]*"|'[^']*'|[^"'\s]\S*)/gi,"$1[REDACTED]"],[/\b([A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|_PWD)[A-Za-z0-9_]*['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/((?:^|[\s'"{,])['"]?(?:[A-Za-z0-9_]+_)?auth['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/(\bpwd\s*[=:]\s*)(?:"[^"]*"|'[^']*'|[^/~\s][^\s;'"]*)/gi,"$1[REDACTED]"],[/([=:]\s*["']?)[A-Za-z0-9_\-+/=]{40,}/g,"$1[REDACTED]"]]});import{join as Mt}from"node:path";import{appendFileSync as Ps,chmodSync as wc,existsSync as ot,mkdirSync as Pr,readFileSync as $r,renameSync as Nr,rmdirSync as Ns,statSync as Fr,unlinkSync as Ue,utimesSync as kc,writeFileSync as jr}from"node:fs";function Lr(t){return Mt(ct(),`${t}.lock`)}function xc(t){let e=Lr(t);try{return Pr(ct(),{recursive:!0,mode:448}),Pr(e),!0}catch{try{Date.now()-Fr(e).mtimeMs>bc&&Ns(e)}catch{return!1}return!1}}function Ec(t){try{kc(Lr(t),new Date,new Date)}catch{return}}function Sc(t){try{Ns(Lr(t))}catch{return}}function ct(){return Mt(w(),"spool")}function Nt(t){return Mt(ct(),`${t}.jsonl`)}function $t(t){return Mt(ct(),`${t}.pending.jsonl`)}function Ft(t,e){try{Pr(ct(),{recursive:!0,mode:448});let r=Nt(t);if(ot(r)&&Fr(r).size>=Mr)return;Ps(r,JSON.stringify(e)+`
15
+ `,{mode:384}),wc(r,384)}catch{return}}function Ds(t,e){Ps(t,$r(e,"utf8"),{mode:384}),jr(e,"",{mode:384});try{Ue(e)}catch{return}}function Ac(t){if(Fr(t).size<=Mr)return;let e=$r(t,"utf8").split(`
16
+ `).filter(s=>s.trim()),r=0,n=[];for(let s=e.length-1;s>=0;s--){let i=e[s]??"";if(r+=Buffer.byteLength(i,"utf8")+1,r>Mr)break;n.unshift(i)}jr(t,n.length?n.join(`
17
17
  `)+`
18
- `:"",{mode:384})}function kc(t){try{let e=Pt(t),r=It(t),n=`${r}.merging`;if(it(n)&&xs(e,n),it(e))it(r)&&(Ir(r,n),xs(e,n));else{if(!it(r))return[];Ir(r,e)}wc(e);let s=[];for(let i of Pr(e,"utf8").split(`
19
- `))if(i.trim())try{s.push(JSON.parse(i))}catch{continue}return s.length===0?(Ze(e),[]):s}catch{return[]}}function Ts(t){try{Ze(Pt(t))}catch{return}}function bc(t,e){if(e.length===0){Ts(t);return}let r=Pt(t),n=`${r}.tmp`;Mr(n,e.map(s=>JSON.stringify(s)).join(`
18
+ `:"",{mode:384})}function Tc(t){try{let e=$t(t),r=Nt(t),n=`${r}.merging`;if(ot(n)&&Ds(e,n),ot(e))ot(r)&&(Nr(r,n),Ds(e,n));else{if(!ot(r))return[];Nr(r,e)}Ac(e);let s=[];for(let i of $r(e,"utf8").split(`
19
+ `))if(i.trim())try{s.push(JSON.parse(i))}catch{continue}return s.length===0?(Ue(e),[]):s}catch{return[]}}function Ms(t){try{Ue($t(t))}catch{return}}function Rc(t,e){if(e.length===0){Ms(t);return}let r=$t(t),n=`${r}.tmp`;jr(n,e.map(s=>JSON.stringify(s)).join(`
20
20
  `)+`
21
- `,{mode:384}),Ir(n,r)}async function Mt(t,e,r={}){if(Cr.has(t)||!yc(t))return"fail";Cr.add(t);try{if(!(await rt()).telemetryOptIn)return Ss(t),"empty";let n=kc(t);if(n.length===0)return"empty";let s=await R();if(!s)return"fail";if(r.requirePro&&s.plan!=="pro")return Ts(t),"ok";let i=r.baseUrl??process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",a=await J();for(let o=0;o<n.length;o+=Rr){if(!(await rt()).telemetryOptIn)return Ss(t),"empty";_c(t);let c=await j("POST",e,{events:n.slice(o,o+Rr)},{baseUrl:i,bearer:s.jwt,signingSecret:s.signingSecret,fingerprint:a.fingerprint,installId:a.installId});if(!c.ok)return c.status===401||c.status===403?"auth":"fail";bc(t,n.slice(o+Rr))}return"ok"}catch{return"fail"}finally{Cr.delete(t),vc(t)}}function Ss(t){try{Ze(It(t))}catch{}try{Ze(`${It(t)}.merging`)}catch{}try{Ze(Pt(t))}catch{return}}var Or,Rr,gc,Cr,Fr=S(()=>{"use strict";$();re();ze();je();Rt();Or=512*1024,Rr=100,gc=12e4,Cr=new Set});var Cs={};se(Cs,{commandName:()=>$t,flushTelemetry:()=>jr,recordTelemetry:()=>Dc});function Rs(t){let e=t.toLowerCase();return e.startsWith("git")||Ac.has(e)}function $t(t){let e=t.trim().split(/\s+/).filter(o=>o.length>0),r=0;for(;r<e.length&&Ec.test(e[r]??"");)r+=1;let n=e[r];if(!n||!xc.test(n)||n.length>Rc||Rs(n)||Tc.test(n)||st(n)!==n)return"";let s=e[r+1];return s&&Rs(s)?"":(s&&Cc.has(n.toLowerCase())&&Sc.test(s)?`${n} ${s}`:n).slice(0,64)}async function Dc(t){if(!t.telemetryOptIn)return;let e=$t(t.cmd),r=e&&st(e)===e?e:"other",n=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";Nt("telemetry",{cmd:r,tokensSaved:Math.max(0,Math.round(t.tokensSaved)),...t.tokensRestored?{tokensRestored:Math.max(0,Math.round(t.tokensRestored))}:{},...t.rawTokens!=null?{rawTokens:Math.max(0,Math.round(t.rawTokens))}:{},optimized:t.optimized,...n?{sessionId:n}:{},...t.host?{host:t.host}:{}})}async function jr(t){return Mt("telemetry","/api/v1/telemetry",{baseUrl:t})}var xc,Sc,Ec,Ac,Tc,Rc,Cc,Ft=S(()=>{"use strict";Tr();Fr();xc=/^[a-z0-9][a-z0-9._-]*$/i,Sc=/^[a-z][a-z-]+$/,Ec=/^[A-Za-z_][A-Za-z0-9_]*=/,Ac=new Set(["gh","glab","gup","hub","gist"]),Tc=/^(gh[a-z]_|github_pat_|gl(?:pat|rt|soat|imt|dt|ft|agent|oas)-|npm_|xox|sk-|sk_|eyj|a(?:kia|sia|gpa|ida|roa|npa)|aiza|hv[sb]\.)/i,Rc=24,Cc=new Set(["docker","podman","npm","pnpm","yarn","npx","bun","deno","cargo","rustup","go","pip","pip3","uv","poetry","brew","apt","apt-get","dnf","yum","pacman","kubectl","helm","terraform","aws","gcloud","az","systemctl","composer","bundle","gem","dotnet","prisma","tkr","rtk","token"])});var Ds={};se(Ds,{flush:()=>Lr,recordEvent:()=>Ic});async function Ic(t){if(t.plan!=="pro"||!(await rt()).telemetryOptIn)return;let e=$t(t.cmd);!e||st(e)!==e||Nt("learn",{cmd:e,filterId:t.filterId==null?null:be(t.filterId),rawBytes:t.rawBytes,filteredBytes:t.filteredBytes})}async function Lr(t){return Mt("learn","/api/v1/learn",{baseUrl:t,requirePro:!0})}var zr=S(()=>{"use strict";Ft();Tr();Fr();Qe();Rt()});Kt();Xt();St();Fe();import{createServer as Ua}from"node:net";import{chmodSync as Va}from"node:fs";async function Dn(t,e={}){await Xe();let{path:r,isPipe:n}=e.socketPath?{path:e.socketPath,isPipe:process.platform==="win32"}:ke(),s=t,i=null,a=Date.now(),o=e.idleTimeoutMs??fn,c=process.env.TOKMIZER_DAEMON_INSTALL_ID??"",l=async y=>{if(a=Date.now(),y.op==="ping")return{id:y.id,ok:!0,data:{pid:process.pid,uptimeMs:s?Date.now()-s.startedAt:0,ruleCount:s?.ruleCount??0,bundleVersion:s?.bundleVersion??0,version:q}};if(y.op==="shutdown")return!c||y.installId!==c?{id:y.id,ok:!1,err:"forbidden"}:(setTimeout(()=>e.onShutdown?.(),10),{id:y.id,ok:!0,data:{stopping:!0}});if(y.op==="reload"){if(!c||y.installId!==c)return{id:y.id,ok:!1,err:"forbidden"};if(!e.onWarming)return{id:y.id,ok:!1,err:"no_warming_handler"};try{return s=await e.onWarming(),{id:y.id,ok:!0,data:{ruleCount:s.ruleCount,bundleVersion:s.bundleVersion}}}catch(T){return{id:y.id,ok:!1,err:T.message,retryAfterMs:1e3}}}if(y.op==="filter"){if(c&&y.installId!==c)return{id:y.id,ok:!1,err:"forbidden"};if(s&&ar(s))if(e.onWarming)i||(i=e.onWarming(),i.then(Ue=>{s=Ue}).catch(()=>{}).finally(()=>{i=null}));else return{id:y.id,ok:!0,data:{filter:null,cacheHit:!0}};if(!s)if(e.onWarming){i||(i=e.onWarming());try{s=await i}catch(Ue){return i=null,{id:y.id,ok:!1,err:Ue.message,retryAfterMs:1e3}}i=null}else return{id:y.id,ok:!1,err:"warming",retryAfterMs:250};let T=s.selectFor(y.cmd,y.plan,y.allowed);return{id:y.id,ok:!0,data:{filter:T??null,cacheHit:!0}}}return{id:y.id,ok:!1,err:"unknown_op"}},f=Ua(y=>{let T="";y.setEncoding("utf8"),y.on("data",Ue=>{if(T+=Ue,Buffer.byteLength(T,"utf8")>on){y.write(te({id:"?",ok:!1,err:"frame_too_large"})),T="";return}let lt=-1;for(let U=0;U<T.length;U++)T[U]===Ne&&(lt=U);if(lt<0)return;let Zr=[];for(let U of vt(T.slice(0,lt+1)))Zr.push(U);T=T.slice(lt+1);for(let U of Zr){if(!U)continue;let Br="?";try{let Se=JSON.parse(U);typeof Se.id=="string"&&Se.id.length<=64&&(Br=Se.id);let Ur=sn.parse(Se);l(Ur).then(jt=>{y.write(te(jt))}).catch(jt=>{y.write(te({id:Ur.id,ok:!1,err:`internal:${jt.message?.slice(0,80)??"error"}`}))})}catch(Se){y.write(te({id:Br,ok:!1,err:`bad_request:${Se.message.slice(0,80)}`}))}}}),y.on("error",()=>{try{y.destroy()}catch{}})}),x=!1,E=setInterval(()=>{if(x)return;let y=Date.now()-a;(!pn()&&y>o||y>o*2)&&(x=!0,e.onShutdown?.())},dn);return E.unref(),await new Promise((y,T)=>{f.once("error",T),f.listen(r,()=>{if(f.off("error",T),!n)try{Va(r,384)}catch{}y()})}),{server:f,close:async()=>{clearInterval(E),await new Promise(y=>f.close(()=>y()))}}}St();function In(t){let e=0,r=0,n=null;return async function(){let i=Date.now();if(r>i&&n)throw new Error(`bundle fetch cooling down for ${r-i}ms (last: ${n.message})`);try{let a=await t();return e=0,r=0,n=null,a}catch(a){if(e+=1,n=a,e>=3){let o=Math.min(6e4,500*2**(e-3));r=Date.now()+o}throw a}}}Qe();ze();re();je();$();import{readFile as Vd,writeFile as Oc,mkdir as Hd}from"node:fs/promises";je();re();ze();import{createPublicKey as qa,verify as Ja}from"node:crypto";function Ya(t,e){let r=et();if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Error("Tokmizer plugin: no valid signing public key. Set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM or rebuild plugin against a prod key.");let n=qa({key:r,format:"pem"});try{let s=Buffer.from(e,"base64url");return Ja(null,Buffer.from(t,"utf8"),n,s)}catch{return!1}}var Xa=/^[a-z0-9][a-z0-9-]*$/;async function Nn(t){let e=await R();if(!e)throw new Error("Plugin not activated.");let r=await J(),n=await j("GET","/api/v1/skills/bundle",void 0,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:8e3});if(!n.ok)throw new Error(`bundle fetch failed ${n.status}`);let s=await xe(n),i=[];for(let a of s.bundles){if(!Xa.test(a.slug))throw new Error(`invalid bundle slug ${a.slug}`);let o=[...a.fragments].sort((c,l)=>c.position-l.position);for(let c of o)if(!Ya(c.body,c.hash))throw new Error(`fragment signature mismatch on ${a.slug}[${c.position}]`);i.push({slug:a.slug,version:a.version,body:o.map(c=>c.body).join(`
21
+ `,{mode:384}),Nr(n,r)}async function jt(t,e,r={}){if(Or.has(t)||!xc(t))return"fail";Or.add(t);try{if(!(await se()).telemetryOptIn)return Os(t),"empty";let n=Tc(t);if(n.length===0)return"empty";let s=await R();if(!s)return"fail";if(r.requirePro&&s.plan!=="pro")return Ms(t),"ok";let i=r.baseUrl??process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",a=await J();for(let o=0;o<n.length;o+=Dr){if(!(await se()).telemetryOptIn)return Os(t),"empty";Ec(t);let c=await j("POST",e,{events:n.slice(o,o+Dr)},{baseUrl:i,bearer:s.jwt,signingSecret:s.signingSecret,fingerprint:a.fingerprint,installId:a.installId});if(!c.ok)return c.status===401||c.status===403?"auth":"fail";Rc(t,n.slice(o+Dr))}return"ok"}catch{return"fail"}finally{Or.delete(t),Sc(t)}}function Os(t){try{Ue(Nt(t))}catch{}try{Ue(`${Nt(t)}.merging`)}catch{}try{Ue($t(t))}catch{return}}var Mr,Dr,bc,Or,zr=E(()=>{"use strict";P();re();Be();ze();Dt();Mr=512*1024,Dr=100,bc=12e4,Or=new Set});var Fs={};ie(Fs,{commandName:()=>Lt,flushTelemetry:()=>Zr,recordTelemetry:()=>$c});function $s(t){let e=t.toLowerCase();return e.startsWith("git")||Oc.has(e)}function Lt(t){let e=t.trim().split(/\s+/).filter(o=>o.length>0),r=0;for(;r<e.length&&Dc.test(e[r]??"");)r+=1;let n=e[r];if(!n||!Cc.test(n)||n.length>Nc||$s(n)||Pc.test(n)||at(n)!==n)return"";let s=e[r+1];return s&&$s(s)?"":(s&&Mc.has(n.toLowerCase())&&Ic.test(s)?`${n} ${s}`:n).slice(0,64)}async function $c(t){if(!t.telemetryOptIn)return;let e=Lt(t.cmd),r=e&&at(e)===e?e:"other",n=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";Ft("telemetry",{cmd:r,tokensSaved:Math.max(0,Math.round(t.tokensSaved)),...t.tokensRestored?{tokensRestored:Math.max(0,Math.round(t.tokensRestored))}:{},...t.rawTokens!=null?{rawTokens:Math.max(0,Math.round(t.rawTokens))}:{},optimized:t.optimized,...n?{sessionId:n}:{},...t.host?{host:t.host}:{}})}async function Zr(t){return jt("telemetry","/api/v1/telemetry",{baseUrl:t})}var Cc,Ic,Dc,Oc,Pc,Nc,Mc,zt=E(()=>{"use strict";Ir();zr();Cc=/^[a-z0-9][a-z0-9._-]*$/i,Ic=/^[a-z][a-z-]+$/,Dc=/^[A-Za-z_][A-Za-z0-9_]*=/,Oc=new Set(["gh","glab","gup","hub","gist"]),Pc=/^(gh[a-z]_|github_pat_|gl(?:pat|rt|soat|imt|dt|ft|agent|oas)-|npm_|xox|sk-|sk_|eyj|a(?:kia|sia|gpa|ida|roa|npa)|aiza|hv[sb]\.)/i,Nc=24,Mc=new Set(["docker","podman","npm","pnpm","yarn","npx","bun","deno","cargo","rustup","go","pip","pip3","uv","poetry","brew","apt","apt-get","dnf","yum","pacman","kubectl","helm","terraform","aws","gcloud","az","systemctl","composer","bundle","gem","dotnet","prisma","tkr","rtk","token"])});var js={};ie(js,{flush:()=>Br,recordEvent:()=>Fc});async function Fc(t){if(t.plan!=="pro"||!(await se()).telemetryOptIn)return;let e=Lt(t.cmd);!e||at(e)!==e||Ft("learn",{cmd:e,filterId:t.filterId==null?null:xe(t.filterId),rawBytes:t.rawBytes,filteredBytes:t.filteredBytes})}async function Br(t){return jt("learn","/api/v1/learn",{baseUrl:t,requirePro:!0})}var Ur=E(()=>{"use strict";zt();Ir();zr();tt();Dt()});qt();tr();At();Le();import{createServer as Ya}from"node:net";import{chmodSync as Xa}from"node:fs";async function Pn(t,e={}){await et();let{path:r,isPipe:n}=e.socketPath?{path:e.socketPath,isPipe:process.platform==="win32"}:be(),s=t,i=null,a=Date.now(),o=e.idleTimeoutMs??hn,c=process.env.TOKMIZER_DAEMON_INSTALL_ID??"",u=async y=>{if(a=Date.now(),y.op==="ping")return{id:y.id,ok:!0,data:{pid:process.pid,uptimeMs:s?Date.now()-s.startedAt:0,ruleCount:s?.ruleCount??0,bundleVersion:s?.bundleVersion??0,version:q}};if(y.op==="shutdown")return!c||y.installId!==c?{id:y.id,ok:!1,err:"forbidden"}:(setTimeout(()=>e.onShutdown?.(),10),{id:y.id,ok:!0,data:{stopping:!0}});if(y.op==="reload"){if(!c||y.installId!==c)return{id:y.id,ok:!1,err:"forbidden"};if(!e.onWarming)return{id:y.id,ok:!1,err:"no_warming_handler"};try{return s=await e.onWarming(),{id:y.id,ok:!0,data:{ruleCount:s.ruleCount,bundleVersion:s.bundleVersion}}}catch(T){return{id:y.id,ok:!1,err:T.message,retryAfterMs:1e3}}}if(y.op==="filter"){if(c&&y.installId!==c)return{id:y.id,ok:!1,err:"forbidden"};if(s&&cr(s))if(e.onWarming)i||(i=e.onWarming(),i.then(He=>{s=He}).catch(()=>{}).finally(()=>{i=null}));else return{id:y.id,ok:!0,data:{filter:null,cacheHit:!0}};if(!s)if(e.onWarming){i||(i=e.onWarming());try{s=await i}catch(He){return i=null,{id:y.id,ok:!1,err:He.message,retryAfterMs:1e3}}i=null}else return{id:y.id,ok:!1,err:"warming",retryAfterMs:250};let T=s.selectFor(y.cmd,y.plan,y.allowed);return{id:y.id,ok:!0,data:{filter:T??null,cacheHit:!0}}}return{id:y.id,ok:!1,err:"unknown_op"}},d=Ya(y=>{let T="";y.setEncoding("utf8"),y.on("data",He=>{if(T+=He,Buffer.byteLength(T,"utf8")>ln){y.write(te({id:"?",ok:!1,err:"frame_too_large"})),T="";return}let ft=-1;for(let U=0;U<T.length;U++)T[U]===Me&&(ft=U);if(ft<0)return;let Vr=[];for(let U of kt(T.slice(0,ft+1)))Vr.push(U);T=T.slice(ft+1);for(let U of Vr){if(!U)continue;let Hr="?";try{let Se=JSON.parse(U);typeof Se.id=="string"&&Se.id.length<=64&&(Hr=Se.id);let Kr=cn.parse(Se);u(Kr).then(Zt=>{y.write(te(Zt))}).catch(Zt=>{y.write(te({id:Kr.id,ok:!1,err:`internal:${Zt.message?.slice(0,80)??"error"}`}))})}catch(Se){y.write(te({id:Hr,ok:!1,err:`bad_request:${Se.message.slice(0,80)}`}))}}}),y.on("error",()=>{try{y.destroy()}catch{}})}),b=!1,S=setInterval(()=>{if(b)return;let y=Date.now()-a;(!gn()&&y>o||y>o*2)&&(b=!0,e.onShutdown?.())},mn);return S.unref(),await new Promise((y,T)=>{d.once("error",T),d.listen(r,()=>{if(d.off("error",T),!n)try{Xa(r,384)}catch{}y()})}),{server:d,close:async()=>{clearInterval(S),await new Promise(y=>d.close(()=>y()))}}}At();function Nn(t){let e=0,r=0,n=null;return async function(){let i=Date.now();if(r>i&&n)throw new Error(`bundle fetch cooling down for ${r-i}ms (last: ${n.message})`);try{let a=await t();return e=0,r=0,n=null,a}catch(a){if(e+=1,n=a,e>=3){let o=Math.min(6e4,500*2**(e-3));r=Date.now()+o}throw a}}}tt();Be();re();ze();P();import{readFile as rf,writeFile as jc,mkdir as nf}from"node:fs/promises";ze();re();Be();import{createPublicKey as no,verify as so}from"node:crypto";function io(t,e){let r=rt();if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Error("Tokmizer plugin: no valid signing public key. Set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM or rebuild plugin against a prod key.");let n=no({key:r,format:"pem"});try{let s=Buffer.from(e,"base64url");return so(null,Buffer.from(t,"utf8"),n,s)}catch{return!1}}var ao=/^[a-z0-9][a-z0-9-]*$/;async function Fn(t){let e=await R();if(!e)throw new Error("Plugin not activated.");let r=await J(),n=await j("GET","/api/v1/skills/bundle",void 0,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:8e3});if(!n.ok)throw new Error(`bundle fetch failed ${n.status}`);let s=await Ee(n),i=[];for(let a of s.bundles){if(!ao.test(a.slug))throw new Error(`invalid bundle slug ${a.slug}`);let o=[...a.fragments].sort((c,u)=>c.position-u.position);for(let c of o)if(!io(c.body,c.hash))throw new Error(`fragment signature mismatch on ${a.slug}[${c.position}]`);i.push({slug:a.slug,version:a.version,body:o.map(c=>c.body).join(`
22
22
 
23
- `)})}return i}$();import{chmod as lr,mkdir as At,readFile as dr,writeFile as Tt,stat as Qa,readdir as eo,rm as $n}from"node:fs/promises";var Fn="managed-by: tokmizer",to=["tkr","tkr-gain","tkr-status","tkr-link","tkr-unlink","tkr-compression","tkr-telemetry","tkr-update"],ro=["power","tkr-reducer"];async function jn(){try{let t=JSON.parse(await dr(qt(),"utf8"));return Array.isArray(t)?t.filter(e=>typeof e=="string"):[]}catch{return[]}}async function Ln(t){try{await At(k(),{recursive:!0}),await Tt(qt(),JSON.stringify(t),{mode:384})}catch{}}var no=3600*1e3,Mn=10080*60*1e3;function so(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?Math.min(t,Mn):Mn}async function zn(t){try{let e=await Qa(Je(t)),r=Date.now()-e.mtimeMs;return r<no&&r<=so()}catch{return!1}}async function Zn(t,e){await At(wt(),{recursive:!0}),await Tt(Je(t),e,{mode:384}),await lr(Je(t),384)}async function fr(t){let e=new Set(t),r;try{r=await eo(wt())}catch{return}for(let n of r){if(!n.endsWith(".md"))continue;let s=n.slice(0,-3);if(!e.has(s))try{await $n(Je(s))}catch{}}}async function Bn(t,e){await At(Jt(),{recursive:!0});try{if(!(await dr(Me(t),"utf8")).includes(Fn))return}catch{}await Tt(Me(t),e,{mode:384}),await lr(Me(t),384);let r=await jn();r.includes(t)||await Ln([...r,t])}async function pr(t){let e=new Set([...t,...to]),r=await jn(),n=new Set([...r,...ro]);for(let s of n)if(!e.has(s))try{if(!(await dr(Me(s),"utf8")).includes(Fn))continue;await $n(Me(s))}catch{}await Ln(r.filter(s=>e.has(s)))}async function mr(t){try{await At(k(),{recursive:!0}),await Tt(Wt(),JSON.stringify({at:Date.now(),error:t}),{mode:384}),await lr(Wt(),384)}catch{}}import{chmod as Nl,mkdir as Ml,readFile as $l,writeFile as Fl,stat as io,readdir as ao,rm as Un,rename as jl}from"node:fs/promises";$();import{join as oo}from"node:path";var co=10080*60*1e3,uo=100*1024*1024,Zl=2*1024*1024;function Vn(t,e){let r=Number(process.env[t]);return Number.isFinite(r)&&r>0?r:e}async function Hn(){let t;try{t=await ao(Gt())}catch{return}let e=Vn("TOKMIZER_CCR_MAX_AGE_MS",co),r=Vn("TOKMIZER_CCR_DIR_CAP_BYTES",uo),n=Date.now(),s=[];for(let a of t){let o=oo(Gt(),a);try{let c=await io(o);n-c.mtimeMs>e?await Un(o):s.push({path:o,mtimeMs:c.mtimeMs,size:c.size})}catch{}}let i=s.reduce((a,o)=>a+o.size,0);if(!(i<=r)){s.sort((a,o)=>a.mtimeMs-o.mtimeMs);for(let a of s){if(i<=r)break;try{await Un(a.path),i-=a.size}catch{}}}}re();ze();je();Rt();async function yo(t,e){let r=await R();if(!r)throw new Error("Not activated. Run: tkr link");let n=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",s=await J(),i=await j(t,"/api/v1/settings",e,{baseUrl:n,bearer:r.jwt,signingSecret:r.signingSecret,fingerprint:s.fingerprint,installId:s.installId,timeoutMs:8e3});if(!i.ok)throw new Error(`Settings ${t} failed: ${i.status}`);let a=await xe(i);return await qn(a.settings),a}async function Jn(){return yo("GET")}Fe();var Is="-command",Os=3;async function Ps(){try{let{connectDaemon:t}=await Promise.resolve().then(()=>(ss(),ns)),e=await t();try{await e.reload()}finally{e.close()}}catch{}}async function Ns(t,e){if(!(!e&&await zn("power"))){try{let r=await Nn(t),n=[],s=[];for(let i of r)if(i.slug.endsWith(Is)){let a=i.slug.slice(0,-Is.length);await Bn(a,i.body),s.push(a)}else await Zn(i.slug,i.body),n.push(i.slug);await fr(n),await pr(s),await mr(null)}catch(r){await mr(r instanceof Error?r.message:String(r))}try{await Hn()}catch{}}}function Pc(t){try{return new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit"}).format(new Date)}catch{return new Date().toISOString().slice(0,10)}}function ct(t,e=0){let r=t.split(".")[1];if(!r)return!0;try{let n=Number(JSON.parse(Buffer.from(r,"base64url").toString("utf8")).exp);return!Number.isFinite(n)||n*1e3<=Date.now()+e}catch{return!0}}async function ot(t,e){let r=await R();return r&&r.token!==t.token?!1:(await nr(e),!0)}async function Be(t){let e=await R();if(!e)return null;let r=await J(),n=e.timeZone??kt(),s={ts:Date.now(),localDate:Pc(n),timeZone:n},i;try{i=await j("POST","/api/v1/license/heartbeat",s,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:5e3})}catch{return e}if(i.status===401){let E=(e.heartbeatAuthFails??0)+1,A={...e,heartbeatAuthFails:E},y=e.linked??(!!e.email||e.plan==="smart"||e.plan==="pro");if(E>=Os&&y&&(A.relinkRequired=!0),!await ot(e,A))return null;if(E>=Os&&!y){try{await Oc(`${k()}/state.replaced.json`,JSON.stringify(e),{mode:384})}catch{}try{return await Nc(t)}catch{return null}}return null}if(i.status===451){let E=await R();if(E&&E.token!==e.token)return null;await wn();try{await fr([]),await pr([])}catch{}return null}if(i.status===426)return await ot(e,{...e,updateRequired:!0}),null;if(i.status===423)return await ot(e,{...e,relinkRequired:!0}),null;if(!i.ok){if(i.status===400)try{(await i.json())?.code==="stale_ts"&&await ot(e,{...e,clockSkewDetected:!0})}catch{}return e}let a;try{a=await xe(i)}catch{return e}let o=a.settingsRevision??0,c=e.lastSettingsRevision??0,l=o>c,f=a.plan!==e.plan,x={...e,jwt:a.jwt,plan:a.plan,status:a.status,trialEndsAt:a.trialEndsAt,subEndsAt:a.subEndsAt,jwtVersion:a.jwtVersion,lastSettingsRevision:c,lastHeartbeatOkAt:Date.now(),heartbeatAuthFails:0,relinkRequired:!1,updateRequired:!1,clockSkewDetected:!1,timeZone:n,bonusActive:a.bonusActive??!1,...a.bonusResetAt!==void 0?{bonusResetAt:a.bonusResetAt}:{},...a.latestPluginVersion?{latestPluginVersion:a.latestPluginVersion}:{},...Array.isArray(a.allowedFilters)?{allowedFilters:a.allowedFilters.map(be)}:{}};if(l)try{await Jn(),x.lastSettingsRevision=o}catch{}if(!await ot(e,x))return R();if(process.env.TOKMIZER_SELF_UPDATE_CHILD!=="1")try{let{maybeSpawnSelfUpdate:E}=await Promise.resolve().then(()=>(bs(),ks));E()}catch{}(l||f)&&await Ps(),await Ns(t,l||f);try{let{flushTelemetry:E}=await Promise.resolve().then(()=>(Ft(),Cs)),{flush:A}=await Promise.resolve().then(()=>(zr(),Ds));await E(t),await A(t)}catch{}return x}var nf=5*6e4;async function Nc(t){let e=await J(),r=kt(),n={pluginVersion:q,timeZone:r,...e},s=await j("POST","/api/v1/license/enroll",n,{baseUrl:t,fingerprint:e.fingerprint,installId:e.installId,timeoutMs:4e3});if(!s.ok)throw new Error(`enroll failed ${s.status}`);let i=await xe(s),a={token:i.token,jwt:i.jwt,signingSecret:i.signingSecret,plan:i.plan,status:i.status,trialEndsAt:i.trialEndsAt,subEndsAt:i.subEndsAt,jwtVersion:i.jwtVersion,installId:e.installId,fingerprint:e.fingerprint,pluginVersion:q,email:"",timeZone:r,bonusActive:!1,linked:!1,lastHeartbeatOkAt:Date.now(),...Array.isArray(i.allowedFilters)&&i.allowedFilters.length>0?{allowedFilters:i.allowedFilters.map(be)}:{}};return await nr(a),await Ps(),await Ns(t,!0),a}re();re();zr();Ft();var Mc=10*6e4,Ms=6e4;function $s(t){let e=0,r=async()=>{let n=Date.now();if(n-e<Mc)return;let s;try{s=await Be(t)}catch{e=n;return}s&&!ct(s.jwt,Ms)&&(e=n)};return async()=>{let n=await R();if(!n)return;if(ct(n.jwt,Ms)){await r();return}(await Promise.all([Lr(t),jr(t)])).includes("auth")&&await r()}}var ut=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",$c=360*60*1e3,Fc=6e4;function jc(){let t=$s(ut),e=()=>{t().catch(()=>{})};setTimeout(e,5e3).unref?.(),setInterval(e,Fc).unref?.()}function Lc(){let t=()=>{Be(ut).catch(()=>{})};setTimeout(t,6e4+Math.floor(Math.random()*6e4)).unref?.(),setInterval(t,$c).unref?.()}function zc(){if(process.env.TOKMIZER_ALLOW_INSPECT==="1")return;let e=(process.execArgv??[]).find(r=>r.startsWith("--inspect")||r==="--inspect-brk"||r.startsWith("--inspect-port"));e&&(process.stderr.write("tkr-daemon: refusing to start with "+e+` (set TOKMIZER_ALLOW_INSPECT=1 to override for development).
23
+ `)})}return i}P();import{chmod as fr,mkdir as Rt,readFile as pr,writeFile as Ct,stat as oo,readdir as co,rm as Ln}from"node:fs/promises";var zn="managed-by: tokmizer",uo=["tkr","tkr-gain","tkr-status","tkr-link","tkr-unlink","tkr-compression","tkr-telemetry","tkr-update","tkr-yolo"],lo=["power","tkr-reducer"];async function Zn(){try{let t=JSON.parse(await pr(Xt(),"utf8"));return Array.isArray(t)?t.filter(e=>typeof e=="string"):[]}catch{return[]}}async function Bn(t){try{await Rt(w(),{recursive:!0}),await Ct(Xt(),JSON.stringify(t),{mode:384})}catch{}}var fo=3600*1e3,jn=10080*60*1e3;function po(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?Math.min(t,jn):jn}async function Un(t){try{let e=await oo(Xe(t)),r=Date.now()-e.mtimeMs;return r<fo&&r<=po()}catch{return!1}}async function Vn(t,e){await Rt(bt(),{recursive:!0}),await Ct(Xe(t),e,{mode:384}),await fr(Xe(t),384)}async function mr(t){let e=new Set(t),r;try{r=await co(bt())}catch{return}for(let n of r){if(!n.endsWith(".md"))continue;let s=n.slice(0,-3);if(!e.has(s))try{await Ln(Xe(s))}catch{}}}async function Hn(t,e){await Rt(Qt(),{recursive:!0});try{if(!(await pr($e(t),"utf8")).includes(zn))return}catch{}await Ct($e(t),e,{mode:384}),await fr($e(t),384);let r=await Zn();r.includes(t)||await Bn([...r,t])}async function hr(t){let e=new Set([...t,...uo]),r=await Zn(),n=new Set([...r,...lo]);for(let s of n)if(!e.has(s))try{if(!(await pr($e(s),"utf8")).includes(zn))continue;await Ln($e(s))}catch{}await Bn(r.filter(s=>e.has(s)))}async function gr(t){try{await Rt(w(),{recursive:!0}),await Ct(Jt(),JSON.stringify({at:Date.now(),error:t}),{mode:384}),await fr(Jt(),384)}catch{}}import{chmod as Ul,mkdir as Vl,readFile as Hl,writeFile as Kl,stat as mo,readdir as ho,rm as Kn,rename as Wl}from"node:fs/promises";P();import{join as go}from"node:path";P();var yo=10080*60*1e3,_o=100*1024*1024,Yl=2*1024*1024;function Wn(t,e){let r=Number(process.env[t]);return Number.isFinite(r)&&r>0?r:e}async function Gn(){let t;try{t=await ho(Yt())}catch{return}let e=Wn("TOKMIZER_CCR_MAX_AGE_MS",yo),r=Wn("TOKMIZER_CCR_DIR_CAP_BYTES",_o),n=Date.now(),s=[];for(let a of t){let o=go(Yt(),a);try{let c=await mo(o);n-c.mtimeMs>e?await Kn(o):s.push({path:o,mtimeMs:c.mtimeMs,size:c.size})}catch{}}let i=s.reduce((a,o)=>a+o.size,0);if(!(i<=r)){s.sort((a,o)=>a.mtimeMs-o.mtimeMs);for(let a of s){if(i<=r)break;try{await Kn(a.path),i-=a.size}catch{}}}}re();Be();ze();Dt();async function xo(t,e){let r=await R();if(!r)throw new Error("Not activated. Run: tkr link");if(r.linked===!1){if(t==="GET")return{plan:r.plan,settings:await se()};let o=await ns(e);return{plan:r.plan,settings:o}}let n=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",s=await J(),i=await j(t,"/api/v1/settings",e,{baseUrl:n,bearer:r.jwt,signingSecret:r.signingSecret,fingerprint:s.fingerprint,installId:s.installId,timeoutMs:8e3});if(!i.ok)throw new Error(`Settings ${t} failed: ${i.status}`);let a=await Ee(i);return await yr(a.settings),a}async function ss(){return xo("GET")}Le();var Ls="-command",zs=3;async function Zs(){try{let{connectDaemon:t}=await Promise.resolve().then(()=>(fs(),ds)),e=await t();try{await e.reload()}finally{e.close()}}catch{}}async function Bs(t,e){if(!(!e&&await Un("power"))){try{let r=await Fn(t),n=[],s=[];for(let i of r)if(i.slug.endsWith(Ls)){let a=i.slug.slice(0,-Ls.length);await Hn(a,i.body),s.push(a)}else await Vn(i.slug,i.body),n.push(i.slug);await mr(n),await hr(s),await gr(null)}catch(r){await gr(r instanceof Error?r.message:String(r))}try{await Gn()}catch{}}}function Lc(t){try{return new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit"}).format(new Date)}catch{return new Date().toISOString().slice(0,10)}}function lt(t,e=0){let r=t.split(".")[1];if(!r)return!0;try{let n=Number(JSON.parse(Buffer.from(r,"base64url").toString("utf8")).exp);return!Number.isFinite(n)||n*1e3<=Date.now()+e}catch{return!0}}async function ut(t,e){let r=await R();return r&&r.token!==t.token?!1:(await ir(e),!0)}async function Ve(t){let e=await R();if(!e)return null;let r=await J(),n=e.timeZone??xt(),s={ts:Date.now(),localDate:Lc(n),timeZone:n},i;try{i=await j("POST","/api/v1/license/heartbeat",s,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:5e3})}catch{return e}if(i.status===401){let S=(e.heartbeatAuthFails??0)+1,A={...e,heartbeatAuthFails:S},y=e.linked??(!!e.email||e.plan==="smart"||e.plan==="pro");if(S>=zs&&y&&(A.relinkRequired=!0),!await ut(e,A))return null;if(S>=zs&&!y){try{await jc(`${w()}/state.replaced.json`,JSON.stringify(e),{mode:384})}catch{}try{return await zc(t)}catch{return null}}return null}if(i.status===451){let S=await R();if(S&&S.token!==e.token)return null;await xn();try{await mr([]),await hr([])}catch{}return null}if(i.status===426)return await ut(e,{...e,updateRequired:!0}),null;if(i.status===423)return await ut(e,{...e,relinkRequired:!0}),null;if(!i.ok){if(i.status===400)try{(await i.json())?.code==="stale_ts"&&await ut(e,{...e,clockSkewDetected:!0})}catch{}return e}let a;try{a=await Ee(i)}catch{return e}let o=a.settingsRevision??0,c=e.lastSettingsRevision??0,u=o>c,d=a.plan!==e.plan,b={...e,jwt:a.jwt,plan:a.plan,status:a.status,trialEndsAt:a.trialEndsAt,subEndsAt:a.subEndsAt,jwtVersion:a.jwtVersion,lastSettingsRevision:c,lastHeartbeatOkAt:Date.now(),heartbeatAuthFails:0,relinkRequired:!1,updateRequired:!1,clockSkewDetected:!1,timeZone:n,bonusActive:a.bonusActive??!1,...a.bonusResetAt!==void 0?{bonusResetAt:a.bonusResetAt}:{},...a.latestPluginVersion?{latestPluginVersion:a.latestPluginVersion}:{},...Array.isArray(a.allowedFilters)?{allowedFilters:a.allowedFilters.map(xe)}:{}};if(u)try{await ss(),b.lastSettingsRevision=o}catch{}if(!await ut(e,b))return R();if(process.env.TOKMIZER_SELF_UPDATE_CHILD!=="1")try{let{maybeSpawnSelfUpdate:S}=await Promise.resolve().then(()=>(Is(),Cs));S()}catch{}(u||d)&&await Zs(),await Bs(t,u||d);try{let{flushTelemetry:S}=await Promise.resolve().then(()=>(zt(),Fs)),{flush:A}=await Promise.resolve().then(()=>(Ur(),js));await S(t),await A(t)}catch{}return b}var gf=5*6e4;async function zc(t){let e=await J(),r=xt(),n={pluginVersion:q,timeZone:r,...e},s=await j("POST","/api/v1/license/enroll",n,{baseUrl:t,fingerprint:e.fingerprint,installId:e.installId,timeoutMs:4e3});if(!s.ok)throw new Error(`enroll failed ${s.status}`);let i=await Ee(s),a={token:i.token,jwt:i.jwt,signingSecret:i.signingSecret,plan:i.plan,status:i.status,trialEndsAt:i.trialEndsAt,subEndsAt:i.subEndsAt,jwtVersion:i.jwtVersion,installId:e.installId,fingerprint:e.fingerprint,pluginVersion:q,email:"",timeZone:r,bonusActive:!1,linked:!1,lastHeartbeatOkAt:Date.now(),...Array.isArray(i.allowedFilters)&&i.allowedFilters.length>0?{allowedFilters:i.allowedFilters.map(xe)}:{}};return await ir(a),await Zs(),await Bs(t,!0),a}re();re();Ur();zt();var Zc=10*6e4,Us=6e4;function Vs(t){let e=0,r=async()=>{let n=Date.now();if(n-e<Zc)return;let s;try{s=await Ve(t)}catch{e=n;return}s&&!lt(s.jwt,Us)&&(e=n)};return async()=>{let n=await R();if(!n)return;if(lt(n.jwt,Us)){await r();return}(await Promise.all([Br(t),Zr(t)])).includes("auth")&&await r()}}var dt=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",Bc=360*60*1e3,Uc=6e4;function Vc(){let t=Vs(dt),e=()=>{t().catch(()=>{})};setTimeout(e,5e3).unref?.(),setInterval(e,Uc).unref?.()}function Hc(){let t=()=>{Ve(dt).catch(()=>{})};setTimeout(t,6e4+Math.floor(Math.random()*6e4)).unref?.(),setInterval(t,Bc).unref?.()}function Kc(){if(process.env.TOKMIZER_ALLOW_INSPECT==="1")return;let e=(process.execArgv??[]).find(r=>r.startsWith("--inspect")||r==="--inspect-brk"||r.startsWith("--inspect-port"));e&&(process.stderr.write("tkr-daemon: refusing to start with "+e+` (set TOKMIZER_ALLOW_INSPECT=1 to override for development).
24
24
  `),process.exit(2)),process.env.NODE_OPTIONS&&/--inspect/.test(process.env.NODE_OPTIONS)&&(process.stderr.write(`tkr-daemon: refusing to start with --inspect in NODE_OPTIONS.
25
- `),process.exit(2))}async function Zc(){zc(),process.title="tkr-daemon";let t=In(()=>xt(ut)),e=async()=>{try{return await t()}catch(a){let o=await or(a,ut,{heartbeat:Be,fetchBundle:xt,log:f=>process.stderr.write(`tkr-daemon: ${f}
26
- `)});if(o)return o;let{runtimeFromCache:c}=await Promise.resolve().then(()=>(St(),Cn)),l=await c();if(l)return process.stderr.write(`tkr-daemon: serving cached rules while the server is unreachable
27
- `),l;throw a}},r=3e4,n=null,s=()=>{if(n&&Date.now()-n.at<r)return n.p;let a=e();return n={p:a,at:Date.now()},a.catch(()=>{n?.p===a&&(n=null)}),a},i=null;i=await Dn(null,{onWarming:s,onShutdown:()=>{i?.close().finally(()=>process.exit(0))}}),(async()=>{try{let a=await R();a&&ct(a.jwt,6e4)&&await Be(ut)}catch{}try{await s()}catch{}})(),process.on("SIGINT",()=>i.close().finally(()=>process.exit(0))),process.on("SIGTERM",()=>i.close().finally(()=>process.exit(0))),Lc(),jc()}Zc().catch(t=>{process.stderr.write(`tkr-daemon: ${t.message}
25
+ `),process.exit(2))}async function Wc(){Kc(),process.title="tkr-daemon";let t=Nn(()=>St(dt)),e=async()=>{try{return await t()}catch(a){let o=await ur(a,dt,{heartbeat:Ve,fetchBundle:St,log:d=>process.stderr.write(`tkr-daemon: ${d}
26
+ `)});if(o)return o;let{runtimeFromCache:c}=await Promise.resolve().then(()=>(At(),On)),u=await c();if(u)return process.stderr.write(`tkr-daemon: serving cached rules while the server is unreachable
27
+ `),u;throw a}},r=3e4,n=null,s=()=>{if(n&&Date.now()-n.at<r)return n.p;let a=e();return n={p:a,at:Date.now()},a.catch(()=>{n?.p===a&&(n=null)}),a},i=null;i=await Pn(null,{onWarming:s,onShutdown:()=>{i?.close().finally(()=>process.exit(0))}}),(async()=>{try{let a=await R();a&&lt(a.jwt,6e4)&&await Ve(dt)}catch{}try{await s()}catch{}})(),process.on("SIGINT",()=>i.close().finally(()=>process.exit(0))),process.on("SIGTERM",()=>i.close().finally(()=>process.exit(0))),Hc(),Vc()}Wc().catch(t=>{process.stderr.write(`tkr-daemon: ${t.message}
28
28
  `),process.exit(1)});