@tokmizer/plugin 0.9.63 → 0.9.65

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 (37) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/.codex-plugin/plugin.json +1 -1
  3. package/README.md +9 -8
  4. package/dist/bin/tkr-agent-hook.js +9 -9
  5. package/dist/bin/tkr-codex-hook.js +68 -68
  6. package/dist/bin/tkr-copilot-hook.js +8 -8
  7. package/dist/bin/tkr-crush-hook.js +8 -8
  8. package/dist/bin/tkr-cursor-hook.js +8 -8
  9. package/dist/bin/tkr-daemon.js +120 -116
  10. package/dist/bin/tkr-droid-hook.js +8 -8
  11. package/dist/bin/tkr-exec +75 -71
  12. package/dist/bin/tkr-exec.js +75 -71
  13. package/dist/bin/tkr-gemini-hook.js +8 -8
  14. package/dist/bin/tkr-grok-hook.js +8 -8
  15. package/dist/bin/tkr-junie-hook.js +8 -8
  16. package/dist/bin/tkr-processor.js +94 -90
  17. package/dist/bin/tkr-qwen-hook.js +8 -8
  18. package/dist/bin/tkr-shim.js +75 -73
  19. package/dist/bin/tkr-trae-hook.js +8 -8
  20. package/dist/bin/tkr-zcode-hook.js +8 -8
  21. package/dist/bin/tkr.js +230 -230
  22. package/dist/hooks-host/post-tool-use.js +86 -82
  23. package/dist/hooks-host/pre-tool-use.js +9 -9
  24. package/dist/hooks-host/reducer-stop.js +24 -24
  25. package/dist/hooks-host/session-recap.js +1 -1
  26. package/dist/index.js +84 -84
  27. package/dist/native/manifest.json +12 -12
  28. package/dist/native/single.json +12 -12
  29. package/dist/native/tkr-exec-darwin-arm64 +0 -0
  30. package/dist/native/tkr-exec-darwin-x64 +0 -0
  31. package/dist/native/tkr-exec-linux-arm64 +0 -0
  32. package/dist/native/tkr-exec-linux-x64 +0 -0
  33. package/dist/native/tkr-exec-win32-arm64.exe +0 -0
  34. package/dist/native/tkr-exec-win32-x64.exe +0 -0
  35. package/hooks/on-session-start.mjs +16 -5
  36. package/package.json +8 -8
  37. package/scripts/install-mac-linux.sh +1 -1
@@ -1,30 +1,30 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __tkrCreateRequire } from "node:module"; const require = __tkrCreateRequire(import.meta.url);
3
- var Zr=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)Zr(t,n,{get:e[n],enumerable:!0})};import en from"node:os";import{join as G}from"node:path";function w(){return process.env.TOKMIZER_HOME||G(en.homedir(),".tokmizer")}function Pe(){return G(w(),"install-id")}function We(){return G(w(),"bundle-refresh.json")}function Ge(){return G(w(),"skills")}function te(t){return G(Ge(),`${t}.md`)}function bt(){return G(w(),"managed-commands.json")}function Je(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||G(en.homedir(),".claude","commands")}function ne(t){return G(Je(),`${t}.md`)}var z=x(()=>{"use strict"});var v,vt,p,F,Me=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})})(vt||(vt={}));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,Vr,O,Ye=x(()=>{Me();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"]),Vr=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 Br,B,kt=x(()=>{Ye();Me();Br=(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=Br});function Hr(t){nn=t}function ke(){return nn}var nn,qe=x(()=>{kt();nn=B});function f(t,e){let n=ke(),r=je({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 je,Kr,A,h,re,R,Qe,Xe,J,xe,xt=x(()=>{qe();kt();je=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}},Kr=[];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}),Qe=t=>t.status==="aborted",Xe=t=>t.status==="dirty",J=t=>t.status==="valid",xe=t=>typeof Promise<"u"&&t instanceof Promise});var rn=x(()=>{});var m,sn=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 un(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 us(t){return new RegExp(`^${un(t)}$`)}function dn(t){let e=`${cn}T${un(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 ds(t,e){return!!((e==="v4"||!e)&&ns.test(t)||(e==="v6"||!e)&&ss.test(t))}function ls(t,e){if(!Qr.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 fs(t,e){return!!((e==="v4"||!e)&&rs.test(t)||(e==="v6"||!e)&&as.test(t))}function ps(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 St(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=St(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=St(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 ln(t,e){return new me({values:t,typeName:g.ZodEnum,..._(e)})}function on(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function fn(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=on(e,r),c=i.fatal??n??!0;s.addIssue({code:"custom",...i,fatal:c})}});if(!a){let o=on(e,r),i=o.fatal??n??!0;s.addIssue({code:"custom",...o,fatal:i})}}):q.create()}var I,an,b,Wr,Gr,Jr,Yr,qr,Qr,Xr,es,ts,wt,ns,rs,ss,as,os,is,cn,cs,Y,se,ae,oe,ie,Se,ce,ue,q,K,L,Te,W,N,de,H,et,le,U,tt,Ee,Ae,nt,fe,pe,me,he,Q,P,D,V,ge,ye,Re,ms,ze,Le,_e,hs,g,gs,pn,mn,ys,_s,hn,bs,vs,ks,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,gn=x(()=>{Ye();qe();sn();xt();Me();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}},an=(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 an(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 an(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 ze({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 Le.create(this,e)}readonly(){return _e.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Wr=/^c[^\s-]{8,}$/i,Gr=/^[0-9a-z]+$/,Jr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Yr=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,qr=/^[a-z0-9_-]{21}$/i,Qr=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Xr=/^[-+]?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)?)??$/,es=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ts="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ns=/^(?:(?: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])$/,rs=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ss=/^(([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]))$/,as=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,os=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,is=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,cn="((\\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])))",cs=new RegExp(`^${cn}$`);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")es.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")wt||(wt=new RegExp(ts,"u")),wt.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")Yr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"uuid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")qr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"nanoid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")Wr.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")Gr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cuid2",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")Jr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"ulid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),f(s,{validation:"url",code:d.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"regex",code:d.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?dn(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"?cs.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?us(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"?Xr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"duration",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?ds(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"?ls(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"?fs(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"?os.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?is.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"?ps(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 ln(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 ze||t instanceof _e?H(t.unwrap()):t instanceof ye?H(t._def.innerType):[],et=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(Qe(a)||Qe(o))return h;let i=St(a.value,o.value);return i.valid?((Xe(a)||Xe(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)})};tt=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)});nt=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 je({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 je({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=ln;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)});ms=Symbol("zod_brand"),ze=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}},Le=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)});hs={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={}));gs=(t,e={message:`Input not instance of ${t.name}`})=>fn(n=>n instanceof t,e),pn=Y.create,mn=se.create,ys=Re.create,_s=ae.create,hn=oe.create,bs=ie.create,vs=Se.create,ks=ce.create,xs=ue.create,ws=q.create,Ss=K.create,Ts=L.create,Es=Te.create,As=W.create,Rs=N.create,$s=N.strictCreate,Cs=de.create,Os=et.create,Ns=le.create,Ds=U.create,Is=tt.create,Ps=Ee.create,Ms=Ae.create,js=nt.create,zs=fe.create,Ls=pe.create,Zs=me.create,Fs=he.create,Us=Q.create,Vs=P.create,Bs=D.create,Hs=V.create,Ks=P.createWithPreprocess,Ws=Le.create,Gs=()=>pn().optional(),Js=()=>mn().optional(),Ys=()=>hn().optional(),qs={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}))},Qs=h});var M={};ve(M,{BRAND:()=>ms,DIRTY:()=>re,EMPTY_PATH:()=>Kr,INVALID:()=>h,NEVER:()=>Qs,OK:()=>R,ParseStatus:()=>A,Schema:()=>b,ZodAny:()=>q,ZodArray:()=>W,ZodBigInt:()=>ae,ZodBoolean:()=>oe,ZodBranded:()=>ze,ZodCatch:()=>ye,ZodDate:()=>ie,ZodDefault:()=>ge,ZodDiscriminatedUnion:()=>et,ZodEffects:()=>P,ZodEnum:()=>me,ZodError:()=>O,ZodFirstPartyTypeKind:()=>g,ZodFunction:()=>nt,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:()=>Le,ZodPromise:()=>Q,ZodReadonly:()=>_e,ZodRecord:()=>tt,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:()=>ws,array:()=>As,bigint:()=>_s,boolean:()=>hn,coerce:()=>qs,custom:()=>fn,date:()=>bs,datetimeRegex:()=>dn,defaultErrorMap:()=>B,discriminatedUnion:()=>Os,effect:()=>Vs,enum:()=>Zs,function:()=>js,getErrorMap:()=>ke,getParsedType:()=>F,instanceof:()=>gs,intersection:()=>Ns,isAborted:()=>Qe,isAsync:()=>xe,isDirty:()=>Xe,isValid:()=>J,late:()=>hs,lazy:()=>zs,literal:()=>Ls,makeIssue:()=>je,map:()=>Ps,nan:()=>ys,nativeEnum:()=>Fs,never:()=>Ts,null:()=>xs,nullable:()=>Hs,number:()=>mn,object:()=>Rs,objectUtil:()=>vt,oboolean:()=>Ys,onumber:()=>Js,optional:()=>Bs,ostring:()=>Gs,pipeline:()=>Ws,preprocess:()=>Ks,promise:()=>Us,quotelessJson:()=>Vr,record:()=>Is,set:()=>Ms,setErrorMap:()=>Hr,strictObject:()=>$s,string:()=>pn,symbol:()=>vs,transformer:()=>Vs,tuple:()=>Ds,undefined:()=>ks,union:()=>Cs,unknown:()=>Ss,util:()=>v,void:()=>Es});var Tt=x(()=>{qe();xt();rn();Me();gn();Ye()});var yn=x(()=>{Tt();Tt()});var Xs,ea,$e,_n=x(()=>{"use strict";yn();Xs=M.enum(["normal","compact","minimal"]),ea=M.enum(["off","light","balanced","max"]),$e=M.object({enabled:M.boolean().default(!0),telemetryOptIn:M.boolean().default(!0),outputVerbosity:Xs.default("compact"),reducer:ea.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 An={};ve(An,{clearSettingsCache:()=>oa,loadSettingsCache:()=>Oe,saveSettingsCache:()=>En,updateSettingsCache:()=>aa});import{readFile as xn,writeFile as wn,mkdir as Sn,chmod as ta,rm as Ze,rename as Tn,readdir as na}from"node:fs/promises";import{randomUUID as ra}from"node:crypto";import{join as Ce}from"node:path";import{setTimeout as bn}from"node:timers/promises";async function Oe(){let t=null;try{let e=JSON.parse(await xn(Ce(w(),Et),"utf8"));typeof e=="object"&&e!==null&&!Array.isArray(e)&&(t=e)}catch{}return t?$e.parse({...vn,...t}):vn}async function En(t){await Sn(w(),{recursive:!0});let e=Ce(w(),Et),n=`${e}.tmp-${process.pid}-${process.hrtime.bigint()}`;await wn(n,JSON.stringify(t,null,2),{mode:384});try{await ta(n,384),await Tn(n,e)}catch(r){try{await Ze(n,{force:!0})}catch{}throw r}}async function kn(t){let e=[];for(let n of await na(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 Ze(s,{force:!0});continue}if(o!=="EPERM")throw a}try{let a=JSON.parse(await xn(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 aa(t){let e=sa.parse(t),n=Ce(w(),"settings-cache-locks");await Sn(n,{recursive:!0,mode:448});let r=`${process.pid}-${ra()}.json`,s=Ce(n,r),a=`${s}.tmp`,o=performance.now()+3e3,i=async c=>{for(await wn(a,String(c),{mode:384});;)try{await Tn(a,s);return}catch(u){let l=u.code;if(process.platform!=="win32"||l!=="EPERM"&&l!=="EBUSY"||performance.now()>=o)throw u;await bn(10)}};try{await i(0);let c=Math.max(0,...(await kn(n)).map(u=>u.ticket))+1;if(!Number.isSafeInteger(c))throw new Error("Invalid local settings lock");for(await i(c);;){if(!(await kn(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 En(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 bn(10)}}finally{await Promise.all([Ze(s,{force:!0}),Ze(a,{force:!0})])}}async function oa(){try{await Ze(Ce(w(),Et),{force:!0})}catch{}}var Et,vn,sa,rt=x(()=>{"use strict";_n();z();Et="settings-cache.json",vn=$e.parse({}),sa=$e.partial().extend({filters:$e.shape.filters.removeDefault().partial().optional()})});var Pn={};ve(Pn,{STATIC_COMMAND_NAMES:()=>st,commandInstalled:()=>In,commandsInstallStatus:()=>ya,installCommand:()=>ha,isFresh:()=>fa,pruneCommands:()=>ga,pruneSkills:()=>ma,readBundleRefresh:()=>ba,readSkill:()=>va,recordBundleRefresh:()=>_a,writeSkill:()=>pa});import{chmod as At,mkdir as at,readFile as Fe,writeFile as ot,stat as Rt,readdir as ia,rm as $n}from"node:fs/promises";import{existsSync as ca}from"node:fs";import{dirname as ua}from"node:path";async function On(){try{let t=JSON.parse(await Fe(bt(),"utf8"));return Array.isArray(t)?t.filter(e=>typeof e=="string"):[]}catch{return[]}}async function Nn(t){try{await at(w(),{recursive:!0}),await ot(bt(),JSON.stringify(t),{mode:384})}catch{}}function Dn(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?Math.min(t,Rn):Rn}async function fa(t){try{let e=await Rt(te(t)),n=Date.now()-e.mtimeMs;return n<la&&n<=Dn()}catch{return!1}}async function pa(t,e){await at(Ge(),{recursive:!0}),await ot(te(t),e,{mode:384}),await At(te(t),384)}async function ma(t){let e=new Set(t),n;try{n=await ia(Ge())}catch{return}for(let r of n){if(!r.endsWith(".md"))continue;let s=r.slice(0,-3);if(!e.has(s))try{await $n(te(s))}catch{}}}async function ha(t,e){if(!process.env.TOKMIZER_CLAUDE_COMMANDS_DIR&&!ca(ua(Je())))return;await at(Je(),{recursive:!0});try{if(!(await Fe(ne(t),"utf8")).includes(Cn))return}catch{}await ot(ne(t),e,{mode:384}),await At(ne(t),384);let n=await On();n.includes(t)||await Nn([...n,t])}async function ga(t){let e=new Set([...t,...st]),n=await On(),r=new Set([...n,...da]);for(let s of r)if(!e.has(s))try{if(!(await Fe(ne(s),"utf8")).includes(Cn))continue;await $n(ne(s))}catch{}await Nn(n.filter(s=>e.has(s)))}async function ya(){let t=0;for(let e of st)await In(e)&&t++;return{installed:t,total:st.length}}async function In(t){try{return await Rt(ne(t)),!0}catch{return!1}}async function _a(t){try{await at(w(),{recursive:!0}),await ot(We(),JSON.stringify({at:Date.now(),error:t}),{mode:384}),await At(We(),384)}catch{}}async function ba(){try{return JSON.parse(await Fe(We(),"utf8"))}catch{return null}}async function va(t){try{let e=await Rt(te(t));return Date.now()-e.mtimeMs>Dn()?null:await Fe(te(t),"utf8")}catch{return null}}var Cn,st,da,la,Rn,Mn=x(()=>{"use strict";z();Cn="managed-by: tokmizer",st=["tkr","tkr-gain","tkr-status","tkr-link","tkr-unlink","tkr-compression","tkr-telemetry","tkr-update","tkr-yolo"],da=["power","tkr-reducer"];la=3600*1e3,Rn=10080*60*1e3});import{join as ka}from"node:path";import{mkdir as Rc,readFile as xa,writeFile as $c,unlink as Cc,rename as Oc}from"node:fs/promises";function Sa(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function Ta(t){return t?.dir??w()}async function it(t){let e=Ta(t);try{let n=await xa(ka(e,wa),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=Sa()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var wa,$t=x(()=>{"use strict";z();wa="state.json"});function jn(t,e=Date.now()){return t.plan}function zn(t,e=Date.now()){return t.bonusActive??!1}var Ln=x(()=>{"use strict"});function Zn(t,e=!1){return!0}var Fn=x(()=>{"use strict"});var Un={};ve(Un,{reducerStillEntitled:()=>Ea});async function Ea(){let t=await it();return t?Zn(jn(t),zn(t)):!1}var Vn=x(()=>{"use strict";$t();Ln();Fn()});function Ct(t){let e=t;for(let[n,r]of Aa)e=e.replace(n,r);return e}var Aa,Bn=x(()=>{"use strict";Aa=[[/(authorization\s*:\s*)([A-Za-z][A-Za-z0-9._-]*)\s+[^\s'"]+/gi,"$1$2 [REDACTED]"],[/(authorization\s*:\s*)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/(bearer\s+)[A-Za-z0-9._\-+/=]{8,}/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-b|--cookie)[=\s]+['"]?)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'";=]+=[^\s'";]+(?:\s*;\s*[^\s'";=]+=[^\s'";]+)*/gi,"$1[REDACTED]"],[/(--?(?:password|passwd|passphrase|apipass|pass|pwd|token|api[-_]?key|secret|bearer|cookie|jwt)(?:-[a-z0-9]+)*[=\s]+)\S+/gi,"$1[REDACTED]"],[/((?:^|\s)-b[=\s]?['"]?)[^\s'"=]+=[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*:)(\/[^/\s'"][^\s'"]*|[^\s/'"0-9][^\s'"]*|[0-9][^\s'"]*[^\s'"0-9][^\s'"]*)/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?[^\s:/'"]*[^\s:/'"0-9][^\s:/'"]*:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:^|\s)(?:-u[=\s]?|(?:--user|-a)[=\s])['"]?:)(?:\/[^/\s'"]|[^\s/'"])[^\s'"]*/gi,"$1[REDACTED]"],[/((?:[A-Za-z0-9]+-){0,8}(?:X-Api-Key|Private-Token|[A-Za-z0-9]+-(?:Token|Key|Auth|Secret))\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/((?:^|[\s'"])(?:Set-)?Cookie\s*:\s*)[^\s'"]+/gi,"$1[REDACTED]"],[/(-i\s+)(\/[^\s]+|~\/[^\s]+|[A-Z]:\\[^\s]+)/g,"$1[REDACTED]"],[/([a-zA-Z][a-zA-Z0-9+.-]{0,31}:\/\/[^:/\s@]*:)[^\s@]+(@[^@/\s]+)/g,"$1[REDACTED]$2"],[/(AWS_(?:ACCESS_KEY_ID|SECRET_ACCESS_KEY|SESSION_TOKEN)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(GOOGLE_APPLICATION_CREDENTIALS\s*=\s*)\S+/g,"$1[REDACTED]"],[/(AZURE_(?:CLIENT_SECRET|TENANT_ID|CLIENT_ID)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-(?:proj-)?[A-Za-z0-9_-]{20,})/g,"sk-[REDACTED]"],[/\b(OPENAI_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(ANTHROPIC_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-ant-[A-Za-z0-9_-]{20,})/g,"sk-ant-[REDACTED]"],[/\b(GH(?:_|ITHUB_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(GITLAB_TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(SLACK_(?:BOT_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/(xox[bpsoa]-[A-Za-z0-9-]{10,})/g,"xox[REDACTED]"],[/(xapp-[A-Za-z0-9-]{10,})/g,"[REDACTED]"],[/(sk_(?:test|live)_[A-Za-z0-9]{16,})/g,"sk_[REDACTED]"],[/(gh[a-z])_[A-Za-z0-9]{20,}/g,"$1_[REDACTED]"],[/(github_pat)_[A-Za-z0-9_]{20,}/g,"$1_[REDACTED]"],[/(gl(?:pat|rt|soat|imt|dt|ft|agent|oas|cbt|ptt))-[A-Za-z0-9_-]{16,}/g,"$1-[REDACTED]"],[/(npm_[A-Za-z0-9_-]{20,})/g,"npm_[REDACTED]"],[/(?:AKIA|ASIA|AGPA|AIDA|AROA|ANPA)[0-9A-Z]{16,}/g,"[REDACTED_AWS_KEY]"],[/AIza[A-Za-z0-9_-]{35}/g,"[REDACTED_GOOGLE_KEY]"],[/hv[sb]\.[A-Za-z0-9_-]{20,}/g,"[REDACTED_VAULT_TOKEN]"],[/dop_v1_[A-Za-z0-9]{40,}/g,"[REDACTED]"],[/dckr_pat_[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/pypi-[A-Za-z0-9_-]{16,}/g,"[REDACTED]"],[/rk_(?:live|test)_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/whsec_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/(eyJ[A-Za-z0-9_-]{6,}(?:\.[A-Za-z0-9_-]{4,}){1,2})/g,"[REDACTED_JWT]"],[/-----BEGIN [A-Z ]*PRIVATE KEY-----(?:[\s\S]*?-----END[^\n]*-----|\r?\n[A-Za-z0-9+/=][A-Za-z0-9+/=\r\n]*)?/g,"[REDACTED_PEM]"],[/\b((?:--?)?[A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|AUTH|_PWD)[A-Za-z0-9_]*['"]?\s*=\s*)(?:"[^"]*"|'[^']*'|[^"'\s]\S*)/gi,"$1[REDACTED]"],[/\b([A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|_PWD)[A-Za-z0-9_]*['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/((?:^|[\s'"{,])['"]?(?:[A-Za-z0-9_]+_)?auth['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/(\bpwd\s*[=:]\s*)(?:"[^"]*"|'[^']*'|[^/~\s][^\s;'"]*)/gi,"$1[REDACTED]"],[/([=:]\s*["']?)[A-Za-z0-9_\-+/=]{40,}/g,"$1[REDACTED]"]]});import Ne from"node:os";import{createHash as Ra,randomUUID as $a}from"node:crypto";import{readFile as Hn,writeFile as Kn,mkdir as Ca}from"node:fs/promises";async function Oa(){try{let n=(await Hn(Pe(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await Ca(w(),{recursive:!0});let t=$a();try{return await Kn(Pe(),t,{mode:384,flag:"wx"}),t}catch{try{let e=(await Hn(Pe(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(e))return e}catch{}return await Kn(Pe(),t,{mode:384}),t}}function Ot(t){return Ra("sha256").update(t).digest("hex")}function Na(){let t=Ne.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 Wn(){let t=await Oa(),e=Ne.hostname(),n=Ne.platform(),r=Ne.release(),s=Ne.cpus(),a=s[0]?.model??"unknown",o=s.length,i=Ot(Na()),c=Ot(Ne.userInfo().username),u=[e,n,r,a,String(o),i,c,t].join("|");return{fingerprint:Ot(u),installId:t,hostname:e,os:n,osVersion:r,cpuModel:a,cpuCores:o,macHash:i,usernameHash:c}}var Gn=x(()=>{"use strict";z()});import{createRequire as Da}from"node:module";function Pa(){let t="0.9.63";if(t)return t;for(let e of["../package.json","../../package.json"])try{let n=Ia(e).version;if(typeof n=="string"&&n)return n}catch{}return"0.0.0"}var Ia,Nt,Dt=x(()=>{"use strict";Ia=Da(import.meta.url);Nt=Pa()});var Jn=x(()=>{"use strict"});import{existsSync as Ma,mkdirSync as Jc,rmSync as Yc,writeFileSync as qc}from"node:fs";import{join as ja}from"node:path";function Za(){return ja(w(),"network-off")}function Fa(){let t=process.env.TOKMIZER_NETWORK;return t!==void 0&&za.has(t.trim().toLowerCase())}function Ue(){return Fa()?!1:!Ma(Za())}function Yn(){if(!Ue())throw new It}var za,La,eu,It,ct=x(()=>{"use strict";z();za=new Set(["0","off","false","no"]),La="Network is off for Tokmizer. Turn it back on with: tkr network on",eu=["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
- `),It=class extends Error{constructor(){super(La),this.name="NetworkDisabledError"}}});import{createHmac as Ua,createPublicKey as su,verify as au}from"node:crypto";function Va(t,e,n){return Ua("sha256",n).update(`${e}.${t}`).digest("hex")}async function qn(t,e,n,r){Yn();let s=Date.now(),a=n===void 0?"":JSON.stringify(n),o=r.signingSecret?Va(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":Nt};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 ut("timeout",`${t} ${e} timed out after ${c}ms`):new ut("network",`${t} ${e} failed: ${y.message}`)}}var uu,ut,Qn=x(()=>{"use strict";Dt();Jn();ct();uu=300*1e3,ut=class extends Error{constructor(n,r,s){super(r);this.kind=n;this.status=s;this.name="TransportError"}kind;status}});import{existsSync as Ba,mkdirSync as fu,writeFileSync as pu}from"node:fs";import{join as Ha}from"node:path";function Wa(){return Ha(w(),Ka)}function Xn(){return Ba(Wa())}var Ka,er=x(()=>{"use strict";z();rt();ct();Dt();Ka="telemetry-notice-shown"});import{join as lt}from"node:path";import{appendFileSync as rr,chmodSync as Ga,existsSync as Ve,mkdirSync as jt,readFileSync as Zt,renameSync as zt,rmdirSync as sr,statSync as Ft,unlinkSync as De,utimesSync as Ja,writeFileSync as Ut}from"node:fs";function Vt(t){return lt(Be(),`${t}.lock`)}function qa(t){let e=Vt(t);try{return jt(Be(),{recursive:!0,mode:448}),jt(e),!0}catch{try{Date.now()-Ft(e).mtimeMs>Ya&&sr(e)}catch{return!1}return!1}}function Qa(t){try{Ja(Vt(t),new Date,new Date)}catch{return}}function Xa(t){try{sr(Vt(t))}catch{return}}function Be(){return lt(w(),"spool")}function dt(t){return lt(Be(),`${t}.jsonl`)}function ft(t){return lt(Be(),`${t}.pending.jsonl`)}function ar(t,e){if(Ue())try{jt(Be(),{recursive:!0,mode:448});let n=dt(t);if(Ve(n)&&Ft(n).size>=Lt)return;rr(n,JSON.stringify(e)+`
5
- `,{mode:384}),Ga(n,384)}catch{return}}function tr(t,e){rr(t,Zt(e,"utf8"),{mode:384}),Ut(e,"",{mode:384});try{De(e)}catch{return}}function eo(t){if(Ft(t).size<=Lt)return;let e=Zt(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>Lt)break;r.unshift(a)}Ut(t,r.length?r.join(`
3
+ var Br=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)Br(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,Wr,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"]),Wr=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 Gr,B,wt=x(()=>{Qe();ze();Gr=(t,e)=>{let n;switch(t.code){case d.invalid_type:t.received===p.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case d.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,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=Gr});function Yr(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,Jr,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}},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"}),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 ps(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 ms(t,e){return!!((e==="v4"||!e)&&os.test(t)||(e==="v6"||!e)&&cs.test(t))}function hs(t,e){if(!ns.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),s=JSON.parse(atob(r));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function gs(t,e){return!!((e==="v4"||!e)&&is.test(t)||(e==="v6"||!e)&&us.test(t))}function ys(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,s=n>r?n:r,a=Number.parseInt(t.toFixed(s).replace(".","")),o=Number.parseInt(e.toFixed(s).replace(".",""));return a%o/10**s}function Se(t){if(t instanceof 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,Qr,Xr,es,ts,ns,rs,ss,as,Tt,os,is,cs,us,ds,ls,dn,fs,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,_s,Le,Fe,be,bs,g,vs,hn,gn,ks,xs,yn,ws,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,_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,Qr=/^[0-9a-z]+$/,Xr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,es=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,ts=/^[a-z0-9_-]{21}$/i,ns=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,rs=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ss=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,as="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",os=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,is=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,cs=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,us=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ds=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ls=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,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])))",fs=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")ss.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"email",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="emoji")Tt||(Tt=new RegExp(as,"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")es.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"uuid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="nanoid")ts.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"nanoid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid")qr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cuid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="cuid2")Qr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cuid2",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="ulid")Xr.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"ulid",code:d.invalid_string,message:a.message}),r.dirty());else if(a.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),f(s,{validation:"url",code:d.invalid_string,message:a.message}),r.dirty()}else a.kind==="regex"?(a.regex.lastIndex=0,a.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"regex",code:d.invalid_string,message:a.message}),r.dirty())):a.kind==="trim"?e.data=e.data.trim():a.kind==="includes"?e.data.includes(a.value,a.position)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{includes:a.value,position:a.position},message:a.message}),r.dirty()):a.kind==="toLowerCase"?e.data=e.data.toLowerCase():a.kind==="toUpperCase"?e.data=e.data.toUpperCase():a.kind==="startsWith"?e.data.startsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{startsWith:a.value},message:a.message}),r.dirty()):a.kind==="endsWith"?e.data.endsWith(a.value)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:{endsWith:a.value},message:a.message}),r.dirty()):a.kind==="datetime"?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"?fs.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"date",message:a.message}),r.dirty()):a.kind==="time"?ps(a).test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{code:d.invalid_string,validation:"time",message:a.message}),r.dirty()):a.kind==="duration"?rs.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"duration",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="ip"?ms(e.data,a.version)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"ip",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="jwt"?hs(e.data,a.alg)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"jwt",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="cidr"?gs(e.data,a.version)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"cidr",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64"?ds.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64",code:d.invalid_string,message:a.message}),r.dirty()):a.kind==="base64url"?ls.test(e.data)||(s=this._getOrReturnCtx(e,s),f(s,{validation:"base64url",code:d.invalid_string,message:a.message}),r.dirty()):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"?ys(e.data,a.value)!==0&&(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_multiple_of,multipleOf:a.value,message:a.message}),s.dirty()):a.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),f(r,{code:d.not_finite,message:a.message}),s.dirty()):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(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 $(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)});_s=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)});bs={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={}));vs=(t,e={message:`Input not instance of ${t.name}`})=>mn(n=>n instanceof t,e),hn=q.create,gn=ae.create,ks=Re.create,xs=oe.create,yn=ie.create,ws=ce.create,Ss=Te.create,Ts=ue.create,Es=de.create,As=Q.create,$s=H.create,Rs=Z.create,Cs=Ee.create,Os=W.create,Ns=N.create,Ds=N.strictCreate,Is=le.create,Ps=nt.create,Ms=fe.create,js=U.create,zs=rt.create,Zs=Ae.create,Ls=$e.create,Fs=st.create,Us=pe.create,Vs=me.create,Bs=he.create,Ks=ge.create,Hs=X.create,Ws=P.create,Gs=D.create,Ys=V.create,Js=P.createWithPreprocess,qs=Fe.create,Qs=()=>hn().optional(),Xs=()=>gn().optional(),ea=()=>yn().optional(),ta={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}))},na=h});var M={};ke(M,{BRAND:()=>_s,DIRTY:()=>se,EMPTY_PATH:()=>Jr,INVALID:()=>h,NEVER:()=>na,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:()=>As,array:()=>Os,bigint:()=>xs,boolean:()=>yn,coerce:()=>ta,custom:()=>mn,date:()=>ws,datetimeRegex:()=>fn,defaultErrorMap:()=>B,discriminatedUnion:()=>Ps,effect:()=>Ws,enum:()=>Bs,function:()=>Fs,getErrorMap:()=>xe,getParsedType:()=>F,instanceof:()=>vs,intersection:()=>Ms,isAborted:()=>et,isAsync:()=>we,isDirty:()=>tt,isValid:()=>J,late:()=>bs,lazy:()=>Us,literal:()=>Vs,makeIssue:()=>Ze,map:()=>Zs,nan:()=>ks,nativeEnum:()=>Ks,never:()=>Rs,null:()=>Es,nullable:()=>Ys,number:()=>gn,object:()=>Ns,objectUtil:()=>xt,oboolean:()=>ea,onumber:()=>Xs,optional:()=>Gs,ostring:()=>Qs,pipeline:()=>qs,preprocess:()=>Js,promise:()=>Hs,quotelessJson:()=>Wr,record:()=>zs,set:()=>Ls,setErrorMap:()=>Yr,strictObject:()=>Ds,string:()=>hn,symbol:()=>Ss,transformer:()=>Ws,tuple:()=>js,undefined:()=>Ts,union:()=>Is,unknown:()=>$s,util:()=>v,void:()=>Cs});var At=x(()=>{Xe();St();an();ze();_n();Qe()});var bn=x(()=>{At();At()});var ra,sa,Ce,vn=x(()=>{"use strict";bn();ra=M.enum(["normal","compact","minimal"]),sa=M.enum(["off","light","balanced","max"]),Ce=M.object({enabled:M.boolean().default(!0),telemetryOptIn:M.boolean().default(!0),outputVerbosity:ra.default("compact"),reducer:sa.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:()=>da,loadSettingsCache:()=>Ne,saveSettingsCache:()=>$n,updateSettingsCache:()=>ua});import{readFile as Sn,writeFile as Tn,mkdir as En,chmod as aa,rm as Ue,rename as An,readdir as oa}from"node:fs/promises";import{randomUUID as ia}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 aa(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 oa(t)){let r=/^([1-9]\d*)-[0-9a-f-]{36}\.json$/.exec(n);if(!r)continue;let s=Oe(t,n);try{process.kill(Number(r[1]),0)}catch(a){let o=a.code;if(o==="ESRCH"){await 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 ua(t){let e=ca.parse(t),n=Oe(w(),"settings-cache-locks");await En(n,{recursive:!0,mode:448});let r=`${process.pid}-${ia()}.json`,s=Oe(n,r),a=`${s}.tmp`,o=performance.now()+3e3,i=async c=>{for(await 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 da(){try{await Ue(Oe(w(),$t),{force:!0})}catch{}}var $t,xn,ca,at=x(()=>{"use strict";vn();z();$t="settings-cache.json",xn=Ce.parse({}),ca=Ce.partial().extend({filters:Ce.shape.filters.removeDefault().partial().optional()})});var jn={};ke(jn,{STATIC_COMMAND_NAMES:()=>ot,commandInstalled:()=>Mn,commandsInstallStatus:()=>ka,installCommand:()=>ba,isFresh:()=>ga,pruneCommands:()=>va,pruneSkills:()=>_a,readBundleRefresh:()=>wa,readSkill:()=>Sa,recordBundleRefresh:()=>xa,writeSkill:()=>ya});import{chmod as Rt,mkdir as it,readFile as Ve,writeFile as ct,stat as Ct,readdir as la,rm as On}from"node:fs/promises";import{existsSync as fa}from"node:fs";import{dirname as pa}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 ga(t){try{let e=await Ct(ne(t)),n=Date.now()-e.mtimeMs;return n<ha&&n<=Pn()}catch{return!1}}async function ya(t,e){await it(Je(),{recursive:!0}),await ct(ne(t),e,{mode:384}),await Rt(ne(t),384)}async function _a(t){let e=new Set(t),n;try{n=await la(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 ba(t,e){if(!process.env.TOKMIZER_CLAUDE_COMMANDS_DIR&&!fa(pa(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 va(t){let e=new Set([...t,...ot]),n=await Dn(),r=new Set([...n,...ma]);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 ka(){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 xa(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 wa(){try{return JSON.parse(await Ve(Ye(),"utf8"))}catch{return null}}async function Sa(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,ma,ha,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"],ma=["power","tkr-reducer"];ha=3600*1e3,Cn=10080*60*1e3});import{join as Ta}from"node:path";import{mkdir as Dc,readFile as Ea,writeFile as Ic,unlink as Pc,rename as Mc}from"node:fs/promises";function $a(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function Ra(t){return t?.dir??w()}async function ut(t){let e=Ra(t);try{let n=await Ea(Ta(e,Aa),"utf8"),r=JSON.parse(n),s=r.timeZone;return{...r,lastSettingsRevision:r.lastSettingsRevision??0,get timeZone(){return s??=$a()},bonusActive:r.bonusActive??!1,...r.bonusResetAt!==void 0?{bonusResetAt:r.bonusResetAt}:{}}}catch{return null}}var Aa,Ot=x(()=>{"use strict";z();Aa="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:()=>Ca});async function Ca(){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 Oa)e=e.replace(n,r);return e}var Oa,G,Bc,Hn=x(()=>{"use strict";Oa=[[/(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]",Bc=[[/(-----BEGIN [A-Z0-9 ]*PRIVATE KEY-----)(?:\r?\n(?:[A-Za-z0-9+/=]{16,}|[A-Za-z-]+: [^\r\n]*|\r?(?=\n)))*(?:(?:\r?\n[A-Za-z0-9+/=]{1,15})?\r?\n-----END [A-Z0-9 ]*PRIVATE KEY-----)?/g,`$1${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:"&&Na.has(e.hostname)&&!e.username&&!e.password?t:De}catch{return De}}var De,Na,Gn=x(()=>{"use strict";De="https://tokmizer.com",Na=new Set(["127.0.0.1","localhost"])});import Ie from"node:os";import{createHash as Da,randomUUID as Ia}from"node:crypto";import{readFile as Yn,writeFile as Jn,mkdir as Pa}from"node:fs/promises";async function Ma(){try{let n=(await Yn(je(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(n))return n}catch{}await Pa(w(),{recursive:!0});let t=Ia();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 Da("sha256").update(t).digest("hex")}function ja(){let t=Ie.networkInterfaces();for(let e of Object.keys(t))for(let n of t[e]??[])if(!n.internal&&n.mac&&n.mac!=="00:00:00:00:00:00")return n.mac;return"no-mac"}async function qn(){let t=await Ma(),e=Ie.hostname(),n=Ie.platform(),r=Ie.release(),s=Ie.cpus(),a=s[0]?.model??"unknown",o=s.length,i=Dt(ja()),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 La(){let t="0.9.65";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,It,Pt=x(()=>{"use strict";Za=za(import.meta.url);It=La()});var Xn=x(()=>{"use strict"});import{existsSync as Fa,mkdirSync as nu,rmSync as ru,writeFileSync as su}from"node:fs";import{join as Ua}from"node:path";function Ka(){return Ua(w(),"network-off")}function Ha(){let t=process.env.TOKMIZER_NETWORK;return t!==void 0&&Va.has(t.trim().toLowerCase())}function Be(){return Ha()?!1:!Fa(Ka())}function er(){if(!Be())throw new Mt}var Va,Ba,iu,Mt,dt=x(()=>{"use strict";z();Va=new Set(["0","off","false","no"]),Ba="Network is off for Tokmizer. Turn it back on with: tkr network on",iu=["Tokmizer contacts tokmizer.com to keep its rules up to date and to improve the product. No account or email is needed.","It sends a random install ID, your computer name, OS and CPU model, a hash of your network card address and of your user name, and the plugin version. Command contents and output are never sent.","Usage stats (command names, token counts and install health counts) are sent only while they are on. Check with: tkr telemetry status.","Turn all network access off: tkr network off. Usage stats only: tkr telemetry off."].join(`
4
+ `),Mt=class extends Error{constructor(){super(Ba),this.name="NetworkDisabledError"}}});import{createHmac as Wa,createPublicKey as lu,verify as fu}from"node:crypto";function Ga(t,e,n){return Wa("sha256",n).update(`${e}.${t}`).digest("hex")}async function tr(t,e,n,r){er();let s=Date.now(),a=n===void 0?"":JSON.stringify(n),o=r.signingSecret?Ga(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":It};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 lt("timeout",`${t} ${e} timed out after ${c}ms`):new lt("network",`${t} ${e} failed: ${y.message}`)}}var gu,lt,nr=x(()=>{"use strict";Pt();Xn();dt();gu=300*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 Ya,mkdirSync as bu,writeFileSync as vu}from"node:fs";import{join as Ja}from"node:path";function Qa(){return Ja(w(),qa)}function rr(){return Ya(Qa())}var qa,sr=x(()=>{"use strict";z();at();dt();Pt();qa="telemetry-notice-shown"});import{join as pt}from"node:path";import{appendFileSync as ir,chmodSync as Xa,existsSync as Ke,mkdirSync as Zt,readFileSync as Ut,renameSync as Lt,rmdirSync as cr,statSync as Vt,unlinkSync as Pe,utimesSync as eo,writeFileSync as Bt}from"node:fs";function Kt(t){return pt(He(),`${t}.lock`)}function no(t){let e=Kt(t);try{return Zt(He(),{recursive:!0,mode:448}),Zt(e),!0}catch{try{Date.now()-Vt(e).mtimeMs>to&&cr(e)}catch{return!1}return!1}}function ro(t){try{eo(Kt(t),new Date,new Date)}catch{return}}function so(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)+`
5
+ `,{mode:384}),Xa(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 ao(t){if(Vt(t).size<=Ft)return;let e=Ut(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>Ft)break;r.unshift(a)}Bt(t,r.length?r.join(`
7
7
  `)+`
8
- `:"",{mode:384})}function to(t){try{let e=ft(t),n=dt(t),r=`${n}.merging`;if(Ve(r)&&tr(e,r),Ve(e))Ve(n)&&(zt(n,r),tr(e,r));else{if(!Ve(n))return[];zt(n,e)}eo(e);let s=[];for(let a of Zt(e,"utf8").split(`
9
- `))if(a.trim())try{s.push(JSON.parse(a))}catch{continue}return s.length===0?(De(e),[]):s}catch{return[]}}function or(t){try{De(ft(t))}catch{return}}function no(t,e){if(e.length===0){or(t);return}let n=ft(t),r=`${n}.tmp`;Ut(r,e.map(s=>JSON.stringify(s)).join(`
8
+ `:"",{mode:384})}function oo(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)}ao(e);let s=[];for(let a of Ut(e,"utf8").split(`
9
+ `))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 io(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
10
  `)+`
11
- `,{mode:384}),zt(r,n)}async function ir(t,e,n={}){if(!Ue()||Mt.has(t)||!qa(t))return"fail";Mt.add(t);try{if(!(await Oe()).telemetryOptIn)return nr(t),"empty";if(!Xn())return"fail";let r=to(t);if(r.length===0)return"empty";let s=await it();if(!s)return"fail";if(n.requirePro&&s.plan!=="pro")return or(t),"ok";let a=n.baseUrl??process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",o=await Wn();for(let i=0;i<r.length;i+=Pt){if(!(await Oe()).telemetryOptIn)return nr(t),"empty";Qa(t);let c=await qn("POST",e,{events:r.slice(i,i+Pt),...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";no(t,r.slice(i+Pt))}return"ok"}catch{return"fail"}finally{Mt.delete(t),Xa(t)}}function nr(t){try{De(dt(t))}catch{}try{De(`${dt(t)}.merging`)}catch{}try{De(ft(t))}catch{return}}var Lt,Pt,Ya,Mt,cr=x(()=>{"use strict";z();$t();Gn();Qn();rt();ct();er();Lt=512*1024,Pt=100,Ya=12e4,Mt=new Set});var fr={};ve(fr,{commandName:()=>lr,flushTelemetry:()=>go,recordTelemetry:()=>ho});function po(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 uo.has(n.toLowerCase())?n:""}function mo(t,e,n){let r=0;for(;t==="git"&&r<n.length&&n[r].startsWith("-");)r+=fo.has(n[r])?2:1;let s=(n[r]??"").toLowerCase();return e.has(s)?`${t} ${s}`:t}function ur(t){let e=t.toLowerCase();return e.startsWith("git")||oo.has(e)}function lr(t){let e=t.trim().split(/\s+/).filter(c=>c.length>0),n=0;for(;n<e.length&&ao.test(e[n]??"");)n+=1;let r=po(e[n]??"");if(!r||!ro.test(r)||r.length>co)return"";let s=lo.get(r.toLowerCase());if(s)return mo(r.toLowerCase(),s,e.slice(n+1));if(ur(r)||io.test(r)||Ct(r)!==r)return"";let a=e[n+1];return a&&ur(a)?"":(a&&dr.has(r.toLowerCase())&&so.test(a)?`${r} ${a}`:r).slice(0,64)}async function ho(t){if(!t.telemetryOptIn)return;let e=lr(t.cmd),n=e&&Ct(e)===e?e:"other",r=t.sessionId?t.sessionId.replace(/[^A-Za-z0-9._-]/g,"").slice(0,64):"";ar("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 go(t){return ir("telemetry","/api/v1/telemetry",{baseUrl:t,consent:!0})}var ro,so,ao,oo,io,co,dr,uo,lo,fo,pr=x(()=>{"use strict";Bn();cr();ro=/^[a-z0-9][a-z0-9._-]*$/i,so=/^[a-z][a-z-]+$/,ao=/^[A-Za-z_][A-Za-z0-9_]*=/,oo=new Set(["gh","glab","gup","hub","gist"]),io=/^(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,co=24,dr=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"]),uo=new Set([...dr,"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"]),lo=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"])]]),fo=new Set(["-C","-c"])});function mr(t){return t?yo[t]??"anthropic":"anthropic"}var yo,hr=x(()=>{"use strict";yo={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});var jr={};ve(jr,{OVERSIZED_SHELL_BYTES:()=>Gt,QUOTA_TIERS:()=>He,clearStats:()=>Fo,countedSaving:()=>Bo,coverageSummary:()=>Jo,formatTokens:()=>T,monthlyProjectionUsd:()=>Ko,normalizeProject:()=>Nr,paybackTarget:()=>Go,projectLabel:()=>yi,quotaEstimate:()=>oi,readAgentDaily:()=>di,readDaily:()=>ti,readGain:()=>Xo,readHistory:()=>mi,recordStat:()=>Uo,renderByRule:()=>si,renderCsv:()=>li,renderDaily:()=>ci,renderFallbacks:()=>ai,renderGain:()=>ei,renderGraph:()=>pi,renderHistory:()=>gi,renderQuota:()=>ii,resolveSinceDays:()=>Pr,rotateStats:()=>Or,statCmdLabel:()=>Zo,statOutcome:()=>Vo,withInstallAge:()=>Ho});import{readFile as xr,rm as gr}from"node:fs/promises";import{appendFileSync as _o,chmodSync as bo,mkdirSync as vo,readFileSync as wr,realpathSync as ko,renameSync as Sr,rmSync as Tr,statSync as Er,writeFileSync as Bt}from"node:fs";import{basename as Ht,dirname as Ar,join as pt,resolve as xo,sep as wo}from"node:path";function mt(){return{n:0,nc:0,r:0,f:0,or:0,of:0,x:0,sn:0,sr:0,sf:0,mr:0,mf:0,rn:0,rb:0,tn:0,tr:0,tf:0,ox:0,t0:null,t1:null,cmds:{},prov:{},rl:{},fb:{}}}function Rr(t){let e=t.trim();if(!e)return null;try{let n=JSON.parse(e);return typeof n.t!="number"||!Number.isFinite(n.t)||n.t<0||n.t>864e10||typeof n.r!="number"||!Number.isSafeInteger(n.r)||n.r<0||typeof n.f!="number"||!Number.isSafeInteger(n.f)||n.f<0||n.r+n.f===0?null:{t:n.t,r:n.r,f:n.f,m:n.m===1,...typeof n.h=="string"?{h:n.h}:{},...typeof n.k=="string"?{k:n.k}:{},...typeof n.c=="string"&&n.c?{c:n.c}:{},...typeof n.p=="string"&&n.p?{p:n.p}:{},...typeof n.s=="string"&&n.s?{s:n.s}:{},...typeof n.o=="string"&&Ao.has(n.o)?{o:n.o}:{}}}catch{return null}}function $o(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 Co(t){return t.s==="b"?`b:${(t.c??"").split(" ")[0]||"other"}`:t.s?.startsWith("u:")?t.s:t.o==="n"?"n":"?"}function Oo(t,e){let n=Co(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 $r(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>Gt){t.ox+=1;return}if($o(t,e),e.k==="restore"?(t.rn+=1,t.rb+=e.f):Oo(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=mr(e.h),r=t.prov[n]??{r:0,f:0};r.r+=e.r,r.f+=e.f,t.prov[n]=r}}function No(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 Jt(t){return pt(Ar(t),To)}function Cr(t){let e=Jt(t),n;try{n=wr(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]={...mt(),...o});return s}catch{try{Sr(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function _r(t,e){let n=`${t}.tmp-${process.pid}`;Bt(n,e,{mode:384}),Sr(n,t)}function Do(t){try{return Bt(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-Er(t).mtimeMs<Eo?!1:(Tr(t,{force:!0}),Bt(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Or(t,e=yr,n=yr/2){try{if(Er(t).size<=e)return}catch{return}let r=`${t}.lock`;if(Do(r))try{let s=wr(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=Cr(t);for(let u of s.slice(0,a)){let l=Rr(u);if(!l)continue;let y=X(l.t),k=i[y]??mt();$r(k,l),i[y]=k}let c=s.slice(a);_r(t,c.length?`${c.join(`
11
+ `,{mode:384}),Lt(r,n)}async function lr(t,e,n={}){if(!Be()||zt.has(t)||!no(t))return"fail";zt.add(t);try{if(!(await Ne()).telemetryOptIn)return or(t),"empty";if(!rr())return"fail";let r=oo(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";ro(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";io(t,r.slice(i+jt))}return"ok"}catch{return"fail"}finally{zt.delete(t),so(t)}}function or(t){try{Pe(ft(t))}catch{}try{Pe(`${ft(t)}.merging`)}catch{}try{Pe(mt(t))}catch{return}}var Ft,jt,to,zt,fr=x(()=>{"use strict";Gn();z();Ot();Qn();nr();at();dt();sr();Ft=512*1024,jt=100,to=12e4,zt=new Set});var gr={};ke(gr,{commandName:()=>hr,flushTelemetry:()=>ko,recordTelemetry:()=>vo});function _o(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 ho.has(n.toLowerCase())?n:""}function bo(t,e,n){let r=0;for(;t==="git"&&r<n.length&&n[r].startsWith("-");)r+=yo.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")||fo.has(e)}function hr(t){let e=t.trim().split(/\s+/).filter(c=>c.length>0),n=0;for(;n<e.length&&lo.test(e[n]??"");)n+=1;let r=_o(e[n]??"");if(!r||!co.test(r)||r.length>mo)return"";let s=go.get(r.toLowerCase());if(s)return bo(r.toLowerCase(),s,e.slice(n+1));if(pr(r)||po.test(r)||Nt(r)!==r)return"";let a=e[n+1];return a&&pr(a)?"":(a&&mr.has(r.toLowerCase())&&uo.test(a)?`${r} ${a}`:r).slice(0,64)}async function vo(t){if(!t.telemetryOptIn)return;let e=hr(t.cmd),n=e&&Nt(e)===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 ko(t){return lr("telemetry","/api/v1/telemetry",{baseUrl:t,consent:!0})}var co,uo,lo,fo,po,mo,mr,ho,go,yo,yr=x(()=>{"use strict";Hn();fr();co=/^[a-z0-9][a-z0-9._-]*$/i,uo=/^[a-z][a-z-]+$/,lo=/^[A-Za-z_][A-Za-z0-9_]*=/,fo=new Set(["gh","glab","gup","hub","gist"]),po=/^(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,mo=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"]),ho=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"]),go=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"])]]),yo=new Set(["-C","-c"])});function _r(t){return t?xo[t]??"anthropic":"anthropic"}var xo,br=x(()=>{"use strict";xo={"claude-code":"anthropic",codex:"openai",copilot:"openai","gemini-cli":"google",cursor:"anthropic",windsurf:"anthropic",cline:"anthropic",aider:"anthropic",shell:"anthropic"}});var Fr={};ke(Fr,{OVERSIZED_SHELL_BYTES:()=>Jt,QUOTA_TIERS:()=>We,clearStats:()=>Ho,countedSaving:()=>Yo,coverageSummary:()=>ei,formatTokens:()=>T,monthlyProjectionUsd:()=>qo,normalizeProject:()=>Mr,paybackTarget:()=>Xo,projectLabel:()=>xi,quotaEstimate:()=>li,readAgentDaily:()=>hi,readDaily:()=>oi,readGain:()=>si,readHistory:()=>bi,recordStat:()=>Wo,renderByRule:()=>ui,renderCsv:()=>gi,renderDaily:()=>pi,renderFallbacks:()=>di,renderGain:()=>ai,renderGraph:()=>_i,renderHistory:()=>ki,renderQuota:()=>fi,resolveSinceDays:()=>Zr,rotateStats:()=>Pr,statCmdLabel:()=>Ko,statOutcome:()=>Go,withInstallAge:()=>Jo});import{readFile as Er,rm as vr}from"node:fs/promises";import{appendFileSync as wo,chmodSync as So,mkdirSync as To,readFileSync as Ar,realpathSync as Eo,renameSync as $r,rmSync as Rr,statSync as Cr,writeFileSync as Ht}from"node:fs";import{basename as Wt,dirname as Or,join as ht,resolve as Ao,sep as $o}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 Nr(t){let e=t.trim();if(!e)return null;try{let n=JSON.parse(e);return typeof n.t!="number"||!Number.isFinite(n.t)||n.t<0||n.t>864e10||typeof n.r!="number"||!Number.isSafeInteger(n.r)||n.r<0||typeof n.f!="number"||!Number.isSafeInteger(n.f)||n.f<0||n.r+n.f===0?null:{t:n.t,r:n.r,f:n.f,m:n.m===1,...typeof n.h=="string"?{h:n.h}:{},...typeof n.k=="string"?{k:n.k}:{},...typeof n.c=="string"&&n.c?{c:n.c}:{},...typeof n.p=="string"&&n.p?{p:n.p}:{},...typeof n.s=="string"&&n.s?{s:n.s}:{},...typeof n.o=="string"&&No.has(n.o)?{o:n.o}:{}}}catch{return null}}function Io(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 Po(t){return t.s==="b"?`b:${(t.c??"").split(" ")[0]||"other"}`:t.s?.startsWith("u:")?t.s:t.o==="n"?"n":"?"}function Mo(t,e){let n=Po(e),r=t.rl[n]??{n:0,nc:0,r:0,f:0};if(r.n+=1,r.r+=e.r,r.f+=e.f,e.f<e.r&&(r.nc+=1),t.rl[n]=r,e.f>=e.r&&e.o){let s=`${e.o} ${e.c??""}`,a=t.fb[s]??{n:0,r:0};a.n+=1,a.r+=e.r,t.fb[s]=a}}function Dr(t,e){if(e.m){t.mr+=e.r,t.mf+=e.f;return}if(t.t0=t.t0==null?e.t:Math.min(t.t0,e.t),t.t1=t.t1==null?e.t:Math.max(t.t1,e.t),e.k==="sh"&&e.r>Jt){t.ox+=1;return}if(Io(t,e),e.k==="restore"?(t.rn+=1,t.rb+=e.f):Mo(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=_r(e.h),r=t.prov[n]??{r:0,f:0};r.r+=e.r,r.f+=e.f,t.prov[n]=r}}function jo(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(Or(t),Co)}function Ir(t){let e=qt(t),n;try{n=Ar(e,"utf8")}catch{return{}}try{let r=JSON.parse(n);if(!r.days||typeof r.days!="object")throw new Error("invalid ledger");let s={};for(let[a,o]of Object.entries(r.days))!/^\d{4}-\d{2}-\d{2}$/.test(a)||!o||typeof o!="object"||(s[a]={...gt(),...o});return s}catch{try{$r(e,`${e}.corrupt-${Date.now()}`)}catch{}return{}}}function xr(t,e){let n=`${t}.tmp-${process.pid}`;Ht(n,e,{mode:384}),$r(n,t)}function zo(t){try{return Ht(t,String(process.pid),{flag:"wx",mode:384}),!0}catch{}try{return Date.now()-Cr(t).mtimeMs<Oo?!1:(Rr(t,{force:!0}),Ht(t,String(process.pid),{flag:"wx",mode:384}),!0)}catch{return!1}}function Pr(t,e=kr,n=kr/2){try{if(Cr(t).size<=e)return}catch{return}let r=`${t}.lock`;if(zo(r))try{let s=Ar(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=Ir(t);for(let u of s.slice(0,a)){let l=Nr(u);if(!l)continue;let y=ee(l.t),k=i[y]??gt();Dr(k,l),i[y]=k}let c=s.slice(a);xr(t,c.length?`${c.join(`
13
13
  `)}
14
- `:""),_r(Jt(t),JSON.stringify({v:1,days:i}))}catch{return}finally{Tr(r,{force:!0})}}function Nr(t){let e=xo(t),n=e,r="";for(;;){try{return pt(ko(n),r)}catch{}let s=Ar(n);if(s===n)return e;r=r?pt(Ht(n),r):Ht(n),n=s}}function Io(t,e){return t.p!=null&&(t.p===e||t.p.startsWith(e+wo))}async function Dr(t,e,n){let r="";try{r=await xr(t,"utf8")}catch{}let s=[];for(let a of r.split(`
15
- `)){let o=Rr(a);!o||o.t<e||n!=null&&!Io(o,n)||s.push(o)}return s}async function Yt(t,e,n){let r=e>0?X(e):"",s=new Map;if(n==null)for(let[a,o]of Object.entries(Cr(t)))a>=r&&s.set(a,o);for(let a of await Dr(t,e,n)){let o=X(a.t),i=s.get(o)??mt();$r(i,a),s.set(o,i)}return s}function br(t){return t.length===0||t[0]==="cd"||t.every(e=>Ir.test(e))}function Lo(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(),br(e)){e=[];continue}return e}n+=o,r=!0}return a(),br(e)?[]:e}function Zo(t){let e=Lo(t).map(i=>i.replace(/^[({]+/,"")).filter(Boolean),n=0;for(;n<e.length;){let i=e[n];if(Ir.test(i)){n+=1;continue}if(Po.has(i)){for(n+=1;n<e.length;){let c=e[n];if(c.startsWith("-")){n+=Mo.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("-")&&jo.test(a)&&zo.has(s.toLowerCase())?`${s} ${a}`:s).slice(0,24)}function Ie(){return pt(w(),So)}async function Fo(t=Ie()){try{let n=(await xr(t,"utf8")).split(`
17
- `).filter(r=>r.trim()!=="").length;return await gr(t,{force:!0}),await gr(Jt(t),{force:!0}),n}catch{return 0}}function Uo(t,e,n=Ie(),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?Nr(i):"",E=k&&k.length<=Ro?`,"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{vo(w(),{recursive:!0,mode:448}),_o(n,be,{mode:384}),bo(n,384),Or(n)}catch{return}}function Vo(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 Bo(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 Pr(t,e,n){return typeof t=="number"&&t>0?Math.max(1,Math.ceil((e-t)/86400)):Math.max(1,n)}function Ho(t,e,n){return{...t,sinceDays:Pr(e,n,t.sinceDays)}}function Ko(t,e,n){return t<=0||e<=0||n<=0?0:t/e*30/1e6*n}function Go(t){return t==="pro"?{priceUsd:Wo,label:"Pro plan",upsell:!1}:t==="smart"?{priceUsd:vr,label:"Smart plan",upsell:!1}:{priceUsd:vr,label:"Smart plan",upsell:!0}}function S(t){return Math.ceil(t/4)}function Jo(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 Yo(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 Qo(t){return Object.entries(t.fb).map(([e,n])=>{let[r,s]=e.split(" ");return{cmd:s||"other",reason:qo[r]??"no-rule",count:n.n,tokens:S(n.r)}}).sort((e,n)=>n.tokens-e.tokens||n.count-e.count)}async function Xo(t=Ie(),e=0,n){let r=mt();for(let Z of(await Yt(t,e,n)).values())No(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 yt=S($.r-($.tr??0)),Xt=yt-S($.f-($.tf??0)),_t=S($.rr??0),Lr=_t?Math.round((_t-S($.rf??0))/_t*100):0;return{cmd:Z,count:$.n-($.tn??0),compressedCount:$.nc,savedTokens:Xt,avgPct:yt?Math.round(Xt/yt*100):0,reducedPct:Lr,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:Yo(r),fallbacks:Qo(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 Mr(t){return t<0?`-${Mr(-t)}`:t>0&&t<.01?"<$0.01":`$${t.toFixed(2)}`}function C(t){return String(t).replace(/\B(?=(\d{3})+(?!\d))/g,",")}function Ke(t,e){let n="\u2588".repeat(t);return e?`${ht}${n}${gt}`:n}function ei(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=Ke(c,e.color)+"\u2591".repeat(24-c),l=Mr(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)}${Qt(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 ${ri(e.restoreCache.bytes)} \xB7 kept ${e.restoreCache.kept}`]:[],...t.modeledSavedTokens>0?[`${i("Reducer (est.)")}${T(t.modeledSavedTokens)} tokens, not included`]:[],...ni(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(Gt)} characters are not counted: Claude Code shows at most that much.`]:[],""].join(`
20
- `)}async function ti(t=Ie(),e=0,n){return[...(await Yt(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 ni(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=Ke(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 ri(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 si(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)} ${Ke(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 ai(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)} ${kr[o.reason].short}`)}),s.push(a);for(let o of["no-rule","no-gain","failed-run"])n.some(i=>i.reason===o)&&s.push(` ${kr[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 oi(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=Kt*Wt*He[e].multiplier;return{tier:e,plan:He[e].plan,savedTokens:n,days:r,monthlySavedTokens:s,monthlyBudgetTokens:a,pct:Math.round(s/a*1e3)/10,basis:"estimate",formula:`savedTokens / days * 30 / (${Kt} tokens per 5-hour window * ${Wt} windows * ${He[e].multiplier})`}}function ii(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")}${Ke(r,e.color)}${"\u2591".repeat(24-r)} ${t.pct} %`,""," Estimate, not a plan limit. Formula: tokens saved \xF7 days \xD7 30",` \xF7 (${T(Kt)} tokens per 5-hour window \xD7 ${Wt} windows \xD7 ${He[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 Qt(t){return t<0?`${T(-t)} added`:`${T(t)} saved`}function ci(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?`${ht}${c}${gt}`:c,""].join(`
24
- `)}function ui(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 di(t=Ie(),e=0,n){return[...(await Yt(t,e,n)).entries()].filter(([,r])=>r.n-r.tn>0).sort(([r],[s])=>r<s?-1:r>s?1:0).map(([r,s])=>ui(r,s))}function li(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(`
14
+ `:""),xr(qt(t),JSON.stringify({v:1,days:i}))}catch{return}finally{Rr(r,{force:!0})}}function Mr(t){let e=Ao(t),n=e,r="";for(;;){try{return ht(Eo(n),r)}catch{}let s=Or(n);if(s===n)return e;r=r?ht(Wt(n),r):Wt(n),n=s}}function Zo(t,e){return t.p!=null&&(t.p===e||t.p.startsWith(e+$o))}async function jr(t,e,n){let r="";try{r=await Er(t,"utf8")}catch{}let s=[];for(let a of r.split(`
15
+ `)){let o=Nr(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?ee(e):"",s=new Map;if(n==null)for(let[a,o]of Object.entries(Ir(t)))a>=r&&s.set(a,o);for(let a of await jr(t,e,n)){let o=ee(a.t),i=s.get(o)??gt();Dr(i,a),s.set(o,i)}return s}function wr(t){return t.length===0||t[0]==="cd"||t.every(e=>zr.test(e))}function Bo(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(),wr(e)){e=[];continue}return e}n+=o,r=!0}return a(),wr(e)?[]:e}function Ko(t){let e=Bo(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(Lo.has(i)){for(n+=1;n<e.length;){let c=e[n];if(c.startsWith("-")){n+=Fo.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("-")&&Uo.test(a)&&Vo.has(s.toLowerCase())?`${s} ${a}`:s).slice(0,24)}function Me(){return ht(w(),Ro)}async function Ho(t=Me()){try{let n=(await Er(t,"utf8")).split(`
17
+ `).filter(r=>r.trim()!=="").length;return await vr(t,{force:!0}),await vr(qt(t),{force:!0}),n}catch{return 0}}function Wo(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?Mr(i):"",E=k&&k.length<=Do?`,"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}${E}${j}${te}}
18
+ `;try{To(w(),{recursive:!0,mode:448}),wo(n,ve,{mode:384}),So(n,384),Pr(n)}catch{return}}function Go(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 Yo(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 qo(t,e,n){return t<=0||e<=0||n<=0?0:t/e*30/1e6*n}function Xo(t){return t==="pro"?{priceUsd:Qo,label:"Pro plan",upsell:!1}:t==="smart"?{priceUsd:Sr,label:"Smart plan",upsell:!1}:{priceUsd:Sr,label:"Smart plan",upsell:!0}}function S(t){return Math.ceil(t/4)}function ei(t){if(!t.count)return null;let e=Math.round(t.compressedCount/t.count*100),n=(t.byCommand??[]).filter(s=>!s.native&&s.compressedCount===0).sort((s,a)=>a.count-s.count).slice(0,3).map(s=>s.cmd),r=n.length?` \xB7 top unchanged: ${n.join(", ")}`:"";return`${e}% of recorded outputs reduced (${t.compressedCount}/${t.count})${r}`}function ti(t){let e=Object.values(t.rl).reduce((s,a)=>s+a.n,0),n=t.n-t.rn-e,r=n>0?{...t.rl,"?":{...t.rl["?"]??{n:0,nc:0,r:0,f:0},n:(t.rl["?"]?.n??0)+n}}:t.rl;return Object.entries(r).map(([s,a])=>{let o=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 ri(t){return Object.entries(t.fb).map(([e,n])=>{let[r,s]=e.split(" ");return{cmd:s||"other",reason:ni[r]??"no-rule",count:n.n,tokens:S(n.r)}}).sort((e,n)=>n.tokens-e.tokens||n.count-e.count)}async function si(t=Me(),e=0,n){let r=gt();for(let L of(await Qt(t,e,n)).values())jo(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),Vr=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:Vr,native:!R.sh}}).sort((L,R)=>R.savedTokens-L.savedTokens).slice(0,10),E=S(r.sr),j=E?Math.round((E-S(r.sf))/E*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:ti(r),fallbacks:ri(r),oversizedExcluded:r.ox,window:{firstAt:r.t0,lastAt:r.t1},measurement:{scope:"tool-output",legacyScope:"reduced-outputs",tokenMethod:"bytes/4",tokenCounts:"estimated",billing:"not-measured"}}}function 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 Ge(t,e){let n="\u2588".repeat(t);return e?`${yt}${n}${_t}`:n}function ai(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=Ge(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)}${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")}${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 ${ci(e.restoreCache.bytes)} \xB7 kept ${e.restoreCache.kept}`]:[],...t.modeledSavedTokens>0?[`${i("Reducer (est.)")}${T(t.modeledSavedTokens)} tokens, not included`]:[],...ii(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 oi(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 ii(t,e){let n=(t??[]).filter(o=>o.savedTokens>0).slice(0,10);if(n.length===0)return[];let r=n[0].savedTokens,s=" "+"\u2500".repeat(60),a=[""," By command",s,` ${" #".padEnd(4)}${"Command".padEnd(20)}${"Runs".padStart(7)}${"Saved".padStart(9)}${"Avg%".padStart(7)} Impact`,s];return n.forEach((o,i)=>{let c=Math.max(1,Math.round(o.savedTokens/r*10)),u=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)}${T(o.savedTokens).padStart(9)}${(String(o.avgPct)+" %").padStart(7)} ${u}`)}),a.push(s),a}function ci(t){return t>=1024*1024?`${(t/(1024*1024)).toFixed(1)} MB`:`${Math.max(1,Math.round(t/1024))} KB`}function Xt(t,e){return[` ${t} \xB7 ${e??"all time"}`," "+"\u2550".repeat(60),""]}function ui(t,e){let n=t.byRule??[],r=n.filter(i=>i.kind==="built-in"||i.kind==="user").slice(0,15),s=n.find(i=>i.kind==="none"),a=n.find(i=>i.kind==="unattributed"),o=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)}${T(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"}, ${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 di(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)}${T(o.tokens).padStart(9)} ${Tr[o.reason].short}`)}),s.push(a);for(let o of["no-rule","no-gain","failed-run"])n.some(i=>i.reason===o)&&s.push(` ${Tr[o].note}`)}return r?.count&&s.push(` ${C(r.count)} older run${r.count===1?"":"s"} recorded before this report existed have no details.`),s.push(""),s.join(`
22
+ `)}function li(t,e){let n=Math.max(0,t.agent?t.agent.rawTokens-t.agent.filteredTokens:t.observed?.savedTokens??t.savedTokens),r=Math.max(1,t.sinceDays),s=Math.round(n/r*30),a=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 fi(t,e){let n=s=>` ${s.padEnd(16)}`,r=Math.max(0,Math.min(24,Math.round(Math.min(100,t.pct)/100*24)));return[...Xt("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")}${Ge(r,e.color)}${"\u2591".repeat(24-r)} ${t.pct} %`,""," Estimate, not a plan limit. Formula: tokens saved \xF7 days \xD7 30",` \xF7 (${T(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(`
23
+ `)}function en(t){return t<0?`${T(-t)} added`:`${T(t)} saved`}function pi(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?`${yt}${c}${_t}`:c,""].join(`
24
+ `)}function mi(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 hi(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])=>mi(r,s))}function gi(t){let e=["date,commands,tokens_in,tokens_out,tokens_saved,percent"];for(let n of t)e.push(`${n.day},${n.count},${n.rawTokens},${n.filteredTokens},${n.savedTokens},${n.pct}`);return e.join(`
25
25
  `)+`
26
- `}function fi(t){return`${t.slice(8,10)}/${t.slice(5,7)}`}function pi(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(` ${fi(E)} ${Ke(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)} ${Qt(y).padStart(11)}`;return l.push(u,e.color?`${ht}${k}${gt}`:k,""," Estimates from output size (bytes \xF7 4), not provider-counted tokens.",""),l.join(`
27
- `)}async function mi(t=Ie(),e=0,n,r=20){return(await Dr(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 hi(t){let e=new Date(t*1e3);return`${X(t)} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function gi(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(` ${hi(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)}${Qt(s).padStart(10)}`;return r.push(n,e.color?`${ht}${a}${gt}`:a,""),r.join(`
29
- `)}function yi(t){return Ht(t)||t}var So,To,yr,Eo,Gt,Ao,Ro,Po,Mo,jo,zo,Ir,vr,Wo,qo,ht,gt,kr,He,Kt,Wt,zr=x(()=>{"use strict";z();hr();So="stats.jsonl",To="stats-ledger.json",yr=2*1024*1024,Eo=3e4,Gt=3e4,Ao=new Set(["n","g","e"]),Ro=256;Po=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Mo=new Set(["-u","-g","-n","-s","-k"]),jo=/^[a-z0-9][a-z0-9._-]*$/i,zo=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"]),Ir=/^[A-Za-z_][A-Za-z0-9_]*=/;vr=4.99,Wo=9.99;qo={n:"no-rule",g:"no-gain",e:"failed-run"};ht="\x1B[38;2;245;176;65m",gt="\x1B[0m";kr={"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."}};He={pro:{plan:"Claude Pro",multiplier:1},"5x":{plan:"Claude Max 5x",multiplier:5},"20x":{plan:"Claude Max 20x",multiplier:20}},Kt=44e3,Wt=144});import{openSync as _i,fstatSync as bi,readSync as vi,closeSync as ki}from"node:fs";z();import{readFileSync as Fr}from"node:fs";import{join as Ur}from"node:path";z();var Ii=24*36e5;function tn(){try{let t=JSON.parse(Fr(Ur(w(),"settings-cache.json"),"utf8"));return t.enabled!==!1&&typeof t.reducer=="string"&&t.reducer!=="off"}catch{return!1}}var xi={light:.25,balanced:.45,max:.7},wi=256*1024,Si=2e3,Ti=5;function Ei(t){let e=_i(t,"r");try{let n=bi(e).size,r=Math.max(0,n-wi),s=Buffer.alloc(n-r);return vi(e,s,0,s.length,r),s.toString("utf8")}finally{ki(e)}}function Ai(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 Ri(){if(!tn())return;let{loadSettingsCache:t}=await Promise.resolve().then(()=>(rt(),An)),{readSkill:e}=await Promise.resolve().then(()=>(Mn(),Pn)),{reducerStillEntitled:n}=await Promise.resolve().then(()=>(Vn(),Un)),{recordTelemetry:r}=await Promise.resolve().then(()=>(pr(),fr)),{recordStat:s}=await Promise.resolve().then(()=>(zr(),jr)),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=xi[c.reducer];if(!u||!await n()||!await e(`reducer-${c.reducer}`))return;let l=Ai(Ei(i));if(l<=0)return;let y=Math.ceil(l/4),k=Math.min(Si,Math.round(y*u/(1-u)));k<Ti||(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"}))}Ri().catch(()=>{});
26
+ `}function yi(t){return`${t.slice(8,10)}/${t.slice(5,7)}`}function _i(t,e){let n=new Map(t.map(E=>[E.day,E])),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 E=ee(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,te=c>0&&j>0?Math.max(1,Math.round(j/c*i)):0,ve=j<0?`${T(-j)} added`:T(j);l.push(` ${yi(E)} ${Ge(te,e.color)}${"\u2591".repeat(i-te)} ${ve.padStart(11)}`)}let y=t.reduce((E,j)=>E+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(`
27
+ `)}async function bi(t=Me(),e=0,n,r=20){return(await jr(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 vi(t){let e=new Date(t*1e3);return`${ee(t)} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function ki(t,e){if(t.length===0)return` No commands recorded in this scope.
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(` ${vi(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)}${en(s).padStart(10)}`;return r.push(n,e.color?`${yt}${a}${_t}`:a,""),r.join(`
29
+ `)}function xi(t){return Wt(t)||t}var Ro,Co,kr,Oo,Jt,No,Do,Lo,Fo,Uo,Vo,zr,Sr,Qo,ni,yt,_t,Tr,We,Gt,Yt,Ur=x(()=>{"use strict";z();br();Ro="stats.jsonl",Co="stats-ledger.json",kr=2*1024*1024,Oo=3e4,Jt=3e4,No=new Set(["n","g","e"]),Do=256;Lo=new Set(["sudo","command","time","nice","nohup","env","stdbuf","timeout"]),Fo=new Set(["-u","-g","-n","-s","-k"]),Uo=/^[a-z0-9][a-z0-9._-]*$/i,Vo=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_]*=/;Sr=4.99,Qo=9.99;ni={n:"no-rule",g:"no-gain",e:"failed-run"};yt="\x1B[38;2;245;176;65m",_t="\x1B[0m";Tr={"no-rule":{short:"no rule",note:"no rule: neither a built-in nor a custom filter matches this command (see tkr doctor)."},"no-gain":{short:"nothing to cut",note:"nothing to cut: a rule matched, but the output was short or would not shrink."},"failed-run":{short:"failed run, in full",note:"failed run, in full: error output is kept whole so the agent can debug."}};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 wi,fstatSync as Si,readSync as Ti,closeSync as Ei}from"node:fs";z();import{readFileSync as Kr}from"node:fs";import{join as Hr}from"node:path";z();var Zi=24*36e5;function rn(){try{let t=JSON.parse(Kr(Hr(w(),"settings-cache.json"),"utf8"));return t.enabled!==!1&&typeof t.reducer=="string"&&t.reducer!=="off"}catch{return!1}}var Ai={light:.25,balanced:.45,max:.7},$i=256*1024,Ri=2e3,Ci=5;function Oi(t){let e=wi(t,"r");try{let n=Si(e).size,r=Math.max(0,n-$i),s=Buffer.alloc(n-r);return Ti(e,s,0,s.length,r),s.toString("utf8")}finally{Ei(e)}}function Ni(t){let e=t.split(`
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 Di(){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(()=>(yr(),gr)),{recordStat:s}=await Promise.resolve().then(()=>(Ur(),Fr)),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=Ai[c.reducer];if(!u||!await n()||!await e(`reducer-${c.reducer}`))return;let l=Ni(Oi(i));if(l<=0)return;let y=Math.ceil(l/4),k=Math.min(Ri,Math.round(y*u/(1-u)));k<Ci||(s((y+k)*4,y*4,void 0,!0,"claude-code",void 0,void 0,typeof o.cwd=="string"&&o.cwd?o.cwd:process.cwd()),await r({cmd:"reducer",tokensSaved:k,optimized:!0,telemetryOptIn:c.telemetryOptIn,sessionId:o.session_id,host:"claude-code"}))}Di().catch(()=>{});