@tokmizer/plugin 0.5.7 → 0.5.9

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.
package/dist/bin/tkr.js CHANGED
@@ -1,15 +1,17 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __tkrCreateRequire } from "node:module"; const require = __tkrCreateRequire(import.meta.url);
3
- var rs=Object.defineProperty;var x=(t,e)=>()=>(t&&(e=t(t=0)),e);var Fe=(t,e)=>{for(var r in e)rs(t,r,{get:e[r],enumerable:!0})};import xr from"node:os";import{join as J}from"node:path";function b(){return process.env.TOKMIZER_HOME||J(xr.homedir(),".tokmizer")}function Ot(){return J(b(),"install-id")}function Sr(){return J(b(),"enroll-cooldown")}function Pt(){return J(b(),"bundle-refresh.json")}function Xe(){return J(b(),"skills")}function Te(t){return J(Xe(),`${t}.md`)}function Qe(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||J(xr.homedir(),".claude","commands")}function Ve(t){return J(Qe(),`${t}.md`)}var j=x(()=>{"use strict"});import Re from"node:os";import{createHash as ns,randomUUID as ss}from"node:crypto";import{readFile as is,writeFile as as,mkdir as os}from"node:fs/promises";async function Dt(){try{let r=(await is(Ot(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(r))return r}catch{}await os(b(),{recursive:!0});let t=ss();return await as(Ot(),t,{mode:384}),t}function $t(t){return ns("sha256").update(t).digest("hex")}function cs(){let t=Re.networkInterfaces();for(let e of Object.keys(t))for(let r of t[e]??[])if(!r.internal&&r.mac&&r.mac!=="00:00:00:00:00:00")return r.mac;return"no-mac"}async function L(){let t=await Dt(),e=Re.hostname(),r=Re.platform(),n=Re.release(),s=Re.cpus(),i=s[0]?.model??"unknown",a=s.length,o=$t(cs()),c=$t(Re.userInfo().username),u=[e,r,n,i,String(a),o,c,t].join("|");return{fingerprint:$t(u),installId:t,hostname:e,os:r,osVersion:n,cpuModel:i,cpuCores:a,macHash:o,usernameHash:c}}var Ce=x(()=>{"use strict";j()});import{join as Nt}from"node:path";import{mkdir as us,readFile as ls,writeFile as ds,unlink as ms,rename as fs}from"node:fs/promises";function Ie(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function jt(t){return t?.dir??b()}async function A(t){let e=jt(t);try{let r=await ls(Nt(e,Mt),"utf8"),n=JSON.parse(r);return{...n,lastSettingsRevision:n.lastSettingsRevision??0,timeZone:n.timeZone??Ie(),bonusActive:n.bonusActive??!1,...n.bonusResetAt!==void 0?{bonusResetAt:n.bonusResetAt}:{}}}catch{return null}}async function et(t,e){let r=jt(e);await us(r,{recursive:!0});let n=Nt(r,Mt),s=`${n}.tmp`;await ds(s,JSON.stringify(t,null,2),{mode:384}),await fs(s,n)}async function tt(t){let e=jt(t);try{await ms(Nt(e,Mt))}catch{return}}var Mt,$o,X=x(()=>{"use strict";j();Mt="state.json",$o={lastSettingsRevision:0,timeZone:Ie(),bonusActive:!1}});import{createRequire as ps}from"node:module";function gs(){for(let t of["../package.json","../../package.json"])try{let e=hs(t).version;if(typeof e=="string"&&e)return e}catch{}return"0.0.0"}var hs,ae,zt=x(()=>{"use strict";hs=ps(import.meta.url);ae=gs()});var Er,Ar=x(()=>{"use strict";Er=`-----BEGIN PUBLIC KEY-----
3
+ var cs=Object.defineProperty;var E=(t,e)=>()=>(t&&(e=t(t=0)),e);var Ve=(t,e)=>{for(var r in e)cs(t,r,{get:e[r],enumerable:!0})};var k,Mt,m,Z,Ue=E(()=>{(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw new Error}t.assertNever=r,t.arrayToEnum=s=>{let i={};for(let a of s)i[a]=a;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(let o of i)a[o]=s[o];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},t.find=(s,i)=>{for(let a of s)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(k||(k={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Mt||(Mt={}));m=k.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Z=t=>{switch(typeof t){case"undefined":return m.undefined;case"string":return m.string;case"number":return Number.isNaN(t)?m.nan:m.number;case"boolean":return m.boolean;case"function":return m.function;case"bigint":return m.bigint;case"symbol":return m.symbol;case"object":return Array.isArray(t)?m.array:t===null?m.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?m.promise:typeof Map<"u"&&t instanceof Map?m.map:typeof Set<"u"&&t instanceof Set?m.set:typeof Date<"u"&&t instanceof Date?m.date:m.object;default:return m.unknown}}});var l,us,C,nt=E(()=>{Ue();l=k.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"]),us=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),C=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c<a.path.length;){let u=a.path[c];c===a.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(r(a))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,k.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];r[i]=r[i]||[],r[i].push(e(s))}else n.push(e(s));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};C.create=t=>new C(t)});var ls,K,jt=E(()=>{nt();Ue();ls=(t,e)=>{let r;switch(t.code){case l.invalid_type:t.received===m.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case l.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,k.jsonStringifyReplacer)}`;break;case l.unrecognized_keys:r=`Unrecognized key(s) in object: ${k.joinValues(t.keys,", ")}`;break;case l.invalid_union:r="Invalid input";break;case l.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${k.joinValues(t.options)}`;break;case l.invalid_enum_value:r=`Invalid enum value. Expected ${k.joinValues(t.options)}, received '${t.received}'`;break;case l.invalid_arguments:r="Invalid function arguments";break;case l.invalid_return_type:r="Invalid function return type";break;case l.invalid_date:r="Invalid date";break;case l.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:k.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case l.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case l.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case l.custom:r="Invalid input";break;case l.invalid_intersection_types:r="Intersection results could not be merged";break;case l.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case l.not_finite:r="Number must be finite";break;default:r=e.defaultError,k.assertNever(t)}return{message:r}},K=ls});function ds(t){Cr=t}function Re(){return Cr}var Cr,st=E(()=>{jt();Cr=K});function d(t,e){let r=Re(),n=Be({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===K?void 0:K].filter(s=>!!s)});t.common.issues.push(n)}var Be,ms,A,g,oe,R,it,at,J,Ce,zt=E(()=>{st();jt();Be=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,i=[...r,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)o=u(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}},ms=[];A=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let s of r){if(s.status==="aborted")return g;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let i=await s.key,a=await s.value;n.push({key:i,value:a})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return g;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}},g=Object.freeze({status:"aborted"}),oe=t=>({status:"dirty",value:t}),R=t=>({status:"valid",value:t}),it=t=>t.status==="aborted",at=t=>t.status==="dirty",J=t=>t.status==="valid",Ce=t=>typeof Promise<"u"&&t instanceof Promise});var Ir=E(()=>{});var p,Or=E(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(p||(p={}))});function v(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(a,o)=>{let{message:c}=t;return a.code==="invalid_enum_value"?{message:c??o.defaultError}:typeof o.data>"u"?{message:c??n??o.defaultError}:a.code!=="invalid_type"?{message:o.defaultError}:{message:c??r??o.defaultError}},description:s}}function Nr(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function Cs(t){return new RegExp(`^${Nr(t)}$`)}function Mr(t){let e=`${Dr}T${Nr(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Is(t,e){return!!((e==="v4"||!e)&&bs.test(t)||(e==="v6"||!e)&&Ss.test(t))}function Os(t,e){if(!_s.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),s=JSON.parse(atob(n));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function Ps(t,e){return!!((e==="v4"||!e)&&xs.test(t)||(e==="v6"||!e)&&Es.test(t))}function $s(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function Ie(t){if(t instanceof I){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=D.create(Ie(n))}return new I({...t._def,shape:()=>e})}else return t instanceof W?new W({...t._def,type:Ie(t.element)}):t instanceof D?D.create(Ie(t.unwrap())):t instanceof V?V.create(Ie(t.unwrap())):t instanceof F?F.create(t.items.map(e=>Ie(e))):t}function Zt(t,e){let r=Z(t),n=Z(e);if(t===e)return{valid:!0,data:t};if(r===m.object&&n===m.object){let s=k.objectKeys(e),i=k.objectKeys(t).filter(o=>s.indexOf(o)!==-1),a={...t,...e};for(let o of i){let c=Zt(t[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(r===m.array&&n===m.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i<t.length;i++){let a=t[i],o=e[i],c=Zt(a,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return r===m.date&&n===m.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function jr(t,e){return new _e({values:t,typeName:y.ZodEnum,...v(e)})}function $r(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function zr(t,e={},r){return t?Q.create().superRefine((n,s)=>{let i=t(n);if(i instanceof Promise)return i.then(a=>{if(!a){let o=$r(e,n),c=o.fatal??r??!0;s.addIssue({code:"custom",...o,fatal:c})}});if(!i){let a=$r(e,n),o=a.fatal??r??!0;s.addIssue({code:"custom",...a,fatal:o})}}):Q.create()}var N,Pr,w,fs,ps,hs,gs,ys,_s,vs,ws,ks,Lt,bs,xs,Ss,Es,As,Ts,Dr,Rs,X,ce,ue,le,de,Oe,me,fe,Q,G,j,Pe,W,I,pe,q,ot,he,F,ct,$e,De,ut,ge,ye,_e,ve,ee,M,D,V,we,ke,Ne,Ds,He,Ke,be,Ns,y,Ms,Lr,Zr,js,zs,Fr,Ls,Zs,Fs,Vs,Us,Bs,Hs,Ks,qs,Gs,Ws,Ys,Js,Xs,Qs,ei,ti,ri,ni,si,ii,ai,oi,ci,ui,li,di,mi,fi,pi,hi,gi,yi,_i,Vr=E(()=>{nt();st();Or();zt();Ue();N=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Pr=(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 r=new C(t.common.issues);return this._error=r,this._error}}};w=class{get description(){return this._def.description}_getType(e){return Z(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new A,ctx:{common:e.parent.common,data:e.data,parsedType:Z(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Ce(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Z(e)},s=this._parseSync({data:e,path:n.path,parent:n});return Pr(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Z(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return J(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>J(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Z(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Ce(s)?s:Promise.resolve(s));return Pr(n,i)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,i)=>{let a=e(s),o=()=>i.addIssue({code:l.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,r){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof r=="function"?r(n,s):r),!1))}_refinement(e){return new M({schema:this,typeName:y.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return D.create(this,this._def)}nullable(){return V.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return W.create(this)}promise(){return ee.create(this,this._def)}or(e){return pe.create([this,e],this._def)}and(e){return he.create(this,e,this._def)}transform(e){return new M({...v(this._def),schema:this,typeName:y.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new we({...v(this._def),innerType:this,defaultValue:r,typeName:y.ZodDefault})}brand(){return new He({typeName:y.ZodBranded,type:this,...v(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new ke({...v(this._def),innerType:this,catchValue:r,typeName:y.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Ke.create(this,e)}readonly(){return be.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},fs=/^c[^\s-]{8,}$/i,ps=/^[0-9a-z]+$/,hs=/^[0-9A-HJKMNP-TV-Z]{26}$/i,gs=/^[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,ys=/^[a-z0-9_-]{21}$/i,_s=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,vs=/^[-+]?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)?)??$/,ws=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ks="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",bs=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,xs=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,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]))$/,Es=/^(([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])$/,As=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ts=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Dr="((\\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])))",Rs=new RegExp(`^${Dr}$`);X=class t extends w{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==m.string){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_type,expected:m.string,received:i.parsedType}),g}let n=new A,s;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let a=e.data.length>i.value,o=e.data.length<i.value;(a||o)&&(s=this._getOrReturnCtx(e,s),a?d(s,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&d(s,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")ws.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"email",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")Lt||(Lt=new RegExp(ks,"u")),Lt.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"emoji",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")gs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"uuid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")ys.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"nanoid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")fs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"cuid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")ps.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"cuid2",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")hs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"ulid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),d(s,{validation:"url",code:l.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"regex",code:l.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?Mr(i).test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?Rs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?Cs(i).test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?vs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"duration",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?Is(e.data,i.version)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"ip",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="jwt"?Os(e.data,i.alg)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"jwt",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="cidr"?Ps(e.data,i.version)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"cidr",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?As.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"base64",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?Ts.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"base64url",code:l.invalid_string,message:i.message}),n.dirty()):k.assertNever(i);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(s=>e.test(s),{validation:r,code:l.invalid_string,...p.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...p.errToObj(e)})}url(e){return this._addCheck({kind:"url",...p.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...p.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...p.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...p.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...p.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...p.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...p.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...p.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...p.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...p.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...p.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...p.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,...p.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,...p.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...p.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...p.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...p.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...p.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...p.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...p.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...p.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...p.errToObj(r)})}nonempty(e){return this.min(1,p.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};X.create=t=>new X({checks:[],typeName:y.ZodString,coerce:t?.coerce??!1,...v(t)});ce=class t extends w{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==m.number){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_type,expected:m.number,received:i.parsedType}),g}let n,s=new A;for(let i of this._def.checks)i.kind==="int"?k.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),d(n,{code:l.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?$s(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),d(n,{code:l.not_finite,message:i.message}),s.dirty()):k.assertNever(i);return{status:s.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,p.toString(r))}gt(e,r){return this.setLimit("min",e,!1,p.toString(r))}lte(e,r){return this.setLimit("max",e,!0,p.toString(r))}lt(e,r){return this.setLimit("max",e,!1,p.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:p.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:p.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:p.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:p.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:p.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:p.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&k.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};ce.create=t=>new ce({checks:[],typeName:y.ZodNumber,coerce:t?.coerce||!1,...v(t)});ue=class t extends w{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==m.bigint)return this._getInvalidInput(e);let n,s=new A;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):k.assertNever(i);return{status:s.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return d(r,{code:l.invalid_type,expected:m.bigint,received:r.parsedType}),g}gte(e,r){return this.setLimit("min",e,!0,p.toString(r))}gt(e,r){return this.setLimit("min",e,!1,p.toString(r))}lte(e,r){return this.setLimit("max",e,!0,p.toString(r))}lt(e,r){return this.setLimit("max",e,!1,p.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:p.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:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:p.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};ue.create=t=>new ue({checks:[],typeName:y.ZodBigInt,coerce:t?.coerce??!1,...v(t)});le=class extends w{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==m.boolean){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.boolean,received:n.parsedType}),g}return R(e.data)}};le.create=t=>new le({typeName:y.ZodBoolean,coerce:t?.coerce||!1,...v(t)});de=class t extends w{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==m.date){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_type,expected:m.date,received:i.parsedType}),g}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_date}),g}let n=new A,s;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):k.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:p.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:p.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};de.create=t=>new de({checks:[],coerce:t?.coerce||!1,typeName:y.ZodDate,...v(t)});Oe=class extends w{_parse(e){if(this._getType(e)!==m.symbol){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.symbol,received:n.parsedType}),g}return R(e.data)}};Oe.create=t=>new Oe({typeName:y.ZodSymbol,...v(t)});me=class extends w{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.undefined,received:n.parsedType}),g}return R(e.data)}};me.create=t=>new me({typeName:y.ZodUndefined,...v(t)});fe=class extends w{_parse(e){if(this._getType(e)!==m.null){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.null,received:n.parsedType}),g}return R(e.data)}};fe.create=t=>new fe({typeName:y.ZodNull,...v(t)});Q=class extends w{constructor(){super(...arguments),this._any=!0}_parse(e){return R(e.data)}};Q.create=t=>new Q({typeName:y.ZodAny,...v(t)});G=class extends w{constructor(){super(...arguments),this._unknown=!0}_parse(e){return R(e.data)}};G.create=t=>new G({typeName:y.ZodUnknown,...v(t)});j=class extends w{_parse(e){let r=this._getOrReturnCtx(e);return d(r,{code:l.invalid_type,expected:m.never,received:r.parsedType}),g}};j.create=t=>new j({typeName:y.ZodNever,...v(t)});Pe=class extends w{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.void,received:n.parsedType}),g}return R(e.data)}};Pe.create=t=>new Pe({typeName:y.ZodVoid,...v(t)});W=class t extends w{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==m.array)return d(r,{code:l.invalid_type,expected:m.array,received:r.parsedType}),g;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,o=r.data.length<s.exactLength.value;(a||o)&&(d(r,{code:a?l.too_big:l.too_small,minimum:o?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&r.data.length<s.minLength.value&&(d(r,{code:l.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&r.data.length>s.maxLength.value&&(d(r,{code:l.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,o)=>s.type._parseAsync(new N(r,a,r.path,o)))).then(a=>A.mergeArray(n,a));let i=[...r.data].map((a,o)=>s.type._parseSync(new N(r,a,r.path,o)));return A.mergeArray(n,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:p.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:p.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:p.toString(r)}})}nonempty(e){return this.min(1,e)}};W.create=(t,e)=>new W({type:t,minLength:null,maxLength:null,exactLength:null,typeName:y.ZodArray,...v(e)});I=class t extends w{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=k.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==m.object){let u=this._getOrReturnCtx(e);return d(u,{code:l.invalid_type,expected:m.object,received:u.parsedType}),g}let{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),o=[];if(!(this._def.catchall instanceof j&&this._def.unknownKeys==="strip"))for(let u in s.data)a.includes(u)||o.push(u);let c=[];for(let u of a){let f=i[u],_=s.data[u];c.push({key:{status:"valid",value:u},value:f._parse(new N(s,_,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof j){let u=this._def.unknownKeys;if(u==="passthrough")for(let f of o)c.push({key:{status:"valid",value:f},value:{status:"valid",value:s.data[f]}});else if(u==="strict")o.length>0&&(d(s,{code:l.unrecognized_keys,keys:o}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let f of o){let _=s.data[f];c.push({key:{status:"valid",value:f},value:u._parse(new N(s,_,s.path,f)),alwaysSet:f in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let u=[];for(let f of c){let _=await f.key,b=await f.value;u.push({key:_,value:b,alwaysSet:f.alwaysSet})}return u}).then(u=>A.mergeObjectSync(n,u)):A.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return p.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:p.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:y.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of k.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of k.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Ie(this)}partial(e){let r={};for(let n of k.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of k.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof D;)i=i._def.innerType;r[n]=i}return new t({...this._def,shape:()=>r})}keyof(){return jr(k.objectKeys(this.shape))}};I.create=(t,e)=>new I({shape:()=>t,unknownKeys:"strip",catchall:j.create(),typeName:y.ZodObject,...v(e)});I.strictCreate=(t,e)=>new I({shape:()=>t,unknownKeys:"strict",catchall:j.create(),typeName:y.ZodObject,...v(e)});I.lazycreate=(t,e)=>new I({shape:t,unknownKeys:"strip",catchall:j.create(),typeName:y.ZodObject,...v(e)});pe=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(o=>new C(o.ctx.common.issues));return d(r,{code:l.invalid_union,unionErrors:a}),g}if(r.common.async)return Promise.all(n.map(async i=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(s);{let i,a=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},f=c._parseSync({data:r.data,path:r.path,parent:u});if(f.status==="valid")return f;f.status==="dirty"&&!i&&(i={result:f,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(c=>new C(c));return d(r,{code:l.invalid_union,unionErrors:o}),g}}get options(){return this._def.options}};pe.create=(t,e)=>new pe({options:t,typeName:y.ZodUnion,...v(e)});q=t=>t instanceof ge?q(t.schema):t instanceof M?q(t.innerType()):t instanceof ye?[t.value]:t instanceof _e?t.options:t instanceof ve?k.objectValues(t.enum):t instanceof we?q(t._def.innerType):t instanceof me?[void 0]:t instanceof fe?[null]:t instanceof D?[void 0,...q(t.unwrap())]:t instanceof V?[null,...q(t.unwrap())]:t instanceof He||t instanceof be?q(t.unwrap()):t instanceof ke?q(t._def.innerType):[],ot=class t extends w{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.object)return d(r,{code:l.invalid_type,expected:m.object,received:r.parsedType}),g;let n=this.discriminator,s=r.data[n],i=this.optionsMap.get(s);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(d(r,{code:l.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),g)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let i of r){let a=q(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of a){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new t({typeName:y.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,...v(n)})}};he=class extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=(i,a)=>{if(it(i)||it(a))return g;let o=Zt(i.value,a.value);return o.valid?((at(i)||at(a))&&r.dirty(),{status:r.value,value:o.data}):(d(n,{code:l.invalid_intersection_types}),g)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};he.create=(t,e,r)=>new he({left:t,right:e,typeName:y.ZodIntersection,...v(r)});F=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.array)return d(n,{code:l.invalid_type,expected:m.array,received:n.parsedType}),g;if(n.data.length<this._def.items.length)return d(n,{code:l.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;!this._def.rest&&n.data.length>this._def.items.length&&(d(n,{code:l.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...n.data].map((a,o)=>{let c=this._def.items[o]||this._def.rest;return c?c._parse(new N(n,a,n.path,o)):null}).filter(a=>!!a);return n.common.async?Promise.all(i).then(a=>A.mergeArray(r,a)):A.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};F.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new F({items:t,typeName:y.ZodTuple,rest:null,...v(e)})};ct=class t extends w{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.object)return d(n,{code:l.invalid_type,expected:m.object,received:n.parsedType}),g;let s=[],i=this._def.keyType,a=this._def.valueType;for(let o in n.data)s.push({key:i._parse(new N(n,o,n.path,o)),value:a._parse(new N(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?A.mergeObjectAsync(r,s):A.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof w?new t({keyType:e,valueType:r,typeName:y.ZodRecord,...v(n)}):new t({keyType:X.create(),valueType:e,typeName:y.ZodRecord,...v(r)})}},$e=class extends w{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.map)return d(n,{code:l.invalid_type,expected:m.map,received:n.parsedType}),g;let s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],u)=>({key:s._parse(new N(n,o,n.path,[u,"key"])),value:i._parse(new N(n,c,n.path,[u,"value"]))}));if(n.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let c of a){let u=await c.key,f=await c.value;if(u.status==="aborted"||f.status==="aborted")return g;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),o.set(u.value,f.value)}return{status:r.value,value:o}})}else{let o=new Map;for(let c of a){let u=c.key,f=c.value;if(u.status==="aborted"||f.status==="aborted")return g;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),o.set(u.value,f.value)}return{status:r.value,value:o}}}};$e.create=(t,e,r)=>new $e({valueType:e,keyType:t,typeName:y.ZodMap,...v(r)});De=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.set)return d(n,{code:l.invalid_type,expected:m.set,received:n.parsedType}),g;let s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(d(n,{code:l.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),r.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(d(n,{code:l.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let u=new Set;for(let f of c){if(f.status==="aborted")return g;f.status==="dirty"&&r.dirty(),u.add(f.value)}return{status:r.value,value:u}}let o=[...n.data.values()].map((c,u)=>i._parse(new N(n,c,n.path,u)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,r){return new t({...this._def,minSize:{value:e,message:p.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:p.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};De.create=(t,e)=>new De({valueType:t,minSize:null,maxSize:null,typeName:y.ZodSet,...v(e)});ut=class t extends w{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.function)return d(r,{code:l.invalid_type,expected:m.function,received:r.parsedType}),g;function n(o,c){return Be({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Re(),K].filter(u=>!!u),issueData:{code:l.invalid_arguments,argumentsError:c}})}function s(o,c){return Be({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Re(),K].filter(u=>!!u),issueData:{code:l.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof ee){let o=this;return R(async function(...c){let u=new C([]),f=await o._def.args.parseAsync(c,i).catch(S=>{throw u.addIssue(n(c,S)),u}),_=await Reflect.apply(a,this,f);return await o._def.returns._def.type.parseAsync(_,i).catch(S=>{throw u.addIssue(s(_,S)),u})})}else{let o=this;return R(function(...c){let u=o._def.args.safeParse(c,i);if(!u.success)throw new C([n(c,u.error)]);let f=Reflect.apply(a,this,u.data),_=o._def.returns.safeParse(f,i);if(!_.success)throw new C([s(f,_.error)]);return _.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:F.create(e).rest(G.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||F.create([]).rest(G.create()),returns:r||G.create(),typeName:y.ZodFunction,...v(n)})}},ge=class extends w{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};ge.create=(t,e)=>new ge({getter:t,typeName:y.ZodLazy,...v(e)});ye=class extends w{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return d(r,{received:r.data,code:l.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:e.data}}get value(){return this._def.value}};ye.create=(t,e)=>new ye({value:t,typeName:y.ZodLiteral,...v(e)});_e=class t extends w{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return d(r,{expected:k.joinValues(n),received:r.parsedType,code:l.invalid_type}),g}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return d(r,{received:r.data,code:l.invalid_enum_value,options:n}),g}return R(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};_e.create=jr;ve=class extends w{_parse(e){let r=k.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==m.string&&n.parsedType!==m.number){let s=k.objectValues(r);return d(n,{expected:k.joinValues(s),received:n.parsedType,code:l.invalid_type}),g}if(this._cache||(this._cache=new Set(k.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=k.objectValues(r);return d(n,{received:n.data,code:l.invalid_enum_value,options:s}),g}return R(e.data)}get enum(){return this._def.values}};ve.create=(t,e)=>new ve({values:t,typeName:y.ZodNativeEnum,...v(e)});ee=class extends w{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.promise&&r.common.async===!1)return d(r,{code:l.invalid_type,expected:m.promise,received:r.parsedType}),g;let n=r.parsedType===m.promise?r.data:Promise.resolve(r.data);return R(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};ee.create=(t,e)=>new ee({type:t,typeName:y.ZodPromise,...v(e)});M=class extends w{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===y.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{d(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(r.value==="aborted")return g;let c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?g:c.status==="dirty"?oe(c.value):r.value==="dirty"?oe(c.value):c});{if(r.value==="aborted")return g;let o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?g:o.status==="dirty"?oe(o.value):r.value==="dirty"?oe(o.value):o}}if(s.type==="refinement"){let a=o=>{let c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value).then(()=>({status:r.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!J(a))return g;let o=s.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>J(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:r.value,value:o})):g);k.assertNever(s)}};M.create=(t,e,r)=>new M({schema:t,typeName:y.ZodEffects,effect:e,...v(r)});M.createWithPreprocess=(t,e,r)=>new M({schema:e,effect:{type:"preprocess",transform:t},typeName:y.ZodEffects,...v(r)});D=class extends w{_parse(e){return this._getType(e)===m.undefined?R(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};D.create=(t,e)=>new D({innerType:t,typeName:y.ZodOptional,...v(e)});V=class extends w{_parse(e){return this._getType(e)===m.null?R(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};V.create=(t,e)=>new V({innerType:t,typeName:y.ZodNullable,...v(e)});we=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===m.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};we.create=(t,e)=>new we({innerType:t,typeName:y.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...v(e)});ke=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Ce(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new C(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new C(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};ke.create=(t,e)=>new ke({innerType:t,typeName:y.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...v(e)});Ne=class extends w{_parse(e){if(this._getType(e)!==m.nan){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.nan,received:n.parsedType}),g}return{status:"valid",value:e.data}}};Ne.create=t=>new Ne({typeName:y.ZodNaN,...v(t)});Ds=Symbol("zod_brand"),He=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Ke=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?g:i.status==="dirty"?(r.dirty(),oe(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?g:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:y.ZodPipeline})}},be=class extends w{_parse(e){let r=this._def.innerType._parse(e),n=s=>(J(s)&&(s.value=Object.freeze(s.value)),s);return Ce(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};be.create=(t,e)=>new be({innerType:t,typeName:y.ZodReadonly,...v(e)});Ns={object:I.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"})(y||(y={}));Ms=(t,e={message:`Input not instance of ${t.name}`})=>zr(r=>r instanceof t,e),Lr=X.create,Zr=ce.create,js=Ne.create,zs=ue.create,Fr=le.create,Ls=de.create,Zs=Oe.create,Fs=me.create,Vs=fe.create,Us=Q.create,Bs=G.create,Hs=j.create,Ks=Pe.create,qs=W.create,Gs=I.create,Ws=I.strictCreate,Ys=pe.create,Js=ot.create,Xs=he.create,Qs=F.create,ei=ct.create,ti=$e.create,ri=De.create,ni=ut.create,si=ge.create,ii=ye.create,ai=_e.create,oi=ve.create,ci=ee.create,ui=M.create,li=D.create,di=V.create,mi=M.createWithPreprocess,fi=Ke.create,pi=()=>Lr().optional(),hi=()=>Zr().optional(),gi=()=>Fr().optional(),yi={string:(t=>X.create({...t,coerce:!0})),number:(t=>ce.create({...t,coerce:!0})),boolean:(t=>le.create({...t,coerce:!0})),bigint:(t=>ue.create({...t,coerce:!0})),date:(t=>de.create({...t,coerce:!0}))},_i=g});var h={};Ve(h,{BRAND:()=>Ds,DIRTY:()=>oe,EMPTY_PATH:()=>ms,INVALID:()=>g,NEVER:()=>_i,OK:()=>R,ParseStatus:()=>A,Schema:()=>w,ZodAny:()=>Q,ZodArray:()=>W,ZodBigInt:()=>ue,ZodBoolean:()=>le,ZodBranded:()=>He,ZodCatch:()=>ke,ZodDate:()=>de,ZodDefault:()=>we,ZodDiscriminatedUnion:()=>ot,ZodEffects:()=>M,ZodEnum:()=>_e,ZodError:()=>C,ZodFirstPartyTypeKind:()=>y,ZodFunction:()=>ut,ZodIntersection:()=>he,ZodIssueCode:()=>l,ZodLazy:()=>ge,ZodLiteral:()=>ye,ZodMap:()=>$e,ZodNaN:()=>Ne,ZodNativeEnum:()=>ve,ZodNever:()=>j,ZodNull:()=>fe,ZodNullable:()=>V,ZodNumber:()=>ce,ZodObject:()=>I,ZodOptional:()=>D,ZodParsedType:()=>m,ZodPipeline:()=>Ke,ZodPromise:()=>ee,ZodReadonly:()=>be,ZodRecord:()=>ct,ZodSchema:()=>w,ZodSet:()=>De,ZodString:()=>X,ZodSymbol:()=>Oe,ZodTransformer:()=>M,ZodTuple:()=>F,ZodType:()=>w,ZodUndefined:()=>me,ZodUnion:()=>pe,ZodUnknown:()=>G,ZodVoid:()=>Pe,addIssueToContext:()=>d,any:()=>Us,array:()=>qs,bigint:()=>zs,boolean:()=>Fr,coerce:()=>yi,custom:()=>zr,date:()=>Ls,datetimeRegex:()=>Mr,defaultErrorMap:()=>K,discriminatedUnion:()=>Js,effect:()=>ui,enum:()=>ai,function:()=>ni,getErrorMap:()=>Re,getParsedType:()=>Z,instanceof:()=>Ms,intersection:()=>Xs,isAborted:()=>it,isAsync:()=>Ce,isDirty:()=>at,isValid:()=>J,late:()=>Ns,lazy:()=>si,literal:()=>ii,makeIssue:()=>Be,map:()=>ti,nan:()=>js,nativeEnum:()=>oi,never:()=>Hs,null:()=>Vs,nullable:()=>di,number:()=>Zr,object:()=>Gs,objectUtil:()=>Mt,oboolean:()=>gi,onumber:()=>hi,optional:()=>li,ostring:()=>pi,pipeline:()=>fi,preprocess:()=>mi,promise:()=>ci,quotelessJson:()=>us,record:()=>ei,set:()=>ri,setErrorMap:()=>ds,strictObject:()=>Ws,string:()=>Lr,symbol:()=>Zs,transformer:()=>ui,tuple:()=>Qs,undefined:()=>Fs,union:()=>Ys,unknown:()=>Bs,util:()=>k,void:()=>Ks});var Ft=E(()=>{st();zt();Ir();Ue();Vr();nt()});var lt=E(()=>{Ft();Ft()});import{createHash as vi}from"node:crypto";function dt(t){let e=Ur.get(t);return e||(e=vi("sha256").update(`tkr:${t}`).digest("hex").slice(0,16),Ur.set(t,e)),e}var wi,ki,Vt,Ur,mt=E(()=>{"use strict";lt();wi=h.enum(["normal","compact","minimal"]),ki=h.enum(["off","light","balanced","max"]),Vt=h.object({enabled:h.boolean().default(!0),telemetryOptIn:h.boolean().default(!0),outputVerbosity:wi.default("compact"),reducer:ki.default("off"),filters:h.object({enableAll:h.boolean().default(!0),disabled:h.array(h.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})}),Ur=new Map});import Br from"node:os";import{join as te}from"node:path";function x(){return process.env.TOKMIZER_HOME||te(Br.homedir(),".tokmizer")}function Ut(){return te(x(),"install-id")}function Hr(){return te(x(),"enroll-cooldown")}function Bt(){return te(x(),"bundle-refresh.json")}function ft(){return te(x(),"skills")}function Me(t){return te(ft(),`${t}.md`)}function pt(){return process.env.TOKMIZER_CLAUDE_COMMANDS_DIR||te(Br.homedir(),".claude","commands")}function qe(t){return te(pt(),`${t}.md`)}var z=E(()=>{"use strict"});import je from"node:os";import{createHash as bi,randomUUID as xi}from"node:crypto";import{readFile as Si,writeFile as Ei,mkdir as Ai}from"node:fs/promises";async function Kt(){try{let r=(await Si(Ut(),"utf8")).trim();if(/^[0-9a-f-]{36}$/i.test(r))return r}catch{}await Ai(x(),{recursive:!0});let t=xi();return await Ei(Ut(),t,{mode:384}),t}function Ht(t){return bi("sha256").update(t).digest("hex")}function Ti(){let t=je.networkInterfaces();for(let e of Object.keys(t))for(let r of t[e]??[])if(!r.internal&&r.mac&&r.mac!=="00:00:00:00:00:00")return r.mac;return"no-mac"}async function U(){let t=await Kt(),e=je.hostname(),r=je.platform(),n=je.release(),s=je.cpus(),i=s[0]?.model??"unknown",a=s.length,o=Ht(Ti()),c=Ht(je.userInfo().username),u=[e,r,n,i,String(a),o,c,t].join("|");return{fingerprint:Ht(u),installId:t,hostname:e,os:r,osVersion:n,cpuModel:i,cpuCores:a,macHash:o,usernameHash:c}}var ze=E(()=>{"use strict";z()});import{join as qt}from"node:path";import{mkdir as Ri,readFile as Ci,writeFile as Ii,unlink as Oi,rename as Pi}from"node:fs/promises";function Le(){try{let t=Intl.DateTimeFormat().resolvedOptions().timeZone;return t&&t.length>0?t:"Etc/UTC"}catch{return"Etc/UTC"}}function Wt(t){return t?.dir??x()}async function T(t){let e=Wt(t);try{let r=await Ci(qt(e,Gt),"utf8"),n=JSON.parse(r);return{...n,lastSettingsRevision:n.lastSettingsRevision??0,timeZone:n.timeZone??Le(),bonusActive:n.bonusActive??!1,...n.bonusResetAt!==void 0?{bonusResetAt:n.bonusResetAt}:{}}}catch{return null}}async function re(t,e){let r=Wt(e);await Ri(r,{recursive:!0});let n=qt(r,Gt),s=`${n}.tmp`;await Ii(s,JSON.stringify(t,null,2),{mode:384}),await Pi(s,n)}async function ht(t){let e=Wt(t);try{await Oi(qt(e,Gt))}catch{return}}var Gt,gc,ne=E(()=>{"use strict";z();Gt="state.json",gc={lastSettingsRevision:0,timeZone:Le(),bonusActive:!1}});import{createRequire as $i}from"node:module";function Ni(){for(let t of["../package.json","../../package.json"])try{let e=Di(t).version;if(typeof e=="string"&&e)return e}catch{}return"0.0.0"}var Di,xe,Yt=E(()=>{"use strict";Di=$i(import.meta.url);xe=Ni()});var Kr,qr=E(()=>{"use strict";Kr=`-----BEGIN PUBLIC KEY-----
4
4
  MCowBQYDK2VwAyEAj/kMlXlhTIGHRKxOKMuGFa1S1ybxxwgdYcAE0YM9fgU=
5
5
  -----END PUBLIC KEY-----
6
- `});import{createHmac as ys,createPublicKey as vs,verify as _s}from"node:crypto";function Lt(){return((process.env.TOKMIZER_DEV==="1"?process.env.TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM:void 0)??Er).replace(/\\n/g,`
7
- `)}function ks(t,e,r,n){try{let s=vs({key:n,format:"pem"});return _s(null,Buffer.from(`${e}.${t}`,"utf8"),s,Buffer.from(r,"base64url"))}catch{return!1}}async function ee(t){let e=await t.text(),r=Lt(),n=t.headers?.get?.("x-tokmizer-resp-ts")??null;if(n!==null){let a=Number(n);if(!Number.isFinite(a)||Date.now()-a>ws)throw new Q("http","stale server response (resp-ts outside freshness window)")}if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Q("http","no signing public key configured; refusing to trust server response");let s=t.headers?.get?.("x-tokmizer-resp-sig")??null,i=Number(n);if(!s||n===null||!Number.isFinite(i))throw new Q("http","missing server response signature");if(!ks(e,i,s,r))throw new Q("http","invalid server response signature");return JSON.parse(e)}function bs(t,e,r){return ys("sha256",r).update(`${e}.${t}`).digest("hex")}async function Z(t,e,r,n){let s=Date.now(),i=r===void 0?"":JSON.stringify(r),a=n.signingSecret?bs(i,s,n.signingSecret):"0".repeat(64),o={"content-type":"application/json","x-tokmizer-fingerprint":n.fingerprint,"x-tokmizer-install-id":n.installId,"x-tokmizer-sig":a,"x-tokmizer-ts":String(s),"x-tokmizer-plugin-version":ae};n.bearer&&(o.authorization=`Bearer ${n.bearer}`);let c=n.timeoutMs??5e3,u=t!=="GET"&&t!=="DELETE",f={method:t,headers:o,signal:AbortSignal.timeout(c)};u&&(f.body=i);try{return await fetch(`${n.baseUrl}${e}`,f)}catch(v){let E=v.name;throw E==="TimeoutError"||E==="AbortError"?new Q("timeout",`${t} ${e} timed out after ${c}ms`):new Q("network",`${t} ${e} failed: ${v.message}`)}}var ws,Q,Ue=x(()=>{"use strict";zt();Ar();ws=300*1e3;Q=class extends Error{constructor(r,n,s){super(n);this.kind=r;this.status=s;this.name="TransportError"}kind;status}});var k,Kt,m,F,Be=x(()=>{(function(t){t.assertEqual=s=>{};function e(s){}t.assertIs=e;function r(s){throw new Error}t.assertNever=r,t.arrayToEnum=s=>{let i={};for(let a of s)i[a]=a;return i},t.getValidEnumValues=s=>{let i=t.objectKeys(s).filter(o=>typeof s[s[o]]!="number"),a={};for(let o of i)a[o]=s[o];return t.objectValues(a)},t.objectValues=s=>t.objectKeys(s).map(function(i){return s[i]}),t.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let i=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&i.push(a);return i},t.find=(s,i)=>{for(let a of s)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function n(s,i=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(s,i)=>typeof i=="bigint"?i.toString():i})(k||(k={}));(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Kt||(Kt={}));m=k.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 m.undefined;case"string":return m.string;case"number":return Number.isNaN(t)?m.nan:m.number;case"boolean":return m.boolean;case"function":return m.function;case"bigint":return m.bigint;case"symbol":return m.symbol;case"object":return Array.isArray(t)?m.array:t===null?m.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?m.promise:typeof Map<"u"&&t instanceof Map?m.map:typeof Set<"u"&&t instanceof Set?m.set:typeof Date<"u"&&t instanceof Date?m.date:m.object;default:return m.unknown}}});var l,Is,C,nt=x(()=>{Be();l=k.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"]),Is=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),C=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(i){return i.message},n={_errors:[]},s=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let o=n,c=0;for(;c<a.path.length;){let u=a.path[c];c===a.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(r(a))):o[u]=o[u]||{_errors:[]},o=o[u],c++}}};return s(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,k.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let s of this.issues)if(s.path.length>0){let i=s.path[0];r[i]=r[i]||[],r[i].push(e(s))}else n.push(e(s));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};C.create=t=>new C(t)});var Os,H,Gt=x(()=>{nt();Be();Os=(t,e)=>{let r;switch(t.code){case l.invalid_type:t.received===m.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case l.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,k.jsonStringifyReplacer)}`;break;case l.unrecognized_keys:r=`Unrecognized key(s) in object: ${k.joinValues(t.keys,", ")}`;break;case l.invalid_union:r="Invalid input";break;case l.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${k.joinValues(t.options)}`;break;case l.invalid_enum_value:r=`Invalid enum value. Expected ${k.joinValues(t.options)}, received '${t.received}'`;break;case l.invalid_arguments:r="Invalid function arguments";break;case l.invalid_return_type:r="Invalid function return type";break;case l.invalid_date:r="Invalid date";break;case l.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:k.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case l.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case l.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case l.custom:r="Invalid input";break;case l.invalid_intersection_types:r="Intersection results could not be merged";break;case l.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case l.not_finite:r="Number must be finite";break;default:r=e.defaultError,k.assertNever(t)}return{message:r}},H=Os});function Ps(t){jr=t}function Oe(){return jr}var jr,st=x(()=>{Gt();jr=H});function d(t,e){let r=Oe(),n=He({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===H?void 0:H].filter(s=>!!s)});t.common.issues.push(n)}var He,$s,T,g,oe,R,it,at,te,Pe,Wt=x(()=>{st();Gt();He=t=>{let{data:e,path:r,errorMaps:n,issueData:s}=t,i=[...r,...s.path||[]],a={...s,path:i};if(s.message!==void 0)return{...s,path:i,message:s.message};let o="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)o=u(a,{data:e,defaultError:o}).message;return{...s,path:i,message:o}},$s=[];T=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let s of r){if(s.status==="aborted")return g;s.status==="dirty"&&e.dirty(),n.push(s.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let s of r){let i=await s.key,a=await s.value;n.push({key:i,value:a})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let s of r){let{key:i,value:a}=s;if(i.status==="aborted"||a.status==="aborted")return g;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||s.alwaysSet)&&(n[i.value]=a.value)}return{status:e.value,value:n}}},g=Object.freeze({status:"aborted"}),oe=t=>({status:"dirty",value:t}),R=t=>({status:"valid",value:t}),it=t=>t.status==="aborted",at=t=>t.status==="dirty",te=t=>t.status==="valid",Pe=t=>typeof Promise<"u"&&t instanceof Promise});var zr=x(()=>{});var p,Lr=x(()=>{(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(p||(p={}))});function _(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:s}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:s}:{errorMap:(a,o)=>{let{message:c}=t;return a.code==="invalid_enum_value"?{message:c??o.defaultError}:typeof o.data>"u"?{message:c??n??o.defaultError}:a.code!=="invalid_type"?{message:o.defaultError}:{message:c??r??o.defaultError}},description:s}}function Ur(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function Ys(t){return new RegExp(`^${Ur(t)}$`)}function Br(t){let e=`${Vr}T${Ur(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Js(t,e){return!!((e==="v4"||!e)&&Us.test(t)||(e==="v6"||!e)&&Hs.test(t))}function Xs(t,e){if(!Ls.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),s=JSON.parse(atob(n));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||e&&s.alg!==e)}catch{return!1}}function Qs(t,e){return!!((e==="v4"||!e)&&Bs.test(t)||(e==="v6"||!e)&&Ks.test(t))}function ei(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,s=r>n?r:n,i=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return i%a/10**s}function $e(t){if(t instanceof I){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=D.create($e(n))}return new I({...t._def,shape:()=>e})}else return t instanceof W?new W({...t._def,type:$e(t.element)}):t instanceof D?D.create($e(t.unwrap())):t instanceof U?U.create($e(t.unwrap())):t instanceof V?V.create(t.items.map(e=>$e(e))):t}function Yt(t,e){let r=F(t),n=F(e);if(t===e)return{valid:!0,data:t};if(r===m.object&&n===m.object){let s=k.objectKeys(e),i=k.objectKeys(t).filter(o=>s.indexOf(o)!==-1),a={...t,...e};for(let o of i){let c=Yt(t[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(r===m.array&&n===m.array){if(t.length!==e.length)return{valid:!1};let s=[];for(let i=0;i<t.length;i++){let a=t[i],o=e[i],c=Yt(a,o);if(!c.valid)return{valid:!1};s.push(c.data)}return{valid:!0,data:s}}else return r===m.date&&n===m.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}function Hr(t,e){return new ve({values:t,typeName:y.ZodEnum,..._(e)})}function Fr(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Kr(t,e={},r){return t?ne.create().superRefine((n,s)=>{let i=t(n);if(i instanceof Promise)return i.then(a=>{if(!a){let o=Fr(e,n),c=o.fatal??r??!0;s.addIssue({code:"custom",...o,fatal:c})}});if(!i){let a=Fr(e,n),o=a.fatal??r??!0;s.addIssue({code:"custom",...a,fatal:o})}}):ne.create()}var N,Zr,w,Ds,Ns,Ms,js,zs,Ls,Zs,Fs,Vs,qt,Us,Bs,Hs,Ks,Gs,Ws,Vr,qs,re,ce,ue,le,de,De,me,fe,ne,G,z,Ne,W,I,pe,K,ot,he,V,ct,Me,je,ut,ge,ye,ve,_e,se,M,D,U,we,ke,ze,ti,Ke,Ge,be,ri,y,ni,Gr,Wr,si,ii,qr,ai,oi,ci,ui,li,di,mi,fi,pi,hi,gi,yi,vi,_i,wi,ki,bi,xi,Si,Ei,Ai,Ti,Ri,Ci,Ii,Oi,Pi,$i,Di,Ni,Mi,ji,zi,Li,Yr=x(()=>{nt();st();Lr();Wt();Be();N=class{constructor(e,r,n,s){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=s}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Zr=(t,e)=>{if(te(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new C(t.common.issues);return this._error=r,this._error}}};w=class{get description(){return this._def.description}_getType(e){return F(e.data)}_getOrReturnCtx(e,r){return r||{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 T,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 r=this._parse(e);if(Pe(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:F(e)},s=this._parseSync({data:e,path:n.path,parent:n});return Zr(n,s)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:F(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return te(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>te(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:F(e)},s=this._parse({data:e,path:n.path,parent:n}),i=await(Pe(s)?s:Promise.resolve(s));return Zr(n,i)}refine(e,r){let n=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,i)=>{let a=e(s),o=()=>i.addIssue({code:l.custom,...n(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,r){return this._refinement((n,s)=>e(n)?!0:(s.addIssue(typeof r=="function"?r(n,s):r),!1))}_refinement(e){return new M({schema:this,typeName:y.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return D.create(this,this._def)}nullable(){return U.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return W.create(this)}promise(){return se.create(this,this._def)}or(e){return pe.create([this,e],this._def)}and(e){return he.create(this,e,this._def)}transform(e){return new M({..._(this._def),schema:this,typeName:y.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new we({..._(this._def),innerType:this,defaultValue:r,typeName:y.ZodDefault})}brand(){return new Ke({typeName:y.ZodBranded,type:this,..._(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new ke({..._(this._def),innerType:this,catchValue:r,typeName:y.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Ge.create(this,e)}readonly(){return be.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Ds=/^c[^\s-]{8,}$/i,Ns=/^[0-9a-z]+$/,Ms=/^[0-9A-HJKMNP-TV-Z]{26}$/i,js=/^[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,zs=/^[a-z0-9_-]{21}$/i,Ls=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Zs=/^[-+]?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)?)??$/,Fs=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Vs="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Us=/^(?:(?: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])$/,Bs=/^(?:(?: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])$/,Hs=/^(([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]))$/,Ks=/^(([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])$/,Gs=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ws=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Vr="((\\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])))",qs=new RegExp(`^${Vr}$`);re=class t extends w{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==m.string){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_type,expected:m.string,received:i.parsedType}),g}let n=new T,s;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let a=e.data.length>i.value,o=e.data.length<i.value;(a||o)&&(s=this._getOrReturnCtx(e,s),a?d(s,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&d(s,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")Fs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"email",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")qt||(qt=new RegExp(Vs,"u")),qt.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"emoji",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")js.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"uuid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")zs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"nanoid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")Ds.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"cuid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")Ns.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"cuid2",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")Ms.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"ulid",code:l.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{s=this._getOrReturnCtx(e,s),d(s,{validation:"url",code:l.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"regex",code:l.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?Br(i).test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?qs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?Ys(i).test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{code:l.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?Zs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"duration",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?Js(e.data,i.version)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"ip",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="jwt"?Xs(e.data,i.alg)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"jwt",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="cidr"?Qs(e.data,i.version)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"cidr",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?Gs.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"base64",code:l.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?Ws.test(e.data)||(s=this._getOrReturnCtx(e,s),d(s,{validation:"base64url",code:l.invalid_string,message:i.message}),n.dirty()):k.assertNever(i);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(s=>e.test(s),{validation:r,code:l.invalid_string,...p.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...p.errToObj(e)})}url(e){return this._addCheck({kind:"url",...p.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...p.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...p.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...p.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...p.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...p.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...p.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...p.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...p.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...p.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...p.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...p.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,...p.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,...p.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...p.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...p.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...p.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...p.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...p.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...p.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...p.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...p.errToObj(r)})}nonempty(e){return this.min(1,p.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};re.create=t=>new re({checks:[],typeName:y.ZodString,coerce:t?.coerce??!1,..._(t)});ce=class t extends w{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==m.number){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_type,expected:m.number,received:i.parsedType}),g}let n,s=new T;for(let i of this._def.checks)i.kind==="int"?k.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),d(n,{code:l.invalid_type,expected:"integer",received:"float",message:i.message}),s.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),s.dirty()):i.kind==="multipleOf"?ei(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),d(n,{code:l.not_finite,message:i.message}),s.dirty()):k.assertNever(i);return{status:s.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,p.toString(r))}gt(e,r){return this.setLimit("min",e,!1,p.toString(r))}lte(e,r){return this.setLimit("max",e,!0,p.toString(r))}lt(e,r){return this.setLimit("max",e,!1,p.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:p.toString(s)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:p.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:p.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:p.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:p.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:p.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&k.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};ce.create=t=>new ce({checks:[],typeName:y.ZodNumber,coerce:t?.coerce||!1,..._(t)});ue=class t extends w{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==m.bigint)return this._getInvalidInput(e);let n,s=new T;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),s.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),d(n,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),s.dirty()):k.assertNever(i);return{status:s.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return d(r,{code:l.invalid_type,expected:m.bigint,received:r.parsedType}),g}gte(e,r){return this.setLimit("min",e,!0,p.toString(r))}gt(e,r){return this.setLimit("min",e,!1,p.toString(r))}lte(e,r){return this.setLimit("max",e,!0,p.toString(r))}lt(e,r){return this.setLimit("max",e,!1,p.toString(r))}setLimit(e,r,n,s){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:p.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:p.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:p.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:p.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:p.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:p.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};ue.create=t=>new ue({checks:[],typeName:y.ZodBigInt,coerce:t?.coerce??!1,..._(t)});le=class extends w{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==m.boolean){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.boolean,received:n.parsedType}),g}return R(e.data)}};le.create=t=>new le({typeName:y.ZodBoolean,coerce:t?.coerce||!1,..._(t)});de=class t extends w{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==m.date){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_type,expected:m.date,received:i.parsedType}),g}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return d(i,{code:l.invalid_date}),g}let n=new T,s;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(s=this._getOrReturnCtx(e,s),d(s,{code:l.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):k.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:p.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:p.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};de.create=t=>new de({checks:[],coerce:t?.coerce||!1,typeName:y.ZodDate,..._(t)});De=class extends w{_parse(e){if(this._getType(e)!==m.symbol){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.symbol,received:n.parsedType}),g}return R(e.data)}};De.create=t=>new De({typeName:y.ZodSymbol,..._(t)});me=class extends w{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.undefined,received:n.parsedType}),g}return R(e.data)}};me.create=t=>new me({typeName:y.ZodUndefined,..._(t)});fe=class extends w{_parse(e){if(this._getType(e)!==m.null){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.null,received:n.parsedType}),g}return R(e.data)}};fe.create=t=>new fe({typeName:y.ZodNull,..._(t)});ne=class extends w{constructor(){super(...arguments),this._any=!0}_parse(e){return R(e.data)}};ne.create=t=>new ne({typeName:y.ZodAny,..._(t)});G=class extends w{constructor(){super(...arguments),this._unknown=!0}_parse(e){return R(e.data)}};G.create=t=>new G({typeName:y.ZodUnknown,..._(t)});z=class extends w{_parse(e){let r=this._getOrReturnCtx(e);return d(r,{code:l.invalid_type,expected:m.never,received:r.parsedType}),g}};z.create=t=>new z({typeName:y.ZodNever,..._(t)});Ne=class extends w{_parse(e){if(this._getType(e)!==m.undefined){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.void,received:n.parsedType}),g}return R(e.data)}};Ne.create=t=>new Ne({typeName:y.ZodVoid,..._(t)});W=class t extends w{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),s=this._def;if(r.parsedType!==m.array)return d(r,{code:l.invalid_type,expected:m.array,received:r.parsedType}),g;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,o=r.data.length<s.exactLength.value;(a||o)&&(d(r,{code:a?l.too_big:l.too_small,minimum:o?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),n.dirty())}if(s.minLength!==null&&r.data.length<s.minLength.value&&(d(r,{code:l.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),n.dirty()),s.maxLength!==null&&r.data.length>s.maxLength.value&&(d(r,{code:l.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,o)=>s.type._parseAsync(new N(r,a,r.path,o)))).then(a=>T.mergeArray(n,a));let i=[...r.data].map((a,o)=>s.type._parseSync(new N(r,a,r.path,o)));return T.mergeArray(n,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:p.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:p.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:p.toString(r)}})}nonempty(e){return this.min(1,e)}};W.create=(t,e)=>new W({type:t,minLength:null,maxLength:null,exactLength:null,typeName:y.ZodArray,..._(e)});I=class t extends w{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=k.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==m.object){let u=this._getOrReturnCtx(e);return d(u,{code:l.invalid_type,expected:m.object,received:u.parsedType}),g}let{status:n,ctx:s}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),o=[];if(!(this._def.catchall instanceof z&&this._def.unknownKeys==="strip"))for(let u in s.data)a.includes(u)||o.push(u);let c=[];for(let u of a){let f=i[u],v=s.data[u];c.push({key:{status:"valid",value:u},value:f._parse(new N(s,v,s.path,u)),alwaysSet:u in s.data})}if(this._def.catchall instanceof z){let u=this._def.unknownKeys;if(u==="passthrough")for(let f of o)c.push({key:{status:"valid",value:f},value:{status:"valid",value:s.data[f]}});else if(u==="strict")o.length>0&&(d(s,{code:l.unrecognized_keys,keys:o}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let f of o){let v=s.data[f];c.push({key:{status:"valid",value:f},value:u._parse(new N(s,v,s.path,f)),alwaysSet:f in s.data})}}return s.common.async?Promise.resolve().then(async()=>{let u=[];for(let f of c){let v=await f.key,E=await f.value;u.push({key:v,value:E,alwaysSet:f.alwaysSet})}return u}).then(u=>T.mergeObjectSync(n,u)):T.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return p.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let s=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:p.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:y.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of k.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of k.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return $e(this)}partial(e){let r={};for(let n of k.objectKeys(this.shape)){let s=this.shape[n];e&&!e[n]?r[n]=s:r[n]=s.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of k.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof D;)i=i._def.innerType;r[n]=i}return new t({...this._def,shape:()=>r})}keyof(){return Hr(k.objectKeys(this.shape))}};I.create=(t,e)=>new I({shape:()=>t,unknownKeys:"strip",catchall:z.create(),typeName:y.ZodObject,..._(e)});I.strictCreate=(t,e)=>new I({shape:()=>t,unknownKeys:"strict",catchall:z.create(),typeName:y.ZodObject,..._(e)});I.lazycreate=(t,e)=>new I({shape:t,unknownKeys:"strip",catchall:z.create(),typeName:y.ZodObject,..._(e)});pe=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function s(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(o=>new C(o.ctx.common.issues));return d(r,{code:l.invalid_union,unionErrors:a}),g}if(r.common.async)return Promise.all(n.map(async i=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(s);{let i,a=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},f=c._parseSync({data:r.data,path:r.path,parent:u});if(f.status==="valid")return f;f.status==="dirty"&&!i&&(i={result:f,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(c=>new C(c));return d(r,{code:l.invalid_union,unionErrors:o}),g}}get options(){return this._def.options}};pe.create=(t,e)=>new pe({options:t,typeName:y.ZodUnion,..._(e)});K=t=>t instanceof ge?K(t.schema):t instanceof M?K(t.innerType()):t instanceof ye?[t.value]:t instanceof ve?t.options:t instanceof _e?k.objectValues(t.enum):t instanceof we?K(t._def.innerType):t instanceof me?[void 0]:t instanceof fe?[null]:t instanceof D?[void 0,...K(t.unwrap())]:t instanceof U?[null,...K(t.unwrap())]:t instanceof Ke||t instanceof be?K(t.unwrap()):t instanceof ke?K(t._def.innerType):[],ot=class t extends w{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.object)return d(r,{code:l.invalid_type,expected:m.object,received:r.parsedType}),g;let n=this.discriminator,s=r.data[n],i=this.optionsMap.get(s);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(d(r,{code:l.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),g)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let s=new Map;for(let i of r){let a=K(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of a){if(s.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);s.set(o,i)}}return new t({typeName:y.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:s,..._(n)})}};he=class extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=(i,a)=>{if(it(i)||it(a))return g;let o=Yt(i.value,a.value);return o.valid?((at(i)||at(a))&&r.dirty(),{status:r.value,value:o.data}):(d(n,{code:l.invalid_intersection_types}),g)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>s(i,a)):s(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};he.create=(t,e,r)=>new he({left:t,right:e,typeName:y.ZodIntersection,..._(r)});V=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.array)return d(n,{code:l.invalid_type,expected:m.array,received:n.parsedType}),g;if(n.data.length<this._def.items.length)return d(n,{code:l.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),g;!this._def.rest&&n.data.length>this._def.items.length&&(d(n,{code:l.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...n.data].map((a,o)=>{let c=this._def.items[o]||this._def.rest;return c?c._parse(new N(n,a,n.path,o)):null}).filter(a=>!!a);return n.common.async?Promise.all(i).then(a=>T.mergeArray(r,a)):T.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};V.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new V({items:t,typeName:y.ZodTuple,rest:null,..._(e)})};ct=class t extends w{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.object)return d(n,{code:l.invalid_type,expected:m.object,received:n.parsedType}),g;let s=[],i=this._def.keyType,a=this._def.valueType;for(let o in n.data)s.push({key:i._parse(new N(n,o,n.path,o)),value:a._parse(new N(n,n.data[o],n.path,o)),alwaysSet:o in n.data});return n.common.async?T.mergeObjectAsync(r,s):T.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof w?new t({keyType:e,valueType:r,typeName:y.ZodRecord,..._(n)}):new t({keyType:re.create(),valueType:e,typeName:y.ZodRecord,..._(r)})}},Me=class extends w{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.map)return d(n,{code:l.invalid_type,expected:m.map,received:n.parsedType}),g;let s=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([o,c],u)=>({key:s._parse(new N(n,o,n.path,[u,"key"])),value:i._parse(new N(n,c,n.path,[u,"value"]))}));if(n.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let c of a){let u=await c.key,f=await c.value;if(u.status==="aborted"||f.status==="aborted")return g;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),o.set(u.value,f.value)}return{status:r.value,value:o}})}else{let o=new Map;for(let c of a){let u=c.key,f=c.value;if(u.status==="aborted"||f.status==="aborted")return g;(u.status==="dirty"||f.status==="dirty")&&r.dirty(),o.set(u.value,f.value)}return{status:r.value,value:o}}}};Me.create=(t,e,r)=>new Me({valueType:e,keyType:t,typeName:y.ZodMap,..._(r)});je=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==m.set)return d(n,{code:l.invalid_type,expected:m.set,received:n.parsedType}),g;let s=this._def;s.minSize!==null&&n.data.size<s.minSize.value&&(d(n,{code:l.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),r.dirty()),s.maxSize!==null&&n.data.size>s.maxSize.value&&(d(n,{code:l.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let u=new Set;for(let f of c){if(f.status==="aborted")return g;f.status==="dirty"&&r.dirty(),u.add(f.value)}return{status:r.value,value:u}}let o=[...n.data.values()].map((c,u)=>i._parse(new N(n,c,n.path,u)));return n.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,r){return new t({...this._def,minSize:{value:e,message:p.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:p.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};je.create=(t,e)=>new je({valueType:t,minSize:null,maxSize:null,typeName:y.ZodSet,..._(e)});ut=class t extends w{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.function)return d(r,{code:l.invalid_type,expected:m.function,received:r.parsedType}),g;function n(o,c){return He({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Oe(),H].filter(u=>!!u),issueData:{code:l.invalid_arguments,argumentsError:c}})}function s(o,c){return He({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Oe(),H].filter(u=>!!u),issueData:{code:l.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof se){let o=this;return R(async function(...c){let u=new C([]),f=await o._def.args.parseAsync(c,i).catch(S=>{throw u.addIssue(n(c,S)),u}),v=await Reflect.apply(a,this,f);return await o._def.returns._def.type.parseAsync(v,i).catch(S=>{throw u.addIssue(s(v,S)),u})})}else{let o=this;return R(function(...c){let u=o._def.args.safeParse(c,i);if(!u.success)throw new C([n(c,u.error)]);let f=Reflect.apply(a,this,u.data),v=o._def.returns.safeParse(f,i);if(!v.success)throw new C([s(f,v.error)]);return v.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:V.create(e).rest(G.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||V.create([]).rest(G.create()),returns:r||G.create(),typeName:y.ZodFunction,..._(n)})}},ge=class extends w{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};ge.create=(t,e)=>new ge({getter:t,typeName:y.ZodLazy,..._(e)});ye=class extends w{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return d(r,{received:r.data,code:l.invalid_literal,expected:this._def.value}),g}return{status:"valid",value:e.data}}get value(){return this._def.value}};ye.create=(t,e)=>new ye({value:t,typeName:y.ZodLiteral,..._(e)});ve=class t extends w{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return d(r,{expected:k.joinValues(n),received:r.parsedType,code:l.invalid_type}),g}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return d(r,{received:r.data,code:l.invalid_enum_value,options:n}),g}return R(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};ve.create=Hr;_e=class extends w{_parse(e){let r=k.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==m.string&&n.parsedType!==m.number){let s=k.objectValues(r);return d(n,{expected:k.joinValues(s),received:n.parsedType,code:l.invalid_type}),g}if(this._cache||(this._cache=new Set(k.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let s=k.objectValues(r);return d(n,{received:n.data,code:l.invalid_enum_value,options:s}),g}return R(e.data)}get enum(){return this._def.values}};_e.create=(t,e)=>new _e({values:t,typeName:y.ZodNativeEnum,..._(e)});se=class extends w{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==m.promise&&r.common.async===!1)return d(r,{code:l.invalid_type,expected:m.promise,received:r.parsedType}),g;let n=r.parsedType===m.promise?r.data:Promise.resolve(r.data);return R(n.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};se.create=(t,e)=>new se({type:t,typeName:y.ZodPromise,..._(e)});M=class extends w{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===y.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),s=this._def.effect||null,i={addIssue:a=>{d(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),s.type==="preprocess"){let a=s.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async o=>{if(r.value==="aborted")return g;let c=await this._def.schema._parseAsync({data:o,path:n.path,parent:n});return c.status==="aborted"?g:c.status==="dirty"?oe(c.value):r.value==="dirty"?oe(c.value):c});{if(r.value==="aborted")return g;let o=this._def.schema._parseSync({data:a,path:n.path,parent:n});return o.status==="aborted"?g:o.status==="dirty"?oe(o.value):r.value==="dirty"?oe(o.value):o}}if(s.type==="refinement"){let a=o=>{let c=s.refinement(o,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>o.status==="aborted"?g:(o.status==="dirty"&&r.dirty(),a(o.value).then(()=>({status:r.value,value:o.value}))))}if(s.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!te(a))return g;let o=s.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>te(a)?Promise.resolve(s.transform(a.value,i)).then(o=>({status:r.value,value:o})):g);k.assertNever(s)}};M.create=(t,e,r)=>new M({schema:t,typeName:y.ZodEffects,effect:e,..._(r)});M.createWithPreprocess=(t,e,r)=>new M({schema:e,effect:{type:"preprocess",transform:t},typeName:y.ZodEffects,..._(r)});D=class extends w{_parse(e){return this._getType(e)===m.undefined?R(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};D.create=(t,e)=>new D({innerType:t,typeName:y.ZodOptional,..._(e)});U=class extends w{_parse(e){return this._getType(e)===m.null?R(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};U.create=(t,e)=>new U({innerType:t,typeName:y.ZodNullable,..._(e)});we=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===m.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};we.create=(t,e)=>new we({innerType:t,typeName:y.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,..._(e)});ke=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Pe(s)?s.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new C(n.common.issues)},input:n.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new C(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};ke.create=(t,e)=>new ke({innerType:t,typeName:y.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,..._(e)});ze=class extends w{_parse(e){if(this._getType(e)!==m.nan){let n=this._getOrReturnCtx(e);return d(n,{code:l.invalid_type,expected:m.nan,received:n.parsedType}),g}return{status:"valid",value:e.data}}};ze.create=t=>new ze({typeName:y.ZodNaN,..._(t)});ti=Symbol("zod_brand"),Ke=class extends w{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Ge=class t extends w{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?g:i.status==="dirty"?(r.dirty(),oe(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let s=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?g:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:y.ZodPipeline})}},be=class extends w{_parse(e){let r=this._def.innerType._parse(e),n=s=>(te(s)&&(s.value=Object.freeze(s.value)),s);return Pe(r)?r.then(s=>n(s)):n(r)}unwrap(){return this._def.innerType}};be.create=(t,e)=>new be({innerType:t,typeName:y.ZodReadonly,..._(e)});ri={object:I.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"})(y||(y={}));ni=(t,e={message:`Input not instance of ${t.name}`})=>Kr(r=>r instanceof t,e),Gr=re.create,Wr=ce.create,si=ze.create,ii=ue.create,qr=le.create,ai=de.create,oi=De.create,ci=me.create,ui=fe.create,li=ne.create,di=G.create,mi=z.create,fi=Ne.create,pi=W.create,hi=I.create,gi=I.strictCreate,yi=pe.create,vi=ot.create,_i=he.create,wi=V.create,ki=ct.create,bi=Me.create,xi=je.create,Si=ut.create,Ei=ge.create,Ai=ye.create,Ti=ve.create,Ri=_e.create,Ci=se.create,Ii=M.create,Oi=D.create,Pi=U.create,$i=M.createWithPreprocess,Di=Ge.create,Ni=()=>Gr().optional(),Mi=()=>Wr().optional(),ji=()=>qr().optional(),zi={string:(t=>re.create({...t,coerce:!0})),number:(t=>ce.create({...t,coerce:!0})),boolean:(t=>le.create({...t,coerce:!0})),bigint:(t=>ue.create({...t,coerce:!0})),date:(t=>de.create({...t,coerce:!0}))},Li=g});var h={};Fe(h,{BRAND:()=>ti,DIRTY:()=>oe,EMPTY_PATH:()=>$s,INVALID:()=>g,NEVER:()=>Li,OK:()=>R,ParseStatus:()=>T,Schema:()=>w,ZodAny:()=>ne,ZodArray:()=>W,ZodBigInt:()=>ue,ZodBoolean:()=>le,ZodBranded:()=>Ke,ZodCatch:()=>ke,ZodDate:()=>de,ZodDefault:()=>we,ZodDiscriminatedUnion:()=>ot,ZodEffects:()=>M,ZodEnum:()=>ve,ZodError:()=>C,ZodFirstPartyTypeKind:()=>y,ZodFunction:()=>ut,ZodIntersection:()=>he,ZodIssueCode:()=>l,ZodLazy:()=>ge,ZodLiteral:()=>ye,ZodMap:()=>Me,ZodNaN:()=>ze,ZodNativeEnum:()=>_e,ZodNever:()=>z,ZodNull:()=>fe,ZodNullable:()=>U,ZodNumber:()=>ce,ZodObject:()=>I,ZodOptional:()=>D,ZodParsedType:()=>m,ZodPipeline:()=>Ge,ZodPromise:()=>se,ZodReadonly:()=>be,ZodRecord:()=>ct,ZodSchema:()=>w,ZodSet:()=>je,ZodString:()=>re,ZodSymbol:()=>De,ZodTransformer:()=>M,ZodTuple:()=>V,ZodType:()=>w,ZodUndefined:()=>me,ZodUnion:()=>pe,ZodUnknown:()=>G,ZodVoid:()=>Ne,addIssueToContext:()=>d,any:()=>li,array:()=>pi,bigint:()=>ii,boolean:()=>qr,coerce:()=>zi,custom:()=>Kr,date:()=>ai,datetimeRegex:()=>Br,defaultErrorMap:()=>H,discriminatedUnion:()=>vi,effect:()=>Ii,enum:()=>Ti,function:()=>Si,getErrorMap:()=>Oe,getParsedType:()=>F,instanceof:()=>ni,intersection:()=>_i,isAborted:()=>it,isAsync:()=>Pe,isDirty:()=>at,isValid:()=>te,late:()=>ri,lazy:()=>Ei,literal:()=>Ai,makeIssue:()=>He,map:()=>bi,nan:()=>si,nativeEnum:()=>Ri,never:()=>mi,null:()=>ui,nullable:()=>Pi,number:()=>Wr,object:()=>hi,objectUtil:()=>Kt,oboolean:()=>ji,onumber:()=>Mi,optional:()=>Oi,ostring:()=>Ni,pipeline:()=>Di,preprocess:()=>$i,promise:()=>Ci,quotelessJson:()=>Is,record:()=>ki,set:()=>xi,setErrorMap:()=>Ps,strictObject:()=>gi,string:()=>Gr,symbol:()=>oi,transformer:()=>Ii,tuple:()=>wi,undefined:()=>ci,union:()=>yi,unknown:()=>di,util:()=>k,void:()=>fi});var Jt=x(()=>{st();Wt();zr();Be();Yr();nt()});var lt=x(()=>{Jt();Jt()});var nn,sn=x(()=>{"use strict";lt();nn=h.object({slug:h.string().min(1).max(64),description:h.string().max(255).optional(),match_command:h.string().min(1),priority:h.number().int().default(50),strip_ansi:h.boolean().default(!1),strip_lines_matching:h.array(h.string()).default([]),truncate_lines_at:h.number().int().positive().max(1e4).optional(),max_lines:h.number().int().positive().max(1e5).optional(),transform:h.string().max(64).optional(),on_empty:h.string().max(255).optional()})});function on(t){return JSON.stringify(t)+mt}function*cn(t){let e=0;for(;;){let r=t.indexOf(mt,e);if(r<0)return;yield t.slice(e,r),e=r+1}}function ft(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}var qi,Yi,Ji,Xi,zc,Lc,Zc,an,mt,Fc,un=x(()=>{"use strict";lt();sn();qi=h.object({id:h.string().min(1).max(64),op:h.literal("filter"),cmd:h.string().min(1).max(2048),plan:h.enum(["trial","smart","pro"]),installId:h.string().min(1).max(64).optional()}),Yi=h.object({id:h.string().min(1).max(64),op:h.literal("ping")}),Ji=h.object({id:h.string().min(1).max(64),op:h.literal("shutdown"),installId:h.string().min(1).max(64)}),Xi=h.object({id:h.string().min(1).max(64),op:h.literal("reload"),installId:h.string().min(1).max(64).optional()}),zc=h.discriminatedUnion("op",[qi,Yi,Ji,Xi]),Lc=h.object({id:h.string(),ok:h.literal(!0),data:h.unknown()}),Zc=h.object({id:h.string(),ok:h.literal(!1),err:h.string(),retryAfterMs:h.number().int().nonnegative().optional()}),an=h.object({filter:nn.nullable(),cacheHit:h.boolean().optional()}),mt=`
8
- `,Fc=64*1024});var dn={};Fe(dn,{IDLE_TIMEOUT_MS:()=>sa,PARENT_WATCH_INTERVAL_MS:()=>na,cleanupStaleSocket:()=>er,isParentAlive:()=>ia,socketPath:()=>We});import{join as Qt}from"node:path";import{existsSync as ln,statSync as Qi,unlinkSync as ea,mkdirSync as ta,chmodSync as ra}from"node:fs";function We(){if(process.platform==="win32")return{path:`\\\\.\\pipe\\tokmizer-${process.env.USERNAME??"tokmizer"}`,isPipe:!0};let t=typeof process.getuid=="function"?process.getuid():0,e=process.env.XDG_RUNTIME_DIR;if(e&&ln(e))return{path:Qt(e,`tokmizer-${t}.sock`),isPipe:!1};let r=Qt(b(),"run");try{ta(r,{recursive:!0,mode:448}),ra(r,448)}catch{}return{path:Qt(r,"daemon.sock"),isPipe:!1}}async function er(){let{path:t,isPipe:e}=We();if(e||!ln(t))return;try{if(!Qi(t).isSocket())return}catch{return}let r=await import("node:net");if(!await new Promise(s=>{let i=r.createConnection(t),a=o=>{i.removeAllListeners();try{i.destroy()}catch{}s(o)};i.once("connect",()=>a(!0)),i.once("error",o=>{let c=o.code;a(c!=="ECONNREFUSED"&&c!=="ENOENT")}),setTimeout(()=>a(!0),250)}))try{ea(t)}catch{}}function ia(){let t=process.ppid;if(!t||t===1)return!1;try{return process.kill(t,0),!0}catch{return!1}}var na,sa,tr=x(()=>{"use strict";j();na=3e4,sa=5*6e4});var pt={};Fe(pt,{connectDaemon:()=>ya});import{createConnection as aa}from"node:net";import{spawn as oa}from"node:child_process";import{existsSync as yn,openSync as mn,closeSync as ca,unlinkSync as fn,writeFileSync as pn}from"node:fs";import{dirname as ua,join as la}from"node:path";import{fileURLToPath as da}from"node:url";async function pa(t,e){return new Promise((r,n)=>{let s=aa(t),i=o=>{if(s.removeAllListeners("connect"),s.removeAllListeners("error"),clearTimeout(a),o){try{s.destroy()}catch{}n(o)}else r(s)},a=setTimeout(()=>i(new Error("connect timeout")),e);s.once("connect",()=>i(null)),s.once("error",o=>i(o))})}function ha(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:da(new URL("../bin/tkr-daemon.js",import.meta.url))}async function gn(t,e=3e3){let r=Math.ceil(e/75);for(let n=0;n<r;n++){if(yn(t))return!0;await new Promise(s=>setTimeout(s,75))}return!1}async function ga(t){let e=ha();if(!yn(e))throw new Error(`tkr-daemon binary not found at ${e}`);let{path:r}=We(),n=la(ua(r),"daemon.spawn.lock"),s=null;try{s=mn(n,"wx"),pn(s,String(process.pid))}catch(i){if(i.code==="EEXIST"){if(await gn(r,5e3))return;try{fn(n)}catch{}s=mn(n,"wx"),pn(s,String(process.pid))}else throw i}try{if(oa(process.execPath,[e],{detached:!0,stdio:["ignore","ignore","ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:t}}).unref(),!await gn(r,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(s!==null){try{ca(s)}catch{}try{fn(n)}catch{}}}}async function ya(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:We(),r=await Dt(),n=null,s=0;for(;s<=hn;)try{n=await pa(e,ma);break}catch{if(s+=1,s>hn)throw new Error(`tkr-daemon unreachable at ${e}`);await er(),await ga(r)}if(!n)throw new Error("tkr-daemon: socket setup failed");let i=new Map,a="";n.setEncoding("utf8"),n.on("data",c=>{a+=c;let u=-1;for(let v=0;v<a.length;v++)a[v]===mt&&(u=v);if(u<0)return;let f=[];for(let v of cn(a.slice(0,u+1)))f.push(v);a=a.slice(u+1);for(let v of f)if(v)try{let E=JSON.parse(v),S=i.get(E.id);if(!S)continue;clearTimeout(S.timer),i.delete(E.id),S.resolve(E)}catch{}}),n.on("close",()=>{for(let c of i.values())clearTimeout(c.timer),c.reject(new Error("daemon socket closed"));i.clear()}),n.on("error",()=>{});function o(c){return new Promise((u,f)=>{let v=setTimeout(()=>{i.delete(c.id),f(new Error(`daemon request timeout (${c.op})`))},fa);i.set(c.id,{resolve:u,reject:f,timer:v}),n.write(on(c))})}return{filter:async(c,u)=>{let f=await o({id:ft(),op:"filter",cmd:c.slice(0,2048),plan:u,installId:r});if(!f.ok)return null;let v=an.safeParse(f.data);return v.success?v.data.filter:null},ping:async()=>{let c=await o({id:ft(),op:"ping"});if(!c.ok)throw new Error(c.err);return c.data},reload:async()=>{let c=await o({id:ft(),op:"reload",installId:r});if(!c.ok)throw new Error(c.err);return c.data},close:()=>{try{n.end()}catch{}}}}var ma,fa,hn,ht=x(()=>{"use strict";un();tr();Ce();ma=500,fa=3e3,hn=1});function qe(t){let e=t;for(let[r,n]of va)e=e.replace(r,n);return e}var va,rr=x(()=>{"use strict";va=[[/(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]+-)*(?: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+.-]*:\/\/[^:/\s@]*:)[^\s]+(@[^@/\s]+)/g,"$1[REDACTED]$2"],[/(AWS_(?:ACCESS_KEY_ID|SECRET_ACCESS_KEY|SESSION_TOKEN)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(GOOGLE_APPLICATION_CREDENTIALS\s*=\s*)\S+/g,"$1[REDACTED]"],[/(AZURE_(?:CLIENT_SECRET|TENANT_ID|CLIENT_ID)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-(?:proj-)?[A-Za-z0-9_-]{20,})/g,"sk-[REDACTED]"],[/\b(OPENAI_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(ANTHROPIC_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-ant-[A-Za-z0-9_-]{20,})/g,"sk-ant-[REDACTED]"],[/\b(GH(?:_|ITHUB_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(GITLAB_TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(SLACK_(?:BOT_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/(xox[bpsoa]-[A-Za-z0-9-]{10,})/g,"xox[REDACTED]"],[/(xapp-[A-Za-z0-9-]{10,})/g,"[REDACTED]"],[/(sk_(?:test|live)_[A-Za-z0-9]{16,})/g,"sk_[REDACTED]"],[/(gh[a-z])_[A-Za-z0-9]{20,}/g,"$1_[REDACTED]"],[/(github_pat)_[A-Za-z0-9_]{20,}/g,"$1_[REDACTED]"],[/(gl(?:pat|rt|soat|imt|dt|ft|agent|oas|cbt|ptt))-[A-Za-z0-9_-]{16,}/g,"$1-[REDACTED]"],[/(npm_[A-Za-z0-9_-]{20,})/g,"npm_[REDACTED]"],[/(?:AKIA|ASIA|AGPA|AIDA|AROA|ANPA)[0-9A-Z]{16,}/g,"[REDACTED_AWS_KEY]"],[/AIza[A-Za-z0-9_-]{35}/g,"[REDACTED_GOOGLE_KEY]"],[/hv[sb]\.[A-Za-z0-9_-]{20,}/g,"[REDACTED_VAULT_TOKEN]"],[/dop_v1_[A-Za-z0-9]{40,}/g,"[REDACTED]"],[/dckr_pat_[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/pypi-[A-Za-z0-9_-]{16,}/g,"[REDACTED]"],[/rk_(?:live|test)_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/whsec_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/(eyJ[A-Za-z0-9_-]{6,}(?:\.[A-Za-z0-9_-]{4,}){1,2})/g,"[REDACTED_JWT]"],[/-----BEGIN [A-Z ]*PRIVATE KEY-----(?:[\s\S]*?-----END[^\n]*-----|\r?\n[A-Za-z0-9+/=][A-Za-z0-9+/=\r\n]*)?/g,"[REDACTED_PEM]"],[/\b((?:--?)?[A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|AUTH|_PWD)[A-Za-z0-9_]*['"]?\s*=\s*)(?:"[^"]*"|'[^']*'|[^"'\s]\S*)/gi,"$1[REDACTED]"],[/\b([A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|_PWD)[A-Za-z0-9_]*['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/((?:^|[\s'"{,])['"]?(?:[A-Za-z0-9_]+_)?auth['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/(\bpwd\s*[=:]\s*)(?:"[^"]*"|'[^']*'|[^/~\s][^\s;'"]*)/gi,"$1[REDACTED]"],[/([=:]\s*["']?)[A-Za-z0-9_\-+/=]{40,}/g,"$1[REDACTED]"]]});import{join as ar}from"node:path";import{appendFileSync as ir,existsSync as Ye,mkdirSync as _a,readFileSync as nr,renameSync as vn,statSync as wa,unlinkSync as Se}from"node:fs";function or(){return ar(b(),"spool")}function gt(t){return ar(or(),`${t}.jsonl`)}function cr(t){return ar(or(),`${t}.pending.jsonl`)}function yt(t,e){try{_a(or(),{recursive:!0,mode:448});let r=gt(t);if(Ye(r)&&wa(r).size>=ka)return;ir(r,JSON.stringify(e)+`
9
- `,{mode:384})}catch{return}}function ba(t){try{let e=cr(t),r=gt(t),n=`${r}.merging`;if(Ye(n)&&(ir(e,nr(n,"utf8"),{mode:384}),Se(n)),Ye(e))Ye(r)&&(vn(r,n),ir(e,nr(n,"utf8"),{mode:384}),Se(n));else{if(!Ye(r))return[];vn(r,e)}let s=[];for(let i of nr(e,"utf8").split(`
10
- `))if(i.trim())try{s.push(JSON.parse(i))}catch{continue}return s.length===0?(Se(e),[]):s}catch{return[]}}function wn(t){try{Se(cr(t))}catch{return}}async function vt(t,e,r={}){if(sr.has(t))return"fail";sr.add(t);try{let n=ba(t);if(n.length===0)return"empty";let s=await A();if(!s)return"fail";if(r.requirePro&&s.plan!=="pro")return wn(t),"ok";let i=r.baseUrl??process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",a=await L();for(let o=0;o<n.length;o+=_n){let c=await Z("POST",e,{events:n.slice(o,o+_n)},{baseUrl:i,bearer:s.jwt,signingSecret:s.signingSecret,fingerprint:a.fingerprint,installId:a.installId});if(!c.ok)return c.status===401||c.status===403?"auth":"fail"}return wn(t),"ok"}catch{return"fail"}finally{sr.delete(t)}}function ur(t){try{Se(gt(t))}catch{}try{Se(`${gt(t)}.merging`)}catch{}try{Se(cr(t))}catch{return}}var ka,_n,sr,_t=x(()=>{"use strict";j();X();Ce();Ue();ka=512*1024,_n=500,sr=new Set});var bn={};Fe(bn,{commandName:()=>wt,flushTelemetry:()=>Oa,recordTelemetry:()=>Ia});function kn(t){let e=t.toLowerCase();return e.startsWith("git")||Aa.has(e)}function wt(t){let e=t.trim().split(/\s+/).filter(o=>o.length>0),r=0;for(;r<e.length&&Ea.test(e[r]??"");)r+=1;let n=e[r];if(!n||!xa.test(n)||n.length>Ra||kn(n)||Ta.test(n)||qe(n)!==n)return"";let s=e[r+1];return s&&kn(s)?"":(s&&Ca.has(n.toLowerCase())&&Sa.test(s)?`${n} ${s}`:n).slice(0,64)}async function Ia(t){if(!t.telemetryOptIn)return;let e=wt(t.cmd),r=e&&qe(e)===e?e:"other";yt("telemetry",{cmd:r,tokensSaved:Math.max(0,Math.round(t.tokensSaved)),optimized:t.optimized})}async function Oa(t){return vt("telemetry","/api/v1/telemetry",{baseUrl:t})}var xa,Sa,Ea,Aa,Ta,Ra,Ca,lr=x(()=>{"use strict";rr();_t();xa=/^[a-z0-9][a-z0-9._-]*$/i,Sa=/^[a-z][a-z-]+$/,Ea=/^[A-Za-z_][A-Za-z0-9_]*=/,Aa=new Set(["gh","glab","gup","hub","gist"]),Ta=/^(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,Ra=24,Ca=new Set(["docker","podman","npm","pnpm","yarn","npx","bun","deno","cargo","rustup","go","pip","pip3","uv","poetry","brew","apt","apt-get","dnf","yum","pacman","kubectl","helm","terraform","aws","gcloud","az","systemctl","composer","bundle","gem","dotnet","prisma","tkr","rtk","token"])});var xn={};Fe(xn,{flush:()=>$a,recordEvent:()=>Pa});async function Pa(t){if(t.plan!=="pro")return;let e=wt(t.cmd);!e||qe(e)!==e||yt("learn",{cmd:e,filterId:t.filterId,rawBytes:t.rawBytes,filteredBytes:t.filteredBytes})}async function $a(t){return vt("learn","/api/v1/learn",{baseUrl:t,requirePro:!0})}var Sn=x(()=>{"use strict";lr();rr();_t()});import Pn from"node:readline/promises";import{stdin as vr,stdout as P}from"node:process";import ro from"node:os";import{join as no}from"node:path";var $={welcome:"Link your paid Tokmizer account.",needToken:"Tokmizer already works for free on this device. Linking is only to attach a paid plan.",getToken:"Subscribe at tokmizer.com/#pricing, then grab your key from your dashboard.",askToken:"Paste your dashboard key, then press Enter:",activating:"Linking...",activated:t=>`Linked. You are on the ${t} plan.`,failed:t=>`Activation failed: ${t}`,trialEnded:"Your trial has ended. Renew at tokmizer.com/dashboard/billing",suspended:t=>`Your token is suspended. ${t}`,revoked:"Your token has been revoked. Contact support at tokmizer.com/contact",rotated:"Token rotated. Paste your new token from tokmizer.com/dashboard/token",offline:"Network required. Tokmizer needs an internet connection.",deviceCap:"Device limit reached. Manage devices at tokmizer.com/dashboard/devices"};Ce();X();Ue();j();import{readFile as Da,writeFile as Na,mkdir as Ma}from"node:fs/promises";Ue();X();Ce();import{createPublicKey as xs,verify as Ss}from"node:crypto";function Es(t,e){let r=Lt();if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Error("Tokmizer plugin: no valid signing public key. Set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM or rebuild plugin against a prod key.");let n=xs({key:r,format:"pem"});try{let s=Buffer.from(e,"base64url");return Ss(null,Buffer.from(t,"utf8"),n,s)}catch{return!1}}var As=/^[a-z0-9][a-z0-9-]*$/;async function Tr(t){let e=await A();if(!e)throw new Error("Plugin not activated.");let r=await L(),n=await Z("GET","/api/v1/skills/bundle",void 0,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:8e3});if(!n.ok)throw new Error(`bundle fetch failed ${n.status}`);let s=await ee(n),i=[];for(let a of s.bundles){if(!As.test(a.slug))throw new Error(`invalid bundle slug ${a.slug}`);let o=[...a.fragments].sort((c,u)=>c.position-u.position);for(let c of o)if(!Es(c.body,c.hash))throw new Error(`fragment signature mismatch on ${a.slug}[${c.position}]`);i.push({slug:a.slug,version:a.version,body:o.map(c=>c.body).join(`
6
+ `});import{createHmac as Mi,createPublicKey as ji,verify as zi}from"node:crypto";function Jt(){return((process.env.TOKMIZER_DEV==="1"?process.env.TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM:void 0)??Kr).replace(/\\n/g,`
7
+ `)}function Zi(t,e,r,n){try{let s=ji({key:n,format:"pem"});return zi(null,Buffer.from(`${e}.${t}`,"utf8"),s,Buffer.from(r,"base64url"))}catch{return!1}}async function ie(t){let e=await t.text(),r=Jt(),n=t.headers?.get?.("x-tokmizer-resp-ts")??null;if(n!==null){let a=Number(n);if(!Number.isFinite(a)||Date.now()-a>Li)throw new se("http","stale server response (resp-ts outside freshness window)")}if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new se("http","no signing public key configured; refusing to trust server response");let s=t.headers?.get?.("x-tokmizer-resp-sig")??null,i=Number(n);if(!s||n===null||!Number.isFinite(i))throw new se("http","missing server response signature");if(!Zi(e,i,s,r))throw new se("http","invalid server response signature");return JSON.parse(e)}function Fi(t,e,r){return Mi("sha256",r).update(`${e}.${t}`).digest("hex")}async function B(t,e,r,n){let s=Date.now(),i=r===void 0?"":JSON.stringify(r),a=n.signingSecret?Fi(i,s,n.signingSecret):"0".repeat(64),o={"content-type":"application/json","x-tokmizer-fingerprint":n.fingerprint,"x-tokmizer-install-id":n.installId,"x-tokmizer-sig":a,"x-tokmizer-ts":String(s),"x-tokmizer-plugin-version":xe};n.bearer&&(o.authorization=`Bearer ${n.bearer}`);let c=n.timeoutMs??5e3,u=t!=="GET"&&t!=="DELETE",f={method:t,headers:o,signal:AbortSignal.timeout(c)};u&&(f.body=i);try{return await fetch(`${n.baseUrl}${e}`,f)}catch(_){let b=_.name;throw b==="TimeoutError"||b==="AbortError"?new se("timeout",`${t} ${e} timed out after ${c}ms`):new se("network",`${t} ${e} failed: ${_.message}`)}}var Li,se,Ge=E(()=>{"use strict";Yt();qr();Li=300*1e3;se=class extends Error{constructor(r,n,s){super(n);this.kind=r;this.status=s;this.name="TransportError"}kind;status}});var dn,mn=E(()=>{"use strict";lt();dn=h.object({slug:h.string().min(1).max(64),description:h.string().max(255).optional(),match_command:h.string().min(1),priority:h.number().int().default(50),strip_ansi:h.boolean().default(!1),strip_lines_matching:h.array(h.string()).default([]),truncate_lines_at:h.number().int().positive().max(1e4).optional(),max_lines:h.number().int().positive().max(1e5).optional(),transform:h.string().max(64).optional(),on_empty:h.string().max(255).optional()})});function pn(t){return JSON.stringify(t)+_t}function*hn(t){let e=0;for(;;){let r=t.indexOf(_t,e);if(r<0)return;yield t.slice(e,r),e=r+1}}function vt(){return`${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}var ra,na,sa,ia,qc,Gc,Wc,fn,_t,Yc,gn=E(()=>{"use strict";lt();mn();ra=h.object({id:h.string().min(1).max(64),op:h.literal("filter"),cmd:h.string().min(1).max(2048),plan:h.enum(["trial","smart","pro"]),installId:h.string().min(1).max(64).optional()}),na=h.object({id:h.string().min(1).max(64),op:h.literal("ping")}),sa=h.object({id:h.string().min(1).max(64),op:h.literal("shutdown"),installId:h.string().min(1).max(64)}),ia=h.object({id:h.string().min(1).max(64),op:h.literal("reload"),installId:h.string().min(1).max(64).optional()}),qc=h.discriminatedUnion("op",[ra,na,sa,ia]),Gc=h.object({id:h.string(),ok:h.literal(!0),data:h.unknown()}),Wc=h.object({id:h.string(),ok:h.literal(!1),err:h.string(),retryAfterMs:h.number().int().nonnegative().optional()}),fn=h.object({filter:dn.nullable(),cacheHit:h.boolean().optional()}),_t=`
8
+ `,Yc=64*1024});var _n={};Ve(_n,{IDLE_TIMEOUT_MS:()=>da,PARENT_WATCH_INTERVAL_MS:()=>la,cleanupStaleSocket:()=>ir,isParentAlive:()=>ma,socketPath:()=>We});import{join as sr}from"node:path";import{existsSync as yn,statSync as aa,unlinkSync as oa,mkdirSync as ca,chmodSync as ua}from"node:fs";function We(){if(process.platform==="win32")return{path:`\\\\.\\pipe\\tokmizer-${process.env.USERNAME??"tokmizer"}`,isPipe:!0};let t=typeof process.getuid=="function"?process.getuid():0,e=process.env.XDG_RUNTIME_DIR;if(e&&yn(e))return{path:sr(e,`tokmizer-${t}.sock`),isPipe:!1};let r=sr(x(),"run");try{ca(r,{recursive:!0,mode:448}),ua(r,448)}catch{}return{path:sr(r,"daemon.sock"),isPipe:!1}}async function ir(){let{path:t,isPipe:e}=We();if(e||!yn(t))return;try{if(!aa(t).isSocket())return}catch{return}let r=await import("node:net");if(!await new Promise(s=>{let i=r.createConnection(t),a=o=>{i.removeAllListeners();try{i.destroy()}catch{}s(o)};i.once("connect",()=>a(!0)),i.once("error",o=>{let c=o.code;a(c!=="ECONNREFUSED"&&c!=="ENOENT")}),setTimeout(()=>a(!0),250)}))try{oa(t)}catch{}}function ma(){let t=process.ppid;if(!t||t===1)return!1;try{return process.kill(t,0),!0}catch{return!1}}var la,da,ar=E(()=>{"use strict";z();la=3e4,da=5*6e4});var Ye={};Ve(Ye,{connectDaemon:()=>Sa});import{createConnection as fa}from"node:net";import{spawn as pa}from"node:child_process";import{existsSync as Sn,openSync as vn,closeSync as ha,unlinkSync as wn,writeFileSync as kn}from"node:fs";import{dirname as ga,join as ya}from"node:path";import{fileURLToPath as _a}from"node:url";async function ka(t,e){return new Promise((r,n)=>{let s=fa(t),i=o=>{if(s.removeAllListeners("connect"),s.removeAllListeners("error"),clearTimeout(a),o){try{s.destroy()}catch{}n(o)}else r(s)},a=setTimeout(()=>i(new Error("connect timeout")),e);s.once("connect",()=>i(null)),s.once("error",o=>i(o))})}function ba(){return process.env.TOKMIZER_DAEMON_BIN?process.env.TOKMIZER_DAEMON_BIN:_a(new URL("../bin/tkr-daemon.js",import.meta.url))}async function xn(t,e=3e3){let r=Math.ceil(e/75);for(let n=0;n<r;n++){if(Sn(t))return!0;await new Promise(s=>setTimeout(s,75))}return!1}async function xa(t){let e=ba();if(!Sn(e))throw new Error(`tkr-daemon binary not found at ${e}`);let{path:r}=We(),n=ya(ga(r),"daemon.spawn.lock"),s=null;try{s=vn(n,"wx"),kn(s,String(process.pid))}catch(i){if(i.code==="EEXIST"){if(await xn(r,5e3))return;try{wn(n)}catch{}s=vn(n,"wx"),kn(s,String(process.pid))}else throw i}try{if(pa(process.execPath,[e],{detached:!0,stdio:["ignore","ignore","ignore"],env:{...process.env,TOKMIZER_DAEMON_INSTALL_ID:t}}).unref(),!await xn(r,3e3))throw new Error("tkr-daemon failed to bind socket within 3s")}finally{if(s!==null){try{ha(s)}catch{}try{wn(n)}catch{}}}}async function Sa(t={}){let{path:e}=t.socketPath?{path:t.socketPath}:We(),r=await Kt(),n=null,s=0;for(;s<=bn;)try{n=await ka(e,va);break}catch{if(s+=1,s>bn)throw new Error(`tkr-daemon unreachable at ${e}`);await ir(),await xa(r)}if(!n)throw new Error("tkr-daemon: socket setup failed");let i=new Map,a="";n.setEncoding("utf8"),n.on("data",c=>{a+=c;let u=-1;for(let _=0;_<a.length;_++)a[_]===_t&&(u=_);if(u<0)return;let f=[];for(let _ of hn(a.slice(0,u+1)))f.push(_);a=a.slice(u+1);for(let _ of f)if(_)try{let b=JSON.parse(_),S=i.get(b.id);if(!S)continue;clearTimeout(S.timer),i.delete(b.id),S.resolve(b)}catch{}}),n.on("close",()=>{for(let c of i.values())clearTimeout(c.timer),c.reject(new Error("daemon socket closed"));i.clear()}),n.on("error",()=>{});function o(c){return new Promise((u,f)=>{let _=setTimeout(()=>{i.delete(c.id),f(new Error(`daemon request timeout (${c.op})`))},wa);i.set(c.id,{resolve:u,reject:f,timer:_}),n.write(pn(c))})}return{filter:async(c,u)=>{let f=await o({id:vt(),op:"filter",cmd:c.slice(0,2048),plan:u,installId:r});if(!f.ok)return null;let _=fn.safeParse(f.data);return _.success?_.data.filter:null},ping:async()=>{let c=await o({id:vt(),op:"ping"});if(!c.ok)throw new Error(c.err);return c.data},reload:async()=>{let c=await o({id:vt(),op:"reload",installId:r});if(!c.ok)throw new Error(c.err);return c.data},close:()=>{try{n.end()}catch{}}}}var va,wa,bn,Je=E(()=>{"use strict";gn();ar();ze();va=500,wa=3e3,bn=1});function Xe(t){let e=t;for(let[r,n]of Ea)e=e.replace(r,n);return e}var Ea,or=E(()=>{"use strict";Ea=[[/(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]+-)*(?: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+.-]*:\/\/[^:/\s@]*:)[^\s]+(@[^@/\s]+)/g,"$1[REDACTED]$2"],[/(AWS_(?:ACCESS_KEY_ID|SECRET_ACCESS_KEY|SESSION_TOKEN)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(GOOGLE_APPLICATION_CREDENTIALS\s*=\s*)\S+/g,"$1[REDACTED]"],[/(AZURE_(?:CLIENT_SECRET|TENANT_ID|CLIENT_ID)\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-(?:proj-)?[A-Za-z0-9_-]{20,})/g,"sk-[REDACTED]"],[/\b(OPENAI_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(ANTHROPIC_API_KEY\s*=\s*)\S+/g,"$1[REDACTED]"],[/(sk-ant-[A-Za-z0-9_-]{20,})/g,"sk-ant-[REDACTED]"],[/\b(GH(?:_|ITHUB_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(GITLAB_TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/\b(SLACK_(?:BOT_)?TOKEN\s*=\s*)\S+/g,"$1[REDACTED]"],[/(xox[bpsoa]-[A-Za-z0-9-]{10,})/g,"xox[REDACTED]"],[/(xapp-[A-Za-z0-9-]{10,})/g,"[REDACTED]"],[/(sk_(?:test|live)_[A-Za-z0-9]{16,})/g,"sk_[REDACTED]"],[/(gh[a-z])_[A-Za-z0-9]{20,}/g,"$1_[REDACTED]"],[/(github_pat)_[A-Za-z0-9_]{20,}/g,"$1_[REDACTED]"],[/(gl(?:pat|rt|soat|imt|dt|ft|agent|oas|cbt|ptt))-[A-Za-z0-9_-]{16,}/g,"$1-[REDACTED]"],[/(npm_[A-Za-z0-9_-]{20,})/g,"npm_[REDACTED]"],[/(?:AKIA|ASIA|AGPA|AIDA|AROA|ANPA)[0-9A-Z]{16,}/g,"[REDACTED_AWS_KEY]"],[/AIza[A-Za-z0-9_-]{35}/g,"[REDACTED_GOOGLE_KEY]"],[/hv[sb]\.[A-Za-z0-9_-]{20,}/g,"[REDACTED_VAULT_TOKEN]"],[/dop_v1_[A-Za-z0-9]{40,}/g,"[REDACTED]"],[/dckr_pat_[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/pypi-[A-Za-z0-9_-]{16,}/g,"[REDACTED]"],[/rk_(?:live|test)_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/whsec_[A-Za-z0-9]{16,}/g,"[REDACTED]"],[/SG\.[A-Za-z0-9_-]{20,}\.[A-Za-z0-9_-]{20,}/g,"[REDACTED]"],[/(eyJ[A-Za-z0-9_-]{6,}(?:\.[A-Za-z0-9_-]{4,}){1,2})/g,"[REDACTED_JWT]"],[/-----BEGIN [A-Z ]*PRIVATE KEY-----(?:[\s\S]*?-----END[^\n]*-----|\r?\n[A-Za-z0-9+/=][A-Za-z0-9+/=\r\n]*)?/g,"[REDACTED_PEM]"],[/\b((?:--?)?[A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|AUTH|_PWD)[A-Za-z0-9_]*['"]?\s*=\s*)(?:"[^"]*"|'[^']*'|[^"'\s]\S*)/gi,"$1[REDACTED]"],[/\b([A-Za-z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASSWD|PASS|APIKEY|KEY|CRED|CREDS|CREDENTIAL|CREDENTIALS|_PWD)[A-Za-z0-9_]*['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/((?:^|[\s'"{,])['"]?(?:[A-Za-z0-9_]+_)?auth['"]?\s*:\s*)(?:"[^"]*"|'[^']*'|[^\s'",}]+)/gi,"$1[REDACTED]"],[/(\bpwd\s*[=:]\s*)(?:"[^"]*"|'[^']*'|[^/~\s][^\s;'"]*)/gi,"$1[REDACTED]"],[/([=:]\s*["']?)[A-Za-z0-9_\-+/=]{40,}/g,"$1[REDACTED]"]]});import{join as fr}from"node:path";import{appendFileSync as dr,existsSync as Qe,mkdirSync as Aa,readFileSync as cr,renameSync as mr,statSync as Ta,unlinkSync as Ee,writeFileSync as Ra}from"node:fs";function pr(){return fr(x(),"spool")}function wt(t){return fr(pr(),`${t}.jsonl`)}function kt(t){return fr(pr(),`${t}.pending.jsonl`)}function bt(t,e){try{Aa(pr(),{recursive:!0,mode:448});let r=wt(t);if(Qe(r)&&Ta(r).size>=Ca)return;dr(r,JSON.stringify(e)+`
9
+ `,{mode:384})}catch{return}}function Ia(t){try{let e=kt(t),r=wt(t),n=`${r}.merging`;if(Qe(n)&&(dr(e,cr(n,"utf8"),{mode:384}),Ee(n)),Qe(e))Qe(r)&&(mr(r,n),dr(e,cr(n,"utf8"),{mode:384}),Ee(n));else{if(!Qe(r))return[];mr(r,e)}let s=[];for(let i of cr(e,"utf8").split(`
10
+ `))if(i.trim())try{s.push(JSON.parse(i))}catch{continue}return s.length===0?(Ee(e),[]):s}catch{return[]}}function En(t){try{Ee(kt(t))}catch{return}}function Oa(t,e){if(e.length===0){En(t);return}let r=kt(t),n=`${r}.tmp`;Ra(n,e.map(s=>JSON.stringify(s)).join(`
11
+ `)+`
12
+ `,{mode:384}),mr(n,r)}async function xt(t,e,r={}){if(lr.has(t))return"fail";lr.add(t);try{let n=Ia(t);if(n.length===0)return"empty";let s=await T();if(!s)return"fail";if(r.requirePro&&s.plan!=="pro")return En(t),"ok";let i=r.baseUrl??process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",a=await U();for(let o=0;o<n.length;o+=ur){let c=await B("POST",e,{events:n.slice(o,o+ur)},{baseUrl:i,bearer:s.jwt,signingSecret:s.signingSecret,fingerprint:a.fingerprint,installId:a.installId});if(!c.ok)return c.status===401||c.status===403?"auth":"fail";Oa(t,n.slice(o+ur))}return"ok"}catch{return"fail"}finally{lr.delete(t)}}function hr(t){try{Ee(wt(t))}catch{}try{Ee(`${wt(t)}.merging`)}catch{}try{Ee(kt(t))}catch{return}}var Ca,ur,lr,St=E(()=>{"use strict";z();ne();ze();Ge();Ca=512*1024,ur=100,lr=new Set});var Tn={};Ve(Tn,{commandName:()=>Et,flushTelemetry:()=>Za,recordTelemetry:()=>La});function An(t){let e=t.toLowerCase();return e.startsWith("git")||Na.has(e)}function Et(t){let e=t.trim().split(/\s+/).filter(o=>o.length>0),r=0;for(;r<e.length&&Da.test(e[r]??"");)r+=1;let n=e[r];if(!n||!Pa.test(n)||n.length>ja||An(n)||Ma.test(n)||Xe(n)!==n)return"";let s=e[r+1];return s&&An(s)?"":(s&&za.has(n.toLowerCase())&&$a.test(s)?`${n} ${s}`:n).slice(0,64)}async function La(t){if(!t.telemetryOptIn)return;let e=Et(t.cmd),r=e&&Xe(e)===e?e:"other";bt("telemetry",{cmd:r,tokensSaved:Math.max(0,Math.round(t.tokensSaved)),optimized:t.optimized})}async function Za(t){return xt("telemetry","/api/v1/telemetry",{baseUrl:t})}var Pa,$a,Da,Na,Ma,ja,za,gr=E(()=>{"use strict";or();St();Pa=/^[a-z0-9][a-z0-9._-]*$/i,$a=/^[a-z][a-z-]+$/,Da=/^[A-Za-z_][A-Za-z0-9_]*=/,Na=new Set(["gh","glab","gup","hub","gist"]),Ma=/^(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,ja=24,za=new Set(["docker","podman","npm","pnpm","yarn","npx","bun","deno","cargo","rustup","go","pip","pip3","uv","poetry","brew","apt","apt-get","dnf","yum","pacman","kubectl","helm","terraform","aws","gcloud","az","systemctl","composer","bundle","gem","dotnet","prisma","tkr","rtk","token"])});var Rn={};Ve(Rn,{flush:()=>Va,recordEvent:()=>Fa});async function Fa(t){if(t.plan!=="pro")return;let e=Et(t.cmd);!e||Xe(e)!==e||bt("learn",{cmd:e,filterId:t.filterId==null?null:dt(t.filterId),rawBytes:t.rawBytes,filteredBytes:t.filteredBytes})}async function Va(t){return xt("learn","/api/v1/learn",{baseUrl:t,requirePro:!0})}var Cn=E(()=>{"use strict";gr();or();St();mt()});import Ln from"node:readline/promises";import{stdin as Sr,stdout as P}from"node:process";import lo from"node:os";import{join as mo}from"node:path";var $={welcome:"Link your paid Tokmizer account.",needToken:"Tokmizer already works for free on this device. Linking is only to attach a paid plan.",getToken:"Subscribe at tokmizer.com/#pricing, then grab your key from your dashboard.",askToken:"Paste your dashboard key, then press Enter:",activating:"Linking...",activated:t=>`Linked. You are on the ${t} plan.`,failed:t=>`Activation failed: ${t}`,trialEnded:"Your trial has ended. Renew at tokmizer.com/dashboard/billing",suspended:t=>`Your token is suspended. ${t}`,revoked:"Your token has been revoked. Contact support at tokmizer.com/contact",rotated:"Token rotated. Paste your new token from tokmizer.com/dashboard/token",offline:"Network required. Tokmizer needs an internet connection.",deviceCap:"Device limit reached. Manage devices at tokmizer.com/dashboard/devices"};mt();ze();ne();Ge();z();import{readFile as Ua,writeFile as Ba,mkdir as Ha}from"node:fs/promises";Ge();ne();ze();import{createPublicKey as Vi,verify as Ui}from"node:crypto";function Bi(t,e){let r=Jt();if(!r||!r.includes("BEGIN PUBLIC KEY"))throw new Error("Tokmizer plugin: no valid signing public key. Set TOKMIZER_RESP_SIGNING_PUBLIC_KEY_PEM or rebuild plugin against a prod key.");let n=Vi({key:r,format:"pem"});try{let s=Buffer.from(e,"base64url");return Ui(null,Buffer.from(t,"utf8"),n,s)}catch{return!1}}var Hi=/^[a-z0-9][a-z0-9-]*$/;async function Gr(t){let e=await T();if(!e)throw new Error("Plugin not activated.");let r=await U(),n=await B("GET","/api/v1/skills/bundle",void 0,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:8e3});if(!n.ok)throw new Error(`bundle fetch failed ${n.status}`);let s=await ie(n),i=[];for(let a of s.bundles){if(!Hi.test(a.slug))throw new Error(`invalid bundle slug ${a.slug}`);let o=[...a.fragments].sort((c,u)=>c.position-u.position);for(let c of o)if(!Bi(c.body,c.hash))throw new Error(`fragment signature mismatch on ${a.slug}[${c.position}]`);i.push({slug:a.slug,version:a.version,body:o.map(c=>c.body).join(`
11
13
 
12
- `)})}return i}j();import{mkdir as Zt,readFile as Ft,writeFile as Vt,stat as Ut,readdir as Rr,rm as Cr}from"node:fs/promises";var Ts="managed-by: tokmizer",Rs=3600*1e3,Cs=10080*60*1e3;function Ir(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?t:Cs}async function Or(t){try{let e=await Ut(Te(t)),r=Date.now()-e.mtimeMs;return r<Rs&&r<=Ir()}catch{return!1}}async function Pr(t,e){await Zt(Xe(),{recursive:!0}),await Vt(Te(t),e,{mode:384})}async function $r(t){let e=new Set(t),r;try{r=await Rr(Xe())}catch{return}for(let n of r){if(!n.endsWith(".md"))continue;let s=n.slice(0,-3);if(!e.has(s))try{await Cr(Te(s))}catch{}}}async function Dr(t,e){await Zt(Qe(),{recursive:!0}),await Vt(Ve(t),e,{mode:384})}async function Bt(t){let e=new Set(t),r;try{r=await Rr(Qe())}catch{return}for(let n of r){if(!n.endsWith(".md"))continue;let s=n.slice(0,-3);if(!e.has(s))try{if(!(await Ft(Ve(s),"utf8")).includes(Ts))continue;await Cr(Ve(s))}catch{}}}async function Nr(t){try{return await Ut(Ve(t)),!0}catch{return!1}}async function Ht(t){try{await Zt(b(),{recursive:!0}),await Vt(Pt(),JSON.stringify({at:Date.now(),error:t}),{mode:384})}catch{}}async function rt(){try{return JSON.parse(await Ft(Pt(),"utf8"))}catch{return null}}async function Mr(t){try{let e=await Ut(Te(t));return Date.now()-e.mtimeMs>Ir()?null:await Ft(Te(t),"utf8")}catch{return null}}X();Ce();Ue();import{readFile as Vi,writeFile as Ui,mkdir as Bi,chmod as Hi}from"node:fs/promises";import{join as Xr}from"node:path";lt();var Zi=h.enum(["normal","compact","minimal"]),Fi=h.enum(["off","light","balanced","max"]),Xt=h.object({enabled:h.boolean().default(!0),telemetryOptIn:h.boolean().default(!0),outputVerbosity:Zi.default("compact"),reducer:Fi.default("off"),filters:h.object({enableAll:h.boolean().default(!0),disabled:h.array(h.string().max(64)).max(100).default([])}).default({enableAll:!0,disabled:[]})});j();var Qr="settings-cache.json",Jr=Xt.parse({});async function dt(){try{let t=await Vi(Xr(b(),Qr),"utf8"),e=JSON.parse(t);return Xt.parse({...Jr,...e})}catch{return Jr}}async function en(t){await Bi(b(),{recursive:!0});let e=Xr(b(),Qr);await Ui(e,JSON.stringify(t,null,2),{mode:384});try{await Hi(e,384)}catch{}}async function tn(t,e){let r=await A();if(!r)throw new Error("Not activated. Run: tkr link");let n=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",s=await L(),i=await Z(t,"/api/v1/settings",e,{baseUrl:n,bearer:r.jwt,signingSecret:r.signingSecret,fingerprint:s.fingerprint,installId:s.installId,timeoutMs:8e3});if(!i.ok)throw new Error(`Settings ${t} failed: ${i.status}`);let a=await ee(i);return await en(a.settings),a}async function xe(){return tn("GET")}async function ie(t){return tn("PATCH",t)}var Ki=new Set(["__proto__","constructor","prototype"]);function Gi(t,e,r){let n=e.split(".");if(n.some(i=>Ki.has(i)))throw new Error(`invalid settings key: ${e}`);let s=t;for(let i=0;i<n.length-1;i++){let a=n[i];(typeof s[a]!="object"||s[a]===null)&&(s[a]={}),s=s[a]}s[n[n.length-1]]=r}function Wi(t){if(t==="true")return!0;if(t==="false")return!1;if(/^-?\d+$/.test(t))return Number.parseInt(t,10);if(t.startsWith("[")||t.startsWith("{"))try{return JSON.parse(t)}catch{}return t}function rn(t,e){let r=Wi(e),n={};return Gi(n,t,r),n}zt();var En="-command";async function dr(t,e){if(!(!e&&await Or("power")))try{let r=await Tr(t),n=[],s=[];for(let i of r)if(i.slug.endsWith(En)){let a=i.slug.slice(0,-En.length);await Dr(a,i.body),s.push(a)}else await Pr(i.slug,i.body),n.push(i.slug);await $r(n),await Bt(s),await Ht(null)}catch(r){await Ht(r instanceof Error?r.message:String(r))}}async function ja(t,e){let r;for(let n=0;n<e.attempts;n++)try{return await t()}catch(s){if(r=s,n===e.attempts-1)break;let i=500*Math.pow(3,n)+Math.floor(Math.random()*300);await new Promise(a=>setTimeout(a,i))}throw r}async function kt(t){let e=await L(),r=Ie(),n={token:t.token,...t.email?{email:t.email}:{},pluginVersion:ae,timeZone:r,...e},s=await ja(()=>Z("POST","/api/v1/license/activate",n,{baseUrl:t.baseUrl,bearer:t.token,fingerprint:e.fingerprint,installId:e.installId,timeoutMs:1e4}),{attempts:3});if(!s.ok)throw s.status>=500?new Error("Tokmizer servers are temporarily unreachable. Try again in a minute."):new Error($.failed(`${s.status} ${await s.text()}`));let i=await ee(s),a={token:t.token,jwt:i.jwt,signingSecret:i.signingSecret,plan:i.plan,status:i.status,trialEndsAt:i.trialEndsAt,subEndsAt:i.subEndsAt,jwtVersion:i.jwtVersion,installId:e.installId,fingerprint:e.fingerprint,pluginVersion:ae,...t.email||i.boundEmail?{email:t.email??i.boundEmail??""}:{},timeZone:r,bonusActive:!1,lastHeartbeatOkAt:Date.now()};return await et(a),await dr(t.baseUrl,!0),a}function za(t){try{return new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit"}).format(new Date)}catch{return new Date().toISOString().slice(0,10)}}async function mr(t){let e=await A();if(!e)return null;let r=await L(),n=e.timeZone??Ie(),s={ts:Date.now(),localDate:za(n),timeZone:n},i;try{i=await Z("POST","/api/v1/license/heartbeat",s,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:5e3})}catch{return e}if(i.status===401)return null;if(i.status===423||i.status===426||i.status===451){await tt();try{await Bt([])}catch{}return null}if(!i.ok)return e;let a;try{a=await ee(i)}catch{return e}let o=a.settingsRevision??0,c=e.lastSettingsRevision??0,u=o>c,f=a.plan!==e.plan,v={...e,jwt:a.jwt,plan:a.plan,status:a.status,trialEndsAt:a.trialEndsAt,subEndsAt:a.subEndsAt,jwtVersion:a.jwtVersion,lastSettingsRevision:o,lastHeartbeatOkAt:Date.now(),timeZone:n,bonusActive:a.bonusActive??!1,...a.bonusResetAt!==void 0?{bonusResetAt:a.bonusResetAt}:{},...a.latestPluginVersion?{latestPluginVersion:a.latestPluginVersion}:{},...Array.isArray(a.allowedFilters)?{allowedFilters:a.allowedFilters}:{}};if(await et(v),u)try{await xe()}catch{}if(u||f)try{let{connectDaemon:E}=await Promise.resolve().then(()=>(ht(),pt)),S=await E();try{await S.reload()}finally{S.close()}}catch{}await dr(t,u||f);try{let{flushTelemetry:E}=await Promise.resolve().then(()=>(lr(),bn)),{flush:S}=await Promise.resolve().then(()=>(Sn(),xn));await E(t),await S(t)}catch{}return v}var La=5*6e4;function Za(){return process.env.TOKMIZER_BASE_URL??"https://tokmizer.com"}async function Fa(t){let e=await L(),r=Ie(),n={pluginVersion:ae,timeZone:r,...e},s=await Z("POST","/api/v1/license/enroll",n,{baseUrl:t,fingerprint:e.fingerprint,installId:e.installId,timeoutMs:4e3});if(!s.ok)throw new Error(`enroll failed ${s.status}`);let i=await ee(s),a={token:i.token,jwt:i.jwt,signingSecret:i.signingSecret,plan:i.plan,status:i.status,trialEndsAt:i.trialEndsAt,subEndsAt:i.subEndsAt,jwtVersion:i.jwtVersion,installId:e.installId,fingerprint:e.fingerprint,pluginVersion:ae,email:"",timeZone:r,bonusActive:!1,lastHeartbeatOkAt:Date.now()};return await et(a),await dr(t,!0),a}async function Ee(t){let e=await A();if(e)return e;let r=Sr();try{let n=await Da(r,"utf8"),s=Number(n);if(Number.isFinite(s)&&Date.now()-s<La)return null}catch{}try{return await Fa(t??Za())}catch{return await Ma(b(),{recursive:!0}),await Na(r,String(Date.now()),{mode:384}),null}}X();import Ua from"node:readline/promises";import{stdin as Ba,stdout as O}from"node:process";function bt(t,e=!1){return!!(t==="pro"||t==="smart"&&e)}X();function Va(){let t=Number(process.env.TOKMIZER_OFFLINE_GRACE_MS);return Number.isFinite(t)&&t>0?t:6048e5}function xt(t,e=Date.now()){let r=t.lastHeartbeatOkAt;if(typeof r=="number"&&e-r>Va())return!0;if(t.subEndsAt){let n=Date.parse(t.subEndsAt);if(Number.isFinite(n)&&e>n)return!0}return!1}function St(t,e=Date.now()){return xt(t,e)?"free":t.plan}function Et(t,e=Date.now()){return xt(t,e)?!1:t.bonusActive??!1}var Ha={enabled:!0,outputVerbosity:"compact",filters:{enableAll:!0,disabled:[]}},Ka=`
14
+ `)})}return i}z();import{mkdir as Xt,readFile as Qt,writeFile as er,stat as tr,readdir as Wr,rm as Yr}from"node:fs/promises";var Ki="managed-by: tokmizer",qi=3600*1e3,Gi=10080*60*1e3;function Jr(){let t=Number(process.env.TOKMIZER_MAX_BUNDLE_AGE_MS);return Number.isFinite(t)&&t>0?t:Gi}async function Xr(t){try{let e=await tr(Me(t)),r=Date.now()-e.mtimeMs;return r<qi&&r<=Jr()}catch{return!1}}async function Qr(t,e){await Xt(ft(),{recursive:!0}),await er(Me(t),e,{mode:384})}async function en(t){let e=new Set(t),r;try{r=await Wr(ft())}catch{return}for(let n of r){if(!n.endsWith(".md"))continue;let s=n.slice(0,-3);if(!e.has(s))try{await Yr(Me(s))}catch{}}}async function tn(t,e){await Xt(pt(),{recursive:!0}),await er(qe(t),e,{mode:384})}async function rr(t){let e=new Set(t),r;try{r=await Wr(pt())}catch{return}for(let n of r){if(!n.endsWith(".md"))continue;let s=n.slice(0,-3);if(!e.has(s))try{if(!(await Qt(qe(s),"utf8")).includes(Ki))continue;await Yr(qe(s))}catch{}}}async function rn(t){try{return await tr(qe(t)),!0}catch{return!1}}async function nr(t){try{await Xt(x(),{recursive:!0}),await er(Bt(),JSON.stringify({at:Date.now(),error:t}),{mode:384})}catch{}}async function gt(){try{return JSON.parse(await Qt(Bt(),"utf8"))}catch{return null}}async function nn(t){try{let e=await tr(Me(t));return Date.now()-e.mtimeMs>Jr()?null:await Qt(Me(t),"utf8")}catch{return null}}ne();ze();Ge();mt();z();import{readFile as Wi,writeFile as Yi,mkdir as Ji,chmod as Xi}from"node:fs/promises";import{join as an}from"node:path";var on="settings-cache.json",sn=Vt.parse({});async function yt(){try{let t=await Wi(an(x(),on),"utf8"),e=JSON.parse(t);return Vt.parse({...sn,...e})}catch{return sn}}async function cn(t){await Ji(x(),{recursive:!0});let e=an(x(),on);await Yi(e,JSON.stringify(t,null,2),{mode:384});try{await Xi(e,384)}catch{}}async function un(t,e){let r=await T();if(!r)throw new Error("Not activated. Run: tkr link");let n=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com",s=await U(),i=await B(t,"/api/v1/settings",e,{baseUrl:n,bearer:r.jwt,signingSecret:r.signingSecret,fingerprint:s.fingerprint,installId:s.installId,timeoutMs:8e3});if(!i.ok)throw new Error(`Settings ${t} failed: ${i.status}`);let a=await ie(i);return await cn(a.settings),a}async function Se(){return un("GET")}async function ae(t){return un("PATCH",t)}var Qi=new Set(["__proto__","constructor","prototype"]);function ea(t,e,r){let n=e.split(".");if(n.some(i=>Qi.has(i)))throw new Error(`invalid settings key: ${e}`);let s=t;for(let i=0;i<n.length-1;i++){let a=n[i];(typeof s[a]!="object"||s[a]===null)&&(s[a]={}),s=s[a]}s[n[n.length-1]]=r}function ta(t){if(t==="true")return!0;if(t==="false")return!1;if(/^-?\d+$/.test(t))return Number.parseInt(t,10);if(t.startsWith("[")||t.startsWith("{"))try{return JSON.parse(t)}catch{}return t}function ln(t,e){let r=ta(e),n={};return ea(n,t,r),n}Yt();var In="-command",On=3;async function yr(t,e){if(!(!e&&await Xr("power")))try{let r=await Gr(t),n=[],s=[];for(let i of r)if(i.slug.endsWith(In)){let a=i.slug.slice(0,-In.length);await tn(a,i.body),s.push(a)}else await Qr(i.slug,i.body),n.push(i.slug);await en(n),await rr(s),await nr(null)}catch(r){await nr(r instanceof Error?r.message:String(r))}}async function Ka(t,e){let r;for(let n=0;n<e.attempts;n++)try{return await t()}catch(s){if(r=s,n===e.attempts-1)break;let i=500*Math.pow(3,n)+Math.floor(Math.random()*300);await new Promise(a=>setTimeout(a,i))}throw r}async function At(t){let e=await U(),r=Le(),n={token:t.token,...t.email?{email:t.email}:{},pluginVersion:xe,timeZone:r,...e},s=await Ka(()=>B("POST","/api/v1/license/activate",n,{baseUrl:t.baseUrl,bearer:t.token,fingerprint:e.fingerprint,installId:e.installId,timeoutMs:1e4}),{attempts:3});if(!s.ok)throw s.status>=500?new Error("Tokmizer servers are temporarily unreachable. Try again in a minute."):new Error($.failed(`${s.status} ${await s.text()}`));let i=await ie(s),a={token:t.token,jwt:i.jwt,signingSecret:i.signingSecret,plan:i.plan,status:i.status,trialEndsAt:i.trialEndsAt,subEndsAt:i.subEndsAt,jwtVersion:i.jwtVersion,installId:e.installId,fingerprint:e.fingerprint,pluginVersion:xe,...t.email||i.boundEmail?{email:t.email??i.boundEmail??""}:{},timeZone:r,bonusActive:!1,lastHeartbeatOkAt:Date.now()};return await re(a),await yr(t.baseUrl,!0),a}function qa(t){try{return new Intl.DateTimeFormat("en-CA",{timeZone:t,year:"numeric",month:"2-digit",day:"2-digit"}).format(new Date)}catch{return new Date().toISOString().slice(0,10)}}async function _r(t){let e=await T();if(!e)return null;let r=await U(),n=e.timeZone??Le(),s={ts:Date.now(),localDate:qa(n),timeZone:n},i;try{i=await B("POST","/api/v1/license/heartbeat",s,{baseUrl:t,bearer:e.jwt,signingSecret:e.signingSecret,fingerprint:r.fingerprint,installId:r.installId,timeoutMs:5e3})}catch{return e}if(i.status===401){let b=(e.heartbeatAuthFails??0)+1,S={...e,heartbeatAuthFails:b};if(b>=On&&e.email&&(S.relinkRequired=!0),await re(S),b>=On&&!e.email)try{return await Pn(t)}catch{return null}return null}if(i.status===451){await ht();try{await rr([])}catch{}return null}if(i.status===426)return await re({...e,updateRequired:!0}),null;if(i.status===423)return await re({...e,relinkRequired:!0}),null;if(!i.ok){if(i.status===400)try{(await i.json())?.code==="stale_ts"&&await re({...e,clockSkewDetected:!0})}catch{}return e}let a;try{a=await ie(i)}catch{return e}let o=a.settingsRevision??0,c=e.lastSettingsRevision??0,u=o>c,f=a.plan!==e.plan,_={...e,jwt:a.jwt,plan:a.plan,status:a.status,trialEndsAt:a.trialEndsAt,subEndsAt:a.subEndsAt,jwtVersion:a.jwtVersion,lastSettingsRevision:o,lastHeartbeatOkAt:Date.now(),heartbeatAuthFails:0,relinkRequired:!1,updateRequired:!1,clockSkewDetected:!1,timeZone:n,bonusActive:a.bonusActive??!1,...a.bonusResetAt!==void 0?{bonusResetAt:a.bonusResetAt}:{},...a.latestPluginVersion?{latestPluginVersion:a.latestPluginVersion}:{},...Array.isArray(a.allowedFilters)?{allowedFilters:a.allowedFilters.map(dt)}:{}};if(await re(_),u)try{await Se()}catch{}if(u||f)try{let{connectDaemon:b}=await Promise.resolve().then(()=>(Je(),Ye)),S=await b();try{await S.reload()}finally{S.close()}}catch{}await yr(t,u||f);try{let{flushTelemetry:b}=await Promise.resolve().then(()=>(gr(),Tn)),{flush:S}=await Promise.resolve().then(()=>(Cn(),Rn));await b(t),await S(t)}catch{}return _}var Ga=5*6e4;function Wa(){return process.env.TOKMIZER_BASE_URL??"https://tokmizer.com"}async function Pn(t){let e=await U(),r=Le(),n={pluginVersion:xe,timeZone:r,...e},s=await B("POST","/api/v1/license/enroll",n,{baseUrl:t,fingerprint:e.fingerprint,installId:e.installId,timeoutMs:4e3});if(!s.ok)throw new Error(`enroll failed ${s.status}`);let i=await ie(s),a={token:i.token,jwt:i.jwt,signingSecret:i.signingSecret,plan:i.plan,status:i.status,trialEndsAt:i.trialEndsAt,subEndsAt:i.subEndsAt,jwtVersion:i.jwtVersion,installId:e.installId,fingerprint:e.fingerprint,pluginVersion:xe,email:"",timeZone:r,bonusActive:!1,lastHeartbeatOkAt:Date.now()};return await re(a),await yr(t,!0),a}async function Ae(t){let e=await T();if(e)return e;let r=Hr();try{let n=await Ua(r,"utf8"),s=Number(n);if(Number.isFinite(s)&&Date.now()-s<Ga)return null}catch{}try{return await Pn(t??Wa())}catch{return await Ha(x(),{recursive:!0}),await Ba(r,String(Date.now()),{mode:384}),null}}ne();import Ja from"node:readline/promises";import{stdin as Xa,stdout as O}from"node:process";function Tt(t,e=!1){return!!(t==="pro"||t==="smart"&&e)}ne();function Ya(){let t=Number(process.env.TOKMIZER_OFFLINE_GRACE_MS);return Number.isFinite(t)&&t>0?t:6048e5}function Rt(t,e=Date.now()){let r=t.lastHeartbeatOkAt;if(typeof r=="number"&&e-r>Ya())return!0;if(t.subEndsAt){let n=Date.parse(t.subEndsAt);if(Number.isFinite(n)&&e>n)return!0}return!1}function Ct(t,e=Date.now()){return Rt(t,e)?"free":t.plan}function It(t,e=Date.now()){return Rt(t,e)?!1:t.bonusActive??!1}var Qa={enabled:!0,outputVerbosity:"compact",filters:{enableAll:!0,disabled:[]}},eo=`
13
15
  Help improve Tokmizer
14
16
  We can collect the NAME of the commands you run, like "git" or "docker",
15
17
  and whether we managed to compress them. Never their arguments, your output,
@@ -17,123 +19,128 @@ your file paths, or anything inside them. It just shows us which commands to
17
19
  optimize next, so you save even more over time. You can change this anytime
18
20
  in your settings.
19
21
 
20
- `;async function Ga(t){return O.write(Ka),fr(t,"Share anonymous command names to help improve filters?",!0)}async function An(t,e,r){let n=(await t.question(`${e} [${r}]: `)).trim();return n.length===0?r:n}async function fr(t,e,r){let n=r?"Y/n":"y/N",s=(await t.question(`${e} [${n}]: `)).trim().toLowerCase();return s===""?r:s==="y"||s==="yes"}async function Wa(t,e,r,n){let s=(await t.question(`${e} (${r.join(" / ")}) [${n}]: `)).trim().toLowerCase();return s.length===0?n:r.find(a=>a===s)??n}async function qa(t,e,r){O.write(`
22
+ `;async function to(t){return O.write(eo),vr(t,"Share anonymous command names to help improve filters?",!0)}async function $n(t,e,r){let n=(await t.question(`${e} [${r}]: `)).trim();return n.length===0?r:n}async function vr(t,e,r){let n=r?"Y/n":"y/N",s=(await t.question(`${e} [${n}]: `)).trim().toLowerCase();return s===""?r:s==="y"||s==="yes"}async function ro(t,e,r,n){let s=(await t.question(`${e} (${r.join(" / ")}) [${n}]: `)).trim().toLowerCase();return s.length===0?n:r.find(a=>a===s)??n}async function no(t,e,r){O.write(`
21
23
  Let us walk through each setting. Press Enter to keep the default.
22
24
 
23
- `);let n=await fr(t,"Enable Tokmizer optimizations?",!0),s=await Wa(t,"Output verbosity",["normal","compact","minimal"],"normal"),i=await fr(t,"Enable all built-in filters?",!0),a=[];i||(a=(await An(t,"Comma-separated slugs to DISABLE (e.g. git,grep)","")).split(",").map(u=>u.trim()).filter(u=>u.length>0));let o={enabled:n,outputVerbosity:s,filters:{enableAll:i,disabled:a}};return bt(e,r)?O.write(`
25
+ `);let n=await vr(t,"Enable Tokmizer optimizations?",!0),s=await ro(t,"Output verbosity",["normal","compact","minimal"],"normal"),i=await vr(t,"Enable all built-in filters?",!0),a=[];i||(a=(await $n(t,"Comma-separated slugs to DISABLE (e.g. git,grep)","")).split(",").map(u=>u.trim()).filter(u=>u.length>0));let o={enabled:n,outputVerbosity:s,filters:{enableAll:i,disabled:a}};return Tt(e,r)?O.write(`
24
26
  /power is available right now on this token.
25
27
  `):e==="smart"&&O.write(`
26
28
  /power is included with Pro, or with Smart during your 7-day monthly bonus.
27
29
  It is NOT available today.
28
- `),o}async function pr(t,e=!1){let r=Ua.createInterface({input:Ba,output:O});try{let n=e?" (bonus window active)":"";O.write(`
30
+ `),o}async function wr(t,e=!1){let r=Ja.createInterface({input:Xa,output:O});try{let n=e?" (bonus window active)":"";O.write(`
29
31
  Configure Tokmizer (current plan: ${t}${n})
30
32
 
31
33
  `),O.write(` 1) Recommended - sane defaults, ready to go
32
34
  `),O.write(` 2) Custom - walk through each option
33
35
 
34
- `);let i=await An(r,"Choose 1 or 2","1")==="2"?await qa(r,t,e):{...Ha},a=await Ga(r),o={...i,telemetryOptIn:a};O.write(`
36
+ `);let i=await $n(r,"Choose 1 or 2","1")==="2"?await no(r,t,e):{...Qa},a=await to(r),o={...i,telemetryOptIn:a};O.write(`
35
37
  Saving...
36
- `);let c=await ie(o);O.write(`Done.
38
+ `);let c=await ae(o);O.write(`Done.
37
39
  `),O.write(`${JSON.stringify(c.settings,null,2)}
38
40
  `),O.write(`
39
41
  You can re-run this any time with: tkr settings configure
40
42
  `),O.write(`Or edit at: https://tokmizer.com/dashboard/settings
41
- `)}finally{r.close()}}async function Tn(){let t=await xe(),e=await A(),r=e?St({...e,plan:t.plan}):t.plan,n=e?Et(e):!1;await pr(r,n)}j();import{mkdir as Ya,writeFile as hr,readFile as Ja,unlink as Rn,chmod as Xa}from"node:fs/promises";import{existsSync as At}from"node:fs";import{join as Le}from"node:path";import{fileURLToPath as Qa}from"node:url";import gr from"node:os";var Cn=["git","npm","yarn","pnpm","docker","kubectl","terraform","tofu","cargo","go","mvn","gradle","rg","grep","find","ls","cat","tail","head","ps","lsof","ssh","scp","rsync","curl","wget","jq","yq","make"];function q(){return Le(b(),"shims")}function yr(){try{let t=gr.platform()==="win32";return At(Le(q(),t?"git.cmd":"git"))}catch{return!1}}function eo(t,e){return["#!/usr/bin/env bash",`exec node ${JSON.stringify(t)} --as ${JSON.stringify(e)} "$@"`,""].join(`
42
- `)}function to(t,e){return["@echo off",`node "${t}" --as "${e}" %*`,""].join(`\r
43
- `)}async function Je(t){let e=q();await Ya(e,{recursive:!0,mode:448});let r=[],n=gr.platform()==="win32";for(let s of Cn){let i=n?Le(e,`${s}.cmd`):Le(e,s);if(At(i))try{await Rn(i)}catch{}n?await hr(i,to(t,s)):(await hr(i,eo(t,s),{mode:493}),await Xa(i,493)),r.push(s)}return r}async function In(){let t=q();if(!At(t))return 0;let e=0,r=gr.platform()==="win32";for(let n of Cn){let s=r?Le(t,`${n}.cmd`):Le(t,n);try{await Rn(s),e+=1}catch{}}return e}var On="# tokmizer-shim PATH (managed by tokmizer)";function Ze(){return`${On}
44
- export PATH="${q()}:$PATH"
45
- `}async function Tt(t){if(!At(t))return"missing";let e=await Ja(t,"utf8");return e.includes(On)?"present":(await hr(t,`${e.replace(/\n*$/,`
43
+ `)}finally{r.close()}}async function Dn(){let t=await Se(),e=await T(),r=e?Ct({...e,plan:t.plan}):t.plan,n=e?It(e):!1;await wr(r,n)}z();import{mkdir as so,writeFile as kr,readFile as io,unlink as Nn,chmod as ao}from"node:fs/promises";import{existsSync as Ot}from"node:fs";import{delimiter as Gu,join as Ze}from"node:path";import{fileURLToPath as oo}from"node:url";import br from"node:os";var Mn=["git","npm","yarn","pnpm","docker","kubectl","terraform","tofu","cargo","go","mvn","gradle","rg","grep","find","ls","cat","tail","head","ps","lsof","ssh","scp","rsync","curl","wget","jq","yq","make"];function Y(){return Ze(x(),"shims")}function xr(){try{let t=br.platform()==="win32";return Ot(Ze(Y(),t?"git.cmd":"git"))}catch{return!1}}function co(t,e){return["#!/usr/bin/env bash",`exec node ${JSON.stringify(t)} --as ${JSON.stringify(e)} "$@"`,""].join(`
44
+ `)}function uo(t,e){return["@echo off",`node "${t}" --as "${e}" %*`,""].join(`\r
45
+ `)}async function et(t){let e=Y();await so(e,{recursive:!0,mode:448});let r=[],n=br.platform()==="win32";for(let s of Mn){let i=n?Ze(e,`${s}.cmd`):Ze(e,s);if(Ot(i))try{await Nn(i)}catch{}n?await kr(i,uo(t,s)):(await kr(i,co(t,s),{mode:493}),await ao(i,493)),r.push(s)}return r}async function jn(){let t=Y();if(!Ot(t))return 0;let e=0,r=br.platform()==="win32";for(let n of Mn){let s=r?Ze(t,`${n}.cmd`):Ze(t,n);try{await Nn(s),e+=1}catch{}}return e}var zn="# tokmizer-shim PATH (managed by tokmizer)";function Fe(){return`${zn}
46
+ export PATH="${Y()}:$PATH"
47
+ `}async function Pt(t){if(!Ot(t))return"missing";let e=await io(t,"utf8");return e.includes(zn)?"present":(await kr(t,`${e.replace(/\n*$/,`
46
48
  `)}
47
- ${Ze()}`),"added")}function Ae(){return process.env.TOKMIZER_SHIM_JS?process.env.TOKMIZER_SHIM_JS:Qa(new URL("../bin/tkr-shim.js",import.meta.url))}async function $n(t){let e=await A();if(e){P.write($.activated(e.plan)+`
48
- `);return}let r=Pn.createInterface({input:vr,output:P}),n=null,s=!1;try{P.write(`${$.welcome}
49
+ ${Fe()}`),"added")}function Te(){return process.env.TOKMIZER_SHIM_JS?process.env.TOKMIZER_SHIM_JS:oo(new URL("../bin/tkr-shim.js",import.meta.url))}async function Zn(t){let e=await T();if(e){P.write($.activated(e.plan)+`
50
+ `);return}let r=Ln.createInterface({input:Sr,output:P}),n=null,s=!1;try{P.write(`${$.welcome}
49
51
  ${$.needToken}
50
52
  ${$.getToken}
51
53
 
52
54
  `);let i=(await r.question(`${$.askToken} `)).trim();P.write(`${$.activating}
53
- `);let a=await kt({token:i,baseUrl:t});P.write($.activated(a.plan)+`
55
+ `);let a=await At({token:i,baseUrl:t});P.write($.activated(a.plan)+`
54
56
  `),n=a.plan,s=a.bonusActive??!1}catch(i){let a=i instanceof Error?i.message:String(i);P.write(`${a}
55
- `),process.exitCode=1}finally{r.close()}n&&(await pr(n,s),await so())}async function so(){try{if(vr.isTTY){let t=Pn.createInterface({input:vr,output:P});try{let e=(await t.question("Also optimize your commands outside the agent (terminal)? [y/N] ")).trim().toLowerCase();if(e==="y"||e==="yes"){let r=await Je(Ae());P.write(`Installed ${r.length} shims.
56
- `);let n=no(ro.homedir(),(process.env.SHELL??"").includes("zsh")?".zshrc":".bashrc"),s=await Tt(n);s==="added"?P.write(`Added PATH to ${n}. Open a new terminal.
57
+ `),process.exitCode=1}finally{r.close()}n&&(await wr(n,s),await fo())}async function fo(){try{if(Sr.isTTY){let t=Ln.createInterface({input:Sr,output:P});try{let e=(await t.question("Also optimize your commands outside the agent (terminal)? [y/N] ")).trim().toLowerCase();if(e==="y"||e==="yes"){let r=await et(Te());P.write(`Installed ${r.length} shims.
58
+ `);let n=mo(lo.homedir(),(process.env.SHELL??"").includes("zsh")?".zshrc":".bashrc"),s=await Pt(n);s==="added"?P.write(`Added PATH to ${n}. Open a new terminal.
57
59
  `):s==="missing"&&P.write(`Add this to your shell rc:
58
- ${Ze()}`)}}finally{t.close()}}}catch{}try{let{connectDaemon:t}=await Promise.resolve().then(()=>(ht(),pt)),e=await t();await e.ping(),e.close(),P.write(` Engine: \u2705 active
60
+ ${Fe()}`)}}finally{t.close()}}}catch{}try{let{connectDaemon:t}=await Promise.resolve().then(()=>(Je(),Ye)),e=await t();await e.ping(),e.close(),P.write(` Engine: \u2705 active
59
61
  `)}catch{P.write(` Engine: starts on first use
60
62
  `)}P.write(`
61
63
  \u2705 Ready. tokmizer optimizes your commands automatically.
62
64
  Run "tkr gain" anytime to see your savings.
63
- `)}X();var io=[{host:"claude-code",vars:["CLAUDE_CODE","CLAUDE_CODE_VERSION","ANTHROPIC_CLAUDE_CODE"]},{host:"codex",vars:["CODEX_VERSION","CODEX_CLI","OPENAI_CODEX"]},{host:"cursor",vars:["CURSOR_VERSION","CURSOR_TRACE_ID"]},{host:"cline",vars:["CLINE_VERSION","CLINE_API_KEY"]},{host:"aider",vars:["AIDER_VERSION","AIDER_MODEL"]},{host:"gemini-cli",vars:["GEMINI_CLI_VERSION","GEMINI_API_KEY"]},{host:"windsurf",vars:["WINDSURF_VERSION","WINDSURF_USER"]},{host:"copilot",vars:["GITHUB_COPILOT_VERSION","COPILOT_INTEGRATION_ID"]}],Dn=new Set(["claude-code","codex"]);function Nn(t=process.env){let e=process.platform,r=e==="darwin"||e==="linux"||e==="win32"?e:"other",n=process.arch;for(let s of io)if(s.vars.some(i=>t[i]))return{host:s.host,source:"env",os:r,arch:n,shimRecommended:!Dn.has(s.host)};return{host:"shell",source:"fallback",os:r,arch:n,shimRecommended:!0}}function Mn(t){return Dn.has(t)?"native-hooks":"shell-shim"}import{readFile as _r,rm as ao}from"node:fs/promises";j();import{join as Ln}from"node:path";var oo="stats.jsonl",jn=2e4;async function Zn(t){let r=(await _r(t,"utf8")).split(`
64
- `).filter(n=>n.trim()!=="");return r.length>jn?r.slice(r.length-jn):r}function wr(){return Ln(b(),oo)}async function Fn(t=wr()){try{let r=(await _r(t,"utf8")).split(`
65
- `).filter(n=>n.trim()!=="").length;return await ao(t,{force:!0}),r}catch{return 0}}function It(t){return Math.ceil(t/4)}async function kr(t=wr(),e=0){let r;try{r=await Zn(t)}catch{return{count:0,rawTokens:0,filteredTokens:0,savedTokens:0,savedPct:0,sinceDays:1}}let n=0,s=0,i=0,a=Number.POSITIVE_INFINITY;for(let S of r){let br=S.trim();if(br)try{let Y=JSON.parse(br);if(typeof Y.t!="number"||typeof Y.r!="number"||typeof Y.f!="number"||Y.t<e)continue;n+=1,s+=Y.r,i+=Y.f,Y.t<a&&(a=Y.t)}catch{continue}}let o=It(s),c=It(i),u=Math.max(0,o-c),f=o?Math.round(u/o*100):0,v=Math.floor(Date.now()/1e3),E=Number.isFinite(a)?Math.max(1,Math.ceil((v-a)/86400)):1;return{count:n,rawTokens:o,filteredTokens:c,savedTokens:u,savedPct:f,sinceDays:E}}function Ct(t){return t>=1e6?(t/1e6).toFixed(1)+"M":t>=1e3?(t/1e3).toFixed(1)+"K":String(t)}function co(t){return t<=0?"~$0":t<1?"~$1":"~$"+Math.round(t)}function Vn(t){return String(t).replace(/\B(?=(\d{3})+(?!\d))/g,",")}var Un="\x1B[38;2;245;176;65m",Bn="\x1B[0m",Rt=32;function zn(t,e){let r="\u2588".repeat(t);return e?`${Un}${r}${Bn}`:r}function Hn(t,e){if(t.count===0)return" No data yet. Run a few commands \u2014 tkr counts your savings quietly.";let r=co(t.savedTokens/1e6*e.pricePerMtok),n=Ct(t.rawTokens)+" tokens",s=Ct(t.filteredTokens)+" tokens",i=Rt,a=t.rawTokens>0?Math.max(1,Math.round(Rt*(t.filteredTokens/t.rawTokens))):1,o=" ".repeat(Rt-i),c=" ".repeat(Rt-a),u=" tokmizer \xB7 your savings",f=e.subtitle??`since install \xB7 ${t.sinceDays}d`,v=" "+"\u2500".repeat(61);return[`${u}${" ".repeat(Math.max(2,40-u.length))}${f}`,v,"",` ${"Without tokmizer".padEnd(16)} ${zn(i,e.color)}${o} ${n}`,` ${"With tokmizer".padEnd(16)} ${zn(a,e.color)}${c} ${s}`,"",` ${"Saved".padEnd(16)} ${Ct(t.savedTokens)} tokens \xB7 ${t.savedPct} % less noise`,` ${"In dollars".padEnd(16)} ${r} saved`,"",` ${Vn(t.count)} commands compressed (only commands with big output compress)`,""].join(`
66
- `)}async function Kn(t=wr(),e=0){let r;try{r=await Zn(t)}catch{return[]}let n=new Map;for(let s of r){let i=s.trim();if(i)try{let a=JSON.parse(i);if(typeof a.t!="number"||typeof a.r!="number"||typeof a.f!="number"||a.t<e)continue;let o=new Date(a.t*1e3),c=`${o.getFullYear()}-${String(o.getMonth()+1).padStart(2,"0")}-${String(o.getDate()).padStart(2,"0")}`,u=n.get(c)??{count:0,rawB:0,filtB:0};u.count+=1,u.rawB+=a.r,u.filtB+=a.f,n.set(c,u)}catch{continue}}return[...n.entries()].sort(([s],[i])=>s<i?-1:s>i?1:0).map(([s,i])=>({day:s,count:i.count,savedTokens:Math.max(0,It(i.rawB)-It(i.filtB))}))}function Gn(t,e){if(t.length===0)return"";let r=(u,f,v)=>` ${u.padEnd(11)}${Vn(f).padStart(4)}${Ct(v).padStart(13)}`,n=" "+"Day".padEnd(11)+"Cmds".padStart(4)+"Saved".padStart(13),s=" "+"\u2500".repeat(31),i=t.map(u=>r(`${u.day.slice(8,10)}/${u.day.slice(5,7)}`,u.count,u.savedTokens)),a=t.reduce((u,f)=>u+f.count,0),o=t.reduce((u,f)=>u+f.savedTokens,0),c=r("Total",a,o);return[n,s,...i,s,e.color?`${Un}${c}${Bn}`:c,""].join(`
67
- `)}async function Wn(){try{let t=await _r(Ln(b(),"settings-cache.json"),"utf8"),r=JSON.parse(t).gainPricePerMtok;if(typeof r=="number"&&Number.isFinite(r)&&r>0)return r}catch{}return 3}j();import{appendFileSync as nl,chmodSync as sl,mkdirSync as il,existsSync as uo,readFileSync as Jn,rmSync as lo}from"node:fs";import{dirname as ol,join as mo}from"node:path";var fo="usage.jsonl",qn=2e4;function Xn(){return mo(b(),fo)}function Qn(t=Xn()){try{if(!uo(t))return 0;let e=Jn(t,"utf8").split(`
68
- `).filter(r=>r.trim()!=="").length;return lo(t,{force:!0}),e}catch{return 0}}function Yn(t){let e=t.trim();if(!e)return null;try{let r=JSON.parse(e);return typeof r.t!="number"||typeof r.s!="string"||typeof r.o!="number"?null:{s:r.s,o:r.o}}catch{return null}}function es(t=Xn()){let e;try{e=Jn(t,"utf8").split(`
69
- `).filter(i=>i.trim()!=="")}catch{return{sessionId:null,total:0,routed:0,pct:0}}e.length>qn&&(e=e.slice(e.length-qn));let r=null;for(let i=e.length-1;i>=0;i-=1){let a=Yn(e[i]??"");if(a){r=a.s;break}}if(r===null)return{sessionId:null,total:0,routed:0,pct:0};let n=0,s=0;for(let i of e){let a=Yn(i);!a||a.s!==r||(n+=1,a.o===1&&(s+=1))}return{sessionId:r,total:n,routed:s,pct:n?Math.round(s/n*100):0}}function ts(t){return t.total===0?" No commands yet this session.":[" This session"," "+"\u2500".repeat(40),` ${t.total} commands \xB7 ${t.routed} handled by tkr (${t.pct} %)`," The rest (cd, echo\u2026) has nothing to optimize.",""].join(`
70
- `)}_t();import po from"node:os";import{join as ho}from"node:path";var B=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com";function go(){process.stdout.write(["Usage: tkr <command>",""," link link a paid account (paste your key)"," link <key> link without prompts"," link --shim [--shim-runner P] install shell-shims (universal compat)"," unlink unlink this machine from your account"," status show current plan + status"," gain [--day|--week] token savings (today / 7 days / all-time)"," session this session's tkr coverage"," discover what's covered (agent + terminal)"," doctor print detected host, OS, adapter"," shim install [--runner P] install shell-shims into ~/.tokmizer/shims"," shim uninstall remove shell-shims"," heartbeat refresh JWT + bundle"," settings show print current settings"," settings set <key> <value> update one setting (key uses dot path, e.g. filters.enableAll true)"," settings configure interactive wizard (recommended or custom)"," settings reset reset all settings to defaults"," compression [level] show or set compression level (light, balanced, max)"," reducer [level] show or set response reducer (off, light, balanced, max) \u2014 Smart/Pro"," telemetry status show telemetry on/off + local record count"," telemetry on | off turn anonymous telemetry on or off"," telemetry forget erase telemetry data stored on this machine",""].join(`
71
- `))}async function yo(t){let e=t[0]??"show";if(e==="show"){let r=await xe();process.stdout.write(`Plan: ${r.plan}
65
+ `)}ne();var po=[{host:"claude-code",vars:["CLAUDE_CODE","CLAUDE_CODE_VERSION","ANTHROPIC_CLAUDE_CODE"]},{host:"codex",vars:["CODEX_VERSION","CODEX_CLI","OPENAI_CODEX"]},{host:"cursor",vars:["CURSOR_VERSION","CURSOR_TRACE_ID"]},{host:"cline",vars:["CLINE_VERSION","CLINE_API_KEY"]},{host:"aider",vars:["AIDER_VERSION","AIDER_MODEL"]},{host:"gemini-cli",vars:["GEMINI_CLI_VERSION","GEMINI_API_KEY"]},{host:"windsurf",vars:["WINDSURF_VERSION","WINDSURF_USER"]},{host:"copilot",vars:["GITHUB_COPILOT_VERSION","COPILOT_INTEGRATION_ID"]}],Fn=new Set(["claude-code","codex"]);function Vn(t=process.env){let e=process.platform,r=e==="darwin"||e==="linux"||e==="win32"?e:"other",n=process.arch;for(let s of po)if(s.vars.some(i=>t[i]))return{host:s.host,source:"env",os:r,arch:n,shimRecommended:!Fn.has(s.host)};return{host:"shell",source:"fallback",os:r,arch:n,shimRecommended:!0}}function Un(t){return Fn.has(t)?"native-hooks":"shell-shim"}import{readFile as Ar,rm as ho}from"node:fs/promises";z();import{join as Kn}from"node:path";var go="stats.jsonl",Bn=2e4;async function qn(t){let r=(await Ar(t,"utf8")).split(`
66
+ `).filter(n=>n.trim()!=="");return r.length>Bn?r.slice(r.length-Bn):r}function Tr(){return Kn(x(),go)}async function Gn(t=Tr()){try{let r=(await Ar(t,"utf8")).split(`
67
+ `).filter(n=>n.trim()!=="").length;return await ho(t,{force:!0}),r}catch{return 0}}function Nt(t){return Math.ceil(t/4)}async function Rr(t=Tr(),e=0){let r;try{r=await qn(t)}catch{return{count:0,compressedCount:0,rawTokens:0,filteredTokens:0,savedTokens:0,savedPct:0,sinceDays:1}}let n=0,s=0,i=0,a=0,o=Number.POSITIVE_INFINITY;for(let tt of r){let rt=tt.trim();if(rt)try{let L=JSON.parse(rt);if(typeof L.t!="number"||typeof L.r!="number"||typeof L.f!="number"||L.t<e)continue;n+=1,L.f<L.r&&(s+=1),i+=L.r,a+=L.f,L.t<o&&(o=L.t)}catch{continue}}let c=Nt(i),u=Nt(a),f=Math.max(0,c-u),_=c?Math.round(f/c*100):0,b=Math.floor(Date.now()/1e3),S=Number.isFinite(o)?Math.max(1,Math.ceil((b-o)/86400)):1;return{count:n,compressedCount:s,rawTokens:c,filteredTokens:u,savedTokens:f,savedPct:_,sinceDays:S}}function Dt(t){return t>=1e6?(t/1e6).toFixed(1)+"M":t>=1e3?(t/1e3).toFixed(1)+"K":String(t)}function yo(t){return t<=0?"~$0":t<1?"~$1":"~$"+Math.round(t)}function Er(t){return String(t).replace(/\B(?=(\d{3})+(?!\d))/g,",")}var Wn="\x1B[38;2;245;176;65m",Yn="\x1B[0m",$t=32;function Hn(t,e){let r="\u2588".repeat(t);return e?`${Wn}${r}${Yn}`:r}function Jn(t,e){if(t.count===0)return" No data yet. Run a few commands \u2014 tkr counts your savings quietly.";let r=yo(t.savedTokens/1e6*e.pricePerMtok),n=Dt(t.rawTokens)+" tokens",s=Dt(t.filteredTokens)+" tokens",i=$t,a=t.rawTokens>0?Math.max(1,Math.round($t*(t.filteredTokens/t.rawTokens))):1,o=" ".repeat($t-i),c=" ".repeat($t-a),u=" tokmizer \xB7 your savings",f=e.subtitle??`since install \xB7 ${t.sinceDays}d`,_=" "+"\u2500".repeat(61);return[`${u}${" ".repeat(Math.max(2,40-u.length))}${f}`,_,"",` ${"Without tokmizer".padEnd(16)} ${Hn(i,e.color)}${o} ${n}`,` ${"With tokmizer".padEnd(16)} ${Hn(a,e.color)}${c} ${s}`,"",` ${"Saved".padEnd(16)} ${Dt(t.savedTokens)} tokens \xB7 ${t.savedPct} % less noise`,` ${"In dollars".padEnd(16)} ${r} saved`,"",` ${Er(t.compressedCount)} of ${Er(t.count)} commands compressed (only big output compresses)`,""].join(`
68
+ `)}async function Xn(t=Tr(),e=0){let r;try{r=await qn(t)}catch{return[]}let n=new Map;for(let s of r){let i=s.trim();if(i)try{let a=JSON.parse(i);if(typeof a.t!="number"||typeof a.r!="number"||typeof a.f!="number"||a.t<e)continue;let o=new Date(a.t*1e3),c=`${o.getFullYear()}-${String(o.getMonth()+1).padStart(2,"0")}-${String(o.getDate()).padStart(2,"0")}`,u=n.get(c)??{count:0,rawB:0,filtB:0};u.count+=1,u.rawB+=a.r,u.filtB+=a.f,n.set(c,u)}catch{continue}}return[...n.entries()].sort(([s],[i])=>s<i?-1:s>i?1:0).map(([s,i])=>({day:s,count:i.count,savedTokens:Math.max(0,Nt(i.rawB)-Nt(i.filtB))}))}function Qn(t,e){if(t.length===0)return"";let r=(u,f,_)=>` ${u.padEnd(11)}${Er(f).padStart(4)}${Dt(_).padStart(13)}`,n=" "+"Day".padEnd(11)+"Cmds".padStart(4)+"Saved".padStart(13),s=" "+"\u2500".repeat(31),i=t.map(u=>r(`${u.day.slice(8,10)}/${u.day.slice(5,7)}`,u.count,u.savedTokens)),a=t.reduce((u,f)=>u+f.count,0),o=t.reduce((u,f)=>u+f.savedTokens,0),c=r("Total",a,o);return[n,s,...i,s,e.color?`${Wn}${c}${Yn}`:c,""].join(`
69
+ `)}async function es(){try{let t=await Ar(Kn(x(),"settings-cache.json"),"utf8"),r=JSON.parse(t).gainPricePerMtok;if(typeof r=="number"&&Number.isFinite(r)&&r>0)return r}catch{}return 3}z();import{appendFileSync as hl,chmodSync as gl,mkdirSync as yl,existsSync as _o,readFileSync as ns,rmSync as vo}from"node:fs";import{dirname as vl,join as wo}from"node:path";var ko="usage.jsonl",ts=2e4;function ss(){return wo(x(),ko)}function is(t=ss()){try{if(!_o(t))return 0;let e=ns(t,"utf8").split(`
70
+ `).filter(r=>r.trim()!=="").length;return vo(t,{force:!0}),e}catch{return 0}}function rs(t){let e=t.trim();if(!e)return null;try{let r=JSON.parse(e);return typeof r.t!="number"||typeof r.s!="string"||typeof r.o!="number"?null:{s:r.s,o:r.o}}catch{return null}}function as(t=ss()){let e;try{e=ns(t,"utf8").split(`
71
+ `).filter(i=>i.trim()!=="")}catch{return{sessionId:null,total:0,routed:0,pct:0}}e.length>ts&&(e=e.slice(e.length-ts));let r=null;for(let i=e.length-1;i>=0;i-=1){let a=rs(e[i]??"");if(a){r=a.s;break}}if(r===null)return{sessionId:null,total:0,routed:0,pct:0};let n=0,s=0;for(let i of e){let a=rs(i);!a||a.s!==r||(n+=1,a.o===1&&(s+=1))}return{sessionId:r,total:n,routed:s,pct:n?Math.round(s/n*100):0}}function os(t){return t.total===0?" No commands yet this session.":[" This session"," "+"\u2500".repeat(40),` ${t.total} commands \xB7 ${t.routed} handled by tkr (${t.pct} %)`," The rest (cd, echo\u2026) has nothing to optimize.",""].join(`
72
+ `)}St();import bo from"node:os";import{join as xo}from"node:path";var H=process.env.TOKMIZER_BASE_URL??"https://tokmizer.com";function So(){process.stdout.write(["Usage: tkr <command>",""," link link a paid account (paste your key)"," link <key> link without prompts"," link --shim [--shim-runner P] install shell-shims (universal compat)"," unlink unlink this machine from your account"," status show current plan + status"," gain [--day|--week] token savings (today / 7 days / all-time)"," session this session's tkr coverage"," discover what's covered (agent + terminal)"," doctor print detected host, OS, adapter"," shim install [--runner P] install shell-shims into ~/.tokmizer/shims"," shim uninstall remove shell-shims"," heartbeat refresh JWT + bundle"," settings show print current settings"," settings set <key> <value> update one setting (key uses dot path, e.g. filters.enableAll true)"," settings configure interactive wizard (recommended or custom)"," settings reset reset all settings to defaults"," compression [level] show or set compression level (light, balanced, max)"," reducer [level] show or set response reducer (off, light, balanced, max) \u2014 Smart/Pro"," telemetry status show telemetry on/off + local record count"," telemetry on | off turn anonymous telemetry on or off"," telemetry forget erase telemetry data stored on this machine",""].join(`
73
+ `))}async function Eo(t){let e=t[0]??"show";if(e==="show"){let r=await Se();process.stdout.write(`Plan: ${r.plan}
72
74
  `),process.stdout.write(`${JSON.stringify(r.settings,null,2)}
73
75
  `);return}if(e==="set"){let r=t[1],n=t[2];if(!r||n===void 0){process.stderr.write(`Usage: tkr settings set <key> <value>
74
- `),process.exitCode=1;return}let s=rn(r,n),i=await ie(s);process.stdout.write(`Updated. ${r} = ${JSON.stringify(n)}
76
+ `),process.exitCode=1;return}let s=ln(r,n),i=await ae(s);process.stdout.write(`Updated. ${r} = ${JSON.stringify(n)}
75
77
  `),process.stdout.write(`Current: ${JSON.stringify(i.settings,null,2)}
76
- `);return}if(e==="configure"){await Tn();return}if(e==="reset"){let r=await ie({enabled:!0,telemetryOptIn:!0,outputVerbosity:"compact",reducer:"off",filters:{enableAll:!0,disabled:[]}});process.stdout.write(`Settings reset to defaults.
78
+ `);return}if(e==="configure"){await Dn();return}if(e==="reset"){let r=await ae({enabled:!0,telemetryOptIn:!0,outputVerbosity:"compact",reducer:"off",filters:{enableAll:!0,disabled:[]}});process.stdout.write(`Settings reset to defaults.
77
79
  `),process.stdout.write(`${JSON.stringify(r.settings,null,2)}
78
80
  `);return}process.stderr.write(`Unknown settings subcommand: ${e}
79
- `),process.exitCode=1}async function vo(t){let e=t[0]??"status";if(e==="on"||e==="off"){let r=e==="on";try{let n=await ie({telemetryOptIn:r});process.stdout.write(`Telemetry ${n.settings.telemetryOptIn?"on":"off"}.
81
+ `),process.exitCode=1}async function Ao(t){let e=t[0]??"status";if(e==="on"||e==="off"){let r=e==="on";try{let n=await ae({telemetryOptIn:r});process.stdout.write(`Telemetry ${n.settings.telemetryOptIn?"on":"off"}.
80
82
  `)}catch(n){process.stdout.write(`${n instanceof Error?n.message:String(n)}
81
- `),process.exitCode=1}return}if(e==="forget"){ur("telemetry"),ur("learn");let r=await Fn()+Qn();process.stdout.write(`Cleared ${r} local telemetry record${r===1?"":"s"} from this machine.
82
- `);return}if(e==="status"){let r;try{r=(await xe()).settings.telemetryOptIn?"on":"off"}catch{r=`${(await dt()).telemetryOptIn?"on":"off"} (offline; last known)`}let n=await kr();process.stdout.write(`Telemetry: ${r}
83
+ `),process.exitCode=1}return}if(e==="forget"){hr("telemetry"),hr("learn");let r=await Gn()+is();process.stdout.write(`Cleared ${r} local telemetry record${r===1?"":"s"} from this machine.
84
+ `);return}if(e==="status"){let r;try{r=(await Se()).settings.telemetryOptIn?"on":"off"}catch{r=`${(await yt()).telemetryOptIn?"on":"off"} (offline; last known)`}let n=await Rr();process.stdout.write(`Telemetry: ${r}
83
85
  ${n.count} commands recorded locally.
84
86
  Manage: tkr telemetry on | off | forget
85
87
  `);return}process.stderr.write(`Unknown telemetry subcommand: ${e}
86
- `),process.exitCode=1}async function _o(){let t=process.argv[2]??"help",e=process.argv.slice(3);if(t==="init"||t==="link"){if(t==="init"&&process.stdout.write("`tkr init` is now `tkr link`. Running link...\n"),e.includes("--shim")){let a=e.indexOf("--shim-runner"),o=a>=0?e[a+1]:Ae(),c=await Je(o??Ae());process.stdout.write(`Installed ${c.length} shims into ${q()}
88
+ `),process.exitCode=1}async function To(){let t=process.argv[2]??"help",e=process.argv.slice(3);if(t==="init"||t==="link"){if(t==="init"&&process.stdout.write("`tkr init` is now `tkr link`. Running link...\n"),e.includes("--shim")){let a=e.indexOf("--shim-runner"),o=a>=0?e[a+1]:Te(),c=await et(o??Te());process.stdout.write(`Installed ${c.length} shims into ${Y()}
87
89
  `),process.stdout.write(`Add this line to your shell rc if not already:
88
- ${Ze()}`);return}let r=e.indexOf("--email"),n=e.indexOf("--token"),s=e.find(a=>a.startsWith("tokmizer_")),i=n>=0?e[n+1]??"":s??"";if(i||r>=0){if(!i){process.stdout.write(`Usage: tkr link <key> (the key from tokmizer.com/dashboard/token, starts with tokmizer_)
89
- `),process.exitCode=1;return}let a=r>=0?e[r+1]:"";try{let o=await kt({token:i,baseUrl:B,...a?{email:a}:{}});process.stdout.write($.activated(o.plan)+`
90
+ ${Fe()}`);return}let r=e.indexOf("--email"),n=e.indexOf("--token"),s=e.find(a=>a.startsWith("tokmizer_")),i=n>=0?e[n+1]??"":s??"";if(i||r>=0){if(!i){process.stdout.write(`Usage: tkr link <key> (the key from tokmizer.com/dashboard/token, starts with tokmizer_)
91
+ `),process.exitCode=1;return}let a=r>=0?e[r+1]:"";try{let o=await At({token:i,baseUrl:H,...a?{email:a}:{}});process.stdout.write($.activated(o.plan)+`
90
92
  `),process.stdout.write(`Settings stay on the recommended defaults. Adjust anytime: tkr settings configure
91
- `);let c=await rt();c?.error&&process.stdout.write(`Note: feature sync failed (${c.error}). Run "tkr heartbeat" to retry.
93
+ `);let c=await gt();c?.error&&process.stdout.write(`Note: feature sync failed (${c.error}). Run "tkr heartbeat" to retry.
92
94
  `)}catch(o){process.stdout.write(`${o instanceof Error?o.message:String(o)}
93
- `),process.exitCode=1}return}await $n(B);return}if(t==="unlink"){let r=await A();await tt();let n=r?.email?` from ${r.email}`:"";process.stdout.write(`Unlinked this machine${n}. The plugin falls back to the free tier; a fresh anonymous token starts on the next online run. Link another account with: tkr link
94
- `);return}if(t==="doctor"){let r=Nn(),n=[`Host: ${r.host} (source: ${r.source})`,`OS: ${r.os}`,`Arch: ${r.arch}`,`Adapter: ${Mn(r.host)}`,`Shim dir: ${q()}`,""];try{let{connectDaemon:s}=await Promise.resolve().then(()=>(ht(),pt)),{socketPath:i}=await Promise.resolve().then(()=>(tr(),dn)),{path:a}=i(),o=await s(),c=await o.ping();o.close(),n.push(`Daemon: running (pid ${c.pid})`,` socket: ${a}`,` uptime: ${Math.floor(c.uptimeMs/1e3)}s`,` ruleCount: ${c.ruleCount}`,` bundleVersion: ${c.bundleVersion}`,"")}catch(s){n.push(`Daemon: not running (${s.message})`,"")}process.stdout.write(n.join(`
95
- `));return}if(t==="shim"){let r=e[0]??"install";if(r==="install"){let n=e.indexOf("--runner"),s=n>=0?e[n+1]:Ae(),i=await Je(s??Ae());process.stdout.write(`Installed ${i.length} shims into ${q()}
96
- `);let a=ho(po.homedir(),(process.env.SHELL??"").includes("zsh")?".zshrc":".bashrc"),o=await Tt(a);o==="added"?process.stdout.write(`Added PATH to ${a}. Open a new terminal to activate.
95
+ `),process.exitCode=1}return}await Zn(H);return}if(t==="unlink"){let r=await T();await ht();let n=r?.email?` from ${r.email}`:"";process.stdout.write(`Unlinked this machine${n}. The plugin falls back to the free tier; a fresh anonymous token starts on the next online run. Link another account with: tkr link
96
+ `);return}if(t==="doctor"){let r=Vn(),n=[`Host: ${r.host} (source: ${r.source})`,`OS: ${r.os}`,`Arch: ${r.arch}`,`Adapter: ${Un(r.host)}`,`Shim dir: ${Y()}`,""];try{let{connectDaemon:s}=await Promise.resolve().then(()=>(Je(),Ye)),{socketPath:i}=await Promise.resolve().then(()=>(ar(),_n)),{path:a}=i(),o=await s(),c=await o.ping();o.close(),n.push(`Daemon: running (pid ${c.pid})`,` socket: ${a}`,` uptime: ${Math.floor(c.uptimeMs/1e3)}s`,` ruleCount: ${c.ruleCount}`,` bundleVersion: ${c.bundleVersion}`,"")}catch(s){n.push(`Daemon: not running (${s.message})`,"")}process.stdout.write(n.join(`
97
+ `));return}if(t==="shim"){let r=e[0]??"install";if(r==="install"){let n=e.indexOf("--runner"),s=n>=0?e[n+1]:Te(),i=await et(s??Te());process.stdout.write(`Installed ${i.length} shims into ${Y()}
98
+ `);let a=xo(bo.homedir(),(process.env.SHELL??"").includes("zsh")?".zshrc":".bashrc"),o=await Pt(a);o==="added"?process.stdout.write(`Added PATH to ${a}. Open a new terminal to activate.
97
99
  `):o==="present"?process.stdout.write(`PATH already set in ${a}. Open a new terminal if not active.
98
100
  `):process.stdout.write(`Add this to your shell rc, then open a new terminal:
99
- ${Ze()}`);return}if(r==="uninstall"){let n=await In();process.stdout.write(`Removed ${n} shims from ${q()}
101
+ ${Fe()}`);return}if(r==="uninstall"){let n=await jn();process.stdout.write(`Removed ${n} shims from ${Y()}
100
102
  `);return}process.stderr.write(`Unknown shim subcommand: ${r}
101
- `),process.exitCode=1;return}if(t==="status"){let r=await A()??await Ee(B);if(!r){process.stdout.write(`Free tier starts automatically on the first online run. Could not reach tokmizer.com right now. Retry later, or run: tkr link
102
- `);return}let n=r.bonusActive??!1,s=bt(St(r),Et(r));if(process.stdout.write(`Plan ${r.plan} | Status ${r.status}${r.email?` | Email ${r.email}`:r.plan==="free"?" | Anonymous":""}
103
+ `),process.exitCode=1;return}if(t==="status"){let r=await T()??await Ae(H);if(!r){process.stdout.write(`Free tier starts automatically on the first online run. Could not reach tokmizer.com right now. Retry later, or run: tkr link
104
+ `);return}let n=r.bonusActive??!1,s=Tt(Ct(r),It(r));if(process.stdout.write(`Plan ${r.plan} | Status ${r.status}${r.email?` | Email ${r.email}`:r.plan==="free"?" | Anonymous":""}
103
105
  `),process.stdout.write(`power: ${s?"available":"locked"}
104
- `),s){let i=await Nr("power"),a=await Mr("power")!==null;if(!i||!a){let o=await rt(),c=o?.error?` (last sync failed: ${o.error})`:"";process.stdout.write(`/power not synced yet${c} \u2014 run: tkr heartbeat
105
- `)}}if(xt(r)&&process.stdout.write(`Offline too long \u2014 reconnect (tkr heartbeat) to restore your plan.
106
+ `),s){let i=await rn("power"),a=await nn("power")!==null;if(!i||!a){let o=await gt(),c=o?.error?` (last sync failed: ${o.error})`:"";process.stdout.write(`/power not synced yet${c} \u2014 run: tkr heartbeat
107
+ `)}}if(Rt(r)&&process.stdout.write(`Offline too long \u2014 reconnect (tkr heartbeat) to restore your plan.
106
108
  `),r.plan==="smart")if(n){let i=r.bonusResetAt?` (window resets ${r.bonusResetAt})`:"";process.stdout.write(`Bonus active: Pro filters + /power are enabled today${i}.
107
109
  `)}else{let i=r.bonusResetAt?` Next reset: ${r.bonusResetAt}.`:"";process.stdout.write(`Bonus inactive. Smart gets 7 free Pro-like days per calendar month.${i}
108
110
  Want unlimited? Upgrade at https://tokmizer.com/#pricing
109
111
  `)}else r.plan==="free"&&process.stdout.write(`Free tier. Upgrade to Smart for the catalog + 7 bonus days/month, or Pro for everything: https://tokmizer.com/#pricing
110
- `);return}if(t==="gain"){let r=e[0]??"",n=0,s,i=!1;if(r==="--jour"||r==="--day"){let S=new Date;n=Math.floor(new Date(S.getFullYear(),S.getMonth(),S.getDate()).getTime()/1e3),s="today"}else(r==="--semaine"||r==="--week")&&(n=Math.floor(Date.now()/1e3)-7*86400,s="last 7 days",i=!0);let[a,o,c]=await Promise.all([kr(void 0,n),Wn(),A()]),u=!!c?.jwt&&c?.plan!=="free",f=!c||!u?"not linked \xB7 anonymous free tier (run tkr link to send these to your dashboard)":c.email?`${c.email} \xB7 ${c.plan}`:`linked \xB7 ${c.plan}`,v=!!process.stdout.isTTY&&!process.env.NO_COLOR,E=` Account: ${f}
111
- `+Hn(a,{color:v,pricePerMtok:o,subtitle:s});if(i){let S=Gn(await Kn(void 0,n),{color:v});S&&(E+=`
112
- `+S)}a.count>0&&!yr()&&(E+=` Only agent commands are counted here. Cover every terminal: tkr shim install
113
- `),process.stdout.write(E+`
114
- `);return}if(t==="session"){process.stdout.write(ts(es())+`
115
- `);return}if(t==="discover"){let r=yr(),n=[" tokmizer coverage"," "+"\u2500".repeat(40)," Agent (Claude/Codex) \u2705 optimized automatically",r?" Your terminal \u2705 covered (shims installed)":" Your terminal \u26A0\uFE0F not covered"];r||n.push("",' \u2192 run "tkr shim install" to also cover your commands outside the agent.'),n.push(""),process.stdout.write(n.join(`
112
+ `);return}if(t==="gain"){let r=e[0]??"",n=0,s,i=!1;if(r==="--jour"||r==="--day"){let S=new Date;n=Math.floor(new Date(S.getFullYear(),S.getMonth(),S.getDate()).getTime()/1e3),s="today"}else(r==="--semaine"||r==="--week")&&(n=Math.floor(Date.now()/1e3)-7*86400,s="last 7 days",i=!0);let[a,o,c]=await Promise.all([Rr(void 0,n),es(),T()]),u=!!c?.jwt&&c?.plan!=="free",f=!c||!u?"not linked \xB7 anonymous free tier (run tkr link to send these to your dashboard)":c.email?`${c.email} \xB7 ${c.plan}`:`linked \xB7 ${c.plan}`,_=!!process.stdout.isTTY&&!process.env.NO_COLOR,b=` Account: ${f}
113
+ `+Jn(a,{color:_,pricePerMtok:o,subtitle:s});if(i){let S=Qn(await Xn(void 0,n),{color:_});S&&(b+=`
114
+ `+S)}a.count>0&&!xr()&&(b+=` Only agent commands are counted here. Cover every terminal: tkr shim install
115
+ `),c?.relinkRequired&&(b+=` \u26A0 dashboard link lost \u2014 run: tkr link <your-token> (from tokmizer.com/dashboard)
116
+ `),c?.updateRequired&&(b+=` \u26A0 plugin update required \u2014 run: /tkr-update
117
+ `),c?.clockSkewDetected&&(b+=` \u26A0 system clock looks off \u2014 sync it, then run: tkr heartbeat
118
+ `);try{let{connectDaemon:S}=await Promise.resolve().then(()=>(Je(),Ye)),tt=await S(),rt=await tt.ping();tt.close(),rt.ruleCount===0&&(b+=` \u26A0 optimizer engine reconnecting \u2014 savings resume shortly (details: tkr doctor)
119
+ `)}catch{b+=` \u26A0 optimizer engine offline \u2014 run: tkr doctor
120
+ `}process.stdout.write(b+`
121
+ `);return}if(t==="session"){process.stdout.write(os(as())+`
122
+ `);return}if(t==="discover"){let r=xr(),n=[" tokmizer coverage"," "+"\u2500".repeat(40)," Agent (Claude/Codex) \u2705 optimized automatically",r?" Your terminal \u2705 covered (shims installed)":" Your terminal \u26A0\uFE0F not covered"];r||n.push("",' \u2192 run "tkr shim install" to also cover your commands outside the agent.'),n.push(""),process.stdout.write(n.join(`
116
123
  `)+`
117
- `);return}if(t==="heartbeat"){await Ee(B);let r=await mr(B);if(process.stdout.write(r?`OK plan=${r.plan} status=${r.status}
124
+ `);return}if(t==="heartbeat"){await Ae(H);let r=await _r(H);if(process.stdout.write(r?`OK plan=${r.plan} status=${r.status}
118
125
  `:`Heartbeat failed
119
- `),r){let n=await rt();n?.error&&process.stdout.write(`Note: feature sync failed: ${n.error}
120
- `)}return}if(t==="settings"){await Ee(B),await yo(e);return}if(t==="telemetry"){await Ee(B),await vo(e);return}if(t==="reducer"){let r=["off","light","balanced","max"],n={off:"default: responses untouched",light:"trims padding, keeps natural prose",balanced:"dense and direct, answer first",max:"telegraphic, every token earns its place"},s=e[0]?.toLowerCase();if(!s){let i=await dt();process.stdout.write(`Reducer: ${i.reducer}
126
+ `),r){let n=await gt();n?.error&&process.stdout.write(`Note: feature sync failed: ${n.error}
127
+ `)}return}if(t==="settings"){await Ae(H),await Eo(e);return}if(t==="telemetry"){await Ae(H),await Ao(e);return}if(t==="reducer"){let r=["off","light","balanced","max"],n={off:"default: responses untouched",light:"trims padding, keeps natural prose",balanced:"dense and direct, answer first",max:"telegraphic, every token earns its place"},s=e[0]?.toLowerCase();if(!s){let i=await yt();process.stdout.write(`Reducer: ${i.reducer}
121
128
  `+r.map(a=>` ${a.padEnd(10)} ${n[a]}`).join(`
122
129
  `)+`
123
130
  Reducer shortens the assistant's replies, not your command output. Smart and Pro plans.
124
131
  Change it: tkr reducer <off|light|balanced|max>
125
132
  `);return}if(!r.includes(s)){process.stderr.write(`Unknown level: ${e[0]}. Use off, light, balanced or max.
126
- `),process.exitCode=1;return}await Ee(B);try{let i=await ie({reducer:s});i.settings.reducer==="off"?process.stdout.write(`Reducer off. Responses back to normal next session.
127
- `):(await mr(B),process.stdout.write(`Reducer set to ${i.settings.reducer}. Takes full effect next session.
133
+ `),process.exitCode=1;return}await Ae(H);try{let i=await ae({reducer:s});i.settings.reducer==="off"?process.stdout.write(`Reducer off. Responses back to normal next session.
134
+ `):(await _r(H),process.stdout.write(`Reducer set to ${i.settings.reducer}. Takes full effect next session.
128
135
  `))}catch(i){let a=i instanceof Error?i.message:String(i);a.includes("plan_required")||a.toLowerCase().includes("smart and pro")?process.stdout.write(`Reducer is a Smart/Pro feature. Upgrade at https://tokmizer.com/#pricing.
129
136
  `):process.stdout.write(`${a}
130
- `),process.exitCode=1}return}if(t==="compression"){let r={light:"normal",balanced:"compact",max:"minimal",normal:"normal",compact:"compact",minimal:"minimal"},n={normal:"light",compact:"balanced",minimal:"max"},s=e[0];if(!s){let a=await dt();process.stdout.write(`Compression: ${n[a.outputVerbosity]}
137
+ `),process.exitCode=1}return}if(t==="compression"){let r={light:"normal",balanced:"compact",max:"minimal",normal:"normal",compact:"compact",minimal:"minimal"},n={normal:"light",compact:"balanced",minimal:"max"},s=e[0];if(!s){let a=await yt();process.stdout.write(`Compression: ${n[a.outputVerbosity]}
131
138
  light gentle: standard cleanup only
132
139
  balanced default: also collapses repeated output and blank runs
133
140
  max strongest: also drops verbose log noise (errors always stay)
134
141
  Change it: tkr compression <light|balanced|max>
135
142
  `);return}let i=r[s.toLowerCase()];if(!i){process.stderr.write(`Unknown level: ${s}. Use light, balanced or max.
136
- `),process.exitCode=1;return}await Ee(B);try{let a=await ie({outputVerbosity:i});process.stdout.write(`Compression set to ${n[a.settings.outputVerbosity]}. Applies to your next commands.
143
+ `),process.exitCode=1;return}await Ae(H);try{let a=await ae({outputVerbosity:i});process.stdout.write(`Compression set to ${n[a.settings.outputVerbosity]}. Applies to your next commands.
137
144
  `)}catch(a){process.stdout.write(`${a instanceof Error?a.message:String(a)}
138
- `),process.exitCode=1}return}go(),process.exitCode=t==="help"?0:1}_o().catch(t=>{process.stderr.write(`${t.message??t}
145
+ `),process.exitCode=1}return}So(),process.exitCode=t==="help"?0:1}To().catch(t=>{process.stderr.write(`${t.message??t}
139
146
  `),process.exitCode=1});