@tokmizer/plugin 0.9.64 → 0.9.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/.codex-plugin/plugin.json +1 -1
  3. package/LICENSES.md +1 -1
  4. package/README.md +5 -4
  5. package/dist/bin/tkr-agent-hook.js +10 -10
  6. package/dist/bin/tkr-codex-hook.js +68 -68
  7. package/dist/bin/tkr-copilot-hook.js +9 -9
  8. package/dist/bin/tkr-crush-hook.js +9 -9
  9. package/dist/bin/tkr-cursor-hook.js +9 -9
  10. package/dist/bin/tkr-daemon.js +135 -117
  11. package/dist/bin/tkr-droid-hook.js +9 -9
  12. package/dist/bin/tkr-exec +78 -73
  13. package/dist/bin/tkr-exec.js +78 -73
  14. package/dist/bin/tkr-gemini-hook.js +9 -9
  15. package/dist/bin/tkr-grok-hook.js +9 -9
  16. package/dist/bin/tkr-junie-hook.js +9 -9
  17. package/dist/bin/tkr-processor.js +96 -91
  18. package/dist/bin/tkr-qwen-hook.js +9 -9
  19. package/dist/bin/tkr-shim.js +80 -75
  20. package/dist/bin/tkr-trae-hook.js +9 -9
  21. package/dist/bin/tkr-zcode-hook.js +9 -9
  22. package/dist/bin/tkr.js +271 -257
  23. package/dist/hooks-host/post-tool-use.js +89 -84
  24. package/dist/hooks-host/pre-tool-use.js +10 -10
  25. package/dist/hooks-host/reducer-stop.js +27 -24
  26. package/dist/hooks-host/session-recap.js +1 -1
  27. package/dist/index.js +96 -83
  28. package/dist/native/manifest.json +12 -12
  29. package/dist/native/single.json +12 -12
  30. package/dist/native/tkr-exec-darwin-arm64 +0 -0
  31. package/dist/native/tkr-exec-darwin-x64 +0 -0
  32. package/dist/native/tkr-exec-linux-arm64 +0 -0
  33. package/dist/native/tkr-exec-linux-x64 +0 -0
  34. package/dist/native/tkr-exec-win32-arm64.exe +0 -0
  35. package/dist/native/tkr-exec-win32-x64.exe +0 -0
  36. package/hooks/on-session-start.mjs +9 -1
  37. package/package.json +8 -8
  38. package/scripts/install-mac-linux.sh +47 -0
@@ -1,30 +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 Vr=Object.defineProperty;var x=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var ve=(t,e)=>{for(var n in e)Vr(t,n,{get:e[n],enumerable:!0})};import tn from"node:os";import{join as G}from"node:path";function w(){return process.env.TOKMIZER_HOME||G(tn.homedir(),".tokmizer")}function Me(){return G(w(),"install-id")}function Ge(){return G(w(),"bundle-refresh.json")}function Je(){return G(w(),"skills")}function te(t){return G(Je(),`${t}.md`)}function vt(){return G(w(),"managed-commands.json")}function Ye(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||G(tn.homedir(),".claude","commands")}function ne(t){return G(Ye(),`${t}.md`)}var z=x(()=>{"use strict"});var v,kt,p,F,je=x(()=>{(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})(v||(v={}));(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(kt||(kt={}));p=v.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),F=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,Kr,O,qe=x(()=>{je();d=v.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"]),Kr=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),O=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,v.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()}};O.create=t=>new O(t)});var Wr,B,xt=x(()=>{qe();je();Wr=(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,v.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:n=`Unrecognized key(s) in object: ${v.joinValues(t.keys,", ")}`;break;case d.invalid_union:n="Invalid input";break;case d.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${v.joinValues(t.options)}`;break;case d.invalid_enum_value:n=`Invalid enum value. Expected ${v.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}"`:v.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,v.assertNever(t)}return{message:n}},B=Wr});function Gr(t){rn=t}function ke(){return rn}var rn,Qe=x(()=>{xt();rn=B});function f(t,e){let n=ke(),r=ze({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===B?void 0:B].filter(s=>!!s)});t.common.issues.push(r)}var ze,Jr,A,h,re,R,Xe,et,J,xe,wt=x(()=>{Qe();xt();ze=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=[];A=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"}),re=t=>({status:"dirty",value:t}),R=t=>({status:"valid",value:t}),Xe=t=>t.status==="aborted",et=t=>t.status==="dirty",J=t=>t.status==="valid",xe=t=>typeof Promise<"u"&&t instanceof Promise});var sn=x(()=>{});var m,an=x(()=>{(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 dn(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 fs(t){return new RegExp(`^${dn(t)}$`)}function ln(t){let e=`${un}T${dn(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 ps(t,e){return!!((e==="v4"||!e)&&as.test(t)||(e==="v6"||!e)&&is.test(t))}function ms(t,e){if(!ts.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 hs(t,e){return!!((e==="v4"||!e)&&os.test(t)||(e==="v6"||!e)&&cs.test(t))}function gs(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 we(t){if(t instanceof N){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=D.create(we(r))}return new N({...t._def,shape:()=>e})}else return t instanceof W?new W({...t._def,type:we(t.element)}):t instanceof D?D.create(we(t.unwrap())):t instanceof V?V.create(we(t.unwrap())):t instanceof U?U.create(t.items.map(e=>we(e))):t}function Tt(t,e){let n=F(t),r=F(e);if(t===e)return{valid:!0,data:t};if(n===p.object&&r===p.object){let s=v.objectKeys(e),a=v.objectKeys(t).filter(i=>s.indexOf(i)!==-1),o={...t,...e};for(let i of a){let c=Tt(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=Tt(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 fn(t,e){return new me({values:t,typeName:g.ZodEnum,..._(e)})}function cn(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function pn(t,e={},n){return t?q.create().superRefine((r,s)=>{let a=t(r);if(a instanceof Promise)return a.then(o=>{if(!o){let i=cn(e,r),c=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:c})}});if(!a){let o=cn(e,r),i=o.fatal??n??!0;s.addIssue({code:"custom",...o,fatal:i})}}):q.create()}var I,on,b,Yr,qr,Qr,Xr,es,ts,ns,rs,ss,St,as,os,is,cs,us,ds,un,ls,Y,se,ae,oe,ie,Se,ce,ue,q,K,L,Te,W,N,de,H,tt,le,U,nt,Ee,Ae,rt,fe,pe,me,he,Q,P,D,V,ge,ye,Re,ys,Le,Ze,_e,_s,g,bs,mn,hn,vs,ks,gn,xs,ws,Ss,Ts,Es,As,Rs,$s,Cs,Os,Ns,Ds,Is,Ps,Ms,js,zs,Ls,Zs,Fs,Us,Vs,Bs,Hs,Ks,Ws,Gs,Js,Ys,qs,Qs,Xs,ea,ta,yn=x(()=>{qe();Qe();an();wt();je();I=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}},on=(t,e)=>{if(J(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 O(t.common.issues);return this._error=n,this._error}}};b=class{get description(){return this._def.description}_getType(e){return F(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:F(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new A,ctx:{common:e.parent.common,data:e.data,parsedType:F(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(xe(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:F(e)},s=this._parseSync({data:e,path:r.path,parent:r});return on(r,s)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:F(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return J(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=>J(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:F(e)},s=this._parse({data:e,path:r.path,parent:r}),a=await(xe(s)?s:Promise.resolve(s));return on(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 P({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 D.create(this,this._def)}nullable(){return V.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return W.create(this)}promise(){return Q.create(this,this._def)}or(e){return de.create([this,e],this._def)}and(e){return le.create(this,e,this._def)}transform(e){return new P({..._(this._def),schema:this,typeName:g.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new ge({..._(this._def),innerType:this,defaultValue:n,typeName:g.ZodDefault})}brand(){return new Le({typeName:g.ZodBranded,type:this,..._(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new ye({..._(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 Ze.create(this,e)}readonly(){return _e.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Yr=/^c[^\s-]{8,}$/i,qr=/^[0-9a-z]+$/,Qr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Xr=/^[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,es=/^[a-z0-9_-]{21}$/i,ts=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ns=/^[-+]?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)?)??$/,rs=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ss="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",as=/^(?:(?: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])$/,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])\/(3[0-2]|[12]?[0-9])$/,is=/^(([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]))$/,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]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,us=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ds=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,un="((\\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])))",ls=new RegExp(`^${un}$`);Y=class t extends b{_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 A,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")rs.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")St||(St=new RegExp(ss,"u")),St.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")Xr.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")es.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")Yr.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")Qr.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"?ln(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"?ls.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?fs(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"?ns.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"duration",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?ps(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"?ms(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"?hs(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"?us.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?ds.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64url",code:d.invalid_string,message:a.message}),r.dirty()):v.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}};Y.create=t=>new Y({checks:[],typeName:g.ZodString,coerce:t?.coerce??!1,..._(t)});se=class t extends b{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 A;for(let a of this._def.checks)a.kind==="int"?v.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"?gs(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()):v.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"&&v.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)}};se.create=t=>new se({checks:[],typeName:g.ZodNumber,coerce:t?.coerce||!1,..._(t)});ae=class t extends b{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 A;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()):v.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}};ae.create=t=>new ae({checks:[],typeName:g.ZodBigInt,coerce:t?.coerce??!1,..._(t)});oe=class extends b{_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 R(e.data)}};oe.create=t=>new oe({typeName:g.ZodBoolean,coerce:t?.coerce||!1,..._(t)});ie=class t extends b{_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 A,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()):v.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}};ie.create=t=>new ie({checks:[],coerce:t?.coerce||!1,typeName:g.ZodDate,..._(t)});Se=class extends b{_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 R(e.data)}};Se.create=t=>new Se({typeName:g.ZodSymbol,..._(t)});ce=class extends b{_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 R(e.data)}};ce.create=t=>new ce({typeName:g.ZodUndefined,..._(t)});ue=class extends b{_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 R(e.data)}};ue.create=t=>new ue({typeName:g.ZodNull,..._(t)});q=class extends b{constructor(){super(...arguments),this._any=!0}_parse(e){return R(e.data)}};q.create=t=>new q({typeName:g.ZodAny,..._(t)});K=class extends b{constructor(){super(...arguments),this._unknown=!0}_parse(e){return R(e.data)}};K.create=t=>new K({typeName:g.ZodUnknown,..._(t)});L=class extends b{_parse(e){let n=this._getOrReturnCtx(e);return f(n,{code:d.invalid_type,expected:p.never,received:n.parsedType}),h}};L.create=t=>new L({typeName:g.ZodNever,..._(t)});Te=class extends b{_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 R(e.data)}};Te.create=t=>new Te({typeName:g.ZodVoid,..._(t)});W=class t extends b{_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 I(n,o,n.path,i)))).then(o=>A.mergeArray(r,o));let a=[...n.data].map((o,i)=>s.type._parseSync(new I(n,o,n.path,i)));return A.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)}};W.create=(t,e)=>new W({type:t,minLength:null,maxLength:null,exactLength:null,typeName:g.ZodArray,..._(e)});N=class t extends b{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=v.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 L&&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 I(s,y,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof L){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 I(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=>A.mergeObjectSync(r,u)):A.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 v.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 v.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return we(this)}partial(e){let n={};for(let r of v.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 v.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof D;)a=a._def.innerType;n[r]=a}return new t({...this._def,shape:()=>n})}keyof(){return fn(v.objectKeys(this.shape))}};N.create=(t,e)=>new N({shape:()=>t,unknownKeys:"strip",catchall:L.create(),typeName:g.ZodObject,..._(e)});N.strictCreate=(t,e)=>new N({shape:()=>t,unknownKeys:"strict",catchall:L.create(),typeName:g.ZodObject,..._(e)});N.lazycreate=(t,e)=>new N({shape:t,unknownKeys:"strip",catchall:L.create(),typeName:g.ZodObject,..._(e)});de=class extends b{_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 O(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 O(c));return f(n,{code:d.invalid_union,unionErrors:i}),h}}get options(){return this._def.options}};de.create=(t,e)=>new de({options:t,typeName:g.ZodUnion,..._(e)});H=t=>t instanceof fe?H(t.schema):t instanceof P?H(t.innerType()):t instanceof pe?[t.value]:t instanceof me?t.options:t instanceof he?v.objectValues(t.enum):t instanceof ge?H(t._def.innerType):t instanceof ce?[void 0]:t instanceof ue?[null]:t instanceof D?[void 0,...H(t.unwrap())]:t instanceof V?[null,...H(t.unwrap())]:t instanceof Le||t instanceof _e?H(t.unwrap()):t instanceof ye?H(t._def.innerType):[],tt=class t extends b{_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=H(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)})}};le=class extends b{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=(a,o)=>{if(Xe(a)||Xe(o))return h;let i=Tt(a.value,o.value);return i.valid?((et(a)||et(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}))}};le.create=(t,e,n)=>new le({left:t,right:e,typeName:g.ZodIntersection,..._(n)});U=class t extends b{_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 I(r,o,r.path,i)):null}).filter(o=>!!o);return r.common.async?Promise.all(a).then(o=>A.mergeArray(n,o)):A.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)})};nt=class t extends b{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 I(r,i,r.path,i)),value:o._parse(new I(r,r.data[i],r.path,i)),alwaysSet:i in r.data});return r.common.async?A.mergeObjectAsync(n,s):A.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof b?new t({keyType:e,valueType:n,typeName:g.ZodRecord,..._(r)}):new t({keyType:Y.create(),valueType:e,typeName:g.ZodRecord,..._(n)})}},Ee=class extends b{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 I(r,i,r.path,[u,"key"])),value:a._parse(new I(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}}}};Ee.create=(t,e,n)=>new Ee({valueType:e,keyType:t,typeName:g.ZodMap,..._(n)});Ae=class t extends b{_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 I(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)}};Ae.create=(t,e)=>new Ae({valueType:t,minSize:null,maxSize:null,typeName:g.ZodSet,..._(e)});rt=class t extends b{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 ze({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,ke(),B].filter(u=>!!u),issueData:{code:d.invalid_arguments,argumentsError:c}})}function s(i,c){return ze({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,ke(),B].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 Q){let i=this;return R(async function(...c){let u=new O([]),l=await i._def.args.parseAsync(c,a).catch(E=>{throw u.addIssue(r(c,E)),u}),y=await Reflect.apply(o,this,l);return await i._def.returns._def.type.parseAsync(y,a).catch(E=>{throw u.addIssue(s(y,E)),u})})}else{let i=this;return R(function(...c){let u=i._def.args.safeParse(c,a);if(!u.success)throw new O([r(c,u.error)]);let l=Reflect.apply(o,this,u.data),y=i._def.returns.safeParse(l,a);if(!y.success)throw new O([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(K.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||U.create([]).rest(K.create()),returns:n||K.create(),typeName:g.ZodFunction,..._(r)})}},fe=class extends b{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})}};fe.create=(t,e)=>new fe({getter:t,typeName:g.ZodLazy,..._(e)});pe=class extends b{_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}};pe.create=(t,e)=>new pe({value:t,typeName:g.ZodLiteral,..._(e)});me=class t extends b{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{expected:v.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 R(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})}};me.create=fn;he=class extends b{_parse(e){let n=v.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==p.string&&r.parsedType!==p.number){let s=v.objectValues(n);return f(r,{expected:v.joinValues(s),received:r.parsedType,code:d.invalid_type}),h}if(this._cache||(this._cache=new Set(v.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=v.objectValues(n);return f(r,{received:r.data,code:d.invalid_enum_value,options:s}),h}return R(e.data)}get enum(){return this._def.values}};he.create=(t,e)=>new he({values:t,typeName:g.ZodNativeEnum,..._(e)});Q=class extends b{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 R(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};Q.create=(t,e)=>new Q({type:t,typeName:g.ZodPromise,..._(e)});P=class extends b{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"?re(c.value):n.value==="dirty"?re(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"?re(i.value):n.value==="dirty"?re(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(!J(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=>J(o)?Promise.resolve(s.transform(o.value,a)).then(i=>({status:n.value,value:i})):h);v.assertNever(s)}};P.create=(t,e,n)=>new P({schema:t,typeName:g.ZodEffects,effect:e,..._(n)});P.createWithPreprocess=(t,e,n)=>new P({schema:e,effect:{type:"preprocess",transform:t},typeName:g.ZodEffects,..._(n)});D=class extends b{_parse(e){return this._getType(e)===p.undefined?R(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};D.create=(t,e)=>new D({innerType:t,typeName:g.ZodOptional,..._(e)});V=class extends b{_parse(e){return this._getType(e)===p.null?R(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};V.create=(t,e)=>new V({innerType:t,typeName:g.ZodNullable,..._(e)});ge=class extends b{_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}};ge.create=(t,e)=>new ge({innerType:t,typeName:g.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._(e)});ye=class extends b{_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 xe(s)?s.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new O(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new O(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};ye.create=(t,e)=>new ye({innerType:t,typeName:g.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._(e)});Re=class extends b{_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)});ys=Symbol("zod_brand"),Le=class extends b{_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}},Ze=class t extends b{_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(),re(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})}},_e=class extends b{_parse(e){let n=this._def.innerType._parse(e),r=s=>(J(s)&&(s.value=Object.freeze(s.value)),s);return xe(n)?n.then(s=>r(s)):r(n)}unwrap(){return this._def.innerType}};_e.create=(t,e)=>new _e({innerType:t,typeName:g.ZodReadonly,..._(e)});_s={object:N.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}`})=>pn(n=>n instanceof t,e),mn=Y.create,hn=se.create,vs=Re.create,ks=ae.create,gn=oe.create,xs=ie.create,ws=Se.create,Ss=ce.create,Ts=ue.create,Es=q.create,As=K.create,Rs=L.create,$s=Te.create,Cs=W.create,Os=N.create,Ns=N.strictCreate,Ds=de.create,Is=tt.create,Ps=le.create,Ms=U.create,js=nt.create,zs=Ee.create,Ls=Ae.create,Zs=rt.create,Fs=fe.create,Us=pe.create,Vs=me.create,Bs=he.create,Hs=Q.create,Ks=P.create,Ws=D.create,Gs=V.create,Js=P.createWithPreprocess,Ys=Ze.create,qs=()=>mn().optional(),Qs=()=>hn().optional(),Xs=()=>gn().optional(),ea={string:(t=>Y.create({...t,coerce:!0})),number:(t=>se.create({...t,coerce:!0})),boolean:(t=>oe.create({...t,coerce:!0})),bigint:(t=>ae.create({...t,coerce:!0})),date:(t=>ie.create({...t,coerce:!0}))},ta=h});var M={};ve(M,{BRAND:()=>ys,DIRTY:()=>re,EMPTY_PATH:()=>Jr,INVALID:()=>h,NEVER:()=>ta,OK:()=>R,ParseStatus:()=>A,Schema:()=>b,ZodAny:()=>q,ZodArray:()=>W,ZodBigInt:()=>ae,ZodBoolean:()=>oe,ZodBranded:()=>Le,ZodCatch:()=>ye,ZodDate:()=>ie,ZodDefault:()=>ge,ZodDiscriminatedUnion:()=>tt,ZodEffects:()=>P,ZodEnum:()=>me,ZodError:()=>O,ZodFirstPartyTypeKind:()=>g,ZodFunction:()=>rt,ZodIntersection:()=>le,ZodIssueCode:()=>d,ZodLazy:()=>fe,ZodLiteral:()=>pe,ZodMap:()=>Ee,ZodNaN:()=>Re,ZodNativeEnum:()=>he,ZodNever:()=>L,ZodNull:()=>ue,ZodNullable:()=>V,ZodNumber:()=>se,ZodObject:()=>N,ZodOptional:()=>D,ZodParsedType:()=>p,ZodPipeline:()=>Ze,ZodPromise:()=>Q,ZodReadonly:()=>_e,ZodRecord:()=>nt,ZodSchema:()=>b,ZodSet:()=>Ae,ZodString:()=>Y,ZodSymbol:()=>Se,ZodTransformer:()=>P,ZodTuple:()=>U,ZodType:()=>b,ZodUndefined:()=>ce,ZodUnion:()=>de,ZodUnknown:()=>K,ZodVoid:()=>Te,addIssueToContext:()=>f,any:()=>Es,array:()=>Cs,bigint:()=>ks,boolean:()=>gn,coerce:()=>ea,custom:()=>pn,date:()=>xs,datetimeRegex:()=>ln,defaultErrorMap:()=>B,discriminatedUnion:()=>Is,effect:()=>Ks,enum:()=>Vs,function:()=>Zs,getErrorMap:()=>ke,getParsedType:()=>F,instanceof:()=>bs,intersection:()=>Ps,isAborted:()=>Xe,isAsync:()=>xe,isDirty:()=>et,isValid:()=>J,late:()=>_s,lazy:()=>Fs,literal:()=>Us,makeIssue:()=>ze,map:()=>zs,nan:()=>vs,nativeEnum:()=>Bs,never:()=>Rs,null:()=>Ts,nullable:()=>Gs,number:()=>hn,object:()=>Os,objectUtil:()=>kt,oboolean:()=>Xs,onumber:()=>Qs,optional:()=>Ws,ostring:()=>qs,pipeline:()=>Ys,preprocess:()=>Js,promise:()=>Hs,quotelessJson:()=>Kr,record:()=>js,set:()=>Ls,setErrorMap:()=>Gr,strictObject:()=>Ns,string:()=>mn,symbol:()=>ws,transformer:()=>Ks,tuple:()=>Ms,undefined:()=>Ss,union:()=>Ds,unknown:()=>As,util:()=>v,void:()=>$s});var Et=x(()=>{Qe();wt();sn();je();yn();qe()});var _n=x(()=>{Et();Et()});var na,ra,$e,bn=x(()=>{"use strict";_n();na=M.enum(["normal","compact","minimal"]),ra=M.enum(["off","light","balanced","max"]),$e=M.object({enabled:M.boolean().default(!0),telemetryOptIn:M.boolean().default(!0),outputVerbosity:na.default("compact"),reducer:ra.default("off"),filters:M.object({enableAll:M.boolean().default(!0),disabled:M.array(M.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})})});var Rn={};ve(Rn,{clearSettingsCache:()=>ua,loadSettingsCache:()=>Oe,saveSettingsCache:()=>An,updateSettingsCache:()=>ca});import{readFile as wn,writeFile as Sn,mkdir as Tn,chmod as sa,rm as Fe,rename as En,readdir as aa}from"node:fs/promises";import{randomUUID as oa}from"node:crypto";import{join as Ce}from"node:path";import{setTimeout as vn}from"node:timers/promises";async function Oe(){let t=null;try{let e=JSON.parse(await wn(Ce(w(),At),"utf8"));typeof e=="object"&&e!==null&&!Array.isArray(e)&&(t=e)}catch{}return t?$e.parse({...kn,...t}):kn}async function An(t){await Tn(w(),{recursive:!0});let e=Ce(w(),At),n=`${e}.tmp-${process.pid}-${process.hrtime.bigint()}`;await Sn(n,JSON.stringify(t,null,2),{mode:384});try{await sa(n,384),await En(n,e)}catch(r){try{await Fe(n,{force:!0})}catch{}throw r}}async function xn(t){let e=[];for(let n of await aa(t)){let r=/^([1-9]\d*)-[0-9a-f-]{36}\.json$/.exec(n);if(!r)continue;let s=Ce(t,n);try{process.kill(Number(r[1]),0)}catch(a){let o=a.code;if(o==="ESRCH"){await Fe(s,{force:!0});continue}if(o!=="EPERM")throw a}try{let a=JSON.parse(await wn(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 ca(t){let e=ia.parse(t),n=Ce(w(),"settings-cache-locks");await Tn(n,{recursive:!0,mode:448});let r=`${process.pid}-${oa()}.json`,s=Ce(n,r),a=`${s}.tmp`,o=performance.now()+3e3,i=async c=>{for(await Sn(a,String(c),{mode:384});;)try{await En(a,s);return}catch(u){let l=u.code;if(process.platform!=="win32"||l!=="EPERM"&&l!=="EBUSY"||performance.now()>=o)throw u;await vn(10)}};try{await i(0);let c=Math.max(0,...(await xn(n)).map(u=>u.ticket))+1;if(!Number.isSafeInteger(c))throw new Error("Invalid local settings lock");for(await i(c);;){if(!(await xn(n)).some(l=>l.id!==r&&(l.ticket===0||l.ticket<c||l.ticket===c&&l.id<r))){let l=await Oe(),y=$e.parse({...l,...e,filters:{...l.filters,...e.filters}});return await An(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 vn(10)}}finally{await Promise.all([Fe(s,{force:!0}),Fe(a,{force:!0})])}}async function ua(){try{await Fe(Ce(w(),At),{force:!0})}catch{}}var At,kn,ia,st=x(()=>{"use strict";bn();z();At="settings-cache.json",kn=$e.parse({}),ia=$e.partial().extend({filters:$e.shape.filters.removeDefault().partial().optional()})});var Mn={};ve(Mn,{STATIC_COMMAND_NAMES:()=>at,commandInstalled:()=>Pn,commandsInstallStatus:()=>va,installCommand:()=>_a,isFresh:()=>ha,pruneCommands:()=>ba,pruneSkills:()=>ya,readBundleRefresh:()=>xa,readSkill:()=>wa,recordBundleRefresh:()=>ka,writeSkill:()=>ga});import{chmod as Rt,mkdir as ot,readFile as Ue,writeFile as it,stat as $t,readdir as da,rm as Cn}from"node:fs/promises";import{existsSync as la}from"node:fs";import{dirname as fa}from"node:path";async function Nn(){try{let t=JSON.parse(await Ue(vt(),"utf8"));return Array.isArray(t)?t.filter(e=>typeof e=="string"):[]}catch{return[]}}async function Dn(t){try{await ot(w(),{recursive:!0}),await it(vt(),JSON.stringify(t),{mode:384})}catch{}}function In(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?Math.min(t,$n):$n}async function ha(t){try{let e=await $t(te(t)),n=Date.now()-e.mtimeMs;return n<ma&&n<=In()}catch{return!1}}async function ga(t,e){await ot(Je(),{recursive:!0}),await it(te(t),e,{mode:384}),await Rt(te(t),384)}async function ya(t){let e=new Set(t),n;try{n=await da(Je())}catch{return}for(let r of n){if(!r.endsWith(".md"))continue;let s=r.slice(0,-3);if(!e.has(s))try{await Cn(te(s))}catch{}}}async function _a(t,e){if(!process.env.TOKMIZER_CLAUDE_COMMANDS_DIR&&!la(fa(Ye())))return;await ot(Ye(),{recursive:!0});try{if(!(await Ue(ne(t),"utf8")).includes(On))return}catch{}await it(ne(t),e,{mode:384}),await Rt(ne(t),384);let n=await Nn();n.includes(t)||await Dn([...n,t])}async function ba(t){let e=new Set([...t,...at]),n=await Nn(),r=new Set([...n,...pa]);for(let s of r)if(!e.has(s))try{if(!(await Ue(ne(s),"utf8")).includes(On))continue;await Cn(ne(s))}catch{}await Dn(n.filter(s=>e.has(s)))}async function va(){let t=0;for(let e of at)await Pn(e)&&t++;return{installed:t,total:at.length}}async function Pn(t){try{return await $t(ne(t)),!0}catch{return!1}}async function ka(t){try{await ot(w(),{recursive:!0}),await it(Ge(),JSON.stringify({at:Date.now(),error:t}),{mode:384}),await Rt(Ge(),384)}catch{}}async function xa(){try{return JSON.parse(await Ue(Ge(),"utf8"))}catch{return null}}async function wa(t){try{let e=await $t(te(t));return Date.now()-e.mtimeMs>In()?null:await Ue(te(t),"utf8")}catch{return null}}var On,at,pa,ma,$n,jn=x(()=>{"use strict";z();On="managed-by: tokmizer",at=["tkr","tkr-gain","tkr-status","tkr-link","tkr-unlink","tkr-compression","tkr-telemetry","tkr-update","tkr-yolo"],pa=["power","tkr-reducer"];ma=3600*1e3,$n=10080*60*1e3});import{join as Sa}from"node:path";import{mkdir as Nc,readFile as Ta,writeFile as Dc,unlink as Ic,rename as Pc}from"node:fs/promises";function Aa(){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 ct(t){let e=Ra(t);try{let n=await Ta(Sa(e,Ea),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=Aa()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var Ea,Ct=x(()=>{"use strict";z();Ea="state.json"});function zn(t,e=Date.now()){return t.plan}function Ln(t,e=Date.now()){return t.bonusActive??!1}var Zn=x(()=>{"use strict"});function Fn(t,e=!1){return!0}var Un=x(()=>{"use strict"});var Vn={};ve(Vn,{reducerStillEntitled:()=>$a});async function $a(){let t=await ct();return t?Fn(zn(t),Ln(t)):!1}var Bn=x(()=>{"use strict";Ct();Zn();Un()});function Ot(t){let e=t;for(let[n,r]of Ca)e=e.replace(n,r);return e}var Ca,Hn=x(()=>{"use strict";Ca=[[/(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]"]]});function Kn(){let t=process.env.TOKMIZER_BASE_URL;if(t===Ne||t===`${Ne}/`||!t)return Ne;try{let e=new URL(t);return e.protocol==="http:"&&Oa.has(e.hostname)&&!e.username&&!e.password?t:Ne}catch{return Ne}}var Ne,Oa,Wn=x(()=>{"use strict";Ne="https://tokmizer.com",Oa=new Set(["127.0.0.1","localhost"])});import De from"node:os";import{createHash as Na,randomUUID as Da}from"node:crypto";import{readFile as Gn,writeFile as Jn,mkdir as Ia}from"node:fs/promises";async function Pa(){try{let n=(await Gn(Me(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await Ia(w(),{recursive:!0});let t=Da();try{return await Jn(Me(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await Gn(Me(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await Jn(Me(),t,{mode:384}),t}}function Nt(t){return Na("sha256").update(t).digest("hex")}function Ma(){let t=De.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 Yn(){let t=await Pa(),e=De.hostname(),n=De.platform(),r=De.release(),s=De.cpus(),a=s[0]?.model??"unknown",o=s.length,i=Nt(Ma()),c=Nt(De.userInfo().username),u=[e,n,r,a,String(o),i,c,t].join("|");return{fingerprint:Nt(u),installId:t,hostname:e,os:n,osVersion:r,cpuModel:a,cpuCores:o,macHash:i,usernameHash:c}}var qn=x(()=>{"use strict";z()});import{createRequire as ja}from"node:module";function La(){let t="0.9.64";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,Dt,It=x(()=>{"use strict";za=ja(import.meta.url);Dt=La()});var Qn=x(()=>{"use strict"});import{existsSync as Za,mkdirSync as eu,rmSync as tu,writeFileSync as nu}from"node:fs";import{join as Fa}from"node:path";function Ba(){return Fa(w(),"network-off")}function Ha(){let t=process.env.TOKMIZER_NETWORK;return t!==void 0&&Ua.has(t.trim().toLowerCase())}function Ve(){return Ha()?!1:!Za(Ba())}function Xn(){if(!Ve())throw new Pt}var Ua,Va,au,Pt,ut=x(()=>{"use strict";z();Ua=new Set(["0","off","false","no"]),Va="Network is off for Tokmizer. Turn it back on with: tkr network on",au=["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
- `),Pt=class extends Error{constructor(){super(Va),this.name="NetworkDisabledError"}}});import{createHmac as Ka,createPublicKey as uu,verify as du}from"node:crypto";function Wa(t,e,n){return Ka("sha256",n).update(`${e}.${t}`).digest("hex")}async function er(t,e,n,r){Xn();let s=Date.now(),a=n===void 0?"":JSON.stringify(n),o=r.signingSecret?Wa(a,s,r.signingSecret):"0".repeat(64),i={"content-type":"application/json","x-tokmizer-fingerprint":r.fingerprint,"x-tokmizer-install-id":r.installId,"x-tokmizer-sig":o,"x-tokmizer-ts":String(s),"x-tokmizer-plugin-version":Dt};r.bearer&&(i.authorization=`Bearer ${r.bearer}`);let c=r.timeoutMs??5e3,u=t!=="GET"&&t!=="DELETE",l={method:t,headers:i,signal:AbortSignal.timeout(c)};u&&(l.body=a);try{return await fetch(`${r.baseUrl}${e}`,l)}catch(y){let k=y.name;throw k==="TimeoutError"||k==="AbortError"?new dt("timeout",`${t} ${e} timed out after ${c}ms`):new dt("network",`${t} ${e} failed: ${y.message}`)}}var mu,dt,tr=x(()=>{"use strict";It();Qn();ut();mu=300*1e3,dt=class extends Error{constructor(n,r,s){super(r);this.kind=n;this.status=s;this.name="TransportError"}kind;status}});import{existsSync as Ga,mkdirSync as yu,writeFileSync as _u}from"node:fs";import{join as Ja}from"node:path";function qa(){return Ja(w(),Ya)}function nr(){return Ga(qa())}var Ya,rr=x(()=>{"use strict";z();st();ut();It();Ya="telemetry-notice-shown"});import{join as ft}from"node:path";import{appendFileSync as or,chmodSync as Qa,existsSync as Be,mkdirSync as zt,readFileSync as Ft,renameSync as Lt,rmdirSync as ir,statSync as Ut,unlinkSync as Ie,utimesSync as Xa,writeFileSync as Vt}from"node:fs";function Bt(t){return ft(He(),`${t}.lock`)}function to(t){let e=Bt(t);try{return zt(He(),{recursive:!0,mode:448}),zt(e),!0}catch{try{Date.now()-Ut(e).mtimeMs>eo&&ir(e)}catch{return!1}return!1}}function no(t){try{Xa(Bt(t),new Date,new Date)}catch{return}}function ro(t){try{ir(Bt(t))}catch{return}}function He(){return ft(w(),"spool")}function lt(t){return ft(He(),`${t}.jsonl`)}function pt(t){return ft(He(),`${t}.pending.jsonl`)}function cr(t,e){if(Ve())try{zt(He(),{recursive:!0,mode:448});let n=lt(t);if(Be(n)&&Ut(n).size>=Zt)return;or(n,JSON.stringify(e)+`
5
- `,{mode:384}),Qa(n,384)}catch{return}}function sr(t,e){or(t,Ft(e,"utf8"),{mode:384}),Vt(e,"",{mode:384});try{Ie(e)}catch{return}}function so(t){if(Ut(t).size<=Zt)return;let e=Ft(t,"utf8").split(`
6
- `).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>Zt)break;r.unshift(a)}Vt(t,r.length?r.join(`
3
+ var Kr=Object.defineProperty;var x=(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)Kr(t,n,{get:e[n],enumerable:!0})};import nn from"node:os";import{join as Y}from"node:path";function w(){return process.env.TOKMIZER_HOME||Y(nn.homedir(),".tokmizer")}function je(){return Y(w(),"install-id")}function Ye(){return Y(w(),"bundle-refresh.json")}function Je(){return Y(w(),"skills")}function ne(t){return Y(Je(),`${t}.md`)}function kt(){return Y(w(),"managed-commands.json")}function qe(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||Y(nn.homedir(),".claude","commands")}function re(t){return Y(qe(),`${t}.md`)}var z=x(()=>{"use strict"});var v,xt,p,F,ze=x(()=>{(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})(v||(v={}));(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(xt||(xt={}));p=v.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),F=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,Gr,O,Qe=x(()=>{ze();d=v.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"]),Gr=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),O=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,v.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()}};O.create=t=>new O(t)});var Yr,B,wt=x(()=>{Qe();ze();Yr=(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,v.jsonStringifyReplacer)}`;break;case d.unrecognized_keys:n=`Unrecognized key(s) in object: ${v.joinValues(t.keys,", ")}`;break;case d.invalid_union:n="Invalid input";break;case d.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${v.joinValues(t.options)}`;break;case d.invalid_enum_value:n=`Invalid enum value. Expected ${v.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}"`:v.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,v.assertNever(t)}return{message:n}},B=Yr});function Jr(t){sn=t}function xe(){return sn}var sn,Xe=x(()=>{wt();sn=B});function f(t,e){let n=xe(),r=Ze({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===B?void 0:B].filter(s=>!!s)});t.common.issues.push(r)}var Ze,qr,A,h,se,$,et,tt,J,we,St=x(()=>{Xe();wt();Ze=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}},qr=[];A=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"}),se=t=>({status:"dirty",value:t}),$=t=>({status:"valid",value:t}),et=t=>t.status==="aborted",tt=t=>t.status==="dirty",J=t=>t.status==="valid",we=t=>typeof Promise<"u"&&t instanceof Promise});var an=x(()=>{});var m,on=x(()=>{(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 ln(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 ms(t){return new RegExp(`^${ln(t)}$`)}function fn(t){let e=`${dn}T${ln(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 hs(t,e){return!!((e==="v4"||!e)&&is.test(t)||(e==="v6"||!e)&&us.test(t))}function gs(t,e){if(!rs.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 ys(t,e){return!!((e==="v4"||!e)&&cs.test(t)||(e==="v6"||!e)&&ds.test(t))}function _s(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 N){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=D.create(Se(r))}return new N({...t._def,shape:()=>e})}else return t instanceof W?new W({...t._def,type:Se(t.element)}):t instanceof D?D.create(Se(t.unwrap())):t instanceof V?V.create(Se(t.unwrap())):t instanceof U?U.create(t.items.map(e=>Se(e))):t}function Et(t,e){let n=F(t),r=F(e);if(t===e)return{valid:!0,data:t};if(n===p.object&&r===p.object){let s=v.objectKeys(e),a=v.objectKeys(t).filter(i=>s.indexOf(i)!==-1),o={...t,...e};for(let i of a){let c=Et(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=Et(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 pn(t,e){return new he({values:t,typeName:g.ZodEnum,..._(e)})}function un(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function mn(t,e={},n){return t?Q.create().superRefine((r,s)=>{let a=t(r);if(a instanceof Promise)return a.then(o=>{if(!o){let i=un(e,r),c=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:c})}});if(!a){let o=un(e,r),i=o.fatal??n??!0;s.addIssue({code:"custom",...o,fatal:i})}}):Q.create()}var I,cn,b,Qr,Xr,es,ts,ns,rs,ss,as,os,Tt,is,cs,us,ds,ls,fs,dn,ps,q,ae,oe,ie,ce,Te,ue,de,Q,H,Z,Ee,W,N,le,K,nt,fe,U,rt,Ae,$e,st,pe,me,he,ge,X,P,D,V,ye,_e,Re,bs,Le,Fe,be,vs,g,ks,hn,gn,xs,ws,yn,Ss,Ts,Es,As,$s,Rs,Cs,Os,Ns,Ds,Is,Ps,Ms,js,zs,Zs,Ls,Fs,Us,Vs,Bs,Ks,Hs,Ws,Gs,Ys,Js,qs,Qs,Xs,ea,ta,na,ra,_n=x(()=>{Qe();Xe();on();St();ze();I=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}},cn=(t,e)=>{if(J(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 O(t.common.issues);return this._error=n,this._error}}};b=class{get description(){return this._def.description}_getType(e){return F(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:F(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new A,ctx:{common:e.parent.common,data:e.data,parsedType:F(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:F(e)},s=this._parseSync({data:e,path:r.path,parent:r});return cn(r,s)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:F(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return J(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=>J(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:F(e)},s=this._parse({data:e,path:r.path,parent:r}),a=await(we(s)?s:Promise.resolve(s));return cn(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 P({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 D.create(this,this._def)}nullable(){return V.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return W.create(this)}promise(){return X.create(this,this._def)}or(e){return le.create([this,e],this._def)}and(e){return fe.create(this,e,this._def)}transform(e){return new P({..._(this._def),schema:this,typeName:g.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new ye({..._(this._def),innerType:this,defaultValue:n,typeName:g.ZodDefault})}brand(){return new Le({typeName:g.ZodBranded,type:this,..._(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new _e({..._(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 Fe.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,Xr=/^[0-9a-z]+$/,es=/^[0-9A-HJKMNP-TV-Z]{26}$/i,ts=/^[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,ns=/^[a-z0-9_-]{21}$/i,rs=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ss=/^[-+]?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)?)??$/,as=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,os="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",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])$/,cs=/^(?:(?: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])$/,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]))$/,ds=/^(([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])$/,ls=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,fs=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,dn="((\\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])))",ps=new RegExp(`^${dn}$`);q=class t extends b{_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 A,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")as.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")Tt||(Tt=new RegExp(os,"u")),Tt.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")ts.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")ns.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")Xr.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")es.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"?fn(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"?ps.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?ms(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"?ss.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"duration",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?hs(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"?gs(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"?ys(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"?ls.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?fs.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64url",code:d.invalid_string,message:a.message}),r.dirty()):v.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}};q.create=t=>new q({checks:[],typeName:g.ZodString,coerce:t?.coerce??!1,..._(t)});ae=class t extends b{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 A;for(let a of this._def.checks)a.kind==="int"?v.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"?_s(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()):v.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"&&v.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)}};ae.create=t=>new ae({checks:[],typeName:g.ZodNumber,coerce:t?.coerce||!1,..._(t)});oe=class t extends b{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 A;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()):v.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}};oe.create=t=>new oe({checks:[],typeName:g.ZodBigInt,coerce:t?.coerce??!1,..._(t)});ie=class extends b{_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 $(e.data)}};ie.create=t=>new ie({typeName:g.ZodBoolean,coerce:t?.coerce||!1,..._(t)});ce=class t extends b{_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 A,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()):v.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}};ce.create=t=>new ce({checks:[],coerce:t?.coerce||!1,typeName:g.ZodDate,..._(t)});Te=class extends b{_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 $(e.data)}};Te.create=t=>new Te({typeName:g.ZodSymbol,..._(t)});ue=class extends b{_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 $(e.data)}};ue.create=t=>new ue({typeName:g.ZodUndefined,..._(t)});de=class extends b{_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 $(e.data)}};de.create=t=>new de({typeName:g.ZodNull,..._(t)});Q=class extends b{constructor(){super(...arguments),this._any=!0}_parse(e){return $(e.data)}};Q.create=t=>new Q({typeName:g.ZodAny,..._(t)});H=class extends b{constructor(){super(...arguments),this._unknown=!0}_parse(e){return $(e.data)}};H.create=t=>new H({typeName:g.ZodUnknown,..._(t)});Z=class extends b{_parse(e){let n=this._getOrReturnCtx(e);return f(n,{code:d.invalid_type,expected:p.never,received:n.parsedType}),h}};Z.create=t=>new Z({typeName:g.ZodNever,..._(t)});Ee=class extends b{_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 $(e.data)}};Ee.create=t=>new Ee({typeName:g.ZodVoid,..._(t)});W=class t extends b{_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 I(n,o,n.path,i)))).then(o=>A.mergeArray(r,o));let a=[...n.data].map((o,i)=>s.type._parseSync(new I(n,o,n.path,i)));return A.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)}};W.create=(t,e)=>new W({type:t,minLength:null,maxLength:null,exactLength:null,typeName:g.ZodArray,..._(e)});N=class t extends b{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=v.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 Z&&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 I(s,y,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof Z){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 I(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=>A.mergeObjectSync(r,u)):A.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 v.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 v.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 v.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 v.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let a=this.shape[r];for(;a instanceof D;)a=a._def.innerType;n[r]=a}return new t({...this._def,shape:()=>n})}keyof(){return pn(v.objectKeys(this.shape))}};N.create=(t,e)=>new N({shape:()=>t,unknownKeys:"strip",catchall:Z.create(),typeName:g.ZodObject,..._(e)});N.strictCreate=(t,e)=>new N({shape:()=>t,unknownKeys:"strict",catchall:Z.create(),typeName:g.ZodObject,..._(e)});N.lazycreate=(t,e)=>new N({shape:t,unknownKeys:"strip",catchall:Z.create(),typeName:g.ZodObject,..._(e)});le=class extends b{_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 O(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 O(c));return f(n,{code:d.invalid_union,unionErrors:i}),h}}get options(){return this._def.options}};le.create=(t,e)=>new le({options:t,typeName:g.ZodUnion,..._(e)});K=t=>t instanceof pe?K(t.schema):t instanceof P?K(t.innerType()):t instanceof me?[t.value]:t instanceof he?t.options:t instanceof ge?v.objectValues(t.enum):t instanceof ye?K(t._def.innerType):t instanceof ue?[void 0]:t instanceof de?[null]:t instanceof D?[void 0,...K(t.unwrap())]:t instanceof V?[null,...K(t.unwrap())]:t instanceof Le||t instanceof be?K(t.unwrap()):t instanceof _e?K(t._def.innerType):[],nt=class t extends b{_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=K(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)})}};fe=class extends b{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),s=(a,o)=>{if(et(a)||et(o))return h;let i=Et(a.value,o.value);return i.valid?((tt(a)||tt(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}))}};fe.create=(t,e,n)=>new fe({left:t,right:e,typeName:g.ZodIntersection,..._(n)});U=class t extends b{_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 I(r,o,r.path,i)):null}).filter(o=>!!o);return r.common.async?Promise.all(a).then(o=>A.mergeArray(n,o)):A.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)})};rt=class t extends b{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 I(r,i,r.path,i)),value:o._parse(new I(r,r.data[i],r.path,i)),alwaysSet:i in r.data});return r.common.async?A.mergeObjectAsync(n,s):A.mergeObjectSync(n,s)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof b?new t({keyType:e,valueType:n,typeName:g.ZodRecord,..._(r)}):new t({keyType:q.create(),valueType:e,typeName:g.ZodRecord,..._(n)})}},Ae=class extends b{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 I(r,i,r.path,[u,"key"])),value:a._parse(new I(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 b{_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 I(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)});st=class t extends b{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 Ze({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xe(),B].filter(u=>!!u),issueData:{code:d.invalid_arguments,argumentsError:c}})}function s(i,c){return Ze({data:i,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xe(),B].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 X){let i=this;return $(async function(...c){let u=new O([]),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 $(function(...c){let u=i._def.args.safeParse(c,a);if(!u.success)throw new O([r(c,u.error)]);let l=Reflect.apply(o,this,u.data),y=i._def.returns.safeParse(l,a);if(!y.success)throw new O([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(H.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(H.create()),returns:n||H.create(),typeName:g.ZodFunction,..._(r)})}},pe=class extends b{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})}};pe.create=(t,e)=>new pe({getter:t,typeName:g.ZodLazy,..._(e)});me=class extends b{_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}};me.create=(t,e)=>new me({value:t,typeName:g.ZodLiteral,..._(e)});he=class t extends b{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return f(n,{expected:v.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 $(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})}};he.create=pn;ge=class extends b{_parse(e){let n=v.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==p.string&&r.parsedType!==p.number){let s=v.objectValues(n);return f(r,{expected:v.joinValues(s),received:r.parsedType,code:d.invalid_type}),h}if(this._cache||(this._cache=new Set(v.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=v.objectValues(n);return f(r,{received:r.data,code:d.invalid_enum_value,options:s}),h}return $(e.data)}get enum(){return this._def.values}};ge.create=(t,e)=>new ge({values:t,typeName:g.ZodNativeEnum,..._(e)});X=class extends b{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 $(r.then(s=>this._def.type.parseAsync(s,{path:n.path,errorMap:n.common.contextualErrorMap})))}};X.create=(t,e)=>new X({type:t,typeName:g.ZodPromise,..._(e)});P=class extends b{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"?se(c.value):n.value==="dirty"?se(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"?se(i.value):n.value==="dirty"?se(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(!J(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=>J(o)?Promise.resolve(s.transform(o.value,a)).then(i=>({status:n.value,value:i})):h);v.assertNever(s)}};P.create=(t,e,n)=>new P({schema:t,typeName:g.ZodEffects,effect:e,..._(n)});P.createWithPreprocess=(t,e,n)=>new P({schema:e,effect:{type:"preprocess",transform:t},typeName:g.ZodEffects,..._(n)});D=class extends b{_parse(e){return this._getType(e)===p.undefined?$(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};D.create=(t,e)=>new D({innerType:t,typeName:g.ZodOptional,..._(e)});V=class extends b{_parse(e){return this._getType(e)===p.null?$(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};V.create=(t,e)=>new V({innerType:t,typeName:g.ZodNullable,..._(e)});ye=class extends b{_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}};ye.create=(t,e)=>new ye({innerType:t,typeName:g.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._(e)});_e=class extends b{_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 O(r.common.issues)},input:r.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new O(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};_e.create=(t,e)=>new _e({innerType:t,typeName:g.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._(e)});Re=class extends b{_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)});bs=Symbol("zod_brand"),Le=class extends b{_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}},Fe=class t extends b{_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(),se(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 b{_parse(e){let n=this._def.innerType._parse(e),r=s=>(J(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:N.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={}));ks=(t,e={message:`Input not instance of ${t.name}`})=>mn(n=>n instanceof t,e),hn=q.create,gn=ae.create,xs=Re.create,ws=oe.create,yn=ie.create,Ss=ce.create,Ts=Te.create,Es=ue.create,As=de.create,$s=Q.create,Rs=H.create,Cs=Z.create,Os=Ee.create,Ns=W.create,Ds=N.create,Is=N.strictCreate,Ps=le.create,Ms=nt.create,js=fe.create,zs=U.create,Zs=rt.create,Ls=Ae.create,Fs=$e.create,Us=st.create,Vs=pe.create,Bs=me.create,Ks=he.create,Hs=ge.create,Ws=X.create,Gs=P.create,Ys=D.create,Js=V.create,qs=P.createWithPreprocess,Qs=Fe.create,Xs=()=>hn().optional(),ea=()=>gn().optional(),ta=()=>yn().optional(),na={string:(t=>q.create({...t,coerce:!0})),number:(t=>ae.create({...t,coerce:!0})),boolean:(t=>ie.create({...t,coerce:!0})),bigint:(t=>oe.create({...t,coerce:!0})),date:(t=>ce.create({...t,coerce:!0}))},ra=h});var M={};ke(M,{BRAND:()=>bs,DIRTY:()=>se,EMPTY_PATH:()=>qr,INVALID:()=>h,NEVER:()=>ra,OK:()=>$,ParseStatus:()=>A,Schema:()=>b,ZodAny:()=>Q,ZodArray:()=>W,ZodBigInt:()=>oe,ZodBoolean:()=>ie,ZodBranded:()=>Le,ZodCatch:()=>_e,ZodDate:()=>ce,ZodDefault:()=>ye,ZodDiscriminatedUnion:()=>nt,ZodEffects:()=>P,ZodEnum:()=>he,ZodError:()=>O,ZodFirstPartyTypeKind:()=>g,ZodFunction:()=>st,ZodIntersection:()=>fe,ZodIssueCode:()=>d,ZodLazy:()=>pe,ZodLiteral:()=>me,ZodMap:()=>Ae,ZodNaN:()=>Re,ZodNativeEnum:()=>ge,ZodNever:()=>Z,ZodNull:()=>de,ZodNullable:()=>V,ZodNumber:()=>ae,ZodObject:()=>N,ZodOptional:()=>D,ZodParsedType:()=>p,ZodPipeline:()=>Fe,ZodPromise:()=>X,ZodReadonly:()=>be,ZodRecord:()=>rt,ZodSchema:()=>b,ZodSet:()=>$e,ZodString:()=>q,ZodSymbol:()=>Te,ZodTransformer:()=>P,ZodTuple:()=>U,ZodType:()=>b,ZodUndefined:()=>ue,ZodUnion:()=>le,ZodUnknown:()=>H,ZodVoid:()=>Ee,addIssueToContext:()=>f,any:()=>$s,array:()=>Ns,bigint:()=>ws,boolean:()=>yn,coerce:()=>na,custom:()=>mn,date:()=>Ss,datetimeRegex:()=>fn,defaultErrorMap:()=>B,discriminatedUnion:()=>Ms,effect:()=>Gs,enum:()=>Ks,function:()=>Us,getErrorMap:()=>xe,getParsedType:()=>F,instanceof:()=>ks,intersection:()=>js,isAborted:()=>et,isAsync:()=>we,isDirty:()=>tt,isValid:()=>J,late:()=>vs,lazy:()=>Vs,literal:()=>Bs,makeIssue:()=>Ze,map:()=>Ls,nan:()=>xs,nativeEnum:()=>Hs,never:()=>Cs,null:()=>As,nullable:()=>Js,number:()=>gn,object:()=>Ds,objectUtil:()=>xt,oboolean:()=>ta,onumber:()=>ea,optional:()=>Ys,ostring:()=>Xs,pipeline:()=>Qs,preprocess:()=>qs,promise:()=>Ws,quotelessJson:()=>Gr,record:()=>Zs,set:()=>Fs,setErrorMap:()=>Jr,strictObject:()=>Is,string:()=>hn,symbol:()=>Ts,transformer:()=>Gs,tuple:()=>zs,undefined:()=>Es,union:()=>Ps,unknown:()=>Rs,util:()=>v,void:()=>Os});var At=x(()=>{Xe();St();an();ze();_n();Qe()});var bn=x(()=>{At();At()});var sa,aa,Ce,vn=x(()=>{"use strict";bn();sa=M.enum(["normal","compact","minimal"]),aa=M.enum(["off","light","balanced","max"]),Ce=M.object({enabled:M.boolean().default(!0),telemetryOptIn:M.boolean().default(!0),outputVerbosity:sa.default("compact"),reducer:aa.default("off"),filters:M.object({enableAll:M.boolean().default(!0),disabled:M.array(M.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})})});var Rn={};ke(Rn,{clearSettingsCache:()=>la,loadSettingsCache:()=>Ne,saveSettingsCache:()=>$n,updateSettingsCache:()=>da});import{readFile as Sn,writeFile as Tn,mkdir as En,chmod as oa,rm as Ue,rename as An,readdir as ia}from"node:fs/promises";import{randomUUID as ca}from"node:crypto";import{join as Oe}from"node:path";import{setTimeout as kn}from"node:timers/promises";async function Ne(){let t=null;try{let e=JSON.parse(await Sn(Oe(w(),$t),"utf8"));typeof e=="object"&&e!==null&&!Array.isArray(e)&&(t=e)}catch{}return t?Ce.parse({...xn,...t}):xn}async function $n(t){await En(w(),{recursive:!0});let e=Oe(w(),$t),n=`${e}.tmp-${process.pid}-${process.hrtime.bigint()}`;await Tn(n,JSON.stringify(t,null,2),{mode:384});try{await oa(n,384),await An(n,e)}catch(r){try{await Ue(n,{force:!0})}catch{}throw r}}async function wn(t){let e=[];for(let n of await ia(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 Sn(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 da(t){let e=ua.parse(t),n=Oe(w(),"settings-cache-locks");await En(n,{recursive:!0,mode:448});let r=`${process.pid}-${ca()}.json`,s=Oe(n,r),a=`${s}.tmp`,o=performance.now()+3e3,i=async c=>{for(await Tn(a,String(c),{mode:384});;)try{await An(a,s);return}catch(u){let l=u.code;if(process.platform!=="win32"||l!=="EPERM"&&l!=="EBUSY"||performance.now()>=o)throw u;await kn(10)}};try{await i(0);let c=Math.max(0,...(await wn(n)).map(u=>u.ticket))+1;if(!Number.isSafeInteger(c))throw new Error("Invalid local settings lock");for(await i(c);;){if(!(await wn(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 $n(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 kn(10)}}finally{await Promise.all([Ue(s,{force:!0}),Ue(a,{force:!0})])}}async function la(){try{await Ue(Oe(w(),$t),{force:!0})}catch{}}var $t,xn,ua,at=x(()=>{"use strict";vn();z();$t="settings-cache.json",xn=Ce.parse({}),ua=Ce.partial().extend({filters:Ce.shape.filters.removeDefault().partial().optional()})});var jn={};ke(jn,{STATIC_COMMAND_NAMES:()=>ot,commandInstalled:()=>Mn,commandsInstallStatus:()=>xa,installCommand:()=>va,isFresh:()=>ya,pruneCommands:()=>ka,pruneSkills:()=>ba,readBundleRefresh:()=>Sa,readSkill:()=>Ta,recordBundleRefresh:()=>wa,writeSkill:()=>_a});import{chmod as Rt,mkdir as it,readFile as Ve,writeFile as ct,stat as Ct,readdir as fa,rm as On}from"node:fs/promises";import{existsSync as pa}from"node:fs";import{dirname as ma}from"node:path";async function Dn(){try{let t=JSON.parse(await Ve(kt(),"utf8"));return Array.isArray(t)?t.filter(e=>typeof e=="string"):[]}catch{return[]}}async function In(t){try{await it(w(),{recursive:!0}),await ct(kt(),JSON.stringify(t),{mode:384})}catch{}}function Pn(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?Math.min(t,Cn):Cn}async function ya(t){try{let e=await Ct(ne(t)),n=Date.now()-e.mtimeMs;return n<ga&&n<=Pn()}catch{return!1}}async function _a(t,e){await it(Je(),{recursive:!0}),await ct(ne(t),e,{mode:384}),await Rt(ne(t),384)}async function ba(t){let e=new Set(t),n;try{n=await fa(Je())}catch{return}for(let r of n){if(!r.endsWith(".md"))continue;let s=r.slice(0,-3);if(!e.has(s))try{await On(ne(s))}catch{}}}async function va(t,e){if(!process.env.TOKMIZER_CLAUDE_COMMANDS_DIR&&!pa(ma(qe())))return;await it(qe(),{recursive:!0});try{if(!(await Ve(re(t),"utf8")).includes(Nn))return}catch{}await ct(re(t),e,{mode:384}),await Rt(re(t),384);let n=await Dn();n.includes(t)||await In([...n,t])}async function ka(t){let e=new Set([...t,...ot]),n=await Dn(),r=new Set([...n,...ha]);for(let s of r)if(!e.has(s))try{if(!(await Ve(re(s),"utf8")).includes(Nn))continue;await On(re(s))}catch{}await In(n.filter(s=>e.has(s)))}async function xa(){let t=0;for(let e of ot)await Mn(e)&&t++;return{installed:t,total:ot.length}}async function Mn(t){try{return await Ct(re(t)),!0}catch{return!1}}async function wa(t){try{await it(w(),{recursive:!0}),await ct(Ye(),JSON.stringify({at:Date.now(),error:t}),{mode:384}),await Rt(Ye(),384)}catch{}}async function Sa(){try{return JSON.parse(await Ve(Ye(),"utf8"))}catch{return null}}async function Ta(t){try{let e=await Ct(ne(t));return Date.now()-e.mtimeMs>Pn()?null:await Ve(ne(t),"utf8")}catch{return null}}var Nn,ot,ha,ga,Cn,zn=x(()=>{"use strict";z();Nn="managed-by: tokmizer",ot=["tkr","tkr-gain","tkr-status","tkr-link","tkr-unlink","tkr-compression","tkr-telemetry","tkr-update","tkr-yolo"],ha=["power","tkr-reducer"];ga=3600*1e3,Cn=10080*60*1e3});import{join as Ea}from"node:path";import{mkdir as Mc,readFile as Aa,writeFile as jc,unlink as zc,rename as Zc}from"node:fs/promises";function Ra(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function Ca(t){return t?.dir??w()}async function ut(t){let e=Ca(t);try{let n=await Aa(Ea(e,$a),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=Ra()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var $a,Ot=x(()=>{"use strict";z();$a="state.json"});function Zn(t,e=Date.now()){return t.plan}function Ln(t,e=Date.now()){return t.bonusActive??!1}var Fn=x(()=>{"use strict"});function Un(t,e=!1){return!0}var Vn=x(()=>{"use strict"});var Bn={};ke(Bn,{reducerStillEntitled:()=>Oa});async function Oa(){let t=await ut();return t?Un(Zn(t),Ln(t)):!1}var Kn=x(()=>{"use strict";Ot();Fn();Vn()});function Nt(t){let e=t;for(let[n,r]of Na)e=e.replace(n,r);return e}var Na,G,Wc,Hn=x(()=>{"use strict";Na=[[/(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]"]];G="[tkr: secret masked]",Wc=[[/(-----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${G}`],[/(?<![A-Za-z0-9_])(gh[pousr])_[A-Za-z0-9]{36,255}(?![A-Za-z0-9])/g,`$1_${G}`],[/(?<![A-Za-z0-9_])github_pat_[A-Za-z0-9_]{22,255}/g,`github_pat_${G}`],[/(?<![A-Za-z0-9_])npm_[A-Za-z0-9]{36}(?![A-Za-z0-9])/g,`npm_${G}`],[/(?<![A-Z0-9])(AKIA|ASIA)[A-Z0-9]{16}(?![A-Z0-9])/g,`$1${G}`],[/(?<![A-Za-z0-9])(xox[abpors]-)[A-Za-z0-9-]{10,}/g,`$1${G}`],[/(?<![A-Za-z0-9])((?:sk|rk)_live_)[A-Za-z0-9]{16,}/g,`$1${G}`],[/(authorization["']?\s*[:=]\s*["']?bearer\s+)[A-Za-z0-9._~+/=-]{8,}/gi,`$1${G}`],[/(?<![A-Za-z0-9+.-])([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^\s:/@]*:)[^\s@/]+(@[^\s@/]+)/g,`$1${G}$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:"&&Da.has(e.hostname)&&!e.username&&!e.password?t:De}catch{return De}}var De,Da,Gn=x(()=>{"use strict";De="https://tokmizer.com",Da=new Set(["127.0.0.1","localhost"])});import Ie from"node:os";import{createHash as Ia,randomUUID as Pa}from"node:crypto";import{readFile as Yn,writeFile as Jn,mkdir as Ma}from"node:fs/promises";async function ja(){try{let n=(await Yn(je(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await Ma(w(),{recursive:!0});let t=Pa();try{return await Jn(je(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await Yn(je(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await Jn(je(),t,{mode:384}),t}}function Dt(t){return Ia("sha256").update(t).digest("hex")}function za(){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 ja(),e=Ie.hostname(),n=Ie.platform(),r=Ie.release(),s=Ie.cpus(),a=s[0]?.model??"unknown",o=s.length,i=Dt(za()),c=Dt(Ie.userInfo().username),u=[e,n,r,a,String(o),i,c,t].join("|");return{fingerprint:Dt(u),installId:t,hostname:e,os:n,osVersion:r,cpuModel:a,cpuCores:o,macHash:i,usernameHash:c}}var Qn=x(()=>{"use strict";z()});import{createRequire as Za}from"node:module";function Fa(){let t="0.9.66";if(t)return t;for(let e of["../package.json","../../package.json"])try{let n=La(e).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}var La,It,Pt=x(()=>{"use strict";La=Za(import.meta.url);It=Fa()});var Xn=x(()=>{"use strict"});import{existsSync as Ua,mkdirSync as au,rmSync as ou,writeFileSync as iu}from"node:fs";import{join as Va}from"node:path";function Ha(){return Va(w(),"network-off")}function Wa(){let t=process.env.TOKMIZER_NETWORK;return t!==void 0&&Ba.has(t.trim().toLowerCase())}function Be(){return Wa()?!1:!Ua(Ha())}function er(){if(!Be())throw new Mt}var Ba,Ka,du,Mt,dt=x(()=>{"use strict";z();Ba=new Set(["0","off","false","no"]),Ka="Network is off for Tokmizer. Turn it back on with: tkr network on",du=["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
+ `),Mt=class extends Error{constructor(){super(Ka),this.name="NetworkDisabledError"}}});import{createHmac as Ga,createPublicKey as mu,verify as hu}from"node:crypto";function Ya(t,e,n,r,s){return Ga("sha256",s).update(`${t}
5
+ ${e}
6
+ ${r}
7
+ ${n}`).digest("hex")}function Ja(t){let e=new URL(t);return`${e.pathname}${e.search}`}async function tr(t,e,n,r){er();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":It};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);try{return await fetch(o,y)}catch(k){let T=k.name;throw T==="TimeoutError"||T==="AbortError"?new lt("timeout",`${t} ${e} timed out after ${u}ms`):new lt("network",`${t} ${e} failed: ${k.message}`)}}var bu,vu,lt,nr=x(()=>{"use strict";Pt();Xn();dt();bu=300*1e3,vu=120*1e3,lt=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 wu,writeFileSync as Su}from"node:fs";import{join as Qa}from"node:path";function eo(){return Qa(w(),Xa)}function rr(){return qa(eo())}var Xa,sr=x(()=>{"use strict";z();at();dt();Pt();Xa="telemetry-notice-shown"});import{join as pt}from"node:path";import{appendFileSync as ir,chmodSync as to,existsSync as Ke,mkdirSync as Zt,readFileSync as Ut,renameSync as Lt,rmdirSync as cr,statSync as Vt,unlinkSync as Pe,utimesSync as no,writeFileSync as Bt}from"node:fs";function Kt(t){return pt(He(),`${t}.lock`)}function so(t){let e=Kt(t);try{return Zt(He(),{recursive:!0,mode:448}),Zt(e),!0}catch{try{Date.now()-Vt(e).mtimeMs>ro&&cr(e)}catch{return!1}return!1}}function ao(t){try{no(Kt(t),new Date,new Date)}catch{return}}function oo(t){try{cr(Kt(t))}catch{return}}function He(){return pt(w(),"spool")}function ft(t){return pt(He(),`${t}.jsonl`)}function mt(t){return pt(He(),`${t}.pending.jsonl`)}function ur(t,e){if(Be())try{Zt(He(),{recursive:!0,mode:448});let n=ft(t);if(Ke(n)&&Vt(n).size>=Ft)return;ir(n,JSON.stringify(e)+`
8
+ `,{mode:384}),to(n,384)}catch{return}}function ar(t,e){ir(t,Ut(e,"utf8"),{mode:384}),Bt(e,"",{mode:384});try{Pe(e)}catch{return}}function io(t){if(Vt(t).size<=Ft)return;let e=Ut(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>Ft)break;r.unshift(a)}Bt(t,r.length?r.join(`
7
10
  `)+`
8
- `:"",{mode:384})}function ao(t){try{let e=pt(t),n=lt(t),r=`${n}.merging`;if(Be(r)&&sr(e,r),Be(e))Be(n)&&(Lt(n,r),sr(e,r));else{if(!Be(n))return[];Lt(n,e)}so(e);let s=[];for(let a of Ft(e,"utf8").split(`
9
- `))if(a.trim())try{s.push(JSON.parse(a))}catch{continue}return s.length===0?(Ie(e),[]):s}catch{return[]}}function ur(t){try{Ie(pt(t))}catch{return}}function oo(t,e){if(e.length===0){ur(t);return}let n=pt(t),r=`${n}.tmp`;Vt(r,e.map(s=>JSON.stringify(s)).join(`
11
+ `:"",{mode:384})}function co(t){try{let e=mt(t),n=ft(t),r=`${n}.merging`;if(Ke(r)&&ar(e,r),Ke(e))Ke(n)&&(Lt(n,r),ar(e,r));else{if(!Ke(n))return[];Lt(n,e)}io(e);let s=[];for(let a of Ut(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 dr(t){try{Pe(mt(t))}catch{return}}function uo(t,e){if(e.length===0){dr(t);return}let n=mt(t),r=`${n}.tmp`;Bt(r,e.map(s=>JSON.stringify(s)).join(`
10
13
  `)+`
11
- `,{mode:384}),Lt(r,n)}async function dr(t,e,n={}){if(!Ve()||jt.has(t)||!to(t))return"fail";jt.add(t);try{if(!(await Oe()).telemetryOptIn)return ar(t),"empty";if(!nr())return"fail";let r=ao(t);if(r.length===0)return"empty";let s=await ct();if(!s)return"fail";if(n.requirePro&&s.plan!=="pro")return ur(t),"ok";let a=n.baseUrl??Kn(),o=await Yn();for(let i=0;i<r.length;i+=Mt){if(!(await Oe()).telemetryOptIn)return ar(t),"empty";no(t);let c=await er("POST",e,{events:r.slice(i,i+Mt),...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";oo(t,r.slice(i+Mt))}return"ok"}catch{return"fail"}finally{jt.delete(t),ro(t)}}function ar(t){try{Ie(lt(t))}catch{}try{Ie(`${lt(t)}.merging`)}catch{}try{Ie(pt(t))}catch{return}}var Zt,Mt,eo,jt,lr=x(()=>{"use strict";Wn();z();Ct();qn();tr();st();ut();rr();Zt=512*1024,Mt=100,eo=12e4,jt=new Set});var hr={};ve(hr,{commandName:()=>mr,flushTelemetry:()=>vo,recordTelemetry:()=>bo});function yo(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 mo.has(n.toLowerCase())?n:""}function _o(t,e,n){let r=0;for(;t==="git"&&r<n.length&&n[r].startsWith("-");)r+=go.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return e.has(s)?`${t} ${s}`:t}function fr(t){let e=t.toLowerCase();return e.startsWith("git")||lo.has(e)}function mr(t){let e=t.trim().split(/\s+/).filter(c=>c.length>0),n=0;for(;n<e.length&&uo.test(e[n]??"");)n+=1;let r=yo(e[n]??"");if(!r||!io.test(r)||r.length>po)return"";let s=ho.get(r.toLowerCase());if(s)return _o(r.toLowerCase(),s,e.slice(n+1));if(fr(r)||fo.test(r)||Ot(r)!==r)return"";let a=e[n+1];return a&&fr(a)?"":(a&&pr.has(r.toLowerCase())&&co.test(a)?`${r} ${a}`:r).slice(0,64)}async function bo(t){if(!t.telemetryOptIn)return;let e=mr(t.cmd),n=e&&Ot(e)===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 vo(t){return dr("telemetry","/api/v1/telemetry",{baseUrl:t,consent:!0})}var io,co,uo,lo,fo,po,pr,mo,ho,go,gr=x(()=>{"use strict";Hn();lr();io=/^[a-z0-9][a-z0-9._-]*$/i,co=/^[a-z][a-z-]+$/,uo=/^[A-Za-z_][A-Za-z0-9_]*=/,lo=new Set(["gh","glab","gup","hub","gist"]),fo=/^(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,po=24,pr=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"]),mo=new Set([...pr,"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"]),ho=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"])]]),go=new Set(["-C","-c"])});function yr(t){return t?ko[t]??"anthropic":"anthropic"}var ko,_r=x(()=>{"use strict";ko={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});var Zr={};ve(Zr,{OVERSIZED_SHELL_BYTES:()=>Jt,QUOTA_TIERS:()=>Ke,clearStats:()=>Ho,countedSaving:()=>Go,coverageSummary:()=>Xo,formatTokens:()=>T,monthlyProjectionUsd:()=>Yo,normalizeProject:()=>Pr,paybackTarget:()=>Qo,projectLabel:()=>ki,quotaEstimate:()=>di,readAgentDaily:()=>mi,readDaily:()=>ai,readGain:()=>ri,readHistory:()=>_i,recordStat:()=>Ko,renderByRule:()=>ci,renderCsv:()=>hi,renderDaily:()=>fi,renderFallbacks:()=>ui,renderGain:()=>si,renderGraph:()=>yi,renderHistory:()=>vi,renderQuota:()=>li,resolveSinceDays:()=>zr,rotateStats:()=>Ir,statCmdLabel:()=>Bo,statOutcome:()=>Wo,withInstallAge:()=>Jo});import{readFile as Tr,rm as br}from"node:fs/promises";import{appendFileSync as xo,chmodSync as wo,mkdirSync as So,readFileSync as Er,realpathSync as To,renameSync as Ar,rmSync as Rr,statSync as $r,writeFileSync as Ht}from"node:fs";import{basename as Kt,dirname as Cr,join as mt,resolve as Eo,sep as Ao}from"node:path";function ht(){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 Or(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"&&Oo.has(n.o)?{o:n.o}:{}}}catch{return null}}function Do(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),n.r+=e.r,n.f+=e.f,t.cmds[e.c]=n}function Io(t){return t.s==="b"?`b:${(t.c??"").split(" ")[0]||"other"}`:t.s?.startsWith("u:")?t.s:t.o==="n"?"n":"?"}function Po(t,e){let n=Io(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 Nr(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>Jt){t.ox+=1;return}if(Do(t,e),e.k==="restore"?(t.rn+=1,t.rb+=e.f):Po(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=yr(e.h),r=t.prov[n]??{r:0,f:0};r.r+=e.r,r.f+=e.f,t.prov[n]=r}}function Mo(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.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 X(t){let e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function Yt(t){return mt(Cr(t),$o)}function Dr(t){let e=Yt(t),n;try{n=Er(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]={...ht(),...o});return s}catch{try{Ar(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function kr(t,e){let n=`${t}.tmp-${process.pid}`;Ht(n,e,{mode:384}),Ar(n,t)}function jo(t){try{return Ht(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-$r(t).mtimeMs<Co?!1:(Rr(t,{force:!0}),Ht(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Ir(t,e=vr,n=vr/2){try{if($r(t).size<=e)return}catch{return}let r=`${t}.lock`;if(jo(r))try{let s=Er(t,"utf8").split(`
12
- `).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=Dr(t);for(let u of s.slice(0,a)){let l=Or(u);if(!l)continue;let y=X(l.t),k=i[y]??ht();Nr(k,l),i[y]=k}let c=s.slice(a);kr(t,c.length?`${c.join(`
14
+ `,{mode:384}),Lt(r,n)}async function lr(t,e,n={}){if(!Be()||zt.has(t)||!so(t))return"fail";zt.add(t);try{if(!(await Ne()).telemetryOptIn)return or(t),"empty";if(!rr())return"fail";let r=co(t);if(r.length===0)return"empty";let s=await ut();if(!s)return"fail";if(n.requirePro&&s.plan!=="pro")return dr(t),"ok";let a=n.baseUrl??Wn(),o=await qn();for(let i=0;i<r.length;i+=jt){if(!(await Ne()).telemetryOptIn)return or(t),"empty";ao(t);let c=await tr("POST",e,{events:r.slice(i,i+jt),...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";uo(t,r.slice(i+jt))}return"ok"}catch{return"fail"}finally{zt.delete(t),oo(t)}}function or(t){try{Pe(ft(t))}catch{}try{Pe(`${ft(t)}.merging`)}catch{}try{Pe(mt(t))}catch{return}}var Ft,jt,ro,zt,fr=x(()=>{"use strict";Gn();z();Ot();Qn();nr();at();dt();sr();Ft=512*1024,jt=100,ro=12e4,zt=new Set});var yr={};ke(yr,{commandName:()=>gr,flushTelemetry:()=>So,recordTelemetry:()=>wo});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 hr.has(n.toLowerCase())?n:""}function ko(t,e,n){let r=0;for(;t==="git"&&r<n.length&&n[r].startsWith("-");)r+=bo.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")||mo.has(e)}function gr(t){let e=t.trim().split(/\s+/).filter(c=>c.length>0),n=0;for(;n<e.length&&po.test(e[n]??"");)n+=1;let r=vo(e[n]??"");if(!r||!lo.test(r)||r.length>go)return"";let s=_o.get(r.toLowerCase());if(s)return ko(r.toLowerCase(),s,e.slice(n+1));if(pr(r)||ho.test(r)||Nt(r)!==r)return"";let a=e[n+1];return a&&pr(a)?"":(a&&mr.has(r.toLowerCase())&&fo.test(a)?`${r} ${a}`:r).slice(0,64)}function xo(t){return yo.has((t.split(" ")[0]??"").toLowerCase())}async function wo(t){if(!t.telemetryOptIn)return;let e=gr(t.cmd),n=e&&Nt(e)===e&&xo(e)?e:"other",r=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";ur("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 So(t){return lr("telemetry","/api/v1/telemetry",{baseUrl:t,consent:!0})}var lo,fo,po,mo,ho,go,mr,hr,yo,_o,bo,_r=x(()=>{"use strict";Hn();fr();lo=/^[a-z0-9][a-z0-9._-]*$/i,fo=/^[a-z][a-z-]+$/,po=/^[A-Za-z_][A-Za-z0-9_]*=/,mo=new Set(["gh","glab","gup","hub","gist"]),ho=/^(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,go=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"]),yo=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"]),_o=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"])]]),bo=new Set(["-C","-c"])});function br(t){return t?To[t]??"anthropic":"anthropic"}var To,vr=x(()=>{"use strict";To={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});var Ur={};ke(Ur,{OVERSIZED_SHELL_BYTES:()=>Jt,QUOTA_TIERS:()=>We,clearStats:()=>Yo,countedSaving:()=>Qo,coverageSummary:()=>ri,formatTokens:()=>E,monthlyProjectionUsd:()=>ei,normalizeProject:()=>jr,paybackTarget:()=>ni,projectLabel:()=>Ti,quotaEstimate:()=>mi,readAgentDaily:()=>_i,readDaily:()=>ui,readGain:()=>ii,readHistory:()=>xi,recordStat:()=>Jo,renderByRule:()=>fi,renderCsv:()=>bi,renderDaily:()=>gi,renderFallbacks:()=>pi,renderGain:()=>ci,renderGraph:()=>ki,renderHistory:()=>Si,renderQuota:()=>hi,resolveSinceDays:()=>Lr,rotateStats:()=>Mr,statCmdLabel:()=>Go,statOutcome:()=>qo,withInstallAge:()=>Xo});import{readFile as Ar,rm as kr}from"node:fs/promises";import{appendFileSync as Eo,chmodSync as Ao,mkdirSync as $o,readFileSync as $r,realpathSync as Ro,renameSync as Rr,rmSync as Cr,statSync as Or,writeFileSync as Ht}from"node:fs";import{basename as Wt,dirname as Nr,join as ht,resolve as Co,sep as Oo}from"node:path";function gt(){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 Dr(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"&&Po.has(n.o)?{o:n.o}:{}}}catch{return null}}function jo(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),n.r+=e.r,n.f+=e.f,t.cmds[e.c]=n}function zo(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=zo(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 Ir(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>Jt){t.ox+=1;return}if(jo(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=br(e.h),r=t.prov[n]??{r:0,f:0};r.r+=e.r,r.f+=e.f,t.prov[n]=r}}function Lo(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.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 ee(t){let e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function qt(t){return ht(Nr(t),Do)}function Pr(t){let e=qt(t),n;try{n=$r(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]={...gt(),...o});return s}catch{try{Rr(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function wr(t,e){let n=`${t}.tmp-${process.pid}`;Ht(n,e,{mode:384}),Rr(n,t)}function Fo(t){try{return Ht(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-Or(t).mtimeMs<Io?!1:(Cr(t,{force:!0}),Ht(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Mr(t,e=xr,n=xr/2){try{if(Or(t).size<=e)return}catch{return}let r=`${t}.lock`;if(Fo(r))try{let s=$r(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=Pr(t);for(let u of s.slice(0,a)){let l=Dr(u);if(!l)continue;let y=ee(l.t),k=i[y]??gt();Ir(k,l),i[y]=k}let c=s.slice(a);wr(t,c.length?`${c.join(`
13
16
  `)}
14
- `:""),kr(Yt(t),JSON.stringify({v:1,days:i}))}catch{return}finally{Rr(r,{force:!0})}}function Pr(t){let e=Eo(t),n=e,r="";for(;;){try{return mt(To(n),r)}catch{}let s=Cr(n);if(s===n)return e;r=r?mt(Kt(n),r):Kt(n),n=s}}function zo(t,e){return t.p!=null&&(t.p===e||t.p.startsWith(e+Ao))}async function Mr(t,e,n){let r="";try{r=await Tr(t,"utf8")}catch{}let s=[];for(let a of r.split(`
15
- `)){let o=Or(a);!o||o.t<e||n!=null&&!zo(o,n)||s.push(o)}return s}async function qt(t,e,n){let r=e>0?X(e):"",s=new Map;if(n==null)for(let[a,o]of Object.entries(Dr(t)))a>=r&&s.set(a,o);for(let a of await Mr(t,e,n)){let o=X(a.t),i=s.get(o)??ht();Nr(i,a),s.set(o,i)}return s}function xr(t){return t.length===0||t[0]==="cd"||t.every(e=>jr.test(e))}function Vo(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(`|;&<>
16
- `.includes(o)){if(a(),xr(e)){e=[];continue}return e}n+=o,r=!0}return a(),xr(e)?[]:e}function Bo(t){let e=Vo(t).map(i=>i.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<e.length;){let i=e[n];if(jr.test(i)){n+=1;continue}if(Lo.has(i)){for(n+=1;n<e.length;){let c=e[n];if(c.startsWith("-")){n+=Zo.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("-")&&Fo.test(a)&&Uo.has(s.toLowerCase())?`${s} ${a}`:s).slice(0,24)}function Pe(){return mt(w(),Ro)}async function Ho(t=Pe()){try{let n=(await Tr(t,"utf8")).split(`
17
- `).filter(r=>r.trim()!=="").length;return await br(t,{force:!0}),await br(Yt(t),{force:!0}),n}catch{return 0}}function Ko(t,e,n=Pe(),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?Pr(i):"",E=k&&k.length<=No?`,"p":${JSON.stringify(k)}`:"",j=c.s?`,"s":${JSON.stringify(c.s.slice(0,66))}`:"",ee=c.o?`,"o":${JSON.stringify(c.o)}`:"",be=`{"t":${Math.floor(Date.now()/1e3)},"r":${t},"f":${e}${r?',"m":1':""}${u}${l}${y}${E}${j}${ee}}
18
- `;try{So(w(),{recursive:!0,mode:448}),xo(n,be,{mode:384}),wo(n,384),Ir(n)}catch{return}}function Wo(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 Go(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 Jo(t,e,n){return{...t,sinceDays:zr(e,n,t.sinceDays)}}function Yo(t,e,n){return t<=0||e<=0||n<=0?0:t/e*30/1e6*n}function Qo(t){return t==="pro"?{priceUsd:qo,label:"Pro plan",upsell:!1}:t==="smart"?{priceUsd:wr,label:"Smart plan",upsell:!1}:{priceUsd:wr,label:"Smart plan",upsell:!0}}function S(t){return Math.ceil(t/4)}function Xo(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 ei(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=S(a.r),i=o-S(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 ni(t){return Object.entries(t.fb).map(([e,n])=>{let[r,s]=e.split(" ");return{cmd:s||"other",reason:ti[r]??"no-rule",count:n.n,tokens:S(n.r)}}).sort((e,n)=>n.tokens-e.tokens||n.count-e.count)}async function ri(t=Pe(),e=0,n){let r=ht();for(let Z of(await qt(t,e,n)).values())Mo(r,Z);let s=S(r.r),a=S(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,S(r.mr)-S(r.mf)),y={};for(let[Z,$]of Object.entries(r.prov))y[Z]=Math.max(0,S($.r)-S($.f));let k=Object.entries(r.cmds).filter(([,Z])=>Z.n-(Z.tn??0)>0).map(([Z,$])=>{let _t=S($.r-($.tr??0)),en=_t-S($.f-($.tf??0)),bt=S($.rr??0),Ur=bt?Math.round((bt-S($.rf??0))/bt*100):0;return{cmd:Z,count:$.n-($.tn??0),compressedCount:$.nc,savedTokens:en,avgPct:_t?Math.round(en/_t*100):0,reducedPct:Ur,native:!$.sh}}).sort((Z,$)=>$.savedTokens-Z.savedTokens).slice(0,10),E=S(r.sr),j=E?Math.round((E-S(r.sf))/E*100):0,ee=S(r.or),be=S(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:j,byCommand:k,observed:{count:r.n,rawTokens:ee,filteredTokens:be,savedTokens:ee-be,savedPct:r.or?Math.round((r.or-r.of)/r.or*1e4)/100:null,expandedCount:r.x},agent:{count:r.n-r.tn,rawTokens:S(r.or-r.tr),filteredTokens:S(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:S(r.tr),savedTokens:S(r.tr)-S(r.tf)},restoration:{count:r.rn,tokens:S(r.rb)},byRule:ei(r),fallbacks:ni(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 T(t){return t<0?`-${T(-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 C(t){return String(t).replace(/\B(?=(\d{3})+(?!\d))/g,",")}function We(t,e){let n="\u2588".repeat(t);return e?`${gt}${n}${yt}`:n}function si(t,e){if(t.count===0&&!t.oversizedExcluded)return` No data yet. Run a few commands to measure your output savings.
19
- 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=We(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")}${C(n.count)} \xB7 ${C(t.compressedCount)} reduced`,`${i("Tokens in")}${T(n.rawTokens)}`,`${i("Tokens out")}${T(n.filteredTokens)}`,`${i(r>=0?"Tokens saved":"Tokens added")}${T(Math.abs(r))} (${Math.abs(s)} %)`,`${i("Efficiency")}${u} ${Math.max(0,s)} %`,...e.periods?.length?["",...e.periods.map(k=>`${i(k.label)}${Xt(k.savedTokens)} \xB7 ${C(k.count)} commands`)]:[],`${i("API value")}${l} at $${e.pricePerMtok.toFixed(2)}/M input tokens`,...t.restoration?.count?[`${i("Restored")}${T(t.restoration.tokens)} tokens, deducted \xB7 ${C(t.restoration.count)} restore${t.restoration.count===1?"":"s"}`]:[],...e.restoreCache?.entries?[`${i("Restore cache")}${C(e.restoreCache.entries)} entr${e.restoreCache.entries===1?"y":"ies"} \xB7 ${ii(e.restoreCache.bytes)} \xB7 kept ${e.restoreCache.kept}`]:[],...t.modeledSavedTokens>0?[`${i("Reducer (est.)")}${T(t.modeledSavedTokens)} tokens, not included`]:[],...oi(t.byCommand,e.color),""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",...y?[` ${C(y)} terminal commands with no agent are not counted.`]:[],...t.oversizedExcluded?[` ${C(t.oversizedExcluded)} Bash outputs over ${C(Jt)} characters are not counted: Claude Code shows at most that much.`]:[],""].join(`
20
- `)}async function ai(t=Pe(),e=0,n){return[...(await qt(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:S(s.or)-S(s.of)}))}function oi(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=We(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)}${C(o.count).padStart(7)}${T(o.savedTokens).padStart(9)}${(String(o.avgPct)+" %").padStart(7)} ${u}`)}),a.push(s),a}function ii(t){return t>=1024*1024?`${(t/(1024*1024)).toFixed(1)} MB`:`${Math.max(1,Math.round(t/1024))} KB`}function Qt(t,e){return[` ${t} \xB7 ${e??"all time"}`," "+"\u2550".repeat(60),""]}function ci(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=Qt("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)}${C(u.count).padStart(6)}${T(u.savedTokens).padStart(8)}${(String(u.avgPct)+" %").padStart(7)} ${We(y,e.color)}${"\u2591".repeat(10-y)}`)}),o.push(i),s&&o.push(` No rule matched: ${C(s.count)} run${s.count===1?"":"s"}, ${T(s.rawTokens)} tokens left unchanged (tkr gain --failures).`),o.push(" Built-in rules are grouped by command.")}return a?.count&&o.push(` ${C(a.count)} older run${a.count===1?"":"s"} recorded before rule tracking are not attributed.`),o.push(""),o.join(`
21
- `)}function ui(t,e){let n=(t.fallbacks??[]).slice(0,15),r=(t.byRule??[]).find(a=>a.kind==="unattributed"),s=Qt("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)}${C(o.count).padStart(6)}${T(o.tokens).padStart(9)} ${Sr[o.reason].short}`)}),s.push(a);for(let o of["no-rule","no-gain","failed-run"])n.some(i=>i.reason===o)&&s.push(` ${Sr[o].note}`)}return r?.count&&s.push(` ${C(r.count)} older run${r.count===1?"":"s"} recorded before this report existed have no details.`),s.push(""),s.join(`
22
- `)}function di(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=Wt*Gt*Ke[e].multiplier;return{tier:e,plan:Ke[e].plan,savedTokens:n,days:r,monthlySavedTokens:s,monthlyBudgetTokens:a,pct:Math.round(s/a*1e3)/10,basis:"estimate",formula:`savedTokens / days * 30 / (${Wt} tokens per 5-hour window * ${Gt} windows * ${Ke[e].multiplier})`}}function li(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[...Qt("Tokmizer quota estimate",e.subtitle),`${n("Plan (assumed)")}${t.plan}`,`${n("Tokens saved")}${T(t.savedTokens)} over ${t.days} day${t.days===1?"":"s"}`,`${n("Per month")}${T(t.monthlySavedTokens)}${t.days<30?" (projected)":""}`,`${n("Plan budget")}${T(t.monthlyBudgetTokens)} per month (assumed)`,`${n("Quota kept")}${We(r,e.color)}${"\u2591".repeat(24-r)} ${t.pct} %`,""," Estimate, not a plan limit. Formula: tokens saved \xF7 days \xD7 30",` \xF7 (${T(Wt)} tokens per 5-hour window \xD7 ${Gt} windows \xD7 ${Ke[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(`
23
- `)}function Xt(t){return t<0?`${T(-t)} added`:`${T(t)} saved`}function fi(t,e){if(t.length===0)return"";let n=(u,l,y)=>` ${u.padEnd(11)}${C(l).padStart(4)}${(y<0?`${T(-y)} added`:T(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?`${gt}${c}${yt}`:c,""].join(`
24
- `)}function pi(t,e){let n=S(e.or-e.tr),r=S(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 mi(t=Pe(),e=0,n){return[...(await qt(t,e,n)).entries()].filter(([,r])=>r.n-r.tn>0).sort(([r],[s])=>r<s?-1:r>s?1:0).map(([r,s])=>pi(r,s))}function hi(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
+ `:""),wr(qt(t),JSON.stringify({v:1,days:i}))}catch{return}finally{Cr(r,{force:!0})}}function jr(t){let e=Co(t),n=e,r="";for(;;){try{return ht(Ro(n),r)}catch{}let s=Nr(n);if(s===n)return e;r=r?ht(Wt(n),r):Wt(n),n=s}}function Uo(t,e){return t.p!=null&&(t.p===e||t.p.startsWith(e+Oo))}async function zr(t,e,n){let r="";try{r=await Ar(t,"utf8")}catch{}let s=[];for(let a of r.split(`
18
+ `)){let o=Dr(a);!o||o.t<e||n!=null&&!Uo(o,n)||s.push(o)}return s}async function Qt(t,e,n){let r=e>0?ee(e):"",s=new Map;if(n==null)for(let[a,o]of Object.entries(Pr(t)))a>=r&&s.set(a,o);for(let a of await zr(t,e,n)){let o=ee(a.t),i=s.get(o)??gt();Ir(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 Wo(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 Go(t){let e=Wo(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(Vo.has(i)){for(n+=1;n<e.length;){let c=e[n];if(c.startsWith("-")){n+=Bo.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("-")&&Ko.test(a)&&Ho.has(s.toLowerCase())?`${s} ${a}`:s).slice(0,24)}function Me(){return ht(w(),No)}async function Yo(t=Me()){try{let n=(await Ar(t,"utf8")).split(`
20
+ `).filter(r=>r.trim()!=="").length;return await kr(t,{force:!0}),await kr(qt(t),{force:!0}),n}catch{return 0}}function Jo(t,e,n=Me(),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?jr(i):"",T=k&&k.length<=Mo?`,"p":${JSON.stringify(k)}`:"",j=c.s?`,"s":${JSON.stringify(c.s.slice(0,66))}`:"",te=c.o?`,"o":${JSON.stringify(c.o)}`:"",ve=`{"t":${Math.floor(Date.now()/1e3)},"r":${t},"f":${e}${r?',"m":1':""}${u}${l}${y}${T}${j}${te}}
21
+ `;try{$o(w(),{recursive:!0,mode:448}),Eo(n,ve,{mode:384}),Ao(n,384),Mr(n)}catch{return}}function qo(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 Lr(t,e,n){return typeof t=="number"&&t>0?Math.max(1,Math.ceil((e-t)/86400)):Math.max(1,n)}function Xo(t,e,n){return{...t,sinceDays:Lr(e,n,t.sinceDays)}}function ei(t,e,n){return t<=0||e<=0||n<=0?0:t/e*30/1e6*n}function ni(t){return t==="pro"?{priceUsd:ti,label:"Pro plan",upsell:!1}:t==="smart"?{priceUsd:Tr,label:"Smart plan",upsell:!1}:{priceUsd:Tr,label:"Smart plan",upsell:!0}}function S(t){return Math.ceil(t/4)}function ri(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 si(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=S(a.r),i=o-S(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 oi(t){return Object.entries(t.fb).map(([e,n])=>{let[r,s]=e.split(" ");return{cmd:s||"other",reason:ai[r]??"no-rule",count:n.n,tokens:S(n.r)}}).sort((e,n)=>n.tokens-e.tokens||n.count-e.count)}async function ii(t=Me(),e=0,n){let r=gt();for(let L of(await Qt(t,e,n)).values())Lo(r,L);let s=S(r.r),a=S(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,S(r.mr)-S(r.mf)),y={};for(let[L,R]of Object.entries(r.prov))y[L]=Math.max(0,S(R.r)-S(R.f));let k=Object.entries(r.cmds).filter(([,L])=>L.n-(L.tn??0)>0).map(([L,R])=>{let bt=S(R.r-(R.tr??0)),tn=bt-S(R.f-(R.tf??0)),vt=S(R.rr??0),Br=vt?Math.round((vt-S(R.rf??0))/vt*100):0;return{cmd:L,count:R.n-(R.tn??0),compressedCount:R.nc,savedTokens:tn,avgPct:bt?Math.round(tn/bt*100):0,reducedPct:Br,native:!R.sh}}).sort((L,R)=>R.savedTokens-L.savedTokens).slice(0,10),T=S(r.sr),j=T?Math.round((T-S(r.sf))/T*100):0,te=S(r.or),ve=S(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:j,byCommand:k,observed:{count:r.n,rawTokens:te,filteredTokens:ve,savedTokens:te-ve,savedPct:r.or?Math.round((r.or-r.of)/r.or*1e4)/100:null,expandedCount:r.x},agent:{count:r.n-r.tn,rawTokens:S(r.or-r.tr),filteredTokens:S(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:S(r.tr),savedTokens:S(r.tr)-S(r.tf)},restoration:{count:r.rn,tokens:S(r.rb)},byRule:si(r),fallbacks:oi(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 Fr(t){return t<0?`-${Fr(-t)}`:t>0&&t<.01?"<$0.01":`$${t.toFixed(2)}`}function C(t){return String(t).replace(/\B(?=(\d{3})+(?!\d))/g,",")}function Ge(t,e){let n="\u2588".repeat(t);return e?`${yt}${n}${_t}`:n}function ci(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=Ge(c,e.color)+"\u2591".repeat(24-c),l=Fr(r/1e6*e.pricePerMtok),y=t.terminal?.count??0;return[` Tokmizer savings \xB7 ${e.subtitle??"all time"}${o}`," "+"\u2550".repeat(60),"",`${i("Commands")}${C(n.count)} \xB7 ${C(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)} %)`,`${i("Efficiency")}${u} ${Math.max(0,s)} %`,...e.periods?.length?["",...e.periods.map(k=>`${i(k.label)}${en(k.savedTokens)} \xB7 ${C(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 ${C(t.restoration.count)} restore${t.restoration.count===1?"":"s"}`]:[],...e.restoreCache?.entries?[`${i("Restore cache")}${C(e.restoreCache.entries)} entr${e.restoreCache.entries===1?"y":"ies"} \xB7 ${li(e.restoreCache.bytes)} \xB7 kept ${e.restoreCache.kept}`]:[],...t.modeledSavedTokens>0?[`${i("Reducer (est.)")}${E(t.modeledSavedTokens)} tokens, not included`]:[],...di(t.byCommand,e.color),""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",...y?[` ${C(y)} terminal commands with no agent are not counted.`]:[],...t.oversizedExcluded?[` ${C(t.oversizedExcluded)} Bash outputs over ${C(Jt)} characters are not counted: Claude Code shows at most that much.`]:[],""].join(`
23
+ `)}async function ui(t=Me(),e=0,n){return[...(await Qt(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:S(s.or)-S(s.of)}))}function di(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=Ge(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)}${C(o.count).padStart(7)}${E(o.savedTokens).padStart(9)}${(String(o.avgPct)+" %").padStart(7)} ${u}`)}),a.push(s),a}function li(t){return t>=1024*1024?`${(t/(1024*1024)).toFixed(1)} MB`:`${Math.max(1,Math.round(t/1024))} KB`}function Xt(t,e){return[` ${t} \xB7 ${e??"all time"}`," "+"\u2550".repeat(60),""]}function fi(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=Xt("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)}${C(u.count).padStart(6)}${E(u.savedTokens).padStart(8)}${(String(u.avgPct)+" %").padStart(7)} ${Ge(y,e.color)}${"\u2591".repeat(10-y)}`)}),o.push(i),s&&o.push(` No rule matched: ${C(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(` ${C(a.count)} older run${a.count===1?"":"s"} recorded before rule tracking are not attributed.`),o.push(""),o.join(`
24
+ `)}function pi(t,e){let n=(t.fallbacks??[]).slice(0,15),r=(t.byRule??[]).find(a=>a.kind==="unattributed"),s=Xt("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)}${C(o.count).padStart(6)}${E(o.tokens).padStart(9)} ${Er[o.reason].short}`)}),s.push(a);for(let o of["no-rule","no-gain","failed-run"])n.some(i=>i.reason===o)&&s.push(` ${Er[o].note}`)}return r?.count&&s.push(` ${C(r.count)} older run${r.count===1?"":"s"} recorded before this report existed have no details.`),s.push(""),s.join(`
25
+ `)}function mi(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=Gt*Yt*We[e].multiplier;return{tier:e,plan:We[e].plan,savedTokens:n,days:r,monthlySavedTokens:s,monthlyBudgetTokens:a,pct:Math.round(s/a*1e3)/10,basis:"estimate",formula:`savedTokens / days * 30 / (${Gt} tokens per 5-hour window * ${Yt} windows * ${We[e].multiplier})`}}function hi(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[...Xt("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")}${Ge(r,e.color)}${"\u2591".repeat(24-r)} ${t.pct} %`,""," Estimate, not a plan limit. Formula: tokens saved \xF7 days \xD7 30",` \xF7 (${E(Gt)} tokens per 5-hour window \xD7 ${Yt} windows \xD7 ${We[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 en(t){return t<0?`${E(-t)} added`:`${E(t)} saved`}function gi(t,e){if(t.length===0)return"";let n=(u,l,y)=>` ${u.padEnd(11)}${C(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?`${yt}${c}${_t}`:c,""].join(`
27
+ `)}function yi(t,e){let n=S(e.or-e.tr),r=S(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 _i(t=Me(),e=0,n){return[...(await Qt(t,e,n)).entries()].filter(([,r])=>r.n-r.tn>0).sort(([r],[s])=>r<s?-1:r>s?1:0).map(([r,s])=>yi(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(`
25
28
  `)+`
26
- `}function gi(t){return`${t.slice(8,10)}/${t.slice(5,7)}`}function yi(t,e){let n=new Map(t.map(E=>[E.day,E])),r=e.sinceTs>0?X(e.sinceTs):t[0]?.day??X(e.nowTs),s=[],a=new Date(Number(r.slice(0,4)),Number(r.slice(5,7))-1,Number(r.slice(8,10))),o=X(e.nowTs);for(;s.length<366;){let E=X(Math.floor(a.getTime()/1e3));if(E>o)break;s.push(E),a.setDate(a.getDate()+1)}let i=30,c=Math.max(0,...t.map(E=>E.savedTokens)),u=" "+"\u2500".repeat(i+18),l=[` Tokens saved per day \xB7 ${e.subtitle}`,u];for(let E of s){let j=n.get(E)?.savedTokens??0,ee=c>0&&j>0?Math.max(1,Math.round(j/c*i)):0,be=j<0?`${T(-j)} added`:T(j);l.push(` ${gi(E)} ${We(ee,e.color)}${"\u2591".repeat(i-ee)} ${be.padStart(11)}`)}let y=t.reduce((E,j)=>E+j.savedTokens,0),k=` ${"Total".padEnd(5)} ${"".padEnd(i)} ${Xt(y).padStart(11)}`;return l.push(u,e.color?`${gt}${k}${yt}`:k,""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",""),l.join(`
27
- `)}async function _i(t=Pe(),e=0,n,r=20){return(await Mr(t,e,n)).filter(s=>!s.m&&s.h!=="shell").slice(-r).map(s=>{let a=S(s.r),o=S(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`${X(t)} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function vi(t,e){if(t.length===0)return` No commands recorded in this scope.
28
- `;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?`-${T(-o.savedTokens)}`:T(o.savedTokens);r.push(` ${bi(o.at).padEnd(18)}${o.cmd.slice(0,21).padEnd(22)}${T(o.rawTokens).padStart(8)}${T(o.filteredTokens).padStart(8)}${i.padStart(10)}`)}let s=t.reduce((o,i)=>o+i.savedTokens,0),a=` ${"Total".padEnd(40)}${"".padStart(16)}${Xt(s).padStart(10)}`;return r.push(n,e.color?`${gt}${a}${yt}`:a,""),r.join(`
29
- `)}function ki(t){return Kt(t)||t}var Ro,$o,vr,Co,Jt,Oo,No,Lo,Zo,Fo,Uo,jr,wr,qo,ti,gt,yt,Sr,Ke,Wt,Gt,Fr=x(()=>{"use strict";z();_r();Ro="stats.jsonl",$o="stats-ledger.json",vr=2*1024*1024,Co=3e4,Jt=3e4,Oo=new Set(["n","g","e"]),No=256;Lo=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Zo=new Set(["-u","-g","-n","-s","-k"]),Fo=/^[a-z0-9][a-z0-9._-]*$/i,Uo=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"]),jr=/^[A-Za-z_][A-Za-z0-9_]*=/;wr=4.99,qo=9.99;ti={n:"no-rule",g:"no-gain",e:"failed-run"};gt="\x1B[38;2;245;176;65m",yt="\x1B[0m";Sr={"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."}};Ke={pro:{plan:"Claude Pro",multiplier:1},"5x":{plan:"Claude Max 5x",multiplier:5},"20x":{plan:"Claude Max 20x",multiplier:20}},Wt=44e3,Gt=144});import{openSync as xi,fstatSync as wi,readSync as Si,closeSync as Ti}from"node:fs";z();import{readFileSync as Br}from"node:fs";import{join as Hr}from"node:path";z();var zi=24*36e5;function nn(){try{let t=JSON.parse(Br(Hr(w(),"settings-cache.json"),"utf8"));return t.enabled!==!1&&typeof t.reducer=="string"&&t.reducer!=="off"}catch{return!1}}var Ei={light:.25,balanced:.45,max:.7},Ai=256*1024,Ri=2e3,$i=5;function Ci(t){let e=xi(t,"r");try{let n=wi(e).size,r=Math.max(0,n-Ai),s=Buffer.alloc(n-r);return Si(e,s,0,s.length,r),s.toString("utf8")}finally{Ti(e)}}function Oi(t){let e=t.split(`
30
- `);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 Ni(){if(!nn())return;let{loadSettingsCache:t}=await Promise.resolve().then(()=>(st(),Rn)),{readSkill:e}=await Promise.resolve().then(()=>(jn(),Mn)),{reducerStillEntitled:n}=await Promise.resolve().then(()=>(Bn(),Vn)),{recordTelemetry:r}=await Promise.resolve().then(()=>(gr(),hr)),{recordStat:s}=await Promise.resolve().then(()=>(Fr(),Zr)),a=[];for await(let E of process.stdin)a.push(E);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=Ei[c.reducer];if(!u||!await n()||!await e(`reducer-${c.reducer}`))return;let l=Oi(Ci(i));if(l<=0)return;let y=Math.ceil(l/4),k=Math.min(Ri,Math.round(y*u/(1-u)));k<$i||(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"}))}Ni().catch(()=>{});
29
+ `}function vi(t){return`${t.slice(8,10)}/${t.slice(5,7)}`}function ki(t,e){let n=new Map(t.map(T=>[T.day,T])),r=e.sinceTs>0?ee(e.sinceTs):t[0]?.day??ee(e.nowTs),s=[],a=new Date(Number(r.slice(0,4)),Number(r.slice(5,7))-1,Number(r.slice(8,10))),o=ee(e.nowTs);for(;s.length<366;){let T=ee(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 j=n.get(T)?.savedTokens??0,te=c>0&&j>0?Math.max(1,Math.round(j/c*i)):0,ve=j<0?`${E(-j)} added`:E(j);l.push(` ${vi(T)} ${Ge(te,e.color)}${"\u2591".repeat(i-te)} ${ve.padStart(11)}`)}let y=t.reduce((T,j)=>T+j.savedTokens,0),k=` ${"Total".padEnd(5)} ${"".padEnd(i)} ${en(y).padStart(11)}`;return l.push(u,e.color?`${yt}${k}${_t}`:k,""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",""),l.join(`
30
+ `)}async function xi(t=Me(),e=0,n,r=20){return(await zr(t,e,n)).filter(s=>!s.m&&s.h!=="shell").slice(-r).map(s=>{let a=S(s.r),o=S(s.f);return{at:s.t,cmd:s.c??"(unlabeled)",rawTokens:a,filteredTokens:o,savedTokens:a-o}})}function wi(t){let e=new Date(t*1e3);return`${ee(t)} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Si(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(` ${wi(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)}${en(s).padStart(10)}`;return r.push(n,e.color?`${yt}${a}${_t}`:a,""),r.join(`
32
+ `)}function Ti(t){return Wt(t)||t}var No,Do,xr,Io,Jt,Po,Mo,Vo,Bo,Ko,Ho,Zr,Tr,ti,ai,yt,_t,Er,We,Gt,Yt,Vr=x(()=>{"use strict";z();vr();No="stats.jsonl",Do="stats-ledger.json",xr=2*1024*1024,Io=3e4,Jt=3e4,Po=new Set(["n","g","e"]),Mo=256;Vo=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Bo=new Set(["-u","-g","-n","-s","-k"]),Ko=/^[a-z0-9][a-z0-9._-]*$/i,Ho=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_]*=/;Tr=4.99,ti=9.99;ai={n:"no-rule",g:"no-gain",e:"failed-run"};yt="\x1B[38;2;245;176;65m",_t="\x1B[0m";Er={"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."}};We={pro:{plan:"Claude Pro",multiplier:1},"5x":{plan:"Claude Max 5x",multiplier:5},"20x":{plan:"Claude Max 20x",multiplier:20}},Gt=44e3,Yt=144});import{openSync as Ei,fstatSync as Ai,readSync as $i,closeSync as Ri}from"node:fs";z();import{readFileSync as Hr}from"node:fs";import{join as Wr}from"node:path";z();var Ui=24*36e5;function rn(){try{let t=JSON.parse(Hr(Wr(w(),"settings-cache.json"),"utf8"));return t.enabled!==!1&&typeof t.reducer=="string"&&t.reducer!=="off"}catch{return!1}}var Ci={light:.25,balanced:.45,max:.7},Oi=256*1024,Ni=2e3,Di=5;function Ii(t){let e=Ei(t,"r");try{let n=Ai(e).size,r=Math.max(0,n-Oi),s=Buffer.alloc(n-r);return $i(e,s,0,s.length,r),s.toString("utf8")}finally{Ri(e)}}function Pi(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 Mi(){if(!rn())return;let{loadSettingsCache:t}=await Promise.resolve().then(()=>(at(),Rn)),{readSkill:e}=await Promise.resolve().then(()=>(zn(),jn)),{reducerStillEntitled:n}=await Promise.resolve().then(()=>(Kn(),Bn)),{recordTelemetry:r}=await Promise.resolve().then(()=>(_r(),yr)),{recordStat:s}=await Promise.resolve().then(()=>(Vr(),Ur)),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=Ci[c.reducer];if(!u||!await n()||!await e(`reducer-${c.reducer}`))return;let l=Pi(Ii(i));if(l<=0)return;let y=Math.ceil(l/4),k=Math.min(Ni,Math.round(y*u/(1-u)));k<Di||(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"}))}Mi().catch(()=>{});