@tokmizer/plugin 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,33 +1,33 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __tkrCreateRequire } from "node:module"; const require = __tkrCreateRequire(import.meta.url);
3
- var Br=Object.defineProperty;var S=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var ke=(t,e)=>{for(var n in e)Br(t,n,{get:e[n],enumerable:!0})};import cn from"node:os";import{join as q}from"node:path";function w(){return process.env.TOKMIZER_HOME||q(cn.homedir(),".tokmizer")}function Ze(){return q(w(),"install-id")}function Qe(){return q(w(),"bundle-refresh.json")}function Xe(){return q(w(),"skills")}function re(t){return q(Xe(),`${t}.md`)}function Tt(){return q(w(),"managed-commands.json")}function et(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||q(cn.homedir(),".claude","commands")}function se(t){return q(et(),`${t}.md`)}var L=S(()=>{"use strict"});var b,Et,p,V,Le=S(()=>{(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function n(s){throw new Error}t.assertNever=n,t.arrayToEnum=s=>{let a={};for(let o of s)a[o]=o;return a},t.getValidEnumValues=s=>{let a=t.objectKeys(s).filter(i=>typeof s[s[i]]!="number"),o={};for(let i of a)o[i]=s[i];return t.objectValues(o)},t.objectValues=s=>t.objectKeys(s).map(function(a){return s[a]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let a=[];for(let o in s)Object.prototype.hasOwnProperty.call(s,o)&&a.push(o);return a},t.find=(s,a)=>{for(let o of s)if(a(o))return o},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function r(s,a=" | "){return s.map(o=>typeof o=="string"?`'${o}'`:o).join(a)}t.joinValues=r,t.jsonStringifyReplacer=(s,a)=>typeof a=="bigint"?a.toString():a})(b||(b={}));(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Et||(Et={}));p=b.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),V=t=>{switch(typeof t){case"undefined":return p.undefined;case"string":return p.string;case"number":return Number.isNaN(t)?p.nan:p.number;case"boolean":return p.boolean;case"function":return p.function;case"bigint":return p.bigint;case"symbol":return p.symbol;case"object":return Array.isArray(t)?p.array:t===null?p.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?p.promise:typeof Map<"u"&&t instanceof Map?p.map:typeof Set<"u"&&t instanceof Set?p.set:typeof Date<"u"&&t instanceof Date?p.date:p.object;default:return p.unknown}}});var d,Wr,I,tt=S(()=>{Le();d=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"]),Wr=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=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(a){return a.message},r={_errors:[]},s=a=>{for(let o of a.issues)if(o.code==="invalid_union")o.unionErrors.map(s);else if(o.code==="invalid_return_type")s(o.returnTypeError);else if(o.code==="invalid_arguments")s(o.argumentsError);else if(o.path.length===0)r._errors.push(n(o));else{let i=r,c=0;for(;c<o.path.length;){let u=o.path[c];c===o.path.length-1?(i[u]=i[u]||{_errors:[]},i[u]._errors.push(n(o))):i[u]=i[u]||{_errors:[]},i=i[u],c++}}};return s(this),r}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=n=>n.message){let n={},r=[];for(let s of this.issues)if(s.path.length>0){let a=s.path[0];n[a]=n[a]||[],n[a].push(e(s))}else r.push(e(s));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};I.create=t=>new I(t)});var Gr,W,At=S(()=>{tt();Le();Gr=(t,e)=>{let n;switch(t.code){case d.invalid_type:t.received===p.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case d.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,b.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:n=`Unrecognized key(s) in object: ${b.joinValues(t.keys,", ")}`;break;case d.invalid_union:n="Invalid input";break;case d.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${b.joinValues(t.options)}`;break;case d.invalid_enum_value:n=`Invalid enum value. Expected ${b.joinValues(t.options)}, received '${t.received}'`;break;case d.invalid_arguments:n="Invalid function arguments";break;case d.invalid_return_type:n="Invalid function return type";break;case d.invalid_date:n="Invalid date";break;case d.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:b.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case d.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case d.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case d.custom:n="Invalid input";break;case d.invalid_intersection_types:n="Intersection results could not be merged";break;case d.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case d.not_finite:n="Number must be finite";break;default:n=e.defaultError,b.assertNever(t)}return{message:n}},W=Gr});function Yr(t){dn=t}function xe(){return dn}var dn,nt=S(()=>{At();dn=W});function f(t,e){let n=xe(),r=Fe({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===W?void 0:W].filter(s=>!!s)});t.common.issues.push(r)}var Fe,Jr,$,h,ae,C,rt,st,Q,we,$t=S(()=>{nt();At();Fe=t=>{let{data:e,path:n,errorMaps:r,issueData:s}=t,a=[...n,...s.path||[]],o={...s,path:a};if(s.message!==void 0)return{...s,path:a,message:s.message};let i="",c=r.filter(u=>!!u).slice().reverse();for(let u of c)i=u(o,{data:e,defaultError:i}).message;return{...s,path:a,message:i}},Jr=[];$=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let r=[];for(let s of n){if(s.status==="aborted")return h;s.status==="dirty"&&e.dirty(),r.push(s.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let s of n){let a=await s.key,o=await s.value;r.push({key:a,value:o})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let s of n){let{key:a,value:o}=s;if(a.status==="aborted"||o.status==="aborted")return h;a.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),a.value!=="__proto__"&&(typeof o.value<"u"||s.alwaysSet)&&(r[a.value]=o.value)}return{status:e.value,value:r}}},h=Object.freeze({status:"aborted"}),ae=t=>({status:"dirty",value:t}),C=t=>({status:"valid",value:t}),rt=t=>t.status==="aborted",st=t=>t.status==="dirty",Q=t=>t.status==="valid",we=t=>typeof Promise<"u"&&t instanceof Promise});var ln=S(()=>{});var m,fn=S(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(m||(m={}))});function _(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:s}=t;if(e&&(n||r))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:(o,i)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??i.defaultError}:typeof i.data>"u"?{message:c??r??i.defaultError}:o.code!=="invalid_type"?{message:i.defaultError}:{message:c??n??i.defaultError}},description:s}}function gn(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function ps(t){return new RegExp(`^${gn(t)}$`)}function yn(t){let e=`${hn}T${gn(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function ms(t,e){return!!((e==="v4"||!e)&&os.test(t)||(e==="v6"||!e)&&cs.test(t))}function hs(t,e){if(!ns.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),s=JSON.parse(atob(r));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function gs(t,e){return!!((e==="v4"||!e)&&is.test(t)||(e==="v6"||!e)&&us.test(t))}function ys(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,s=n>r?n:r,a=Number.parseInt(t.toFixed(s).replace(".","")),o=Number.parseInt(e.toFixed(s).replace(".",""));return a%o/10**s}function Se(t){if(t instanceof P){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=M.create(Se(r))}return new P({...t._def,shape:()=>e})}else return t instanceof J?new J({...t._def,type:Se(t.element)}):t instanceof M?M.create(Se(t.unwrap())):t instanceof B?B.create(Se(t.unwrap())):t instanceof U?U.create(t.items.map(e=>Se(e))):t}function Ct(t,e){let n=V(t),r=V(e);if(t===e)return{valid:!0,data:t};if(n===p.object&&r===p.object){let s=b.objectKeys(e),a=b.objectKeys(t).filter(i=>s.indexOf(i)!==-1),o={...t,...e};for(let i of a){let c=Ct(t[i],e[i]);if(!c.valid)return{valid:!1};o[i]=c.data}return{valid:!0,data:o}}else if(n===p.array&&r===p.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let a=0;a<t.length;a++){let o=t[a],i=e[a],c=Ct(o,i);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return n===p.date&&r===p.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function _n(t,e){return new ge({values:t,typeName:g.ZodEnum,..._(e)})}function mn(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function vn(t,e={},n){return t?ee.create().superRefine((r,s)=>{let a=t(r);if(a instanceof Promise)return a.then(o=>{if(!o){let i=mn(e,r),c=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:c})}});if(!a){let o=mn(e,r),i=o.fatal??n??!0;s.addIssue({code:"custom",...o,fatal:i})}}):ee.create()}var j,pn,v,qr,Qr,Xr,es,ts,ns,rs,ss,as,Rt,os,is,cs,us,ds,ls,hn,fs,X,oe,ie,ce,ue,Te,de,le,ee,Y,F,Ee,J,P,fe,G,at,pe,U,ot,Ae,$e,it,me,he,ge,ye,te,z,M,B,_e,ve,Re,_s,Ve,Ue,be,vs,g,bs,bn,kn,ks,xs,xn,ws,Ss,Ts,Es,As,$s,Rs,Cs,Os,Ns,Ds,Is,Ps,Ms,js,zs,Zs,Ls,Fs,Vs,Us,Bs,Ks,Hs,Ws,Gs,Ys,Js,qs,Qs,Xs,ea,ta,na,wn=S(()=>{tt();nt();fn();$t();Le();j=class{constructor(e,n,r,s){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,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}},pn=(t,e)=>{if(Q(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 n=new I(t.common.issues);return this._error=n,this._error}}};v=class{get description(){return this._def.description}_getType(e){return V(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:V(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new $,ctx:{common:e.parent.common,data:e.data,parsedType:V(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(we(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){let r={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:V(e)},s=this._parseSync({data:e,path:r.path,parent:r});return pn(r,s)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:V(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return Q(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>Q(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:V(e)},s=this._parse({data:e,path:r.path,parent:r}),a=await(we(s)?s:Promise.resolve(s));return pn(r,a)}refine(e,n){let r=s=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(s):n;return this._refinement((s,a)=>{let o=e(s),i=()=>a.addIssue({code:d.custom,...r(s)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(i(),!1)):o?!0:(i(),!1)})}refinement(e,n){return this._refinement((r,s)=>e(r)?!0:(s.addIssue(typeof n=="function"?n(r,s):n),!1))}_refinement(e){return new z({schema:this,typeName:g.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:n=>this["~validate"](n)}}optional(){return M.create(this,this._def)}nullable(){return B.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return J.create(this)}promise(){return te.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 z({..._(this._def),schema:this,typeName:g.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new _e({..._(this._def),innerType:this,defaultValue:n,typeName:g.ZodDefault})}brand(){return new Ve({typeName:g.ZodBranded,type:this,..._(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new ve({..._(this._def),innerType:this,catchValue:n,typeName:g.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Ue.create(this,e)}readonly(){return be.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},qr=/^c[^\s-]{8,}$/i,Qr=/^[0-9a-z]+$/,Xr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,es=/^[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,ts=/^[a-z0-9_-]{21}$/i,ns=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,rs=/^[-+]?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)?)??$/,ss=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,as="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",os=/^(?:(?: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])$/,is=/^(?:(?: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])$/,cs=/^(([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]))$/,us=/^(([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])$/,ds=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ls=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,hn="((\\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])))",fs=new RegExp(`^${hn}$`);X=class t extends v{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==p.string){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_type,expected:p.string,received:a.parsedType}),h}let r=new $,s;for(let a of this._def.checks)if(a.kind==="min")e.data.length<a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="max")e.data.length>a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="length"){let o=e.data.length>a.value,i=e.data.length<a.value;(o||i)&&(s=this._getOrReturnCtx(e,s),o?f(s,{code:d.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):i&&f(s,{code:d.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),r.dirty())}else if(a.kind==="email")ss.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"email",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="emoji")Rt||(Rt=new RegExp(as,"u")),Rt.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"emoji",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="uuid")es.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"uuid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")ts.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"nanoid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")qr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cuid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid2")Qr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cuid2",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")Xr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"ulid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),f(s,{validation:"url",code:d.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"regex",code:d.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?yn(a).test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"datetime",message:a.message}),r.dirty()):a.kind==="date"?fs.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?ps(a).test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"time",message:a.message}),r.dirty()):a.kind==="duration"?rs.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"duration",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?ms(e.data,a.version)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"ip",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="jwt"?hs(e.data,a.alg)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"jwt",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="cidr"?gs(e.data,a.version)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cidr",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64"?ds.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?ls.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64url",code:d.invalid_string,message:a.message}),r.dirty()):b.assertNever(a);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(s=>e.test(s),{validation:n,code:d.invalid_string,...m.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...m.errToObj(e)})}url(e){return this._addCheck({kind:"url",...m.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...m.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...m.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...m.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...m.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...m.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...m.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...m.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...m.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...m.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...m.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...m.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,...m.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,...m.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...m.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...m.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n?.position,...m.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...m.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...m.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...m.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...m.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...m.errToObj(n)})}nonempty(e){return this.min(1,m.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 n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};X.create=t=>new X({checks:[],typeName:g.ZodString,coerce:t?.coerce??!1,..._(t)});oe=class t extends v{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)!==p.number){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_type,expected:p.number,received:a.parsedType}),h}let r,s=new $;for(let a of this._def.checks)a.kind==="int"?b.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),f(r,{code:d.invalid_type,expected:"integer",received:"float",message:a.message}),s.dirty()):a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),s.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),s.dirty()):a.kind==="multipleOf"?ys(e.data,a.value)!==0&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_multiple_of,multipleOf:a.value,message:a.message}),s.dirty()):a.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_finite,message:a.message}),s.dirty()):b.assertNever(a);return{status:s.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,m.toString(n))}gt(e,n){return this.setLimit("min",e,!1,m.toString(n))}lte(e,n){return this.setLimit("max",e,!0,m.toString(n))}lt(e,n){return this.setLimit("max",e,!1,m.toString(n))}setLimit(e,n,r,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:m.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:m.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:m.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:m.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:m.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:m.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:m.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:m.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:m.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:m.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.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,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};oe.create=t=>new oe({checks:[],typeName:g.ZodNumber,coerce:t?.coerce||!1,..._(t)});ie=class t extends v{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)!==p.bigint)return this._getInvalidInput(e);let r,s=new $;for(let a of this._def.checks)a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),s.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),s.dirty()):a.kind==="multipleOf"?e.data%a.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_multiple_of,multipleOf:a.value,message:a.message}),s.dirty()):b.assertNever(a);return{status:s.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return f(n,{code:d.invalid_type,expected:p.bigint,received:n.parsedType}),h}gte(e,n){return this.setLimit("min",e,!0,m.toString(n))}gt(e,n){return this.setLimit("min",e,!1,m.toString(n))}lte(e,n){return this.setLimit("max",e,!0,m.toString(n))}lt(e,n){return this.setLimit("max",e,!1,m.toString(n))}setLimit(e,n,r,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:m.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:m.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:m.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:m.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:m.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:m.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};ie.create=t=>new ie({checks:[],typeName:g.ZodBigInt,coerce:t?.coerce??!1,..._(t)});ce=class extends v{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==p.boolean){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.boolean,received:r.parsedType}),h}return C(e.data)}};ce.create=t=>new ce({typeName:g.ZodBoolean,coerce:t?.coerce||!1,..._(t)});ue=class t extends v{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==p.date){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_type,expected:p.date,received:a.parsedType}),h}if(Number.isNaN(e.data.getTime())){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_date}),h}let r=new $,s;for(let a of this._def.checks)a.kind==="min"?e.data.getTime()<a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),r.dirty()):a.kind==="max"?e.data.getTime()>a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),r.dirty()):b.assertNever(a);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:m.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:m.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};ue.create=t=>new ue({checks:[],coerce:t?.coerce||!1,typeName:g.ZodDate,..._(t)});Te=class extends v{_parse(e){if(this._getType(e)!==p.symbol){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.symbol,received:r.parsedType}),h}return C(e.data)}};Te.create=t=>new Te({typeName:g.ZodSymbol,..._(t)});de=class extends v{_parse(e){if(this._getType(e)!==p.undefined){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.undefined,received:r.parsedType}),h}return C(e.data)}};de.create=t=>new de({typeName:g.ZodUndefined,..._(t)});le=class extends v{_parse(e){if(this._getType(e)!==p.null){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.null,received:r.parsedType}),h}return C(e.data)}};le.create=t=>new le({typeName:g.ZodNull,..._(t)});ee=class extends v{constructor(){super(...arguments),this._any=!0}_parse(e){return C(e.data)}};ee.create=t=>new ee({typeName:g.ZodAny,..._(t)});Y=class extends v{constructor(){super(...arguments),this._unknown=!0}_parse(e){return C(e.data)}};Y.create=t=>new Y({typeName:g.ZodUnknown,..._(t)});F=class extends v{_parse(e){let n=this._getOrReturnCtx(e);return f(n,{code:d.invalid_type,expected:p.never,received:n.parsedType}),h}};F.create=t=>new F({typeName:g.ZodNever,..._(t)});Ee=class extends v{_parse(e){if(this._getType(e)!==p.undefined){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.void,received:r.parsedType}),h}return C(e.data)}};Ee.create=t=>new Ee({typeName:g.ZodVoid,..._(t)});J=class t extends v{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),s=this._def;if(n.parsedType!==p.array)return f(n,{code:d.invalid_type,expected:p.array,received:n.parsedType}),h;if(s.exactLength!==null){let o=n.data.length>s.exactLength.value,i=n.data.length<s.exactLength.value;(o||i)&&(f(n,{code:o?d.too_big:d.too_small,minimum:i?s.exactLength.value:void 0,maximum:o?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&n.data.length<s.minLength.value&&(f(n,{code:d.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&n.data.length>s.maxLength.value&&(f(n,{code:d.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((o,i)=>s.type._parseAsync(new j(n,o,n.path,i)))).then(o=>$.mergeArray(r,o));let a=[...n.data].map((o,i)=>s.type._parseSync(new j(n,o,n.path,i)));return $.mergeArray(r,a)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:m.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:m.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:m.toString(n)}})}nonempty(e){return this.min(1,e)}};J.create=(t,e)=>new J({type:t,minLength:null,maxLength:null,exactLength:null,typeName:g.ZodArray,..._(e)});P=class t extends v{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(),n=b.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==p.object){let u=this._getOrReturnCtx(e);return f(u,{code:d.invalid_type,expected:p.object,received:u.parsedType}),h}let{status:r,ctx:s}=this._processInputParams(e),{shape:a,keys:o}=this._getCached(),i=[];if(!(this._def.catchall instanceof F&&this._def.unknownKeys==="strip"))for(let u in s.data)o.includes(u)||i.push(u);let c=[];for(let u of o){let l=a[u],y=s.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new j(s,y,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof F){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of i)c.push({key:{status:"valid",value:l},value:{status:"valid",value:s.data[l]}});else if(u==="strict")i.length>0&&(f(s,{code:d.unrecognized_keys,keys:i}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of i){let y=s.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new j(s,y,s.path,l)),alwaysSet:l in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let y=await l.key,k=await l.value;u.push({key:y,value:k,alwaysSet:l.alwaysSet})}return u}).then(u=>$.mergeObjectSync(r,u)):$.mergeObjectSync(r,c)}get shape(){return this._def.shape()}strict(e){return m.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{let s=this._def.errorMap?.(n,r).message??r.defaultError;return n.code==="unrecognized_keys"?{message:m.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:g.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of b.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of b.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return Se(this)}partial(e){let n={};for(let r of b.objectKeys(this.shape)){let s=this.shape[r];e&&!e[r]?n[r]=s:n[r]=s.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of b.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof M;)a=a._def.innerType;n[r]=a}return new t({...this._def,shape:()=>n})}keyof(){return _n(b.objectKeys(this.shape))}};P.create=(t,e)=>new P({shape:()=>t,unknownKeys:"strip",catchall:F.create(),typeName:g.ZodObject,..._(e)});P.strictCreate=(t,e)=>new P({shape:()=>t,unknownKeys:"strict",catchall:F.create(),typeName:g.ZodObject,..._(e)});P.lazycreate=(t,e)=>new P({shape:t,unknownKeys:"strip",catchall:F.create(),typeName:g.ZodObject,..._(e)});fe=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function s(a){for(let i of a)if(i.result.status==="valid")return i.result;for(let i of a)if(i.result.status==="dirty")return n.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(i=>new I(i.ctx.common.issues));return f(n,{code:d.invalid_union,unionErrors:o}),h}if(n.common.async)return Promise.all(r.map(async a=>{let o={...n,common:{...n.common,issues:[]},parent:null};return{result:await a._parseAsync({data:n.data,path:n.path,parent:o}),ctx:o}})).then(s);{let a,o=[];for(let c of r){let u={...n,common:{...n.common,issues:[]},parent:null},l=c._parseSync({data:n.data,path:n.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!a&&(a={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(a)return n.common.issues.push(...a.ctx.common.issues),a.result;let i=o.map(c=>new I(c));return f(n,{code:d.invalid_union,unionErrors:i}),h}}get options(){return this._def.options}};fe.create=(t,e)=>new fe({options:t,typeName:g.ZodUnion,..._(e)});G=t=>t instanceof me?G(t.schema):t instanceof z?G(t.innerType()):t instanceof he?[t.value]:t instanceof ge?t.options:t instanceof ye?b.objectValues(t.enum):t instanceof _e?G(t._def.innerType):t instanceof de?[void 0]:t instanceof le?[null]:t instanceof M?[void 0,...G(t.unwrap())]:t instanceof B?[null,...G(t.unwrap())]:t instanceof Ve||t instanceof be?G(t.unwrap()):t instanceof ve?G(t._def.innerType):[],at=class t extends v{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==p.object)return f(n,{code:d.invalid_type,expected:p.object,received:n.parsedType}),h;let r=this.discriminator,s=n.data[r],a=this.optionsMap.get(s);return a?n.common.async?a._parseAsync({data:n.data,path:n.path,parent:n}):a._parseSync({data:n.data,path:n.path,parent:n}):(f(n,{code:d.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),h)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let s=new Map;for(let a of n){let o=G(a.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let i of o){if(s.has(i))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(i)}`);s.set(i,a)}}return new t({typeName:g.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:s,..._(r)})}};pe=class extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=(a,o)=>{if(rt(a)||rt(o))return h;let i=Ct(a.value,o.value);return i.valid?((st(a)||st(o))&&n.dirty(),{status:n.value,value:i.data}):(f(r,{code:d.invalid_intersection_types}),h)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([a,o])=>s(a,o)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};pe.create=(t,e,n)=>new pe({left:t,right:e,typeName:g.ZodIntersection,..._(n)});U=class t extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.array)return f(r,{code:d.invalid_type,expected:p.array,received:r.parsedType}),h;if(r.data.length<this._def.items.length)return f(r,{code:d.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),h;!this._def.rest&&r.data.length>this._def.items.length&&(f(r,{code:d.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let a=[...r.data].map((o,i)=>{let c=this._def.items[i]||this._def.rest;return c?c._parse(new j(r,o,r.path,i)):null}).filter(o=>!!o);return r.common.async?Promise.all(a).then(o=>$.mergeArray(n,o)):$.mergeArray(n,a)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};U.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new U({items:t,typeName:g.ZodTuple,rest:null,..._(e)})};ot=class t extends v{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.object)return f(r,{code:d.invalid_type,expected:p.object,received:r.parsedType}),h;let s=[],a=this._def.keyType,o=this._def.valueType;for(let i in r.data)s.push({key:a._parse(new j(r,i,r.path,i)),value:o._parse(new j(r,r.data[i],r.path,i)),alwaysSet:i in r.data});return r.common.async?$.mergeObjectAsync(n,s):$.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof v?new t({keyType:e,valueType:n,typeName:g.ZodRecord,..._(r)}):new t({keyType:X.create(),valueType:e,typeName:g.ZodRecord,..._(n)})}},Ae=class extends v{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.map)return f(r,{code:d.invalid_type,expected:p.map,received:r.parsedType}),h;let s=this._def.keyType,a=this._def.valueType,o=[...r.data.entries()].map(([i,c],u)=>({key:s._parse(new j(r,i,r.path,[u,"key"])),value:a._parse(new j(r,c,r.path,[u,"value"]))}));if(r.common.async){let i=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return h;(u.status==="dirty"||l.status==="dirty")&&n.dirty(),i.set(u.value,l.value)}return{status:n.value,value:i}})}else{let i=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return h;(u.status==="dirty"||l.status==="dirty")&&n.dirty(),i.set(u.value,l.value)}return{status:n.value,value:i}}}};Ae.create=(t,e,n)=>new Ae({valueType:e,keyType:t,typeName:g.ZodMap,..._(n)});$e=class t extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.set)return f(r,{code:d.invalid_type,expected:p.set,received:r.parsedType}),h;let s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(f(r,{code:d.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),n.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(f(r,{code:d.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),n.dirty());let a=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return h;l.status==="dirty"&&n.dirty(),u.add(l.value)}return{status:n.value,value:u}}let i=[...r.data.values()].map((c,u)=>a._parse(new j(r,c,r.path,u)));return r.common.async?Promise.all(i).then(c=>o(c)):o(i)}min(e,n){return new t({...this._def,minSize:{value:e,message:m.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:m.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};$e.create=(t,e)=>new $e({valueType:t,minSize:null,maxSize:null,typeName:g.ZodSet,..._(e)});it=class t extends v{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==p.function)return f(n,{code:d.invalid_type,expected:p.function,received:n.parsedType}),h;function r(i,c){return Fe({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xe(),W].filter(u=>!!u),issueData:{code:d.invalid_arguments,argumentsError:c}})}function s(i,c){return Fe({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xe(),W].filter(u=>!!u),issueData:{code:d.invalid_return_type,returnTypeError:c}})}let a={errorMap:n.common.contextualErrorMap},o=n.data;if(this._def.returns instanceof te){let i=this;return C(async function(...c){let u=new I([]),l=await i._def.args.parseAsync(c,a).catch(T=>{throw u.addIssue(r(c,T)),u}),y=await Reflect.apply(o,this,l);return await i._def.returns._def.type.parseAsync(y,a).catch(T=>{throw u.addIssue(s(y,T)),u})})}else{let i=this;return C(function(...c){let u=i._def.args.safeParse(c,a);if(!u.success)throw new I([r(c,u.error)]);let l=Reflect.apply(o,this,u.data),y=i._def.returns.safeParse(l,a);if(!y.success)throw new I([s(l,y.error)]);return y.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:U.create(e).rest(Y.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,n,r){return new t({args:e||U.create([]).rest(Y.create()),returns:n||Y.create(),typeName:g.ZodFunction,..._(r)})}},me=class extends v{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};me.create=(t,e)=>new me({getter:t,typeName:g.ZodLazy,..._(e)});he=class extends v{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return f(n,{received:n.data,code:d.invalid_literal,expected:this._def.value}),h}return{status:"valid",value:e.data}}get value(){return this._def.value}};he.create=(t,e)=>new he({value:t,typeName:g.ZodLiteral,..._(e)});ge=class t extends v{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{expected:b.joinValues(r),received:n.parsedType,code:d.invalid_type}),h}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{received:n.data,code:d.invalid_enum_value,options:r}),h}return C(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};ge.create=_n;ye=class extends v{_parse(e){let n=b.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==p.string&&r.parsedType!==p.number){let s=b.objectValues(n);return f(r,{expected:b.joinValues(s),received:r.parsedType,code:d.invalid_type}),h}if(this._cache||(this._cache=new Set(b.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=b.objectValues(n);return f(r,{received:r.data,code:d.invalid_enum_value,options:s}),h}return C(e.data)}get enum(){return this._def.values}};ye.create=(t,e)=>new ye({values:t,typeName:g.ZodNativeEnum,..._(e)});te=class extends v{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==p.promise&&n.common.async===!1)return f(n,{code:d.invalid_type,expected:p.promise,received:n.parsedType}),h;let r=n.parsedType===p.promise?n.data:Promise.resolve(n.data);return C(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};te.create=(t,e)=>new te({type:t,typeName:g.ZodPromise,..._(e)});z=class extends v{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===g.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=this._def.effect||null,a={addIssue:o=>{f(r,o),o.fatal?n.abort():n.dirty()},get path(){return r.path}};if(a.addIssue=a.addIssue.bind(a),s.type==="preprocess"){let o=s.transform(r.data,a);if(r.common.async)return Promise.resolve(o).then(async i=>{if(n.value==="aborted")return h;let c=await this._def.schema._parseAsync({data:i,path:r.path,parent:r});return c.status==="aborted"?h:c.status==="dirty"?ae(c.value):n.value==="dirty"?ae(c.value):c});{if(n.value==="aborted")return h;let i=this._def.schema._parseSync({data:o,path:r.path,parent:r});return i.status==="aborted"?h:i.status==="dirty"?ae(i.value):n.value==="dirty"?ae(i.value):i}}if(s.type==="refinement"){let o=i=>{let c=s.refinement(i,a);if(r.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return i};if(r.common.async===!1){let i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?h:(i.status==="dirty"&&n.dirty(),o(i.value),{status:n.value,value:i.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>i.status==="aborted"?h:(i.status==="dirty"&&n.dirty(),o(i.value).then(()=>({status:n.value,value:i.value}))))}if(s.type==="transform")if(r.common.async===!1){let o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Q(o))return h;let i=s.transform(o.value,a);if(i instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:i}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>Q(o)?Promise.resolve(s.transform(o.value,a)).then(i=>({status:n.value,value:i})):h);b.assertNever(s)}};z.create=(t,e,n)=>new z({schema:t,typeName:g.ZodEffects,effect:e,..._(n)});z.createWithPreprocess=(t,e,n)=>new z({schema:e,effect:{type:"preprocess",transform:t},typeName:g.ZodEffects,..._(n)});M=class extends v{_parse(e){return this._getType(e)===p.undefined?C(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};M.create=(t,e)=>new M({innerType:t,typeName:g.ZodOptional,..._(e)});B=class extends v{_parse(e){return this._getType(e)===p.null?C(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};B.create=(t,e)=>new B({innerType:t,typeName:g.ZodNullable,..._(e)});_e=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===p.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};_e.create=(t,e)=>new _e({innerType:t,typeName:g.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._(e)});ve=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return we(s)?s.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new I(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new I(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};ve.create=(t,e)=>new ve({innerType:t,typeName:g.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._(e)});Re=class extends v{_parse(e){if(this._getType(e)!==p.nan){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.nan,received:r.parsedType}),h}return{status:"valid",value:e.data}}};Re.create=t=>new Re({typeName:g.ZodNaN,..._(t)});_s=Symbol("zod_brand"),Ve=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},Ue=class t extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let a=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?h:a.status==="dirty"?(n.dirty(),ae(a.value)):this._def.out._parseAsync({data:a.value,path:r.path,parent:r})})();{let s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?h:s.status==="dirty"?(n.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:g.ZodPipeline})}},be=class extends v{_parse(e){let n=this._def.innerType._parse(e),r=s=>(Q(s)&&(s.value=Object.freeze(s.value)),s);return we(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};be.create=(t,e)=>new be({innerType:t,typeName:g.ZodReadonly,..._(e)});vs={object:P.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"})(g||(g={}));bs=(t,e={message:`Input not instance of ${t.name}`})=>vn(n=>n instanceof t,e),bn=X.create,kn=oe.create,ks=Re.create,xs=ie.create,xn=ce.create,ws=ue.create,Ss=Te.create,Ts=de.create,Es=le.create,As=ee.create,$s=Y.create,Rs=F.create,Cs=Ee.create,Os=J.create,Ns=P.create,Ds=P.strictCreate,Is=fe.create,Ps=at.create,Ms=pe.create,js=U.create,zs=ot.create,Zs=Ae.create,Ls=$e.create,Fs=it.create,Vs=me.create,Us=he.create,Bs=ge.create,Ks=ye.create,Hs=te.create,Ws=z.create,Gs=M.create,Ys=B.create,Js=z.createWithPreprocess,qs=Ue.create,Qs=()=>bn().optional(),Xs=()=>kn().optional(),ea=()=>xn().optional(),ta={string:(t=>X.create({...t,coerce:!0})),number:(t=>oe.create({...t,coerce:!0})),boolean:(t=>ce.create({...t,coerce:!0})),bigint:(t=>ie.create({...t,coerce:!0})),date:(t=>ue.create({...t,coerce:!0}))},na=h});var Z={};ke(Z,{BRAND:()=>_s,DIRTY:()=>ae,EMPTY_PATH:()=>Jr,INVALID:()=>h,NEVER:()=>na,OK:()=>C,ParseStatus:()=>$,Schema:()=>v,ZodAny:()=>ee,ZodArray:()=>J,ZodBigInt:()=>ie,ZodBoolean:()=>ce,ZodBranded:()=>Ve,ZodCatch:()=>ve,ZodDate:()=>ue,ZodDefault:()=>_e,ZodDiscriminatedUnion:()=>at,ZodEffects:()=>z,ZodEnum:()=>ge,ZodError:()=>I,ZodFirstPartyTypeKind:()=>g,ZodFunction:()=>it,ZodIntersection:()=>pe,ZodIssueCode:()=>d,ZodLazy:()=>me,ZodLiteral:()=>he,ZodMap:()=>Ae,ZodNaN:()=>Re,ZodNativeEnum:()=>ye,ZodNever:()=>F,ZodNull:()=>le,ZodNullable:()=>B,ZodNumber:()=>oe,ZodObject:()=>P,ZodOptional:()=>M,ZodParsedType:()=>p,ZodPipeline:()=>Ue,ZodPromise:()=>te,ZodReadonly:()=>be,ZodRecord:()=>ot,ZodSchema:()=>v,ZodSet:()=>$e,ZodString:()=>X,ZodSymbol:()=>Te,ZodTransformer:()=>z,ZodTuple:()=>U,ZodType:()=>v,ZodUndefined:()=>de,ZodUnion:()=>fe,ZodUnknown:()=>Y,ZodVoid:()=>Ee,addIssueToContext:()=>f,any:()=>As,array:()=>Os,bigint:()=>xs,boolean:()=>xn,coerce:()=>ta,custom:()=>vn,date:()=>ws,datetimeRegex:()=>yn,defaultErrorMap:()=>W,discriminatedUnion:()=>Ps,effect:()=>Ws,enum:()=>Bs,function:()=>Fs,getErrorMap:()=>xe,getParsedType:()=>V,instanceof:()=>bs,intersection:()=>Ms,isAborted:()=>rt,isAsync:()=>we,isDirty:()=>st,isValid:()=>Q,late:()=>vs,lazy:()=>Vs,literal:()=>Us,makeIssue:()=>Fe,map:()=>Zs,nan:()=>ks,nativeEnum:()=>Ks,never:()=>Rs,null:()=>Es,nullable:()=>Ys,number:()=>kn,object:()=>Ns,objectUtil:()=>Et,oboolean:()=>ea,onumber:()=>Xs,optional:()=>Gs,ostring:()=>Qs,pipeline:()=>qs,preprocess:()=>Js,promise:()=>Hs,quotelessJson:()=>Wr,record:()=>zs,set:()=>Ls,setErrorMap:()=>Yr,strictObject:()=>Ds,string:()=>bn,symbol:()=>Ss,transformer:()=>Ws,tuple:()=>js,undefined:()=>Ts,union:()=>Is,unknown:()=>$s,util:()=>b,void:()=>Cs});var Ot=S(()=>{nt();$t();ln();Le();wn();tt()});var Sn=S(()=>{Ot();Ot()});var ra,sa,Ce,Tn=S(()=>{"use strict";Sn();ra=Z.enum(["normal","compact","minimal"]),sa=Z.enum(["off","light","balanced","max"]),Ce=Z.object({enabled:Z.boolean().default(!0),telemetryOptIn:Z.boolean().default(!0),outputVerbosity:ra.default("compact"),reducer:sa.default("off"),filters:Z.object({enableAll:Z.boolean().default(!0),disabled:Z.array(Z.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})})});var In={};ke(In,{clearSettingsCache:()=>da,loadSettingsCache:()=>Ne,saveSettingsCache:()=>Dn,updateSettingsCache:()=>ua});import{readFile as Rn,writeFile as Cn,mkdir as On,chmod as aa,rm as Be,rename as Nn,readdir as oa}from"node:fs/promises";import{randomUUID as ia}from"node:crypto";import{join as Oe}from"node:path";import{setTimeout as En}from"node:timers/promises";async function Ne(){let t=null;try{let e=JSON.parse(await Rn(Oe(w(),Nt),"utf8"));typeof e=="object"&&e!==null&&!Array.isArray(e)&&(t=e)}catch{}return t?Ce.parse({...An,...t}):An}async function Dn(t){await On(w(),{recursive:!0,mode:448});let e=Oe(w(),Nt),n=`${e}.tmp-${process.pid}-${process.hrtime.bigint()}`;await Cn(n,JSON.stringify(t,null,2),{mode:384});try{await aa(n,384),await Nn(n,e)}catch(r){try{await Be(n,{force:!0})}catch{}throw r}}async function $n(t){let e=[];for(let n of await oa(t)){let r=/^([1-9]\d*)-[0-9a-f-]{36}\.json$/.exec(n);if(!r)continue;let s=Oe(t,n);try{process.kill(Number(r[1]),0)}catch(a){let o=a.code;if(o==="ESRCH"){await Be(s,{force:!0});continue}if(o!=="EPERM")throw a}try{let a=JSON.parse(await Rn(s,"utf8"));if(!Number.isSafeInteger(a)||a<0)throw new Error("Invalid local settings lock");e.push({id:n,ticket:a})}catch(a){if(a.code!=="ENOENT")throw a}}return e}async function ua(t){let e=ca.parse(t),n=Oe(w(),"settings-cache-locks");await On(n,{recursive:!0,mode:448});let r=`${process.pid}-${ia()}.json`,s=Oe(n,r),a=`${s}.tmp`,o=performance.now()+3e3,i=async c=>{for(await Cn(a,String(c),{mode:384});;)try{await Nn(a,s);return}catch(u){let l=u.code;if(process.platform!=="win32"||l!=="EPERM"&&l!=="EBUSY"||performance.now()>=o)throw u;await En(10)}};try{await i(0);let c=Math.max(0,...(await $n(n)).map(u=>u.ticket))+1;if(!Number.isSafeInteger(c))throw new Error("Invalid local settings lock");for(await i(c);;){if(!(await $n(n)).some(l=>l.id!==r&&(l.ticket===0||l.ticket<c||l.ticket===c&&l.id<r))){let l=await Ne(),y=Ce.parse({...l,...e,filters:{...l.filters,...e.filters}});return await Dn(y),y}if(performance.now()>=o)throw new Error("Timed out waiting for local settings lock after 3 seconds; another process may still be updating settings");await En(10)}}finally{await Promise.all([Be(s,{force:!0}),Be(a,{force:!0})])}}async function da(){try{await Be(Oe(w(),Nt),{force:!0})}catch{}}var Nt,An,ca,ct=S(()=>{"use strict";Tn();L();Nt="settings-cache.json",An=Ce.parse({}),ca=Ce.partial().extend({filters:Ce.shape.filters.removeDefault().partial().optional()})});var Vn={};ke(Vn,{STATIC_COMMAND_NAMES:()=>ut,commandInstalled:()=>Fn,commandsInstallStatus:()=>ka,installCommand:()=>va,isFresh:()=>ga,pruneCommands:()=>ba,pruneSkills:()=>_a,readBundleRefresh:()=>wa,readSkill:()=>Sa,recordBundleRefresh:()=>xa,writeSkill:()=>ya});import{chmod as Dt,mkdir as dt,readFile as Ke,writeFile as lt,stat as It,readdir as la,rm as Mn}from"node:fs/promises";import{existsSync as fa}from"node:fs";import{dirname as pa}from"node:path";async function zn(){try{let t=JSON.parse(await Ke(Tt(),"utf8"));return Array.isArray(t)?t.filter(e=>typeof e=="string"):[]}catch{return[]}}async function Zn(t){try{await dt(w(),{recursive:!0,mode:448}),await lt(Tt(),JSON.stringify(t),{mode:384})}catch{}}function Ln(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?Math.min(t,Pn):Pn}async function ga(t){try{let e=await It(re(t)),n=Date.now()-e.mtimeMs;return n<ha&&n<=Ln()}catch{return!1}}async function ya(t,e){await dt(Xe(),{recursive:!0,mode:448}),await lt(re(t),e,{mode:384}),await Dt(re(t),384)}async function _a(t){let e=new Set(t),n;try{n=await la(Xe())}catch{return}for(let r of n){if(!r.endsWith(".md"))continue;let s=r.slice(0,-3);if(!e.has(s))try{await Mn(re(s))}catch{}}}async function va(t,e){if(!process.env.TOKMIZER_CLAUDE_COMMANDS_DIR&&!fa(pa(et())))return;await dt(et(),{recursive:!0});try{if(!(await Ke(se(t),"utf8")).includes(jn))return}catch{}await lt(se(t),e,{mode:384}),await Dt(se(t),384);let n=await zn();n.includes(t)||await Zn([...n,t])}async function ba(t){let e=new Set([...t,...ut]),n=await zn(),r=new Set([...n,...ma]);for(let s of r)if(!e.has(s))try{if(!(await Ke(se(s),"utf8")).includes(jn))continue;await Mn(se(s))}catch{}await Zn(n.filter(s=>e.has(s)))}async function ka(){let t=0;for(let e of ut)await Fn(e)&&t++;return{installed:t,total:ut.length}}async function Fn(t){try{return await It(se(t)),!0}catch{return!1}}async function xa(t){try{await dt(w(),{recursive:!0,mode:448}),await lt(Qe(),JSON.stringify({at:Date.now(),error:t}),{mode:384}),await Dt(Qe(),384)}catch{}}async function wa(){try{return JSON.parse(await Ke(Qe(),"utf8"))}catch{return null}}async function Sa(t){try{let e=await It(re(t));return Date.now()-e.mtimeMs>Ln()?null:await Ke(re(t),"utf8")}catch{return null}}var jn,ut,ma,ha,Pn,Un=S(()=>{"use strict";L();jn="managed-by: tokmizer",ut=["tkr","tkr-gain","tkr-status","tkr-link","tkr-unlink","tkr-compression","tkr-telemetry","tkr-update","tkr-yolo"],ma=["power","tkr-reducer"];ha=3600*1e3,Pn=10080*60*1e3});import{join as Ta}from"node:path";import{mkdir as jc,readFile as Ea,writeFile as zc,unlink as Zc,rename as Lc}from"node:fs/promises";function $a(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function Ra(t){return t?.dir??w()}async function ft(t){let e=Ra(t);try{let n=await Ea(Ta(e,Aa),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=$a()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var Aa,Pt=S(()=>{"use strict";L();Aa="state.json"});var Bn={};ke(Bn,{reducerStillEntitled:()=>Ca});async function Ca(){return await ft()!==null}var Kn=S(()=>{"use strict";Pt()});function Mt(t){let e=t;for(let[n,r]of Oa)e=e.replace(n,r);return e}var Oa,K,Bc,Hn=S(()=>{"use strict";Oa=[[/(\baws_(?:secret_access_key|session_token|access_key_id)\s+)\S+/gi,"$1[REDACTED]"],[/(\bsshpass\b[^;&|\n]{0,200}?\s-p\s*)\S+/g,"$1[REDACTED]"],[/(\bredis-cli\b[^;&|\n]{0,200}?\s(?:-a|--pass)\s+)\S+/g,"$1[REDACTED]"],[/(\bopenssl\b[^;&|\n]{0,200}?\s-k\s+)\S+/g,"$1[REDACTED]"],[/(\s-pass(?:in|out)?\s+(?:pass|env|file):)\S+/g,"$1[REDACTED]"],[/(https?:\/\/hooks\.slack\.com\/(?:services|workflows|triggers)\/)\S+/gi,"$1[REDACTED]"],[/(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]"]];K="[tkr: secret masked]",Bc=[[/(-----BEGIN [A-Z0-9 ]*PRIVATE KEY-----)(?:\r?\n(?:[A-Za-z0-9+/=]{16,}|[A-Za-z-]+: [^\r\n]*|\r?(?=\n)))*(?:(?:\r?\n[A-Za-z0-9+/=]{1,15})?\r?\n-----END [A-Z0-9 ]*PRIVATE KEY-----)?/g,`$1${K}`],[/(?<![A-Za-z0-9_])(gh[pousr])_[A-Za-z0-9]{36,255}(?![A-Za-z0-9])/g,`$1_${K}`],[/(?<![A-Za-z0-9_])github_pat_[A-Za-z0-9_]{22,255}/g,`github_pat_${K}`],[/(?<![A-Za-z0-9_])npm_[A-Za-z0-9]{36}(?![A-Za-z0-9])/g,`npm_${K}`],[/(?<![A-Z0-9])(AKIA|ASIA)[A-Z0-9]{16}(?![A-Z0-9])/g,`$1${K}`],[/(?<![A-Za-z0-9])(xox[abpors]-)[A-Za-z0-9-]{10,}/g,`$1${K}`],[/(?<![A-Za-z0-9])((?:sk|rk)_live_)[A-Za-z0-9]{16,}/g,`$1${K}`],[/(?<![A-Za-z0-9_-])(sk-(?:ant-|proj-))[A-Za-z0-9_-]{20,}/g,`$1${K}`],[/(authorization["']?\s*[:=]\s*["']?bearer\s+)[A-Za-z0-9._~+/=-]{8,}/gi,`$1${K}`],[/(?<![A-Za-z0-9+.-])([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^\s:/@]*:)[^\s@/]+(@[^\s@/]+)/g,`$1${K}$2`]]});function Wn(){let t=process.env.TOKMIZER_BASE_URL;if(t===De||t===`${De}/`||!t)return De;try{let e=new URL(t);return e.protocol==="http:"&&Na.has(e.hostname)&&!e.username&&!e.password?t:De}catch{return De}}var De,Na,Gn=S(()=>{"use strict";De="https://tokmizer.com",Na=new Set(["127.0.0.1","localhost"])});import Ie from"node:os";import{createHash as Da,createHmac as Yn,randomUUID as Ia}from"node:crypto";import{readFile as Jn,writeFile as qn,mkdir as Pa}from"node:fs/promises";async function Ma(){try{let n=(await Jn(Ze(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await Pa(w(),{recursive:!0,mode:448});let t=Ia();try{return await qn(Ze(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await Jn(Ze(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await qn(Ze(),t,{mode:384}),t}}function jt(t){return Da("sha256").update(t).digest("hex")}function ja(){let t=Ie.networkInterfaces();for(let e of Object.keys(t))for(let n of t[e]??[])if(!n.internal&&n.mac&&n.mac!=="00:00:00:00:00:00")return n.mac;return"no-mac"}async function Qn(){let t=await Ma(),e=Ie.hostname(),n=Ie.platform(),r=Ie.release(),s=Ie.cpus(),a=s[0]?.model??"unknown",o=s.length,i=ja(),c=Ie.userInfo().username,u=[e,n,r,a,String(o),jt(i),jt(c),t].join("|");return{fingerprint:jt(u),installId:t,hostname:e,os:n,osVersion:r,cpuModel:a,cpuCores:o,macHash:Yn("sha256",t).update(i).digest("hex"),usernameHash:Yn("sha256",t).update(c).digest("hex")}}var Xn=S(()=>{"use strict";L()});import{createRequire as za}from"node:module";function La(){let t="1.0.1";if(t)return t;for(let e of["../package.json","../../package.json"])try{let n=Za(e).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}var Za,zt,Zt=S(()=>{"use strict";Za=za(import.meta.url);zt=La()});var er=S(()=>{"use strict"});import{existsSync as Fa,mkdirSync as nu,rmSync as ru,writeFileSync as su}from"node:fs";import{join as Va}from"node:path";function Ka(){return Va(w(),"network-off")}function Ha(){let t=process.env.TOKMIZER_NETWORK;return t!==void 0&&Ua.has(t.trim().toLowerCase())}function He(){return Ha()?!1:!Fa(Ka())}function tr(){if(!He())throw new Lt}var Ua,Ba,iu,Lt,pt=S(()=>{"use strict";L();Ua=new Set(["0","off","false","no"]),Ba="Network is off for Tokmizer. Turn it back on with: tkr network on",iu=["Tokmizer contacts tokmizer.com to keep its rules up to date and to improve the product. No account or email is needed.","It sends a random install ID, your computer name, OS and CPU model, a hash of your network card address and of your user name, and the plugin version. Command contents and output are never sent.","Usage stats (command names, token counts and install health counts) are sent only while they are on. Check with: tkr telemetry status.","Turn all network access off: tkr network off. Usage stats only: tkr telemetry off."].join(`
4
- `),Lt=class extends Error{constructor(){super(Ba),this.name="NetworkDisabledError"}}});import{createHmac as Wa,createPublicKey as lu,verify as fu}from"node:crypto";function Ya(t,e,n,r,s){return Wa("sha256",s).update(`${t}
3
+ var Fr=Object.defineProperty;var S=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var ke=(t,e)=>{for(var n in e)Fr(t,n,{get:e[n],enumerable:!0})};import an from"node:os";import{join as q}from"node:path";function w(){return process.env.TOKMIZER_HOME||q(an.homedir(),".tokmizer")}function ze(){return q(w(),"install-id")}function qe(){return q(w(),"bundle-refresh.json")}function Qe(){return q(w(),"skills")}function re(t){return q(Qe(),`${t}.md`)}function St(){return q(w(),"managed-commands.json")}function Xe(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||q(an.homedir(),".claude","commands")}function se(t){return q(Xe(),`${t}.md`)}var L=S(()=>{"use strict"});var b,Tt,p,V,Ze=S(()=>{(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function n(s){throw new Error}t.assertNever=n,t.arrayToEnum=s=>{let a={};for(let o of s)a[o]=o;return a},t.getValidEnumValues=s=>{let a=t.objectKeys(s).filter(i=>typeof s[s[i]]!="number"),o={};for(let i of a)o[i]=s[i];return t.objectValues(o)},t.objectValues=s=>t.objectKeys(s).map(function(a){return s[a]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let a=[];for(let o in s)Object.prototype.hasOwnProperty.call(s,o)&&a.push(o);return a},t.find=(s,a)=>{for(let o of s)if(a(o))return o},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function r(s,a=" | "){return s.map(o=>typeof o=="string"?`'${o}'`:o).join(a)}t.joinValues=r,t.jsonStringifyReplacer=(s,a)=>typeof a=="bigint"?a.toString():a})(b||(b={}));(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Tt||(Tt={}));p=b.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),V=t=>{switch(typeof t){case"undefined":return p.undefined;case"string":return p.string;case"number":return Number.isNaN(t)?p.nan:p.number;case"boolean":return p.boolean;case"function":return p.function;case"bigint":return p.bigint;case"symbol":return p.symbol;case"object":return Array.isArray(t)?p.array:t===null?p.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?p.promise:typeof Map<"u"&&t instanceof Map?p.map:typeof Set<"u"&&t instanceof Set?p.set:typeof Date<"u"&&t instanceof Date?p.date:p.object;default:return p.unknown}}});var d,Br,I,et=S(()=>{Ze();d=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"]),Br=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=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(a){return a.message},r={_errors:[]},s=a=>{for(let o of a.issues)if(o.code==="invalid_union")o.unionErrors.map(s);else if(o.code==="invalid_return_type")s(o.returnTypeError);else if(o.code==="invalid_arguments")s(o.argumentsError);else if(o.path.length===0)r._errors.push(n(o));else{let i=r,c=0;for(;c<o.path.length;){let u=o.path[c];c===o.path.length-1?(i[u]=i[u]||{_errors:[]},i[u]._errors.push(n(o))):i[u]=i[u]||{_errors:[]},i=i[u],c++}}};return s(this),r}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=n=>n.message){let n={},r=[];for(let s of this.issues)if(s.path.length>0){let a=s.path[0];n[a]=n[a]||[],n[a].push(e(s))}else r.push(e(s));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};I.create=t=>new I(t)});var Kr,W,Et=S(()=>{et();Ze();Kr=(t,e)=>{let n;switch(t.code){case d.invalid_type:t.received===p.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case d.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,b.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:n=`Unrecognized key(s) in object: ${b.joinValues(t.keys,", ")}`;break;case d.invalid_union:n="Invalid input";break;case d.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${b.joinValues(t.options)}`;break;case d.invalid_enum_value:n=`Invalid enum value. Expected ${b.joinValues(t.options)}, received '${t.received}'`;break;case d.invalid_arguments:n="Invalid function arguments";break;case d.invalid_return_type:n="Invalid function return type";break;case d.invalid_date:n="Invalid date";break;case d.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:b.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case d.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case d.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case d.custom:n="Invalid input";break;case d.invalid_intersection_types:n="Intersection results could not be merged";break;case d.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case d.not_finite:n="Number must be finite";break;default:n=e.defaultError,b.assertNever(t)}return{message:n}},W=Kr});function Hr(t){cn=t}function xe(){return cn}var cn,tt=S(()=>{Et();cn=W});function f(t,e){let n=xe(),r=Le({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===W?void 0:W].filter(s=>!!s)});t.common.issues.push(r)}var Le,Wr,$,h,ae,C,nt,rt,Q,we,At=S(()=>{tt();Et();Le=t=>{let{data:e,path:n,errorMaps:r,issueData:s}=t,a=[...n,...s.path||[]],o={...s,path:a};if(s.message!==void 0)return{...s,path:a,message:s.message};let i="",c=r.filter(u=>!!u).slice().reverse();for(let u of c)i=u(o,{data:e,defaultError:i}).message;return{...s,path:a,message:i}},Wr=[];$=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let r=[];for(let s of n){if(s.status==="aborted")return h;s.status==="dirty"&&e.dirty(),r.push(s.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let s of n){let a=await s.key,o=await s.value;r.push({key:a,value:o})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let s of n){let{key:a,value:o}=s;if(a.status==="aborted"||o.status==="aborted")return h;a.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),a.value!=="__proto__"&&(typeof o.value<"u"||s.alwaysSet)&&(r[a.value]=o.value)}return{status:e.value,value:r}}},h=Object.freeze({status:"aborted"}),ae=t=>({status:"dirty",value:t}),C=t=>({status:"valid",value:t}),nt=t=>t.status==="aborted",rt=t=>t.status==="dirty",Q=t=>t.status==="valid",we=t=>typeof Promise<"u"&&t instanceof Promise});var un=S(()=>{});var m,dn=S(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(m||(m={}))});function _(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:s}=t;if(e&&(n||r))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:(o,i)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??i.defaultError}:typeof i.data>"u"?{message:c??r??i.defaultError}:o.code!=="invalid_type"?{message:i.defaultError}:{message:c??n??i.defaultError}},description:s}}function mn(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function ds(t){return new RegExp(`^${mn(t)}$`)}function hn(t){let e=`${pn}T${mn(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function ls(t,e){return!!((e==="v4"||!e)&&rs.test(t)||(e==="v6"||!e)&&as.test(t))}function fs(t,e){if(!Xr.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),s=JSON.parse(atob(r));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function ps(t,e){return!!((e==="v4"||!e)&&ss.test(t)||(e==="v6"||!e)&&os.test(t))}function ms(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,s=n>r?n:r,a=Number.parseInt(t.toFixed(s).replace(".","")),o=Number.parseInt(e.toFixed(s).replace(".",""));return a%o/10**s}function Se(t){if(t instanceof P){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=M.create(Se(r))}return new P({...t._def,shape:()=>e})}else return t instanceof J?new J({...t._def,type:Se(t.element)}):t instanceof M?M.create(Se(t.unwrap())):t instanceof B?B.create(Se(t.unwrap())):t instanceof U?U.create(t.items.map(e=>Se(e))):t}function Rt(t,e){let n=V(t),r=V(e);if(t===e)return{valid:!0,data:t};if(n===p.object&&r===p.object){let s=b.objectKeys(e),a=b.objectKeys(t).filter(i=>s.indexOf(i)!==-1),o={...t,...e};for(let i of a){let c=Rt(t[i],e[i]);if(!c.valid)return{valid:!1};o[i]=c.data}return{valid:!0,data:o}}else if(n===p.array&&r===p.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let a=0;a<t.length;a++){let o=t[a],i=e[a],c=Rt(o,i);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return n===p.date&&r===p.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function gn(t,e){return new ge({values:t,typeName:g.ZodEnum,..._(e)})}function fn(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function yn(t,e={},n){return t?ee.create().superRefine((r,s)=>{let a=t(r);if(a instanceof Promise)return a.then(o=>{if(!o){let i=fn(e,r),c=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:c})}});if(!a){let o=fn(e,r),i=o.fatal??n??!0;s.addIssue({code:"custom",...o,fatal:i})}}):ee.create()}var j,ln,v,Gr,Yr,Jr,qr,Qr,Xr,es,ts,ns,$t,rs,ss,as,os,is,cs,pn,us,X,oe,ie,ce,ue,Te,de,le,ee,Y,F,Ee,J,P,fe,G,st,pe,U,at,Ae,$e,ot,me,he,ge,ye,te,z,M,B,_e,ve,Re,hs,Fe,Ve,be,gs,g,ys,_n,vn,_s,vs,bn,bs,ks,xs,ws,Ss,Ts,Es,As,$s,Rs,Cs,Os,Ns,Ds,Is,Ps,Ms,js,zs,Zs,Ls,Fs,Vs,Us,Bs,Ks,Hs,Ws,Gs,Ys,Js,qs,Qs,Xs,kn=S(()=>{et();tt();dn();At();Ze();j=class{constructor(e,n,r,s){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,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}},ln=(t,e)=>{if(Q(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 n=new I(t.common.issues);return this._error=n,this._error}}};v=class{get description(){return this._def.description}_getType(e){return V(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:V(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new $,ctx:{common:e.parent.common,data:e.data,parsedType:V(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(we(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){let r={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:V(e)},s=this._parseSync({data:e,path:r.path,parent:r});return ln(r,s)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:V(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return Q(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>Q(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:V(e)},s=this._parse({data:e,path:r.path,parent:r}),a=await(we(s)?s:Promise.resolve(s));return ln(r,a)}refine(e,n){let r=s=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(s):n;return this._refinement((s,a)=>{let o=e(s),i=()=>a.addIssue({code:d.custom,...r(s)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(i(),!1)):o?!0:(i(),!1)})}refinement(e,n){return this._refinement((r,s)=>e(r)?!0:(s.addIssue(typeof n=="function"?n(r,s):n),!1))}_refinement(e){return new z({schema:this,typeName:g.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:n=>this["~validate"](n)}}optional(){return M.create(this,this._def)}nullable(){return B.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return J.create(this)}promise(){return te.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 z({..._(this._def),schema:this,typeName:g.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new _e({..._(this._def),innerType:this,defaultValue:n,typeName:g.ZodDefault})}brand(){return new Fe({typeName:g.ZodBranded,type:this,..._(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new ve({..._(this._def),innerType:this,catchValue:n,typeName:g.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Ve.create(this,e)}readonly(){return be.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Gr=/^c[^\s-]{8,}$/i,Yr=/^[0-9a-z]+$/,Jr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,qr=/^[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,Qr=/^[a-z0-9_-]{21}$/i,Xr=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,es=/^[-+]?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)?)??$/,ts=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ns="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",rs=/^(?:(?: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])$/,ss=/^(?:(?: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])$/,as=/^(([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]))$/,os=/^(([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])$/,is=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,cs=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,pn="((\\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])))",us=new RegExp(`^${pn}$`);X=class t extends v{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==p.string){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_type,expected:p.string,received:a.parsedType}),h}let r=new $,s;for(let a of this._def.checks)if(a.kind==="min")e.data.length<a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="max")e.data.length>a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),r.dirty());else if(a.kind==="length"){let o=e.data.length>a.value,i=e.data.length<a.value;(o||i)&&(s=this._getOrReturnCtx(e,s),o?f(s,{code:d.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}):i&&f(s,{code:d.too_small,minimum:a.value,type:"string",inclusive:!0,exact:!0,message:a.message}),r.dirty())}else if(a.kind==="email")ts.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"email",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="emoji")$t||($t=new RegExp(ns,"u")),$t.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"emoji",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="uuid")qr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"uuid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")Qr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"nanoid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")Gr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cuid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid2")Yr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cuid2",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")Jr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"ulid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),f(s,{validation:"url",code:d.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"regex",code:d.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?hn(a).test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"datetime",message:a.message}),r.dirty()):a.kind==="date"?us.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?ds(a).test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"time",message:a.message}),r.dirty()):a.kind==="duration"?es.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"duration",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?ls(e.data,a.version)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"ip",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="jwt"?fs(e.data,a.alg)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"jwt",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="cidr"?ps(e.data,a.version)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cidr",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64"?is.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?cs.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64url",code:d.invalid_string,message:a.message}),r.dirty()):b.assertNever(a);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(s=>e.test(s),{validation:n,code:d.invalid_string,...m.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...m.errToObj(e)})}url(e){return this._addCheck({kind:"url",...m.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...m.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...m.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...m.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...m.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...m.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...m.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...m.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...m.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...m.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...m.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...m.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,...m.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,...m.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...m.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...m.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n?.position,...m.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...m.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...m.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...m.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...m.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...m.errToObj(n)})}nonempty(e){return this.min(1,m.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 n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};X.create=t=>new X({checks:[],typeName:g.ZodString,coerce:t?.coerce??!1,..._(t)});oe=class t extends v{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)!==p.number){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_type,expected:p.number,received:a.parsedType}),h}let r,s=new $;for(let a of this._def.checks)a.kind==="int"?b.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),f(r,{code:d.invalid_type,expected:"integer",received:"float",message:a.message}),s.dirty()):a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_small,minimum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),s.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),s.dirty()):a.kind==="multipleOf"?ms(e.data,a.value)!==0&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_multiple_of,multipleOf:a.value,message:a.message}),s.dirty()):a.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_finite,message:a.message}),s.dirty()):b.assertNever(a);return{status:s.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,m.toString(n))}gt(e,n){return this.setLimit("min",e,!1,m.toString(n))}lte(e,n){return this.setLimit("max",e,!0,m.toString(n))}lt(e,n){return this.setLimit("max",e,!1,m.toString(n))}setLimit(e,n,r,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:m.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:m.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:m.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:m.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:m.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:m.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:m.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:m.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:m.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:m.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.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,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};oe.create=t=>new oe({checks:[],typeName:g.ZodNumber,coerce:t?.coerce||!1,..._(t)});ie=class t extends v{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)!==p.bigint)return this._getInvalidInput(e);let r,s=new $;for(let a of this._def.checks)a.kind==="min"?(a.inclusive?e.data<a.value:e.data<=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_small,type:"bigint",minimum:a.value,inclusive:a.inclusive,message:a.message}),s.dirty()):a.kind==="max"?(a.inclusive?e.data>a.value:e.data>=a.value)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),s.dirty()):a.kind==="multipleOf"?e.data%a.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_multiple_of,multipleOf:a.value,message:a.message}),s.dirty()):b.assertNever(a);return{status:s.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return f(n,{code:d.invalid_type,expected:p.bigint,received:n.parsedType}),h}gte(e,n){return this.setLimit("min",e,!0,m.toString(n))}gt(e,n){return this.setLimit("min",e,!1,m.toString(n))}lte(e,n){return this.setLimit("max",e,!0,m.toString(n))}lt(e,n){return this.setLimit("max",e,!1,m.toString(n))}setLimit(e,n,r,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:m.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:m.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:m.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:m.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:m.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:m.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};ie.create=t=>new ie({checks:[],typeName:g.ZodBigInt,coerce:t?.coerce??!1,..._(t)});ce=class extends v{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==p.boolean){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.boolean,received:r.parsedType}),h}return C(e.data)}};ce.create=t=>new ce({typeName:g.ZodBoolean,coerce:t?.coerce||!1,..._(t)});ue=class t extends v{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==p.date){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_type,expected:p.date,received:a.parsedType}),h}if(Number.isNaN(e.data.getTime())){let a=this._getOrReturnCtx(e);return f(a,{code:d.invalid_date}),h}let r=new $,s;for(let a of this._def.checks)a.kind==="min"?e.data.getTime()<a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_small,message:a.message,inclusive:!0,exact:!1,minimum:a.value,type:"date"}),r.dirty()):a.kind==="max"?e.data.getTime()>a.value&&(s=this._getOrReturnCtx(e,s),f(s,{code:d.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),r.dirty()):b.assertNever(a);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:m.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:m.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};ue.create=t=>new ue({checks:[],coerce:t?.coerce||!1,typeName:g.ZodDate,..._(t)});Te=class extends v{_parse(e){if(this._getType(e)!==p.symbol){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.symbol,received:r.parsedType}),h}return C(e.data)}};Te.create=t=>new Te({typeName:g.ZodSymbol,..._(t)});de=class extends v{_parse(e){if(this._getType(e)!==p.undefined){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.undefined,received:r.parsedType}),h}return C(e.data)}};de.create=t=>new de({typeName:g.ZodUndefined,..._(t)});le=class extends v{_parse(e){if(this._getType(e)!==p.null){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.null,received:r.parsedType}),h}return C(e.data)}};le.create=t=>new le({typeName:g.ZodNull,..._(t)});ee=class extends v{constructor(){super(...arguments),this._any=!0}_parse(e){return C(e.data)}};ee.create=t=>new ee({typeName:g.ZodAny,..._(t)});Y=class extends v{constructor(){super(...arguments),this._unknown=!0}_parse(e){return C(e.data)}};Y.create=t=>new Y({typeName:g.ZodUnknown,..._(t)});F=class extends v{_parse(e){let n=this._getOrReturnCtx(e);return f(n,{code:d.invalid_type,expected:p.never,received:n.parsedType}),h}};F.create=t=>new F({typeName:g.ZodNever,..._(t)});Ee=class extends v{_parse(e){if(this._getType(e)!==p.undefined){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.void,received:r.parsedType}),h}return C(e.data)}};Ee.create=t=>new Ee({typeName:g.ZodVoid,..._(t)});J=class t extends v{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),s=this._def;if(n.parsedType!==p.array)return f(n,{code:d.invalid_type,expected:p.array,received:n.parsedType}),h;if(s.exactLength!==null){let o=n.data.length>s.exactLength.value,i=n.data.length<s.exactLength.value;(o||i)&&(f(n,{code:o?d.too_big:d.too_small,minimum:i?s.exactLength.value:void 0,maximum:o?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),r.dirty())}if(s.minLength!==null&&n.data.length<s.minLength.value&&(f(n,{code:d.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),r.dirty()),s.maxLength!==null&&n.data.length>s.maxLength.value&&(f(n,{code:d.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((o,i)=>s.type._parseAsync(new j(n,o,n.path,i)))).then(o=>$.mergeArray(r,o));let a=[...n.data].map((o,i)=>s.type._parseSync(new j(n,o,n.path,i)));return $.mergeArray(r,a)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:m.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:m.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:m.toString(n)}})}nonempty(e){return this.min(1,e)}};J.create=(t,e)=>new J({type:t,minLength:null,maxLength:null,exactLength:null,typeName:g.ZodArray,..._(e)});P=class t extends v{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(),n=b.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==p.object){let u=this._getOrReturnCtx(e);return f(u,{code:d.invalid_type,expected:p.object,received:u.parsedType}),h}let{status:r,ctx:s}=this._processInputParams(e),{shape:a,keys:o}=this._getCached(),i=[];if(!(this._def.catchall instanceof F&&this._def.unknownKeys==="strip"))for(let u in s.data)o.includes(u)||i.push(u);let c=[];for(let u of o){let l=a[u],y=s.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new j(s,y,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof F){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of i)c.push({key:{status:"valid",value:l},value:{status:"valid",value:s.data[l]}});else if(u==="strict")i.length>0&&(f(s,{code:d.unrecognized_keys,keys:i}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of i){let y=s.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new j(s,y,s.path,l)),alwaysSet:l in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let y=await l.key,k=await l.value;u.push({key:y,value:k,alwaysSet:l.alwaysSet})}return u}).then(u=>$.mergeObjectSync(r,u)):$.mergeObjectSync(r,c)}get shape(){return this._def.shape()}strict(e){return m.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{let s=this._def.errorMap?.(n,r).message??r.defaultError;return n.code==="unrecognized_keys"?{message:m.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:g.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of b.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of b.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return Se(this)}partial(e){let n={};for(let r of b.objectKeys(this.shape)){let s=this.shape[r];e&&!e[r]?n[r]=s:n[r]=s.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of b.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof M;)a=a._def.innerType;n[r]=a}return new t({...this._def,shape:()=>n})}keyof(){return gn(b.objectKeys(this.shape))}};P.create=(t,e)=>new P({shape:()=>t,unknownKeys:"strip",catchall:F.create(),typeName:g.ZodObject,..._(e)});P.strictCreate=(t,e)=>new P({shape:()=>t,unknownKeys:"strict",catchall:F.create(),typeName:g.ZodObject,..._(e)});P.lazycreate=(t,e)=>new P({shape:t,unknownKeys:"strip",catchall:F.create(),typeName:g.ZodObject,..._(e)});fe=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function s(a){for(let i of a)if(i.result.status==="valid")return i.result;for(let i of a)if(i.result.status==="dirty")return n.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(i=>new I(i.ctx.common.issues));return f(n,{code:d.invalid_union,unionErrors:o}),h}if(n.common.async)return Promise.all(r.map(async a=>{let o={...n,common:{...n.common,issues:[]},parent:null};return{result:await a._parseAsync({data:n.data,path:n.path,parent:o}),ctx:o}})).then(s);{let a,o=[];for(let c of r){let u={...n,common:{...n.common,issues:[]},parent:null},l=c._parseSync({data:n.data,path:n.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!a&&(a={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(a)return n.common.issues.push(...a.ctx.common.issues),a.result;let i=o.map(c=>new I(c));return f(n,{code:d.invalid_union,unionErrors:i}),h}}get options(){return this._def.options}};fe.create=(t,e)=>new fe({options:t,typeName:g.ZodUnion,..._(e)});G=t=>t instanceof me?G(t.schema):t instanceof z?G(t.innerType()):t instanceof he?[t.value]:t instanceof ge?t.options:t instanceof ye?b.objectValues(t.enum):t instanceof _e?G(t._def.innerType):t instanceof de?[void 0]:t instanceof le?[null]:t instanceof M?[void 0,...G(t.unwrap())]:t instanceof B?[null,...G(t.unwrap())]:t instanceof Fe||t instanceof be?G(t.unwrap()):t instanceof ve?G(t._def.innerType):[],st=class t extends v{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==p.object)return f(n,{code:d.invalid_type,expected:p.object,received:n.parsedType}),h;let r=this.discriminator,s=n.data[r],a=this.optionsMap.get(s);return a?n.common.async?a._parseAsync({data:n.data,path:n.path,parent:n}):a._parseSync({data:n.data,path:n.path,parent:n}):(f(n,{code:d.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),h)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let s=new Map;for(let a of n){let o=G(a.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let i of o){if(s.has(i))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(i)}`);s.set(i,a)}}return new t({typeName:g.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:s,..._(r)})}};pe=class extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=(a,o)=>{if(nt(a)||nt(o))return h;let i=Rt(a.value,o.value);return i.valid?((rt(a)||rt(o))&&n.dirty(),{status:n.value,value:i.data}):(f(r,{code:d.invalid_intersection_types}),h)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([a,o])=>s(a,o)):s(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};pe.create=(t,e,n)=>new pe({left:t,right:e,typeName:g.ZodIntersection,..._(n)});U=class t extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.array)return f(r,{code:d.invalid_type,expected:p.array,received:r.parsedType}),h;if(r.data.length<this._def.items.length)return f(r,{code:d.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),h;!this._def.rest&&r.data.length>this._def.items.length&&(f(r,{code:d.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let a=[...r.data].map((o,i)=>{let c=this._def.items[i]||this._def.rest;return c?c._parse(new j(r,o,r.path,i)):null}).filter(o=>!!o);return r.common.async?Promise.all(a).then(o=>$.mergeArray(n,o)):$.mergeArray(n,a)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};U.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new U({items:t,typeName:g.ZodTuple,rest:null,..._(e)})};at=class t extends v{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.object)return f(r,{code:d.invalid_type,expected:p.object,received:r.parsedType}),h;let s=[],a=this._def.keyType,o=this._def.valueType;for(let i in r.data)s.push({key:a._parse(new j(r,i,r.path,i)),value:o._parse(new j(r,r.data[i],r.path,i)),alwaysSet:i in r.data});return r.common.async?$.mergeObjectAsync(n,s):$.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof v?new t({keyType:e,valueType:n,typeName:g.ZodRecord,..._(r)}):new t({keyType:X.create(),valueType:e,typeName:g.ZodRecord,..._(n)})}},Ae=class extends v{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.map)return f(r,{code:d.invalid_type,expected:p.map,received:r.parsedType}),h;let s=this._def.keyType,a=this._def.valueType,o=[...r.data.entries()].map(([i,c],u)=>({key:s._parse(new j(r,i,r.path,[u,"key"])),value:a._parse(new j(r,c,r.path,[u,"value"]))}));if(r.common.async){let i=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return h;(u.status==="dirty"||l.status==="dirty")&&n.dirty(),i.set(u.value,l.value)}return{status:n.value,value:i}})}else{let i=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return h;(u.status==="dirty"||l.status==="dirty")&&n.dirty(),i.set(u.value,l.value)}return{status:n.value,value:i}}}};Ae.create=(t,e,n)=>new Ae({valueType:e,keyType:t,typeName:g.ZodMap,..._(n)});$e=class t extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==p.set)return f(r,{code:d.invalid_type,expected:p.set,received:r.parsedType}),h;let s=this._def;s.minSize!==null&&r.data.size<s.minSize.value&&(f(r,{code:d.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),n.dirty()),s.maxSize!==null&&r.data.size>s.maxSize.value&&(f(r,{code:d.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),n.dirty());let a=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return h;l.status==="dirty"&&n.dirty(),u.add(l.value)}return{status:n.value,value:u}}let i=[...r.data.values()].map((c,u)=>a._parse(new j(r,c,r.path,u)));return r.common.async?Promise.all(i).then(c=>o(c)):o(i)}min(e,n){return new t({...this._def,minSize:{value:e,message:m.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:m.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};$e.create=(t,e)=>new $e({valueType:t,minSize:null,maxSize:null,typeName:g.ZodSet,..._(e)});ot=class t extends v{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==p.function)return f(n,{code:d.invalid_type,expected:p.function,received:n.parsedType}),h;function r(i,c){return Le({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xe(),W].filter(u=>!!u),issueData:{code:d.invalid_arguments,argumentsError:c}})}function s(i,c){return Le({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xe(),W].filter(u=>!!u),issueData:{code:d.invalid_return_type,returnTypeError:c}})}let a={errorMap:n.common.contextualErrorMap},o=n.data;if(this._def.returns instanceof te){let i=this;return C(async function(...c){let u=new I([]),l=await i._def.args.parseAsync(c,a).catch(T=>{throw u.addIssue(r(c,T)),u}),y=await Reflect.apply(o,this,l);return await i._def.returns._def.type.parseAsync(y,a).catch(T=>{throw u.addIssue(s(y,T)),u})})}else{let i=this;return C(function(...c){let u=i._def.args.safeParse(c,a);if(!u.success)throw new I([r(c,u.error)]);let l=Reflect.apply(o,this,u.data),y=i._def.returns.safeParse(l,a);if(!y.success)throw new I([s(l,y.error)]);return y.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:U.create(e).rest(Y.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,n,r){return new t({args:e||U.create([]).rest(Y.create()),returns:n||Y.create(),typeName:g.ZodFunction,..._(r)})}},me=class extends v{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};me.create=(t,e)=>new me({getter:t,typeName:g.ZodLazy,..._(e)});he=class extends v{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return f(n,{received:n.data,code:d.invalid_literal,expected:this._def.value}),h}return{status:"valid",value:e.data}}get value(){return this._def.value}};he.create=(t,e)=>new he({value:t,typeName:g.ZodLiteral,..._(e)});ge=class t extends v{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{expected:b.joinValues(r),received:n.parsedType,code:d.invalid_type}),h}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{received:n.data,code:d.invalid_enum_value,options:r}),h}return C(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};ge.create=gn;ye=class extends v{_parse(e){let n=b.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==p.string&&r.parsedType!==p.number){let s=b.objectValues(n);return f(r,{expected:b.joinValues(s),received:r.parsedType,code:d.invalid_type}),h}if(this._cache||(this._cache=new Set(b.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=b.objectValues(n);return f(r,{received:r.data,code:d.invalid_enum_value,options:s}),h}return C(e.data)}get enum(){return this._def.values}};ye.create=(t,e)=>new ye({values:t,typeName:g.ZodNativeEnum,..._(e)});te=class extends v{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==p.promise&&n.common.async===!1)return f(n,{code:d.invalid_type,expected:p.promise,received:n.parsedType}),h;let r=n.parsedType===p.promise?n.data:Promise.resolve(n.data);return C(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};te.create=(t,e)=>new te({type:t,typeName:g.ZodPromise,..._(e)});z=class extends v{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===g.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=this._def.effect||null,a={addIssue:o=>{f(r,o),o.fatal?n.abort():n.dirty()},get path(){return r.path}};if(a.addIssue=a.addIssue.bind(a),s.type==="preprocess"){let o=s.transform(r.data,a);if(r.common.async)return Promise.resolve(o).then(async i=>{if(n.value==="aborted")return h;let c=await this._def.schema._parseAsync({data:i,path:r.path,parent:r});return c.status==="aborted"?h:c.status==="dirty"?ae(c.value):n.value==="dirty"?ae(c.value):c});{if(n.value==="aborted")return h;let i=this._def.schema._parseSync({data:o,path:r.path,parent:r});return i.status==="aborted"?h:i.status==="dirty"?ae(i.value):n.value==="dirty"?ae(i.value):i}}if(s.type==="refinement"){let o=i=>{let c=s.refinement(i,a);if(r.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return i};if(r.common.async===!1){let i=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?h:(i.status==="dirty"&&n.dirty(),o(i.value),{status:n.value,value:i.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(i=>i.status==="aborted"?h:(i.status==="dirty"&&n.dirty(),o(i.value).then(()=>({status:n.value,value:i.value}))))}if(s.type==="transform")if(r.common.async===!1){let o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Q(o))return h;let i=s.transform(o.value,a);if(i instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:i}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>Q(o)?Promise.resolve(s.transform(o.value,a)).then(i=>({status:n.value,value:i})):h);b.assertNever(s)}};z.create=(t,e,n)=>new z({schema:t,typeName:g.ZodEffects,effect:e,..._(n)});z.createWithPreprocess=(t,e,n)=>new z({schema:e,effect:{type:"preprocess",transform:t},typeName:g.ZodEffects,..._(n)});M=class extends v{_parse(e){return this._getType(e)===p.undefined?C(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};M.create=(t,e)=>new M({innerType:t,typeName:g.ZodOptional,..._(e)});B=class extends v{_parse(e){return this._getType(e)===p.null?C(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};B.create=(t,e)=>new B({innerType:t,typeName:g.ZodNullable,..._(e)});_e=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===p.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};_e.create=(t,e)=>new _e({innerType:t,typeName:g.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._(e)});ve=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},s=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return we(s)?s.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new I(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new I(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};ve.create=(t,e)=>new ve({innerType:t,typeName:g.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._(e)});Re=class extends v{_parse(e){if(this._getType(e)!==p.nan){let r=this._getOrReturnCtx(e);return f(r,{code:d.invalid_type,expected:p.nan,received:r.parsedType}),h}return{status:"valid",value:e.data}}};Re.create=t=>new Re({typeName:g.ZodNaN,..._(t)});hs=Symbol("zod_brand"),Fe=class extends v{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},Ve=class t extends v{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let a=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?h:a.status==="dirty"?(n.dirty(),ae(a.value)):this._def.out._parseAsync({data:a.value,path:r.path,parent:r})})();{let s=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?h:s.status==="dirty"?(n.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:g.ZodPipeline})}},be=class extends v{_parse(e){let n=this._def.innerType._parse(e),r=s=>(Q(s)&&(s.value=Object.freeze(s.value)),s);return we(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};be.create=(t,e)=>new be({innerType:t,typeName:g.ZodReadonly,..._(e)});gs={object:P.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"})(g||(g={}));ys=(t,e={message:`Input not instance of ${t.name}`})=>yn(n=>n instanceof t,e),_n=X.create,vn=oe.create,_s=Re.create,vs=ie.create,bn=ce.create,bs=ue.create,ks=Te.create,xs=de.create,ws=le.create,Ss=ee.create,Ts=Y.create,Es=F.create,As=Ee.create,$s=J.create,Rs=P.create,Cs=P.strictCreate,Os=fe.create,Ns=st.create,Ds=pe.create,Is=U.create,Ps=at.create,Ms=Ae.create,js=$e.create,zs=ot.create,Zs=me.create,Ls=he.create,Fs=ge.create,Vs=ye.create,Us=te.create,Bs=z.create,Ks=M.create,Hs=B.create,Ws=z.createWithPreprocess,Gs=Ve.create,Ys=()=>_n().optional(),Js=()=>vn().optional(),qs=()=>bn().optional(),Qs={string:(t=>X.create({...t,coerce:!0})),number:(t=>oe.create({...t,coerce:!0})),boolean:(t=>ce.create({...t,coerce:!0})),bigint:(t=>ie.create({...t,coerce:!0})),date:(t=>ue.create({...t,coerce:!0}))},Xs=h});var Z={};ke(Z,{BRAND:()=>hs,DIRTY:()=>ae,EMPTY_PATH:()=>Wr,INVALID:()=>h,NEVER:()=>Xs,OK:()=>C,ParseStatus:()=>$,Schema:()=>v,ZodAny:()=>ee,ZodArray:()=>J,ZodBigInt:()=>ie,ZodBoolean:()=>ce,ZodBranded:()=>Fe,ZodCatch:()=>ve,ZodDate:()=>ue,ZodDefault:()=>_e,ZodDiscriminatedUnion:()=>st,ZodEffects:()=>z,ZodEnum:()=>ge,ZodError:()=>I,ZodFirstPartyTypeKind:()=>g,ZodFunction:()=>ot,ZodIntersection:()=>pe,ZodIssueCode:()=>d,ZodLazy:()=>me,ZodLiteral:()=>he,ZodMap:()=>Ae,ZodNaN:()=>Re,ZodNativeEnum:()=>ye,ZodNever:()=>F,ZodNull:()=>le,ZodNullable:()=>B,ZodNumber:()=>oe,ZodObject:()=>P,ZodOptional:()=>M,ZodParsedType:()=>p,ZodPipeline:()=>Ve,ZodPromise:()=>te,ZodReadonly:()=>be,ZodRecord:()=>at,ZodSchema:()=>v,ZodSet:()=>$e,ZodString:()=>X,ZodSymbol:()=>Te,ZodTransformer:()=>z,ZodTuple:()=>U,ZodType:()=>v,ZodUndefined:()=>de,ZodUnion:()=>fe,ZodUnknown:()=>Y,ZodVoid:()=>Ee,addIssueToContext:()=>f,any:()=>Ss,array:()=>$s,bigint:()=>vs,boolean:()=>bn,coerce:()=>Qs,custom:()=>yn,date:()=>bs,datetimeRegex:()=>hn,defaultErrorMap:()=>W,discriminatedUnion:()=>Ns,effect:()=>Bs,enum:()=>Fs,function:()=>zs,getErrorMap:()=>xe,getParsedType:()=>V,instanceof:()=>ys,intersection:()=>Ds,isAborted:()=>nt,isAsync:()=>we,isDirty:()=>rt,isValid:()=>Q,late:()=>gs,lazy:()=>Zs,literal:()=>Ls,makeIssue:()=>Le,map:()=>Ms,nan:()=>_s,nativeEnum:()=>Vs,never:()=>Es,null:()=>ws,nullable:()=>Hs,number:()=>vn,object:()=>Rs,objectUtil:()=>Tt,oboolean:()=>qs,onumber:()=>Js,optional:()=>Ks,ostring:()=>Ys,pipeline:()=>Gs,preprocess:()=>Ws,promise:()=>Us,quotelessJson:()=>Br,record:()=>Ps,set:()=>js,setErrorMap:()=>Hr,strictObject:()=>Cs,string:()=>_n,symbol:()=>ks,transformer:()=>Bs,tuple:()=>Is,undefined:()=>xs,union:()=>Os,unknown:()=>Ts,util:()=>b,void:()=>As});var Ct=S(()=>{tt();At();un();Ze();kn();et()});var xn=S(()=>{Ct();Ct()});var ea,ta,Ce,wn=S(()=>{"use strict";xn();ea=Z.enum(["normal","compact","minimal"]),ta=Z.enum(["off","light","balanced","max"]),Ce=Z.object({enabled:Z.boolean().default(!0),telemetryOptIn:Z.boolean().default(!0),outputVerbosity:ea.default("compact"),reducer:ta.default("off"),filters:Z.object({enableAll:Z.boolean().default(!0),disabled:Z.array(Z.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})})});var Nn={};ke(Nn,{clearSettingsCache:()=>ia,loadSettingsCache:()=>Ne,saveSettingsCache:()=>On,updateSettingsCache:()=>oa});import{readFile as An,writeFile as $n,mkdir as Rn,chmod as na,rm as Ue,rename as Cn,readdir as ra}from"node:fs/promises";import{randomUUID as sa}from"node:crypto";import{join as Oe}from"node:path";import{setTimeout as Sn}from"node:timers/promises";async function Ne(){let t=null;try{let e=JSON.parse(await An(Oe(w(),Ot),"utf8"));typeof e=="object"&&e!==null&&!Array.isArray(e)&&(t=e)}catch{}return t?Ce.parse({...Tn,...t}):Tn}async function On(t){await Rn(w(),{recursive:!0,mode:448});let e=Oe(w(),Ot),n=`${e}.tmp-${process.pid}-${process.hrtime.bigint()}`;await $n(n,JSON.stringify(t,null,2),{mode:384});try{await na(n,384),await Cn(n,e)}catch(r){try{await Ue(n,{force:!0})}catch{}throw r}}async function En(t){let e=[];for(let n of await ra(t)){let r=/^([1-9]\d*)-[0-9a-f-]{36}\.json$/.exec(n);if(!r)continue;let s=Oe(t,n);try{process.kill(Number(r[1]),0)}catch(a){let o=a.code;if(o==="ESRCH"){await Ue(s,{force:!0});continue}if(o!=="EPERM")throw a}try{let a=JSON.parse(await An(s,"utf8"));if(!Number.isSafeInteger(a)||a<0)throw new Error("Invalid local settings lock");e.push({id:n,ticket:a})}catch(a){if(a.code!=="ENOENT")throw a}}return e}async function oa(t){let e=aa.parse(t),n=Oe(w(),"settings-cache-locks");await Rn(n,{recursive:!0,mode:448});let r=`${process.pid}-${sa()}.json`,s=Oe(n,r),a=`${s}.tmp`,o=performance.now()+3e3,i=async c=>{for(await $n(a,String(c),{mode:384});;)try{await Cn(a,s);return}catch(u){let l=u.code;if(process.platform!=="win32"||l!=="EPERM"&&l!=="EBUSY"||performance.now()>=o)throw u;await Sn(10)}};try{await i(0);let c=Math.max(0,...(await En(n)).map(u=>u.ticket))+1;if(!Number.isSafeInteger(c))throw new Error("Invalid local settings lock");for(await i(c);;){if(!(await En(n)).some(l=>l.id!==r&&(l.ticket===0||l.ticket<c||l.ticket===c&&l.id<r))){let l=await Ne(),y=Ce.parse({...l,...e,filters:{...l.filters,...e.filters}});return await On(y),y}if(performance.now()>=o)throw new Error("Timed out waiting for local settings lock after 3 seconds; another process may still be updating settings");await Sn(10)}}finally{await Promise.all([Ue(s,{force:!0}),Ue(a,{force:!0})])}}async function ia(){try{await Ue(Oe(w(),Ot),{force:!0})}catch{}}var Ot,Tn,aa,it=S(()=>{"use strict";wn();L();Ot="settings-cache.json",Tn=Ce.parse({}),aa=Ce.partial().extend({filters:Ce.shape.filters.removeDefault().partial().optional()})});var Ln={};ke(Ln,{STATIC_COMMAND_NAMES:()=>ct,commandInstalled:()=>Zn,commandsInstallStatus:()=>_a,installCommand:()=>ga,isFresh:()=>pa,pruneCommands:()=>ya,pruneSkills:()=>ha,readBundleRefresh:()=>ba,readSkill:()=>ka,recordBundleRefresh:()=>va,writeSkill:()=>ma});import{chmod as Nt,mkdir as ut,readFile as Be,writeFile as dt,stat as Dt,readdir as ca,rm as In}from"node:fs/promises";import{existsSync as ua}from"node:fs";import{dirname as da}from"node:path";async function Mn(){try{let t=JSON.parse(await Be(St(),"utf8"));return Array.isArray(t)?t.filter(e=>typeof e=="string"):[]}catch{return[]}}async function jn(t){try{await ut(w(),{recursive:!0,mode:448}),await dt(St(),JSON.stringify(t),{mode:384})}catch{}}function zn(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?Math.min(t,Dn):Dn}async function pa(t){try{let e=await Dt(re(t)),n=Date.now()-e.mtimeMs;return n<fa&&n<=zn()}catch{return!1}}async function ma(t,e){await ut(Qe(),{recursive:!0,mode:448}),await dt(re(t),e,{mode:384}),await Nt(re(t),384)}async function ha(t){let e=new Set(t),n;try{n=await ca(Qe())}catch{return}for(let r of n){if(!r.endsWith(".md"))continue;let s=r.slice(0,-3);if(!e.has(s))try{await In(re(s))}catch{}}}async function ga(t,e){if(!process.env.TOKMIZER_CLAUDE_COMMANDS_DIR&&!ua(da(Xe())))return;await ut(Xe(),{recursive:!0});try{if(!(await Be(se(t),"utf8")).includes(Pn))return}catch{}await dt(se(t),e,{mode:384}),await Nt(se(t),384);let n=await Mn();n.includes(t)||await jn([...n,t])}async function ya(t){let e=new Set([...t,...ct]),n=await Mn(),r=new Set([...n,...la]);for(let s of r)if(!e.has(s))try{if(!(await Be(se(s),"utf8")).includes(Pn))continue;await In(se(s))}catch{}await jn(n.filter(s=>e.has(s)))}async function _a(){let t=0;for(let e of ct)await Zn(e)&&t++;return{installed:t,total:ct.length}}async function Zn(t){try{return await Dt(se(t)),!0}catch{return!1}}async function va(t){try{await ut(w(),{recursive:!0,mode:448}),await dt(qe(),JSON.stringify({at:Date.now(),error:t}),{mode:384}),await Nt(qe(),384)}catch{}}async function ba(){try{return JSON.parse(await Be(qe(),"utf8"))}catch{return null}}async function ka(t){try{let e=await Dt(re(t));return Date.now()-e.mtimeMs>zn()?null:await Be(re(t),"utf8")}catch{return null}}var Pn,ct,la,fa,Dn,Fn=S(()=>{"use strict";L();Pn="managed-by: tokmizer",ct=["tkr","tkr-gain","tkr-status","tkr-link","tkr-unlink","tkr-compression","tkr-telemetry","tkr-update","tkr-yolo"],la=["power","tkr-reducer"];fa=3600*1e3,Dn=10080*60*1e3});import{join as xa}from"node:path";import{mkdir as Dc,readFile as wa,writeFile as Ic,unlink as Pc,rename as Mc}from"node:fs/promises";function Ta(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function Ea(t){return t?.dir??w()}async function lt(t){let e=Ea(t);try{let n=await wa(xa(e,Sa),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=Ta()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var Sa,It=S(()=>{"use strict";L();Sa="state.json"});var Vn={};ke(Vn,{reducerStillEntitled:()=>Aa});async function Aa(){return await lt()!==null}var Un=S(()=>{"use strict";It()});function Pt(t){let e=t;for(let[n,r]of $a)e=e.replace(n,r);return e}var $a,K,Lc,Bn=S(()=>{"use strict";$a=[[/(\baws_(?:secret_access_key|session_token|access_key_id)\s+)\S+/gi,"$1[REDACTED]"],[/(\bsshpass\b[^;&|\n]{0,200}?\s-p\s*)\S+/g,"$1[REDACTED]"],[/(\bredis-cli\b[^;&|\n]{0,200}?\s(?:-a|--pass)\s+)\S+/g,"$1[REDACTED]"],[/(\bopenssl\b[^;&|\n]{0,200}?\s-k\s+)\S+/g,"$1[REDACTED]"],[/(\s-pass(?:in|out)?\s+(?:pass|env|file):)\S+/g,"$1[REDACTED]"],[/(https?:\/\/hooks\.slack\.com\/(?:services|workflows|triggers)\/)\S+/gi,"$1[REDACTED]"],[/(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]"]];K="[tkr: secret masked]",Lc=[[/(-----BEGIN [A-Z0-9 ]*PRIVATE KEY-----)(?:\r?\n(?:[A-Za-z0-9+/=]{16,}|[A-Za-z-]+: [^\r\n]*|\r?(?=\n)))*(?:(?:\r?\n[A-Za-z0-9+/=]{1,15})?\r?\n-----END [A-Z0-9 ]*PRIVATE KEY-----)?/g,`$1${K}`],[/(?<![A-Za-z0-9_])(gh[pousr])_[A-Za-z0-9]{36,255}(?![A-Za-z0-9])/g,`$1_${K}`],[/(?<![A-Za-z0-9_])github_pat_[A-Za-z0-9_]{22,255}/g,`github_pat_${K}`],[/(?<![A-Za-z0-9_])npm_[A-Za-z0-9]{36}(?![A-Za-z0-9])/g,`npm_${K}`],[/(?<![A-Z0-9])(AKIA|ASIA)[A-Z0-9]{16}(?![A-Z0-9])/g,`$1${K}`],[/(?<![A-Za-z0-9])(xox[abpors]-)[A-Za-z0-9-]{10,}/g,`$1${K}`],[/(?<![A-Za-z0-9])((?:sk|rk)_live_)[A-Za-z0-9]{16,}/g,`$1${K}`],[/(?<![A-Za-z0-9_-])(sk-(?:ant-|proj-))[A-Za-z0-9_-]{20,}/g,`$1${K}`],[/(authorization["']?\s*[:=]\s*["']?bearer\s+)[A-Za-z0-9._~+/=-]{8,}/gi,`$1${K}`],[/(?<![A-Za-z0-9+.-])([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^\s:/@]*:)[^\s@/]+(@[^\s@/]+)/g,`$1${K}$2`]]});function Kn(){let t=process.env.TOKMIZER_BASE_URL;if(t===De||t===`${De}/`||!t)return De;try{let e=new URL(t);return e.protocol==="http:"&&Ra.has(e.hostname)&&!e.username&&!e.password?t:De}catch{return De}}var De,Ra,Hn=S(()=>{"use strict";De="https://tokmizer.com",Ra=new Set(["127.0.0.1","localhost"])});import{createHash as Ca,randomUUID as Oa}from"node:crypto";import{readFile as Wn,writeFile as Gn,mkdir as Na}from"node:fs/promises";async function Da(){try{let n=(await Wn(ze(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await Na(w(),{recursive:!0,mode:448});let t=Oa();try{return await Gn(ze(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await Wn(ze(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await Gn(ze(),t,{mode:384}),t}}async function Yn(){let t=await Da();return{fingerprint:Ca("sha256").update(t).digest("hex"),installId:t}}var Jn=S(()=>{"use strict";L()});import{createRequire as Ia}from"node:module";function Ma(){let t="1.1.0";if(t)return t;for(let e of["../package.json","../../package.json"])try{let n=Pa(e).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}var Pa,Mt,jt=S(()=>{"use strict";Pa=Ia(import.meta.url);Mt=Ma()});var qn=S(()=>{"use strict"});import{existsSync as ja,mkdirSync as qc,rmSync as Qc,writeFileSync as Xc}from"node:fs";import{join as za}from"node:path";function Fa(){return za(w(),"network-off")}function Va(){let t=process.env.TOKMIZER_NETWORK;return t!==void 0&&Za.has(t.trim().toLowerCase())}function Ke(){return Va()?!1:!ja(Fa())}function Qn(){if(!Ke())throw new zt}var Za,La,nu,zt,ft=S(()=>{"use strict";L();Za=new Set(["0","off","false","no"]),La="Network is off for Tokmizer. Turn it back on with: tkr network on",nu=["Tokmizer contacts tokmizer.com to keep its rules up to date and to improve the product. No account or email is needed.","It sends a random install ID and the plugin version, nothing that describes your machine: no computer name, OS, hardware or user name. Command contents and output are never sent.","Usage stats (command names, token counts and install health counts) are sent only while they are on. Check with: tkr telemetry status.","Turn all network access off: tkr network off. Usage stats only: tkr telemetry off."].join(`
4
+ `),zt=class extends Error{constructor(){super(La),this.name="NetworkDisabledError"}}});import{createHmac as Ua,createPublicKey as ou,verify as iu}from"node:crypto";function Ka(t,e,n,r,s){return Ua("sha256",s).update(`${t}
5
5
  ${e}
6
6
  ${r}
7
- ${n}`).digest("hex")}function Ja(t){let e=new URL(t);return`${e.pathname}${e.search}`}async function nr(t,e,n,r){tr();let s=Date.now(),a=n===void 0?"":JSON.stringify(n),o=`${r.baseUrl}${e}`,i=r.signingSecret?Ya(t,Ja(o),a,s,r.signingSecret):"0".repeat(64),c={"content-type":"application/json","x-tokmizer-fingerprint":r.fingerprint,"x-tokmizer-install-id":r.installId,"x-tokmizer-sig":i,"x-tokmizer-ts":String(s),"x-tokmizer-plugin-version":zt,"x-tokmizer-accept-resp-path":"1"};r.bearer&&(c.authorization=`Bearer ${r.bearer}`);let u=r.timeoutMs??5e3,l=t!=="GET"&&t!=="DELETE",y={method:t,headers:c,signal:AbortSignal.timeout(u)};l&&(y.body=a);let k;try{k=await fetch(o,y)}catch(T){let D=T.name;throw D==="TimeoutError"||D==="AbortError"?new mt("timeout",`${t} ${e} timed out after ${u}ms`):new mt("network",`${t} ${e} failed: ${T.message}`)}return k!==null&&typeof k=="object"&&Ga.set(k,e.split("?")[0]),k}var gu,yu,Ga,mt,rr=S(()=>{"use strict";Zt();er();pt();gu=300*1e3,yu=120*1e3,Ga=new WeakMap,mt=class extends Error{constructor(n,r,s){super(r);this.kind=n;this.status=s;this.name="TransportError"}kind;status}});import{existsSync as qa,mkdirSync as bu,writeFileSync as ku}from"node:fs";import{join as Qa}from"node:path";function eo(){return Qa(w(),Xa)}function sr(){return qa(eo())}var Xa,ar=S(()=>{"use strict";L();ct();pt();Zt();Xa="telemetry-notice-shown"});import{join as We}from"node:path";import{appendFileSync as Ht,chmodSync as to,existsSync as Pe,mkdirSync as Ut,readFileSync as Wt,renameSync as Bt,rmdirSync as cr,statSync as Ge,unlinkSync as Me,utimesSync as no,writeFileSync as Gt}from"node:fs";function Yt(t){return We(je(),`${t}.lock`)}function so(t){let e=Yt(t);try{return Ut(je(),{recursive:!0,mode:448}),Ut(e),!0}catch{try{Date.now()-Ge(e).mtimeMs>ro&&cr(e)}catch{return!1}return!1}}function ao(t){try{no(Yt(t),new Date,new Date)}catch{return}}function oo(t){try{cr(Yt(t))}catch{return}}function je(){return We(w(),"spool")}function ht(t){return We(je(),`${t}.jsonl`)}function gt(t){return We(je(),`${t}.pending.jsonl`)}function ur(t){return We(je(),`${t}.dropped`)}function co(t){try{let e=ur(t);if(Pe(e)&&Ge(e).size>=io)return;Ht(e,".",{mode:384})}catch{return}}function dr(){let t=0;for(let e of["learn","telemetry"])try{t+=Ge(ur(e)).size}catch{continue}return t}function lr(t,e){if(He())try{Ut(je(),{recursive:!0,mode:448});let n=ht(t);if(Pe(n)&&Ge(n).size>=Kt){co(t);return}Ht(n,JSON.stringify(e)+`
8
- `,{mode:384}),to(n,384)}catch{return}}function or(t,e){Ht(t,Wt(e,"utf8"),{mode:384}),Gt(e,"",{mode:384});try{Me(e)}catch{return}}function uo(t){if(Ge(t).size<=Kt)return;let e=Wt(t,"utf8").split(`
9
- `).filter(s=>s.trim()),n=0,r=[];for(let s=e.length-1;s>=0;s--){let a=e[s]??"";if(n+=Buffer.byteLength(a,"utf8")+1,n>Kt)break;r.unshift(a)}Gt(t,r.length?r.join(`
7
+ ${n}`).digest("hex")}function Ha(t){let e=new URL(t);return`${e.pathname}${e.search}`}async function Xn(t,e,n,r){Qn();let s=Date.now(),a=n===void 0?"":JSON.stringify(n),o=`${r.baseUrl}${e}`,i=r.signingSecret?Ka(t,Ha(o),a,s,r.signingSecret):"0".repeat(64),c={"content-type":"application/json","x-tokmizer-fingerprint":r.fingerprint,"x-tokmizer-install-id":r.installId,"x-tokmizer-sig":i,"x-tokmizer-ts":String(s),"x-tokmizer-plugin-version":Mt,"x-tokmizer-accept-resp-path":"1"};r.bearer&&(c.authorization=`Bearer ${r.bearer}`);let u=r.timeoutMs??5e3,l=t!=="GET"&&t!=="DELETE",y={method:t,headers:c,signal:AbortSignal.timeout(u)};l&&(y.body=a);let k;try{k=await fetch(o,y)}catch(T){let D=T.name;throw D==="TimeoutError"||D==="AbortError"?new pt("timeout",`${t} ${e} timed out after ${u}ms`):new pt("network",`${t} ${e} failed: ${T.message}`)}return k!==null&&typeof k=="object"&&Ba.set(k,e.split("?")[0]),k}var lu,fu,Ba,pt,er=S(()=>{"use strict";jt();qn();ft();lu=300*1e3,fu=120*1e3,Ba=new WeakMap,pt=class extends Error{constructor(n,r,s){super(r);this.kind=n;this.status=s;this.name="TransportError"}kind;status}});import{existsSync as Wa,mkdirSync as hu,writeFileSync as gu}from"node:fs";import{join as Ga}from"node:path";function Ja(){return Ga(w(),Ya)}function tr(){return Wa(Ja())}var Ya,nr=S(()=>{"use strict";L();it();ft();jt();Ya="telemetry-notice-shown"});import{join as He}from"node:path";import{appendFileSync as Bt,chmodSync as qa,existsSync as Ie,mkdirSync as Ft,readFileSync as Kt,renameSync as Vt,rmdirSync as ar,statSync as We,unlinkSync as Pe,utimesSync as Qa,writeFileSync as Ht}from"node:fs";function Wt(t){return He(Me(),`${t}.lock`)}function eo(t){let e=Wt(t);try{return Ft(Me(),{recursive:!0,mode:448}),Ft(e),!0}catch{try{Date.now()-We(e).mtimeMs>Xa&&ar(e)}catch{return!1}return!1}}function to(t){try{Qa(Wt(t),new Date,new Date)}catch{return}}function no(t){try{ar(Wt(t))}catch{return}}function Me(){return He(w(),"spool")}function mt(t){return He(Me(),`${t}.jsonl`)}function ht(t){return He(Me(),`${t}.pending.jsonl`)}function or(t){return He(Me(),`${t}.dropped`)}function so(t){try{let e=or(t);if(Ie(e)&&We(e).size>=ro)return;Bt(e,".",{mode:384})}catch{return}}function ir(){let t=0;for(let e of["learn","telemetry"])try{t+=We(or(e)).size}catch{continue}return t}function cr(t,e){if(Ke())try{Ft(Me(),{recursive:!0,mode:448});let n=mt(t);if(Ie(n)&&We(n).size>=Ut){so(t);return}Bt(n,JSON.stringify(e)+`
8
+ `,{mode:384}),qa(n,384)}catch{return}}function rr(t,e){Bt(t,Kt(e,"utf8"),{mode:384}),Ht(e,"",{mode:384});try{Pe(e)}catch{return}}function ao(t){if(We(t).size<=Ut)return;let e=Kt(t,"utf8").split(`
9
+ `).filter(s=>s.trim()),n=0,r=[];for(let s=e.length-1;s>=0;s--){let a=e[s]??"";if(n+=Buffer.byteLength(a,"utf8")+1,n>Ut)break;r.unshift(a)}Ht(t,r.length?r.join(`
10
10
  `)+`
11
- `:"",{mode:384})}function lo(t){try{let e=gt(t),n=ht(t),r=`${n}.merging`;if(Pe(r)&&or(e,r),Pe(e))Pe(n)&&(Bt(n,r),or(e,r));else{if(!Pe(n))return[];Bt(n,e)}uo(e);let s=[];for(let a of Wt(e,"utf8").split(`
12
- `))if(a.trim())try{s.push(JSON.parse(a))}catch{continue}return s.length===0?(Me(e),[]):s}catch{return[]}}function fo(t){try{Me(gt(t))}catch{return}}function po(t,e){if(e.length===0){fo(t);return}let n=gt(t),r=`${n}.tmp`;Gt(r,e.map(s=>JSON.stringify(s)).join(`
11
+ `:"",{mode:384})}function oo(t){try{let e=ht(t),n=mt(t),r=`${n}.merging`;if(Ie(r)&&rr(e,r),Ie(e))Ie(n)&&(Vt(n,r),rr(e,r));else{if(!Ie(n))return[];Vt(n,e)}ao(e);let s=[];for(let a of Kt(e,"utf8").split(`
12
+ `))if(a.trim())try{s.push(JSON.parse(a))}catch{continue}return s.length===0?(Pe(e),[]):s}catch{return[]}}function io(t){try{Pe(ht(t))}catch{return}}function co(t,e){if(e.length===0){io(t);return}let n=ht(t),r=`${n}.tmp`;Ht(r,e.map(s=>JSON.stringify(s)).join(`
13
13
  `)+`
14
- `,{mode:384}),Bt(r,n)}async function fr(t,e,n={}){if(!He()||Vt.has(t)||!so(t))return"fail";Vt.add(t);try{if(!(await Ne()).telemetryOptIn)return ir(t),"empty";if(!sr())return"fail";let r=lo(t);if(r.length===0)return"empty";let s=await ft();if(!s)return"fail";let a=n.baseUrl??Wn(),o=await Qn();for(let i=0;i<r.length;i+=Ft){if(!(await Ne()).telemetryOptIn)return ir(t),"empty";ao(t);let c=await nr("POST",e,{events:r.slice(i,i+Ft),...n.consent?{consent:!0}:{}},{baseUrl:a,bearer:s.jwt,signingSecret:s.signingSecret,fingerprint:o.fingerprint,installId:o.installId});if(!c.ok)return c.status===401||c.status===403?"auth":"fail";po(t,r.slice(i+Ft))}return"ok"}catch{return"fail"}finally{Vt.delete(t),oo(t)}}function ir(t){try{Me(ht(t))}catch{}try{Me(`${ht(t)}.merging`)}catch{}try{Me(gt(t))}catch{return}}var Kt,Ft,ro,Vt,io,Jt=S(()=>{"use strict";Gn();L();Pt();Xn();rr();ct();pt();ar();Kt=512*1024,Ft=100,ro=12e4,Vt=new Set;io=1024*1024});var yr={};ke(yr,{commandName:()=>gr,flushTelemetry:()=>Ao,recordTelemetry:()=>Eo});function wo(t){if(!/[\\/]/.test(t))return t;let e=t.split(/[\\/]/).filter(r=>r.length>0).pop()??"",n=e.toLowerCase().endsWith(".exe")?e.slice(0,-4):e;return hr.has(n.toLowerCase())?n:""}function So(t,e,n){let r=0;for(;t==="git"&&r<n.length&&n[r].startsWith("-");)r+=xo.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return e.has(s)?`${t} ${s}`:t}function pr(t){let e=t.toLowerCase();return e.startsWith("git")||yo.has(e)}function gr(t){let e=t.trim().split(/\s+/).filter(c=>c.length>0),n=0;for(;n<e.length&&go.test(e[n]??"");)n+=1;let r=wo(e[n]??"");if(!r||!mo.test(r)||r.length>vo)return"";let s=ko.get(r.toLowerCase());if(s)return So(r.toLowerCase(),s,e.slice(n+1));if(pr(r)||_o.test(r)||Mt(r)!==r)return"";let a=e[n+1];return a&&pr(a)?"":(a&&mr.has(r.toLowerCase())&&ho.test(a)?`${r} ${a}`:r).slice(0,64)}function To(t){return bo.has((t.split(" ")[0]??"").toLowerCase())}async function Eo(t){if(!t.telemetryOptIn)return;let e=gr(t.cmd),n=e&&Mt(e)===e&&To(e)?e:"other",r=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";lr("telemetry",{cmd:n,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,...r?{sessionId:r}:{},...t.host?{host:t.host}:{}})}async function Ao(t){return fr("telemetry","/api/v1/telemetry",{baseUrl:t,consent:!0})}var mo,ho,go,yo,_o,vo,mr,hr,bo,ko,xo,_r=S(()=>{"use strict";Hn();Jt();mo=/^[a-z0-9][a-z0-9._-]*$/i,ho=/^[a-z][a-z-]+$/,go=/^[A-Za-z_][A-Za-z0-9_]*=/,yo=new Set(["gh","glab","gup","hub","gist"]),_o=/^(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,vo=24,mr=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"]),hr=new Set([...mr,"git","gh","node","python","python3","bash","sh","zsh","psql","mysql","sqlite3","java","ruby","perl","rg","fd","jq","make","gradle","mvn","vitest","jest","tsc","esbuild","vite","webpack","playwright","rails","rake"]),bo=new Set([...hr,"cd","cat","head","tail","ls","tree","find","grep","wc","nl","sort","cut","uniq","tr","diff","stat","file","du","df","ps","yq","pwd","which","echo","printf","seq","sed","awk","gawk","xargs","sleep","tar","zip","unzip","rsync","scp","ssh","curl","wget","dig","host","nslookup","ping","lsof","journalctl","iptables","ip6tables","open","md5","md5sum","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shasum","sudo","env","command","time","nodejs","bunx","pytest","mypy","dmypy","pyright","basedpyright","ruff","black","ty","gradlew","mvnw","mvnd","ninja","cmake","bazel","bazelisk","sbt","gcc","clang","gmake","swift","xcodebuild","pod","flutter","nx","turbo","next","eslint","prettier","biome","oxlint","golangci-lint","shellcheck","hadolint","yamllint","markdownlint","mdl","sqlfluff","rubocop","rspec","bundler","php","artisan","composer","phpunit","phpstan","pest","paratest","pint","mix","javap","jar","docker-compose","skopeo","oc","ecs","nomad","consul","packer","pulumi","tofu","ansible","ansible-playbook","vault","sops","vercel","netlify","wrangler","firebase","supabase","stripe","shopify","theme-check","redis-cli","liquibase","ollama","ast-grep","just","task","mise","trunk","pre-commit","jj","yadm","gt","quarto","act","jira","fail2ban-client","ctest","pio","platformio","reducer","restore","read-tool","grep-tool","glob-tool","bash-tool"]),ko=new Map([["git",new Set(["status","diff","log","show","blame","ls-files","rev-parse","branch","fetch","pull","push","commit","checkout","switch","merge","rebase","stash","tag","remote","add","reset","restore","clean","grep"])],["gh",new Set(["pr","issue","run","repo","api"])]]),xo=new Set(["-C","-c"])});function vr(t){return t?$o[t]??"anthropic":"anthropic"}var $o,br=S(()=>{"use strict";$o={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});var Fr={};ke(Fr,{OVERSIZED_SHELL_BYTES:()=>tn,QUOTA_TIERS:()=>Ye,clearStats:()=>Qo,countedSaving:()=>ti,coverageSummary:()=>si,formatTokens:()=>E,monthlyProjectionUsd:()=>ri,normalizeProject:()=>Mr,projectLabel:()=>Ei,quotaEstimate:()=>hi,readAgentDaily:()=>vi,readDaily:()=>di,readGain:()=>ci,readHistory:()=>wi,recordStat:()=>Xo,renderByRule:()=>pi,renderCsv:()=>bi,renderDaily:()=>yi,renderFallbacks:()=>mi,renderGain:()=>ui,renderGraph:()=>xi,renderHistory:()=>Ti,renderQuota:()=>gi,resolveSinceDays:()=>Zr,rotateStats:()=>Pr,statCmdLabel:()=>qo,statOutcome:()=>ei,withInstallAge:()=>ni});import{readFile as Er,rm as kr}from"node:fs/promises";import{appendFileSync as Ro,chmodSync as Co,mkdirSync as Oo,readFileSync as Ar,realpathSync as No,renameSync as $r,rmSync as Rr,statSync as Cr,writeFileSync as qt}from"node:fs";import{basename as Qt,dirname as Or,join as yt,resolve as Do,sep as Io}from"node:path";function _t(){return{n:0,nc:0,r:0,f:0,or:0,of:0,x:0,sn:0,sr:0,sf:0,mr:0,mf:0,rn:0,rb:0,tn:0,tr:0,tf:0,ox:0,t0:null,t1:null,cmds:{},prov:{},rl:{},fb:{}}}function Nr(t){let e=t.trim();if(!e)return null;try{let n=JSON.parse(e);return typeof n.t!="number"||!Number.isFinite(n.t)||n.t<0||n.t>864e10||typeof n.r!="number"||!Number.isSafeInteger(n.r)||n.r<0||typeof n.f!="number"||!Number.isSafeInteger(n.f)||n.f<0||n.r+n.f===0?null:{t:n.t,r:n.r,f:n.f,m:n.m===1,...typeof n.h=="string"?{h:n.h}:{},...typeof n.k=="string"?{k:n.k}:{},...typeof n.c=="string"&&n.c?{c:n.c}:{},...typeof n.p=="string"&&n.p?{p:n.p}:{},...typeof n.s=="string"&&n.s?{s:n.s}:{},...typeof n.o=="string"&&zo.has(n.o)?{o:n.o}:{}}}catch{return null}}function Lo(t,e){if(!e.c)return;let n=t.cmds[e.c]??{n:0,nc:0,r:0,f:0,sh:!1};n.n+=1,e.f<e.r&&(n.nc+=1,n.rr=(n.rr??0)+e.r,n.rf=(n.rf??0)+e.f),(e.k==="sh"||e.k==="restore")&&(n.sh=!0),e.h==="shell"&&e.k!=="restore"&&(n.tn=(n.tn??0)+1,n.tr=(n.tr??0)+e.r,n.tf=(n.tf??0)+e.f,e.f<e.r&&(n.tnc=(n.tnc??0)+1,n.trr=(n.trr??0)+e.r,n.trf=(n.trf??0)+e.f)),n.r+=e.r,n.f+=e.f,t.cmds[e.c]=n}function Fo(t){return t.s==="b"?`b:${(t.c??"").split(" ")[0]||"other"}`:t.s?.startsWith("u:")?t.s:t.o==="n"?"n":"?"}function Vo(t,e){let n=Fo(e),r=t.rl[n]??{n:0,nc:0,r:0,f:0};if(r.n+=1,r.r+=e.r,r.f+=e.f,e.f<e.r&&(r.nc+=1),t.rl[n]=r,e.f>=e.r&&e.o){let s=`${e.o} ${e.c??""}`,a=t.fb[s]??{n:0,r:0};a.n+=1,a.r+=e.r,t.fb[s]=a}}function Dr(t,e){if(e.m){t.mr+=e.r,t.mf+=e.f;return}if(t.t0=t.t0==null?e.t:Math.min(t.t0,e.t),t.t1=t.t1==null?e.t:Math.max(t.t1,e.t),e.k==="sh"&&e.r>tn){t.ox+=1;return}if(Lo(t,e),e.k==="restore"?(t.rn+=1,t.rb+=e.f):Vo(t,e),t.n+=1,t.or+=e.r,t.of+=e.f,e.f>e.r&&(t.x+=1),e.h==="shell"&&e.k!=="restore"&&(t.tn+=1,t.tr+=e.r,t.tf+=e.f),e.f<e.r){t.nc+=1,t.r+=e.r,t.f+=e.f,e.k==="sh"&&(t.sn+=1,t.sr+=e.r,t.sf+=e.f);let n=vr(e.h),r=t.prov[n]??{r:0,f:0};r.r+=e.r,r.f+=e.f,t.prov[n]=r}}function Uo(t,e){for(let n of["n","nc","r","f","or","of","x","sn","sr","sf","mr","mf","rn","rb","tn","tr","tf","ox"])t[n]+=e[n];e.t0!=null&&(t.t0=t.t0==null?e.t0:Math.min(t.t0,e.t0)),e.t1!=null&&(t.t1=t.t1==null?e.t1:Math.max(t.t1,e.t1));for(let[n,r]of Object.entries(e.cmds)){let s=t.cmds[n]??{n:0,nc:0,r:0,f:0,sh:!1};s.n+=r.n,s.nc+=r.nc,s.r+=r.r,s.f+=r.f,s.rr=(s.rr??0)+(r.rr??0),s.rf=(s.rf??0)+(r.rf??0),s.tn=(s.tn??0)+(r.tn??0),s.tr=(s.tr??0)+(r.tr??0),s.tf=(s.tf??0)+(r.tf??0),s.trr=(s.trr??0)+(r.trr??0),s.trf=(s.trf??0)+(r.trf??0),s.tnc=(s.tnc??0)+(r.tnc??0),s.sh=s.sh||r.sh,t.cmds[n]=s}for(let[n,r]of Object.entries(e.prov)){let s=t.prov[n]??{r:0,f:0};s.r+=r.r,s.f+=r.f,t.prov[n]=s}for(let[n,r]of Object.entries(e.rl??{})){let s=t.rl[n]??{n:0,nc:0,r:0,f:0};s.n+=r.n,s.nc+=r.nc,s.r+=r.r,s.f+=r.f,t.rl[n]=s}for(let[n,r]of Object.entries(e.fb??{})){let s=t.fb[n]??{n:0,r:0};s.n+=r.n,s.r+=r.r,t.fb[n]=s}}function ne(t){let e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function nn(t){return yt(Or(t),Mo)}function Ir(t){let e=nn(t),n;try{n=Ar(e,"utf8")}catch{return{}}try{let r=JSON.parse(n);if(!r.days||typeof r.days!="object")throw new Error("invalid ledger");let s={};for(let[a,o]of Object.entries(r.days))!/^\d{4}-\d{2}-\d{2}$/.test(a)||!o||typeof o!="object"||(s[a]={..._t(),...o});return s}catch{try{$r(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function wr(t,e){let n=`${t}.tmp-${process.pid}`;qt(n,e,{mode:384}),$r(n,t)}function Bo(t){try{return qt(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-Cr(t).mtimeMs<jo?!1:(Rr(t,{force:!0}),qt(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Pr(t,e=xr,n=xr/2){try{if(Cr(t).size<=e)return}catch{return}let r=`${t}.lock`;if(Bo(r))try{let s=Ar(t,"utf8").split(`
15
- `).filter(u=>u.trim()!==""),a=s.length,o=0;for(;a>0;){let u=Buffer.byteLength(s[a-1])+1;if(o+u>n)break;o+=u,a-=1}let i=Ir(t);for(let u of s.slice(0,a)){let l=Nr(u);if(!l)continue;let y=ne(l.t),k=i[y]??_t();Dr(k,l),i[y]=k}let c=s.slice(a);wr(t,c.length?`${c.join(`
14
+ `,{mode:384}),Vt(r,n)}async function ur(t,e,n={}){if(!Ke()||Lt.has(t)||!eo(t))return"fail";Lt.add(t);try{if(!(await Ne()).telemetryOptIn)return sr(t),"empty";if(!tr())return"fail";let r=oo(t);if(r.length===0)return"empty";let s=await lt();if(!s)return"fail";let a=n.baseUrl??Kn(),o=await Yn();for(let i=0;i<r.length;i+=Zt){if(!(await Ne()).telemetryOptIn)return sr(t),"empty";to(t);let c=await Xn("POST",e,{events:r.slice(i,i+Zt),...n.consent?{consent:!0}:{}},{baseUrl:a,bearer:s.jwt,signingSecret:s.signingSecret,fingerprint:o.fingerprint,installId:o.installId});if(!c.ok)return c.status===401||c.status===403?"auth":"fail";co(t,r.slice(i+Zt))}return"ok"}catch{return"fail"}finally{Lt.delete(t),no(t)}}function sr(t){try{Pe(mt(t))}catch{}try{Pe(`${mt(t)}.merging`)}catch{}try{Pe(ht(t))}catch{return}}var Ut,Zt,Xa,Lt,ro,Gt=S(()=>{"use strict";Hn();L();It();Jn();er();it();ft();nr();Ut=512*1024,Zt=100,Xa=12e4,Lt=new Set;ro=1024*1024});var mr={};ke(mr,{commandName:()=>pr,flushTelemetry:()=>wo,recordTelemetry:()=>xo});function vo(t){if(!/[\\/]/.test(t))return t;let e=t.split(/[\\/]/).filter(r=>r.length>0).pop()??"",n=e.toLowerCase().endsWith(".exe")?e.slice(0,-4):e;return fr.has(n.toLowerCase())?n:""}function bo(t,e,n){let r=0;for(;t==="git"&&r<n.length&&n[r].startsWith("-");)r+=_o.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return e.has(s)?`${t} ${s}`:t}function dr(t){let e=t.toLowerCase();return e.startsWith("git")||po.has(e)}function pr(t){let e=t.trim().split(/\s+/).filter(c=>c.length>0),n=0;for(;n<e.length&&fo.test(e[n]??"");)n+=1;let r=vo(e[n]??"");if(!r||!uo.test(r)||r.length>ho)return"";let s=yo.get(r.toLowerCase());if(s)return bo(r.toLowerCase(),s,e.slice(n+1));if(dr(r)||mo.test(r)||Pt(r)!==r)return"";let a=e[n+1];return a&&dr(a)?"":(a&&lr.has(r.toLowerCase())&&lo.test(a)?`${r} ${a}`:r).slice(0,64)}function ko(t){return go.has((t.split(" ")[0]??"").toLowerCase())}async function xo(t){if(!t.telemetryOptIn)return;let e=pr(t.cmd),n=e&&Pt(e)===e&&ko(e)?e:"other",r=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";cr("telemetry",{cmd:n,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,...r?{sessionId:r}:{},...t.host?{host:t.host}:{}})}async function wo(t){return ur("telemetry","/api/v1/telemetry",{baseUrl:t,consent:!0})}var uo,lo,fo,po,mo,ho,lr,fr,go,yo,_o,hr=S(()=>{"use strict";Bn();Gt();uo=/^[a-z0-9][a-z0-9._-]*$/i,lo=/^[a-z][a-z-]+$/,fo=/^[A-Za-z_][A-Za-z0-9_]*=/,po=new Set(["gh","glab","gup","hub","gist"]),mo=/^(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,ho=24,lr=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"]),fr=new Set([...lr,"git","gh","node","python","python3","bash","sh","zsh","psql","mysql","sqlite3","java","ruby","perl","rg","fd","jq","make","gradle","mvn","vitest","jest","tsc","esbuild","vite","webpack","playwright","rails","rake"]),go=new Set([...fr,"cd","cat","head","tail","ls","tree","find","grep","wc","nl","sort","cut","uniq","tr","diff","stat","file","du","df","ps","yq","pwd","which","echo","printf","seq","sed","awk","gawk","xargs","sleep","tar","zip","unzip","rsync","scp","ssh","curl","wget","dig","host","nslookup","ping","lsof","journalctl","iptables","ip6tables","open","md5","md5sum","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shasum","sudo","env","command","time","nodejs","bunx","pytest","mypy","dmypy","pyright","basedpyright","ruff","black","ty","gradlew","mvnw","mvnd","ninja","cmake","bazel","bazelisk","sbt","gcc","clang","gmake","swift","xcodebuild","pod","flutter","nx","turbo","next","eslint","prettier","biome","oxlint","golangci-lint","shellcheck","hadolint","yamllint","markdownlint","mdl","sqlfluff","rubocop","rspec","bundler","php","artisan","composer","phpunit","phpstan","pest","paratest","pint","mix","javap","jar","docker-compose","skopeo","oc","ecs","nomad","consul","packer","pulumi","tofu","ansible","ansible-playbook","vault","sops","vercel","netlify","wrangler","firebase","supabase","stripe","shopify","theme-check","redis-cli","liquibase","ollama","ast-grep","just","task","mise","trunk","pre-commit","jj","yadm","gt","quarto","act","jira","fail2ban-client","ctest","pio","platformio","reducer","restore","read-tool","grep-tool","glob-tool","bash-tool"]),yo=new Map([["git",new Set(["status","diff","log","show","blame","ls-files","rev-parse","branch","fetch","pull","push","commit","checkout","switch","merge","rebase","stash","tag","remote","add","reset","restore","clean","grep"])],["gh",new Set(["pr","issue","run","repo","api"])]]),_o=new Set(["-C","-c"])});function gr(t){return t?So[t]??"anthropic":"anthropic"}var So,yr=S(()=>{"use strict";So={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});var zr={};ke(zr,{OVERSIZED_SHELL_BYTES:()=>Xt,QUOTA_TIERS:()=>Ge,clearStats:()=>Go,countedSaving:()=>qo,coverageSummary:()=>ei,formatTokens:()=>E,monthlyProjectionUsd:()=>Xo,normalizeProject:()=>Dr,projectLabel:()=>xi,quotaEstimate:()=>li,readAgentDaily:()=>hi,readDaily:()=>oi,readGain:()=>si,readHistory:()=>vi,recordStat:()=>Yo,renderByRule:()=>ui,renderCsv:()=>gi,renderDaily:()=>pi,renderFallbacks:()=>di,renderGain:()=>ai,renderGraph:()=>_i,renderHistory:()=>ki,renderQuota:()=>fi,resolveSinceDays:()=>Mr,rotateStats:()=>Nr,statCmdLabel:()=>Wo,statOutcome:()=>Jo,withInstallAge:()=>Qo});import{readFile as wr,rm as _r}from"node:fs/promises";import{appendFileSync as To,chmodSync as Eo,mkdirSync as Ao,readFileSync as Sr,realpathSync as $o,renameSync as Tr,rmSync as Er,statSync as Ar,writeFileSync as Yt}from"node:fs";import{basename as Jt,dirname as $r,join as gt,resolve as Ro,sep as Co}from"node:path";function yt(){return{n:0,nc:0,r:0,f:0,or:0,of:0,x:0,sn:0,sr:0,sf:0,mr:0,mf:0,rn:0,rb:0,tn:0,tr:0,tf:0,ox:0,t0:null,t1:null,cmds:{},prov:{},rl:{},fb:{}}}function Rr(t){let e=t.trim();if(!e)return null;try{let n=JSON.parse(e);return typeof n.t!="number"||!Number.isFinite(n.t)||n.t<0||n.t>864e10||typeof n.r!="number"||!Number.isSafeInteger(n.r)||n.r<0||typeof n.f!="number"||!Number.isSafeInteger(n.f)||n.f<0||n.r+n.f===0?null:{t:n.t,r:n.r,f:n.f,m:n.m===1,...typeof n.h=="string"?{h:n.h}:{},...typeof n.k=="string"?{k:n.k}:{},...typeof n.c=="string"&&n.c?{c:n.c}:{},...typeof n.p=="string"&&n.p?{p:n.p}:{},...typeof n.s=="string"&&n.s?{s:n.s}:{},...typeof n.o=="string"&&Io.has(n.o)?{o:n.o}:{}}}catch{return null}}function Mo(t,e){if(!e.c)return;let n=t.cmds[e.c]??{n:0,nc:0,r:0,f:0,sh:!1};n.n+=1,e.f<e.r&&(n.nc+=1,n.rr=(n.rr??0)+e.r,n.rf=(n.rf??0)+e.f),(e.k==="sh"||e.k==="restore")&&(n.sh=!0),e.h==="shell"&&e.k!=="restore"&&(n.tn=(n.tn??0)+1,n.tr=(n.tr??0)+e.r,n.tf=(n.tf??0)+e.f,e.f<e.r&&(n.tnc=(n.tnc??0)+1,n.trr=(n.trr??0)+e.r,n.trf=(n.trf??0)+e.f)),n.r+=e.r,n.f+=e.f,t.cmds[e.c]=n}function jo(t){return t.s==="b"?`b:${(t.c??"").split(" ")[0]||"other"}`:t.s?.startsWith("u:")?t.s:t.o==="n"?"n":"?"}function zo(t,e){let n=jo(e),r=t.rl[n]??{n:0,nc:0,r:0,f:0};if(r.n+=1,r.r+=e.r,r.f+=e.f,e.f<e.r&&(r.nc+=1),t.rl[n]=r,e.f>=e.r&&e.o){let s=`${e.o} ${e.c??""}`,a=t.fb[s]??{n:0,r:0};a.n+=1,a.r+=e.r,t.fb[s]=a}}function Cr(t,e){if(e.m){t.mr+=e.r,t.mf+=e.f;return}if(t.t0=t.t0==null?e.t:Math.min(t.t0,e.t),t.t1=t.t1==null?e.t:Math.max(t.t1,e.t),e.k==="sh"&&e.r>Xt){t.ox+=1;return}if(Mo(t,e),e.k==="restore"?(t.rn+=1,t.rb+=e.f):zo(t,e),t.n+=1,t.or+=e.r,t.of+=e.f,e.f>e.r&&(t.x+=1),e.h==="shell"&&e.k!=="restore"&&(t.tn+=1,t.tr+=e.r,t.tf+=e.f),e.f<e.r){t.nc+=1,t.r+=e.r,t.f+=e.f,e.k==="sh"&&(t.sn+=1,t.sr+=e.r,t.sf+=e.f);let n=gr(e.h),r=t.prov[n]??{r:0,f:0};r.r+=e.r,r.f+=e.f,t.prov[n]=r}}function Zo(t,e){for(let n of["n","nc","r","f","or","of","x","sn","sr","sf","mr","mf","rn","rb","tn","tr","tf","ox"])t[n]+=e[n];e.t0!=null&&(t.t0=t.t0==null?e.t0:Math.min(t.t0,e.t0)),e.t1!=null&&(t.t1=t.t1==null?e.t1:Math.max(t.t1,e.t1));for(let[n,r]of Object.entries(e.cmds)){let s=t.cmds[n]??{n:0,nc:0,r:0,f:0,sh:!1};s.n+=r.n,s.nc+=r.nc,s.r+=r.r,s.f+=r.f,s.rr=(s.rr??0)+(r.rr??0),s.rf=(s.rf??0)+(r.rf??0),s.tn=(s.tn??0)+(r.tn??0),s.tr=(s.tr??0)+(r.tr??0),s.tf=(s.tf??0)+(r.tf??0),s.trr=(s.trr??0)+(r.trr??0),s.trf=(s.trf??0)+(r.trf??0),s.tnc=(s.tnc??0)+(r.tnc??0),s.sh=s.sh||r.sh,t.cmds[n]=s}for(let[n,r]of Object.entries(e.prov)){let s=t.prov[n]??{r:0,f:0};s.r+=r.r,s.f+=r.f,t.prov[n]=s}for(let[n,r]of Object.entries(e.rl??{})){let s=t.rl[n]??{n:0,nc:0,r:0,f:0};s.n+=r.n,s.nc+=r.nc,s.r+=r.r,s.f+=r.f,t.rl[n]=s}for(let[n,r]of Object.entries(e.fb??{})){let s=t.fb[n]??{n:0,r:0};s.n+=r.n,s.r+=r.r,t.fb[n]=s}}function ne(t){let e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function en(t){return gt($r(t),No)}function Or(t){let e=en(t),n;try{n=Sr(e,"utf8")}catch{return{}}try{let r=JSON.parse(n);if(!r.days||typeof r.days!="object")throw new Error("invalid ledger");let s={};for(let[a,o]of Object.entries(r.days))!/^\d{4}-\d{2}-\d{2}$/.test(a)||!o||typeof o!="object"||(s[a]={...yt(),...o});return s}catch{try{Tr(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function br(t,e){let n=`${t}.tmp-${process.pid}`;Yt(n,e,{mode:384}),Tr(n,t)}function Lo(t){try{return Yt(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-Ar(t).mtimeMs<Do?!1:(Er(t,{force:!0}),Yt(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Nr(t,e=vr,n=vr/2){try{if(Ar(t).size<=e)return}catch{return}let r=`${t}.lock`;if(Lo(r))try{let s=Sr(t,"utf8").split(`
15
+ `).filter(u=>u.trim()!==""),a=s.length,o=0;for(;a>0;){let u=Buffer.byteLength(s[a-1])+1;if(o+u>n)break;o+=u,a-=1}let i=Or(t);for(let u of s.slice(0,a)){let l=Rr(u);if(!l)continue;let y=ne(l.t),k=i[y]??yt();Cr(k,l),i[y]=k}let c=s.slice(a);br(t,c.length?`${c.join(`
16
16
  `)}
17
- `:""),wr(nn(t),JSON.stringify({v:1,days:i}))}catch{return}finally{Rr(r,{force:!0})}}function Mr(t){let e=Do(t),n=e,r="";for(;;){try{return yt(No(n),r)}catch{}let s=Or(n);if(s===n)return e;r=r?yt(Qt(n),r):Qt(n),n=s}}function Ko(t,e){return t.p!=null&&(t.p===e||t.p.startsWith(e+Io))}async function jr(t,e,n){let r="";try{r=await Er(t,"utf8")}catch{}let s=[];for(let a of r.split(`
18
- `)){let o=Nr(a);!o||o.t<e||n!=null&&!Ko(o,n)||s.push(o)}return s}async function rn(t,e,n){let r=e>0?ne(e):"",s=new Map;if(n==null)for(let[a,o]of Object.entries(Ir(t)))a>=r&&s.set(a,o);for(let a of await jr(t,e,n)){let o=ne(a.t),i=s.get(o)??_t();Dr(i,a),s.set(o,i)}return s}function Sr(t){return t.length===0||t[0]==="cd"||t.every(e=>zr.test(e))}function Jo(t){let e=[],n="",r=!1,s=null,a=()=>{r&&e.push(n),n="",r=!1};for(let o of t){if(s){o===s?s=null:n+=o;continue}if(o==="'"||o==='"'){s=o,r=!0;continue}if(o===" "||o===" "){a();continue}if(`|;&<>
19
- `.includes(o)){if(a(),Sr(e)){e=[];continue}return e}n+=o,r=!0}return a(),Sr(e)?[]:e}function qo(t){let e=Jo(t).map(i=>i.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<e.length;){let i=e[n];if(zr.test(i)){n+=1;continue}if(Ho.has(i)){for(n+=1;n<e.length;){let c=e[n];if(c.startsWith("-")){n+=Wo.has(c)?2:1;continue}if(/^\d+(?:\.\d+)?[smhd]?$/.test(c)){n+=1;continue}break}continue}break}if(n>=e.length)return"";let r=e[n],s=r.includes("/")?r.slice(r.lastIndexOf("/")+1):r,a=e[n+1];return(a&&!a.startsWith("-")&&Go.test(a)&&Yo.has(s.toLowerCase())?`${s} ${a}`:s).slice(0,24)}function ze(){return yt(w(),Po)}async function Qo(t=ze()){try{let n=(await Er(t,"utf8")).split(`
20
- `).filter(r=>r.trim()!=="").length;return await kr(t,{force:!0}),await kr(nn(t),{force:!0}),n}catch{return 0}}function Xo(t,e,n=ze(),r=!1,s,a,o,i,c={}){if(!Number.isSafeInteger(t)||!Number.isSafeInteger(e)||t<0||e<0||t+e===0)return;let u=s?`,"h":${JSON.stringify(s)}`:"",l=a?`,"k":${JSON.stringify(a)}`:"",y=o?`,"c":${JSON.stringify(o.slice(0,24))}`:"",k=i?Mr(i):"",T=k&&k.length<=Zo?`,"p":${JSON.stringify(k)}`:"",D=c.s?`,"s":${JSON.stringify(c.s.slice(0,66))}`:"",O=c.o?`,"o":${JSON.stringify(c.o)}`:"",H=`{"t":${Math.floor(Date.now()/1e3)},"r":${t},"f":${e}${r?',"m":1':""}${u}${l}${y}${T}${D}${O}}
21
- `;try{Oo(w(),{recursive:!0,mode:448}),Ro(n,H,{mode:384}),Co(n,384),Pr(n)}catch{return}}function ei(t){let e=t.filterId==null?void 0:t.filterId.startsWith("user/")?`u:${t.filterId.slice(5)}`:"b",n=t.filteredBytes<t.rawBytes?void 0:t.filterId==null?"n":t.debugBypass?"e":"g";return{...e?{s:e}:{},...n?{o:n}:{}}}function ti(t,e,n){let r=n!=null?Math.min(t,n):t,s=n!=null?Math.min(e,n):e;return{raw:r,filtered:s}}function Zr(t,e,n){return typeof t=="number"&&t>0?Math.max(1,Math.ceil((e-t)/86400)):Math.max(1,n)}function ni(t,e,n){return{...t,sinceDays:Zr(e,n,t.sinceDays)}}function ri(t,e,n){return t<=0||e<=0||n<=0?0:t/e*30/1e6*n}function x(t){return Math.ceil(t/4)}function si(t){if(!t.count)return null;let e=Math.round(t.compressedCount/t.count*100),n=(t.byCommand??[]).filter(s=>!s.native&&s.compressedCount===0).sort((s,a)=>a.count-s.count).slice(0,3).map(s=>s.cmd),r=n.length?` \xB7 top unchanged: ${n.join(", ")}`:"";return`${e}% of recorded outputs reduced (${t.compressedCount}/${t.count})${r}`}function ai(t){let e=Object.values(t.rl).reduce((s,a)=>s+a.n,0),n=t.n-t.rn-e,r=n>0?{...t.rl,"?":{...t.rl["?"]??{n:0,nc:0,r:0,f:0},n:(t.rl["?"]?.n??0)+n}}:t.rl;return Object.entries(r).map(([s,a])=>{let o=x(a.r),i=o-x(a.f),c=s.startsWith("b:")?"built-in":s.startsWith("u:")?"user":s==="n"?"none":"unattributed";return{rule:c==="built-in"||c==="user"?s.slice(2):c,kind:c,count:a.n,compressedCount:a.nc,rawTokens:o,savedTokens:i,avgPct:o?Math.round(i/o*100):0}}).sort((s,a)=>a.savedTokens-s.savedTokens||a.count-s.count)}function ii(t){return Object.entries(t.fb).map(([e,n])=>{let[r,s]=e.split(" ");return{cmd:s||"other",reason:oi[r]??"no-rule",count:n.n,tokens:x(n.r)}}).sort((e,n)=>n.tokens-e.tokens||n.count-e.count)}async function ci(t=ze(),e=0,n){let r=_t();for(let A of(await rn(t,e,n)).values())Uo(r,A);let s=x(r.r),a=x(r.f),o=Math.max(0,s-a),i=s?Math.round(o/s*100):0,c=Math.floor(Date.now()/1e3),u=r.t0!=null?Math.max(1,Math.ceil((c-r.t0)/86400)):1,l=Math.max(0,x(r.mr)-x(r.mf)),y={};for(let[A,N]of Object.entries(r.prov))y[A]=Math.max(0,x(N.r)-x(N.f));let k=Object.entries(r.cmds).filter(([,A])=>A.n-(A.tn??0)>0).map(([A,N])=>{let wt=x(N.r-(N.tr??0)),on=wt-x(N.f-(N.tf??0)),St=x(N.rr??0),Ur=St?Math.round((St-x(N.rf??0))/St*100):0;return{cmd:A,count:N.n-(N.tn??0),compressedCount:N.nc,savedTokens:on,avgPct:wt?Math.round(on/wt*100):0,reducedPct:Ur,native:!N.sh}}).sort((A,N)=>N.savedTokens-A.savedTokens).slice(0,10),T=x(r.sr),D=T?Math.round((T-x(r.sf))/T*100):0,O=0,H=0,kt=0;for(let A of Object.values(r.cmds))O+=(A.rr??0)-(A.trr??0),H+=(A.rf??0)-(A.trf??0),kt+=A.nc-(A.tnc??0);let qe=x(r.or),xt=x(r.of);return{count:r.n,compressedCount:r.nc,rawTokens:s,filteredTokens:a,savedTokens:o,modeledSavedTokens:l,savedPct:i,sinceDays:u,savedByProvider:y,shellCompressedCount:r.sn,shellSavedPct:D,byCommand:k,observed:{count:r.n,rawTokens:qe,filteredTokens:xt,savedTokens:qe-xt,savedPct:r.or?Math.round((r.or-r.of)/r.or*1e4)/100:null,expandedCount:r.x},shortened:{count:kt,rawTokens:x(O),filteredTokens:x(H),savedPct:O>0?Math.round((O-H)/O*1e3)/10:null},allCommands:{count:r.n,rawTokens:qe,savedTokens:qe-xt,savedPct:r.or?Math.round((r.or-r.of)/r.or*1e4)/100:null},shortenedOnly:{count:kt,rawTokens:x(O),savedTokens:x(O)-x(H),savedPct:O>0?Math.round((O-H)/O*1e3)/10:null},droppedEvents:dr(),agent:{count:r.n-r.tn,rawTokens:x(r.or-r.tr),filteredTokens:x(r.of-r.tf),savedPct:r.or-r.tr?Math.round((r.or-r.tr-(r.of-r.tf))/(r.or-r.tr)*1e4)/100:null},terminal:{count:r.tn,rawTokens:x(r.tr),savedTokens:x(r.tr)-x(r.tf)},restoration:{count:r.rn,tokens:x(r.rb)},byRule:ai(r),fallbacks:ii(r),oversizedExcluded:r.ox,window:{firstAt:r.t0,lastAt:r.t1},measurement:{scope:"tool-output",legacyScope:"reduced-outputs",tokenMethod:"bytes/4",tokenCounts:"estimated",billing:"not-measured"}}}function E(t){return t<0?`-${E(-t)}`:t>=1e6?(t/1e6).toFixed(1)+"M":t>=1e3?(t/1e3).toFixed(1)+"K":String(t)}function Lr(t){return t<0?`-${Lr(-t)}`:t>0&&t<.01?"<$0.01":`$${t.toFixed(2)}`}function R(t){return String(t).replace(/\B(?=(\d{3})+(?!\d))/g,",")}function Je(t,e){let n="\u2588".repeat(t);return e?`${vt}${n}${bt}`:n}function ui(t,e){if(t.count===0&&!t.oversizedExcluded)return` No data yet. Run a few commands to measure your output savings.
22
- Watch this session live: tkr session`;let n=t.agent??{count:t.count,rawTokens:t.observed?.rawTokens??t.rawTokens,filteredTokens:t.observed?.filteredTokens??t.filteredTokens,savedPct:t.observed?.savedPct??t.savedPct},r=n.rawTokens-n.filteredTokens,s=n.rawTokens?Math.round(r/n.rawTokens*1e3)/10:0,a=k=>new Date(k*1e3).toISOString().slice(0,10),o=t.window?.firstAt!=null?` (since ${a(t.window.firstAt)})`:"",i=k=>` ${k.padEnd(16)}`,c=Math.max(0,Math.min(24,Math.round(Math.max(0,s)/100*24))),u=Je(c,e.color)+"\u2591".repeat(24-c),l=Lr(r/1e6*e.pricePerMtok),y=t.terminal?.count??0;return[` Tokmizer savings \xB7 ${e.subtitle??"all time"}${o}`," "+"\u2550".repeat(60),"",`${i("Commands")}${R(n.count)} \xB7 ${R(t.compressedCount)} reduced`,`${i("Tokens in")}${E(n.rawTokens)}`,`${i("Tokens out")}${E(n.filteredTokens)}`,`${i(r>=0?"Tokens saved":"Tokens added")}${E(Math.abs(r))} (${Math.abs(s)} % of all commands)`,...t.shortened?.savedPct!=null&&t.shortened.count>0?[`${i("Shortened only")}\u2212${t.shortened.savedPct} % on the ${R(t.shortened.count)} output${t.shortened.count===1?"":"s"} Tokmizer shortened, not the overall rate`]:[],`${i("Efficiency")}${u} ${Math.max(0,s)} %`,...e.periods?.length?["",...e.periods.map(k=>`${i(k.label)}${an(k.savedTokens)} \xB7 ${R(k.count)} commands`)]:[],`${i("API value")}${l} at $${e.pricePerMtok.toFixed(2)}/M input tokens`,...t.restoration?.count?[`${i("Restored")}${E(t.restoration.tokens)} tokens, deducted \xB7 ${R(t.restoration.count)} restore${t.restoration.count===1?"":"s"}`]:[],...e.restoreCache?.entries?[`${i("Restore cache")}${R(e.restoreCache.entries)} entr${e.restoreCache.entries===1?"y":"ies"} \xB7 ${fi(e.restoreCache.bytes)} \xB7 kept ${e.restoreCache.kept}`]:[],...t.modeledSavedTokens>0?[`${i("Reducer (est.)")}${E(t.modeledSavedTokens)} tokens, not included`]:[],...li(t.byCommand,e.color),""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",...t.droppedEvents?[` ${R(t.droppedEvents)} usage event${t.droppedEvents===1?" was":"s were"} not uploaded because the queue was full.`]:[],...y?[` ${R(y)} terminal commands with no agent are not counted.`]:[],...t.oversizedExcluded?[` ${R(t.oversizedExcluded)} Bash outputs over ${R(tn)} characters are not counted: Claude Code shows at most that much.`]:[],""].join(`
23
- `)}async function di(t=ze(),e=0,n){return[...(await rn(t,e,n)).entries()].filter(([,r])=>r.n>0).sort(([r],[s])=>r<s?-1:r>s?1:0).map(([r,s])=>({day:r,count:s.n,savedTokens:x(s.or)-x(s.of)}))}function li(t,e){let n=(t??[]).filter(o=>o.savedTokens>0).slice(0,10);if(n.length===0)return[];let r=n[0].savedTokens,s=" "+"\u2500".repeat(60),a=[""," By command",s,` ${" #".padEnd(4)}${"Command".padEnd(20)}${"Runs".padStart(7)}${"Saved".padStart(9)}${"Avg%".padStart(7)} Impact`,s];return n.forEach((o,i)=>{let c=Math.max(1,Math.round(o.savedTokens/r*10)),u=Je(c,e)+"\u2591".repeat(10-c),l=(o.native?`${o.cmd} (tool)`:o.cmd).slice(0,19);a.push(` ${(String(i+1)+".").padStart(3)} ${l.padEnd(20)}${R(o.count).padStart(7)}${E(o.savedTokens).padStart(9)}${(String(o.avgPct)+" %").padStart(7)} ${u}`)}),a.push(s),a}function fi(t){return t>=1024*1024?`${(t/(1024*1024)).toFixed(1)} MB`:`${Math.max(1,Math.round(t/1024))} KB`}function sn(t,e){return[` ${t} \xB7 ${e??"all time"}`," "+"\u2550".repeat(60),""]}function pi(t,e){let n=t.byRule??[],r=n.filter(i=>i.kind==="built-in"||i.kind==="user").slice(0,15),s=n.find(i=>i.kind==="none"),a=n.find(i=>i.kind==="unattributed"),o=sn("Tokmizer savings by rule",e.subtitle);if(r.length===0&&!s)o.push(" No run with rule details in this scope yet.");else{let i=" "+"\u2500".repeat(60),c=Math.max(1,...r.map(u=>u.savedTokens));o.push(` ${" #".padEnd(4)}${"Rule".padEnd(26)}${"Runs".padStart(6)}${"Saved".padStart(8)}${"Avg%".padStart(7)} Impact`,i),r.forEach((u,l)=>{let y=u.savedTokens>0?Math.max(1,Math.round(u.savedTokens/c*10)):0,k=`${u.kind==="user"?"your filter":"built-in"} \xB7 ${u.rule}`.slice(0,25);o.push(` ${(String(l+1)+".").padStart(3)} ${k.padEnd(26)}${R(u.count).padStart(6)}${E(u.savedTokens).padStart(8)}${(String(u.avgPct)+" %").padStart(7)} ${Je(y,e.color)}${"\u2591".repeat(10-y)}`)}),o.push(i),s&&o.push(` No rule matched: ${R(s.count)} run${s.count===1?"":"s"}, ${E(s.rawTokens)} tokens left unchanged (tkr gain --failures).`),o.push(" Built-in rules are grouped by command.")}return a?.count&&o.push(` ${R(a.count)} older run${a.count===1?"":"s"} recorded before rule tracking are not attributed.`),o.push(""),o.join(`
24
- `)}function mi(t,e){let n=(t.fallbacks??[]).slice(0,15),r=(t.byRule??[]).find(a=>a.kind==="unattributed"),s=sn("Commands left unchanged",e.subtitle);if(n.length===0)s.push(" No command was left unchanged in this scope.");else{let a=" "+"\u2500".repeat(60);s.push(` ${" #".padEnd(4)}${"Command".padEnd(22)}${"Runs".padStart(6)}${"Tokens".padStart(9)} Reason`,a),n.forEach((o,i)=>{s.push(` ${(String(i+1)+".").padStart(3)} ${o.cmd.slice(0,21).padEnd(22)}${R(o.count).padStart(6)}${E(o.tokens).padStart(9)} ${Tr[o.reason].short}`)}),s.push(a);for(let o of["no-rule","no-gain","failed-run"])n.some(i=>i.reason===o)&&s.push(` ${Tr[o].note}`)}return r?.count&&s.push(` ${R(r.count)} older run${r.count===1?"":"s"} recorded before this report existed have no details.`),s.push(""),s.join(`
25
- `)}function hi(t,e){let n=Math.max(0,t.agent?t.agent.rawTokens-t.agent.filteredTokens:t.observed?.savedTokens??t.savedTokens),r=Math.max(1,t.sinceDays),s=Math.round(n/r*30),a=Xt*en*Ye[e].multiplier;return{tier:e,plan:Ye[e].plan,savedTokens:n,days:r,monthlySavedTokens:s,monthlyBudgetTokens:a,pct:Math.round(s/a*1e3)/10,basis:"estimate",formula:`savedTokens / days * 30 / (${Xt} tokens per 5-hour window * ${en} windows * ${Ye[e].multiplier})`}}function gi(t,e){let n=s=>` ${s.padEnd(16)}`,r=Math.max(0,Math.min(24,Math.round(Math.min(100,t.pct)/100*24)));return[...sn("Tokmizer quota estimate",e.subtitle),`${n("Plan (assumed)")}${t.plan}`,`${n("Tokens saved")}${E(t.savedTokens)} over ${t.days} day${t.days===1?"":"s"}`,`${n("Per month")}${E(t.monthlySavedTokens)}${t.days<30?" (projected)":""}`,`${n("Plan budget")}${E(t.monthlyBudgetTokens)} per month (assumed)`,`${n("Quota kept")}${Je(r,e.color)}${"\u2591".repeat(24-r)} ${t.pct} %`,""," Estimate, not a plan limit. Formula: tokens saved \xF7 days \xD7 30",` \xF7 (${E(Xt)} tokens per 5-hour window \xD7 ${en} windows \xD7 ${Ye[t.tier].multiplier}).`," Anthropic does not publish plan limits in tokens and applies them per"," rolling 5-hour window. Each saved token is counted once.",""].join(`
26
- `)}function an(t){return t<0?`${E(-t)} added`:`${E(t)} saved`}function yi(t,e){if(t.length===0)return"";let n=(u,l,y)=>` ${u.padEnd(11)}${R(l).padStart(4)}${(y<0?`${E(-y)} added`:E(y)).padStart(13)}`,r=" "+"Day".padEnd(11)+"Cmds".padStart(4)+"Saved".padStart(13),s=" "+"\u2500".repeat(31),a=t.map(u=>n(`${u.day.slice(8,10)}/${u.day.slice(5,7)}`,u.count,u.savedTokens)),o=t.reduce((u,l)=>u+l.count,0),i=t.reduce((u,l)=>u+l.savedTokens,0),c=n("Total",o,i);return[r,s,...a,s,e.color?`${vt}${c}${bt}`:c,""].join(`
27
- `)}function _i(t,e){let n=x(e.or-e.tr),r=x(e.of-e.tf),s=n-r;return{day:t,count:e.n-e.tn,rawTokens:n,filteredTokens:r,savedTokens:s,pct:n?Math.round(s/n*1e3)/10:0}}async function vi(t=ze(),e=0,n){return[...(await rn(t,e,n)).entries()].filter(([,r])=>r.n-r.tn>0).sort(([r],[s])=>r<s?-1:r>s?1:0).map(([r,s])=>_i(r,s))}function bi(t){let e=["date,commands,tokens_in,tokens_out,tokens_saved,percent"];for(let n of t)e.push(`${n.day},${n.count},${n.rawTokens},${n.filteredTokens},${n.savedTokens},${n.pct}`);return e.join(`
17
+ `:""),br(en(t),JSON.stringify({v:1,days:i}))}catch{return}finally{Er(r,{force:!0})}}function Dr(t){let e=Ro(t),n=e,r="";for(;;){try{return gt($o(n),r)}catch{}let s=$r(n);if(s===n)return e;r=r?gt(Jt(n),r):Jt(n),n=s}}function Fo(t,e){return t.p!=null&&(t.p===e||t.p.startsWith(e+Co))}async function Ir(t,e,n){let r="";try{r=await wr(t,"utf8")}catch{}let s=[];for(let a of r.split(`
18
+ `)){let o=Rr(a);!o||o.t<e||n!=null&&!Fo(o,n)||s.push(o)}return s}async function tn(t,e,n){let r=e>0?ne(e):"",s=new Map;if(n==null)for(let[a,o]of Object.entries(Or(t)))a>=r&&s.set(a,o);for(let a of await Ir(t,e,n)){let o=ne(a.t),i=s.get(o)??yt();Cr(i,a),s.set(o,i)}return s}function kr(t){return t.length===0||t[0]==="cd"||t.every(e=>Pr.test(e))}function Ho(t){let e=[],n="",r=!1,s=null,a=()=>{r&&e.push(n),n="",r=!1};for(let o of t){if(s){o===s?s=null:n+=o;continue}if(o==="'"||o==='"'){s=o,r=!0;continue}if(o===" "||o===" "){a();continue}if(`|;&<>
19
+ `.includes(o)){if(a(),kr(e)){e=[];continue}return e}n+=o,r=!0}return a(),kr(e)?[]:e}function Wo(t){let e=Ho(t).map(i=>i.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<e.length;){let i=e[n];if(Pr.test(i)){n+=1;continue}if(Vo.has(i)){for(n+=1;n<e.length;){let c=e[n];if(c.startsWith("-")){n+=Uo.has(c)?2:1;continue}if(/^\d+(?:\.\d+)?[smhd]?$/.test(c)){n+=1;continue}break}continue}break}if(n>=e.length)return"";let r=e[n],s=r.includes("/")?r.slice(r.lastIndexOf("/")+1):r,a=e[n+1];return(a&&!a.startsWith("-")&&Bo.test(a)&&Ko.has(s.toLowerCase())?`${s} ${a}`:s).slice(0,24)}function je(){return gt(w(),Oo)}async function Go(t=je()){try{let n=(await wr(t,"utf8")).split(`
20
+ `).filter(r=>r.trim()!=="").length;return await _r(t,{force:!0}),await _r(en(t),{force:!0}),n}catch{return 0}}function Yo(t,e,n=je(),r=!1,s,a,o,i,c={}){if(!Number.isSafeInteger(t)||!Number.isSafeInteger(e)||t<0||e<0||t+e===0)return;let u=s?`,"h":${JSON.stringify(s)}`:"",l=a?`,"k":${JSON.stringify(a)}`:"",y=o?`,"c":${JSON.stringify(o.slice(0,24))}`:"",k=i?Dr(i):"",T=k&&k.length<=Po?`,"p":${JSON.stringify(k)}`:"",D=c.s?`,"s":${JSON.stringify(c.s.slice(0,66))}`:"",O=c.o?`,"o":${JSON.stringify(c.o)}`:"",H=`{"t":${Math.floor(Date.now()/1e3)},"r":${t},"f":${e}${r?',"m":1':""}${u}${l}${y}${T}${D}${O}}
21
+ `;try{Ao(w(),{recursive:!0,mode:448}),To(n,H,{mode:384}),Eo(n,384),Nr(n)}catch{return}}function Jo(t){let e=t.filterId==null?void 0:t.filterId.startsWith("user/")?`u:${t.filterId.slice(5)}`:"b",n=t.filteredBytes<t.rawBytes?void 0:t.filterId==null?"n":t.debugBypass?"e":"g";return{...e?{s:e}:{},...n?{o:n}:{}}}function qo(t,e,n){let r=n!=null?Math.min(t,n):t,s=n!=null?Math.min(e,n):e;return{raw:r,filtered:s}}function Mr(t,e,n){return typeof t=="number"&&t>0?Math.max(1,Math.ceil((e-t)/86400)):Math.max(1,n)}function Qo(t,e,n){return{...t,sinceDays:Mr(e,n,t.sinceDays)}}function Xo(t,e,n){return t<=0||e<=0||n<=0?0:t/e*30/1e6*n}function x(t){return Math.ceil(t/4)}function ei(t){if(!t.count)return null;let e=Math.round(t.compressedCount/t.count*100),n=(t.byCommand??[]).filter(s=>!s.native&&s.compressedCount===0).sort((s,a)=>a.count-s.count).slice(0,3).map(s=>s.cmd),r=n.length?` \xB7 top unchanged: ${n.join(", ")}`:"";return`${e}% of recorded outputs reduced (${t.compressedCount}/${t.count})${r}`}function ti(t){let e=Object.values(t.rl).reduce((s,a)=>s+a.n,0),n=t.n-t.rn-e,r=n>0?{...t.rl,"?":{...t.rl["?"]??{n:0,nc:0,r:0,f:0},n:(t.rl["?"]?.n??0)+n}}:t.rl;return Object.entries(r).map(([s,a])=>{let o=x(a.r),i=o-x(a.f),c=s.startsWith("b:")?"built-in":s.startsWith("u:")?"user":s==="n"?"none":"unattributed";return{rule:c==="built-in"||c==="user"?s.slice(2):c,kind:c,count:a.n,compressedCount:a.nc,rawTokens:o,savedTokens:i,avgPct:o?Math.round(i/o*100):0}}).sort((s,a)=>a.savedTokens-s.savedTokens||a.count-s.count)}function ri(t){return Object.entries(t.fb).map(([e,n])=>{let[r,s]=e.split(" ");return{cmd:s||"other",reason:ni[r]??"no-rule",count:n.n,tokens:x(n.r)}}).sort((e,n)=>n.tokens-e.tokens||n.count-e.count)}async function si(t=je(),e=0,n){let r=yt();for(let A of(await tn(t,e,n)).values())Zo(r,A);let s=x(r.r),a=x(r.f),o=Math.max(0,s-a),i=s?Math.round(o/s*100):0,c=Math.floor(Date.now()/1e3),u=r.t0!=null?Math.max(1,Math.ceil((c-r.t0)/86400)):1,l=Math.max(0,x(r.mr)-x(r.mf)),y={};for(let[A,N]of Object.entries(r.prov))y[A]=Math.max(0,x(N.r)-x(N.f));let k=Object.entries(r.cmds).filter(([,A])=>A.n-(A.tn??0)>0).map(([A,N])=>{let xt=x(N.r-(N.tr??0)),sn=xt-x(N.f-(N.tf??0)),wt=x(N.rr??0),Lr=wt?Math.round((wt-x(N.rf??0))/wt*100):0;return{cmd:A,count:N.n-(N.tn??0),compressedCount:N.nc,savedTokens:sn,avgPct:xt?Math.round(sn/xt*100):0,reducedPct:Lr,native:!N.sh}}).sort((A,N)=>N.savedTokens-A.savedTokens).slice(0,10),T=x(r.sr),D=T?Math.round((T-x(r.sf))/T*100):0,O=0,H=0,bt=0;for(let A of Object.values(r.cmds))O+=(A.rr??0)-(A.trr??0),H+=(A.rf??0)-(A.trf??0),bt+=A.nc-(A.tnc??0);let Je=x(r.or),kt=x(r.of);return{count:r.n,compressedCount:r.nc,rawTokens:s,filteredTokens:a,savedTokens:o,modeledSavedTokens:l,savedPct:i,sinceDays:u,savedByProvider:y,shellCompressedCount:r.sn,shellSavedPct:D,byCommand:k,observed:{count:r.n,rawTokens:Je,filteredTokens:kt,savedTokens:Je-kt,savedPct:r.or?Math.round((r.or-r.of)/r.or*1e4)/100:null,expandedCount:r.x},shortened:{count:bt,rawTokens:x(O),filteredTokens:x(H),savedPct:O>0?Math.round((O-H)/O*1e3)/10:null},allCommands:{count:r.n,rawTokens:Je,savedTokens:Je-kt,savedPct:r.or?Math.round((r.or-r.of)/r.or*1e4)/100:null},shortenedOnly:{count:bt,rawTokens:x(O),savedTokens:x(O)-x(H),savedPct:O>0?Math.round((O-H)/O*1e3)/10:null},droppedEvents:ir(),agent:{count:r.n-r.tn,rawTokens:x(r.or-r.tr),filteredTokens:x(r.of-r.tf),savedPct:r.or-r.tr?Math.round((r.or-r.tr-(r.of-r.tf))/(r.or-r.tr)*1e4)/100:null},terminal:{count:r.tn,rawTokens:x(r.tr),savedTokens:x(r.tr)-x(r.tf)},restoration:{count:r.rn,tokens:x(r.rb)},byRule:ti(r),fallbacks:ri(r),oversizedExcluded:r.ox,window:{firstAt:r.t0,lastAt:r.t1},measurement:{scope:"tool-output",legacyScope:"reduced-outputs",tokenMethod:"bytes/4",tokenCounts:"estimated",billing:"not-measured"}}}function E(t){return t<0?`-${E(-t)}`:t>=1e6?(t/1e6).toFixed(1)+"M":t>=1e3?(t/1e3).toFixed(1)+"K":String(t)}function jr(t){return t<0?`-${jr(-t)}`:t>0&&t<.01?"<$0.01":`$${t.toFixed(2)}`}function R(t){return String(t).replace(/\B(?=(\d{3})+(?!\d))/g,",")}function Ye(t,e){let n="\u2588".repeat(t);return e?`${_t}${n}${vt}`:n}function ai(t,e){if(t.count===0&&!t.oversizedExcluded)return` No data yet. Run a few commands to measure your output savings.
22
+ Watch this session live: tkr session`;let n=t.agent??{count:t.count,rawTokens:t.observed?.rawTokens??t.rawTokens,filteredTokens:t.observed?.filteredTokens??t.filteredTokens,savedPct:t.observed?.savedPct??t.savedPct},r=n.rawTokens-n.filteredTokens,s=n.rawTokens?Math.round(r/n.rawTokens*1e3)/10:0,a=k=>new Date(k*1e3).toISOString().slice(0,10),o=t.window?.firstAt!=null?` (since ${a(t.window.firstAt)})`:"",i=k=>` ${k.padEnd(16)}`,c=Math.max(0,Math.min(24,Math.round(Math.max(0,s)/100*24))),u=Ye(c,e.color)+"\u2591".repeat(24-c),l=jr(r/1e6*e.pricePerMtok),y=t.terminal?.count??0;return[` Tokmizer savings \xB7 ${e.subtitle??"all time"}${o}`," "+"\u2550".repeat(60),"",`${i("Commands")}${R(n.count)} \xB7 ${R(t.compressedCount)} reduced`,`${i("Tokens in")}${E(n.rawTokens)}`,`${i("Tokens out")}${E(n.filteredTokens)}`,`${i(r>=0?"Tokens saved":"Tokens added")}${E(Math.abs(r))} (${Math.abs(s)} % of all commands)`,...t.shortened?.savedPct!=null&&t.shortened.count>0?[`${i("Shortened only")}\u2212${t.shortened.savedPct} % on the ${R(t.shortened.count)} output${t.shortened.count===1?"":"s"} Tokmizer shortened, not the overall rate`]:[],`${i("Efficiency")}${u} ${Math.max(0,s)} %`,...e.periods?.length?["",...e.periods.map(k=>`${i(k.label)}${rn(k.savedTokens)} \xB7 ${R(k.count)} commands`)]:[],`${i("API value")}${l} at $${e.pricePerMtok.toFixed(2)}/M input tokens`,...t.restoration?.count?[`${i("Restored")}${E(t.restoration.tokens)} tokens, deducted \xB7 ${R(t.restoration.count)} restore${t.restoration.count===1?"":"s"}`]:[],...e.restoreCache?.entries?[`${i("Restore cache")}${R(e.restoreCache.entries)} entr${e.restoreCache.entries===1?"y":"ies"} \xB7 ${ci(e.restoreCache.bytes)} \xB7 kept ${e.restoreCache.kept}`]:[],...t.modeledSavedTokens>0?[`${i("Reducer (est.)")}${E(t.modeledSavedTokens)} tokens, not included`]:[],...ii(t.byCommand,e.color),""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",...t.droppedEvents?[` ${R(t.droppedEvents)} usage event${t.droppedEvents===1?" was":"s were"} not uploaded because the queue was full.`]:[],...y?[` ${R(y)} terminal commands with no agent are not counted.`]:[],...t.oversizedExcluded?[` ${R(t.oversizedExcluded)} Bash outputs over ${R(Xt)} characters are not counted: Claude Code shows at most that much.`]:[],""].join(`
23
+ `)}async function oi(t=je(),e=0,n){return[...(await tn(t,e,n)).entries()].filter(([,r])=>r.n>0).sort(([r],[s])=>r<s?-1:r>s?1:0).map(([r,s])=>({day:r,count:s.n,savedTokens:x(s.or)-x(s.of)}))}function ii(t,e){let n=(t??[]).filter(o=>o.savedTokens>0).slice(0,10);if(n.length===0)return[];let r=n[0].savedTokens,s=" "+"\u2500".repeat(60),a=[""," By command",s,` ${" #".padEnd(4)}${"Command".padEnd(20)}${"Runs".padStart(7)}${"Saved".padStart(9)}${"Avg%".padStart(7)} Impact`,s];return n.forEach((o,i)=>{let c=Math.max(1,Math.round(o.savedTokens/r*10)),u=Ye(c,e)+"\u2591".repeat(10-c),l=(o.native?`${o.cmd} (tool)`:o.cmd).slice(0,19);a.push(` ${(String(i+1)+".").padStart(3)} ${l.padEnd(20)}${R(o.count).padStart(7)}${E(o.savedTokens).padStart(9)}${(String(o.avgPct)+" %").padStart(7)} ${u}`)}),a.push(s),a}function ci(t){return t>=1024*1024?`${(t/(1024*1024)).toFixed(1)} MB`:`${Math.max(1,Math.round(t/1024))} KB`}function nn(t,e){return[` ${t} \xB7 ${e??"all time"}`," "+"\u2550".repeat(60),""]}function ui(t,e){let n=t.byRule??[],r=n.filter(i=>i.kind==="built-in"||i.kind==="user").slice(0,15),s=n.find(i=>i.kind==="none"),a=n.find(i=>i.kind==="unattributed"),o=nn("Tokmizer savings by rule",e.subtitle);if(r.length===0&&!s)o.push(" No run with rule details in this scope yet.");else{let i=" "+"\u2500".repeat(60),c=Math.max(1,...r.map(u=>u.savedTokens));o.push(` ${" #".padEnd(4)}${"Rule".padEnd(26)}${"Runs".padStart(6)}${"Saved".padStart(8)}${"Avg%".padStart(7)} Impact`,i),r.forEach((u,l)=>{let y=u.savedTokens>0?Math.max(1,Math.round(u.savedTokens/c*10)):0,k=`${u.kind==="user"?"your filter":"built-in"} \xB7 ${u.rule}`.slice(0,25);o.push(` ${(String(l+1)+".").padStart(3)} ${k.padEnd(26)}${R(u.count).padStart(6)}${E(u.savedTokens).padStart(8)}${(String(u.avgPct)+" %").padStart(7)} ${Ye(y,e.color)}${"\u2591".repeat(10-y)}`)}),o.push(i),s&&o.push(` No rule matched: ${R(s.count)} run${s.count===1?"":"s"}, ${E(s.rawTokens)} tokens left unchanged (tkr gain --failures).`),o.push(" Built-in rules are grouped by command.")}return a?.count&&o.push(` ${R(a.count)} older run${a.count===1?"":"s"} recorded before rule tracking are not attributed.`),o.push(""),o.join(`
24
+ `)}function di(t,e){let n=(t.fallbacks??[]).slice(0,15),r=(t.byRule??[]).find(a=>a.kind==="unattributed"),s=nn("Commands left unchanged",e.subtitle);if(n.length===0)s.push(" No command was left unchanged in this scope.");else{let a=" "+"\u2500".repeat(60);s.push(` ${" #".padEnd(4)}${"Command".padEnd(22)}${"Runs".padStart(6)}${"Tokens".padStart(9)} Reason`,a),n.forEach((o,i)=>{s.push(` ${(String(i+1)+".").padStart(3)} ${o.cmd.slice(0,21).padEnd(22)}${R(o.count).padStart(6)}${E(o.tokens).padStart(9)} ${xr[o.reason].short}`)}),s.push(a);for(let o of["no-rule","no-gain","failed-run"])n.some(i=>i.reason===o)&&s.push(` ${xr[o].note}`)}return r?.count&&s.push(` ${R(r.count)} older run${r.count===1?"":"s"} recorded before this report existed have no details.`),s.push(""),s.join(`
25
+ `)}function li(t,e){let n=Math.max(0,t.agent?t.agent.rawTokens-t.agent.filteredTokens:t.observed?.savedTokens??t.savedTokens),r=Math.max(1,t.sinceDays),s=Math.round(n/r*30),a=qt*Qt*Ge[e].multiplier;return{tier:e,plan:Ge[e].plan,savedTokens:n,days:r,monthlySavedTokens:s,monthlyBudgetTokens:a,pct:Math.round(s/a*1e3)/10,basis:"estimate",formula:`savedTokens / days * 30 / (${qt} tokens per 5-hour window * ${Qt} windows * ${Ge[e].multiplier})`}}function fi(t,e){let n=s=>` ${s.padEnd(16)}`,r=Math.max(0,Math.min(24,Math.round(Math.min(100,t.pct)/100*24)));return[...nn("Tokmizer quota estimate",e.subtitle),`${n("Plan (assumed)")}${t.plan}`,`${n("Tokens saved")}${E(t.savedTokens)} over ${t.days} day${t.days===1?"":"s"}`,`${n("Per month")}${E(t.monthlySavedTokens)}${t.days<30?" (projected)":""}`,`${n("Plan budget")}${E(t.monthlyBudgetTokens)} per month (assumed)`,`${n("Quota kept")}${Ye(r,e.color)}${"\u2591".repeat(24-r)} ${t.pct} %`,""," Estimate, not a plan limit. Formula: tokens saved \xF7 days \xD7 30",` \xF7 (${E(qt)} tokens per 5-hour window \xD7 ${Qt} windows \xD7 ${Ge[t.tier].multiplier}).`," Anthropic does not publish plan limits in tokens and applies them per"," rolling 5-hour window. Each saved token is counted once.",""].join(`
26
+ `)}function rn(t){return t<0?`${E(-t)} added`:`${E(t)} saved`}function pi(t,e){if(t.length===0)return"";let n=(u,l,y)=>` ${u.padEnd(11)}${R(l).padStart(4)}${(y<0?`${E(-y)} added`:E(y)).padStart(13)}`,r=" "+"Day".padEnd(11)+"Cmds".padStart(4)+"Saved".padStart(13),s=" "+"\u2500".repeat(31),a=t.map(u=>n(`${u.day.slice(8,10)}/${u.day.slice(5,7)}`,u.count,u.savedTokens)),o=t.reduce((u,l)=>u+l.count,0),i=t.reduce((u,l)=>u+l.savedTokens,0),c=n("Total",o,i);return[r,s,...a,s,e.color?`${_t}${c}${vt}`:c,""].join(`
27
+ `)}function mi(t,e){let n=x(e.or-e.tr),r=x(e.of-e.tf),s=n-r;return{day:t,count:e.n-e.tn,rawTokens:n,filteredTokens:r,savedTokens:s,pct:n?Math.round(s/n*1e3)/10:0}}async function hi(t=je(),e=0,n){return[...(await tn(t,e,n)).entries()].filter(([,r])=>r.n-r.tn>0).sort(([r],[s])=>r<s?-1:r>s?1:0).map(([r,s])=>mi(r,s))}function gi(t){let e=["date,commands,tokens_in,tokens_out,tokens_saved,percent"];for(let n of t)e.push(`${n.day},${n.count},${n.rawTokens},${n.filteredTokens},${n.savedTokens},${n.pct}`);return e.join(`
28
28
  `)+`
29
- `}function ki(t){return`${t.slice(8,10)}/${t.slice(5,7)}`}function xi(t,e){let n=new Map(t.map(T=>[T.day,T])),r=e.sinceTs>0?ne(e.sinceTs):t[0]?.day??ne(e.nowTs),s=[],a=new Date(Number(r.slice(0,4)),Number(r.slice(5,7))-1,Number(r.slice(8,10))),o=ne(e.nowTs);for(;s.length<366;){let T=ne(Math.floor(a.getTime()/1e3));if(T>o)break;s.push(T),a.setDate(a.getDate()+1)}let i=30,c=Math.max(0,...t.map(T=>T.savedTokens)),u=" "+"\u2500".repeat(i+18),l=[` Tokens saved per day \xB7 ${e.subtitle}`,u];for(let T of s){let D=n.get(T)?.savedTokens??0,O=c>0&&D>0?Math.max(1,Math.round(D/c*i)):0,H=D<0?`${E(-D)} added`:E(D);l.push(` ${ki(T)} ${Je(O,e.color)}${"\u2591".repeat(i-O)} ${H.padStart(11)}`)}let y=t.reduce((T,D)=>T+D.savedTokens,0),k=` ${"Total".padEnd(5)} ${"".padEnd(i)} ${an(y).padStart(11)}`;return l.push(u,e.color?`${vt}${k}${bt}`:k,""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",""),l.join(`
30
- `)}async function wi(t=ze(),e=0,n,r=20){return(await jr(t,e,n)).filter(s=>!s.m&&s.h!=="shell").slice(-r).map(s=>{let a=x(s.r),o=x(s.f);return{at:s.t,cmd:s.c??"(unlabeled)",rawTokens:a,filteredTokens:o,savedTokens:a-o}})}function Si(t){let e=new Date(t*1e3);return`${ne(t)} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Ti(t,e){if(t.length===0)return` No commands recorded in this scope.
31
- `;let n=" "+"\u2500".repeat(66),r=[` Last ${t.length} commands \xB7 ${e.subtitle}`,n,` ${"Time".padEnd(18)}${"Command".padEnd(22)}${"In".padStart(8)}${"Out".padStart(8)}${"Saved".padStart(10)}`,n];for(let o of t){let i=o.savedTokens<0?`-${E(-o.savedTokens)}`:E(o.savedTokens);r.push(` ${Si(o.at).padEnd(18)}${o.cmd.slice(0,21).padEnd(22)}${E(o.rawTokens).padStart(8)}${E(o.filteredTokens).padStart(8)}${i.padStart(10)}`)}let s=t.reduce((o,i)=>o+i.savedTokens,0),a=` ${"Total".padEnd(40)}${"".padStart(16)}${an(s).padStart(10)}`;return r.push(n,e.color?`${vt}${a}${bt}`:a,""),r.join(`
32
- `)}function Ei(t){return Qt(t)||t}var Po,Mo,xr,jo,tn,zo,Zo,Ho,Wo,Go,Yo,zr,oi,vt,bt,Tr,Ye,Xt,en,Vr=S(()=>{"use strict";L();Jt();br();Po="stats.jsonl",Mo="stats-ledger.json",xr=2*1024*1024,jo=3e4,tn=3e4,zo=new Set(["n","g","e"]),Zo=256;Ho=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Wo=new Set(["-u","-g","-n","-s","-k"]),Go=/^[a-z0-9][a-z0-9._-]*$/i,Yo=new Set(["git","npm","pnpm","yarn","npx","docker","kubectl","helm","cargo","go","brew","gh","pip","pip3","apt","apt-get","systemctl","terraform","aws","gcloud","az","bundle","rake","rails","prisma","poetry","uv","gem","composer"]),zr=/^[A-Za-z_][A-Za-z0-9_]*=/;oi={n:"no-rule",g:"no-gain",e:"failed-run"};vt="\x1B[38;2;245;176;65m",bt="\x1B[0m";Tr={"no-rule":{short:"no rule",note:"no rule: neither a built-in nor a custom filter matches this command (see tkr doctor)."},"no-gain":{short:"nothing to cut",note:"nothing to cut: a rule matched, but the output was short or would not shrink."},"failed-run":{short:"failed run, in full",note:"failed run, in full: error output is kept whole so the agent can debug."}};Ye={pro:{plan:"Claude Pro",multiplier:1},"5x":{plan:"Claude Max 5x",multiplier:5},"20x":{plan:"Claude Max 20x",multiplier:20}},Xt=44e3,en=144});import{openSync as Ai,fstatSync as $i,readSync as Ri,closeSync as Ci}from"node:fs";L();import{readFileSync as Kr}from"node:fs";import{join as Hr}from"node:path";L();var Ui=24*36e5;function un(){try{let t=JSON.parse(Kr(Hr(w(),"settings-cache.json"),"utf8"));return t.enabled!==!1&&typeof t.reducer=="string"&&t.reducer!=="off"}catch{return!1}}var Oi={light:.25,balanced:.45,max:.7},Ni=256*1024,Di=2e3,Ii=5;function Pi(t){let e=Ai(t,"r");try{let n=$i(e).size,r=Math.max(0,n-Ni),s=Buffer.alloc(n-r);return Ri(e,s,0,s.length,r),s.toString("utf8")}finally{Ci(e)}}function Mi(t){let e=t.split(`
33
- `);for(let n=e.length-1;n>=0;n--){let r=e[n];if(!(!r||!r.includes('"assistant"')))try{let s=JSON.parse(r);if(s.type!=="assistant")continue;let a=s.message?.content;if(!Array.isArray(a))continue;let o=0;for(let i of a)i?.type==="text"&&typeof i.text=="string"&&(o+=i.text.length);return o}catch{continue}}return 0}async function ji(){if(!un())return;let{loadSettingsCache:t}=await Promise.resolve().then(()=>(ct(),In)),{readSkill:e}=await Promise.resolve().then(()=>(Un(),Vn)),{reducerStillEntitled:n}=await Promise.resolve().then(()=>(Kn(),Bn)),{recordTelemetry:r}=await Promise.resolve().then(()=>(_r(),yr)),{recordStat:s}=await Promise.resolve().then(()=>(Vr(),Fr)),a=[];for await(let T of process.stdin)a.push(T);let o=JSON.parse(Buffer.concat(a).toString("utf8")),i=o.transcript_path;if(typeof i!="string"||!i)return;let c=await t();if(!c.enabled)return;let u=Oi[c.reducer];if(!u||!await n()||!await e(`reducer-${c.reducer}`))return;let l=Mi(Pi(i));if(l<=0)return;let y=Math.ceil(l/4),k=Math.min(Di,Math.round(y*u/(1-u)));k<Ii||(s((y+k)*4,y*4,void 0,!0,"claude-code",void 0,void 0,typeof o.cwd=="string"&&o.cwd?o.cwd:process.cwd()),await r({cmd:"reducer",tokensSaved:k,optimized:!0,telemetryOptIn:c.telemetryOptIn,sessionId:o.session_id,host:"claude-code"}))}ji().catch(()=>{});
29
+ `}function yi(t){return`${t.slice(8,10)}/${t.slice(5,7)}`}function _i(t,e){let n=new Map(t.map(T=>[T.day,T])),r=e.sinceTs>0?ne(e.sinceTs):t[0]?.day??ne(e.nowTs),s=[],a=new Date(Number(r.slice(0,4)),Number(r.slice(5,7))-1,Number(r.slice(8,10))),o=ne(e.nowTs);for(;s.length<366;){let T=ne(Math.floor(a.getTime()/1e3));if(T>o)break;s.push(T),a.setDate(a.getDate()+1)}let i=30,c=Math.max(0,...t.map(T=>T.savedTokens)),u=" "+"\u2500".repeat(i+18),l=[` Tokens saved per day \xB7 ${e.subtitle}`,u];for(let T of s){let D=n.get(T)?.savedTokens??0,O=c>0&&D>0?Math.max(1,Math.round(D/c*i)):0,H=D<0?`${E(-D)} added`:E(D);l.push(` ${yi(T)} ${Ye(O,e.color)}${"\u2591".repeat(i-O)} ${H.padStart(11)}`)}let y=t.reduce((T,D)=>T+D.savedTokens,0),k=` ${"Total".padEnd(5)} ${"".padEnd(i)} ${rn(y).padStart(11)}`;return l.push(u,e.color?`${_t}${k}${vt}`:k,""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",""),l.join(`
30
+ `)}async function vi(t=je(),e=0,n,r=20){return(await Ir(t,e,n)).filter(s=>!s.m&&s.h!=="shell").slice(-r).map(s=>{let a=x(s.r),o=x(s.f);return{at:s.t,cmd:s.c??"(unlabeled)",rawTokens:a,filteredTokens:o,savedTokens:a-o}})}function bi(t){let e=new Date(t*1e3);return`${ne(t)} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function ki(t,e){if(t.length===0)return` No commands recorded in this scope.
31
+ `;let n=" "+"\u2500".repeat(66),r=[` Last ${t.length} commands \xB7 ${e.subtitle}`,n,` ${"Time".padEnd(18)}${"Command".padEnd(22)}${"In".padStart(8)}${"Out".padStart(8)}${"Saved".padStart(10)}`,n];for(let o of t){let i=o.savedTokens<0?`-${E(-o.savedTokens)}`:E(o.savedTokens);r.push(` ${bi(o.at).padEnd(18)}${o.cmd.slice(0,21).padEnd(22)}${E(o.rawTokens).padStart(8)}${E(o.filteredTokens).padStart(8)}${i.padStart(10)}`)}let s=t.reduce((o,i)=>o+i.savedTokens,0),a=` ${"Total".padEnd(40)}${"".padStart(16)}${rn(s).padStart(10)}`;return r.push(n,e.color?`${_t}${a}${vt}`:a,""),r.join(`
32
+ `)}function xi(t){return Jt(t)||t}var Oo,No,vr,Do,Xt,Io,Po,Vo,Uo,Bo,Ko,Pr,ni,_t,vt,xr,Ge,qt,Qt,Zr=S(()=>{"use strict";L();Gt();yr();Oo="stats.jsonl",No="stats-ledger.json",vr=2*1024*1024,Do=3e4,Xt=3e4,Io=new Set(["n","g","e"]),Po=256;Vo=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Uo=new Set(["-u","-g","-n","-s","-k"]),Bo=/^[a-z0-9][a-z0-9._-]*$/i,Ko=new Set(["git","npm","pnpm","yarn","npx","docker","kubectl","helm","cargo","go","brew","gh","pip","pip3","apt","apt-get","systemctl","terraform","aws","gcloud","az","bundle","rake","rails","prisma","poetry","uv","gem","composer"]),Pr=/^[A-Za-z_][A-Za-z0-9_]*=/;ni={n:"no-rule",g:"no-gain",e:"failed-run"};_t="\x1B[38;2;245;176;65m",vt="\x1B[0m";xr={"no-rule":{short:"no rule",note:"no rule: neither a built-in nor a custom filter matches this command (see tkr doctor)."},"no-gain":{short:"nothing to cut",note:"nothing to cut: a rule matched, but the output was short or would not shrink."},"failed-run":{short:"failed run, in full",note:"failed run, in full: error output is kept whole so the agent can debug."}};Ge={pro:{plan:"Claude Pro",multiplier:1},"5x":{plan:"Claude Max 5x",multiplier:5},"20x":{plan:"Claude Max 20x",multiplier:20}},qt=44e3,Qt=144});import{openSync as wi,fstatSync as Si,readSync as Ti,closeSync as Ei}from"node:fs";L();import{readFileSync as Vr}from"node:fs";import{join as Ur}from"node:path";L();var Zi=24*36e5;function on(){try{let t=JSON.parse(Vr(Ur(w(),"settings-cache.json"),"utf8"));return t.enabled!==!1&&typeof t.reducer=="string"&&t.reducer!=="off"}catch{return!1}}var Ai={light:.25,balanced:.45,max:.7},$i=256*1024,Ri=2e3,Ci=5;function Oi(t){let e=wi(t,"r");try{let n=Si(e).size,r=Math.max(0,n-$i),s=Buffer.alloc(n-r);return Ti(e,s,0,s.length,r),s.toString("utf8")}finally{Ei(e)}}function Ni(t){let e=t.split(`
33
+ `);for(let n=e.length-1;n>=0;n--){let r=e[n];if(!(!r||!r.includes('"assistant"')))try{let s=JSON.parse(r);if(s.type!=="assistant")continue;let a=s.message?.content;if(!Array.isArray(a))continue;let o=0;for(let i of a)i?.type==="text"&&typeof i.text=="string"&&(o+=i.text.length);return o}catch{continue}}return 0}async function Di(){if(!on())return;let{loadSettingsCache:t}=await Promise.resolve().then(()=>(it(),Nn)),{readSkill:e}=await Promise.resolve().then(()=>(Fn(),Ln)),{reducerStillEntitled:n}=await Promise.resolve().then(()=>(Un(),Vn)),{recordTelemetry:r}=await Promise.resolve().then(()=>(hr(),mr)),{recordStat:s}=await Promise.resolve().then(()=>(Zr(),zr)),a=[];for await(let T of process.stdin)a.push(T);let o=JSON.parse(Buffer.concat(a).toString("utf8")),i=o.transcript_path;if(typeof i!="string"||!i)return;let c=await t();if(!c.enabled)return;let u=Ai[c.reducer];if(!u||!await n()||!await e(`reducer-${c.reducer}`))return;let l=Ni(Oi(i));if(l<=0)return;let y=Math.ceil(l/4),k=Math.min(Ri,Math.round(y*u/(1-u)));k<Ci||(s((y+k)*4,y*4,void 0,!0,"claude-code",void 0,void 0,typeof o.cwd=="string"&&o.cwd?o.cwd:process.cwd()),await r({cmd:"reducer",tokensSaved:k,optimized:!0,telemetryOptIn:c.telemetryOptIn,sessionId:o.session_id,host:"claude-code"}))}Di().catch(()=>{});