nipa-cli 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +1 -1
  2. package/dist/nipa.js +85 -82
  3. package/package.json +13 -8
package/dist/nipa.js CHANGED
@@ -1,10 +1,40 @@
1
1
  #!/usr/bin/env node
2
- import{createRequire as Qd}from"node:module";var Vd=Object.create;var{getPrototypeOf:Gd,defineProperty:zn,getOwnPropertyNames:Wd}=Object;var Ds=Object.prototype.hasOwnProperty;function Kd(e){return this[e]}var Jd,Hd,nt=(e,t,r)=>{var n=e!=null&&typeof e==="object";if(n){var o=t?Jd??=new WeakMap:Hd??=new WeakMap,s=o.get(e);if(s)return s}r=e!=null?Vd(Gd(e)):{};let i=t||!e||!e.__esModule||!Ds.call(e,"default")?zn(r,"default",{value:e,enumerable:!0}):r;if(e&&typeof e==="object"||typeof e==="function"){for(let a of Wd(e))if(!Ds.call(i,a))zn(i,a,{get:Kd.bind(e,a),enumerable:!0})}if(n)o.set(e,i);return i};var En=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var qd=(e)=>e;function Yd(e,t){this[e]=qd.bind(null,t)}var Xd=(e,t)=>{for(var r in t)zn(e,r,{get:t[r],enumerable:!0,configurable:!0,set:Yd.bind(t,r)})};var Ns=Qd(import.meta.url);var Ft=En(function(iw,Eo){var Vr=process||{},rl=Vr.argv||[],Br=Vr.env||{},oh=!(!!Br.NO_COLOR||rl.includes("--no-color"))&&(!!Br.FORCE_COLOR||rl.includes("--color")||Vr.platform==="win32"||(Vr.stdout||{}).isTTY&&Br.TERM!=="dumb"||!!Br.CI),sh=(e,t,r=e)=>(n)=>{let o=""+n,s=o.indexOf(t,e.length);return~s?e+ih(o,t,r,s)+t:e+o+t},ih=(e,t,r,n)=>{let o="",s=0;do o+=e.substring(s,n)+r,s=n+t.length,n=e.indexOf(t,s);while(~n);return o+e.substring(s)},nl=(e=oh)=>{let t=e?sh:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};Eo.exports=nl();Eo.exports.createColors=nl});var ml=En(function(Dw,fl){fl.exports=Sh;function $h(e){let t={defaultWidth:0,output:process.stdout,tty:Ns("tty")};if(!e)return t;return Object.keys(t).forEach(function(r){if(!e[r])e[r]=t[r]}),e}function Sh(e){let t=$h(e);if(t.output.getWindowSize)return t.output.getWindowSize()[0]||t.defaultWidth;if(t.tty.getWindowSize)return t.tty.getWindowSize()[1]||t.defaultWidth;if(t.output.columns)return t.output.columns;if(process.env.CLI_WIDTH){let r=parseInt(process.env.CLI_WIDTH,10);if(!isNaN(r)&&r!==0)return r}return t.defaultWidth}});var Al=En(function(Xw,Il){var Nh=Ns("stream");class Tl extends Nh{#r=null;constructor(e={}){super(e);this.writable=this.readable=!0,this.muted=!1,this.on("pipe",this._onpipe),this.replace=e.replace,this._prompt=e.prompt||null,this._hadControl=!1}#t(e,t){if(this._dest)return this._dest[e];if(this._src)return this._src[e];return t}#e(e,...t){if(typeof this._dest?.[e]==="function")this._dest[e](...t);if(typeof this._src?.[e]==="function")this._src[e](...t)}get isTTY(){if(this.#r!==null)return this.#r;return this.#t("isTTY",!1)}set isTTY(e){this.#r=e}get rows(){return this.#t("rows")}get columns(){return this.#t("columns")}mute(){this.muted=!0}unmute(){this.muted=!1}_onpipe(e){this._src=e}pipe(e,t){return this._dest=e,super.pipe(e,t)}pause(){if(this._src)return this._src.pause()}resume(){if(this._src)return this._src.resume()}write(e){if(this.muted){if(!this.replace)return!0;if(e.match(/^\u001b/)){if(e.indexOf(this._prompt)===0)e=e.slice(this._prompt.length),e=e.replace(/./g,this.replace),e=this._prompt+e;return this._hadControl=!0,this.emit("data",e)}else{if(this._prompt&&this._hadControl&&e.indexOf(this._prompt)===0)this._hadControl=!1,this.emit("data",this._prompt),e=e.slice(this._prompt.length);e=e.toString().replace(/./g,this.replace)}}this.emit("data",e)}end(e){if(this.muted)if(e&&this.replace)e=e.toString().replace(/./g,this.replace);else e=null;if(e)this.emit("data",e);this.emit("end")}destroy(...e){return this.#e("destroy",...e)}destroySoon(...e){return this.#e("destroySoon",...e)}close(...e){return this.#e("close",...e)}}Il.exports=Tl});var Cn={name:"nipa-cli",version:"0.1.3",description:"Nipa Cloud from your terminal: log in with MFA once, then run openstack and terraform with the session.",keywords:["cli","keystone","mfa","nipa-cloud","openstack","terraform","totp"],homepage:"https://github.com/PunGrumpy/nipa#readme",bugs:{url:"https://github.com/PunGrumpy/nipa/issues"},license:"MIT",author:{name:"Noppakorn Kaewsalabnil",url:"https://www.pungrumpy.com"},repository:{type:"git",url:"git+https://github.com/PunGrumpy/nipa.git",directory:"packages/cli"},bin:{nipa:"dist/nipa.js"},files:["dist/nipa.js","README.md","LICENSE"],type:"module",publishConfig:{access:"public"},scripts:{dev:"bun src/index.ts",build:"bun build src/index.ts --compile --minify --outfile dist/nipa","build:npm":"bun build src/index.ts --target=node --minify --outfile dist/nipa.js","build:release":"bun scripts/build-release.ts",test:"bun test",typecheck:"tsc --noEmit","check:package":"bun run build:npm && publint"},devDependencies:{"@inquirer/prompts":"^8.7.2","@types/bun":"^1.4.2",picocolors:"^1.1.1",typescript:"^6",zod:"^4.6.5"},engines:{node:">=22.13.0"}};function St(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Tn(e,t="|"){return e.map((r)=>Rn(r)).join(t)}function kt(e,t){if(typeof t==="bigint")return t.toString();return t}class Fs{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;if(e!==void 0)this._value=e(),this._getter=void 0;return this._value}}function sr(e){return new Fs(e)}function Us(e){return e===null||e===void 0}function ir(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Ms(e,t){let r=e/t,n=Math.round(r),o=4*Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-n)<o)return 0;return r-n}function fe(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function ar(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function Ee(e){return ar(e._zod.def)??e._zod.def.shape}function Bs(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return fe(this,t,n),n},enumerable:!0,configurable:!0})}function Vs(e,t,r){if(t in e)fe(e,t,r);else e[t]=r}function Ve(e,t,r,n){let o=Ee(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)Bs(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else Vs(e,s,n?n(i.value,s):i.value)}}function tf(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)Bs(e,r,()=>t[r]);else Vs(e,r,n.value)}}function re(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function Gs(e){return JSON.stringify(e)}function Ws(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var In="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function $t(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Ks=sr(()=>{if(H.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Ge(e){if($t(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if($t(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function An(e){if(Ge(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}var Js=new Set(["string","number","symbol"]);function ot(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function me(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function w(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function Rn(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Hs(e){return Object.keys(e).filter((t)=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}var cr=(()=>({safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]}))(),Zn={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function rf(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let s={};return Ve(s,e,ur(e,t)),me(e,re(r,{shape:s,checks:[]}))}function ur(e,t){let r=Ee(e),n=[];for(let o of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(r,o)?.enumerable)throw Error(`Unrecognized key: "${String(o)}"`);if(t[o])n.push(o)}return n}function nf(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let s=new Set(ur(e,t)),i={};return Ve(i,e,Reflect.ownKeys(Ee(e)).filter((a)=>!s.has(a))),me(e,re(r,{shape:i,checks:[]}))}function of(e,t){if(!Ge(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=Ee(e);for(let s of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(o,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return me(e,re(e._zod.def,{shape:qs(e,t)}))}function qs(e,t){let r={};return Ve(r,e,Reflect.ownKeys(Ee(e))),tf(r,t),r}function sf(e,t){if(!Ge(t))throw Error("Invalid input to safeExtend: expected a plain object");return me(e,re(e._zod.def,{shape:qs(e,t)}))}function af(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r={};Ve(r,e,Reflect.ownKeys(Ee(e))),Ve(r,t,Reflect.ownKeys(Ee(t)));let n=re(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return me(e,n)}function Ys(e,t,r,n="partial"){let s=t._zod.def.checks;if(s&&s.length>0)throw Error(`.${n}() cannot be used on object schemas containing refinements`);let a=r?new Set(ur(t,r)):void 0,c={};return Ve(c,t,Reflect.ownKeys(Ee(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),me(t,re(t._zod.def,{shape:c,checks:[]}))}function cf(e,t,r){let n=r?new Set(ur(t,r)):void 0,o={};return Ve(o,t,Reflect.ownKeys(Ee(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),me(t,re(t._zod.def,{shape:o}))}function we(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function Xs(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function De(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function vt(e){return typeof e==="string"?e:e?.message}function jn(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function ve(e,t,r){var n;let o=e.inst?._zod?.traits;if(o?.has("$ZodType"))if(o.has("$ZodCheck"))(n=e).schema??(n.schema=e.inst);else e.schema=e.inst;let s=e.schema!==e.inst?e.schema?._zod.def?.error:void 0,i=e.message?e.message:vt(e.inst?._zod.def?.error?.(e))??vt(s?.(e))??vt(t?.error?.(e))??vt(r.customError?.(e))??vt(r.localeError?.(e))??"Invalid input",a={};for(let c of Object.keys(e)){if(c==="inst"||c==="schema"||c==="continue"||c==="input"||c==="__proto__")continue;a[c]=e[c]}if(a.path??(a.path=[]),a.message=i,t?.reportInput)a.input=e.input;return a}var uf=/[\uD800-\uDBFF]/;function lr(e){let t=e.length;if(!uf.test(e))return t;let r=t;for(let n=0;n<t-1;n++)if((e.charCodeAt(n)&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320)r--,n++;return r}function pr(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function Qs(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function We(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function ei(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else lf(e,r,n.value)}}function Ce(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function dr(e,t,r){return Ce(e,t,r,!1)}function ti(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return Ce(this,r,n(this))},set(o){Ce(this,r,o)}})}return t}function lf(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:Ce(this,t,r.bind(this))},set(n){Ce(this,t,n)}})}function pf(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var On,Le=!1,df={configurable:!0,get(){Le=!0;return}};function T(e,t,r){let n=Object.getPrototypeOf(e._zod);if(t in n&&On!==e._zod){On=void 0;return}On=e._zod,Object.defineProperty(n,t,{configurable:!0,get(){Object.defineProperty(this,t,df);let o=Le;Le=!1;try{let s=r(this);if(Le)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return Le=Le||o,s}catch(s){throw delete this[t],Le=Le||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function ff(e,t,r,n){let o=pf(e,t);if(!o)return;Object.defineProperty(o,t,{configurable:!0,get(){let s={configurable:!0,writable:!0,enumerable:n,value:void 0};return Object.defineProperty(this,t,s),s.value=r(this),Object.defineProperty(this,t,s),s.value},set(s){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:n,value:s})}})}var mf="~constantCatch";function ri(e){let t=()=>e;return t[mf]=!0,t}var ni;var Ln={value:void 0,enumerable:!1},oi="captureStackTrace"in Error?Error:null;function hf(e){let t=oi;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return oi=null,new e}try{return new e}finally{t.stackTraceLimit=r}}}return new e}function h(e,t,r,n){let o={};function s(d){this.def=d,this.constr=p,this.traits=new Set}s.prototype=o;let i=r,a=i&&new WeakSet;function c(d,f){if(!d._zod){Ln.value=new s(f);try{Object.defineProperty(d,"_zod",Ln)}finally{Ln.value=void 0}}else if(d._zod.traits.has(e))return;if(d._zod.traits.add(e),t(d,f),a){let g=Object.getPrototypeOf(d),x=d._zod.constr.prototype,_=g;while(_&&_!==x)_=Object.getPrototypeOf(_);let b=_??g;if(!a.has(b))a.add(b),ei(b,i)}let m=p.prototype;for(let g in m){if(!Object.prototype.hasOwnProperty.call(m,g))continue;if(!(g in d))d[g]=m[g].bind(d)}}let u=n?.Parent??Object;class l extends u{}Object.defineProperty(l,"name",{value:e});function p(d){let f=n?.Parent?hf(l):this;c(f,d);let m=f._zod.deferred;if(m){for(let x of m)x();f._zod.deferred=void 0}let g=globalThis.__zod_globalConfig?.postProcessor;if(g)g(f);return f}return Object.defineProperty(p,"init",{value:c}),Object.defineProperty(p,Symbol.hasInstance,{value:(d)=>{if(n?.Parent&&d instanceof n.Parent)return!0;return d?._zod?.traits?.has(e)}}),Object.defineProperty(p,"name",{value:e}),p}class $e extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Pt extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(ni=globalThis).__zod_globalConfig??(ni.__zod_globalConfig={});var H=globalThis.__zod_globalConfig;function q(e){if(e)Object.assign(H,e);return H}function gf(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,kt,2)),e.message}function xf(e){this._zod.message=e}var yf={get:gf,set:xf,enumerable:!0,configurable:!0},Nn={value:void 0,enumerable:!1},si=new WeakSet([Object.prototype,Error.prototype]),ii=(e,t)=>{e.name="$ZodError",Nn.value=t,Object.defineProperty(e,"issues",Nn),Nn.value=void 0,Object.defineProperty(e,"message",yf);let r=Object.getPrototypeOf(e);if(!si.has(r))si.add(r),Object.defineProperty(r,"toString",{configurable:!0,enumerable:!1,get(){let n=()=>this.message;return Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0})}})},ai=h("$ZodError",ii),fy=h("$ZodError",ii,void 0,{Parent:Error});function _f(e,t,r){if(!Object.prototype.hasOwnProperty.call(e,t))if(t==="__proto__")Object.defineProperty(e,t,{value:r(),writable:!0,enumerable:!0,configurable:!0});else e[t]=r();return e[t]}function Fn(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)_f(r,o.path[0],()=>[]).push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function Un(e,t=(r)=>r.message){let r={_errors:[]},n=(o,s=[])=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map((a)=>n({issues:a},[...s,...i.path]));else if(i.code==="invalid_key")n({issues:i.issues},[...s,...i.path]);else if(i.code==="invalid_element")n({issues:i.issues},[...s,...i.path]);else{let a=[...s,...i.path];if(a.length===0)r._errors.push(t(i));else{let c=r,u=0;while(u<a.length){let l=a[u],p=u===a.length-1;if(l==="_errors"){if(p)c._errors.push(t(i));u++;continue}if(!Object.prototype.hasOwnProperty.call(c,l))Object.defineProperty(c,l,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let d=c[l];if(p)d._errors.push(t(i));c=d,u++}}}};return n(e),r}function bf(e){let t=[],r=e.map((n)=>typeof n==="object"?n.key:n);for(let n of r)if(typeof n==="number")t.push(`[${n}]`);else if(typeof n==="symbol")t.push(`[${JSON.stringify(String(n))}]`);else if(/[^\w$]/.test(n))t.push(`[${JSON.stringify(n)}]`);else{if(t.length)t.push(".");t.push(n)}return t.join("")}function st(e){let t=[],r=[...e.issues].sort((n,o)=>(n.path??[]).length-(o.path??[]).length);for(let n of r)if(t.push(`✖ ${n.message}`),n.path?.length)t.push(` → at ${bf(n.path)}`);return t.join(`
3
- `)}function fr(e,t){return{callee:t?.callee??e,Err:t?.Err}}var mr=(e)=>{let t=(r,n,o,s)=>{let i=o?{...o,async:!1}:{async:!1},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new $e;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>ve(u,i,q())));throw In(c,s?.callee??t),c}return a.value};return t};var hr=(e)=>{let t=async(r,n,o,s)=>{let i=o?{...o,async:!0}:{async:!0},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>ve(u,i,q())));throw In(c,s?.callee??t),c}return a.value};return t};var gr=(e)=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new $e;return s.issues.length?ci(e,s.issues,o):{success:!0,data:s.value}};function ci(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>ve(o,r,q()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var xr=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)s=await s;return s.issues.length?ci(e,s.issues,o):{success:!0,data:s.value}};var wf=Symbol.for("zod.compile.invalid"),vf=Symbol.for("zod.compile.fallback"),Mn=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==wf)return!0;if(n.definite===!0&&r===void 0)return!1}return $f(e,t,r)};function $f(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[vf]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new $e;return s.issues.length===0}var Bn=async(e,t,r)=>{let n=r?{...r,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},o=e._zod.run({value:t,issues:[]},n);if(o instanceof Promise)o=await o;return o.issues.length===0},ui=(e)=>{let t=mr(e),r=(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return t(n,o,a,fr(r,i))};return r};var li=(e)=>{let t=mr(e),r=(n,o,s,i)=>t(n,o,s,fr(r,i));return r};var pi=(e)=>{let t=hr(e),r=async(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return await t(n,o,a,fr(r,i))};return r};var di=(e)=>{let t=hr(e),r=async(n,o,s,i)=>await t(n,o,s,fr(r,i));return r};var fi=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return gr(e)(t,r,o)};var mi=(e)=>(t,r,n)=>gr(e)(t,r,n);var hi=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return xr(e)(t,r,o)};var gi=(e)=>async(t,r,n)=>xr(e)(t,r,n);var xi=/^[cC][0-9a-z]{6,}$/,yi=/^[0-9a-z]+$/,_i=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,bi=/^[0-9a-vA-V]{20}$/,wi=/^[A-Za-z0-9]{27}$/,vi=/^[a-zA-Z0-9_-]{21}$/;function $i(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var Si=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var ki=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Gn=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var Pi=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Sf="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function zi(){return new RegExp(Sf,"u")}var Ei=/^(?:(?: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])$/,Ci=/^(([0-9a-fA-F]{1,4}:){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}|:))$/;var Oi=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,Ti=/^(([0-9a-fA-F]{1,4}:){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}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ii=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ai=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var Ri=/^https?$/,Zi=/^\+[1-9]\d{6,14}$/;var ji="(?:(?:\\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])))";function kf(e){return new RegExp(`^${e}$`)}var Li=kf(ji);function Vn(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?":"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Di(e){return new RegExp(`^${Vn(e)}$`)}function Ni(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${Vn({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${Vn({precision:e.precision})}`:r;return new RegExp(`^${ji}T(?:${n})$`)}var Fi=/^[\s\S]{0,}$/;var Wn=/^-?\d+$/,zt=/^-?\d+(?:\.\d+)?$/,Ui=/^(?:true|false)$/i;var Mi=/^[^A-Z]*$/,Bi=/^[^a-z]*$/;var K=h("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var Kn=(e)=>{let t=e.value;return!Us(t)&&t.length!==void 0},yr={number:"number",bigint:"bigint",object:"date"},Jn=h("$ZodCheckLessThan",(e,t)=>{K.init(e,t);let r=yr[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:yr[typeof n.value]??r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Hn=h("$ZodCheckGreaterThan",(e,t)=>{K.init(e,t);let r=yr[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:yr[typeof n.value]??r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Vi=h("$ZodCheckMultipleOf",(e,t)=>{K.init(e,t),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?t.value!==BigInt(0)&&r.value%t.value===BigInt(0):Ms(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),Gi=h("$ZodCheckNumberFormat",(e,t)=>{K.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,s]=cr[t.format];e._zod.check=(i)=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){if(a>0)i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});else i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}if(a<o)i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(a>s)i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:e,continue:!t.abort})}});var Wi=h("$ZodCheckMaxLength",(e,t)=>{var r;K.init(e,t),(r=e._zod.def).when??(r.when=Kn),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?lr(o):s)<=t.maximum)return;let a=pr(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ki=h("$ZodCheckMinLength",(e,t)=>{var r;K.init(e,t),(r=e._zod.def).when??(r.when=Kn),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?lr(o):s)>=t.minimum)return;let a=pr(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ji=h("$ZodCheckLengthEquals",(e,t)=>{var r;K.init(e,t),(r=e._zod.def).when??(r.when=Kn),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?lr(o):s;if(i===t.length)return;let a=pr(o),c=i>t.length;n.issues.push({origin:a,...c?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Et=h("$ZodCheckStringFormat",(e,t)=>{var r,n;if(K.init(e,t),t.pattern)(r=e._zod).check??(r.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(n=e._zod).check??(n.check=()=>{})}),Hi=h("$ZodCheckRegex",(e,t)=>{Et.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),qi=h("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Mi),Et.init(e,t)}),Yi=h("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Bi),Et.init(e,t)}),Xi=h("$ZodCheckIncludes",(e,t)=>{K.init(e,t);let r=ot(t.includes),n=new RegExp(typeof t.position==="number"?`^.{${t.position},}${r}`:r);t.pattern=n,e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Qi=h("$ZodCheckStartsWith",(e,t)=>{K.init(e,t);let r=new RegExp(`^${ot(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.startsWith(t.prefix))return;n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),ea=h("$ZodCheckEndsWith",(e,t)=>{K.init(e,t);let r=new RegExp(`.*${ot(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.endsWith(t.suffix))return;n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var ta=h("$ZodCheckOverwrite",(e,t)=>{K.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class qn{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{this.indent-=1}}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
2
+ import{createRequire as xf}from"node:module";var cf=Object.create;var{getPrototypeOf:uf,defineProperty:kn,getOwnPropertyNames:lf}=Object;var Fs=Object.prototype.hasOwnProperty;function pf(e){return this[e]}var df,ff,ut=(e,t,r)=>{var n=e!=null&&typeof e==="object";if(n){var o=t?df??=new WeakMap:ff??=new WeakMap,s=o.get(e);if(s)return s}r=e!=null?cf(uf(e)):{};let i=t||!e||!e.__esModule||!Fs.call(e,"default")?kn(r,"default",{value:e,enumerable:!0}):r;if(e&&typeof e==="object"||typeof e==="function"){for(let a of lf(e))if(!Fs.call(i,a))kn(i,a,{get:pf.bind(e,a),enumerable:!0})}if(n)o.set(e,i);return i};var Pn=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var mf=(e)=>e;function hf(e,t){this[e]=mf.bind(null,t)}var gf=(e,t)=>{for(var r in t)kn(e,r,{get:t[r],enumerable:!0,configurable:!0,set:hf.bind(t,r)})};var Us=xf(import.meta.url);var Pt=Pn(function(Dy,En){var lr=process||{},Ms=lr.argv||[],ur=lr.env||{},_f=!(!!ur.NO_COLOR||Ms.includes("--no-color"))&&(!!ur.FORCE_COLOR||Ms.includes("--color")||lr.platform==="win32"||(lr.stdout||{}).isTTY&&ur.TERM!=="dumb"||!!ur.CI),bf=(e,t,r=e)=>(n)=>{let o=""+n,s=o.indexOf(t,e.length);return~s?e+wf(o,t,r,s)+t:e+o+t},wf=(e,t,r,n)=>{let o="",s=0;do o+=e.substring(s,n)+r,s=n+t.length,n=e.indexOf(t,s);while(~n);return o+e.substring(s)},Bs=(e=_f)=>{let t=e?bf:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};En.exports=Bs();En.exports.createColors=Bs});var ii=Pn(function(w_,si){si.exports=Gf;function Bf(e){let t={defaultWidth:0,output:process.stdout,tty:Us("tty")};if(!e)return t;return Object.keys(t).forEach(function(r){if(!e[r])e[r]=t[r]}),e}function Gf(e){let t=Bf(e);if(t.output.getWindowSize)return t.output.getWindowSize()[0]||t.defaultWidth;if(t.tty.getWindowSize)return t.tty.getWindowSize()[1]||t.defaultWidth;if(t.output.columns)return t.output.columns;if(process.env.CLI_WIDTH){let r=parseInt(process.env.CLI_WIDTH,10);if(!isNaN(r)&&r!==0)return r}return t.defaultWidth}});var ki=Pn(function(R_,Si){var sm=Us("stream");class $i extends sm{#r=null;constructor(e={}){super(e);this.writable=this.readable=!0,this.muted=!1,this.on("pipe",this._onpipe),this.replace=e.replace,this._prompt=e.prompt||null,this._hadControl=!1}#t(e,t){if(this._dest)return this._dest[e];if(this._src)return this._src[e];return t}#e(e,...t){if(typeof this._dest?.[e]==="function")this._dest[e](...t);if(typeof this._src?.[e]==="function")this._src[e](...t)}get isTTY(){if(this.#r!==null)return this.#r;return this.#t("isTTY",!1)}set isTTY(e){this.#r=e}get rows(){return this.#t("rows")}get columns(){return this.#t("columns")}mute(){this.muted=!0}unmute(){this.muted=!1}_onpipe(e){this._src=e}pipe(e,t){return this._dest=e,super.pipe(e,t)}pause(){if(this._src)return this._src.pause()}resume(){if(this._src)return this._src.resume()}write(e){if(this.muted){if(!this.replace)return!0;if(e.match(/^\u001b/)){if(e.indexOf(this._prompt)===0)e=e.slice(this._prompt.length),e=e.replace(/./g,this.replace),e=this._prompt+e;return this._hadControl=!0,this.emit("data",e)}else{if(this._prompt&&this._hadControl&&e.indexOf(this._prompt)===0)this._hadControl=!1,this.emit("data",this._prompt),e=e.slice(this._prompt.length);e=e.toString().replace(/./g,this.replace)}}this.emit("data",e)}end(e){if(this.muted)if(e&&this.replace)e=e.toString().replace(/./g,this.replace);else e=null;if(e)this.emit("data",e);this.emit("end")}destroy(...e){return this.#e("destroy",...e)}destroySoon(...e){return this.#e("destroySoon",...e)}close(...e){return this.#e("close",...e)}}Si.exports=$i});var zn={name:"nipa-cli",version:"0.1.4",description:"The command-line interface for Nipa Cloud",keywords:["cli","keystone","mfa","nipa-cloud","openstack","terraform","totp"],homepage:"https://github.com/PunGrumpy/nipa#readme",bugs:{url:"https://github.com/PunGrumpy/nipa/issues"},license:"MIT",author:{name:"Noppakorn Kaewsalabnil",url:"https://www.pungrumpy.com"},repository:{type:"git",url:"git+https://github.com/PunGrumpy/nipa.git",directory:"packages/cli"},bin:{nipa:"dist/nipa.js"},files:["dist/nipa.js","README.md","LICENSE"],type:"module",publishConfig:{access:"public"},scripts:{dev:"bun src/index.ts",build:"bun build src/index.ts --compile --minify --outfile dist/nipa","build:npm":"bun build src/index.ts --target=node --minify --outfile dist/nipa.js","build:release":"bun scripts/build-release.ts",test:"bun test",typecheck:"tsc --noEmit","check:package":"bun run build:npm && publint",prepack:"bun run build:npm"},devDependencies:{"@inquirer/confirm":"6.3.2","@inquirer/input":"5.1.6","@inquirer/password":"5.2.2","@inquirer/select":"5.2.5","@types/bun":"1.4.2",picocolors:"1.1.1",typescript:"6.0.3",zod:"4.6.5"},preferGlobal:!0,engines:{node:">=22.13.0"}};var Ae=ut(Pt(),1);var ue={description:"Print JSON",long:"json",value:{kind:"none"}},Gs={description:"Don't ask for confirmation",long:"yes",short:"y",value:{kind:"none"}},Cn={description:"Use this profile (or set NIPA_PROFILE)",long:"profile",short:"P",value:{kind:"profile"}},In={description:"Show help",long:"help",short:"h",value:{kind:"none"}},re=[Cn,{description:"Log each HTTP request (or set NIPA_DEBUG=1)",long:"debug",short:"d",value:{kind:"none"}},{description:"Turn off colors (or set NO_COLOR=1)",long:"no-color",value:{kind:"none"}},In,{description:"Show the version",long:"version",short:"v",value:{kind:"none"}}];var q=(e)=>[e.name,...e.aliases??[]],ne=(e)=>e.short?[`--${e.long}`,`-${e.short}`]:[`--${e.long}`],zt=(e)=>{switch(e.kind){case"none":return"";case"text":return` <${e.name}>`;case"choice":return` <${e.choices.join("|")}>`;case"project":return" <project>";case"profile":return" <name>";default:return e}},Tn=(e)=>e.length===1?e[0]:e[1],Et=(e)=>e.sections.flatMap((t)=>t.commands);var On=" ",vf=80,Ct=(e,t)=>e.map(([r,n])=>`${On}${r.padEnd(t)} ${n}`).join(`
3
+ `),Vs=(e)=>Math.max(0,...e.map(([t])=>t.length)),Ws=(e,t)=>{let r=[],n="";for(let o of e.split(" "))if(n&&t.length+n.length+1+o.length>vf)r.push(n),n=o;else n=n?`${n} ${o}`:o;return r.push(n),r.map((o)=>`${t}${o}`).join(`
4
+ `)},$f=(e)=>{switch(e.arity){case"one":return`<${e.name}>`;case"optional":return`[${e.name}]`;case"rest":return`[${e.name}...]`;default:return e.arity}},Sf=(e)=>{let[t,...r]=e;if(!t)return[];if(r.length===0&&t.value.kind==="none")return[`[--${t.long}]`];return["[options]"]},kf=(e)=>{switch(e.kind){case"program":case"openstack":return"<args...>";case"command":return"<command> [args...]";default:return e}},Ks=(e)=>{switch(e.kind){case"leaf":return[...e.args.map($f),...Sf(e.flags)].join(" ");case"group":return`[${e.subcommands.map((t)=>t.name).join("|")}]`;case"passthrough":return kf(e.target);default:return e}},pr=(e)=>`nipa ${e.map((t)=>t.name).join(" ")}`,It=(e)=>{let t=Ks(Tn(e));return t?`${pr(e)} ${t}`:pr(e)},Pf=(e)=>{switch(e.kind){case"leaf":return e.flags;case"group":{let t=e.subcommands.flatMap((r)=>r.flags);return t.filter((r,n)=>t.findIndex((o)=>o.long===r.long)===n)}case"passthrough":return[];default:return e}},Js=(e)=>[`${e.short?`-${e.short}, `:" "}--${e.long}${zt(e.value)}`,e.description],An=(e)=>{let t=Ks(e);return[t?`${e.name} ${t}`:e.name,e.summary]},Xe=(e,t)=>` ${Ae.default.dim(`${e}:`)}
5
+
6
+ ${t}
7
+ `,Hs=(e)=>e.map((t)=>`${On}${Ae.default.dim(t.description)}
8
+ ${On}${Ae.default.cyan("$")} ${t.command}`).join(`
9
+
10
+ `),dr=re.map(Js),jn=(e)=>{let{program:t}=e,r=t.sections.flatMap((i)=>i.commands.map(An)),n=Vs([...r,...dr]),o=t.sections.map((i)=>Xe(i.title,Ct(i.commands.map(An),n))),s=Ae.default.dim(`v${e.version}`);return["",` ${Ae.default.bold("nipa")} ${s}`,"",Ws(t.summary," "),"",` ${Ae.default.dim("Usage:")} nipa [options] <command>`,"",...o,Xe("Global options",Ct(dr,n)),Xe("Examples",Hs(t.examples)),` Run ${Ae.default.bold("nipa <command> --help")} for a command's options.`,""].join(`
11
+ `)},fr=(e)=>{let t=Tn(e),r=t.kind==="group"?t.subcommands.map(An):[],n=Pf(t).map(Js),o=Vs([...r,...n,...dr]),s=["",` ${Ae.default.dim("Usage:")} ${It(e)}`,"",Ws(t.description??t.summary," "),""];if(r.length>0)s.push(Xe("Subcommands",Ct(r,o)));if(n.length>0)s.push(Xe("Options",Ct(n,o)));if(s.push(Xe("Global options",Ct(dr,o))),t.examples?.length)s.push(Xe("Examples",Hs(t.examples)));return s.join(`
12
+ `)};var zf=["emacs","vim"],Ef=new Set(zf);function Cf(e){return Ef.has(e)}function qs(){let e=process.env.INQUIRER_KEYBINDINGS;if(!e)return[];return Array.from(new Set(e.toLowerCase().split(/[\s,]+/).filter(Cf)))}var Tt=(e,t=[])=>e.name==="up"||t.includes("vim")&&e.name==="k"||t.includes("emacs")&&e.ctrl&&e.name==="p",mr=(e,t=[])=>e.name==="down"||t.includes("vim")&&e.name==="j"||t.includes("emacs")&&e.ctrl&&e.name==="n";var Ot=(e)=>e.name==="backspace",At=(e)=>e.name==="tab",Rn=(e)=>"1234567890".includes(e.name),je=(e)=>e.name==="enter"||e.name==="return";class Zn extends Error{name="AbortPromptError";message="Prompt was aborted";constructor(e){super();this.cause=e?.cause}}class Ln extends Error{name="CancelPromptError";message="Prompt was canceled"}class hr extends Error{name="ExitPromptError"}class Dn extends Error{name="HookError"}class jt extends Error{name="ValidationError"}import{AsyncResource as Af}from"node:async_hooks";import{AsyncLocalStorage as If,AsyncResource as Tf}from"node:async_hooks";var Ys=new If;function Of(e){return{rl:e,hooks:[],hooksCleanup:[],hooksEffect:[],index:0,handleChange(){}}}function Xs(e,t){let r=Of(e);return Ys.run(r,()=>{function n(o){r.handleChange=()=>{r.index=0,o()},r.handleChange()}return t(n)})}function Qe(){let e=Ys.getStore();if(!e)throw new Dn("[Inquirer] Hook functions can only be called from within a prompt");return e}function Nn(){return Qe().rl}function Fn(e){let t=(...r)=>{let n=Qe(),o=!1,s=n.handleChange;n.handleChange=()=>{o=!0};let i=e(...r);if(o)s();return n.handleChange=s,i};return Tf.bind(t)}function lt(e){let t=Qe(),{index:r}=t,n={get(){return t.hooks[r]},set(s){t.hooks[r]=s},initialized:r in t.hooks},o=e(n);return t.index++,o}function Qs(){Qe().handleChange()}var Rt={queue(e){let t=Qe(),{index:r}=t;t.hooksEffect.push(()=>{t.hooksCleanup[r]?.();let n=e(Nn());if(n!=null&&typeof n!=="function")throw new jt("useEffect return value must be a cleanup function or nothing.");t.hooksCleanup[r]=n})},run(){let e=Qe();Fn(()=>{e.hooksEffect.forEach((t)=>{t()}),e.hooksEffect.length=0})()},clearAll(){let e=Qe();e.hooksCleanup.forEach((t)=>{t?.()}),e.hooksEffect.length=0,e.hooksCleanup.length=0}};function jf(e){return typeof e==="function"}function Rf(e){return typeof e==="function"}function D(e){return lt((t)=>{let r=Af.bind(function(s){let i=t.get(),a=Rf(s)?s(i):s;if(!Object.is(i,a))t.set(a),Qs()});if(t.initialized)return[t.get(),r];let n=jf(e)?e():e;return t.set(n),[n,r]})}function Re(e,t){lt((r)=>{let n=r.get();if(!Array.isArray(n)||t.some((s,i)=>!Object.is(s,n[i])))Rt.queue(e);r.set(t)})}import{styleText as ye}from"node:util";import xe from"node:process";function Zf(){if(!xe.platform.startsWith("win"))return xe.env.TERM!=="linux";return Boolean(xe.env.CI)||Boolean(xe.env.WT_SESSION)||Boolean(xe.env.TERMINUS_SUBLIME)||xe.env.ConEmuTask==="{cmd::Cmder}"||xe.env.TERM_PROGRAM==="Terminus-Sublime"||xe.env.TERM_PROGRAM==="vscode"||xe.env.TERM==="xterm-256color"||xe.env.TERM==="alacritty"||xe.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var ei={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},ti={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},Lf={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},Df={...ei,...ti},Nf={...ei,...Lf},Ff=Zf(),Uf=Ff?Df:Nf,pt=Uf,t_=Object.entries(ti);var Mf={prefix:{idle:ye("blue","?"),done:ye("green",pt.tick)},spinner:{interval:80,frames:["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"].map((e)=>ye("yellow",e))},keybindings:[],style:{answer:(e)=>ye("cyan",e),message:(e)=>ye("bold",e),error:(e)=>ye("red",`> ${e}`),defaultAnswer:(e)=>ye("dim",`(${e})`),help:(e)=>ye("dim",e),highlight:(e)=>ye("cyan",e),key:(e)=>ye("cyan",ye("bold",`<${e}>`))}};function ri(){return{...Mf,keybindings:qs()}}function ni(e){if(typeof e!=="object"||e===null)return!1;let t=e;while(Object.getPrototypeOf(t)!==null)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function oi(...e){let t={};for(let r of e)for(let[n,o]of Object.entries(r)){let s=t[n];t[n]=ni(s)&&ni(o)?oi(s,o):o}return t}function _e(...e){let t=[ri(),...e.filter((r)=>r!=null)];return oi(...t)}function Ze({status:e="idle",theme:t}){let[r,n]=D(!1),[o,s]=D(0),{prefix:i,spinner:a}=_e(t);if(Re(()=>{if(e==="loading"){let u,l=-1,p=setTimeout(()=>{n(!0),u=setInterval(()=>{l=l+1,s(l%a.frames.length)},a.interval)},300);return()=>{clearTimeout(p),clearInterval(u)}}else n(!1)},[e]),r)return a.frames[o];return typeof i==="string"?i:i[e==="loading"?"idle":e]??i.idle}function Zt(e,t){return lt((r)=>{let n=r.get();if(!r.initialized||n.dependencies.length!==t.length||n.dependencies.some((o,s)=>o!==t[s])){let o=e();return r.set({value:o,dependencies:t}),o}return n.value})}function et(e){return D({current:e})[0]}function Le(e){let t=et(e);t.current=e,Re((r)=>{let n=!1,o=Fn((s,i)=>{if(n)return;t.current(i,r)});return r.input.on("keypress",o),()=>{n=!0,r.input.removeListener("keypress",o)}},[])}var vi=ut(ii(),1);var ai=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return(t)=>{let r=0;e.lastIndex=0;while(e.test(t))r+=1;return t.length-r}})(),ci=(e)=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,ui=(e)=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141;var Vf=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,Wf=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,li=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,Kf=/\t{1,1000}/y,pi=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,Jf=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Hf=/\p{M}+/gu,qf={limit:1/0,ellipsis:""},di=(e,t={},r={})=>{let n=t.limit??1/0,o=t.ellipsis??"",s=t?.ellipsisWidth??(o?di(o,qf,r).width:0),i=0,a=r.controlWidth??0,c=r.tabWidth??8,u=r.emojiWidth??2,l=2,p=r.regularWidth??1,d=r.wideWidth??2,f=[[Jf,p],[Vf,0],[Wf,a],[Kf,c],[pi,u],[li,d]],m=0,g=0,x=e.length,_=0,w=!1,P=x,C=Math.max(0,n-s),y=0,S=0,I=0,W=0;e:while(!0){if(S>y||g>=x&&g>m){let E=e.slice(y,S)||e.slice(m,g);_=0;for(let T of E.replaceAll(Hf,"")){let B=T.codePointAt(0)||0;if(ci(B))W=2;else if(ui(B))W=d;else W=p;if(I+W>C)P=Math.min(P,Math.max(y,m)+_);if(I+W>n){w=!0;break e}_+=T.length,I+=W}y=S=0}if(g>=x)break e;for(let E=0,T=f.length;E<T;E++){let[B,K]=f[E];if(B.lastIndex=g,B.test(e)){if(_=B===li?ai(e.slice(g,B.lastIndex)):B===pi?1:B.lastIndex-g,W=_*K,I+W>C)P=Math.min(P,g+Math.floor((C-I)/K));if(I+W>n){w=!0;break e}I+=W,y=m,S=g,g=m=B.lastIndex;continue e}}g+=1}return{width:w?C:I,index:w?P:x,truncated:w,ellipsed:w&&n>=s}},fi=di;var Yf={limit:1/0,ellipsis:"",ellipsisWidth:0},Xf=(e,t={})=>fi(e,Yf,t).width,De=Xf;var gr="\x1B",yi="›",Qf=39,Mn="\x07",_i="[",em="]",bi="m",Bn=`${em}8;;`,mi=new RegExp(`(?:\\${_i}(?<code>\\d+)m|\\${Bn}(?<uri>.*)${Mn})`,"y"),hi=(e)=>{if(e>=30&&e<=37)return 39;if(e>=90&&e<=97)return 39;if(e>=40&&e<=47)return 49;if(e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0;return},gi=(e)=>`${gr}${_i}${e}${bi}`,xi=(e)=>`${gr}${Bn}${e}${Mn}`,Un=(e,t,r)=>{let n=t[Symbol.iterator](),o=!1,s=!1,i=e.at(-1),a=i===void 0?0:De(i),c=n.next(),u=n.next(),l=0;while(!c.done){let p=c.value,d=De(p);if(a+d<=r)e[e.length-1]+=p;else e.push(p),a=0;if(p===gr||p===yi)o=!0,s=t.startsWith(Bn,l+1);if(o){if(s){if(p===Mn)o=!1,s=!1}else if(p===bi)o=!1}else if(a+=d,a===r&&!u.done)e.push(""),a=0;c=u,u=n.next(),l+=p.length}if(i=e.at(-1),!a&&i!==void 0&&i.length&&e.length>1)e[e.length-2]+=e.pop()},tm=(e)=>{let t=e.split(" "),r=t.length;while(r){if(De(t[r-1]))break;r--}if(r===t.length)return e;return t.slice(0,r).join(" ")+t.slice(r).join("")},rm=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",o,s,i=e.split(" "),a=[""],c=0;for(let p=0;p<i.length;p++){let d=i[p];if(r.trim!==!1){let m=a.at(-1)??"",g=m.trimStart();if(m.length!==g.length)a[a.length-1]=g,c=De(g)}if(p!==0){if(c>=t&&(r.wordWrap===!1||r.trim===!1))a.push(""),c=0;if(c||r.trim===!1)a[a.length-1]+=" ",c++}let f=De(d);if(r.hard&&f>t){let m=t-c,g=1+Math.floor((f-m-1)/t);if(Math.floor((f-1)/t)<g)a.push("");Un(a,d,t),c=De(a.at(-1)??"");continue}if(c+f>t&&c&&f){if(r.wordWrap===!1&&c<t){Un(a,d,t),c=De(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>t&&r.wordWrap===!1){Un(a,d,t),c=De(a.at(-1)??"");continue}a[a.length-1]+=d,c+=f}if(r.trim!==!1)a=a.map((p)=>tm(p));let u=a.join(`
13
+ `),l=!1;for(let p=0;p<u.length;p++){let d=u[p];if(n+=d,!l){if(l=d>="\uD800"&&d<="\uDBFF",l)continue}else l=!1;if(d===gr||d===yi){mi.lastIndex=p+1;let m=mi.exec(u)?.groups;if(m?.code!==void 0){let g=Number.parseFloat(m.code);o=g===Qf?void 0:g}else if(m?.uri!==void 0)s=m.uri.length===0?void 0:m.uri}if(u[p+1]===`
14
+ `){if(s)n+=xi("");let f=o?hi(o):void 0;if(o&&f)n+=gi(f)}else if(d===`
15
+ `){if(o&&hi(o))n+=gi(o);if(s)n+=xi(s)}}return n},nm=/\r?\n/;function wi(e,t,r){return String(e).normalize().split(nm).map((n)=>rm(n,t,r)).join(`
16
+ `)}function Lt(e,t){return e.split(`
17
+ `).flatMap((r)=>wi(r,t,{trim:!1,wordWrap:!1}).split(`
18
+ `).map((n)=>n.trimEnd())).join(`
19
+ `)}function xr(){return vi.default({defaultWidth:80,output:Nn().output})}function om({active:e,renderedItems:t,pageSize:r,loop:n}){let o=et({lastPointer:e,lastActive:void 0}),{lastPointer:s,lastActive:i}=o.current,a=Math.floor(r/2),c=t.reduce((p,d)=>p+d.length,0),u=t.slice(0,e).reduce((p,d)=>p+d.length,0),l=u;if(c>r)if(n){if(l=s,i!=null&&i<e&&e-i<r)l=Math.min(a,Math.abs(e-i)===1?Math.min(s+(t[i]?.length??0),Math.max(u,s)):s+e-i)}else{let p=t.slice(e).reduce((d,f)=>d+f.length,0);l=p<r-a?r-p:Math.min(u,a)}return o.current.lastPointer=l,o.current.lastActive=e,l}function Gn({items:e,active:t,renderItem:r,pageSize:n,loop:o=!0}){let s=xr(),i=(_)=>(_%e.length+e.length)%e.length,a=e.map((_,w)=>{if(_==null)return[];return Lt(r({item:_,index:w,isActive:w===t}),s).split(`
20
+ `)}),c=a.reduce((_,w)=>_+w.length,0),u=(_)=>a[_]??[],l=om({active:t,renderedItems:a,pageSize:n,loop:o}),p=u(t).slice(0,n),d=l+p.length<=n?l:n-p.length,f=Array.from({length:n});f.splice(d,p.length,...p);let m=new Set([t]),g=d+p.length,x=i(t+1);while(g<n&&!m.has(x)&&(o&&c>n?x!==t:x>t)){let w=u(x).slice(0,n-g);f.splice(g,w.length,...w),m.add(x),g+=w.length,x=i(x+1)}g=d-1,x=i(t-1);while(g>=0&&!m.has(x)&&(o&&c>n?x!==t:x<t)){let _=u(x),w=_.slice(Math.max(0,_.length-g-1));f.splice(g-w.length+1,w.length,...w),m.add(x),g-=w.length,x=i(x-1)}return f.filter((_)=>typeof _==="string").join(`
21
+ `)}var ji=ut(ki(),1);import*as Ai from"node:readline";import{AsyncResource as lm}from"node:async_hooks";var tt=[];tt.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")tt.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")tt.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var yr=(e)=>!!e&&typeof e==="object"&&typeof e.removeListener==="function"&&typeof e.emit==="function"&&typeof e.reallyExit==="function"&&typeof e.listeners==="function"&&typeof e.kill==="function"&&typeof e.pid==="number"&&typeof e.on==="function",Vn=Symbol.for("signal-exit emitter"),Wn=globalThis,im=Object.defineProperty.bind(Object);class Pi{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(Wn[Vn])return Wn[Vn];im(Wn,Vn,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,t){this.listeners[e].push(t)}removeListener(e,t){let r=this.listeners[e],n=r.indexOf(t);if(n===-1)return;if(n===0&&r.length===1)r.length=0;else r.splice(n,1)}emit(e,t,r){if(this.emitted[e])return!1;this.emitted[e]=!0;let n=!1;for(let o of this.listeners[e])n=o(t,r)===!0||n;if(e==="exit")n=this.emit("afterExit",t,r)||n;return n}}class Jn{}var am=(e)=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}});class zi extends Jn{onExit(){return()=>{}}load(){}unload(){}}class Ei extends Jn{#r=Kn.platform==="win32"?"SIGINT":"SIGHUP";#t=new Pi;#e;#s;#i;#o={};#n=!1;constructor(e){super();this.#e=e,this.#o={};for(let t of tt)this.#o[t]=()=>{let r=this.#e.listeners(t),{count:n}=this.#t,o=e;if(typeof o.__signal_exit_emitter__==="object"&&typeof o.__signal_exit_emitter__.count==="number")n+=o.__signal_exit_emitter__.count;if(r.length===n){this.unload();let s=this.#t.emit("exit",null,t),i=t==="SIGHUP"?this.#r:t;if(!s)e.kill(e.pid,i)}};this.#i=e.reallyExit,this.#s=e.emit}onExit(e,t){if(!yr(this.#e))return()=>{};if(this.#n===!1)this.load();let r=t?.alwaysLast?"afterExit":"exit";return this.#t.on(r,e),()=>{if(this.#t.removeListener(r,e),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0)this.unload()}}load(){if(this.#n)return;this.#n=!0,this.#t.count+=1;for(let e of tt)try{let t=this.#o[e];if(t)this.#e.on(e,t)}catch(t){}this.#e.emit=(e,...t)=>this.#c(e,...t),this.#e.reallyExit=(e)=>this.#a(e)}unload(){if(!this.#n)return;this.#n=!1,tt.forEach((e)=>{let t=this.#o[e];if(!t)throw Error("Listener not defined for signal: "+e);try{this.#e.removeListener(e,t)}catch(r){}}),this.#e.emit=this.#s,this.#e.reallyExit=this.#i,this.#t.count-=1}#a(e){if(!yr(this.#e))return 0;return this.#e.exitCode=e||0,this.#t.emit("exit",this.#e.exitCode,null),this.#i.call(this.#e,this.#e.exitCode)}#c(e,...t){let r=this.#s;if(e==="exit"&&yr(this.#e)){if(typeof t[0]==="number")this.#e.exitCode=t[0];let n=r.call(this.#e,e,...t);return this.#t.emit("exit",this.#e.exitCode,null),n}else return r.call(this.#e,e,...t)}}var Kn=globalThis.process,{onExit:Ci,load:D_,unload:N_}=am(yr(Kn)?new Ei(Kn):new zi);import{stripVTControlCharacters as cm}from"node:util";var Hn="\x1B[G",_r="\x1B[?25l",Ti="\x1B[?25h",qn=(e=1)=>e>0?`\x1B[${e}A`:"",Yn=(e=1)=>e>0?`\x1B[${e}B`:"",Xn=(e,t)=>{if(typeof t==="number"&&!Number.isNaN(t))return`\x1B[${t+1};${e+1}H`;return`\x1B[${e+1}G`},Ii="\x1B[2K",Qn=(e)=>e>0?(Ii+qn(1)).repeat(e-1)+Ii+Hn:"";var Oi=(e)=>e.split(`
22
+ `).length,um=(e)=>e.split(`
23
+ `).pop()??"";class br{height=0;extraLinesUnderPrompt=0;cursorPos;rl;constructor(e){this.rl=e,this.cursorPos=e.getCursorPos()}write(e){this.rl.output.unmute(),this.rl.output.write(e),this.rl.output.mute()}render(e,t=""){let r=um(e),n=cm(r),o=n;if(this.rl.line.length>0)o=o.slice(0,-this.rl.line.length);this.rl.setPrompt(o),this.cursorPos=this.rl.getCursorPos();let s=xr();if(e=Lt(e,s),t=Lt(t,s),n.length%s===0)e+=`
24
+ `;let i=e+(t?`
25
+ `+t:""),c=Math.floor(n.length/s)-this.cursorPos.rows+(t?Oi(t):0);if(c>0)i+=qn(c);i+=Xn(this.cursorPos.cols),this.write(Yn(this.extraLinesUnderPrompt)+Qn(this.height)+i),this.extraLinesUnderPrompt=c,this.height=Oi(i)}checkCursorPos(){let e=this.rl.getCursorPos();if(e.cols!==this.cursorPos.cols)this.write(Xn(e.cols)),this.cursorPos=e}done({clearContent:e}){this.rl.setPrompt("");let t=Yn(this.extraLinesUnderPrompt);t+=e?Qn(this.height):`
26
+ `,t+=Hn,t+=Ti,this.write(t),this.rl.close()}}class eo extends Promise{static withResolver(){let e,t;return{promise:new Promise((n,o)=>{e=n,t=o}),resolve:e,reject:t}}}import pm from"node:path";var dm=globalThis.setImmediate;function wr(e,t,r){if("on"in e)return e.on(t,r),()=>e.removeListener(t,r);return e.addEventListener(t,r),()=>e.removeEventListener(t,r)}function fm(){let e=Error.prepareStackTrace,t=[];try{Error.prepareStackTrace=(r,n)=>{let o=n.slice(1);return t=o,o},Error().stack}catch{return t}return Error.prepareStackTrace=e,t}function Ne(e){let t=fm();return(n,o={})=>{let{input:s=process.stdin,signal:i}=o,a=new Set,c=new ji.default;c.pipe(o.output??process.stdout);let u=Ai.createInterface({terminal:!0,input:s,output:c});c.mute();let l=new br(u),{promise:p,resolve:d,reject:f}=eo.withResolver();return Xs(u,(m)=>{let g=lm.bind(()=>Rt.clearAll()),x=(y)=>{try{g(),y()}catch(S){f(S)}},_=(y)=>x(()=>d(y)),w=(y)=>x(()=>f(y)),P=Object.assign(p.finally(()=>{a.forEach((y)=>y()),l.done({clearContent:Boolean(o.clearPromptOnDone)}),c.end()}).then(()=>p),{cancel:()=>w(new Ln)});if(i){let y=()=>w(new Zn({cause:i.reason}));if(i.aborted)return y(),P;a.add(wr(i,"abort",y))}a.add(Ci((y,S)=>{w(new hr(`User force closed the prompt with ${y} ${S}`))})),a.add(wr(u,"SIGINT",()=>w(new hr("User force closed the prompt with SIGINT")))),a.add(wr(u,"close",g));let C=()=>{a.add(wr(u.input,"keypress",()=>l.checkCursorPos()));let y=null;m(()=>{let S=!1;try{let I=e(n,(T)=>{if(S)_(T);else y={value:T}});if(I===void 0){let T=t[1]?.getFileName();if(T&&!T.startsWith("file://"))T=pm.resolve(T);throw Error(`Prompt functions must return a string.
27
+ at ${T}`)}let[W,E]=typeof I==="string"?[I]:I;l.render(W,E),Rt.run()}catch(I){w(I)}if(S=!0,y!==null){let{value:I}=y;y=null,_(I)}})};if("readableFlowing"in s)dm(C);else C();return P})}}import{styleText as mm}from"node:util";class Se{separator=mm("dim",Array.from({length:15}).join(pt.line));type="separator";constructor(e){if(e)this.separator=e}static isSeparator(e){return Boolean(e&&typeof e==="object"&&"type"in e&&e.type==="separator")}}import{styleText as hm}from"node:util";var gm={keywords:{yes:"Yes",no:"No"},style:{confirmDefault:(e)=>{let t=e[0]??"";if(t.toLowerCase()===t.toUpperCase())return hm("cyan",e);return t.toUpperCase()+e.slice(1)}}},Ri=Ne((e,t)=>{let[r,n]=D("idle"),[o,s]=D(""),i=_e(gm,e.theme),a=Ze({status:r,theme:i}),{yes:c,no:u}=i.keywords,l=(c[0]??"").toLowerCase(),p=(u[0]??"").toLowerCase(),d=e.default===!1?`${l}/${i.style.confirmDefault(p)}`:`${i.style.confirmDefault(l)}/${p}`;function f(P){return P?c:u}let{transformer:m=f}=e;function g(P,C){let y=P.trim().toLowerCase();if(y==="")return C!==!1;if(c.toLowerCase().startsWith(y))return!0;if(u.toLowerCase().startsWith(y))return!1;return C!==!1}Le((P,C)=>{if(r!=="idle")return;if(je(P)){let y=g(o,e.default);s(m(y)),n("done"),t(y)}else if(At(P)){let y=f(!g(o,e.default));C.clearLine(0),C.write(y),s(y)}else s(C.line)});let x=o,_="";if(r==="done")x=i.style.answer(o);else _=` ${i.style.defaultAnswer(d)}`;let w=i.style.message(e.message,r);return`${a} ${w}${_} ${x}`});var xm={validationFailureMode:"keep"},Zi=Ne((e,t)=>{let{prefill:r="tab"}=e,n=_e(xm,e.theme),[o,s]=D("idle"),[i,a]=D(String(e.default??"")),[c,u]=D(),[l,p]=D(""),d=Ze({status:o,theme:n});async function f(w){let{required:P,pattern:C,patternError:y="Invalid input"}=e;if(P&&!w)return"You must provide a value";if(C&&!C.test(w))return y;if(typeof e.validate==="function")return await e.validate(w)||"You must provide a valid value";return!0}Le(async(w,P)=>{if(o!=="idle")return;if(je(w)){let C=l||i;s("loading");let y=await f(C);if(y===!0)p(C),s("done"),t(C);else{if(n.validationFailureMode==="clear")p("");else P.write(l);u(y),s("idle")}}else if(Ot(w)&&!l)a("");else if(At(w)&&!l)a(""),P.clearLine(0),P.write(i),p(i);else p(P.line),u(void 0)}),Re((w)=>{if(r==="editable"&&i)w.write(i),p(i)},[]);let m=n.style.message(e.message,o),g=l;if(typeof e.transformer==="function")g=e.transformer(l,{isFinal:o==="done"});else if(o==="done")g=n.style.answer(l);let x;if(i&&o!=="done"&&!l)x=n.style.defaultAnswer(i);let _="";if(c)_=n.style.error(c);return[[d,m,x,g].filter((w)=>w!==void 0).join(" "),_]});import{styleText as to}from"node:util";var ym={style:{maskedText:"[input is masked]",keysHelpTip:(e)=>e.map(([t,r])=>`${to("bold",t)} ${to("dim",r)}`).join(to("dim"," • "))}},Li=Ne((e,t)=>{let{toggleMask:r=!0,validate:n=()=>!0}=e,o=_e(ym,e.theme),[s,i]=D("idle"),[a,c]=D(),[u,l]=D(""),[p,d]=D(!1),f=Ze({status:s,theme:o});Le(async(P,C)=>{if(s!=="idle")return;if(je(P)){let y=u;i("loading");let S=await n(y);if(S===!0)l(y),i("done"),t(y);else C.write(u),c(S||"You must provide a valid value"),i("idle")}else if(r&&P.ctrl&&P.name==="t")d((y)=>!y);else l(C.line),c(void 0)});let m=o.style.message(e.message,s),g=r&&p&&s==="idle",x="";if(g)x=u;else if(e.mask)x=(typeof e.mask==="string"?e.mask:"*").repeat(u.length);else if(s!=="done")x=o.style.help(o.style.maskedText);if(s==="done")x=o.style.answer(x);else if(!e.mask)x+=_r;let _=[f,m,x].filter(Boolean).join(" "),w=[a?o.style.error(a):"",r&&s==="idle"?o.style.keysHelpTip([["ctrl+t","toggle visibility"]]):""].filter(Boolean).join(`
28
+ `);return[_,w]});import{styleText as Dt}from"node:util";var _m={icon:{cursor:pt.pointer},style:{disabled:(e)=>Dt("dim",e),description:(e)=>Dt("cyan",e),keysHelpTip:(e)=>e.map(([t,r])=>`${Dt("bold",t)} ${Dt("dim",r)}`).join(Dt("dim"," • "))},i18n:{disabledError:"This option is disabled and cannot be selected."},indexMode:"hidden"};function ro(e){return!Se.isSeparator(e)&&!e.disabled}function no(e){return!Se.isSeparator(e)}function bm(e){return e.map((t)=>{if(Se.isSeparator(t))return t;if(typeof t!=="object"||t===null||!("value"in t)){let o=String(t);return{value:t,name:o,short:o,disabled:!1}}let r=t.name??String(t.value),n={value:t.value,name:r,short:t.short??r,disabled:t.disabled??!1};if(t.description)n.description=t.description;return n})}var Di=Ne((e,t)=>{let{loop:r=!0,pageSize:n=7}=e,o=_e(_m,e.theme),{keybindings:s}=o,[i,a]=D("idle"),c=Ze({status:i,theme:o}),u=et(),l=!s.includes("vim"),p=Zt(()=>bm(e.choices),[e.choices]),d=Zt(()=>{let E=p.findIndex(no),T=p.findLastIndex(no);if(E===-1)throw new jt("[select prompt] No selectable choices. All choices are disabled.");return{first:E,last:T}},[p]),f=Zt(()=>{if(!("default"in e))return-1;return p.findIndex((E)=>ro(E)&&E.value===e.default)},[e.default,p]),[m,g]=D(f===-1?d.first:f),x=p[m];if(x==null||Se.isSeparator(x))throw Error("Active index does not point to a choice");let[_,w]=D();Le((E,T)=>{if(clearTimeout(u.current),_)w(void 0);if(je(E))if(x.disabled)w(o.i18n.disabledError);else a("done"),t(x.value);else if(Tt(E,s)||mr(E,s)){if(T.clearLine(0),r||Tt(E,s)&&m!==d.first||mr(E,s)&&m!==d.last){let B=Tt(E,s)?-1:1,K=m;do K=(K+B+p.length)%p.length;while(!no(p[K]));g(K)}}else if(Rn(E)&&!Number.isNaN(Number(T.line))){let B=Number(T.line)-1,K=-1,ge=p.findIndex((kt)=>{if(Se.isSeparator(kt))return!1;return K++,K===B}),Sn=p[ge];if(Sn!=null&&ro(Sn))g(ge);u.current=setTimeout(()=>{T.clearLine(0)},700)}else if(Ot(E))T.clearLine(0);else if(l){let B=T.line.toLowerCase(),K=p.findIndex((ge)=>{if(Se.isSeparator(ge)||!ro(ge))return!1;return ge.name.toLowerCase().startsWith(B)});if(K!==-1)g(K);u.current=setTimeout(()=>{T.clearLine(0)},700)}}),Re(()=>()=>{clearTimeout(u.current)},[]);let P=o.style.message(e.message,i),C=o.style.keysHelpTip([["↑↓","navigate"],["⏎","select"]]),y=0,S=Gn({items:p,active:m,renderItem({item:E,isActive:T,index:B}){if(Se.isSeparator(E))return y++,` ${E.separator}`;let K=T?o.icon.cursor:" ",ge=o.indexMode==="number"?`${B+1-y}. `:"";if(E.disabled){let kt=typeof E.disabled==="string"?E.disabled:"(disabled)",af=T?o.icon.cursor:"-";return o.style.disabled(`${af} ${ge}${E.name} ${kt}`)}return(T?o.style.highlight:(kt)=>kt)(`${K} ${ge}${E.name}`)},pageSize:n,loop:r});if(i==="done")return[c,P,o.style.answer(x.short)].filter(Boolean).join(" ");let{description:I}=x;return`${[[c,P].filter(Boolean).join(" "),S," ",I?o.style.description(I):"",_?o.style.error(_):"",C].filter(Boolean).join(`
29
+ `).trimEnd()}${_r}`});var be=ut(Pt(),1);class O extends Error{hint;exitCode;constructor(e,t={}){super(e);this.name="CliError",this.hint=t.hint,this.exitCode=t.exitCode??1}}var N=(e,t)=>new O(e,{exitCode:2,hint:t}),we=(e)=>e<1000?`${Math.round(e)}ms`:`${Math.round(e/1000)}s`,wm=[["d",86400000],["h",3600000],["m",60000],["s",1000]],dt=(e)=>{let t=Math.max(0,e);for(let[r,n]of wm)if(t>=n)return`${Math.round(t/n)}${r}`;return`${Math.round(t)}ms`},Fi=(e)=>{let t=Math.max(0,Math.floor(e/60000)),r=Math.floor(t/60);return r>0?`${r}h ${t%60}m`:`${t}m`},oe=(e)=>{process.stderr.write(`${e}
30
+ `)},R=(e)=>{oe(`${be.default.dim(">")} ${e}`)},le=(e,t)=>{let r=t===void 0?"":`[${we(t)}]`,n=r?` ${be.default.dim(r)}`:"";oe(`${be.default.cyan("> Success!")} ${e}${n}`)},ft=(e)=>{oe(`${be.default.bold(be.default.yellow("> NOTE:"))} ${e}`)},Ui=(e)=>{if(oe(`${be.default.bold(be.default.red("Error:"))} ${e.message}`),e.hint)oe(`${be.default.dim(">")} ${e.hint}`)},Ni=["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"],vm=300,$m="\r\x1B[2K",V=async(e,t)=>{if(!process.stderr.isTTY)return t();let r=0,n=!1,o,s=()=>{n=!0;let a=Ni[r%Ni.length]??"";r+=1,process.stderr.write(`\r${be.default.dim(a)} ${e}`)},i=setTimeout(()=>{s(),o=setInterval(s,80)},vm);try{return await t()}finally{if(clearTimeout(i),clearInterval(o),n)process.stderr.write($m)}},vr=async(e)=>{try{return await e()}catch(t){if(t instanceof Error&&t.name==="ExitPromptError")throw new O("Canceled",{exitCode:130});throw t}},Mi=(e)=>{let t={output:e.stderr};return{choice:(r)=>vr(()=>Di(r,t)),confirm:(r)=>vr(()=>Ri(r,t)),interactive:e.stdin.isTTY===!0&&e.stderr.isTTY===!0,secret:(r)=>vr(()=>Li({mask:"*",message:r},t)),text:(r)=>vr(()=>Zi({...r,required:!0},t))}},Bi=(e)=>({isTTY:e.isTTY===!0,json:(t)=>{e.write(`${JSON.stringify(t,null,2)}
31
+ `)},line:(t)=>{e.write(`${t}
32
+ `)},write:(t)=>{e.write(t)}}),{bold:k,cyan:Sm,dim:Y,gray:Ge,green:$r,red:Gi,yellow:Vi}=be.default,km=" ".repeat(5),Pm=(e)=>k(Sm(e)),ke=(e)=>{let{headings:t,marks:r,rows:n}=e,o=t.map((i,a)=>Math.max(i.length,...n.map((c)=>c[a]?.text.length??0))),s=(i)=>i.map((a,c)=>{let l=c===i.length-1?a.text:a.text.padEnd(o[c]??0);return a.paint?a.paint(l):l}).join(km);oe(""),oe(` ${s(t.map((i)=>({paint:Pm,text:i})))}`);for(let[i,a]of n.entries())oe(`${r?.[i]??" "} ${s(a)}`);oe("")};var Ji=(e)=>new Map(e.flatMap((t)=>ne(t).map((r)=>[r,t]))),io=(e)=>`Use one of: ${e.join(", ")}.`,Hi=(e,t)=>{if(e.value.kind==="choice"&&!e.value.choices.includes(t))throw N(`unknown ${e.long} "${t}"`,io(e.value.choices));return t},Wi=(e)=>{let{flag:t,hints:r,name:n,next:o}=e;if(o===void 0||o.startsWith("-"))throw N(`${n} needs${zt(t.value)}`,`Usage: ${r.usage}`);return Hi(t,o)},qi=(e)=>{let{hints:t,index:r,next:n,word:o}=e;if(o.startsWith("--")){let l=o.indexOf("="),p=l===-1?o:o.slice(0,l),d=r.get(p);if(!d)return;if(d.value.kind==="none"){if(l!==-1)throw N(`${p} doesn't take a value`,`Usage: ${t.usage}`);return{options:[{flag:d,value:!0}],used:1}}if(l!==-1)return{options:[{flag:d,value:Hi(d,o.slice(l+1))}],used:1};return{options:[{flag:d,value:Wi({flag:d,hints:t,name:p,next:n})}],used:2}}let s=[...o].slice(1),a=s.map((l)=>r.get(`-${l}`)).filter((l)=>l!==void 0);if(a.length!==s.length)return;let c=[],u=1;for(let[l,p]of a.entries())if(p.value.kind==="none")c.push({flag:p,value:!0});else if(l===a.length-1)c.push({flag:p,value:Wi({flag:p,hints:t,name:`-${s[l]}`,next:n})}),u=2;else throw N(`-${s[l]} needs${zt(p.value)}`,`Usage: ${t.usage}`);return{options:c,used:u}},so=(e,t)=>{let r=e.flatMap((n)=>{let o=t.get(n.long);return o===void 0?[]:[[n.long,o]]});return Object.fromEntries(r)},zm={command:"nipa",usage:"nipa [options] <command>"},Em=Ji(re),Ki=(e)=>{let{at:t,words:r}=e,n=r[t];if(n===void 0||n==="--"||n==="-"||!n.startsWith("-"))return;let o=qi({hints:zm,index:Em,next:r[t+1],word:n});if(!o&&e.unknown==="reject")throw N(`unknown option "${n}"`,"Run `nipa --help` to see the options.");return o},ao=(e)=>{let{unknown:t,words:r}=e,n=new Map,o=0;for(let s=Ki({at:o,unknown:t,words:r});s!==void 0;s=Ki({at:o,unknown:t,words:r})){for(let{flag:i,value:a}of s.options)n.set(i.long,a);o+=s.used}return{globals:so(re,n),rest:r.slice(o)}},Yi=(e)=>{let t=e.indexOf("--"),r=t===-1?e:e.slice(0,t),n=new Set(ne(In));return r.some((o)=>n.has(o))},Cm=(e)=>{let{flags:t,hints:r,words:n}=e,o=Ji([...t,...re]),s=new Set(t.map((l)=>l.long)),i=new Map,a=new Map,c=[],u=0;while(u<n.length){let l=n[u]??"";if(l==="--"){c.push(...n.slice(u+1));break}if(l.startsWith("-")&&l!=="-"){let p=qi({hints:r,index:o,next:n[u+1],word:l});if(!p)throw N(`unknown option "${l}"`,`Run \`${r.command} --help\` to see the options.`);for(let{flag:d,value:f}of p.options)(s.has(d.long)?i:a).set(d.long,f);u+=p.used}else c.push(l),u+=1}return{globals:a,own:i,positionals:c}},oo=(e,t)=>{if(e.value.kind==="choice"&&!e.value.choices.includes(t))throw N(`unknown ${e.name} "${t}"`,io(e.value.choices));return t},Im=(e)=>{let t=[...e.positionals],r=e.args.map((o)=>{switch(o.arity){case"one":{let s=t.shift();if(s===void 0)throw N(`missing <${o.name}>`,o.value.kind==="choice"?io(o.value.choices):`Usage: ${e.hints.usage}`);return[o.name,oo(o,s)]}case"optional":{let s=t.shift();return[o.name,s===void 0?void 0:oo(o,s)]}case"rest":return[o.name,t.splice(0).map((s)=>oo(o,s))];default:return o.arity}}),[n]=t;if(n!==void 0)throw N(`unexpected argument "${n}"`,`Usage: ${e.hints.usage}`);return Object.fromEntries(r)},Xi=(e)=>{let{path:t,spec:r,words:n}=e,o={command:pr(t),usage:It(t)},s=Cm({flags:r.flags,hints:o,words:n});return{globals:so(re,s.globals),input:{args:Im({args:r.args,hints:o,positionals:s.positionals}),flags:so(r.flags,s.own)}}};var Z=(e)=>({...e,kind:"leaf"}),Pe=(e)=>({...e,kind:"group"}),mt=(e)=>({...e,kind:"passthrough"}),A=(e,t)=>({kind:"leaf",prepare:({path:r,words:n})=>{let o=Xi({path:r,spec:e,words:n});return{globals:o.globals,run:(s)=>t({...o.input,client:s})}},spec:e}),ze=(e,t)=>{let r=Object.values(t),n=new Map(r.flatMap((o)=>q(o.spec).map((s)=>[s,o])));return{fallback:t[e.default],kind:"group",spec:e,subcommands:n}},Tm=(e,t)=>{let{target:r}=e;switch(r.kind){case"program":return{args:t,command:r.program};case"openstack":return{args:t,command:"openstack"};case"command":{let[n,...o]=t;if(n===void 0)throw N("missing <command>",`Usage: ${It([e])}`);return{args:o,command:n}}default:return r}},ht=(e,t)=>({kind:"passthrough",run:({client:r,words:n})=>t({...Tm(e,n),client:r}),spec:e}),Qi=(e)=>e.spec,ea=(e)=>({examples:e.examples,hidden:e.hidden.map(Qi),sections:e.sections.map((t)=>({commands:t.commands.map(Qi),title:t.title})),summary:e.summary});function Ut(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function uo(e,t="|"){return e.map((r)=>fo(r)).join(t)}function Mt(e,t){if(typeof t==="bigint")return t.toString();return t}class ta{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;if(e!==void 0)this._value=e(),this._getter=void 0;return this._value}}function Sr(e){return new ta(e)}function ra(e){return e===null||e===void 0}function kr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function na(e,t){let r=e/t,n=Math.round(r),o=4*Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-n)<o)return 0;return r-n}function ve(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Pr(e){let t=Object.getOwnPropertyDescriptor(e,"shape");return t?.get?t.get.raw:t?.value}function Fe(e){return Pr(e._zod.def)??e._zod.def.shape}function oa(e,t,r){Object.defineProperty(e,t,{get(){let n=r();return ve(this,t,n),n},enumerable:!0,configurable:!0})}function sa(e,t,r){if(t in e)ve(e,t,r);else e[t]=r}function rt(e,t,r,n){let o=Fe(t);for(let s of r){let i=Object.getOwnPropertyDescriptor(o,s);if(!i.enumerable)continue;if(i.get)oa(e,s,()=>{let a=t._zod.def.shape[s];return n?n(a,s):a});else sa(e,s,n?n(i.value,s):i.value)}}function Om(e,t){for(let r of Reflect.ownKeys(t)){let n=Object.getOwnPropertyDescriptor(t,r);if(!n.enumerable)continue;if(n.get)oa(e,r,()=>t[r]);else sa(e,r,n.value)}}function se(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function ia(e){return JSON.stringify(e)}function aa(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var lo="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Ft(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var ca=Sr(()=>{if(X.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function nt(e){if(Ft(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if(Ft(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function po(e){if(nt(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}var ua=new Set(["string","number","symbol"]);function gt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $e(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function v(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function fo(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function la(e){return Object.keys(e).filter((t)=>e[t]._zod.optin!==void 0&&e[t]._zod.optout==="optional")}var zr=(()=>({safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]}))(),mo={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Am(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let s={};return rt(s,e,Er(e,t)),$e(e,se(r,{shape:s,checks:[]}))}function Er(e,t){let r=Fe(e),n=[];for(let o of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(r,o)?.enumerable)throw Error(`Unrecognized key: "${String(o)}"`);if(t[o])n.push(o)}return n}function jm(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let s=new Set(Er(e,t)),i={};return rt(i,e,Reflect.ownKeys(Fe(e)).filter((a)=>!s.has(a))),$e(e,se(r,{shape:i,checks:[]}))}function Rm(e,t){if(!nt(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let o=Fe(e);for(let s of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(o,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return $e(e,se(e._zod.def,{shape:pa(e,t)}))}function pa(e,t){let r={};return rt(r,e,Reflect.ownKeys(Fe(e))),Om(r,t),r}function Zm(e,t){if(!nt(t))throw Error("Invalid input to safeExtend: expected a plain object");return $e(e,se(e._zod.def,{shape:pa(e,t)}))}function Lm(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r={};rt(r,e,Reflect.ownKeys(Fe(e))),rt(r,t,Reflect.ownKeys(Fe(t)));let n=se(e._zod.def,{shape:r,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return $e(e,n)}function da(e,t,r,n="partial"){let s=t._zod.def.checks;if(s&&s.length>0)throw Error(`.${n}() cannot be used on object schemas containing refinements`);let a=r?new Set(Er(t,r)):void 0,c={};return rt(c,t,Reflect.ownKeys(Fe(t)),e&&((u,l)=>a&&!a.has(l)?u:new e({type:"optional",innerType:u}))),$e(t,se(t._zod.def,{shape:c,checks:[]}))}function Dm(e,t,r){let n=r?new Set(Er(t,r)):void 0,o={};return rt(o,t,Reflect.ownKeys(Fe(t)),(s,i)=>n&&!n.has(i)?s:new e({type:"nonoptional",innerType:s})),$e(t,se(t._zod.def,{shape:o}))}function Ee(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function fa(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function We(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Nt(e){return typeof e==="string"?e:e?.message}function ho(e,t,r){var n;for(let o=t;o<e.length;o++)(n=e[o]).schema??(n.schema=r)}function Ce(e,t,r){var n;let o=e.inst?._zod?.traits;if(o?.has("$ZodType"))if(o.has("$ZodCheck"))(n=e).schema??(n.schema=e.inst);else e.schema=e.inst;let s=e.schema!==e.inst?e.schema?._zod.def?.error:void 0,i=e.message?e.message:Nt(e.inst?._zod.def?.error?.(e))??Nt(s?.(e))??Nt(t?.error?.(e))??Nt(r.customError?.(e))??Nt(r.localeError?.(e))??"Invalid input",a={};for(let c of Object.keys(e)){if(c==="inst"||c==="schema"||c==="continue"||c==="input"||c==="__proto__")continue;a[c]=e[c]}if(a.path??(a.path=[]),a.message=i,t?.reportInput)a.input=e.input;return a}var Nm=/[\uD800-\uDBFF]/;function Cr(e){let t=e.length;if(!Nm.test(e))return t;let r=t;for(let n=0;n<t-1;n++)if((e.charCodeAt(n)&64512)===55296&&(e.charCodeAt(n+1)&64512)===56320)r--,n++;return r}function Ir(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function ma(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function ot(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function ha(e,t){for(let r in t){let n=Object.getOwnPropertyDescriptor(t,r);if(n.get)Object.defineProperty(e,r,{...n,enumerable:!1});else Fm(e,r,n.value)}}function Ue(e,t,r,n=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:n,value:r}),r}function Tr(e,t,r){return Ue(e,t,r,!1)}function ga(e,t){for(let r in e){let n=e[r];Object.defineProperty(t,r,{configurable:!0,enumerable:!0,get(){return Ue(this,r,n(this))},set(o){Ue(this,r,o)}})}return t}function Fm(e,t,r){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?r:Ue(this,t,r.bind(this))},set(n){Ue(this,t,n)}})}function Um(e,t){let r=Object.getPrototypeOf(e);return t in r?void 0:r}var co,Ve=!1,Mm={configurable:!0,get(){Ve=!0;return}};function j(e,t,r){let n=Object.getPrototypeOf(e._zod);if(t in n&&co!==e._zod){co=void 0;return}co=e._zod,Object.defineProperty(n,t,{configurable:!0,get(){Object.defineProperty(this,t,Mm);let o=Ve;Ve=!1;try{let s=r(this);if(Ve)delete this[t];else Object.defineProperty(this,t,{configurable:!0,writable:!0,value:s});return Ve=Ve||o,s}catch(s){throw delete this[t],Ve=Ve||o,s}},set(o){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:o})}})}function Bm(e,t,r,n){let o=Um(e,t);if(!o)return;Object.defineProperty(o,t,{configurable:!0,get(){let s={configurable:!0,writable:!0,enumerable:n,value:void 0};return Object.defineProperty(this,t,s),s.value=r(this),Object.defineProperty(this,t,s),s.value},set(s){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:n,value:s})}})}var Gm="~constantCatch";function xa(e){let t=()=>e;return t[Gm]=!0,t}var ya;var go={value:void 0,enumerable:!1},_a="captureStackTrace"in Error?Error:null;function Vm(e){let t=_a;if(t){let r=t.stackTraceLimit;if(typeof r==="number"){try{t.stackTraceLimit=0}catch{return _a=null,new e}try{return new e}finally{t.stackTraceLimit=r}}}return new e}function h(e,t,r,n){let o={};function s(d){this.def=d,this.constr=p,this.traits=new Set}s.prototype=o;let i=r,a=i&&new WeakSet;function c(d,f){if(!d._zod){go.value=new s(f);try{Object.defineProperty(d,"_zod",go)}finally{go.value=void 0}}else if(d._zod.traits.has(e))return;if(d._zod.traits.add(e),t(d,f),a){let g=Object.getPrototypeOf(d),x=d._zod.constr.prototype,_=g;while(_&&_!==x)_=Object.getPrototypeOf(_);let w=_??g;if(!a.has(w))a.add(w),ha(w,i)}let m=p.prototype;for(let g in m){if(!Object.prototype.hasOwnProperty.call(m,g))continue;if(!(g in d))d[g]=m[g].bind(d)}}let u=n?.Parent??Object;class l extends u{}Object.defineProperty(l,"name",{value:e});function p(d){let f=n?.Parent?Vm(l):this;c(f,d);let m=f._zod.deferred;if(m){for(let x of m)x();f._zod.deferred=void 0}let g=globalThis.__zod_globalConfig?.postProcessor;if(g)g(f);return f}return Object.defineProperty(p,"init",{value:c}),Object.defineProperty(p,Symbol.hasInstance,{value:(d)=>{if(n?.Parent&&d instanceof n.Parent)return!0;return d?._zod?.traits?.has(e)}}),Object.defineProperty(p,"name",{value:e}),p}class Ie extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Bt extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(ya=globalThis).__zod_globalConfig??(ya.__zod_globalConfig={});var X=globalThis.__zod_globalConfig;function Q(e){if(e)Object.assign(X,e);return X}function Wm(){let e=this._zod;return e.message??(e.message=JSON.stringify(e.def,Mt,2)),e.message}function Km(e){this._zod.message=e}var Jm={get:Wm,set:Km,enumerable:!0,configurable:!0},yo={value:void 0,enumerable:!1},ba=new WeakSet([Object.prototype,Error.prototype]),wa=(e,t)=>{e.name="$ZodError",yo.value=t,Object.defineProperty(e,"issues",yo),yo.value=void 0,Object.defineProperty(e,"message",Jm);let r=Object.getPrototypeOf(e);if(!ba.has(r))ba.add(r),Object.defineProperty(r,"toString",{configurable:!0,enumerable:!1,get(){let n=()=>this.message;return Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,"toString",{value:n,configurable:!0,writable:!0})}})},va=h("$ZodError",wa),Yb=h("$ZodError",wa,void 0,{Parent:Error});function Hm(e,t,r){if(!Object.prototype.hasOwnProperty.call(e,t))if(t==="__proto__")Object.defineProperty(e,t,{value:r(),writable:!0,enumerable:!0,configurable:!0});else e[t]=r();return e[t]}function _o(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)Hm(r,o.path[0],()=>[]).push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function bo(e,t=(r)=>r.message){let r={_errors:[]},n=(o,s=[])=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map((a)=>n({issues:a},[...s,...i.path]));else if(i.code==="invalid_key")n({issues:i.issues},[...s,...i.path]);else if(i.code==="invalid_element")n({issues:i.issues},[...s,...i.path]);else{let a=[...s,...i.path];if(a.length===0)r._errors.push(t(i));else{let c=r,u=0;while(u<a.length){let l=a[u],p=u===a.length-1;if(l==="_errors"){if(p)c._errors.push(t(i));u++;continue}if(!Object.prototype.hasOwnProperty.call(c,l))Object.defineProperty(c,l,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let d=c[l];if(p)d._errors.push(t(i));c=d,u++}}}};return n(e),r}function qm(e){let t=[],r=e.map((n)=>typeof n==="object"?n.key:n);for(let n of r)if(typeof n==="number")t.push(`[${n}]`);else if(typeof n==="symbol")t.push(`[${JSON.stringify(String(n))}]`);else if(/[^\w$]/.test(n))t.push(`[${JSON.stringify(n)}]`);else{if(t.length)t.push(".");t.push(n)}return t.join("")}function Gt(e){let t=[],r=[...e.issues].sort((n,o)=>(n.path??[]).length-(o.path??[]).length);for(let n of r)if(t.push(`✖ ${n.message}`),n.path?.length)t.push(` → at ${qm(n.path)}`);return t.join(`
33
+ `)}function Or(e,t){return{callee:t?.callee??e,Err:t?.Err}}var Ar=(e)=>{let t=(r,n,o,s)=>{let i=o?{...o,async:!1}:{async:!1},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Ie;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>Ce(u,i,Q())));throw lo(c,s?.callee??t),c}return a.value};return t};var jr=(e)=>{let t=async(r,n,o,s)=>{let i=o?{...o,async:!0}:{async:!0},a=r._zod.run({value:n,issues:[]},i);if(a instanceof Promise)a=await a;if(a.issues.length){let c=new(s?.Err??e)(a.issues.map((u)=>Ce(u,i,Q())));throw lo(c,s?.callee??t),c}return a.value};return t};var Rr=(e)=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Ie;return s.issues.length?$a(e,s.issues,o):{success:!0,data:s.value}};function $a(e,t,r){let n;return{success:!1,get error(){if(!n)n=new e(t.map((o)=>Ce(o,r,Q()))),t=void 0,r=void 0;return n},set error(o){n=o,t=void 0,r=void 0}}}var Zr=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},o);if(s instanceof Promise)s=await s;return s.issues.length?$a(e,s.issues,o):{success:!0,data:s.value}};var Ym=Symbol.for("zod.compile.invalid"),Xm=Symbol.for("zod.compile.fallback"),wo=(e,t,r)=>{let n=e._zod.bag.validator;if(n!==void 0){if(n(t)!==Ym)return!0;if(n.definite===!0&&r===void 0)return!1}return Qm(e,t,r)};function Qm(e,t,r){let n=r?{...r,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},o=e._zod.bag.fallbackRun,s;if(o)n[Xm]=!0,s=o({value:t,issues:[]},n);else s=e._zod.run({value:t,issues:[]},n);if(s instanceof Promise)throw new Ie;return s.issues.length===0}var vo=async(e,t,r)=>{let n=r?{...r,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},o=e._zod.run({value:t,issues:[]},n);if(o instanceof Promise)o=await o;return o.issues.length===0},Sa=(e)=>{let t=Ar(e),r=(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return t(n,o,a,Or(r,i))};return r};var ka=(e)=>{let t=Ar(e),r=(n,o,s,i)=>t(n,o,s,Or(r,i));return r};var Pa=(e)=>{let t=jr(e),r=async(n,o,s,i)=>{let a=s?{...s,direction:"backward"}:{direction:"backward"};return await t(n,o,a,Or(r,i))};return r};var za=(e)=>{let t=jr(e),r=async(n,o,s,i)=>await t(n,o,s,Or(r,i));return r};var Ea=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Rr(e)(t,r,o)};var Ca=(e)=>(t,r,n)=>Rr(e)(t,r,n);var Ia=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Zr(e)(t,r,o)};var Ta=(e)=>async(t,r,n)=>Zr(e)(t,r,n);var Oa=/^[cC][0-9a-z]{6,}$/,Aa=/^[0-9a-z]+$/,ja=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,Ra=/^[0-9a-vA-V]{20}$/,Za=/^[A-Za-z0-9]{27}$/,La=/^[a-zA-Z0-9_-]{21}$/;function Da(e){return new RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}var Na=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Fa=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,So=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var Ua=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var eh="^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$";function Ma(){return new RegExp(eh,"u")}var Ba=/^(?:(?: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])$/,Ga=/^(([0-9a-fA-F]{1,4}:){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}|:))$/;var Va=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,Wa=/^(([0-9a-fA-F]{1,4}:){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}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ka=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ja=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/;var Ha=/^https?$/,qa=/^\+[1-9]\d{6,14}$/;var Ya="(?:(?:\\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])))";function th(e){return new RegExp(`^${e}$`)}var Xa=th(Ya);function $o(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?":"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Qa(e){return new RegExp(`^${$o(e)}$`)}function ec(e){let t=["Z"];if(e.offset)t.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${$o({precision:e.precision,seconds:!0})}(?:${t.join("|")})`,n=e.local?`${r}|${$o({precision:e.precision})}`:r;return new RegExp(`^${Ya}T(?:${n})$`)}var tc=/^[\s\S]{0,}$/;var ko=/^-?\d+$/,Vt=/^-?\d+(?:\.\d+)?$/,rc=/^(?:true|false)$/i;var nc=/^[^A-Z]*$/,oc=/^[^a-z]*$/;var J=h("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])});var Po=(e)=>{let t=e.value;return!ra(t)&&t.length!==void 0},Lr={number:"number",bigint:"bigint",object:"date"},zo=h("$ZodCheckLessThan",(e,t)=>{J.init(e,t);let r=Lr[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:Lr[typeof n.value]??r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Eo=h("$ZodCheckGreaterThan",(e,t)=>{J.init(e,t);let r=Lr[typeof t.value];e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:Lr[typeof n.value]??r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),sc=h("$ZodCheckMultipleOf",(e,t)=>{J.init(e,t),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?t.value!==BigInt(0)&&r.value%t.value===BigInt(0):na(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),ic=h("$ZodCheckNumberFormat",(e,t)=>{J.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,s]=zr[t.format];e._zod.check=(i)=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){if(a>0)i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});else i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}if(a<o)i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(a>s)i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:e,continue:!t.abort})}});var ac=h("$ZodCheckMaxLength",(e,t)=>{var r;J.init(e,t),(r=e._zod.def).when??(r.when=Po),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>t.maximum?Cr(o):s)<=t.maximum)return;let a=Ir(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),cc=h("$ZodCheckMinLength",(e,t)=>{var r;J.init(e,t),(r=e._zod.def).when??(r.when=Po),e._zod.check=(n)=>{let o=n.value,s=o.length;if((typeof o==="string"&&s>=t.minimum&&s<t.minimum*2?Cr(o):s)>=t.minimum)return;let a=Ir(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),uc=h("$ZodCheckLengthEquals",(e,t)=>{var r;J.init(e,t),(r=e._zod.def).when??(r.when=Po),e._zod.check=(n)=>{let o=n.value,s=o.length,i=typeof o==="string"&&s>=t.length&&s<=t.length*2?Cr(o):s;if(i===t.length)return;let a=Ir(o),c=i>t.length;n.issues.push({origin:a,...c?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Wt=h("$ZodCheckStringFormat",(e,t)=>{var r,n;if(J.init(e,t),t.pattern)(r=e._zod).check??(r.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(n=e._zod).check??(n.check=()=>{})}),lc=h("$ZodCheckRegex",(e,t)=>{Wt.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),pc=h("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=nc),Wt.init(e,t)}),dc=h("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=oc),Wt.init(e,t)}),fc=h("$ZodCheckIncludes",(e,t)=>{J.init(e,t);let r=gt(t.includes),n=new RegExp(typeof t.position==="number"?`^.{${t.position},}${r}`:r);t.pattern=n,e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),mc=h("$ZodCheckStartsWith",(e,t)=>{J.init(e,t);let r=new RegExp(`^${gt(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.startsWith(t.prefix))return;n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),hc=h("$ZodCheckEndsWith",(e,t)=>{J.init(e,t);let r=new RegExp(`.*${gt(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.check=(n)=>{if(n.value.endsWith(t.suffix))return;n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var gc=h("$ZodCheckOverwrite",(e,t)=>{J.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class Co{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{this.indent-=1}}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
4
34
  `).filter((s)=>s),n=Math.min(...r.map((s)=>s.length-s.trimStart().length)),o=r.map((s)=>s.slice(n)).map((s)=>" ".repeat(this.indent*2)+s);for(let s of o)this.content.push(s)}compile(){let e=Function,t=this?.content??[""];return new e(...Object.keys(this.closed),`return function (${this.args.join(", ")}) {
5
35
  ${t.join(`
6
36
  `)}
7
- };`)(...Object.values(this.closed))}}var na={major:4,minor:6,patch:5};var j=h("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=na;let n=e._zod.def.checks,o=e._zod.traits.has("$ZodCheck")?[e,...n??[]]:n?.length?[...n]:[];for(let s of o)for(let i of s._zod.onattach)i(e);if(o.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let s=(a,c,u)=>{if(a.memo)return a;let l=we(a),p;for(let d of c){if(d._zod.def.when){if(Xs(a))continue;if(!d._zod.def.when(a))continue}else if(l)continue;let f=a.issues.length,m=d._zod.check(a);if(m instanceof Promise&&u?.async===!1)throw new $e;if(p||m instanceof Promise)p=(p??Promise.resolve()).then(async()=>{if(await m,a.issues.length===f)return;if(jn(a.issues,f,e),!l)l=we(a,f)});else{if(a.issues.length===f)continue;if(jn(a.issues,f,e),!l)l=we(a,f)}}if(p)return p.then(()=>a);return a},i=(a,c,u)=>{if(we(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new $e;return l.then((p)=>e._zod.parse(p,u))}return e._zod.parse(l,u)};e._zod.run=(a,c)=>{if(c.skipChecks)return e._zod.parse(a,c);if(c.direction==="backward"){let l=e._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});if(l instanceof Promise)return l.then((p)=>i(p,a,c));return i(l,a,c)}let u=e._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new $e;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return dr(this,"~standard",Xn(this))},set "~standard"(e){Ce(this,"~standard",e)}}),ma=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>ve(r,t,q()))}:{value:e.value};async function Pf(e,t){let r={async:!0};return ma(await e._zod.run({value:t,issues:[]},r),r)}function Xn(e){return{validate:(t)=>{let r={async:!1};try{let n=e._zod.run({value:t,issues:[]},r);if(!(n instanceof Promise))return ma(n,r)}catch(n){}return Pf(e,t)},vendor:"zod",version:1}}var vr=h("$ZodString",(e,t)=>{j.init(e,t),e._zod.pattern=t.pattern??Fi,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch(o){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),R=h("$ZodStringFormat",(e,t)=>{Et.init(e,t),vr.init(e,t)}),ha=h("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=ki),R.init(e,t)}),ga=h("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Gn(n))}else t.pattern??(t.pattern=Gn());R.init(e,t)}),xa=h("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Pi),R.init(e,t)}),ya=1,br=2;function _a(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function zf(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return _a(e)||br;return Ef(e,t)}function Ef(e,t){if(!t.normalize&&t.protocol?.source===Ri.source&&!/^https?:\/\//i.test(e))return ya;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??br}return new URL(e)}catch{return br}}var Cf=/[\t\n\r]/g;function oa(e){return e.replace(Cf,"")}function Of(e,t){return t.lastIndex=0,t.test(e.hostname)}function Tf(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var ba=h("$ZodURL",(e,t)=>{R.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=zf(n,t);if(o===ya){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===br){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=oa(n);return}if(t.hostname&&!Of(o,t.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort});if(t.protocol&&!Tf(o,t.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort});r.value=t.normalize?o.href:oa(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),wa=h("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=zi()),R.init(e,t)}),va=h("$ZodNanoID",(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??(t.pattern=t.length===void 0?vi:$i(t.length)),R.init(e,t)}),$a=h("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=xi),R.init(e,t)}),Sa=h("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=yi),R.init(e,t)}),ka=h("$ZodULID",(e,t)=>{t.pattern??(t.pattern=_i),R.init(e,t)}),Pa=h("$ZodXID",(e,t)=>{t.pattern??(t.pattern=bi),R.init(e,t)}),za=h("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=wi),R.init(e,t)}),Ea=h("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Ni(t)),R.init(e,t)}),Ca=h("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Li),R.init(e,t)}),Oa=h("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Di(t)),R.init(e,t)}),Ta=h("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Si),R.init(e,t)}),Ia=h("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Ei),R.init(e,t)}),If=/^[0-9a-fA-F:.]+$/;function Aa(e){if(!If.test(e))return!1;return _a(`http://[${e}]`)}var Ra=h("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Ci),R.init(e,t),e._zod.check=(r)=>{if(!Aa(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var Za=h("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Oi),R.init(e,t)});function Af(e){let t=e.split("/");if(t.length!==2)return!1;let[r,n]=t;if(!n)return!1;let o=Number(n);if(`${o}`!==n)return!1;if(o<0||o>128)return!1;return Aa(r)}var ja=h("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Ti),R.init(e,t),e._zod.check=(r)=>{if(!Af(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function La(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Qn=/^[0-9a-zA-Z+/]*={0,2}$/,Da=h("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Qn),R.init(e,t),e._zod.check=(r)=>{if(La(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),$r=/^[A-Za-z0-9_-]*$/;function Rf(e){if(!$r.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return La(r)}var Na=h("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=$r),R.init(e,t),e._zod.check=(r)=>{if(Rf(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Fa=h("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Zi),R.init(e,t)});function Zf(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var Ua=h("$ZodJWT",(e,t)=>{R.init(e,t),e._zod.check=(r)=>{if(Zf(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var eo=h("$ZodNumber",(e,t)=>{j.init(e,t),e._zod.pattern=zt,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch(i){}let o=r.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?String(o):void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...s?{received:s}:{}}),r}}),Ma=h("$ZodNumberFormat",(e,t)=>{Gi.init(e,t),eo.init(e,t)}),Ba=h("$ZodBoolean",(e,t)=>{j.init(e,t),e._zod.pattern=Ui,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(s){}let o=r.value;if(typeof o==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}});var Va=h("$ZodUnknown",(e,t)=>{j.init(e,t),e._zod.parse=(r)=>r}),Ga=h("$ZodNever",(e,t)=>{j.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function sa(e,t,r){if(e.issues.length)t.issues.push(...De(r,e.issues));t.value[r]=e.value}var Wa=h("$ZodArray",(e,t)=>{j.init(e,t);let r=H.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),n;n.value=r?r.alloc(e,n,Array(s.length),o):Array(s.length);let i=[],a=o?.abortEarly;for(let c=0;c<s.length;c++){let u=s[c],l=t.element._zod.run({value:u,issues:[]},o);if(l instanceof Promise)i.push(l.then((p)=>sa(p,n,c)));else if(sa(l,n,c),a&&l.issues.length!==0&&we(l))break}if(i.length)return Promise.all(i).then(()=>n);return n}});function wr(e,t,r,n,o,s){let i=r in n,a=s==="optional";if(!i&&a&&o==="optional")return;if(e.issues.length){if(o!==void 0&&a&&!i)return;t.issues.push(...De(r,e.issues))}if(!i&&o===void 0){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(i||o==="defaulted"&&!a)t.value[r]=void 0}else t.value[r]=e.value}var jf=[];function Ka(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:jf,o=n.length?[...t,...n]:t;for(let i of o)if(!e.shape?.[i]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${String(i)}": expected a Zod schema`);let s=Hs(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function Ja(e,t,r,n,o,s,i){let a=[],c=o.keySet,u=o.catchall._zod,l=u.def.type,{optin:p,optout:d}=u,f=0;for(let m in t){if(i&&r.issues.length!==f){if(we(r,f))break;f=r.issues.length}if(c.has(m))continue;if(m==="__proto__"){if(l==="never")a.push(m);continue}if(l==="never"){a.push(m);continue}let g=u.run({value:t[m],issues:[]},n);if(g instanceof Promise)e.push(g.then((x)=>wr(x,r,m,t,p,d)));else wr(g,r,m,t,p,d)}if(a.length)r.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:s,continue:!0});if(!e.length)return r;return Promise.all(e).then(()=>r)}var Lf=h("$ZodObject",(e,t)=>{j.init(e,t);let r=Object.getOwnPropertyDescriptor(t,"shape"),n=r?.get?r.get.raw:t.shape??{};if(n){let u=()=>{let l={...n};return Object.defineProperty(t,"shape",{value:l}),u.raw=l,l};u.raw=n,Object.defineProperty(t,"shape",{get:u})}let o=sr(()=>Ka(t));T(e,"propValues",(u)=>{let l=u.def.shape,p={};for(let d in l){let f=l[d]._zod;if(f.values){if(!Object.prototype.hasOwnProperty.call(p,d))fe(p,d,new Set);for(let m of f.values)p[d].add(m);if(f.optin!==void 0)p[d].add(void 0)}}return p});let s=$t,i=t.catchall,a,c=H.memoizer;c?.attach(e),e._zod.parse=(u,l)=>{a??(a=o.value);let p=u.value;if(!s(p))return u.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),u;u.value=c?c.alloc(e,u,{},l):{};let d=[],f=a.shape,m=l?.abortEarly,g=u.issues.length;for(let x of a.allKeys){if(m&&u.issues.length!==g){if(we(u,g))break;g=u.issues.length}if(x==="__proto__")continue;let _=f[x],b=_._zod.optin,k=_._zod.optout,z=_._zod.run({value:p[x],issues:[]},l);if(z instanceof Promise)d.push(z.then((y)=>wr(y,u,x,p,b,k)));else wr(z,u,x,p,b,k)}if(!i)return d.length?Promise.all(d).then(()=>u):u;return Ja(d,p,u,l,o.value,e,m===!0)}}),Ha=h("$ZodObjectJIT",(e,t)=>{Lf.init(e,t);let r=e._zod.parse,n=sr(()=>Ka(t)),o=H.memoizer,s=(f)=>{let m=n.value,g=m.symbolKeys,x=new qn(["payload","ctx"],{shape:f,inst:e,memo:o,syms:g}),_=(y)=>`shape[${y}]._zod.run({ value: input[${y}], issues: [] }, ctx)`,b=(y,S)=>`
37
+ };`)(...Object.values(this.closed))}}var yc={major:4,minor:6,patch:5};var F=h("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=yc;let n=e._zod.def.checks,o=e._zod.traits.has("$ZodCheck")?[e,...n??[]]:n?.length?[...n]:[];for(let s of o)for(let i of s._zod.onattach)i(e);if(o.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let s=(a,c,u)=>{if(a.memo)return a;let l=Ee(a),p;for(let d of c){if(d._zod.def.when){if(fa(a))continue;if(!d._zod.def.when(a))continue}else if(l)continue;let f=a.issues.length,m=d._zod.check(a);if(m instanceof Promise&&u?.async===!1)throw new Ie;if(p||m instanceof Promise)p=(p??Promise.resolve()).then(async()=>{if(await m,a.issues.length===f)return;if(ho(a.issues,f,e),!l)l=Ee(a,f)});else{if(a.issues.length===f)continue;if(ho(a.issues,f,e),!l)l=Ee(a,f)}}if(p)return p.then(()=>a);return a},i=(a,c,u)=>{if(Ee(a))return a.aborted=!0,a;let l=s(c,o,u);if(l instanceof Promise){if(u.async===!1)throw new Ie;return l.then((p)=>e._zod.parse(p,u))}return e._zod.parse(l,u)};e._zod.run=(a,c)=>{if(c.skipChecks)return e._zod.parse(a,c);if(c.direction==="backward"){let l=e._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});if(l instanceof Promise)return l.then((p)=>i(p,a,c));return i(l,a,c)}let u=e._zod.parse(a,c);if(u instanceof Promise){if(c.async===!1)throw new Ie;return u.then((l)=>s(l,o,c))}return s(u,o,c)}}},{get "~standard"(){return Tr(this,"~standard",To(this))},set "~standard"(e){Ue(this,"~standard",e)}}),Cc=(e,t)=>e.issues.length?{issues:e.issues.map((r)=>Ce(r,t,Q()))}:{value:e.value};async function rh(e,t){let r={async:!0};return Cc(await e._zod.run({value:t,issues:[]},r),r)}function To(e){return{validate:(t)=>{let r={async:!1};try{let n=e._zod.run({value:t,issues:[]},r);if(!(n instanceof Promise))return Cc(n,r)}catch(n){}return rh(e,t)},vendor:"zod",version:1}}var Ur=h("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=t.pattern??tc,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch(o){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),L=h("$ZodStringFormat",(e,t)=>{Wt.init(e,t),Ur.init(e,t)}),Ic=h("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Fa),L.init(e,t)}),Tc=h("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=So(n))}else t.pattern??(t.pattern=So());L.init(e,t)}),Oc=h("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Ua),L.init(e,t)}),Ac=1,Nr=2;function jc(e){try{if(typeof URL<"u"&&typeof URL.canParse==="function")return URL.canParse(e);return new URL(e),!0}catch{return!1}}function nh(e,t){if(!("normalize"in t)&&!("hostname"in t)&&!("protocol"in t))return jc(e)||Nr;return oh(e,t)}function oh(e,t){if(!t.normalize&&t.protocol?.source===Ha.source&&!/^https?:\/\//i.test(e))return Ac;try{if(typeof URL<"u"){let r=URL;if(typeof r.parse==="function")return r.parse(e)??Nr}return new URL(e)}catch{return Nr}}var sh=/[\t\n\r]/g;function _c(e){return e.replace(sh,"")}function ih(e,t){return t.lastIndex=0,t.test(e.hostname)}function ah(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol)}var Rc=h("$ZodURL",(e,t)=>{L.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim(),o=nh(n,t);if(o===Ac){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}if(o===Nr){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort});return}if(o===!0){r.value=_c(n);return}if(t.hostname&&!ih(o,t.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort});if(t.protocol&&!ah(o,t.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort});r.value=t.normalize?o.href:_c(n);return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),Zc=h("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Ma()),L.init(e,t)}),Lc=h("$ZodNanoID",(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??(t.pattern=t.length===void 0?La:Da(t.length)),L.init(e,t)}),Dc=h("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Oa),L.init(e,t)}),Nc=h("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Aa),L.init(e,t)}),Fc=h("$ZodULID",(e,t)=>{t.pattern??(t.pattern=ja),L.init(e,t)}),Uc=h("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Ra),L.init(e,t)}),Mc=h("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Za),L.init(e,t)}),Bc=h("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=ec(t)),L.init(e,t)}),Gc=h("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Xa),L.init(e,t)}),Vc=h("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Qa(t)),L.init(e,t)}),Wc=h("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Na),L.init(e,t)}),Kc=h("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Ba),L.init(e,t)}),ch=/^[0-9a-fA-F:.]+$/;function Jc(e){if(!ch.test(e))return!1;return jc(`http://[${e}]`)}var Hc=h("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Ga),L.init(e,t),e._zod.check=(r)=>{if(!Jc(r.value))r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}});var qc=h("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Va),L.init(e,t)});function uh(e){let t=e.split("/");if(t.length!==2)return!1;let[r,n]=t;if(!n)return!1;let o=Number(n);if(`${o}`!==n)return!1;if(o<0||o>128)return!1;return Jc(r)}var Yc=h("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Wa),L.init(e,t),e._zod.check=(r)=>{if(!uh(r.value))r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}});function Xc(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Oo=/^[0-9a-zA-Z+/]*={0,2}$/,Qc=h("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Oo),L.init(e,t),e._zod.check=(r)=>{if(Xc(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}}),Mr=/^[A-Za-z0-9_-]*$/;function lh(e){if(!Mr.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Xc(r)}var eu=h("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Mr),L.init(e,t),e._zod.check=(r)=>{if(lh(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),tu=h("$ZodE164",(e,t)=>{t.pattern??(t.pattern=qa),L.init(e,t)});function ph(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var ru=h("$ZodJWT",(e,t)=>{L.init(e,t),e._zod.check=(r)=>{if(ph(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var Ao=h("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=Vt,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch(i){}let o=r.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?String(o):void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...s?{received:s}:{}}),r}}),nu=h("$ZodNumberFormat",(e,t)=>{ic.init(e,t),Ao.init(e,t)}),ou=h("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=rc,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(s){}let o=r.value;if(typeof o==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}});var su=h("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=(r)=>r}),iu=h("$ZodNever",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function bc(e,t,r){if(e.issues.length)t.issues.push(...We(r,e.issues));t.value[r]=e.value}var au=h("$ZodArray",(e,t)=>{F.init(e,t);let r=X.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),n;n.value=r?r.alloc(e,n,Array(s.length),o):Array(s.length);let i=[],a=o?.abortEarly;for(let c=0;c<s.length;c++){let u=s[c],l=t.element._zod.run({value:u,issues:[]},o);if(l instanceof Promise)i.push(l.then((p)=>bc(p,n,c)));else if(bc(l,n,c),a&&l.issues.length!==0&&Ee(l))break}if(i.length)return Promise.all(i).then(()=>n);return n}});function Fr(e,t,r,n,o,s){let i=r in n,a=s==="optional";if(!i&&a&&o==="optional")return;if(e.issues.length){if(o!==void 0&&a&&!i)return;t.issues.push(...We(r,e.issues))}if(!i&&o===void 0){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(i||o==="defaulted"&&!a)t.value[r]=void 0}else t.value[r]=e.value}var dh=[];function cu(e){let t=Object.keys(e.shape),r=Object.getOwnPropertySymbols(e.shape),n=r.length?r:dh,o=n.length?[...t,...n]:t;for(let i of o)if(!e.shape?.[i]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${String(i)}": expected a Zod schema`);let s=la(e.shape);return{...e,allKeys:o,symbolKeys:n,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(s)}}function uu(e,t,r,n,o,s,i){let a=[],c=o.keySet,u=o.catchall._zod,l=u.def.type,{optin:p,optout:d}=u,f=0;for(let m in t){if(i&&r.issues.length!==f){if(Ee(r,f))break;f=r.issues.length}if(c.has(m))continue;if(m==="__proto__"){if(l==="never")a.push(m);continue}if(l==="never"){a.push(m);continue}let g=u.run({value:t[m],issues:[]},n);if(g instanceof Promise)e.push(g.then((x)=>Fr(x,r,m,t,p,d)));else Fr(g,r,m,t,p,d)}if(a.length)r.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:s,continue:!0});if(!e.length)return r;return Promise.all(e).then(()=>r)}var fh=h("$ZodObject",(e,t)=>{F.init(e,t);let r=Object.getOwnPropertyDescriptor(t,"shape"),n=r?.get?r.get.raw:t.shape??{};if(n){let u=()=>{let l={...n};return Object.defineProperty(t,"shape",{value:l}),u.raw=l,l};u.raw=n,Object.defineProperty(t,"shape",{get:u})}let o=Sr(()=>cu(t));j(e,"propValues",(u)=>{let l=u.def.shape,p={};for(let d in l){let f=l[d]._zod;if(f.values){if(!Object.prototype.hasOwnProperty.call(p,d))ve(p,d,new Set);for(let m of f.values)p[d].add(m);if(f.optin!==void 0)p[d].add(void 0)}}return p});let s=Ft,i=t.catchall,a,c=X.memoizer;c?.attach(e),e._zod.parse=(u,l)=>{a??(a=o.value);let p=u.value;if(!s(p))return u.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),u;u.value=c?c.alloc(e,u,{},l):{};let d=[],f=a.shape,m=l?.abortEarly,g=u.issues.length;for(let x of a.allKeys){if(m&&u.issues.length!==g){if(Ee(u,g))break;g=u.issues.length}if(x==="__proto__")continue;let _=f[x],w=_._zod.optin,P=_._zod.optout,C=_._zod.run({value:p[x],issues:[]},l);if(C instanceof Promise)d.push(C.then((y)=>Fr(y,u,x,p,w,P)));else Fr(C,u,x,p,w,P)}if(!i)return d.length?Promise.all(d).then(()=>u):u;return uu(d,p,u,l,o.value,e,m===!0)}}),lu=h("$ZodObjectJIT",(e,t)=>{fh.init(e,t);let r=e._zod.parse,n=Sr(()=>cu(t)),o=X.memoizer,s=(f)=>{let m=n.value,g=m.symbolKeys,x=new Co(["payload","ctx"],{shape:f,inst:e,memo:o,syms:g}),_=(y)=>`shape[${y}]._zod.run({ value: input[${y}], issues: [] }, ctx)`,w=(y,S)=>`
8
38
  let ${y}_ab = false;
9
39
  for (let i = 0; i < ${y}.issues.length; i++) {
10
40
  const iss = ${y}.issues[i];
@@ -15,27 +45,27 @@ ${t.join(`
15
45
  if (${y}_ab && ctx && ctx.abortEarly) {
16
46
  payload.value = newResult;
17
47
  return payload;
18
- }`;x.write("const input = payload.value;");let k=Object.create(null),z=0;for(let y of m.allKeys)k[y]=`key_${z++}`;x.write(o?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};");for(let y of m.allKeys){if(y==="__proto__")continue;let S=k[y],E=typeof y==="symbol"?`syms[${g.indexOf(y)}]`:Gs(y),G=`${E} in input`,P=f[y],C=P?._zod?.optin,U=C!==void 0,W=P?._zod?.optout==="optional";if(x.write(`const ${S} = ${_(E)};`),U&&W){let de=C==="optional"?`${S}_present`:`${S}.value !== undefined || ${S}_present`;x.write(`
19
- const ${S}_present = ${G};
48
+ }`;x.write("const input = payload.value;");let P=Object.create(null),C=0;for(let y of m.allKeys)P[y]=`key_${C++}`;x.write(o?"const newResult = memo.alloc(inst, payload, {}, ctx);":"const newResult = {};");for(let y of m.allKeys){if(y==="__proto__")continue;let S=P[y],I=typeof y==="symbol"?`syms[${g.indexOf(y)}]`:ia(y),W=`${I} in input`,E=f[y],T=E?._zod?.optin,B=T!==void 0,K=E?._zod?.optout==="optional";if(x.write(`const ${S} = ${_(I)};`),B&&K){let ge=T==="optional"?`${S}_present`:`${S}.value !== undefined || ${S}_present`;x.write(`
49
+ const ${S}_present = ${W};
20
50
  if (!${S}.issues.length || ${S}_present) {
21
- if (${S}.issues.length) {${b(S,E)}
51
+ if (${S}.issues.length) {${w(S,I)}
22
52
  }
23
53
 
24
- if (${de}) {
25
- newResult[${E}] = ${S}.value;
54
+ if (${ge}) {
55
+ newResult[${I}] = ${S}.value;
26
56
  }
27
57
  }
28
58
 
29
- `)}else if(!U)x.write(`
30
- const ${S}_present = ${G};
31
- if (${S}.issues.length) {${b(S,E)}
59
+ `)}else if(!B)x.write(`
60
+ const ${S}_present = ${W};
61
+ if (${S}.issues.length) {${w(S,I)}
32
62
  }
33
63
  if (!${S}_present && !${S}.issues.length) {
34
64
  payload.issues.push({
35
65
  code: "invalid_type",
36
66
  expected: "nonoptional",
37
67
  input: undefined,
38
- path: [${E}]
68
+ path: [${I}]
39
69
  });
40
70
  if (ctx && ctx.abortEarly) {
41
71
  payload.value = newResult;
@@ -44,56 +74,26 @@ ${t.join(`
44
74
  }
45
75
 
46
76
  if (${S}_present) {
47
- newResult[${E}] = ${S}.value;
77
+ newResult[${I}] = ${S}.value;
48
78
  }
49
79
 
50
80
  `);else if(x.write(`
51
- if (${S}.issues.length) {${b(S,E)}
81
+ if (${S}.issues.length) {${w(S,I)}
52
82
  }
53
- `),C==="defaulted")x.write(`newResult[${E}] = ${S}.value;`);else x.write(`
54
- if (${S}.value !== undefined || ${G}) {
55
- newResult[${E}] = ${S}.value;
83
+ `),T==="defaulted")x.write(`newResult[${I}] = ${S}.value;`);else x.write(`
84
+ if (${S}.value !== undefined || ${W}) {
85
+ newResult[${I}] = ${S}.value;
56
86
  }
57
- `)}return x.write("payload.value = newResult;"),x.write("return payload;"),x.compile()},i,a=$t,c=!H.jitless,l=c&&Ks.value,p=t.catchall,d;e._zod.parse=(f,m)=>{d??(d=n.value);let g=f.value;if(!a(g))return f.issues.push({expected:"object",code:"invalid_type",input:g,inst:e}),f;if(c&&l&&m?.async===!1&&m.jitless!==!0){if(!i)i=s(t.shape);if(f=i(f,m),!p)return f;return Ja([],g,f,m,d,e,m?.abortEarly===!0)}return r(f,m)}});function ia(e,t,r,n){for(let s of e)if(s.issues.length===0)return t.value=s.value,t;let o=e.filter((s)=>!we(s));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((s)=>s.issues.map((i)=>ve(i,n,q())))}),t}var qa=h("$ZodUnion",(e,t)=>{j.init(e,t),T(e,"optin",(n)=>n.def.options.some((o)=>o._zod.optin==="defaulted")?"defaulted":n.def.options.some((o)=>o._zod.optin!==void 0)?"optional":void 0),T(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),T(e,"values",(n)=>{if(n.def.options.every((o)=>o._zod.values))return new Set(n.def.options.flatMap((o)=>Array.from(o._zod.values)));return}),T(e,"pattern",(n)=>{if(n.def.options.every((o)=>o._zod.pattern)){let o=n.def.options.map((s)=>s._zod.pattern);return new RegExp(`^(${o.map((s)=>ir(s.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(n,o)=>{if(r)return r(n,o);let s=!1,i=[];for(let a of t.options){let c=a._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)i.push(c),s=!0;else{if(c.issues.length===0)return c;i.push(c)}}if(!s)return ia(i,n,e,o);return Promise.all(i).then((a)=>ia(a,n,e,o))}});var Ya=h("$ZodIntersection",(e,t)=>{j.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,s=t.left._zod.run({value:o,issues:[]},n),i=t.right._zod.run({value:o,issues:[]},n);if(s instanceof Promise||i instanceof Promise)return Promise.all([s,i]).then(([c,u])=>aa(r,c,u));return aa(r,s,i)}});function Yn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Ge(e)&&Ge(t)){let r=Object.keys(t),n=Object.keys(e).filter((s)=>r.indexOf(s)!==-1),o={...e,...t};if(Object.prototype.hasOwnProperty.call(o,"__proto__"))delete o.__proto__;for(let s of n){if(s==="__proto__")continue;let i=Yn(e[s],t[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],s=t[n],i=Yn(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function aa(e,t,r){let n=new Map,o,s=new Map,i=(u,l)=>{let p;if(u.code==="unrecognized_keys"&&!u.path?.length)o??(o=u),p=u.keys;else if(u.code==="invalid_key"&&u.origin==="record"&&u.path?.length===1){let d=String(u.path[0]);if(!s.has(d))s.set(d,u);p=[d]}else return!1;for(let d of p){if(!n.has(d))n.set(d,{});n.get(d)[l]=!0}return!0};for(let u of t.issues)if(!i(u,"l"))e.issues.push(u);for(let u of r.issues)if(!i(u,"r"))e.issues.push(u);let a=[...n].filter(([,u])=>u.l&&u.r).map(([u])=>u);if(a.length){let u=o?a.filter((l)=>o.keys.includes(l)):[];if(u.length)e.issues.push({...o,keys:u});for(let l of a)if(!u.includes(l)&&s.has(l))e.issues.push(s.get(l))}let c=Yn(t.value,r.value);if(!c.valid){if(we(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var Xa=h("$ZodRecord",(e,t)=>{j.init(e,t);let r=H.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!Ge(s))return n.issues.push({expected:"record",code:"invalid_type",input:s,inst:e}),n;let i=[],a=t.keyType._zod.values;if(a&&!t.partial){n.value=r?r.alloc(e,n,{},o):{};let c=new Set;for(let l of a)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){if(c.add(typeof l==="number"?l.toString():l),l==="__proto__")continue;let p=t.keyType._zod.run({value:l,issues:[]},o);if(p instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(p.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:p.issues.map((m)=>ve(m,o,q())),input:l,path:[l],inst:e});continue}let d=p.value;if(d==="__proto__")continue;let f=t.valueType._zod.run({value:s[l],issues:[]},o);if(f instanceof Promise)i.push(f.then((m)=>{if(m.issues.length)n.issues.push(...De(l,m.issues));n.value[d]=m.value}));else{if(f.issues.length)n.issues.push(...De(l,f.issues));n.value[d]=f.value}}let u;for(let l in s)if(!c.has(l))if(t.mode==="loose"){if(l==="__proto__")continue;n.value[l]=s[l]}else u=u??[],u.push(l);if(u&&u.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:u,continue:!0})}else{n.value=r?r.alloc(e,n,{},o):{};let c;for(let u of Reflect.ownKeys(s)){if(u==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(s,u))continue;let l=t.keyType._zod.run({value:u,issues:[]},o);if(l instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof u==="string"&&zt.test(u)&&l.issues.length){let m=t.keyType._zod.run({value:Number(u),issues:[]},o);if(m instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(m.issues.length===0)l=m}if(l.issues.length){if(t.mode==="loose")n.value[u]=s[u];else if(a)c=c??[],c.push(u);else n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map((m)=>ve(m,o,q())),input:u,path:[u],inst:e});continue}let d=l.value;if(d==="__proto__")continue;let f=t.valueType._zod.run({value:s[u],issues:[]},o);if(f instanceof Promise)i.push(f.then((m)=>{if(m.issues.length)n.issues.push(...De(u,m.issues));n.value[d]=m.value}));else{if(f.issues.length)n.issues.push(...De(u,f.issues));n.value[d]=f.value}}if(c&&c.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:c,continue:!0})}if(i.length)return Promise.all(i).then(()=>n);return n}});var Qa=h("$ZodEnum",(e,t)=>{j.init(e,t);let r=St(t.entries),n=new Set(r);e._zod.values=n,T(e,"pattern",(o)=>{let s=St(o.def.entries).filter((i)=>Js.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>ot(i.toString())).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(o,s)=>{let i=o.value;if(n.has(i))return o;return o.issues.push({code:"invalid_value",values:r,input:i,inst:e}),o}});var ec=h("$ZodTransform",(e,t)=>{j.init(e,t),e._zod.optin="optional",H.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Pt(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then((i)=>(r.value=i,r));if(o instanceof Promise)throw new $e;return r.value=o,r}});function ca(e,t){return e.value=t.issues.length?void 0:t.value,e}var to=h("$ZodOptional",(e,t)=>{j.init(e,t),T(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",T(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),T(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${ir(n.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(r.value===void 0){if(t.innerType._zod.optin!=="defaulted")return r;let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>ca(r,s));return ca(r,o)}return t.innerType._zod.run(r,n)}}),tc=h("$ZodExactOptional",(e,t)=>{to.init(e,t),T(e,"values",(r)=>r.def.innerType._zod.values),T(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),rc=h("$ZodNullable",(e,t)=>{j.init(e,t),T(e,"optin",(r)=>r.def.innerType._zod.optin),T(e,"optout",(r)=>r.def.innerType._zod.optout),T(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${ir(n.source)}|null)$`):void 0}),T(e,"values",(r)=>r.def.innerType._zod.values?new Set([...r.def.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),nc=h("$ZodDefault",(e,t)=>{j.init(e,t),e._zod.optin="defaulted",T(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>ua(s,t));return ua(o,t)}});function ua(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var oc=h("$ZodPrefault",(e,t)=>{j.init(e,t),e._zod.optin="defaulted",T(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),sc=h("$ZodNonOptional",(e,t)=>{j.init(e,t),T(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>la(s,e));return la(o,e)}});function la(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}function pa(e,t,r,n){if(!t.issues.length){if(e.value=t.value,t.memo)e.memo=!0;return e}return e.value=r.catchValue({...t,value:e.value,error:{issues:t.issues.map((o)=>ve(o,n,q()))},input:e.value}),e}var ic=h("$ZodCatch",(e,t)=>{j.init(e,t),T(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),T(e,"optout",(r)=>r.def.innerType._zod.optout),T(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>pa(r,s,t,n));return pa(r,o,t,n)}});var ac=h("$ZodPipe",(e,t)=>{j.init(e,t),T(e,"values",(r)=>r.def.in._zod.values),T(e,"optin",(r)=>r.def.in._zod.optin),T(e,"optout",(r)=>r.def.out._zod.optout),T(e,"propValues",(r)=>r.def.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=t.out._zod.run(r,n);if(s instanceof Promise)return s.then((i)=>_r(i,t.in,n));return _r(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>_r(s,t.out,n));return _r(o,t.out,n)}});function _r(e,t,r){if(e.issues.some((n)=>n.code!=="unrecognized_keys"))return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues},r)}var cc=h("$ZodReadonly",(e,t)=>{j.init(e,t),T(e,"propValues",(r)=>r.def.innerType._zod.propValues),T(e,"values",(r)=>r.def.innerType._zod.values),T(e,"optin",(r)=>r.def.innerType?._zod?.optin),T(e,"optout",(r)=>r.def.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(da);return da(o)}});function da(e){if(!e.memo)e.value=Object.freeze(e.value);return e}var uc=h("$ZodCustom",(e,t)=>{K.init(e,t),j.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=(r)=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then((s)=>fa(s,r,n,e));fa(o,r,n,e);return}});function fa(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};if(n._zod.def.params)o.params=n._zod.def.params;t.issues.push(We(o))}}class pc extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var no="~memo",lc=[];function dc(e){return e!==null&&typeof e==="object"}function ro(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var fc=new WeakMap,Ct=0,Pr=1,Ot=2;function zr(e,t,r){let n=fc.get(e);if(n!==void 0)return n?Ot:Ct;if(t.has(e))return Ot;t.add(e);let o=Ct,s=(l)=>{if(o!==Ot&&l?._zod){let p=zr(l,t,r);if(p>o)o=p}},i=(l,p)=>{let d=Ct;for(let f of Reflect.ownKeys(l)){let m=Object.getOwnPropertyDescriptor(l,f);if(p&&!m.enumerable)continue;let g=m.get?Pr:m.value?._zod?zr(m.value,t,r):Ct;if(g>d)d=g}return d},a=(l)=>{if(l>o)o=l},c=e._zod.def,u=c.type;switch(u){case"object":{let l=ar(c);a(l?i(l,!0):Pr),s(c.catchall);break}case"array":s(c.element);break;case"tuple":for(let l of c.items)s(l);s(c.rest);break;case"record":case"map":s(c.keyType),s(c.valueType);break;case"set":s(c.valueType);break;case"union":for(let l of c.options)s(l);break;case"intersection":s(c.left),s(c.right);break;case"optional":case"nullable":case"default":case"prefault":case"catch":case"readonly":case"nonoptional":case"promise":case"success":s(c.innerType);break;case"pipe":s(c.in),s(c.out);break;case"function":s(c.input),s(c.output);break;case"lazy":{let l=c._cachedInner??(r?e._zod.innerType:void 0);a(l?zr(l,t,!1):Pr);break}case"template_literal":case"string":case"number":case"int":case"boolean":case"bigint":case"symbol":case"undefined":case"null":case"void":case"never":case"any":case"unknown":case"date":case"nan":case"enum":case"literal":case"file":case"transform":case"custom":break;default:for(let l in c){let p=Object.getOwnPropertyDescriptor(c,l);if(!p||p.get)continue;let d=p.value;if(!d||typeof d!=="object")continue;if(d._zod)s(d);else if(Array.isArray(d))for(let f of d)s(f)}}return t.delete(e),Df(e,o)}function Df(e,t){if(t!==Pr)fc.set(e,t===Ot);return t}function Nf(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Sr,kr=[],Ff={alloc(e,t,r){let n=Sr;if(!n)return r;Sr=void 0;let o={value:r,issues:null};return n.set(t.value,o),kr.push(o),r},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let r=e._zod.parse,n=(o,s)=>{if(s.direction!=="backward"&&Uf(s,o.value))throw new pc;return r(o,s)};if(e._zod.parse=n,e._zod.run===r)e._zod.run=n})},attach(e){var t;let r,n=!1,o,s;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let i=e._zod.parse,a=(c,u)=>{if(r===void 0){let _=zr(e,new Set,!1);if(_===Ct){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(_===Ot||n)r=!0;else n=!0}let l=c.value;if(!dc(l))return i(c,u);let p=u[no];if(!p)p={buckets:new WeakMap,backEdges:void 0},u[no]=p;let d;if(o===u)d=s;else d=Nf(p,e),o=u,s=d;let f=d.get(l);if(f){if(c.value=f.value,f.issues){if(f.issues.length)c.issues.push(...ro(f.issues))}else c.memo=!0,p.backEdges??(p.backEdges=new WeakSet),p.backEdges.add(f.value);return c}Sr=d;let m=kr.length,g=i(c,u);Sr=void 0;let x=kr.length>m?kr.pop():void 0;if(g instanceof Promise)return g.then((_)=>{if(x)x.issues=_.issues.length?ro(_.issues):lc;return _});if(x)x.issues=g.issues.length?ro(g.issues):lc;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function oo(){return Ff}function Uf(e,t){let r=e[no]?.backEdges;return r!==void 0&&dc(t)&&r.has(t)}var Mf=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(s){return e[s]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",currency_code:"currency code",credit_card:"credit card number",iban:"IBAN",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};function o(s,i){if(s==="number"&&typeof i==="number"&&!Number.isFinite(i))return String(i);return n[s]??s}return(s)=>{switch(s.code){case"invalid_type":{let i=o(s.expected),a=Qs(s.input),c=o(a,s.input);return`Invalid input: expected ${i}, received ${c}`}case"invalid_value":if(s.values.length===1)return`Invalid input: expected ${Rn(s.values[0])}`;return`Invalid option: expected one of ${Tn(s.values,"|")}`;case"too_big":{let i=s.exact?"exactly ":s.inclusive?"<=":"<",a=t(s.origin);if(a)return`Too big: expected ${s.origin??"value"} to have ${i}${s.maximum.toString()} ${a.unit??"elements"}`;return`Too big: expected ${s.origin??"value"} to be ${i}${s.maximum.toString()}`}case"too_small":{let i=s.exact?"exactly ":s.inclusive?">=":">",a=t(s.origin);if(a)return`Too small: expected ${s.origin} to have ${i}${s.minimum.toString()} ${a.unit}`;return`Too small: expected ${s.origin} to be ${i}${s.minimum.toString()}`}case"invalid_format":{let i=s;if(i.format==="starts_with")return`Invalid string: must start with "${i.prefix}"`;if(i.format==="ends_with")return`Invalid string: must end with "${i.suffix}"`;if(i.format==="includes")return`Invalid string: must include "${i.includes}"`;if(i.format==="regex")return`Invalid string: must match pattern ${i.pattern}`;return`Invalid ${r[i.format]??s.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${s.divisor}`;case"unrecognized_keys":return`Unrecognized key${s.keys.length>1?"s":""}: ${Tn(s.keys,", ")}`;case"invalid_key":return`Invalid key in ${s.origin}`;case"invalid_union":if(s.options&&Array.isArray(s.options)&&s.options.length>0)return`Invalid discriminator value. Expected ${s.options.map((a)=>`'${a}'`).join(" | ")}`;if(s.inclusive===!1)return"Invalid input: more than one option matched";return"Invalid input";case"invalid_element":return`Invalid value in ${s.origin}`;default:return"Invalid input"}}};function so(){return{localeError:Mf()}}var mc;class hc{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let n={...r,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function gc(){return new hc}(mc=globalThis).__zod_globalRegistry??(mc.__zod_globalRegistry=gc());var Ne=globalThis.__zod_globalRegistry;function xc(e){if(e.checks)e.checks=[...e.checks];return e}function yc(e,t){return new e(xc({type:"string",...w(t)}))}function _c(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...w(t)})}function bc(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...w(t)})}function wc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...w(t)})}function vc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...w(t)})}function $c(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...w(t)})}function Sc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...w(t)})}function io(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...w(t)})}function kc(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...w(t)})}function Pc(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...w(t)})}function zc(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...w(t)})}function Ec(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...w(t)})}function Cc(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...w(t)})}function Oc(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...w(t)})}function Tc(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...w(t)})}function Ic(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...w(t)})}function Ac(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...w(t)})}function Rc(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...w(t)})}function Zc(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...w(t)})}function jc(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...w(t)})}function Lc(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...w(t)})}function Dc(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...w(t)})}function Nc(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...w(t)})}function Er(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...w(t)})}function Cr(e,t){return new e({type:"string",format:"date",check:"string_format",...w(t)})}function Or(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...w(t)})}function Tr(e,t){return new e({type:"string",format:"duration",check:"string_format",...w(t)})}function Fc(e,t){return new e(xc({type:"number",checks:[],...w(t)}))}function Uc(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...w(t)})}function Mc(e,t){return new e({type:"boolean",...w(t)})}function Bc(e){return new e({type:"unknown"})}function Vc(e,t){return new e({type:"never",...w(t)})}function Ir(e,t){return new Jn({check:"less_than",...w(t),value:e,inclusive:!1})}function Tt(e,t){return new Jn({check:"less_than",...w(t),value:e,inclusive:!0})}function Ar(e,t){return new Hn({check:"greater_than",...w(t),value:e,inclusive:!1})}function It(e,t){return new Hn({check:"greater_than",...w(t),value:e,inclusive:!0})}function Rr(e,t){return new Vi({check:"multiple_of",...w(t),value:e})}function Zr(e,t){return new Wi({check:"max_length",...w(t),maximum:e})}function at(e,t){return new Ki({check:"min_length",...w(t),minimum:e})}function jr(e,t){return new Ji({check:"length_equals",...w(t),length:e})}function ao(e,t){return new Hi({check:"string_format",format:"regex",...w(t),pattern:e})}function co(e){return new qi({check:"string_format",format:"lowercase",...w(e)})}function uo(e){return new Yi({check:"string_format",format:"uppercase",...w(e)})}function lo(e,t){return new Xi({check:"string_format",format:"includes",...w(t),includes:e})}function po(e,t){return new Qi({check:"string_format",format:"starts_with",...w(t),prefix:e})}function fo(e,t){return new ea({check:"string_format",format:"ends_with",...w(t),suffix:e})}function Fe(e){return new ta({check:"overwrite",tx:e})}function mo(e){return Fe((t)=>t.normalize(e))}function ho(){return Fe((e)=>e.trim())}function go(){return Fe((e)=>e.toLowerCase())}function xo(){return Fe((e)=>e.toUpperCase())}function yo(){return Fe((e)=>Ws(e))}function Gc(e,t,r){return new e({type:"array",element:t,...w(r)})}function Wc(e,t,r){return new e({type:"custom",check:"custom",fn:t,...w(r)})}function Kc(e,t){let r=Bf((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(We(o,n.value,r._zod.def));else{let s=o;if(s.fatal)s.continue=!1;if(s.code??(s.code="custom"),!("input"in s))s.input=n.value;s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(We(s))}},e(n.value,n)),t);return r}function Bf(e,t){let r=new K({check:"custom",...w(t)});return r._zod.check=e,r}function At(e,...t){for(let r of t)for(let n of Reflect.ownKeys(r))if(Object.prototype.propertyIsEnumerable.call(r,n))fe(e,n,r[n]);return e}function bo(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??Ne,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??"ref",reused:e?.reused??"inline",intersections:[],deferred:[],external:e?.external??void 0}}function Ke(e,t,r,n,o){let s=typeof t.unrepresentable==="function"?t.unrepresentable({zodSchema:e,path:n.path,message:o}):t.unrepresentable;if(s==="any")return!1;if(s===void 0||s==="throw")throw Error(o);return Object.assign(r,s),!0}function M(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s=t.seen.get(e);if(s){if(s.count++,r.schemaPath.includes(e))s.cycle=r.path;return s.schema}let i={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,i),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let a=e._zod.toJSONSchema?.();if(a)i.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,i.schema,l);else{let d=i.schema,f=t.processors[o.type];if(!f)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);f(e,t,d,l)}let p=e._zod.parent;if(p){if(!i.ref)i.ref=p;M(p,t,l),t.seen.get(p).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)At(i.schema,c);if(t.io==="input"&&J(e))delete i.schema.examples,delete i.schema.default;if(t.io==="input"&&"_prefault"in i.schema)(n=i.schema).default??(n.default=i.schema._prefault);return delete i.schema._prefault,t.seen.get(e).schema}function Jc(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function wo(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");if(e.external&&e.sharedDefsExtractedFor===e.external)return;let n=new Map;for(let i of e.seen.entries()){let a=e.metadataRegistry.get(i[0])?.id;if(a){let c=n.get(a);if(c&&c!==i[0])throw Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,i[0])}}let o=(i)=>{let a=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let p=e.external.registry.get(i[0])?.id,d=e.external.uri??((m)=>m);if(p)return{ref:d(p)};let f=i[1].defId??i[1].schema.id??`schema${e.counter++}`;return i[1].defId=f,{defId:f,ref:`${d("__shared")}#/${a}/${Jc(f)}`}}let c="#",u=`${c}/${a}/`;if(i[1]===r&&!i[1].schema.id)return{ref:c};let l=i[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:u+Jc(l)}},s=(i)=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);if(a.def={...a.schema},u)a.defId=u;let l=a.schema;for(let p in l)delete l[p];l.$ref=c};if(e.cycles==="throw")for(let i of e.seen.entries()){let a=i[1];if(a.cycle)throw Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
58
-
59
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of e.seen.entries()){let a=i[1];if(t===i[0]){s(i);continue}if(e.external){let u=e.external.registry.get(i[0])?.id;if(t!==i[0]&&u){s(i);continue}}if(e.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1){if(e.reused==="ref")s(i)}}if(e.external)e.sharedDefsExtractedFor=e.external}function Yc(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let r=[];for(let n of t){if(!n||typeof n!=="object")return;Yc(n);let o=Object.keys(n);if(o.length!==1||o[0]!=="type")return;let s=n.type;for(let i of Array.isArray(s)?s:[s]){if(typeof i!=="string")return;if(!r.includes(i))r.push(i)}}delete e.anyOf,e.type=r.length===1?r[0]:r}var Xc=new Set(["type","properties","required","additionalProperties"]),Hc=["oneOf","anyOf"];function qc(e){let t=e.additionalProperties;if(t===void 0||t===!1||typeof t!=="object"||t===null)return null;return Object.keys(t).length?t:null}function _o(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!Xc.has(i))return null;t.push(s)}let r={},n=new Set;for(let s of t){for(let i in s.properties){if(Object.prototype.hasOwnProperty.call(r,i))continue;let a=[];for(let u of t){let l=u.properties?.[i]??qc(u);if(l===null||l===void 0)continue;if(!a.some((p)=>JSON.stringify(p)===JSON.stringify(l)))a.push(l)}let c=a.length===1?a[0]:_o(a)??{allOf:a};fe(r,i,c)}for(let i of s.required??[])n.add(i)}let o={type:"object",properties:r};if(n.size)o.required=[...n];if(t.every((s)=>s.additionalProperties===!1))o.additionalProperties=!1;else{let s=[];for(let i of t){let a=qc(i);if(a&&!s.some((c)=>JSON.stringify(c)===JSON.stringify(a)))s.push(a)}if(s.length===1)o.additionalProperties=s[0];else if(s.length>1)o.additionalProperties={allOf:s}}return o}function Vf(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of Xc)if(o in e)return;let r=t.filter((o)=>Hc.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=_o(t);else{let o=r[0],s=Hc.find((c)=>Array.isArray(o[c]));if(Object.keys(o).length!==1)return;let i=t.filter((c)=>c!==o),a=o[s].map((c)=>_o([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,At(e,n)}function vo(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=(a)=>{let c=e.seen.get(a);if(c.ref===null)return;let u=c.def??c.schema,l={...u},p=c.ref;if(c.ref=null,p){n(p);let f=e.seen.get(p),m=f.schema;if(m.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))u.allOf=u.allOf??[],u.allOf.push(m);else At(u,m);if(At(u,l),a._zod.parent===p)for(let x in u){if(x==="$ref"||x==="allOf")continue;if(!(x in l))delete u[x]}if(m.$ref&&f.def)for(let x in u){if(x==="$ref"||x==="allOf")continue;if(x in f.def&&JSON.stringify(u[x])===JSON.stringify(f.def[x]))delete u[x]}}let d=a._zod.parent;if(d&&d!==p){n(d);let f=e.seen.get(d);if(f?.schema.$ref){if(u.$ref=f.schema.$ref,f.def)for(let m in u){if(m==="$ref"||m==="allOf")continue;if(m in f.def&&JSON.stringify(u[m])===JSON.stringify(f.def[m]))delete u[m]}}}e.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let a of[...e.seen.entries()].reverse())n(a[0]);if(e.target!=="openapi-3.0")for(let a of e.seen.entries())Yc(a[1].def??a[1].schema);for(let a of e.deferred)a();if(e.intersections.length){let a=new Map;for(let c of e.seen.values())for(let u of[c.schema,c.def]){let l=u?.allOf;if(!Array.isArray(l))continue;let p=a.get(l);if(p)p.push(u);else a.set(l,[u])}for(let c of e.intersections)for(let u of a.get(c)??[])Vf(u)}}let o={};if(e.target==="draft-2020-12")o.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")o.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")o.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let a=e.external.registry.get(t)?.id;if(!a)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}At(o,r.defId?r.schema:r.def??r.schema);let s=e.metadataRegistry.get(t)?.id;if(s!==void 0&&o.id===s)delete o.id;let i=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let a of e.seen.entries()){let c=a[1];if(c.def&&c.defId){if(c.def.id===c.defId)delete c.def.id;fe(i,c.defId,c.def)}}if(e.external)e.sharedEmitDoneFor=e.external;if(e.external);else if(Object.keys(i).length>0)if(e.target==="draft-2020-12")o.$defs=i;else o.definitions=i;try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:Rt(t,"input",e.processors),output:Rt(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function J(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return J(n.element,r);if(n.type==="set")return J(n.valueType,r);if(n.type==="lazy")return J(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault"||n.type==="catch")return J(n.innerType,r);if(n.type==="intersection")return J(n.left,r)||J(n.right,r);if(n.type==="record"||n.type==="map")return J(n.keyType,r)||J(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return J(n.in,r)||J(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(J(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(J(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(J(o,r))return!0;if(n.rest&&J(n.rest,r))return!0;return!1}return!1}var Qc=(e,t={})=>(r)=>{let n=bo({...r,processors:t});return M(e,n),wo(n,e),vo(n,e)},Rt=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=bo({...o??{},target:s,io:t,processors:r});return M(e,i),wo(i,e),vo(i,e)};var ct=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},ut=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},eu=(e,t)=>{ct(e,"minimum",t),ut(e,"maximum",t)},ou=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},su=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},iu=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},au=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},tu=(e,t)=>ct(e,"minimum",t.minimum),ru=(e,t)=>ut(e,"maximum",t.maximum),nu=(e)=>(t,r)=>{au(t,r.format);let[n,o]=e[r.format];ct(t,"minimum",n),ut(t,"maximum",o)},Gf={greater_than:(e,t)=>ct(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>ut(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>ou(e,t.value),number_format:nu(cr),bigint_format:nu(Zn),min_length:tu,max_length:ru,length_equals:(e,t)=>eu(e,t.length),min_size:tu,max_size:ru,size_equals:(e,t)=>eu(e,t.size),string_format:(e,t)=>{if(au(e,t.format),t.pattern)su(e,t.pattern);if(t.format==="base64"||t.format==="base64url")e.contentEncoding=t.format;if(t.local||t.precision===-1)e.laxFormat=!0},mime_type:(e,t)=>iu(e,t.mime)};function ce(e){let t={},r=e._zod.def,n=e._zod.traits.has("$ZodCheck")?[e,...r.checks??[]]:r.checks??[];for(let s of n)Gf[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)ct(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)ct(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)ut(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)ut(t,"exclusiveMaximum",o.exclusiveMaximum);if(o.multipleOf!==void 0)ou(t,o.multipleOf);if(o.format!==void 0){if(t.format??(t.format=o.format),o.format.includes("int"))t.isInt=!0}if(o.mime)iu(t,o.mime);for(let s of o.patterns??[])su(t,s);return t}var Wf={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Kf=new Map([[Qn,Ii],[$r,Ai]]),cu=(e)=>Kf.get(e)??e,uu=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u,laxFormat:l}=ce(e);if(typeof s==="number")o.minLength=s;if(typeof i==="number")o.maxLength=i;if(a){if(o.format=Wf[a]??a,o.format==="")delete o.format;if(a==="time"||l)delete o.format}if(u)o.contentEncoding=u;if(c&&c.size>0){let p=[...c].map(cu);if(p.length===1)o.pattern=p[0].source;else if(p.length>1)o.allOf=[...p.map((d)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))]}},lu=(e,t,r,n)=>{let o=r,{minimum:s,maximum:i,multipleOf:a,exclusiveMaximum:c,exclusiveMinimum:u,isInt:l}=ce(e);o.type=l?"integer":"number";let p=typeof u==="number"&&u>=(s??Number.NEGATIVE_INFINITY),d=typeof c==="number"&&c<=(i??Number.POSITIVE_INFINITY),f=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(f)o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;else if(typeof s==="number")o.minimum=s;if(d)if(f)o.maximum=c,o.exclusiveMaximum=!0;else o.exclusiveMaximum=c;else if(typeof i==="number")o.maximum=i;if(a){let m=new Set;for(let _ of a)if(Number.isFinite(_)&&_!==0)m.add(Math.abs(_));else Ke(e,t,o,n,`A multipleOf divisor of ${_} cannot be represented in JSON Schema`);let[g,...x]=m;if(g!==void 0)o.multipleOf=g;if(x.length)o.allOf=[...o.allOf??[],...x.map((_)=>({multipleOf:_}))]}},pu=(e,t,r,n)=>{r.type="boolean"};var du=(e,t,r,n)=>{r.not={}};var fu=(e,t,r,n)=>{};var mu=(e,t,r,n)=>{let o=e._zod.def,s=St(o.entries);if(s.length===0){r.not={};return}if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";r.enum=s};var hu=(e,t,r,n)=>{Ke(e,t,r,n,"Custom types cannot be represented in JSON Schema")};var gu=(e,t,r,n)=>{Ke(e,t,r,n,"Transforms cannot be represented in JSON Schema")};var xu=(e,t,r,n)=>{let o=r,s=e._zod.def,{minimum:i,maximum:a}=ce(e);if(typeof i==="number")o.minItems=i;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=M(s.element,t,{...n,path:[...n.path,"items"]})};function Lr(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return Lr(t.out);if(t.type==="catch")return Lr(t.innerType);return e._zod.optin}var yu=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&Ke(e,t,o,n,"Symbol keys cannot be represented in JSON Schema"))return;o.type="object",o.properties={};for(let u in i)fe(o.properties,u,M(i[u],t,{...n,path:[...n.path,"properties",u]}));let c=[];for(let u of Object.keys(i)){let l=s.shape[u];if(t.io==="input"?Lr(l)===void 0:l._zod.optout===void 0)c.push(u)}if(c.length>0)o.required=c;if(s.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!s.catchall){if(t.io==="output")o.additionalProperties=!1}else if(s.catchall)o.additionalProperties=M(s.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},_u=(e,t,r,n)=>{let o=e._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>M(a,t,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));if(s)r.oneOf=i;else r.anyOf=i},bu=(e,t,r,n)=>{let o=e._zod.def,s=M(o.left,t,{...n,path:[...n.path,"allOf",0]}),i=M(o.right,t,{...n,path:[...n.path,"allOf",1]}),a=(u)=>("allOf"in u)&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(i)?i.allOf:[i]];r.allOf=c,t.intersections.push(c)};function $o(e,t,r){if(t.$ref){if(r.has(t))return t;r.add(t);let m=e.get(t)?.def;if(!m)return t;let g=$o(e,m,r);return g===m?t:g}for(let m of["anyOf","oneOf"]){let g=t[m];if(!Array.isArray(g))continue;let x=g.map((_)=>$o(e,_,r));if(x.some((_,b)=>_!==g[b]))t={...t,[m]:x}}let n=Array.isArray(t.type)?t.type:[t.type],o=!n.includes("string")&&n.some((m)=>m==="number"||m==="integer"),s=t.enum??(t.const!==void 0?[t.const]:void 0);if(!o&&!s?.some((m)=>typeof m==="number"))return t;let{minimum:i,maximum:a,exclusiveMinimum:c,exclusiveMaximum:u,multipleOf:l,format:p,id:d,...f}=t;if(f.enum)f.enum=f.enum.map((m)=>typeof m==="number"?String(m):m);else if(typeof f.const==="number")f.const=String(f.const);if(!o)return f;if(f.type="string",!s)f.pattern=(n.includes("number")?zt:Wn).source;return f}var So=new WeakMap;function Jf(e){let t=new Map;for(let n of e.seen.values())if(n.def&&!t.has(n.schema))t.set(n.schema,n);let r=new Map;for(let n of So.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=$o(t,s,new Set);if(i!==s)r.set(s,i)}if(!r.size)return;for(let n of e.seen.values())for(let o of[n.schema,n.def]){let s=o&&r.get(o.propertyNames);if(s)o.propertyNames=s}}var wu=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="object";let i=s.keyType,a=ce(i).patterns;if(s.mode==="loose"&&a&&a.size>0){let l=M(s.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let p of a)fe(o.patternProperties,cu(p).source,l)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){o.propertyNames=M(s.keyType,t,{...n,path:[...n.path,"propertyNames"]});let l=So.get(t);if(!l)l=[],So.set(t,l),t.deferred.push(()=>Jf(t));l.push(e)}o.additionalProperties=M(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&Lr(s.valueType)!==void 0;if(c&&!s.partial&&!u){let l=[...c].filter((p)=>typeof p==="string"||typeof p==="number");if(l.length>0)o.required=l.map(String)}},vu=(e,t,r,n)=>{let o=e._zod.def,s=M(o.innerType,t,n),i=t.seen.get(e);if(t.target==="openapi-3.0")i.ref=o.innerType,r.nullable=!0;else r.anyOf=[s,{type:"null"}]},$u=(e,t,r,n)=>{let o=e._zod.def;M(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},ko=Symbol();function Su(e,t,r,n,o){let s=!1,i=JSON.stringify(e,(a,c)=>{if(typeof c!=="bigint")return c;return s=!0,null});if(!s)return JSON.parse(i);return Ke(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),ko}var ku=(e,t,r,n)=>{let o=e._zod.def;M(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i=Su(o.defaultValue,e,t,r,n);if(i!==ko)r.default=i},Pu=(e,t,r,n)=>{let o=e._zod.def;M(o.innerType,t,n);let s=t.seen.get(e);if(s.ref=o.innerType,t.io!=="input")return;let i=Su(o.defaultValue,e,t,r,n);if(i!==ko)r._prefault=i},zu=(e,t,r,n)=>{let o=e._zod.def;M(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{Ke(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},Eu=(e,t,r,n)=>{let o=e._zod.def,s=o.in._zod.traits.has("$ZodTransform"),i=t.io==="input"?s?o.out:o.in:o.out;M(i,t,n);let a=t.seen.get(e);a.ref=i},Cu=(e,t,r,n)=>{let o=e._zod.def;M(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType,r.readOnly=!0};var Po=(e,t,r,n)=>{let o=e._zod.def;M(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType};var Ou=new WeakSet([Object.prototype,Error.prototype]);function Dr(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let n=r(this);return Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0})}})}var nm=(e,t)=>{ai.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(Ou.has(r))return;Ou.add(r),Dr(r,"format",(n)=>(o)=>Un(n,o)),Dr(r,"flatten",(n)=>(o)=>Fn(n,o)),Dr(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,kt,2)}),Dr(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,kt,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var ne=h("ZodError",nm,void 0,{Parent:Error});var Tu=mr(ne),Iu=hr(ne),Au=gr(ne),Ru=xr(ne),Zu=ui(ne),ju=li(ne),Lu=pi(ne),Du=di(ne),Nu=fi(ne),Fu=mi(ne),Uu=hi(ne),Mu=gi(ne);function sm(){if(!H.localeError)q(so())}function Fr(){if(!H.memoizer)q({memoizer:oo()})}var N=h("ZodType",(e,t)=>(sm(),j.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(re(t,{checks:[...t.checks??[],...e.map((r)=>typeof r==="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return me(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(Xm(e,t))},superRefine(e,t){return this.check(Qm(e,t))},overwrite(e){return this.check(Fe(e))},optional(){return Wu(this)},exactOptional(){return Nm(this)},nullable(){return Ku(this)},nullish(){return Wu(Ku(this))},nonoptional(e){return Gm(this,e)},array(){return Se(this)},or(e){return Ur([this,e])},and(e){return Zm(this,e)},transform(e){return Ju(this,Dm(e))},default(e){return Mm(this,e)},prefault(e){return Vm(this,e)},catch(e){return Km(this,e)},pipe(e){return Ju(this,e)},readonly(){return qm(this)},describe(e){let t=this.clone();return Ne.add(t,{description:e}),t},meta(...e){if(e.length===0)return Ne.get(this);let t=this.clone();return Ne.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get "~standard"(){return dr(this,"~standard",{...Xn(this),jsonSchema:{input:Rt(this,"input"),output:Rt(this,"output")}})},set "~standard"(e){Ce(this,"~standard",e)},parse:function e(t,r){return Tu(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await Iu(this,t,r,{callee:e})},safeParse(e,t){return Au(this,e,t)},async safeParseAsync(e,t){return Ru(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){Ce(this,"spa",e)},validate(e,t){return Mn(this,e,t)},validateAsync(e,t){return Bn(this,e,t)},encode:function e(t,r){return Zu(this,t,r,{callee:e})},decode:function e(t,r){return ju(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await Lu(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await Du(this,t,r,{callee:e})},safeEncode(e,t){return Nu(this,e,t)},safeDecode(e,t){return Fu(this,e,t)},async safeEncodeAsync(e,t){return Uu(this,e,t)},async safeDecodeAsync(e,t){return Mu(this,e,t)},toJSONSchema(e){return Qc(this,{})(e)},get description(){return Ne.get(this)?.description},get _def(){return this._zod.def}}),Hu=h("_ZodString",(e,t)=>{vr.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>uu(e,r,n,o)},ti({format:(e)=>ce(e).format??null,minLength:(e)=>ce(e).minimum??null,maxLength:(e)=>ce(e).maximum??null},{regex(...e){return this.check(ao(...e))},includes(...e){return this.check(lo(...e))},startsWith(...e){return this.check(po(...e))},endsWith(...e){return this.check(fo(...e))},min(...e){return this.check(at(...e))},max(...e){return this.check(Zr(...e))},length(...e){return this.check(jr(...e))},nonempty(...e){return this.check(at(1,...e))},lowercase(e){return this.check(co(e))},uppercase(e){return this.check(uo(e))},trim(){return this.check(ho())},normalize(...e){return this.check(mo(...e))},toLowerCase(){return this.check(go())},toUpperCase(){return this.check(xo())},slugify(){return this.check(yo())}})),im=h("ZodString",(e,t)=>{vr.init(e,t),Hu.init(e,t)},{email(e){return this.check(_c(am,e))},url(e){return this.check(io(qu,e))},jwt(e){return this.check(Nc(Sm,e))},emoji(e){return this.check(kc(lm,e))},guid(e){return this.check(bc(cm,e))},uuid(e){return this.check(wc(Nr,e))},uuidv4(e){return this.check(vc(Nr,e))},uuidv6(e){return this.check($c(Nr,e))},uuidv7(e){return this.check(Sc(Nr,e))},nanoid(e){return this.check(Pc(pm,e))},cuid(e){return this.check(zc(dm,e))},cuid2(e){return this.check(Ec(fm,e))},ulid(e){return this.check(Cc(mm,e))},base64(e){return this.check(jc(wm,e))},base64url(e){return this.check(Lc(vm,e))},xid(e){return this.check(Oc(hm,e))},ksuid(e){return this.check(Tc(gm,e))},ipv4(e){return this.check(Ic(xm,e))},ipv6(e){return this.check(Ac(ym,e))},cidrv4(e){return this.check(Rc(_m,e))},cidrv6(e){return this.check(Zc(bm,e))},e164(e){return this.check(Dc($m,e))},datetime(e){return this.check(Er(jt,e))},date(e){return this.check(Cr(Lt,e))},time(e){return this.check(Or(Dt,e))},duration(e){return this.check(Tr(Nt,e))}});function v(e){return yc(im,e)}var L=h("ZodStringFormat",(e,t)=>{R.init(e,t),Hu.init(e,t)}),jt=h("ZodISODateTime",(e,t)=>{Ea.init(e,t),L.init(e,t)}),Lt=h("ZodISODate",(e,t)=>{Ca.init(e,t),L.init(e,t)}),Dt=h("ZodISOTime",(e,t)=>{Oa.init(e,t),L.init(e,t)}),Nt=h("ZodISODuration",(e,t)=>{Ta.init(e,t),L.init(e,t)}),am=h("ZodEmail",(e,t)=>{xa.init(e,t),L.init(e,t)});var cm=h("ZodGUID",(e,t)=>{ha.init(e,t),L.init(e,t)});var Nr=h("ZodUUID",(e,t)=>{ga.init(e,t),L.init(e,t)});var qu=h("ZodURL",(e,t)=>{ba.init(e,t),L.init(e,t)});function um(e){return io(qu,e)}var lm=h("ZodEmoji",(e,t)=>{wa.init(e,t),L.init(e,t)});var pm=h("ZodNanoID",(e,t)=>{va.init(e,t),L.init(e,t)});var dm=h("ZodCUID",(e,t)=>{$a.init(e,t),L.init(e,t)});var fm=h("ZodCUID2",(e,t)=>{Sa.init(e,t),L.init(e,t)});var mm=h("ZodULID",(e,t)=>{ka.init(e,t),L.init(e,t)});var hm=h("ZodXID",(e,t)=>{Pa.init(e,t),L.init(e,t)});var gm=h("ZodKSUID",(e,t)=>{za.init(e,t),L.init(e,t)});var xm=h("ZodIPv4",(e,t)=>{Ia.init(e,t),L.init(e,t)});var ym=h("ZodIPv6",(e,t)=>{Ra.init(e,t),L.init(e,t)});var _m=h("ZodCIDRv4",(e,t)=>{Za.init(e,t),L.init(e,t)});var bm=h("ZodCIDRv6",(e,t)=>{ja.init(e,t),L.init(e,t)});var wm=h("ZodBase64",(e,t)=>{Da.init(e,t),L.init(e,t)});var vm=h("ZodBase64URL",(e,t)=>{Na.init(e,t),L.init(e,t)});var $m=h("ZodE164",(e,t)=>{Fa.init(e,t),L.init(e,t)});var Sm=h("ZodJWT",(e,t)=>{Ua.init(e,t),L.init(e,t)});var Yu=h("ZodNumber",(e,t)=>{eo.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>lu(e,r,n,o),e.isFinite=!0},ti({minValue:(e)=>{let{minimum:t,exclusiveMinimum:r}=ce(e);return Math.max(t??Number.NEGATIVE_INFINITY,r??Number.NEGATIVE_INFINITY)},maxValue:(e)=>{let{maximum:t,exclusiveMaximum:r}=ce(e);return Math.min(t??Number.POSITIVE_INFINITY,r??Number.POSITIVE_INFINITY)},isInt:(e)=>{let{isInt:t,multipleOf:r}=ce(e);return!!t||!!r?.some(Number.isSafeInteger)},format:(e)=>ce(e).format??null},{gt(e,t){return this.check(Ar(e,t))},gte(e,t){return this.check(It(e,t))},min(e,t){return this.check(It(e,t))},lt(e,t){return this.check(Ir(e,t))},lte(e,t){return this.check(Tt(e,t))},max(e,t){return this.check(Tt(e,t))},int(e){return this.check(Bu(e))},safe(e){return this.check(Bu(e))},positive(e){return this.check(Ar(0,e))},nonnegative(e){return this.check(It(0,e))},negative(e){return this.check(Ir(0,e))},nonpositive(e){return this.check(Tt(0,e))},multipleOf(e,t){return this.check(Rr(e,t))},step(e,t){return this.check(Rr(e,t))},finite(){return this}}));function Xu(e){return Fc(Yu,e)}var km=h("ZodNumberFormat",(e,t)=>{Ma.init(e,t),Yu.init(e,t)});function Bu(e){return Uc(km,e)}var Pm=h("ZodBoolean",(e,t)=>{Ba.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>pu(e,r,n,o)});function zm(e){return Mc(Pm,e)}var Em=h("ZodUnknown",(e,t)=>{Va.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>fu(e,r,n,o)});function Vu(){return Bc(Em)}var Cm=h("ZodNever",(e,t)=>{Ga.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>du(e,r,n,o)});function Om(e){return Vc(Cm,e)}var Tm=h("ZodArray",(e,t)=>{Fr(),Wa.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>xu(e,r,n,o),e.element=t.element},{min(e,t){return this.check(at(e,t))},nonempty(e){return this.check(at(1,e))},max(e,t){return this.check(Zr(e,t))},length(e,t){return this.check(jr(e,t))},unwrap(){return this.element}});function Se(e,t){return Gc(Tm,e,t)}var Im=h("ZodObject",(e,t)=>{Fr(),Ha.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>yu(e,r,n,o),ff(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return jm(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(re(this._zod.def,{catchall:e}))},passthrough(){return this.clone(re(this._zod.def,{catchall:Vu()}))},loose(){return this.clone(re(this._zod.def,{catchall:Vu()}))},strict(){return this.clone(re(this._zod.def,{catchall:Om()}))},strip(){return this.clone(re(this._zod.def,{catchall:void 0}))},extend(e){return of(this,e)},safeExtend(e){return sf(this,e)},merge(e){return af(this,e)},pick(e){return rf(this,e)},omit(e){return nf(this,e)},partial(...e){return Ys(Qu,this,e[0])},exactPartial(...e){return Ys(el,this,e[0],"exactPartial")},required(...e){return cf(tl,this,e[0])}});function I(e,t){let r={type:"object",shape:e??{},...w(t)};return new Im(r)}var Am=h("ZodUnion",(e,t)=>{qa.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_u(e,r,n,o),e.options=t.options});function Ur(e,t){return new Am({type:"union",options:e,...w(t)})}var Rm=h("ZodIntersection",(e,t)=>{Ya.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>bu(e,r,n,o)});function Zm(e,t){return new Rm({type:"intersection",left:e,right:t})}var Gu=h("ZodRecord",(e,t)=>{Fr(),Xa.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>wu(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function lt(e,t,r){if(!t||!t._zod)return new Gu({type:"record",keyType:v(),valueType:e,...w(t)});return new Gu({type:"record",keyType:e,valueType:t,...w(r)})}var zo=h("ZodEnum",(e,t)=>{Qa.init(e,t),N.init(e,t),e._zod.processJSONSchema=(n,o,s)=>mu(e,n,o,s),e.enum=t.entries,e.options=[...e._zod.values];let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=t.entries[i];else throw Error(`Key ${i} not found in enum`);return new zo({...t,checks:[],...w(o),entries:s})},e.exclude=(n,o)=>{let s={...t.entries};for(let i of n)if(r.has(i))delete s[i];else throw Error(`Key ${i} not found in enum`);return new zo({...t,checks:[],...w(o),entries:s})}});function jm(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new zo({type:"enum",entries:r,...w(t)})}var Lm=h("ZodTransform",(e,t)=>{Fr(),ec.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>gu(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Pt(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(We(s,r.value,t));else{let i=s;if(i.fatal)i.continue=!1;if(i.code??(i.code="custom"),!("input"in i))i.input=r.value;i.inst??(i.inst=e),r.issues.push(We(i))}};let o=t.transform(r.value,r);if(o instanceof Promise)return o.then((s)=>(r.value=s,r));return r.value=o,r}});function Dm(e){return new Lm({type:"transform",transform:e})}var Qu=h("ZodOptional",(e,t)=>{to.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Po(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Wu(e){return new Qu({type:"optional",innerType:e})}var el=h("ZodExactOptional",(e,t)=>{tc.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Po(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Nm(e){return new el({type:"optional",innerType:e})}var Fm=h("ZodNullable",(e,t)=>{rc.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>vu(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Ku(e){return new Fm({type:"nullable",innerType:e})}var Um=h("ZodDefault",(e,t)=>{nc.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ku(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Mm(e,t){return new Um({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():An(t)}})}var Bm=h("ZodPrefault",(e,t)=>{oc.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Pu(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Vm(e,t){return new Bm({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():An(t)}})}var tl=h("ZodNonOptional",(e,t)=>{sc.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$u(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Gm(e,t){return new tl({type:"nonoptional",innerType:e,...w(t)})}var Wm=h("ZodCatch",(e,t)=>{ic.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zu(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Km(e,t){return new Wm({type:"catch",innerType:e,catchValue:typeof t==="function"?t:ri(t)})}var Jm=h("ZodPipe",(e,t)=>{ac.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Eu(e,r,n,o),e.in=t.in,e.out=t.out});function Ju(e,t){return new Jm({type:"pipe",in:e,out:t})}var Hm=h("ZodReadonly",(e,t)=>{cc.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Cu(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function qm(e){return new Hm({type:"readonly",innerType:e})}var Ym=h("ZodCustom",(e,t)=>{uc.init(e,t),N.init(e,t),e._zod.processJSONSchema=(r,n,o)=>hu(e,r,n,o)});function Xm(e,t={}){return Wc(Ym,e,t)}function Qm(e,t){return Kc(e,t)}var Mr={};Xd(Mr,{ZodISODate:()=>Lt,ZodISODateTime:()=>jt,ZodISODuration:()=>Nt,ZodISOTime:()=>Dt,date:()=>th,datetime:()=>eh,duration:()=>nh,time:()=>rh});function eh(e){return Er(jt,e)}function th(e){return Cr(Lt,e)}function rh(e){return Or(Dt,e)}function nh(e){return Tr(Nt,e)}var Hl=nt(Ft(),1);var ah=["emacs","vim"],ch=new Set(ah);function uh(e){return ch.has(e)}function ol(){let e=process.env.INQUIRER_KEYBINDINGS;if(!e)return[];return Array.from(new Set(e.toLowerCase().split(/[\s,]+/).filter(uh)))}var Ut=(e,t=[])=>e.name==="up"||t.includes("vim")&&e.name==="k"||t.includes("emacs")&&e.ctrl&&e.name==="p",Gr=(e,t=[])=>e.name==="down"||t.includes("vim")&&e.name==="j"||t.includes("emacs")&&e.ctrl&&e.name==="n";var Mt=(e)=>e.name==="backspace",Bt=(e)=>e.name==="tab",Co=(e)=>"1234567890".includes(e.name),Oe=(e)=>e.name==="enter"||e.name==="return";class Oo extends Error{name="AbortPromptError";message="Prompt was aborted";constructor(e){super();this.cause=e?.cause}}class To extends Error{name="CancelPromptError";message="Prompt was canceled"}class Wr extends Error{name="ExitPromptError"}class Io extends Error{name="HookError"}class Vt extends Error{name="ValidationError"}import{AsyncResource as fh}from"node:async_hooks";import{AsyncLocalStorage as lh,AsyncResource as ph}from"node:async_hooks";var sl=new lh;function dh(e){return{rl:e,hooks:[],hooksCleanup:[],hooksEffect:[],index:0,handleChange(){}}}function il(e,t){let r=dh(e);return sl.run(r,()=>{function n(o){r.handleChange=()=>{r.index=0,o()},r.handleChange()}return t(n)})}function He(){let e=sl.getStore();if(!e)throw new Io("[Inquirer] Hook functions can only be called from within a prompt");return e}function Ao(){return He().rl}function Ro(e){let t=(...r)=>{let n=He(),o=!1,s=n.handleChange;n.handleChange=()=>{o=!0};let i=e(...r);if(o)s();return n.handleChange=s,i};return ph.bind(t)}function pt(e){let t=He(),{index:r}=t,n={get(){return t.hooks[r]},set(s){t.hooks[r]=s},initialized:r in t.hooks},o=e(n);return t.index++,o}function al(){He().handleChange()}var Gt={queue(e){let t=He(),{index:r}=t;t.hooksEffect.push(()=>{t.hooksCleanup[r]?.();let n=e(Ao());if(n!=null&&typeof n!=="function")throw new Vt("useEffect return value must be a cleanup function or nothing.");t.hooksCleanup[r]=n})},run(){let e=He();Ro(()=>{e.hooksEffect.forEach((t)=>{t()}),e.hooksEffect.length=0})()},clearAll(){let e=He();e.hooksCleanup.forEach((t)=>{t?.()}),e.hooksEffect.length=0,e.hooksCleanup.length=0}};function mh(e){return typeof e==="function"}function hh(e){return typeof e==="function"}function D(e){return pt((t)=>{let r=fh.bind(function(s){let i=t.get(),a=hh(s)?s(i):s;if(!Object.is(i,a))t.set(a),al()});if(t.initialized)return[t.get(),r];let n=mh(e)?e():e;return t.set(n),[n,r]})}function Te(e,t){pt((r)=>{let n=r.get();if(!Array.isArray(n)||t.some((s,i)=>!Object.is(s,n[i])))Gt.queue(e);r.set(t)})}import{styleText as ge}from"node:util";import he from"node:process";function gh(){if(!he.platform.startsWith("win"))return he.env.TERM!=="linux";return Boolean(he.env.CI)||Boolean(he.env.WT_SESSION)||Boolean(he.env.TERMINUS_SUBLIME)||he.env.ConEmuTask==="{cmd::Cmder}"||he.env.TERM_PROGRAM==="Terminus-Sublime"||he.env.TERM_PROGRAM==="vscode"||he.env.TERM==="xterm-256color"||he.env.TERM==="alacritty"||he.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var cl={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},ul={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},xh={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},yh={...cl,...ul},_h={...cl,...xh},bh=gh(),wh=bh?yh:_h,dt=wh,yw=Object.entries(ul);var vh={prefix:{idle:ge("blue","?"),done:ge("green",dt.tick)},spinner:{interval:80,frames:["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"].map((e)=>ge("yellow",e))},keybindings:[],style:{answer:(e)=>ge("cyan",e),message:(e)=>ge("bold",e),error:(e)=>ge("red",`> ${e}`),defaultAnswer:(e)=>ge("dim",`(${e})`),help:(e)=>ge("dim",e),highlight:(e)=>ge("cyan",e),key:(e)=>ge("cyan",ge("bold",`<${e}>`))}};function ll(){return{...vh,keybindings:ol()}}function pl(e){if(typeof e!=="object"||e===null)return!1;let t=e;while(Object.getPrototypeOf(t)!==null)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function dl(...e){let t={};for(let r of e)for(let[n,o]of Object.entries(r)){let s=t[n];t[n]=pl(s)&&pl(o)?dl(s,o):o}return t}function xe(...e){let t=[ll(),...e.filter((r)=>r!=null)];return dl(...t)}function Ie({status:e="idle",theme:t}){let[r,n]=D(!1),[o,s]=D(0),{prefix:i,spinner:a}=xe(t);if(Te(()=>{if(e==="loading"){let u,l=-1,p=setTimeout(()=>{n(!0),u=setInterval(()=>{l=l+1,s(l%a.frames.length)},a.interval)},300);return()=>{clearTimeout(p),clearInterval(u)}}else n(!1)},[e]),r)return a.frames[o];return typeof i==="string"?i:i[e==="loading"?"idle":e]??i.idle}function Wt(e,t){return pt((r)=>{let n=r.get();if(!r.initialized||n.dependencies.length!==t.length||n.dependencies.some((o,s)=>o!==t[s])){let o=e();return r.set({value:o,dependencies:t}),o}return n.value})}function qe(e){return D({current:e})[0]}function Ae(e){let t=qe(e);t.current=e,Te((r)=>{let n=!1,o=Ro((s,i)=>{if(n)return;t.current(i,r)});return r.input.on("keypress",o),()=>{n=!0,r.input.removeListener("keypress",o)}},[])}var Ol=nt(ml(),1);var hl=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return(t)=>{let r=0;e.lastIndex=0;while(e.test(t))r+=1;return t.length-r}})(),gl=(e)=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,xl=(e)=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141;var kh=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,Ph=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,yl=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,zh=/\t{1,1000}/y,_l=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,Eh=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Ch=/\p{M}+/gu,Oh={limit:1/0,ellipsis:""},bl=(e,t={},r={})=>{let n=t.limit??1/0,o=t.ellipsis??"",s=t?.ellipsisWidth??(o?bl(o,Oh,r).width:0),i=0,a=r.controlWidth??0,c=r.tabWidth??8,u=r.emojiWidth??2,l=2,p=r.regularWidth??1,d=r.wideWidth??2,f=[[Eh,p],[kh,0],[Ph,a],[zh,c],[_l,u],[yl,d]],m=0,g=0,x=e.length,_=0,b=!1,k=x,z=Math.max(0,n-s),y=0,S=0,E=0,G=0;e:while(!0){if(S>y||g>=x&&g>m){let P=e.slice(y,S)||e.slice(m,g);_=0;for(let C of P.replaceAll(Ch,"")){let U=C.codePointAt(0)||0;if(gl(U))G=2;else if(xl(U))G=d;else G=p;if(E+G>z)k=Math.min(k,Math.max(y,m)+_);if(E+G>n){b=!0;break e}_+=C.length,E+=G}y=S=0}if(g>=x)break e;for(let P=0,C=f.length;P<C;P++){let[U,W]=f[P];if(U.lastIndex=g,U.test(e)){if(_=U===yl?hl(e.slice(g,U.lastIndex)):U===_l?1:U.lastIndex-g,G=_*W,E+G>z)k=Math.min(k,g+Math.floor((z-E)/W));if(E+G>n){b=!0;break e}E+=G,y=m,S=g,g=m=U.lastIndex;continue e}}g+=1}return{width:b?z:E,index:b?k:x,truncated:b,ellipsed:b&&n>=s}},wl=bl;var Th={limit:1/0,ellipsis:"",ellipsisWidth:0},Ih=(e,t={})=>wl(e,Th,t).width,Re=Ih;var Kr="\x1B",Pl="›",Ah=39,jo="\x07",zl="[",Rh="]",El="m",Lo=`${Rh}8;;`,vl=new RegExp(`(?:\\${zl}(?<code>\\d+)m|\\${Lo}(?<uri>.*)${jo})`,"y"),$l=(e)=>{if(e>=30&&e<=37)return 39;if(e>=90&&e<=97)return 39;if(e>=40&&e<=47)return 49;if(e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0;return},Sl=(e)=>`${Kr}${zl}${e}${El}`,kl=(e)=>`${Kr}${Lo}${e}${jo}`,Zo=(e,t,r)=>{let n=t[Symbol.iterator](),o=!1,s=!1,i=e.at(-1),a=i===void 0?0:Re(i),c=n.next(),u=n.next(),l=0;while(!c.done){let p=c.value,d=Re(p);if(a+d<=r)e[e.length-1]+=p;else e.push(p),a=0;if(p===Kr||p===Pl)o=!0,s=t.startsWith(Lo,l+1);if(o){if(s){if(p===jo)o=!1,s=!1}else if(p===El)o=!1}else if(a+=d,a===r&&!u.done)e.push(""),a=0;c=u,u=n.next(),l+=p.length}if(i=e.at(-1),!a&&i!==void 0&&i.length&&e.length>1)e[e.length-2]+=e.pop()},Zh=(e)=>{let t=e.split(" "),r=t.length;while(r){if(Re(t[r-1]))break;r--}if(r===t.length)return e;return t.slice(0,r).join(" ")+t.slice(r).join("")},jh=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",o,s,i=e.split(" "),a=[""],c=0;for(let p=0;p<i.length;p++){let d=i[p];if(r.trim!==!1){let m=a.at(-1)??"",g=m.trimStart();if(m.length!==g.length)a[a.length-1]=g,c=Re(g)}if(p!==0){if(c>=t&&(r.wordWrap===!1||r.trim===!1))a.push(""),c=0;if(c||r.trim===!1)a[a.length-1]+=" ",c++}let f=Re(d);if(r.hard&&f>t){let m=t-c,g=1+Math.floor((f-m-1)/t);if(Math.floor((f-1)/t)<g)a.push("");Zo(a,d,t),c=Re(a.at(-1)??"");continue}if(c+f>t&&c&&f){if(r.wordWrap===!1&&c<t){Zo(a,d,t),c=Re(a.at(-1)??"");continue}a.push(""),c=0}if(c+f>t&&r.wordWrap===!1){Zo(a,d,t),c=Re(a.at(-1)??"");continue}a[a.length-1]+=d,c+=f}if(r.trim!==!1)a=a.map((p)=>Zh(p));let u=a.join(`
60
- `),l=!1;for(let p=0;p<u.length;p++){let d=u[p];if(n+=d,!l){if(l=d>="\uD800"&&d<="\uDBFF",l)continue}else l=!1;if(d===Kr||d===Pl){vl.lastIndex=p+1;let m=vl.exec(u)?.groups;if(m?.code!==void 0){let g=Number.parseFloat(m.code);o=g===Ah?void 0:g}else if(m?.uri!==void 0)s=m.uri.length===0?void 0:m.uri}if(u[p+1]===`
61
- `){if(s)n+=kl("");let f=o?$l(o):void 0;if(o&&f)n+=Sl(f)}else if(d===`
62
- `){if(o&&$l(o))n+=Sl(o);if(s)n+=kl(s)}}return n},Lh=/\r?\n/;function Cl(e,t,r){return String(e).normalize().split(Lh).map((n)=>jh(n,t,r)).join(`
63
- `)}function Kt(e,t){return e.split(`
64
- `).flatMap((r)=>Cl(r,t,{trim:!1,wordWrap:!1}).split(`
65
- `).map((n)=>n.trimEnd())).join(`
66
- `)}function Jr(){return Ol.default({defaultWidth:80,output:Ao().output})}function Dh({active:e,renderedItems:t,pageSize:r,loop:n}){let o=qe({lastPointer:e,lastActive:void 0}),{lastPointer:s,lastActive:i}=o.current,a=Math.floor(r/2),c=t.reduce((p,d)=>p+d.length,0),u=t.slice(0,e).reduce((p,d)=>p+d.length,0),l=u;if(c>r)if(n){if(l=s,i!=null&&i<e&&e-i<r)l=Math.min(a,Math.abs(e-i)===1?Math.min(s+(t[i]?.length??0),Math.max(u,s)):s+e-i)}else{let p=t.slice(e).reduce((d,f)=>d+f.length,0);l=p<r-a?r-p:Math.min(u,a)}return o.current.lastPointer=l,o.current.lastActive=e,l}function Do({items:e,active:t,renderItem:r,pageSize:n,loop:o=!0}){let s=Jr(),i=(_)=>(_%e.length+e.length)%e.length,a=e.map((_,b)=>{if(_==null)return[];return Kt(r({item:_,index:b,isActive:b===t}),s).split(`
67
- `)}),c=a.reduce((_,b)=>_+b.length,0),u=(_)=>a[_]??[],l=Dh({active:t,renderedItems:a,pageSize:n,loop:o}),p=u(t).slice(0,n),d=l+p.length<=n?l:n-p.length,f=Array.from({length:n});f.splice(d,p.length,...p);let m=new Set([t]),g=d+p.length,x=i(t+1);while(g<n&&!m.has(x)&&(o&&c>n?x!==t:x>t)){let b=u(x).slice(0,n-g);f.splice(g,b.length,...b),m.add(x),g+=b.length,x=i(x+1)}g=d-1,x=i(t-1);while(g>=0&&!m.has(x)&&(o&&c>n?x!==t:x<t)){let _=u(x),b=_.slice(Math.max(0,_.length-g-1));f.splice(g-b.length+1,b.length,...b),m.add(x),g-=b.length,x=i(x-1)}return f.filter((_)=>typeof _==="string").join(`
68
- `)}var Ml=nt(Al(),1);import*as Ul from"node:readline";import{AsyncResource as Vh}from"node:async_hooks";var Ye=[];Ye.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")Ye.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")Ye.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var Hr=(e)=>!!e&&typeof e==="object"&&typeof e.removeListener==="function"&&typeof e.emit==="function"&&typeof e.reallyExit==="function"&&typeof e.listeners==="function"&&typeof e.kill==="function"&&typeof e.pid==="number"&&typeof e.on==="function",No=Symbol.for("signal-exit emitter"),Fo=globalThis,Fh=Object.defineProperty.bind(Object);class Rl{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(Fo[No])return Fo[No];Fh(Fo,No,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,t){this.listeners[e].push(t)}removeListener(e,t){let r=this.listeners[e],n=r.indexOf(t);if(n===-1)return;if(n===0&&r.length===1)r.length=0;else r.splice(n,1)}emit(e,t,r){if(this.emitted[e])return!1;this.emitted[e]=!0;let n=!1;for(let o of this.listeners[e])n=o(t,r)===!0||n;if(e==="exit")n=this.emit("afterExit",t,r)||n;return n}}class Mo{}var Uh=(e)=>({onExit(t,r){return e.onExit(t,r)},load(){return e.load()},unload(){return e.unload()}});class Zl extends Mo{onExit(){return()=>{}}load(){}unload(){}}class jl extends Mo{#r=Uo.platform==="win32"?"SIGINT":"SIGHUP";#t=new Rl;#e;#s;#i;#o={};#n=!1;constructor(e){super();this.#e=e,this.#o={};for(let t of Ye)this.#o[t]=()=>{let r=this.#e.listeners(t),{count:n}=this.#t,o=e;if(typeof o.__signal_exit_emitter__==="object"&&typeof o.__signal_exit_emitter__.count==="number")n+=o.__signal_exit_emitter__.count;if(r.length===n){this.unload();let s=this.#t.emit("exit",null,t),i=t==="SIGHUP"?this.#r:t;if(!s)e.kill(e.pid,i)}};this.#i=e.reallyExit,this.#s=e.emit}onExit(e,t){if(!Hr(this.#e))return()=>{};if(this.#n===!1)this.load();let r=t?.alwaysLast?"afterExit":"exit";return this.#t.on(r,e),()=>{if(this.#t.removeListener(r,e),this.#t.listeners.exit.length===0&&this.#t.listeners.afterExit.length===0)this.unload()}}load(){if(this.#n)return;this.#n=!0,this.#t.count+=1;for(let e of Ye)try{let t=this.#o[e];if(t)this.#e.on(e,t)}catch(t){}this.#e.emit=(e,...t)=>this.#c(e,...t),this.#e.reallyExit=(e)=>this.#a(e)}unload(){if(!this.#n)return;this.#n=!1,Ye.forEach((e)=>{let t=this.#o[e];if(!t)throw Error("Listener not defined for signal: "+e);try{this.#e.removeListener(e,t)}catch(r){}}),this.#e.emit=this.#s,this.#e.reallyExit=this.#i,this.#t.count-=1}#a(e){if(!Hr(this.#e))return 0;return this.#e.exitCode=e||0,this.#t.emit("exit",this.#e.exitCode,null),this.#i.call(this.#e,this.#e.exitCode)}#c(e,...t){let r=this.#s;if(e==="exit"&&Hr(this.#e)){if(typeof t[0]==="number")this.#e.exitCode=t[0];let n=r.call(this.#e,e,...t);return this.#t.emit("exit",this.#e.exitCode,null),n}else return r.call(this.#e,e,...t)}}var Uo=globalThis.process,{onExit:Ll,load:tv,unload:rv}=Uh(Hr(Uo)?new jl(Uo):new Zl);import{stripVTControlCharacters as Mh}from"node:util";var Bo="\x1B[G",qr="\x1B[?25l",Nl="\x1B[?25h",Vo=(e=1)=>e>0?`\x1B[${e}A`:"",Go=(e=1)=>e>0?`\x1B[${e}B`:"",Wo=(e,t)=>{if(typeof t==="number"&&!Number.isNaN(t))return`\x1B[${t+1};${e+1}H`;return`\x1B[${e+1}G`},Dl="\x1B[2K",Ko=(e)=>e>0?(Dl+Vo(1)).repeat(e-1)+Dl+Bo:"";var Fl=(e)=>e.split(`
69
- `).length,Bh=(e)=>e.split(`
70
- `).pop()??"";class Yr{height=0;extraLinesUnderPrompt=0;cursorPos;rl;constructor(e){this.rl=e,this.cursorPos=e.getCursorPos()}write(e){this.rl.output.unmute(),this.rl.output.write(e),this.rl.output.mute()}render(e,t=""){let r=Bh(e),n=Mh(r),o=n;if(this.rl.line.length>0)o=o.slice(0,-this.rl.line.length);this.rl.setPrompt(o),this.cursorPos=this.rl.getCursorPos();let s=Jr();if(e=Kt(e,s),t=Kt(t,s),n.length%s===0)e+=`
71
- `;let i=e+(t?`
72
- `+t:""),c=Math.floor(n.length/s)-this.cursorPos.rows+(t?Fl(t):0);if(c>0)i+=Vo(c);i+=Wo(this.cursorPos.cols),this.write(Go(this.extraLinesUnderPrompt)+Ko(this.height)+i),this.extraLinesUnderPrompt=c,this.height=Fl(i)}checkCursorPos(){let e=this.rl.getCursorPos();if(e.cols!==this.cursorPos.cols)this.write(Wo(e.cols)),this.cursorPos=e}done({clearContent:e}){this.rl.setPrompt("");let t=Go(this.extraLinesUnderPrompt);t+=e?Ko(this.height):`
73
- `,t+=Bo,t+=Nl,this.write(t),this.rl.close()}}class Jo extends Promise{static withResolver(){let e,t;return{promise:new Promise((n,o)=>{e=n,t=o}),resolve:e,reject:t}}}import Gh from"node:path";var Wh=globalThis.setImmediate;function Xr(e,t,r){if("on"in e)return e.on(t,r),()=>e.removeListener(t,r);return e.addEventListener(t,r),()=>e.removeEventListener(t,r)}function Kh(){let e=Error.prepareStackTrace,t=[];try{Error.prepareStackTrace=(r,n)=>{let o=n.slice(1);return t=o,o},Error().stack}catch{return t}return Error.prepareStackTrace=e,t}function Ze(e){let t=Kh();return(n,o={})=>{let{input:s=process.stdin,signal:i}=o,a=new Set,c=new Ml.default;c.pipe(o.output??process.stdout);let u=Ul.createInterface({terminal:!0,input:s,output:c});c.mute();let l=new Yr(u),{promise:p,resolve:d,reject:f}=Jo.withResolver();return il(u,(m)=>{let g=Vh.bind(()=>Gt.clearAll()),x=(y)=>{try{g(),y()}catch(S){f(S)}},_=(y)=>x(()=>d(y)),b=(y)=>x(()=>f(y)),k=Object.assign(p.finally(()=>{a.forEach((y)=>y()),l.done({clearContent:Boolean(o.clearPromptOnDone)}),c.end()}).then(()=>p),{cancel:()=>b(new To)});if(i){let y=()=>b(new Oo({cause:i.reason}));if(i.aborted)return y(),k;a.add(Xr(i,"abort",y))}a.add(Ll((y,S)=>{b(new Wr(`User force closed the prompt with ${y} ${S}`))})),a.add(Xr(u,"SIGINT",()=>b(new Wr("User force closed the prompt with SIGINT")))),a.add(Xr(u,"close",g));let z=()=>{a.add(Xr(u.input,"keypress",()=>l.checkCursorPos()));let y=null;m(()=>{let S=!1;try{let E=e(n,(C)=>{if(S)_(C);else y={value:C}});if(E===void 0){let C=t[1]?.getFileName();if(C&&!C.startsWith("file://"))C=Gh.resolve(C);throw Error(`Prompt functions must return a string.
74
- at ${C}`)}let[G,P]=typeof E==="string"?[E]:E;l.render(G,P),Gt.run()}catch(E){b(E)}if(S=!0,y!==null){let{value:E}=y;y=null,_(E)}})};if("readableFlowing"in s)Wh(z);else z();return k})}}import{styleText as Jh}from"node:util";class ke{separator=Jh("dim",Array.from({length:15}).join(dt.line));type="separator";constructor(e){if(e)this.separator=e}static isSeparator(e){return Boolean(e&&typeof e==="object"&&"type"in e&&e.type==="separator")}}import{styleText as Hh}from"node:util";var qh={keywords:{yes:"Yes",no:"No"},style:{confirmDefault:(e)=>{let t=e[0]??"";if(t.toLowerCase()===t.toUpperCase())return Hh("cyan",e);return t.toUpperCase()+e.slice(1)}}},Ho=Ze((e,t)=>{let[r,n]=D("idle"),[o,s]=D(""),i=xe(qh,e.theme),a=Ie({status:r,theme:i}),{yes:c,no:u}=i.keywords,l=(c[0]??"").toLowerCase(),p=(u[0]??"").toLowerCase(),d=e.default===!1?`${l}/${i.style.confirmDefault(p)}`:`${i.style.confirmDefault(l)}/${p}`;function f(k){return k?c:u}let{transformer:m=f}=e;function g(k,z){let y=k.trim().toLowerCase();if(y==="")return z!==!1;if(c.toLowerCase().startsWith(y))return!0;if(u.toLowerCase().startsWith(y))return!1;return z!==!1}Ae((k,z)=>{if(r!=="idle")return;if(Oe(k)){let y=g(o,e.default);s(m(y)),n("done"),t(y)}else if(Bt(k)){let y=f(!g(o,e.default));z.clearLine(0),z.write(y),s(y)}else s(z.line)});let x=o,_="";if(r==="done")x=i.style.answer(o);else _=` ${i.style.defaultAnswer(d)}`;let b=i.style.message(e.message,r);return`${a} ${b}${_} ${x}`});var Yh={validationFailureMode:"keep"},qo=Ze((e,t)=>{let{prefill:r="tab"}=e,n=xe(Yh,e.theme),[o,s]=D("idle"),[i,a]=D(String(e.default??"")),[c,u]=D(),[l,p]=D(""),d=Ie({status:o,theme:n});async function f(b){let{required:k,pattern:z,patternError:y="Invalid input"}=e;if(k&&!b)return"You must provide a value";if(z&&!z.test(b))return y;if(typeof e.validate==="function")return await e.validate(b)||"You must provide a valid value";return!0}Ae(async(b,k)=>{if(o!=="idle")return;if(Oe(b)){let z=l||i;s("loading");let y=await f(z);if(y===!0)p(z),s("done"),t(z);else{if(n.validationFailureMode==="clear")p("");else k.write(l);u(y),s("idle")}}else if(Mt(b)&&!l)a("");else if(Bt(b)&&!l)a(""),k.clearLine(0),k.write(i),p(i);else p(k.line),u(void 0)}),Te((b)=>{if(r==="editable"&&i)b.write(i),p(i)},[]);let m=n.style.message(e.message,o),g=l;if(typeof e.transformer==="function")g=e.transformer(l,{isFinal:o==="done"});else if(o==="done")g=n.style.answer(l);let x;if(i&&o!=="done"&&!l)x=n.style.defaultAnswer(i);let _="";if(c)_=n.style.error(c);return[[d,m,x,g].filter((b)=>b!==void 0).join(" "),_]});import{styleText as Yo}from"node:util";var Xh={style:{maskedText:"[input is masked]",keysHelpTip:(e)=>e.map(([t,r])=>`${Yo("bold",t)} ${Yo("dim",r)}`).join(Yo("dim"," • "))}},Xo=Ze((e,t)=>{let{toggleMask:r=!0,validate:n=()=>!0}=e,o=xe(Xh,e.theme),[s,i]=D("idle"),[a,c]=D(),[u,l]=D(""),[p,d]=D(!1),f=Ie({status:s,theme:o});Ae(async(k,z)=>{if(s!=="idle")return;if(Oe(k)){let y=u;i("loading");let S=await n(y);if(S===!0)l(y),i("done"),t(y);else z.write(u),c(S||"You must provide a valid value"),i("idle")}else if(r&&k.ctrl&&k.name==="t")d((y)=>!y);else l(z.line),c(void 0)});let m=o.style.message(e.message,s),g=r&&p&&s==="idle",x="";if(g)x=u;else if(e.mask)x=(typeof e.mask==="string"?e.mask:"*").repeat(u.length);else if(s!=="done")x=o.style.help(o.style.maskedText);if(s==="done")x=o.style.answer(x);else if(!e.mask)x+=qr;let _=[f,m,x].filter(Boolean).join(" "),b=[a?o.style.error(a):"",r&&s==="idle"?o.style.keysHelpTip([["ctrl+t","toggle visibility"]]):""].filter(Boolean).join(`
75
- `);return[_,b]});import{styleText as Jt}from"node:util";var Qh={icon:{cursor:dt.pointer},style:{disabled:(e)=>Jt("dim",e),description:(e)=>Jt("cyan",e),keysHelpTip:(e)=>e.map(([t,r])=>`${Jt("bold",t)} ${Jt("dim",r)}`).join(Jt("dim"," • "))},i18n:{disabledError:"This option is disabled and cannot be selected."},indexMode:"hidden"};function Qo(e){return!ke.isSeparator(e)&&!e.disabled}function es(e){return!ke.isSeparator(e)}function eg(e){return e.map((t)=>{if(ke.isSeparator(t))return t;if(typeof t!=="object"||t===null||!("value"in t)){let o=String(t);return{value:t,name:o,short:o,disabled:!1}}let r=t.name??String(t.value),n={value:t.value,name:r,short:t.short??r,disabled:t.disabled??!1};if(t.description)n.description=t.description;return n})}var ts=Ze((e,t)=>{let{loop:r=!0,pageSize:n=7}=e,o=xe(Qh,e.theme),{keybindings:s}=o,[i,a]=D("idle"),c=Ie({status:i,theme:o}),u=qe(),l=!s.includes("vim"),p=Wt(()=>eg(e.choices),[e.choices]),d=Wt(()=>{let P=p.findIndex(es),C=p.findLastIndex(es);if(P===-1)throw new Vt("[select prompt] No selectable choices. All choices are disabled.");return{first:P,last:C}},[p]),f=Wt(()=>{if(!("default"in e))return-1;return p.findIndex((P)=>Qo(P)&&P.value===e.default)},[e.default,p]),[m,g]=D(f===-1?d.first:f),x=p[m];if(x==null||ke.isSeparator(x))throw Error("Active index does not point to a choice");let[_,b]=D();Ae((P,C)=>{if(clearTimeout(u.current),_)b(void 0);if(Oe(P))if(x.disabled)b(o.i18n.disabledError);else a("done"),t(x.value);else if(Ut(P,s)||Gr(P,s)){if(C.clearLine(0),r||Ut(P,s)&&m!==d.first||Gr(P,s)&&m!==d.last){let U=Ut(P,s)?-1:1,W=m;do W=(W+U+p.length)%p.length;while(!es(p[W]));g(W)}}else if(Co(P)&&!Number.isNaN(Number(C.line))){let U=Number(C.line)-1,W=-1,de=p.findIndex((wt)=>{if(ke.isSeparator(wt))return!1;return W++,W===U}),Pn=p[de];if(Pn!=null&&Qo(Pn))g(de);u.current=setTimeout(()=>{C.clearLine(0)},700)}else if(Mt(P))C.clearLine(0);else if(l){let U=C.line.toLowerCase(),W=p.findIndex((de)=>{if(ke.isSeparator(de)||!Qo(de))return!1;return de.name.toLowerCase().startsWith(U)});if(W!==-1)g(W);u.current=setTimeout(()=>{C.clearLine(0)},700)}}),Te(()=>()=>{clearTimeout(u.current)},[]);let k=o.style.message(e.message,i),z=o.style.keysHelpTip([["↑↓","navigate"],["⏎","select"]]),y=0,S=Do({items:p,active:m,renderItem({item:P,isActive:C,index:U}){if(ke.isSeparator(P))return y++,` ${P.separator}`;let W=C?o.icon.cursor:" ",de=o.indexMode==="number"?`${U+1-y}. `:"";if(P.disabled){let wt=typeof P.disabled==="string"?P.disabled:"(disabled)",Bd=C?o.icon.cursor:"-";return o.style.disabled(`${Bd} ${de}${P.name} ${wt}`)}return(C?o.style.highlight:(wt)=>wt)(`${W} ${de}${P.name}`)},pageSize:n,loop:r});if(i==="done")return[c,k,o.style.answer(x.short)].filter(Boolean).join(" ");let{description:E}=x;return`${[[c,k].filter(Boolean).join(" "),S," ",E?o.style.description(E):"",_?o.style.error(_):"",z].filter(Boolean).join(`
76
- `).trimEnd()}${qr}`});var ye=nt(Ft(),1);class O extends Error{hint;exitCode;constructor(e,t={}){super(e);this.name="CliError",this.hint=t.hint,this.exitCode=t.exitCode??1}}var F=(e,t)=>new O(e,{exitCode:2,hint:t}),Ht=(e)=>e<1000?`${Math.round(e)}ms`:`${Math.round(e/1000)}s`,tg=[["d",86400000],["h",3600000],["m",60000],["s",1000]],Vl=(e)=>{let t=Math.max(0,e);for(let[r,n]of tg)if(t>=n)return`${Math.round(t/n)}${r}`;return`${Math.round(t)}ms`},Gl=(e)=>{let t=Math.max(0,Math.floor(e/60000)),r=Math.floor(t/60);return r>0?`${r}h ${t%60}m`:`${t}m`},oe=(e)=>{process.stderr.write(`${e}
77
- `)},V=(e)=>{oe(`${ye.default.dim(">")} ${e}`)},ue=(e,t)=>{let r=t===void 0?"":`[${Ht(t)}]`,n=r?` ${ye.default.dim(r)}`:"";oe(`${ye.default.cyan("> Success!")} ${e}${n}`)},ft=(e)=>{oe(`${ye.default.bold(ye.default.yellow("> NOTE:"))} ${e}`)},Wl=(e)=>{if(oe(`${ye.default.bold(ye.default.red("Error:"))} ${e.message}`),e.hint)oe(`${ye.default.dim(">")} ${e.hint}`)},Bl=["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"],rg=300,ng="\r\x1B[2K",Y=async(e,t)=>{if(!process.stderr.isTTY)return t();let r=0,n=!1,o,s=()=>{n=!0;let a=Bl[r%Bl.length]??"";r+=1,process.stderr.write(`\r${ye.default.dim(a)} ${e}`)},i=setTimeout(()=>{s(),o=setInterval(s,80)},rg);try{return await t()}finally{if(clearTimeout(i),clearInterval(o),n)process.stderr.write(ng)}},Qr=async(e)=>{try{return await e()}catch(t){if(t instanceof Error&&t.name==="ExitPromptError")throw new O("Canceled",{exitCode:130});throw t}},Kl=(e)=>{let t={output:e.stderr};return{choice:(r)=>Qr(()=>ts(r,t)),confirm:(r)=>Qr(()=>Ho(r,t)),interactive:e.stdin.isTTY===!0&&e.stderr.isTTY===!0,secret:(r)=>Qr(()=>Xo({mask:"*",message:r},t)),text:(r)=>Qr(()=>qo({...r,required:!0},t))}},Jl=(e)=>({isTTY:e.isTTY===!0,json:(t)=>{e.write(`${JSON.stringify(t,null,2)}
78
- `)},line:(t)=>{e.write(`${t}
79
- `)},write:(t)=>{e.write(t)}}),{bold:A,cyan:og,dim:Ue,gray:en,green:tn,red:rs,yellow:_e}=ye.default,sg=" ".repeat(5),ig=(e)=>A(og(e)),rn=(e)=>{let{headings:t,marks:r,rows:n}=e,o=t.map((i,a)=>Math.max(i.length,...n.map((c)=>c[a]?.text.length??0))),s=(i)=>i.map((a,c)=>{let l=c===i.length-1?a.text:a.text.padEnd(o[c]??0);return a.paint?a.paint(l):l}).join(sg);oe(""),oe(` ${s(t.map((i)=>({paint:ig,text:i})))}`);for(let[i,a]of n.entries())oe(`${r?.[i]??" "} ${s(a)}`);oe("")};var ns=()=>process.env.NIPA_DEBUG==="1",nn=(e)=>{if(ns())oe(Hl.default.dim(`> [debug] [${new Date().toISOString()}] ${e}`))};class on extends Error{url;constructor(e,t){super(`can't reach ${new URL(e).host}: ${t}`);this.name="NetworkError",this.url=e}}var ql=(e)=>e.cause instanceof Error?`${e.message} (${ql(e.cause)})`:e.message,Pe=async(e,t={})=>{let r=t.method??"GET",n=performance.now();nn(`${r} ${e}`);let o;try{o=await fetch(e,t)}catch(s){throw new on(e,s instanceof Error?ql(s):String(s))}return nn(`${o.status} ${r} ${e} [${Ht(performance.now()-n)}]`),o};var os=I({domainId:v().optional(),id:v(),name:v()});class X extends Error{status;constructor(e,t){super(e);this.name="KeystoneError",this.status=t}}var qt=(e)=>{let t=e;while(t.endsWith("/"))t=t.slice(0,-1);if(t.endsWith("/v3"))t=t.slice(0,-3);return`${t}/v3`},ss=(e,t)=>t?{auth:{identity:e,scope:{project:{id:t}}}}:{auth:{identity:e}},Xl=(e)=>({domain:{name:e.userDomain},name:e.username}),ag=(e,t)=>ss({methods:["password"],password:{user:{...Xl(e),password:t}}},e.projectId),cg=(e,t)=>ss({methods:["totp"],totp:{user:{...Xl(e),passcode:t}}},e.projectId),ug=(e,t)=>ss({methods:["token"],token:{id:e}},t),lg=I({error:I({message:v().optional()}).optional(),receipt:I({}).loose().optional(),required_auth_methods:Se(Se(v())).optional()}),Ql=async(e)=>{try{let t=lg.safeParse(JSON.parse(await e.text()));return t.success?t.data:{}}catch{return{}}},ep=(e)=>e.length>0?`this account needs ${e.map((t)=>t.join(" + ")).join(" or ")} to log in`:"this account's MFA rules don't allow this login method",pg=(e)=>{let{body:t,status:r}=e;if(t.receipt)return ep(t.required_auth_methods??[]);if(r===401)return e.unauthorized;return t.error?.message??`Keystone returned HTTP ${r}`},mt=async(e,t)=>{let r=await Ql(e);throw new X(pg({body:r,status:e.status,unauthorized:t}),e.status)},dg=I({token:I({expires_at:v(),project:I({domain:I({id:v()}).optional(),id:v(),name:v()}).optional(),user:I({id:v(),name:v()})})}),fg=(e,t)=>{let{expires_at:r,project:n,user:o}=t.token;return{expiresAt:r,project:n&&{domainId:n.domain?.id,id:n.id,name:n.name},user:o,value:e}},tp="Openstack-Auth-Receipt",is=(e,t,r)=>{let n=new Headers({"Content-Type":"application/json"});if(r!==void 0)n.set(tp,r);return Pe(`${qt(e)}/auth/tokens`,{body:JSON.stringify(t),headers:n,method:"POST"})},as=async(e)=>{let t=e.headers.get("X-Subject-Token");if(!t)throw new X("Keystone didn't return a token",e.status);let r=dg.safeParse(await e.json());if(!r.success)throw new X(`unexpected token response: ${st(r.error)}`,e.status);return fg(t,r.data)},rp=async(e,t)=>{let r=await is(e.authUrl,ag(e,t));if(r.ok)return{kind:"token",token:await as(r)};let n=r.headers.get(tp);if(r.status===401&&n){let s=(await Ql(r)).required_auth_methods;if(!s||s.some((i)=>i.includes("totp")))return{kind:"mfa",receipt:n};throw new X(ep(s),r.status)}return mt(r,"wrong email or password")},np=async(e)=>{let{account:t,passcode:r,receipt:n}=e,o=await is(t.authUrl,cg(t,r),n);return o.ok?as(o):mt(o,"wrong OTP code")},sn="the session expired or was revoked",an=async(e)=>{let t=await is(e.authUrl,ug(e.token,e.projectId));return t.ok?as(t):mt(t,sn)},mg=I({projects:Se(I({domain_id:v().optional(),enabled:zm().optional(),id:v(),name:v()}))}),hg=(e)=>e.projects.filter((t)=>t.enabled!==!1).map((t)=>({domainId:t.domain_id,id:t.id,name:t.name})).toSorted((t,r)=>t.name.localeCompare(r.name)),ht=async({authUrl:e,token:t})=>{let r=await Pe(`${qt(e)}/auth/projects`,{headers:{"X-Auth-Token":t}});if(!r.ok)return mt(r,sn);let n=mg.safeParse(await r.json());if(!n.success)throw new X(`unexpected project list: ${st(n.error)}`,r.status);return hg(n.data)},op=lt(v(),v()),gg=I({catalog:Se(I({endpoints:Se(I({interface:v(),region:v().nullish(),region_id:v().nullish(),url:v()})),type:v()}))}),xg=(e,t)=>Object.fromEntries(e.catalog.flatMap((r)=>{let n=r.endpoints.find((o)=>o.interface==="public"&&(o.region_id??o.region)===t);return n?[[r.type,n.url]]:[]})),sp=async(e)=>{let t=await Pe(`${qt(e.authUrl)}/auth/catalog`,{headers:{"X-Auth-Token":e.token}});if(!t.ok)return mt(t,sn);let r=gg.safeParse(await t.json());if(!r.success)throw new X(`unexpected catalog: ${st(r.error)}`,t.status);return xg(r.data,e.region)},cn=async({authUrl:e,token:t})=>{let r=await Pe(`${qt(e)}/auth/tokens`,{headers:{"X-Auth-Token":t,"X-Subject-Token":t},method:"DELETE"});if(!(r.ok||r.status===401||r.status===404))await mt(r,sn)},Yl=I({version:I({id:v(),status:v()})}),ip=async(e)=>{let t=qt(e),r=await Pe(t,{signal:AbortSignal.timeout(1e4)}),n;try{n=Yl.safeParse(await r.json())}catch{n=Yl.safeParse(null)}if(!(r.ok&&n.success))throw new X(`${t} doesn't answer like Keystone v3 (HTTP ${r.status})`,r.status);return n.data.version.id};import{spawn as Ag}from"node:child_process";import{once as Rg}from"node:events";import{stat as Zg}from"node:fs/promises";import{text as jg}from"node:stream/consumers";import{accessSync as yg,constants as _g}from"node:fs";import{homedir as bg}from"node:os";import Yt from"node:path";var ap=(e)=>{try{return yg(e,_g.X_OK),!0}catch{return!1}},wg=(e)=>process.platform==="win32"?[...(process.env.PATHEXT??".EXE;.CMD;.BAT").split(";").map((t)=>`${e}${t}`),e]:[e],un=(e)=>{if(e.includes("/")||e.includes(Yt.sep)){let r=Yt.resolve(e);return ap(r)?r:void 0}return[...(process.env.PATH??"").split(Yt.delimiter).filter(Boolean),Yt.join(bg(),".local","bin")].flatMap((r)=>wg(Yt.join(r,e))).find(ap)},ln=(e)=>({OS_AUTH_TYPE:"v3token",OS_AUTH_URL:e.profile.authUrl,OS_IDENTITY_API_VERSION:"3",OS_INTERFACE:"public",OS_PROJECT_DOMAIN_ID:e.session.project.domainId??"",OS_PROJECT_ID:e.session.project.id,OS_PROJECT_NAME:e.session.project.name,OS_REGION_NAME:e.profile.region,OS_TOKEN:e.session.token}),up=(e,t)=>({...Object.fromEntries(Object.entries(e).filter(([r])=>!r.startsWith("OS_"))),...t}),cs=["bash","zsh","fish"],vg=(e)=>cs.some((t)=>t===e),cp=(e,t)=>`'${t==="fish"?e.replaceAll("\\","\\\\").replaceAll("'","\\'"):e.replaceAll("'","'\\''")}'`,lp=(e,t)=>Object.entries(e).map(([r,n])=>t==="fish"?`set -gx ${r} ${cp(n,t)}`:`export ${r}=${cp(n,t)}`).join(`
80
- `),pp=(e)=>{let t=e?.split("/").at(-1)??"";return vg(t)?t:"bash"};import{chmod as $g,mkdir as dp,readFile as fp,rm as Sg,writeFile as mp}from"node:fs/promises";import{homedir as hp}from"node:os";import Qe from"node:path";var Q="prod",be={authUrl:"https://identity-api.nipa.cloud/v3",region:"NCP-TH",userDomain:"nipacloud"},Xe=I({authUrl:um({protocol:/^https?$/u}),project:os.optional(),region:v().min(1),userDomain:v().min(1),username:v().optional()}),ls=/^[a-z][\da-z-]{0,31}$/u,kg=lt(v().regex(ls),Xe),ps=(e)=>({[Q]:be,...e}),Pg=I({currentProfile:v().default(Q),profiles:kg.default({})}).strict().transform((e)=>({...e,profiles:ps(e.profiles)})),zg=Xe.extend({authUrl:Xe.shape.authUrl.default(be.authUrl),region:Xe.shape.region.default(be.region),userDomain:Xe.shape.userDomain.default(be.userDomain)}).transform((e)=>({currentProfile:Q,profiles:ps({[Q]:e})})),Eg=Ur([Pg,zg]),gp=I({endpoints:op.optional(),expiresAt:Mr.datetime({offset:!0}),project:os,token:v().min(1),user:I({id:v(),name:v()})}),Cg=lt(v(),gp),Og=Ur([I({sessions:Cg}).strict().transform((e)=>e.sessions),gp.transform((e)=>({[Q]:e}))]);class Xt extends Error{constructor(e){super(e);this.name="StoreError"}}var Tg=60000,ds=(e=process.env)=>e.NIPA_CONFIG_DIR??Qe.join(e.XDG_CONFIG_HOME??Qe.join(hp(),".config"),"nipa"),xp=()=>Qe.join(ds(),"config.json"),pn=()=>Qe.join(ds(),"auth.json"),us=(e,t=process.env)=>Qe.join(t.XDG_CACHE_HOME??Qe.join(hp(),".cache"),"nipa",e),dn=async(e,t)=>{try{let r=await fp(us(e),"utf-8"),n=t.safeParse(JSON.parse(r));return n.success?n.data:void 0}catch{return}},fn=async(e,t)=>{await dp(Qe.dirname(us(e)),{recursive:!0}),await mp(us(e),`${JSON.stringify(t)}
81
- `)},Ig=async(e)=>{try{return await fp(e,"utf-8")}catch(t){if(t instanceof Error&&"code"in t&&t.code==="ENOENT")return;throw t}},yp=async(e,t)=>{let r=await Ig(e);if(r===void 0)return;let n;try{n=JSON.parse(r)}catch{throw new Xt(`${e} isn't valid JSON`)}let o=t.safeParse(n);if(!o.success)throw new Xt(`${e}: ${st(o.error)}`);return o.data},fs=async(e,t)=>{await dp(ds(),{mode:448,recursive:!0}),await mp(e,`${JSON.stringify(t,null,2)}
82
- `,{mode:384}),await $g(e,384)},le=async()=>await yp(xp(),Eg)??{currentProfile:Q,profiles:ps({})},Me=(e)=>fs(xp(),e),ms=async()=>await yp(pn(),Og)??{},pe=async(e)=>(await ms())[e],hs=async(e)=>{let t=await ms();await fs(pn(),{sessions:{...t,[e.profile]:e.session}})},mn=async(e)=>{let t=await ms(),r=Object.fromEntries(Object.entries(t).filter(([n])=>n!==e));if(Object.keys(r).length===0){await Sg(pn(),{force:!0});return}await fs(pn(),{sessions:r})},gs=(e,t=Date.now())=>Date.parse(e.expiresAt)-t,ee=(e,t=Date.now())=>e!==void 0&&gs(e,t)>Tg;var _p="openstack.json",Lg=20000,Dg=lt(v(),Se(v())),Ng=I({bin:v(),mtimeMs:Xu(),table:Dg}),Fg=/^\s*cmds(?:_(?<key>\S+))?='(?<words>[^']*)'$/u,Ug=(e)=>Object.fromEntries(e.split(`
83
- `).flatMap((t)=>{let r=Fg.exec(t)?.groups;if(!r)return[];let n=r.words?.split(" ").filter(Boolean)??[];return[[r.key??"",n]]})),Mg=(e,t)=>{let r=t.at(-1)??"",n="";for(let s of t.slice(0,-1)){let i=(n?`${n}_${s}`:s).replaceAll("-","_");if(s.startsWith("-")||!Object.hasOwn(e,i))break;n=i}let o=e[n]??[];if(r.startsWith("-"))return o.filter((s)=>s.startsWith(r));return o.filter((s)=>s.startsWith(r)&&!s.startsWith("-")&&!s.includes("_"))},Bg=async(e)=>{let{mtimeMs:t}=await Zg(e),r=await dn(_p,Ng);if(r?.bin===e&&r.mtimeMs===t)return r.table;let n=Ag(e,["complete","--shell","none"],{stdio:["ignore","pipe","ignore"],timeout:Lg}),[o]=await Promise.all([jg(n.stdout),Rg(n,"close")]);if(n.exitCode!==0)return;let s=Ug(o);return await fn(_p,{bin:e,mtimeMs:t,table:s}),s},bp=async(e)=>{let t=un("openstack");if(!t)return[];let r=await Bg(t);return r?Mg(r,e):[]};var je=nt(Ft(),1);var gt={description:"Print JSON",long:"json",value:{kind:"none"}},wp={description:"Don't ask for confirmation",long:"yes",short:"y",value:{kind:"none"}},xs={description:"Use this profile (or set NIPA_PROFILE)",long:"profile",short:"P",value:{kind:"profile"}},ys={description:"Show help",long:"help",short:"h",value:{kind:"none"}},se=[xs,{description:"Log each HTTP request (or set NIPA_DEBUG=1)",long:"debug",short:"d",value:{kind:"none"}},{description:"Turn off colors (or set NO_COLOR=1)",long:"no-color",value:{kind:"none"}},ys,{description:"Show the version",long:"version",short:"v",value:{kind:"none"}}];var te=(e)=>[e.name,...e.aliases??[]],ie=(e)=>e.short?[`--${e.long}`,`-${e.short}`]:[`--${e.long}`],Qt=(e)=>{switch(e.kind){case"none":return"";case"text":return` <${e.name}>`;case"choice":return` <${e.choices.join("|")}>`;case"project":return" <project>";case"profile":return" <name>";default:return e}},_s=(e)=>e.length===1?e[0]:e[1],er=(e)=>e.sections.flatMap((t)=>t.commands);var bs=" ",Vg=80,tr=(e,t)=>e.map(([r,n])=>`${bs}${r.padEnd(t)} ${n}`).join(`
84
- `),vp=(e)=>Math.max(0,...e.map(([t])=>t.length)),$p=(e,t)=>{let r=[],n="";for(let o of e.split(" "))if(n&&t.length+n.length+1+o.length>Vg)r.push(n),n=o;else n=n?`${n} ${o}`:o;return r.push(n),r.map((o)=>`${t}${o}`).join(`
85
- `)},Gg=(e)=>{switch(e.arity){case"one":return`<${e.name}>`;case"optional":return`[${e.name}]`;case"rest":return`[${e.name}...]`;default:return e.arity}},Wg=(e)=>{let[t,...r]=e;if(!t)return[];if(r.length===0&&t.value.kind==="none")return[`[--${t.long}]`];return["[options]"]},Kg=(e)=>{switch(e.kind){case"program":case"openstack":return"<args...>";case"command":return"<command> [args...]";default:return e}},Sp=(e)=>{switch(e.kind){case"leaf":return[...e.args.map(Gg),...Wg(e.flags)].join(" ");case"group":return`[${e.subcommands.map((t)=>t.name).join("|")}]`;case"passthrough":return Kg(e.target);default:return e}},hn=(e)=>`nipa ${e.map((t)=>t.name).join(" ")}`,rr=(e)=>{let t=Sp(_s(e));return t?`${hn(e)} ${t}`:hn(e)},Jg=(e)=>{switch(e.kind){case"leaf":return e.flags;case"group":{let t=e.subcommands.flatMap((r)=>r.flags);return t.filter((r,n)=>t.findIndex((o)=>o.long===r.long)===n)}case"passthrough":return[];default:return e}},kp=(e)=>[`${e.short?`-${e.short}, `:" "}--${e.long}${Qt(e.value)}`,e.description],ws=(e)=>{let t=Sp(e);return[t?`${e.name} ${t}`:e.name,e.summary]},et=(e,t)=>` ${je.default.dim(`${e}:`)}
86
-
87
- ${t}
88
- `,Pp=(e)=>e.map((t)=>`${bs}${je.default.dim(t.description)}
89
- ${bs}${je.default.cyan("$")} ${t.command}`).join(`
87
+ `)}return x.write("payload.value = newResult;"),x.write("return payload;"),x.compile()},i,a=Ft,c=!X.jitless,l=c&&ca.value,p=t.catchall,d;e._zod.parse=(f,m)=>{d??(d=n.value);let g=f.value;if(!a(g))return f.issues.push({expected:"object",code:"invalid_type",input:g,inst:e}),f;if(c&&l&&m?.async===!1&&m.jitless!==!0){if(!i)i=s(t.shape);if(f=i(f,m),!p)return f;return uu([],g,f,m,d,e,m?.abortEarly===!0)}return r(f,m)}});function wc(e,t,r,n){for(let s of e)if(s.issues.length===0)return t.value=s.value,t;let o=e.filter((s)=>!Ee(s));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((s)=>s.issues.map((i)=>Ce(i,n,Q())))}),t}var pu=h("$ZodUnion",(e,t)=>{F.init(e,t),j(e,"optin",(n)=>n.def.options.some((o)=>o._zod.optin==="defaulted")?"defaulted":n.def.options.some((o)=>o._zod.optin!==void 0)?"optional":void 0),j(e,"optout",(n)=>n.def.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),j(e,"values",(n)=>{if(n.def.options.every((o)=>o._zod.values))return new Set(n.def.options.flatMap((o)=>Array.from(o._zod.values)));return}),j(e,"pattern",(n)=>{if(n.def.options.every((o)=>o._zod.pattern)){let o=n.def.options.map((s)=>s._zod.pattern);return new RegExp(`^(${o.map((s)=>kr(s.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(n,o)=>{if(r)return r(n,o);let s=!1,i=[];for(let a of t.options){let c=a._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)i.push(c),s=!0;else{if(c.issues.length===0)return c;i.push(c)}}if(!s)return wc(i,n,e,o);return Promise.all(i).then((a)=>wc(a,n,e,o))}});var du=h("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,s=t.left._zod.run({value:o,issues:[]},n),i=t.right._zod.run({value:o,issues:[]},n);if(s instanceof Promise||i instanceof Promise)return Promise.all([s,i]).then(([c,u])=>vc(r,c,u));return vc(r,s,i)}});function Io(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(nt(e)&&nt(t)){let r=Object.keys(t),n=Object.keys(e).filter((s)=>r.indexOf(s)!==-1),o={...e,...t};if(Object.prototype.hasOwnProperty.call(o,"__proto__"))delete o.__proto__;for(let s of n){if(s==="__proto__")continue;let i=Io(e[s],t[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],s=t[n],i=Io(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function vc(e,t,r){let n=new Map,o,s=new Map,i=(u,l)=>{let p;if(u.code==="unrecognized_keys"&&!u.path?.length)o??(o=u),p=u.keys;else if(u.code==="invalid_key"&&u.origin==="record"&&u.path?.length===1){let d=String(u.path[0]);if(!s.has(d))s.set(d,u);p=[d]}else return!1;for(let d of p){if(!n.has(d))n.set(d,{});n.get(d)[l]=!0}return!0};for(let u of t.issues)if(!i(u,"l"))e.issues.push(u);for(let u of r.issues)if(!i(u,"r"))e.issues.push(u);let a=[...n].filter(([,u])=>u.l&&u.r).map(([u])=>u);if(a.length){let u=o?a.filter((l)=>o.keys.includes(l)):[];if(u.length)e.issues.push({...o,keys:u});for(let l of a)if(!u.includes(l)&&s.has(l))e.issues.push(s.get(l))}let c=Io(t.value,r.value);if(!c.valid){if(Ee(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}var fu=h("$ZodRecord",(e,t)=>{F.init(e,t);let r=X.memoizer;r?.attach(e),e._zod.parse=(n,o)=>{let s=n.value;if(!nt(s))return n.issues.push({expected:"record",code:"invalid_type",input:s,inst:e}),n;let i=[],a=t.keyType._zod.values;if(a&&!t.partial){n.value=r?r.alloc(e,n,{},o):{};let c=new Set;for(let l of a)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){if(c.add(typeof l==="number"?l.toString():l),l==="__proto__")continue;let p=t.keyType._zod.run({value:l,issues:[]},o);if(p instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(p.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:p.issues.map((m)=>Ce(m,o,Q())),input:l,path:[l],inst:e});continue}let d=p.value;if(d==="__proto__")continue;let f=t.valueType._zod.run({value:s[l],issues:[]},o);if(f instanceof Promise)i.push(f.then((m)=>{if(m.issues.length)n.issues.push(...We(l,m.issues));n.value[d]=m.value}));else{if(f.issues.length)n.issues.push(...We(l,f.issues));n.value[d]=f.value}}let u;for(let l in s)if(!c.has(l))if(t.mode==="loose"){if(l==="__proto__")continue;n.value[l]=s[l]}else u=u??[],u.push(l);if(u&&u.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:u,continue:!0})}else{n.value=r?r.alloc(e,n,{},o):{};let c;for(let u of Reflect.ownKeys(s)){if(u==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(s,u))continue;let l=t.keyType._zod.run({value:u,issues:[]},o);if(l instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof u==="string"&&Vt.test(u)&&l.issues.length){let m=t.keyType._zod.run({value:Number(u),issues:[]},o);if(m instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(m.issues.length===0)l=m}if(l.issues.length){if(t.mode==="loose")n.value[u]=s[u];else if(a)c=c??[],c.push(u);else n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map((m)=>Ce(m,o,Q())),input:u,path:[u],inst:e});continue}let d=l.value;if(d==="__proto__")continue;let f=t.valueType._zod.run({value:s[u],issues:[]},o);if(f instanceof Promise)i.push(f.then((m)=>{if(m.issues.length)n.issues.push(...We(u,m.issues));n.value[d]=m.value}));else{if(f.issues.length)n.issues.push(...We(u,f.issues));n.value[d]=f.value}}if(c&&c.length>0)n.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:c,continue:!0})}if(i.length)return Promise.all(i).then(()=>n);return n}});var mu=h("$ZodEnum",(e,t)=>{F.init(e,t);let r=Ut(t.entries),n=new Set(r);e._zod.values=n,j(e,"pattern",(o)=>{let s=Ut(o.def.entries).filter((i)=>ua.has(typeof i));return new RegExp(s.length?`^(${s.map((i)=>gt(i.toString())).join("|")})$`:"^[^\\s\\S]$")}),e._zod.parse=(o,s)=>{let i=o.value;if(n.has(i))return o;return o.issues.push({code:"invalid_value",values:r,input:i,inst:e}),o}});var hu=h("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.optin="optional",X.memoizer?.guard(e),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Bt(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then((i)=>(r.value=i,r));if(o instanceof Promise)throw new Ie;return r.value=o,r}});function $c(e,t){return e.value=t.issues.length?void 0:t.value,e}var jo=h("$ZodOptional",(e,t)=>{F.init(e,t),j(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),e._zod.optout="optional",j(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n,void 0]):void 0}),j(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${kr(n.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(r.value===void 0){if(t.innerType._zod.optin!=="defaulted")return r;let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>$c(r,s));return $c(r,o)}return t.innerType._zod.run(r,n)}}),gu=h("$ZodExactOptional",(e,t)=>{jo.init(e,t),j(e,"values",(r)=>r.def.innerType._zod.values),j(e,"pattern",(r)=>r.def.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),xu=h("$ZodNullable",(e,t)=>{F.init(e,t),j(e,"optin",(r)=>r.def.innerType._zod.optin),j(e,"optout",(r)=>r.def.innerType._zod.optout),j(e,"pattern",(r)=>{let n=r.def.innerType._zod.pattern;return n?new RegExp(`^(${kr(n.source)}|null)$`):void 0}),j(e,"values",(r)=>r.def.innerType._zod.values?new Set([...r.def.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),yu=h("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="defaulted",j(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Sc(s,t));return Sc(o,t)}});function Sc(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var _u=h("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="defaulted",j(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),bu=h("$ZodNonOptional",(e,t)=>{F.init(e,t),j(e,"values",(r)=>{let n=r.def.innerType._zod.values;return n?new Set([...n].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>kc(s,e));return kc(o,e)}});function kc(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}function Pc(e,t,r,n){if(!t.issues.length){if(e.value=t.value,t.memo)e.memo=!0;return e}return e.value=r.catchValue({...t,value:e.value,error:{issues:t.issues.map((o)=>Ce(o,n,Q()))},input:e.value}),e}var wu=h("$ZodCatch",(e,t)=>{F.init(e,t),j(e,"optin",(r)=>r.def.innerType._zod.optin==="defaulted"?"defaulted":"optional"),j(e,"optout",(r)=>r.def.innerType._zod.optout),j(e,"values",(r)=>r.def.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run({value:r.value,issues:[]},n);if(o instanceof Promise)return o.then((s)=>Pc(r,s,t,n));return Pc(r,o,t,n)}});var vu=h("$ZodPipe",(e,t)=>{F.init(e,t),j(e,"values",(r)=>r.def.in._zod.values),j(e,"optin",(r)=>r.def.in._zod.optin),j(e,"optout",(r)=>r.def.out._zod.optout),j(e,"propValues",(r)=>r.def.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=t.out._zod.run(r,n);if(s instanceof Promise)return s.then((i)=>Dr(i,t.in,n));return Dr(s,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((s)=>Dr(s,t.out,n));return Dr(o,t.out,n)}});function Dr(e,t,r){if(e.issues.some((n)=>n.code!=="unrecognized_keys"))return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues},r)}var $u=h("$ZodReadonly",(e,t)=>{F.init(e,t),j(e,"propValues",(r)=>r.def.innerType._zod.propValues),j(e,"values",(r)=>r.def.innerType._zod.values),j(e,"optin",(r)=>r.def.innerType?._zod?.optin),j(e,"optout",(r)=>r.def.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(zc);return zc(o)}});function zc(e){if(!e.memo)e.value=Object.freeze(e.value);return e}var Su=h("$ZodCustom",(e,t)=>{J.init(e,t),F.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=(r)=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then((s)=>Ec(s,r,n,e));Ec(o,r,n,e);return}});function Ec(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};if(n._zod.def.params)o.params=n._zod.def.params;t.issues.push(ot(o))}}class Pu extends Error{constructor(){super("Cannot parse a reference cycle that closes through a transform");this.name="ZodCyclicError"}}var Zo="~memo",ku=[];function zu(e){return e!==null&&typeof e==="object"}function Ro(e){return e.map((t)=>t.path?{...t,path:t.path.slice()}:{...t})}var Eu=new WeakMap,Kt=0,Vr=1,Jt=2;function Wr(e,t,r){let n=Eu.get(e);if(n!==void 0)return n?Jt:Kt;if(t.has(e))return Jt;t.add(e);let o=Kt,s=(l)=>{if(o!==Jt&&l?._zod){let p=Wr(l,t,r);if(p>o)o=p}},i=(l,p)=>{let d=Kt;for(let f of Reflect.ownKeys(l)){let m=Object.getOwnPropertyDescriptor(l,f);if(p&&!m.enumerable)continue;let g=m.get?Vr:m.value?._zod?Wr(m.value,t,r):Kt;if(g>d)d=g}return d},a=(l)=>{if(l>o)o=l},c=e._zod.def,u=c.type;switch(u){case"object":{let l=Pr(c);a(l?i(l,!0):Vr),s(c.catchall);break}case"array":s(c.element);break;case"tuple":for(let l of c.items)s(l);s(c.rest);break;case"record":case"map":s(c.keyType),s(c.valueType);break;case"set":s(c.valueType);break;case"union":for(let l of c.options)s(l);break;case"intersection":s(c.left),s(c.right);break;case"optional":case"nullable":case"default":case"prefault":case"catch":case"readonly":case"nonoptional":case"promise":case"success":s(c.innerType);break;case"pipe":s(c.in),s(c.out);break;case"function":s(c.input),s(c.output);break;case"lazy":{let l=c._cachedInner??(r?e._zod.innerType:void 0);a(l?Wr(l,t,!1):Vr);break}case"template_literal":case"string":case"number":case"int":case"boolean":case"bigint":case"symbol":case"undefined":case"null":case"void":case"never":case"any":case"unknown":case"date":case"nan":case"enum":case"literal":case"file":case"transform":case"custom":break;default:for(let l in c){let p=Object.getOwnPropertyDescriptor(c,l);if(!p||p.get)continue;let d=p.value;if(!d||typeof d!=="object")continue;if(d._zod)s(d);else if(Array.isArray(d))for(let f of d)s(f)}}return t.delete(e),mh(e,o)}function mh(e,t){if(t!==Vr)Eu.set(e,t===Jt);return t}function hh(e,t){let r=e.buckets.get(t);if(!r)r=new WeakMap,e.buckets.set(t,r);return r}var Br,Gr=[],gh={alloc(e,t,r){let n=Br;if(!n)return r;Br=void 0;let o={value:r,issues:null};return n.set(t.value,o),Gr.push(o),r},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let r=e._zod.parse,n=(o,s)=>{if(s.direction!=="backward"&&xh(s,o.value))throw new Pu;return r(o,s)};if(e._zod.parse=n,e._zod.run===r)e._zod.run=n})},attach(e){var t;let r,n=!1,o,s;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let i=e._zod.parse,a=(c,u)=>{if(r===void 0){let _=Wr(e,new Set,!1);if(_===Kt){if(e._zod.parse=i,e._zod.run===a)e._zod.run=i;return i(c,u)}if(_===Jt||n)r=!0;else n=!0}let l=c.value;if(!zu(l))return i(c,u);let p=u[Zo];if(!p)p={buckets:new WeakMap,backEdges:void 0},u[Zo]=p;let d;if(o===u)d=s;else d=hh(p,e),o=u,s=d;let f=d.get(l);if(f){if(c.value=f.value,f.issues){if(f.issues.length)c.issues.push(...Ro(f.issues))}else c.memo=!0,p.backEdges??(p.backEdges=new WeakSet),p.backEdges.add(f.value);return c}Br=d;let m=Gr.length,g=i(c,u);Br=void 0;let x=Gr.length>m?Gr.pop():void 0;if(g instanceof Promise)return g.then((_)=>{if(x)x.issues=_.issues.length?Ro(_.issues):ku;return _});if(x)x.issues=g.issues.length?Ro(g.issues):ku;return g};if(e._zod.parse=a,e._zod.run===i)e._zod.run=a})}};function Lo(){return gh}function xh(e,t){let r=e[Zo]?.backEdges;return r!==void 0&&zu(t)&&r.has(t)}var yh=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(s){return e[s]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",currency_code:"currency code",credit_card:"credit card number",iban:"IBAN",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};function o(s,i){if(s==="number"&&typeof i==="number"&&!Number.isFinite(i))return String(i);return n[s]??s}return(s)=>{switch(s.code){case"invalid_type":{let i=o(s.expected),a=ma(s.input),c=o(a,s.input);return`Invalid input: expected ${i}, received ${c}`}case"invalid_value":if(s.values.length===1)return`Invalid input: expected ${fo(s.values[0])}`;return`Invalid option: expected one of ${uo(s.values,"|")}`;case"too_big":{let i=s.exact?"exactly ":s.inclusive?"<=":"<",a=t(s.origin);if(a)return`Too big: expected ${s.origin??"value"} to have ${i}${s.maximum.toString()} ${a.unit??"elements"}`;return`Too big: expected ${s.origin??"value"} to be ${i}${s.maximum.toString()}`}case"too_small":{let i=s.exact?"exactly ":s.inclusive?">=":">",a=t(s.origin);if(a)return`Too small: expected ${s.origin} to have ${i}${s.minimum.toString()} ${a.unit}`;return`Too small: expected ${s.origin} to be ${i}${s.minimum.toString()}`}case"invalid_format":{let i=s;if(i.format==="starts_with")return`Invalid string: must start with "${i.prefix}"`;if(i.format==="ends_with")return`Invalid string: must end with "${i.suffix}"`;if(i.format==="includes")return`Invalid string: must include "${i.includes}"`;if(i.format==="regex")return`Invalid string: must match pattern ${i.pattern}`;return`Invalid ${r[i.format]??s.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${s.divisor}`;case"unrecognized_keys":return`Unrecognized key${s.keys.length>1?"s":""}: ${uo(s.keys,", ")}`;case"invalid_key":return`Invalid key in ${s.origin}`;case"invalid_union":if(s.options&&Array.isArray(s.options)&&s.options.length>0)return`Invalid discriminator value. Expected ${s.options.map((a)=>`'${a}'`).join(" | ")}`;if(s.inclusive===!1)return"Invalid input: more than one option matched";return"Invalid input";case"invalid_element":return`Invalid value in ${s.origin}`;default:return"Invalid input"}}};function Do(){return{localeError:yh()}}var Cu;class Iu{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let n={...r,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Tu(){return new Iu}(Cu=globalThis).__zod_globalRegistry??(Cu.__zod_globalRegistry=Tu());var Ke=globalThis.__zod_globalRegistry;function Ou(e){if(e.checks)e.checks=[...e.checks];return e}function Au(e,t){return new e(Ou({type:"string",...v(t)}))}function ju(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...v(t)})}function Ru(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...v(t)})}function Zu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...v(t)})}function Lu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...v(t)})}function Du(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...v(t)})}function Nu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...v(t)})}function No(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...v(t)})}function Fu(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...v(t)})}function Uu(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...v(t)})}function Mu(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...v(t)})}function Bu(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...v(t)})}function Gu(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...v(t)})}function Vu(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...v(t)})}function Wu(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...v(t)})}function Ku(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...v(t)})}function Ju(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...v(t)})}function Hu(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...v(t)})}function qu(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...v(t)})}function Yu(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...v(t)})}function Xu(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...v(t)})}function Qu(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...v(t)})}function el(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...v(t)})}function Kr(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...v(t)})}function Jr(e,t){return new e({type:"string",format:"date",check:"string_format",...v(t)})}function Hr(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...v(t)})}function qr(e,t){return new e({type:"string",format:"duration",check:"string_format",...v(t)})}function tl(e,t){return new e(Ou({type:"number",checks:[],...v(t)}))}function rl(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...v(t)})}function nl(e,t){return new e({type:"boolean",...v(t)})}function ol(e){return new e({type:"unknown"})}function sl(e,t){return new e({type:"never",...v(t)})}function Yr(e,t){return new zo({check:"less_than",...v(t),value:e,inclusive:!1})}function Ht(e,t){return new zo({check:"less_than",...v(t),value:e,inclusive:!0})}function Xr(e,t){return new Eo({check:"greater_than",...v(t),value:e,inclusive:!1})}function qt(e,t){return new Eo({check:"greater_than",...v(t),value:e,inclusive:!0})}function Qr(e,t){return new sc({check:"multiple_of",...v(t),value:e})}function en(e,t){return new ac({check:"max_length",...v(t),maximum:e})}function yt(e,t){return new cc({check:"min_length",...v(t),minimum:e})}function tn(e,t){return new uc({check:"length_equals",...v(t),length:e})}function Fo(e,t){return new lc({check:"string_format",format:"regex",...v(t),pattern:e})}function Uo(e){return new pc({check:"string_format",format:"lowercase",...v(e)})}function Mo(e){return new dc({check:"string_format",format:"uppercase",...v(e)})}function Bo(e,t){return new fc({check:"string_format",format:"includes",...v(t),includes:e})}function Go(e,t){return new mc({check:"string_format",format:"starts_with",...v(t),prefix:e})}function Vo(e,t){return new hc({check:"string_format",format:"ends_with",...v(t),suffix:e})}function Je(e){return new gc({check:"overwrite",tx:e})}function Wo(e){return Je((t)=>t.normalize(e))}function Ko(){return Je((e)=>e.trim())}function Jo(){return Je((e)=>e.toLowerCase())}function Ho(){return Je((e)=>e.toUpperCase())}function qo(){return Je((e)=>aa(e))}function il(e,t,r){return new e({type:"array",element:t,...v(r)})}function al(e,t,r){return new e({type:"custom",check:"custom",fn:t,...v(r)})}function cl(e,t){let r=_h((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(ot(o,n.value,r._zod.def));else{let s=o;if(s.fatal)s.continue=!1;if(s.code??(s.code="custom"),!("input"in s))s.input=n.value;s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(ot(s))}},e(n.value,n)),t);return r}function _h(e,t){let r=new J({check:"custom",...v(t)});return r._zod.check=e,r}function Yt(e,...t){for(let r of t)for(let n of Reflect.ownKeys(r))if(Object.prototype.propertyIsEnumerable.call(r,n))ve(e,n,r[n]);return e}function Xo(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??Ke,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??"ref",reused:e?.reused??"inline",intersections:[],deferred:[],external:e?.external??void 0}}function st(e,t,r,n,o){let s=typeof t.unrepresentable==="function"?t.unrepresentable({zodSchema:e,path:n.path,message:o}):t.unrepresentable;if(s==="any")return!1;if(s===void 0||s==="throw")throw Error(o);return Object.assign(r,s),!0}function G(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s=t.seen.get(e);if(s){if(s.count++,r.schemaPath.includes(e))s.cycle=r.path;return s.schema}let i={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,i),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let a=e._zod.toJSONSchema?.();if(a)i.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,i.schema,l);else{let d=i.schema,f=t.processors[o.type];if(!f)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);f(e,t,d,l)}let p=e._zod.parent;if(p){if(!i.ref)i.ref=p;G(p,t,l),t.seen.get(p).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)Yt(i.schema,c);if(t.io==="input"&&H(e))delete i.schema.examples,delete i.schema.default;if(t.io==="input"&&"_prefault"in i.schema)(n=i.schema).default??(n.default=i.schema._prefault);return delete i.schema._prefault,t.seen.get(e).schema}function ul(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function Qo(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");if(e.external&&e.sharedDefsExtractedFor===e.external)return;let n=new Map;for(let i of e.seen.entries()){let a=e.metadataRegistry.get(i[0])?.id;if(a){let c=n.get(a);if(c&&c!==i[0])throw Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,i[0])}}let o=(i)=>{let a=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let p=e.external.registry.get(i[0])?.id,d=e.external.uri??((m)=>m);if(p)return{ref:d(p)};let f=i[1].defId??i[1].schema.id??`schema${e.counter++}`;return i[1].defId=f,{defId:f,ref:`${d("__shared")}#/${a}/${ul(f)}`}}let c="#",u=`${c}/${a}/`;if(i[1]===r&&!i[1].schema.id)return{ref:c};let l=i[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:u+ul(l)}},s=(i)=>{if(i[1].schema.$ref)return;let a=i[1],{ref:c,defId:u}=o(i);if(a.def={...a.schema},u)a.defId=u;let l=a.schema;for(let p in l)delete l[p];l.$ref=c};if(e.cycles==="throw")for(let i of e.seen.entries()){let a=i[1];if(a.cycle)throw Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
90
88
 
91
- `),gn=se.map(kp),vs=(e)=>{let{program:t}=e,r=t.sections.flatMap((i)=>i.commands.map(ws)),n=vp([...r,...gn]),o=t.sections.map((i)=>et(i.title,tr(i.commands.map(ws),n))),s=je.default.dim(`v${e.version}`);return["",` ${je.default.bold("nipa")} ${s}`,"",$p(t.summary," "),"",` ${je.default.dim("Usage:")} nipa [options] <command>`,"",...o,et("Global options",tr(gn,n)),et("Examples",Pp(t.examples)),` Run ${je.default.bold("nipa <command> --help")} for a command's options.`,""].join(`
92
- `)},xn=(e)=>{let t=_s(e),r=t.kind==="group"?t.subcommands.map(ws):[],n=Jg(t).map(kp),o=vp([...r,...n,...gn]),s=["",` ${je.default.dim("Usage:")} ${rr(e)}`,"",$p(t.description??t.summary," "),""];if(r.length>0)s.push(et("Subcommands",tr(r,o)));if(n.length>0)s.push(et("Options",tr(n,o)));if(s.push(et("Global options",tr(gn,o))),t.examples?.length)s.push(et("Examples",Pp(t.examples)));return s.join(`
93
- `)};var Cp=(e)=>new Map(e.flatMap((t)=>ie(t).map((r)=>[r,t]))),ks=(e)=>`Use one of: ${e.join(", ")}.`,Op=(e,t)=>{if(e.value.kind==="choice"&&!e.value.choices.includes(t))throw F(`unknown ${e.long} "${t}"`,ks(e.value.choices));return t},zp=(e)=>{let{flag:t,hints:r,name:n,next:o}=e;if(o===void 0||o.startsWith("-"))throw F(`${n} needs${Qt(t.value)}`,`Usage: ${r.usage}`);return Op(t,o)},Tp=(e)=>{let{hints:t,index:r,next:n,word:o}=e;if(o.startsWith("--")){let l=o.indexOf("="),p=l===-1?o:o.slice(0,l),d=r.get(p);if(!d)return;if(d.value.kind==="none"){if(l!==-1)throw F(`${p} doesn't take a value`,`Usage: ${t.usage}`);return{options:[{flag:d,value:!0}],used:1}}if(l!==-1)return{options:[{flag:d,value:Op(d,o.slice(l+1))}],used:1};return{options:[{flag:d,value:zp({flag:d,hints:t,name:p,next:n})}],used:2}}let s=[...o].slice(1),a=s.map((l)=>r.get(`-${l}`)).filter((l)=>l!==void 0);if(a.length!==s.length)return;let c=[],u=1;for(let[l,p]of a.entries())if(p.value.kind==="none")c.push({flag:p,value:!0});else if(l===a.length-1)c.push({flag:p,value:zp({flag:p,hints:t,name:`-${s[l]}`,next:n})}),u=2;else throw F(`-${s[l]} needs${Qt(p.value)}`,`Usage: ${t.usage}`);return{options:c,used:u}},Ss=(e,t)=>{let r=e.flatMap((n)=>{let o=t.get(n.long);return o===void 0?[]:[[n.long,o]]});return Object.fromEntries(r)},Hg={command:"nipa",usage:"nipa [options] <command>"},qg=Cp(se),Ep=(e)=>{let{at:t,words:r}=e,n=r[t];if(n===void 0||n==="--"||n==="-"||!n.startsWith("-"))return;let o=Tp({hints:Hg,index:qg,next:r[t+1],word:n});if(!o&&e.unknown==="reject")throw F(`unknown option "${n}"`,"Run `nipa --help` to see the options.");return o},Ps=(e)=>{let{unknown:t,words:r}=e,n=new Map,o=0;for(let s=Ep({at:o,unknown:t,words:r});s!==void 0;s=Ep({at:o,unknown:t,words:r})){for(let{flag:i,value:a}of s.options)n.set(i.long,a);o+=s.used}return{globals:Ss(se,n),rest:r.slice(o)}},Ip=(e)=>{let t=e.indexOf("--"),r=t===-1?e:e.slice(0,t),n=new Set(ie(ys));return r.some((o)=>n.has(o))},Yg=(e)=>{let{flags:t,hints:r,words:n}=e,o=Cp([...t,...se]),s=new Set(t.map((l)=>l.long)),i=new Map,a=new Map,c=[],u=0;while(u<n.length){let l=n[u]??"";if(l==="--"){c.push(...n.slice(u+1));break}if(l.startsWith("-")&&l!=="-"){let p=Tp({hints:r,index:o,next:n[u+1],word:l});if(!p)throw F(`unknown option "${l}"`,`Run \`${r.command} --help\` to see the options.`);for(let{flag:d,value:f}of p.options)(s.has(d.long)?i:a).set(d.long,f);u+=p.used}else c.push(l),u+=1}return{globals:a,own:i,positionals:c}},$s=(e,t)=>{if(e.value.kind==="choice"&&!e.value.choices.includes(t))throw F(`unknown ${e.name} "${t}"`,ks(e.value.choices));return t},Xg=(e)=>{let t=[...e.positionals],r=e.args.map((o)=>{switch(o.arity){case"one":{let s=t.shift();if(s===void 0)throw F(`missing <${o.name}>`,o.value.kind==="choice"?ks(o.value.choices):`Usage: ${e.hints.usage}`);return[o.name,$s(o,s)]}case"optional":{let s=t.shift();return[o.name,s===void 0?void 0:$s(o,s)]}case"rest":return[o.name,t.splice(0).map((s)=>$s(o,s))];default:return o.arity}}),[n]=t;if(n!==void 0)throw F(`unexpected argument "${n}"`,`Usage: ${e.hints.usage}`);return Object.fromEntries(r)},Ap=(e)=>{let{path:t,spec:r,words:n}=e,o={command:hn(t),usage:rr(t)},s=Yg({flags:r.flags,hints:o,words:n});return{globals:Ss(se,s.globals),input:{args:Xg({args:r.args,hints:o,positionals:s.positionals}),flags:Ss(r.flags,s.own)}}};var B=(e)=>({...e,kind:"leaf"}),yn=(e)=>({...e,kind:"group"}),xt=(e)=>({...e,kind:"passthrough"}),Z=(e,t)=>({kind:"leaf",prepare:({path:r,words:n})=>{let o=Ap({path:r,spec:e,words:n});return{globals:o.globals,run:(s)=>t({...o.input,client:s})}},spec:e}),_n=(e,t)=>{let r=Object.values(t),n=new Map(r.flatMap((o)=>te(o.spec).map((s)=>[s,o])));return{fallback:t[e.default],kind:"group",spec:e,subcommands:n}},Qg=(e,t)=>{let{target:r}=e;switch(r.kind){case"program":return{args:t,command:r.program};case"openstack":return{args:t,command:"openstack"};case"command":{let[n,...o]=t;if(n===void 0)throw F("missing <command>",`Usage: ${rr([e])}`);return{args:o,command:n}}default:return r}},yt=(e,t)=>({kind:"passthrough",run:({client:r,words:n})=>t({...Qg(e,n),client:r}),spec:e}),Rp=(e)=>e.spec,Zp=(e)=>({examples:e.examples,hidden:e.hidden.map(Rp),sections:e.sections.map((t)=>({commands:t.commands.map(Rp),title:t.title})),summary:e.summary});var jp=["bash","zsh","fish","pwsh"],Lp=["projects","profiles","openstack"],_t=(e)=>`nipa __complete ${e}`,tt=ie(xs),ex=(e)=>e.filter((t)=>t.kind==="passthrough").flatMap((t)=>te(t)),zs=(e)=>[...e.flags,...se],vn=(e)=>{let t=e.args.findIndex((n)=>n.value.kind!=="text"),r=e.args[t];return r?{arg:r,position:t+1}:void 0},tx=(e)=>{switch(e.kind){case"none":return;case"text":return"return";case"choice":return`_nipa_reply ${e.choices.join(" ")}; return`;case"project":return`_nipa_reply "$(${_t("projects")} 2>/dev/null)"; return`;case"profile":return`_nipa_reply "$(${_t("profiles")} 2>/dev/null)"; return`;default:return e}},rx=(e)=>{switch(e.kind){case"text":return;case"project":return`_nipa_reply "$(${_t("projects")} 2>/dev/null)"`;case"profile":return`_nipa_reply "$(${_t("profiles")} 2>/dev/null)"`;case"choice":return`_nipa_reply ${e.choices.join(" ")}`;default:return e}},nx=(e)=>{switch(e.kind){case"program":return`COMP_WORDS[i]=${e.program}; _nipa_offset "$i"`;case"command":return'_nipa_offset "$((i + 1))"';case"openstack":return'_nipa_reply "$(nipa __complete openstack -- "${COMP_WORDS[@]:i+1:COMP_CWORD-i}" 2>/dev/null)"';default:return e}},Dp=(e,t)=>{let r=" ".repeat(t*2+2),n=[];if(e.kind==="group"){let s=e.subcommands;n.push(`if [[ $COMP_CWORD -eq $((i + 1)) ]]; then _nipa_reply ${s.map((i)=>i.name).join(" ")}; return; fi`,"case ${COMP_WORDS[i + 1]} in",...s.map((i)=>Dp(i,t+1)),"esac")}else if(e.kind==="passthrough")n.push(nx(e.target));else{let s=zs(e),i=s.flatMap((l)=>{let p=tx(l.value);return p===void 0?[]:[` ${ie(l).join("|")}) ${p} ;;`]});if(i.length>0)n.push('case "$prev" in',...i,"esac");let a=s.flatMap(ie).join(" ");n.push(`if [[ $cur == -* ]]; then _nipa_reply ${a}; return; fi`);let c=vn(e),u=c&&rx(c.arg.value);if(u)n.push(u)}let o=n.map((s)=>`${r} ${s}`).join(`
94
- `);return`${r}${te(e).join("|")})
89
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let i of e.seen.entries()){let a=i[1];if(t===i[0]){s(i);continue}if(e.external){let u=e.external.registry.get(i[0])?.id;if(t!==i[0]&&u){s(i);continue}}if(e.metadataRegistry.get(i[0])?.id){s(i);continue}if(a.cycle){s(i);continue}if(a.count>1){if(e.reused==="ref")s(i)}}if(e.external)e.sharedDefsExtractedFor=e.external}function dl(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let r=[];for(let n of t){if(!n||typeof n!=="object")return;dl(n);let o=Object.keys(n);if(o.length!==1||o[0]!=="type")return;let s=n.type;for(let i of Array.isArray(s)?s:[s]){if(typeof i!=="string")return;if(!r.includes(i))r.push(i)}}delete e.anyOf,e.type=r.length===1?r[0]:r}var fl=new Set(["type","properties","required","additionalProperties"]),ll=["oneOf","anyOf"];function pl(e){let t=e.additionalProperties;if(t===void 0||t===!1||typeof t!=="object"||t===null)return null;return Object.keys(t).length?t:null}function Yo(e){let t=[];for(let s of e){if(typeof s!=="object"||s.type!=="object")return null;for(let i in s)if(!fl.has(i))return null;t.push(s)}let r={},n=new Set;for(let s of t){for(let i in s.properties){if(Object.prototype.hasOwnProperty.call(r,i))continue;let a=[];for(let u of t){let l=u.properties?.[i]??pl(u);if(l===null||l===void 0)continue;if(!a.some((p)=>JSON.stringify(p)===JSON.stringify(l)))a.push(l)}let c=a.length===1?a[0]:Yo(a)??{allOf:a};ve(r,i,c)}for(let i of s.required??[])n.add(i)}let o={type:"object",properties:r};if(n.size)o.required=[...n];if(t.every((s)=>s.additionalProperties===!1))o.additionalProperties=!1;else{let s=[];for(let i of t){let a=pl(i);if(a&&!s.some((c)=>JSON.stringify(c)===JSON.stringify(a)))s.push(a)}if(s.length===1)o.additionalProperties=s[0];else if(s.length>1)o.additionalProperties={allOf:s}}return o}function bh(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let o of fl)if(o in e)return;let r=t.filter((o)=>ll.some((s)=>Array.isArray(o[s]))),n=null;if(!r.length)n=Yo(t);else{let o=r[0],s=ll.find((c)=>Array.isArray(o[c]));if(Object.keys(o).length!==1)return;let i=t.filter((c)=>c!==o),a=o[s].map((c)=>Yo([...i,c]));if(a.some((c)=>!c))return;n={[s]:a}}if(!n)return;delete e.allOf,Yt(e,n)}function es(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=(a)=>{let c=e.seen.get(a);if(c.ref===null)return;let u=c.def??c.schema,l={...u},p=c.ref;if(c.ref=null,p){n(p);let f=e.seen.get(p),m=f.schema;if(m.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))u.allOf=u.allOf??[],u.allOf.push(m);else Yt(u,m);if(Yt(u,l),a._zod.parent===p)for(let x in u){if(x==="$ref"||x==="allOf")continue;if(!(x in l))delete u[x]}if(m.$ref&&f.def)for(let x in u){if(x==="$ref"||x==="allOf")continue;if(x in f.def&&JSON.stringify(u[x])===JSON.stringify(f.def[x]))delete u[x]}}let d=a._zod.parent;if(d&&d!==p){n(d);let f=e.seen.get(d);if(f?.schema.$ref){if(u.$ref=f.schema.$ref,f.def)for(let m in u){if(m==="$ref"||m==="allOf")continue;if(m in f.def&&JSON.stringify(u[m])===JSON.stringify(f.def[m]))delete u[m]}}}e.override({zodSchema:a,jsonSchema:u,path:c.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let a of[...e.seen.entries()].reverse())n(a[0]);if(e.target!=="openapi-3.0")for(let a of e.seen.entries())dl(a[1].def??a[1].schema);for(let a of e.deferred)a();if(e.intersections.length){let a=new Map;for(let c of e.seen.values())for(let u of[c.schema,c.def]){let l=u?.allOf;if(!Array.isArray(l))continue;let p=a.get(l);if(p)p.push(u);else a.set(l,[u])}for(let c of e.intersections)for(let u of a.get(c)??[])bh(u)}}let o={};if(e.target==="draft-2020-12")o.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")o.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")o.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let a=e.external.registry.get(t)?.id;if(!a)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}Yt(o,r.defId?r.schema:r.def??r.schema);let s=e.metadataRegistry.get(t)?.id;if(s!==void 0&&o.id===s)delete o.id;let i=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let a of e.seen.entries()){let c=a[1];if(c.def&&c.defId){if(c.def.id===c.defId)delete c.def.id;ve(i,c.defId,c.def)}}if(e.external)e.sharedEmitDoneFor=e.external;if(e.external);else if(Object.keys(i).length>0)if(e.target==="draft-2020-12")o.$defs=i;else o.definitions=i;try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:Xt(t,"input",e.processors),output:Xt(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch(a){throw Error("Error converting schema to JSON.")}}function H(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return H(n.element,r);if(n.type==="set")return H(n.valueType,r);if(n.type==="lazy")return H(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault"||n.type==="catch")return H(n.innerType,r);if(n.type==="intersection")return H(n.left,r)||H(n.right,r);if(n.type==="record"||n.type==="map")return H(n.keyType,r)||H(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return H(n.in,r)||H(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(H(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(H(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(H(o,r))return!0;if(n.rest&&H(n.rest,r))return!0;return!1}return!1}var ml=(e,t={})=>(r)=>{let n=Xo({...r,processors:t});return G(e,n),Qo(n,e),es(n,e)},Xt=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:s}=n??{},i=Xo({...o??{},target:s,io:t,processors:r});return G(e,i),Qo(i,e),es(i,e)};var _t=(e,t,r)=>{if(e[t]===void 0||r>e[t])e[t]=r},bt=(e,t,r)=>{if(e[t]===void 0||r<e[t])e[t]=r},hl=(e,t)=>{_t(e,"minimum",t),bt(e,"maximum",t)},_l=(e,t)=>{if(e.multipleOf??(e.multipleOf=[]),!e.multipleOf.includes(t))e.multipleOf.push(t)},bl=(e,t)=>{e.patterns??(e.patterns=new Set),e.patterns.add(t)},wl=(e,t)=>{e.mime=e.mime?e.mime.filter((r)=>t.includes(r)):[...t]},vl=(e,t)=>{if(e.format=t,t.includes("int"))e.isInt=!0},gl=(e,t)=>_t(e,"minimum",t.minimum),xl=(e,t)=>bt(e,"maximum",t.maximum),yl=(e)=>(t,r)=>{vl(t,r.format);let[n,o]=e[r.format];_t(t,"minimum",n),bt(t,"maximum",o)},wh={greater_than:(e,t)=>_t(e,t.inclusive?"minimum":"exclusiveMinimum",t.value),less_than:(e,t)=>bt(e,t.inclusive?"maximum":"exclusiveMaximum",t.value),multiple_of:(e,t)=>_l(e,t.value),number_format:yl(zr),bigint_format:yl(mo),min_length:gl,max_length:xl,length_equals:(e,t)=>hl(e,t.length),min_size:gl,max_size:xl,size_equals:(e,t)=>hl(e,t.size),string_format:(e,t)=>{if(vl(e,t.format),t.pattern)bl(e,t.pattern);if(t.format==="base64"||t.format==="base64url")e.contentEncoding=t.format;if(t.local||t.precision===-1)e.laxFormat=!0},mime_type:(e,t)=>wl(e,t.mime)};function de(e){let t={},r=e._zod.def,n=e._zod.traits.has("$ZodCheck")?[e,...r.checks??[]]:r.checks??[];for(let s of n)wh[s._zod.def.check]?.(t,s._zod.def);let o=e._zod.bag;if(o.minimum!==void 0)_t(t,"minimum",o.minimum);if(o.exclusiveMinimum!==void 0)_t(t,"exclusiveMinimum",o.exclusiveMinimum);if(o.maximum!==void 0)bt(t,"maximum",o.maximum);if(o.exclusiveMaximum!==void 0)bt(t,"exclusiveMaximum",o.exclusiveMaximum);if(o.multipleOf!==void 0)_l(t,o.multipleOf);if(o.format!==void 0){if(t.format??(t.format=o.format),o.format.includes("int"))t.isInt=!0}if(o.mime)wl(t,o.mime);for(let s of o.patterns??[])bl(t,s);return t}var vh={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},$h=new Map([[Oo,Ka],[Mr,Ja]]),$l=(e)=>$h.get(e)??e,Sl=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:s,maximum:i,format:a,patterns:c,contentEncoding:u,laxFormat:l}=de(e);if(typeof s==="number")o.minLength=s;if(typeof i==="number")o.maxLength=i;if(a){if(o.format=vh[a]??a,o.format==="")delete o.format;if(a==="time"||l)delete o.format}if(u)o.contentEncoding=u;if(c&&c.size>0){let p=[...c].map($l);if(p.length===1)o.pattern=p[0].source;else if(p.length>1)o.allOf=[...p.map((d)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))]}},kl=(e,t,r,n)=>{let o=r,{minimum:s,maximum:i,multipleOf:a,exclusiveMaximum:c,exclusiveMinimum:u,isInt:l}=de(e);o.type=l?"integer":"number";let p=typeof u==="number"&&u>=(s??Number.NEGATIVE_INFINITY),d=typeof c==="number"&&c<=(i??Number.POSITIVE_INFINITY),f=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(f)o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;else if(typeof s==="number")o.minimum=s;if(d)if(f)o.maximum=c,o.exclusiveMaximum=!0;else o.exclusiveMaximum=c;else if(typeof i==="number")o.maximum=i;if(a){let m=new Set;for(let _ of a)if(Number.isFinite(_)&&_!==0)m.add(Math.abs(_));else st(e,t,o,n,`A multipleOf divisor of ${_} cannot be represented in JSON Schema`);let[g,...x]=m;if(g!==void 0)o.multipleOf=g;if(x.length)o.allOf=[...o.allOf??[],...x.map((_)=>({multipleOf:_}))]}},Pl=(e,t,r,n)=>{r.type="boolean"};var zl=(e,t,r,n)=>{r.not={}};var El=(e,t,r,n)=>{};var Cl=(e,t,r,n)=>{let o=e._zod.def,s=Ut(o.entries);if(s.length===0){r.not={};return}if(s.every((i)=>typeof i==="number"))r.type="number";if(s.every((i)=>typeof i==="string"))r.type="string";r.enum=s};var Il=(e,t,r,n)=>{st(e,t,r,n,"Custom types cannot be represented in JSON Schema")};var Tl=(e,t,r,n)=>{st(e,t,r,n,"Transforms cannot be represented in JSON Schema")};var Ol=(e,t,r,n)=>{let o=r,s=e._zod.def,{minimum:i,maximum:a}=de(e);if(typeof i==="number")o.minItems=i;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=G(s.element,t,{...n,path:[...n.path,"items"]})};function rn(e){let t=e._zod.def;if(t.type==="pipe"&&t.in._zod.traits.has("$ZodTransform"))return rn(t.out);if(t.type==="catch")return rn(t.innerType);return e._zod.optin}var Al=(e,t,r,n)=>{let o=r,s=e._zod.def,i=s.shape;if(Object.getOwnPropertySymbols(i).length&&st(e,t,o,n,"Symbol keys cannot be represented in JSON Schema"))return;o.type="object",o.properties={};for(let u in i)ve(o.properties,u,G(i[u],t,{...n,path:[...n.path,"properties",u]}));let c=[];for(let u of Object.keys(i)){let l=s.shape[u];if(t.io==="input"?rn(l)===void 0:l._zod.optout===void 0)c.push(u)}if(c.length>0)o.required=c;if(s.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!s.catchall){if(t.io==="output")o.additionalProperties=!1}else if(s.catchall)o.additionalProperties=G(s.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},jl=(e,t,r,n)=>{let o=e._zod.def,s=o.inclusive===!1,i=o.options.map((a,c)=>G(a,t,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));if(s)r.oneOf=i;else r.anyOf=i},Rl=(e,t,r,n)=>{let o=e._zod.def,s=G(o.left,t,{...n,path:[...n.path,"allOf",0]}),i=G(o.right,t,{...n,path:[...n.path,"allOf",1]}),a=(u)=>("allOf"in u)&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(i)?i.allOf:[i]];r.allOf=c,t.intersections.push(c)};function ts(e,t,r){if(t.$ref){if(r.has(t))return t;r.add(t);let m=e.get(t)?.def;if(!m)return t;let g=ts(e,m,r);return g===m?t:g}for(let m of["anyOf","oneOf"]){let g=t[m];if(!Array.isArray(g))continue;let x=g.map((_)=>ts(e,_,r));if(x.some((_,w)=>_!==g[w]))t={...t,[m]:x}}let n=Array.isArray(t.type)?t.type:[t.type],o=!n.includes("string")&&n.some((m)=>m==="number"||m==="integer"),s=t.enum??(t.const!==void 0?[t.const]:void 0);if(!o&&!s?.some((m)=>typeof m==="number"))return t;let{minimum:i,maximum:a,exclusiveMinimum:c,exclusiveMaximum:u,multipleOf:l,format:p,id:d,...f}=t;if(f.enum)f.enum=f.enum.map((m)=>typeof m==="number"?String(m):m);else if(typeof f.const==="number")f.const=String(f.const);if(!o)return f;if(f.type="string",!s)f.pattern=(n.includes("number")?Vt:ko).source;return f}var rs=new WeakMap;function Sh(e){let t=new Map;for(let n of e.seen.values())if(n.def&&!t.has(n.schema))t.set(n.schema,n);let r=new Map;for(let n of rs.get(e)??[]){let o=e.seen.get(n),s=(o?.def??o?.schema)?.propertyNames;if(!s||s===!0||r.has(s))continue;let i=ts(t,s,new Set);if(i!==s)r.set(s,i)}if(!r.size)return;for(let n of e.seen.values())for(let o of[n.schema,n.def]){let s=o&&r.get(o.propertyNames);if(s)o.propertyNames=s}}var Zl=(e,t,r,n)=>{let o=r,s=e._zod.def;o.type="object";let i=s.keyType,a=de(i).patterns;if(s.mode==="loose"&&a&&a.size>0){let l=G(s.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let p of a)ve(o.patternProperties,$l(p).source,l)}else{if(t.target==="draft-07"||t.target==="draft-2020-12"){o.propertyNames=G(s.keyType,t,{...n,path:[...n.path,"propertyNames"]});let l=rs.get(t);if(!l)l=[],rs.set(t,l),t.deferred.push(()=>Sh(t));l.push(e)}o.additionalProperties=G(s.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let c=i._zod.values,u=t.io==="input"&&rn(s.valueType)!==void 0;if(c&&!s.partial&&!u){let l=[...c].filter((p)=>typeof p==="string"||typeof p==="number");if(l.length>0)o.required=l.map(String)}},Ll=(e,t,r,n)=>{let o=e._zod.def,s=G(o.innerType,t,n),i=t.seen.get(e);if(t.target==="openapi-3.0")i.ref=o.innerType,r.nullable=!0;else r.anyOf=[s,{type:"null"}]},Dl=(e,t,r,n)=>{let o=e._zod.def;G(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType},ns=Symbol();function Nl(e,t,r,n,o){let s=!1,i=JSON.stringify(e,(a,c)=>{if(typeof c!=="bigint")return c;return s=!0,null});if(!s)return JSON.parse(i);return st(t,r,n,o,"BigInt defaults cannot be represented in JSON Schema"),ns}var Fl=(e,t,r,n)=>{let o=e._zod.def;G(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i=Nl(o.defaultValue,e,t,r,n);if(i!==ns)r.default=i},Ul=(e,t,r,n)=>{let o=e._zod.def;G(o.innerType,t,n);let s=t.seen.get(e);if(s.ref=o.innerType,t.io!=="input")return;let i=Nl(o.defaultValue,e,t,r,n);if(i!==ns)r._prefault=i},Ml=(e,t,r,n)=>{let o=e._zod.def;G(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType;let i;try{i=o.catchValue(void 0)}catch{st(e,t,r,n,"Dynamic catch values are not supported in JSON Schema");return}r.default=i},Bl=(e,t,r,n)=>{let o=e._zod.def,s=o.in._zod.traits.has("$ZodTransform"),i=t.io==="input"?s?o.out:o.in:o.out;G(i,t,n);let a=t.seen.get(e);a.ref=i},Gl=(e,t,r,n)=>{let o=e._zod.def;G(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType,r.readOnly=!0};var os=(e,t,r,n)=>{let o=e._zod.def;G(o.innerType,t,n);let s=t.seen.get(e);s.ref=o.innerType};var Vl=new WeakSet([Object.prototype,Error.prototype]);function nn(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let n=r(this);return Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0}),n},set(n){Object.defineProperty(this,t,{value:n,configurable:!0,writable:!0})}})}var Ah=(e,t)=>{va.init(e,t),e.name="ZodError";let r=Object.getPrototypeOf(e);if(Vl.has(r))return;Vl.add(r),nn(r,"format",(n)=>(o)=>bo(n,o)),nn(r,"flatten",(n)=>(o)=>_o(n,o)),nn(r,"addIssue",(n)=>(o)=>{n.issues.push(o),n.message=JSON.stringify(n.issues,Mt,2)}),nn(r,"addIssues",(n)=>(o)=>{n.issues.push(...o),n.message=JSON.stringify(n.issues,Mt,2)}),Object.defineProperty(r,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}})};var ie=h("ZodError",Ah,void 0,{Parent:Error});var Wl=Ar(ie),Kl=jr(ie),Jl=Rr(ie),Hl=Zr(ie),ql=Sa(ie),Yl=ka(ie),Xl=Pa(ie),Ql=za(ie),ep=Ea(ie),tp=Ca(ie),rp=Ia(ie),np=Ta(ie);function Rh(){if(!X.localeError)Q(Do())}function sn(){if(!X.memoizer)Q({memoizer:Lo()})}var M=h("ZodType",(e,t)=>(Rh(),F.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(se(t,{checks:[...t.checks??[],...e.map((r)=>typeof r==="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return $e(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(Eg(e,t))},superRefine(e,t){return this.check(Cg(e,t))},overwrite(e){return this.check(Je(e))},optional(){return ip(this)},exactOptional(){return hg(this)},nullable(){return ap(this)},nullish(){return ip(ap(this))},nonoptional(e){return wg(this,e)},array(){return fe(this)},or(e){return as([this,e])},and(e){return pg(this,e)},transform(e){return cp(this,mg(e))},default(e){return yg(this,e)},prefault(e){return bg(this,e)},catch(e){return $g(this,e)},pipe(e){return cp(this,e)},readonly(){return Pg(this)},describe(e){let t=this.clone();return Ke.add(t,{description:e}),t},meta(...e){if(e.length===0)return Ke.get(this);let t=this.clone();return Ke.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get "~standard"(){return Tr(this,"~standard",{...To(this),jsonSchema:{input:Xt(this,"input"),output:Xt(this,"output")}})},set "~standard"(e){Ue(this,"~standard",e)},parse:function e(t,r){return Wl(this,t,r,{callee:e})},parseAsync:async function e(t,r){return await Kl(this,t,r,{callee:e})},safeParse(e,t){return Jl(this,e,t)},async safeParseAsync(e,t){return Hl(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){Ue(this,"spa",e)},validate(e,t){return wo(this,e,t)},validateAsync(e,t){return vo(this,e,t)},encode:function e(t,r){return ql(this,t,r,{callee:e})},decode:function e(t,r){return Yl(this,t,r,{callee:e})},encodeAsync:async function e(t,r){return await Xl(this,t,r,{callee:e})},decodeAsync:async function e(t,r){return await Ql(this,t,r,{callee:e})},safeEncode(e,t){return ep(this,e,t)},safeDecode(e,t){return tp(this,e,t)},async safeEncodeAsync(e,t){return rp(this,e,t)},async safeDecodeAsync(e,t){return np(this,e,t)},toJSONSchema(e){return ml(this,{})(e)},get description(){return Ke.get(this)?.description},get _def(){return this._zod.def}}),up=h("_ZodString",(e,t)=>{Ur.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Sl(e,r,n,o)},ga({format:(e)=>de(e).format??null,minLength:(e)=>de(e).minimum??null,maxLength:(e)=>de(e).maximum??null},{regex(...e){return this.check(Fo(...e))},includes(...e){return this.check(Bo(...e))},startsWith(...e){return this.check(Go(...e))},endsWith(...e){return this.check(Vo(...e))},min(...e){return this.check(yt(...e))},max(...e){return this.check(en(...e))},length(...e){return this.check(tn(...e))},nonempty(...e){return this.check(yt(1,...e))},lowercase(e){return this.check(Uo(e))},uppercase(e){return this.check(Mo(e))},trim(){return this.check(Ko())},normalize(...e){return this.check(Wo(...e))},toLowerCase(){return this.check(Jo())},toUpperCase(){return this.check(Ho())},slugify(){return this.check(qo())}})),Zh=h("ZodString",(e,t)=>{Ur.init(e,t),up.init(e,t)},{email(e){return this.check(ju(Lh,e))},url(e){return this.check(No(lp,e))},jwt(e){return this.check(el(eg,e))},emoji(e){return this.check(Fu(Fh,e))},guid(e){return this.check(Ru(Dh,e))},uuid(e){return this.check(Zu(on,e))},uuidv4(e){return this.check(Lu(on,e))},uuidv6(e){return this.check(Du(on,e))},uuidv7(e){return this.check(Nu(on,e))},nanoid(e){return this.check(Uu(Uh,e))},cuid(e){return this.check(Mu(Mh,e))},cuid2(e){return this.check(Bu(Bh,e))},ulid(e){return this.check(Gu(Gh,e))},base64(e){return this.check(Yu(Yh,e))},base64url(e){return this.check(Xu(Xh,e))},xid(e){return this.check(Vu(Vh,e))},ksuid(e){return this.check(Wu(Wh,e))},ipv4(e){return this.check(Ku(Kh,e))},ipv6(e){return this.check(Ju(Jh,e))},cidrv4(e){return this.check(Hu(Hh,e))},cidrv6(e){return this.check(qu(qh,e))},e164(e){return this.check(Qu(Qh,e))},datetime(e){return this.check(Kr(er,e))},date(e){return this.check(Jr(tr,e))},time(e){return this.check(Hr(rr,e))},duration(e){return this.check(qr(nr,e))}});function b(e){return Au(Zh,e)}var U=h("ZodStringFormat",(e,t)=>{L.init(e,t),up.init(e,t)}),er=h("ZodISODateTime",(e,t)=>{Bc.init(e,t),U.init(e,t)}),tr=h("ZodISODate",(e,t)=>{Gc.init(e,t),U.init(e,t)}),rr=h("ZodISOTime",(e,t)=>{Vc.init(e,t),U.init(e,t)}),nr=h("ZodISODuration",(e,t)=>{Wc.init(e,t),U.init(e,t)}),Lh=h("ZodEmail",(e,t)=>{Oc.init(e,t),U.init(e,t)});var Dh=h("ZodGUID",(e,t)=>{Ic.init(e,t),U.init(e,t)});var on=h("ZodUUID",(e,t)=>{Tc.init(e,t),U.init(e,t)});var lp=h("ZodURL",(e,t)=>{Rc.init(e,t),U.init(e,t)});function Nh(e){return No(lp,e)}var Fh=h("ZodEmoji",(e,t)=>{Zc.init(e,t),U.init(e,t)});var Uh=h("ZodNanoID",(e,t)=>{Lc.init(e,t),U.init(e,t)});var Mh=h("ZodCUID",(e,t)=>{Dc.init(e,t),U.init(e,t)});var Bh=h("ZodCUID2",(e,t)=>{Nc.init(e,t),U.init(e,t)});var Gh=h("ZodULID",(e,t)=>{Fc.init(e,t),U.init(e,t)});var Vh=h("ZodXID",(e,t)=>{Uc.init(e,t),U.init(e,t)});var Wh=h("ZodKSUID",(e,t)=>{Mc.init(e,t),U.init(e,t)});var Kh=h("ZodIPv4",(e,t)=>{Kc.init(e,t),U.init(e,t)});var Jh=h("ZodIPv6",(e,t)=>{Hc.init(e,t),U.init(e,t)});var Hh=h("ZodCIDRv4",(e,t)=>{qc.init(e,t),U.init(e,t)});var qh=h("ZodCIDRv6",(e,t)=>{Yc.init(e,t),U.init(e,t)});var Yh=h("ZodBase64",(e,t)=>{Qc.init(e,t),U.init(e,t)});var Xh=h("ZodBase64URL",(e,t)=>{eu.init(e,t),U.init(e,t)});var Qh=h("ZodE164",(e,t)=>{tu.init(e,t),U.init(e,t)});var eg=h("ZodJWT",(e,t)=>{ru.init(e,t),U.init(e,t)});var pp=h("ZodNumber",(e,t)=>{Ao.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>kl(e,r,n,o),e.isFinite=!0},ga({minValue:(e)=>{let{minimum:t,exclusiveMinimum:r}=de(e);return Math.max(t??Number.NEGATIVE_INFINITY,r??Number.NEGATIVE_INFINITY)},maxValue:(e)=>{let{maximum:t,exclusiveMaximum:r}=de(e);return Math.min(t??Number.POSITIVE_INFINITY,r??Number.POSITIVE_INFINITY)},isInt:(e)=>{let{isInt:t,multipleOf:r}=de(e);return!!t||!!r?.some(Number.isSafeInteger)},format:(e)=>de(e).format??null},{gt(e,t){return this.check(Xr(e,t))},gte(e,t){return this.check(qt(e,t))},min(e,t){return this.check(qt(e,t))},lt(e,t){return this.check(Yr(e,t))},lte(e,t){return this.check(Ht(e,t))},max(e,t){return this.check(Ht(e,t))},int(e){return this.check(op(e))},safe(e){return this.check(op(e))},positive(e){return this.check(Xr(0,e))},nonnegative(e){return this.check(qt(0,e))},negative(e){return this.check(Yr(0,e))},nonpositive(e){return this.check(Ht(0,e))},multipleOf(e,t){return this.check(Qr(e,t))},step(e,t){return this.check(Qr(e,t))},finite(){return this}}));function dp(e){return tl(pp,e)}var tg=h("ZodNumberFormat",(e,t)=>{nu.init(e,t),pp.init(e,t)});function op(e){return rl(tg,e)}var rg=h("ZodBoolean",(e,t)=>{ou.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Pl(e,r,n,o)});function ng(e){return nl(rg,e)}var og=h("ZodUnknown",(e,t)=>{su.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>El(e,r,n,o)});function ss(){return ol(og)}var sg=h("ZodNever",(e,t)=>{iu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zl(e,r,n,o)});function ig(e){return sl(sg,e)}var ag=h("ZodArray",(e,t)=>{sn(),au.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ol(e,r,n,o),e.element=t.element},{min(e,t){return this.check(yt(e,t))},nonempty(e){return this.check(yt(1,e))},max(e,t){return this.check(en(e,t))},length(e,t){return this.check(tn(e,t))},unwrap(){return this.element}});function fe(e,t){return il(ag,e,t)}var cg=h("ZodObject",(e,t)=>{sn(),lu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Al(e,r,n,o),Bm(e,"shape",(r)=>r._zod.def.shape,!1)},{keyof(){return dg(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(se(this._zod.def,{catchall:e}))},passthrough(){return this.clone(se(this._zod.def,{catchall:ss()}))},loose(){return this.clone(se(this._zod.def,{catchall:ss()}))},strict(){return this.clone(se(this._zod.def,{catchall:ig()}))},strip(){return this.clone(se(this._zod.def,{catchall:void 0}))},extend(e){return Rm(this,e)},safeExtend(e){return Zm(this,e)},merge(e){return Lm(this,e)},pick(e){return Am(this,e)},omit(e){return jm(this,e)},partial(...e){return da(fp,this,e[0])},exactPartial(...e){return da(mp,this,e[0],"exactPartial")},required(...e){return Dm(hp,this,e[0])}});function z(e,t){let r={type:"object",shape:e??{},...v(t)};return new cg(r)}var ug=h("ZodUnion",(e,t)=>{pu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>jl(e,r,n,o),e.options=t.options});function as(e,t){return new ug({type:"union",options:e,...v(t)})}var lg=h("ZodIntersection",(e,t)=>{du.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Rl(e,r,n,o)});function pg(e,t){return new lg({type:"intersection",left:e,right:t})}var sp=h("ZodRecord",(e,t)=>{sn(),fu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Zl(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function cs(e,t,r){if(!t||!t._zod)return new sp({type:"record",keyType:b(),valueType:e,...v(t)});return new sp({type:"record",keyType:e,valueType:t,...v(r)})}var is=h("ZodEnum",(e,t)=>{mu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,o,s)=>Cl(e,n,o,s),e.enum=t.entries,e.options=[...e._zod.values];let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=t.entries[i];else throw Error(`Key ${i} not found in enum`);return new is({...t,checks:[],...v(o),entries:s})},e.exclude=(n,o)=>{let s={...t.entries};for(let i of n)if(r.has(i))delete s[i];else throw Error(`Key ${i} not found in enum`);return new is({...t,checks:[],...v(o),entries:s})}});function dg(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new is({type:"enum",entries:r,...v(t)})}var fg=h("ZodTransform",(e,t)=>{sn(),hu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Tl(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Bt(e.constructor.name);r.addIssue=(s)=>{if(typeof s==="string")r.issues.push(ot(s,r.value,t));else{let i=s;if(i.fatal)i.continue=!1;if(i.code??(i.code="custom"),!("input"in i))i.input=r.value;i.inst??(i.inst=e),r.issues.push(ot(i))}};let o=t.transform(r.value,r);if(o instanceof Promise)return o.then((s)=>(r.value=s,r));return r.value=o,r}});function mg(e){return new fg({type:"transform",transform:e})}var fp=h("ZodOptional",(e,t)=>{jo.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>os(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function ip(e){return new fp({type:"optional",innerType:e})}var mp=h("ZodExactOptional",(e,t)=>{gu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>os(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function hg(e){return new mp({type:"optional",innerType:e})}var gg=h("ZodNullable",(e,t)=>{xu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ll(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function ap(e){return new gg({type:"nullable",innerType:e})}var xg=h("ZodDefault",(e,t)=>{yu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Fl(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function yg(e,t){return new xg({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():po(t)}})}var _g=h("ZodPrefault",(e,t)=>{_u.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ul(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function bg(e,t){return new _g({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():po(t)}})}var hp=h("ZodNonOptional",(e,t)=>{bu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Dl(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function wg(e,t){return new hp({type:"nonoptional",innerType:e,...v(t)})}var vg=h("ZodCatch",(e,t)=>{wu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ml(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function $g(e,t){return new vg({type:"catch",innerType:e,catchValue:typeof t==="function"?t:xa(t)})}var Sg=h("ZodPipe",(e,t)=>{vu.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Bl(e,r,n,o),e.in=t.in,e.out=t.out});function cp(e,t){return new Sg({type:"pipe",in:e,out:t})}var kg=h("ZodReadonly",(e,t)=>{$u.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Gl(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Pg(e){return new kg({type:"readonly",innerType:e})}var zg=h("ZodCustom",(e,t)=>{Su.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Il(e,r,n,o)});function Eg(e,t={}){return al(zg,e,t)}function Cg(e,t){return cl(e,t)}var an={};gf(an,{ZodISODate:()=>tr,ZodISODateTime:()=>er,ZodISODuration:()=>nr,ZodISOTime:()=>rr,date:()=>Tg,datetime:()=>Ig,duration:()=>Ag,time:()=>Og});function Ig(e){return Kr(er,e)}function Tg(e){return Jr(tr,e)}function Og(e){return Hr(rr,e)}function Ag(e){return qr(nr,e)}var gp=ut(Pt(),1);var us=()=>process.env.NIPA_DEBUG==="1",cn=(e)=>{if(us())oe(gp.default.dim(`> [debug] [${new Date().toISOString()}] ${e}`))};class wt extends Error{url;constructor(e,t){super(`can't reach ${new URL(e).host}: ${t}`);this.name="NetworkError",this.url=e}}var xp=(e)=>e.cause instanceof Error?`${e.message} (${xp(e.cause)})`:e.message,Me=async(e,t={})=>{let r=t.method??"GET",n=performance.now();cn(`${r} ${e}`);let o;try{o=await fetch(e,t)}catch(s){throw new wt(e,s instanceof Error?xp(s):String(s))}return cn(`${o.status} ${r} ${e} [${we(performance.now()-n)}]`),o};var ls=z({domainId:b().optional(),id:b(),name:b()});class ae extends Error{status;constructor(e,t){super(e);this.name="KeystoneError",this.status=t}}var un=(e)=>{let t=e;while(t.endsWith("/"))t=t.slice(0,-1);if(t.endsWith("/v3"))t=t.slice(0,-3);return`${t}/v3`},ps=(e,t)=>t?{auth:{identity:e,scope:{project:{id:t}}}}:{auth:{identity:e}},_p=(e)=>({domain:{name:e.userDomain},name:e.username}),jg=(e,t)=>ps({methods:["password"],password:{user:{..._p(e),password:t}}},e.projectId),Rg=(e,t)=>ps({methods:["totp"],totp:{user:{..._p(e),passcode:t}}},e.projectId),Zg=(e,t)=>ps({methods:["token"],token:{id:e}},t),Lg=z({error:z({message:b().optional()}).optional(),receipt:z({}).loose().optional(),required_auth_methods:fe(fe(b())).optional()}),bp=async(e)=>{try{let t=Lg.safeParse(JSON.parse(await e.text()));return t.success?t.data:{}}catch{return{}}},wp=(e)=>e.length>0?`this account needs ${e.map((t)=>t.join(" + ")).join(" or ")} to log in`:"this account's MFA rules don't allow this login method",Dg=(e)=>{let{body:t,status:r}=e;if(t.receipt)return wp(t.required_auth_methods??[]);if(r===401)return e.unauthorized;return t.error?.message??`Keystone returned HTTP ${r}`},or=async(e,t)=>{let r=await bp(e);throw new ae(Dg({body:r,status:e.status,unauthorized:t}),e.status)},Ng=z({token:z({expires_at:b(),project:z({domain:z({id:b()}).optional(),id:b(),name:b()}).optional(),user:z({id:b(),name:b()})})}),Fg=(e,t)=>{let{expires_at:r,project:n,user:o}=t.token;return{expiresAt:r,project:n&&{domainId:n.domain?.id,id:n.id,name:n.name},user:o,value:e}},vp="Openstack-Auth-Receipt",ds=(e,t,r)=>{let n=new Headers({"Content-Type":"application/json"});if(r!==void 0)n.set(vp,r);return Me(`${un(e)}/auth/tokens`,{body:JSON.stringify(t),headers:n,method:"POST"})},fs=async(e)=>{let t=e.headers.get("X-Subject-Token");if(!t)throw new ae("Keystone didn't return a token",e.status);let r=Ng.safeParse(await e.json());if(!r.success)throw new ae(`unexpected token response: ${Gt(r.error)}`,e.status);return Fg(t,r.data)},$p=async(e,t)=>{let r=await ds(e.authUrl,jg(e,t));if(r.ok)return{kind:"token",token:await fs(r)};let n=r.headers.get(vp);if(r.status===401&&n){let s=(await bp(r)).required_auth_methods;if(!s||s.some((i)=>i.includes("totp")))return{kind:"mfa",receipt:n};throw new ae(wp(s),r.status)}return or(r,"wrong email or password")},Sp=async(e)=>{let{account:t,passcode:r,receipt:n}=e,o=await ds(t.authUrl,Rg(t,r),n);return o.ok?fs(o):or(o,"wrong OTP code")},ms="the session expired or was revoked",ln=async(e)=>{let t=await ds(e.authUrl,Zg(e.token,e.projectId));return t.ok?fs(t):or(t,ms)},Ug=z({projects:fe(z({domain_id:b().optional(),enabled:ng().optional(),id:b(),name:b()}))}),Mg=(e)=>e.projects.filter((t)=>t.enabled!==!1).map((t)=>({domainId:t.domain_id,id:t.id,name:t.name})).toSorted((t,r)=>t.name.localeCompare(r.name)),vt=async({authUrl:e,token:t})=>{let r=await Me(`${un(e)}/auth/projects`,{headers:{"X-Auth-Token":t}});if(!r.ok)return or(r,ms);let n=Ug.safeParse(await r.json());if(!n.success)throw new ae(`unexpected project list: ${Gt(n.error)}`,r.status);return Mg(n.data)},pn=async({authUrl:e,token:t})=>{let r=await Me(`${un(e)}/auth/tokens`,{headers:{"X-Auth-Token":t,"X-Subject-Token":t},method:"DELETE"});if(!(r.ok||r.status===401||r.status===404))await or(r,ms)},yp=z({version:z({id:b(),status:b()})}),kp=async(e)=>{let t=un(e),r=await Me(t,{signal:AbortSignal.timeout(1e4)}),n;try{n=yp.safeParse(await r.json())}catch{n=yp.safeParse(null)}if(!(r.ok&&n.success))throw new ae(`${t} doesn't answer like Keystone v3 (HTTP ${r.status})`,r.status);return n.data.version.id};import{spawn as ox}from"node:child_process";import{once as sx}from"node:events";import{stat as ix}from"node:fs/promises";import{text as ax}from"node:stream/consumers";import{accessSync as Bg,constants as Gg}from"node:fs";import{homedir as Vg}from"node:os";import sr from"node:path";var Pp=(e)=>{try{return Bg(e,Gg.X_OK),!0}catch{return!1}},Wg=(e)=>process.platform==="win32"?[...(process.env.PATHEXT??".EXE;.CMD;.BAT").split(";").map((t)=>`${e}${t}`),e]:[e],dn=(e)=>{if(e.includes("/")||e.includes(sr.sep)){let r=sr.resolve(e);return Pp(r)?r:void 0}return[...(process.env.PATH??"").split(sr.delimiter).filter(Boolean),sr.join(Vg(),".local","bin")].flatMap((r)=>Wg(sr.join(r,e))).find(Pp)},fn=(e)=>({OS_AUTH_TYPE:"v3token",OS_AUTH_URL:e.profile.authUrl,OS_IDENTITY_API_VERSION:"3",OS_INTERFACE:"public",OS_PROJECT_DOMAIN_ID:e.session.project.domainId??"",OS_PROJECT_ID:e.session.project.id,OS_PROJECT_NAME:e.session.project.name,OS_REGION_NAME:e.profile.region,OS_TOKEN:e.session.token}),Ep=(e,t)=>({...Object.fromEntries(Object.entries(e).filter(([r])=>!r.startsWith("OS_"))),...t}),hs=["bash","zsh","fish"],Kg=(e)=>hs.some((t)=>t===e),zp=(e,t)=>`'${t==="fish"?e.replaceAll("\\","\\\\").replaceAll("'","\\'"):e.replaceAll("'","'\\''")}'`,Cp=(e,t)=>Object.entries(e).map(([r,n])=>t==="fish"?`set -gx ${r} ${zp(n,t)}`:`export ${r}=${zp(n,t)}`).join(`
90
+ `),Ip=(e)=>{let t=e?.split("/").at(-1)??"";return Kg(t)?t:"bash"};import{chmod as Jg,mkdir as Op,readFile as Ap,rm as Hg,writeFile as jp}from"node:fs/promises";import{homedir as Rp}from"node:os";import it from"node:path";var ee="prod",ce={authUrl:"https://identity-api.nipa.cloud/v3",region:"NCP-TH",spaceUrl:"https://space.nipa.cloud/api",userDomain:"nipacloud"},Tp=Nh({protocol:/^https?$/u}),He=z({authUrl:Tp,project:ls.optional(),region:b().min(1),spaceUrl:Tp.default(ce.spaceUrl),userDomain:b().min(1),username:b().optional()}),xs=/^[a-z][\da-z-]{0,31}$/u,qg=cs(b().regex(xs),He),ys=(e)=>({[ee]:ce,...e}),Yg=z({currentProfile:b().default(ee),profiles:qg.default({})}).strict().transform((e)=>({...e,profiles:ys(e.profiles)})),Xg=He.extend({authUrl:He.shape.authUrl.default(ce.authUrl),region:He.shape.region.default(ce.region),userDomain:He.shape.userDomain.default(ce.userDomain)}).transform((e)=>({currentProfile:ee,profiles:ys({[ee]:e})})),Qg=as([Yg,Xg]),Zp=z({expiresAt:an.datetime({offset:!0}),project:ls,token:b().min(1),user:z({id:b(),name:b()})}),ex=cs(b(),Zp),tx=as([z({sessions:ex}).strict().transform((e)=>e.sessions),Zp.transform((e)=>({[ee]:e}))]);class ir extends Error{constructor(e){super(e);this.name="StoreError"}}var rx=60000,_s=(e=process.env)=>e.NIPA_CONFIG_DIR??it.join(e.XDG_CONFIG_HOME??it.join(Rp(),".config"),"nipa"),Lp=()=>it.join(_s(),"config.json"),mn=()=>it.join(_s(),"auth.json"),gs=(e,t=process.env)=>it.join(t.XDG_CACHE_HOME??it.join(Rp(),".cache"),"nipa",e),hn=async(e,t)=>{try{let r=await Ap(gs(e),"utf-8"),n=t.safeParse(JSON.parse(r));return n.success?n.data:void 0}catch{return}},gn=async(e,t)=>{await Op(it.dirname(gs(e)),{recursive:!0}),await jp(gs(e),`${JSON.stringify(t)}
91
+ `)},nx=async(e)=>{try{return await Ap(e,"utf-8")}catch(t){if(t instanceof Error&&"code"in t&&t.code==="ENOENT")return;throw t}},Dp=async(e,t)=>{let r=await nx(e);if(r===void 0)return;let n;try{n=JSON.parse(r)}catch{throw new ir(`${e} isn't valid JSON`)}let o=t.safeParse(n);if(!o.success)throw new ir(`${e}: ${Gt(o.error)}`);return o.data},bs=async(e,t)=>{await Op(_s(),{mode:448,recursive:!0}),await jp(e,`${JSON.stringify(t,null,2)}
92
+ `,{mode:384}),await Jg(e,384)},me=async()=>await Dp(Lp(),Qg)??{currentProfile:ee,profiles:ys({})},qe=(e)=>bs(Lp(),e),ws=async()=>await Dp(mn(),tx)??{},he=async(e)=>(await ws())[e],Np=async(e)=>{let t=await ws();await bs(mn(),{sessions:{...t,[e.profile]:e.session}})},xn=async(e)=>{let t=await ws(),r=Object.fromEntries(Object.entries(t).filter(([n])=>n!==e));if(Object.keys(r).length===0){await Hg(mn(),{force:!0});return}await bs(mn(),{sessions:r})},vs=(e,t=Date.now())=>Date.parse(e.expiresAt)-t,te=(e,t=Date.now())=>e!==void 0&&vs(e,t)>rx;var Fp="openstack.json",cx=20000,ux=cs(b(),fe(b())),lx=z({bin:b(),mtimeMs:dp(),table:ux}),px=/^\s*cmds(?:_(?<key>\S+))?='(?<words>[^']*)'$/u,dx=(e)=>Object.fromEntries(e.split(`
93
+ `).flatMap((t)=>{let r=px.exec(t)?.groups;if(!r)return[];let n=r.words?.split(" ").filter(Boolean)??[];return[[r.key??"",n]]})),fx=(e,t)=>{let r=t.at(-1)??"",n="";for(let s of t.slice(0,-1)){let i=(n?`${n}_${s}`:s).replaceAll("-","_");if(s.startsWith("-")||!Object.hasOwn(e,i))break;n=i}let o=e[n]??[];if(r.startsWith("-"))return o.filter((s)=>s.startsWith(r));return o.filter((s)=>s.startsWith(r)&&!s.startsWith("-")&&!s.includes("_"))},mx=async(e)=>{let{mtimeMs:t}=await ix(e),r=await hn(Fp,lx);if(r?.bin===e&&r.mtimeMs===t)return r.table;let n=ox(e,["complete","--shell","none"],{stdio:["ignore","pipe","ignore"],timeout:cx}),[o]=await Promise.all([ax(n.stdout),sx(n,"close")]);if(n.exitCode!==0)return;let s=dx(o);return await gn(Fp,{bin:e,mtimeMs:t,table:s}),s},Up=async(e)=>{let t=dn("openstack");if(!t)return[];let r=await mx(t);return r?fx(r,e):[]};var Mp=["bash","zsh","fish","pwsh"],Bp=["projects","profiles","openstack"],$t=(e)=>`nipa __complete ${e}`,at=ne(Cn),hx=(e)=>e.filter((t)=>t.kind==="passthrough").flatMap((t)=>q(t)),$s=(e)=>[...e.flags,...re],bn=(e)=>{let t=e.args.findIndex((n)=>n.value.kind!=="text"),r=e.args[t];return r?{arg:r,position:t+1}:void 0},gx=(e)=>{switch(e.kind){case"none":return;case"text":return"return";case"choice":return`_nipa_reply ${e.choices.join(" ")}; return`;case"project":return`_nipa_reply "$(${$t("projects")} 2>/dev/null)"; return`;case"profile":return`_nipa_reply "$(${$t("profiles")} 2>/dev/null)"; return`;default:return e}},xx=(e)=>{switch(e.kind){case"text":return;case"project":return`_nipa_reply "$(${$t("projects")} 2>/dev/null)"`;case"profile":return`_nipa_reply "$(${$t("profiles")} 2>/dev/null)"`;case"choice":return`_nipa_reply ${e.choices.join(" ")}`;default:return e}},yx=(e)=>{switch(e.kind){case"program":return`COMP_WORDS[i]=${e.program}; _nipa_offset "$i"`;case"command":return'_nipa_offset "$((i + 1))"';case"openstack":return'_nipa_reply "$(nipa __complete openstack -- "${COMP_WORDS[@]:i+1:COMP_CWORD-i}" 2>/dev/null)"';default:return e}},Gp=(e,t)=>{let r=" ".repeat(t*2+2),n=[];if(e.kind==="group"){let s=e.subcommands;n.push(`if [[ $COMP_CWORD -eq $((i + 1)) ]]; then _nipa_reply ${s.map((i)=>i.name).join(" ")}; return; fi`,"case ${COMP_WORDS[i + 1]} in",...s.map((i)=>Gp(i,t+1)),"esac")}else if(e.kind==="passthrough")n.push(yx(e.target));else{let s=$s(e),i=s.flatMap((l)=>{let p=gx(l.value);return p===void 0?[]:[` ${ne(l).join("|")}) ${p} ;;`]});if(i.length>0)n.push('case "$prev" in',...i,"esac");let a=s.flatMap(ne).join(" ");n.push(`if [[ $cur == -* ]]; then _nipa_reply ${a}; return; fi`);let c=bn(e),u=c&&xx(c.arg.value);if(u)n.push(u)}let o=n.map((s)=>`${r} ${s}`).join(`
94
+ `);return`${r}${q(e).join("|")})
95
95
  ${o}
96
- ${r} ;;`},ox=(e)=>{let t=er(e),r=t.map((o)=>o.name).join(" "),n=se.flatMap(ie).join(" ");return`# nipa completion for bash
96
+ ${r} ;;`},_x=(e)=>{let t=Et(e),r=t.map((o)=>o.name).join(" "),n=re.flatMap(ne).join(" ");return`# nipa completion for bash
97
97
  # Load it from ~/.bashrc: eval "$(nipa completion bash)"
98
98
 
99
99
  # One word per line, so project names with spaces stay whole.
@@ -117,32 +117,32 @@ _nipa() {
117
117
  local i=1 command=""
118
118
  while [[ $i -lt $COMP_CWORD ]]; do
119
119
  case \${COMP_WORDS[i]} in
120
- ${tt.join("|")}) ((i += 2)) ;;
120
+ ${at.join("|")}) ((i += 2)) ;;
121
121
  -*) ((i += 1)) ;;
122
122
  *) command=\${COMP_WORDS[i]}; break ;;
123
123
  esac
124
124
  done
125
125
  if [[ -z $command ]]; then
126
126
  case $prev in
127
- ${tt.join("|")}) _nipa_reply "$(${_t("profiles")} 2>/dev/null)"; return ;;
127
+ ${at.join("|")}) _nipa_reply "$(${$t("profiles")} 2>/dev/null)"; return ;;
128
128
  esac
129
129
  if [[ $cur == -* ]]; then _nipa_reply ${n}; else _nipa_reply ${r}; fi
130
130
  return
131
131
  fi
132
132
  case $command in
133
- ${t.map((o)=>Dp(o,0)).join(`
133
+ ${t.map((o)=>Gp(o,0)).join(`
134
134
  `)}
135
135
  esac
136
136
  }
137
137
  complete -o default -F _nipa nipa
138
- `},bn=(e)=>e.replaceAll("'","'\\''").replaceAll(":","\\:"),sx=(e)=>{let{value:t}=e;switch(t.kind){case"none":return"";case"text":return`:${t.name}: `;case"choice":return`:${e.long}:(${t.choices.join(" ")})`;case"project":return":project:{_nipa_dynamic projects project}";case"profile":return":profile:{_nipa_dynamic profiles profile}";default:return t}},ix=(e)=>{let t=ie(e),r=t.length>1?`(${t.join(" ")})`:"",n=t.length>1?`{${t.join(",")}}`:t[0];return`'${r}'${n}'[${bn(e.description)}]${sx(e)}'`},ax=({arg:e,position:t})=>{let{value:r}=e;switch(r.kind){case"project":return`'${t}:project:{_nipa_dynamic projects project}'`;case"profile":return`'${t}:profile:{_nipa_dynamic profiles profile}'`;case"choice":return`'${t}:${e.name}:(${r.choices.join(" ")})'`;case"text":return"";default:return r}},cx=(e,t)=>{switch(e.kind){case"program":return`${t} words[1]=${e.program}; _normal`;case"command":return`${t} shift words; (( CURRENT-- )); _normal`;case"openstack":return`${t} _nipa_openstack`;default:return e}},Np=(e,t)=>{if(e.kind==="group"){let o=e.subcommands,s=o.map((a)=>`'${a.name}:${bn(a.summary)}'`).join(" "),i=o.map((a)=>{let c=Np(a,`${t} `);return`${t} ${te(a).join("|")})
138
+ `},yn=(e)=>e.replaceAll("'","'\\''").replaceAll(":","\\:"),bx=(e)=>{let{value:t}=e;switch(t.kind){case"none":return"";case"text":return`:${t.name}: `;case"choice":return`:${e.long}:(${t.choices.join(" ")})`;case"project":return":project:{_nipa_dynamic projects project}";case"profile":return":profile:{_nipa_dynamic profiles profile}";default:return t}},wx=(e)=>{let t=ne(e),r=t.length>1?`(${t.join(" ")})`:"",n=t.length>1?`{${t.join(",")}}`:t[0];return`'${r}'${n}'[${yn(e.description)}]${bx(e)}'`},vx=({arg:e,position:t})=>{let{value:r}=e;switch(r.kind){case"project":return`'${t}:project:{_nipa_dynamic projects project}'`;case"profile":return`'${t}:profile:{_nipa_dynamic profiles profile}'`;case"choice":return`'${t}:${e.name}:(${r.choices.join(" ")})'`;case"text":return"";default:return r}},$x=(e,t)=>{switch(e.kind){case"program":return`${t} words[1]=${e.program}; _normal`;case"command":return`${t} shift words; (( CURRENT-- )); _normal`;case"openstack":return`${t} _nipa_openstack`;default:return e}},Vp=(e,t)=>{if(e.kind==="group"){let o=e.subcommands,s=o.map((a)=>`'${a.name}:${yn(a.summary)}'`).join(" "),i=o.map((a)=>{let c=Vp(a,`${t} `);return`${t} ${q(a).join("|")})
139
139
  ${c}
140
140
  ${t} ;;`}).join(`
141
141
  `);return[`${t} if (( CURRENT == 2 )); then`,`${t} local -a subcommands; subcommands=(${s})`,`${t} _describe -t subcommands '${e.name} subcommand' subcommands; return`,`${t} fi`,`${t} shift words; (( CURRENT-- ))`,`${t} case $words[1] in`,i,`${t} esac`].join(`
142
- `)}if(e.kind==="passthrough")return cx(e.target,t);let r=vn(e),n=[...zs(e).map(ix),r?ax(r):""];return`${t} _arguments -s ${n.filter(Boolean).join(" ")}`},ux=(e)=>{let t=er(e),r=t.map((s)=>` '${s.name}:${bn(s.summary)}'`).join(`
143
- `),n=se.flatMap((s)=>ie(s).map((i)=>` '${i}:${bn(s.description)}'`)).join(`
144
- `),o=t.map((s)=>` ${te(s).join("|")})
145
- ${Np(s," ")}
142
+ `)}if(e.kind==="passthrough")return $x(e.target,t);let r=bn(e),n=[...$s(e).map(wx),r?vx(r):""];return`${t} _arguments -s ${n.filter(Boolean).join(" ")}`},Sx=(e)=>{let t=Et(e),r=t.map((s)=>` '${s.name}:${yn(s.summary)}'`).join(`
143
+ `),n=re.flatMap((s)=>ne(s).map((i)=>` '${i}:${yn(s.description)}'`)).join(`
144
+ `),o=t.map((s)=>` ${q(s).join("|")})
145
+ ${Vp(s," ")}
146
146
  ;;`).join(`
147
147
  `);return`#compdef nipa
148
148
  # nipa completion for zsh
@@ -165,13 +165,13 @@ _nipa() {
165
165
  local i=2 command=""
166
166
  while (( i < CURRENT )); do
167
167
  case $words[i] in
168
- ${tt.join("|")}) (( i += 2 )) ;;
168
+ ${at.join("|")}) (( i += 2 )) ;;
169
169
  -*) (( i += 1 )) ;;
170
170
  *) command=$words[i]; break ;;
171
171
  esac
172
172
  done
173
173
  if [[ -z $command ]]; then
174
- if [[ $words[CURRENT-1] == (${tt.join("|")}) ]]; then
174
+ if [[ $words[CURRENT-1] == (${at.join("|")}) ]]; then
175
175
  _nipa_dynamic profiles profile
176
176
  elif [[ $PREFIX == -* ]]; then
177
177
  local -a globals; globals=(
@@ -198,7 +198,7 @@ if [[ $zsh_eval_context[-1] == loadautofunc ]]; then
198
198
  else
199
199
  compdef _nipa nipa
200
200
  fi
201
- `},Be=(e)=>`'${e.replaceAll("\\","\\\\").replaceAll("'","\\'")}'`,wn=(e)=>`'(${_t(e)} 2>/dev/null)'`,lx=(e)=>{switch(e.kind){case"none":return"";case"text":return" --exclusive";case"choice":return` --exclusive -a ${Be(e.choices.join(" "))}`;case"project":return` --exclusive -a ${wn("projects")}`;case"profile":return` --exclusive -a ${wn("profiles")}`;default:return e}},px=(e)=>{switch(e.kind){case"text":return;case"project":return wn("projects");case"profile":return wn("profiles");case"choice":return Be(e.choices.join(" "));default:return e}},dx=(e)=>{switch(e.kind){case"program":return`'(__nipa_complete_as ${e.program})'`;case"command":return"'(__nipa_complete_as)'";case"openstack":return"'(__nipa_openstack)'";default:return e}},fx=(e)=>{if(e.kind==="passthrough")return dx(e.target);let t=vn(e);return t&&px(t.arg.value)},Fp=(e,t)=>{let r=e.short?` -s ${e.short}`:"";return`complete -c nipa -n ${Be(t)}${r} -l ${e.long}${lx(e.value)} -d ${Be(e.description)}`},Up=(e,t)=>{let r=`__nipa_using ${te(t??e).join(" ")}`,n=t?`${r}; and __fish_seen_subcommand_from ${te(e).join(" ")}`:r;if(e.kind==="group"){let c=e.subcommands,u=`${n}; and not __fish_seen_subcommand_from ${c.flatMap((l)=>te(l)).join(" ")}`;return[...c.map((l)=>`complete -c nipa -n ${Be(u)} -a ${l.name} -d ${Be(l.summary)}`),...c.flatMap((l)=>Up(l,e))]}let s=(e.kind==="leaf"?e.flags:[]).map((c)=>Fp(c,n)),i=fx(e),a=i?[`complete -c nipa -n ${Be(n)} -a ${i}`]:[];return[...s,...a]},mx=(e)=>{let t=er(e),r=[...t,...e.hidden],n=`not __nipa_using ${ex(r).join(" ")}`,o=t.map((s)=>`complete -c nipa -n __nipa_needs_command -a ${s.name} -d ${Be(s.summary)}`);return`# nipa completion for fish
201
+ `},Ye=(e)=>`'${e.replaceAll("\\","\\\\").replaceAll("'","\\'")}'`,_n=(e)=>`'(${$t(e)} 2>/dev/null)'`,kx=(e)=>{switch(e.kind){case"none":return"";case"text":return" --exclusive";case"choice":return` --exclusive -a ${Ye(e.choices.join(" "))}`;case"project":return` --exclusive -a ${_n("projects")}`;case"profile":return` --exclusive -a ${_n("profiles")}`;default:return e}},Px=(e)=>{switch(e.kind){case"text":return;case"project":return _n("projects");case"profile":return _n("profiles");case"choice":return Ye(e.choices.join(" "));default:return e}},zx=(e)=>{switch(e.kind){case"program":return`'(__nipa_complete_as ${e.program})'`;case"command":return"'(__nipa_complete_as)'";case"openstack":return"'(__nipa_openstack)'";default:return e}},Ex=(e)=>{if(e.kind==="passthrough")return zx(e.target);let t=bn(e);return t&&Px(t.arg.value)},Wp=(e,t)=>{let r=e.short?` -s ${e.short}`:"";return`complete -c nipa -n ${Ye(t)}${r} -l ${e.long}${kx(e.value)} -d ${Ye(e.description)}`},Kp=(e,t)=>{let r=`__nipa_using ${q(t??e).join(" ")}`,n=t?`${r}; and __fish_seen_subcommand_from ${q(e).join(" ")}`:r;if(e.kind==="group"){let c=e.subcommands,u=`${n}; and not __fish_seen_subcommand_from ${c.flatMap((l)=>q(l)).join(" ")}`;return[...c.map((l)=>`complete -c nipa -n ${Ye(u)} -a ${l.name} -d ${Ye(l.summary)}`),...c.flatMap((l)=>Kp(l,e))]}let s=(e.kind==="leaf"?e.flags:[]).map((c)=>Wp(c,n)),i=Ex(e),a=i?[`complete -c nipa -n ${Ye(n)} -a ${i}`]:[];return[...s,...a]},Cx=(e)=>{let t=Et(e),r=[...t,...e.hidden],n=`not __nipa_using ${hx(r).join(" ")}`,o=t.map((s)=>`complete -c nipa -n __nipa_needs_command -a ${s.name} -d ${Ye(s.summary)}`);return`# nipa completion for fish
202
202
  # Save it: nipa completion fish > ~/.config/fish/completions/nipa.fish
203
203
 
204
204
  function __nipa_command_index
@@ -206,7 +206,7 @@ function __nipa_command_index
206
206
  set -l i 2
207
207
  while test $i -le (count $tokens)
208
208
  switch $tokens[$i]
209
- case ${tt.join(" ")}
209
+ case ${at.join(" ")}
210
210
  set i (math $i + 2)
211
211
  case '-*'
212
212
  set i (math $i + 1)
@@ -247,21 +247,21 @@ function __nipa_openstack
247
247
  end
248
248
 
249
249
  complete -c nipa -f
250
- ${se.map((s)=>Fp(s,n)).join(`
250
+ ${re.map((s)=>Wp(s,n)).join(`
251
251
  `)}
252
252
  ${o.join(`
253
253
  `)}
254
- ${t.flatMap((s)=>Up(s)).join(`
254
+ ${t.flatMap((s)=>Kp(s)).join(`
255
255
  `)}
256
- `},nr=(e)=>`'${e.replaceAll("'","''")}'`,ze=(e)=>`@(${e.map(nr).join(", ")})`,hx=(e)=>{switch(e.kind){case"none":case"text":return;case"choice":return ze(e.choices);case"project":return"(Dynamic projects)";case"profile":return"(Dynamic profiles)";default:return e}},gx=(e)=>{switch(e.kind){case"text":return;case"project":return"(Dynamic projects)";case"profile":return"(Dynamic profiles)";case"choice":return ze(e.choices);default:return e}},xx=(e)=>{switch(e.kind){case"openstack":return"(Openstack ($c + 1))";case"program":case"command":return;default:return e}},Mp=(e,t)=>{if(e.kind==="group"){let i=e.subcommands,a=i.map((u)=>`${nr(u.name)} = ${nr(u.summary)}`).join("; "),c=i.map((u)=>{let l=Mp(u,`${t} `);return`${t} { $_ -in ${ze(te(u))} } {
256
+ `},ar=(e)=>`'${e.replaceAll("'","''")}'`,Oe=(e)=>`@(${e.map(ar).join(", ")})`,Ix=(e)=>{switch(e.kind){case"none":case"text":return;case"choice":return Oe(e.choices);case"project":return"(Dynamic projects)";case"profile":return"(Dynamic profiles)";default:return e}},Tx=(e)=>{switch(e.kind){case"text":return;case"project":return"(Dynamic projects)";case"profile":return"(Dynamic profiles)";case"choice":return Oe(e.choices);default:return e}},Ox=(e)=>{switch(e.kind){case"openstack":return"(Openstack ($c + 1))";case"program":case"command":return;default:return e}},Jp=(e,t)=>{if(e.kind==="group"){let i=e.subcommands,a=i.map((u)=>`${ar(u.name)} = ${ar(u.summary)}`).join("; "),c=i.map((u)=>{let l=Jp(u,`${t} `);return`${t} { $_ -in ${Oe(q(u))} } {
257
257
  ${t} $c += 1
258
258
  ${l}
259
259
  ${t} }`}).join(`
260
- `);return[`${t} if ($index -eq $c + 1) { return Complete ${ze(i.map((u)=>u.name))} @{ ${a} } }`,`${t} switch ($words[$c + 1]) {`,c,`${t} }`].join(`
261
- `)}if(e.kind==="passthrough"){let i=xx(e.target);return i?`${t} return Complete ${i}`:`${t} return`}let r=zs(e),n=r.flatMap((i)=>{let a=hx(i.value);return a===void 0?[]:[`if ($prev -in ${ze(ie(i))}) { return Complete ${a} }`]});n.push(`if ($wordToComplete -like '-*') { return Complete ${ze(r.flatMap(ie))} }`);let o=vn(e),s=o&&gx(o.arg.value);if(s)n.push(`Complete ${s}`);return n.map((i)=>`${t} ${i}`).join(`
262
- `)},yx=(e)=>{let t=er(e),r=t.map((o)=>` ${nr(o.name)} = ${nr(o.summary)}`).join(`
263
- `),n=t.map((o)=>` { $_ -in ${ze(te(o))} } {
264
- ${Mp(o," ")}
260
+ `);return[`${t} if ($index -eq $c + 1) { return Complete ${Oe(i.map((u)=>u.name))} @{ ${a} } }`,`${t} switch ($words[$c + 1]) {`,c,`${t} }`].join(`
261
+ `)}if(e.kind==="passthrough"){let i=Ox(e.target);return i?`${t} return Complete ${i}`:`${t} return`}let r=$s(e),n=r.flatMap((i)=>{let a=Ix(i.value);return a===void 0?[]:[`if ($prev -in ${Oe(ne(i))}) { return Complete ${a} }`]});n.push(`if ($wordToComplete -like '-*') { return Complete ${Oe(r.flatMap(ne))} }`);let o=bn(e),s=o&&Tx(o.arg.value);if(s)n.push(`Complete ${s}`);return n.map((i)=>`${t} ${i}`).join(`
262
+ `)},Ax=(e)=>{let t=Et(e),r=t.map((o)=>` ${ar(o.name)} = ${ar(o.summary)}`).join(`
263
+ `),n=t.map((o)=>` { $_ -in ${Oe(q(o))} } {
264
+ ${Jp(o," ")}
265
265
  }`).join(`
266
266
  `);return`# nipa completion for PowerShell
267
267
  # Load it from your $PROFILE: nipa completion pwsh | Out-String | Invoke-Expression
@@ -288,20 +288,23 @@ ${r}
288
288
  $c = 1
289
289
  $command = $null
290
290
  while ($c -lt $index) {
291
- if ($words[$c] -in ${ze(tt)}) { $c += 2 }
291
+ if ($words[$c] -in ${Oe(at)}) { $c += 2 }
292
292
  elseif ($words[$c] -like '-*') { $c += 1 }
293
293
  else { $command = $words[$c]; break }
294
294
  }
295
295
  if (-not $command) {
296
- if ($prev -in ${ze(tt)}) { return Complete (Dynamic profiles) }
297
- if ($wordToComplete -like '-*') { return Complete ${ze(se.flatMap(ie))} }
296
+ if ($prev -in ${Oe(at)}) { return Complete (Dynamic profiles) }
297
+ if ($wordToComplete -like '-*') { return Complete ${Oe(re.flatMap(ne))} }
298
298
  return Complete ([string[]]$commands.Keys) $commands
299
299
  }
300
300
  switch ($command) {
301
301
  ${n}
302
302
  }
303
303
  }
304
- `},Bp=(e)=>{let{program:t,shell:r}=e;switch(r){case"bash":return ox(t);case"zsh":return ux(t);case"fish":return mx(t);case"pwsh":return yx(t);default:return r}};var Vp=B({args:[{arity:"one",name:"kind",value:{choices:Lp,kind:"choice"}},{arity:"rest",name:"words",value:{kind:"text"}}],flags:[],name:"__complete",summary:"Print values for the completion scripts",updateNotice:!1});var _x=async(e)=>{let t=await e.profile(),r=await pe(t.name);if(!ee(r))return[];return(await ht({authUrl:t.profile.authUrl,token:r.token})).map((o)=>o.name)},bx=async(e)=>{let{client:t,kind:r,words:n}=e;switch(r){case"projects":return await _x(t);case"profiles":{let o=await le();return Object.keys(o.profiles).toSorted()}case"openstack":return await bp(n);default:return r}},Gp=Z(Vp,async({args:e,client:t})=>{let r=await bx({client:t,kind:e.kind,words:e.words});return t.stdout.write(r.map((n)=>`${n}
305
- `).join("")),0});var Wp=B({args:[{arity:"one",name:"shell",value:{choices:jp,kind:"choice"}}],description:"Prints the tab completion script for bash, zsh, fish or PowerShell. Load it from your shell's startup file.",examples:[{command:`echo 'eval "$(nipa completion zsh)"' >> ~/.zshrc`,description:"zsh"},{command:"nipa completion fish > ~/.config/fish/completions/nipa.fish",description:"fish"}],flags:[],name:"completion",summary:"Print the tab completion script for your shell",updateNotice:!1});var Kp=Z(Wp,({args:e,client:t})=>(t.stdout.write(Bp({program:t.program,shell:e.shell})),Promise.resolve(0)));var Jp=B({args:[],description:'Prints the session\'s OS_* variables as shell commands. Load them with `eval "$(nipa env)"` in bash or zsh, or with `nipa env | source` in fish.',flags:[{description:"Shell syntax to print (default: from $SHELL)",long:"shell",value:{choices:cs,kind:"choice"}}],name:"env",summary:"Print the OS_* variables for your shell"});var Hp=Z(Jp,async({client:e,flags:t})=>{let r=t.shell??pp(process.env.SHELL),{active:n,session:o}=await e.session();return e.stdout.line(lp(ln({profile:n.profile,session:o}),r)),0});import{spawn as wx}from"node:child_process";import{once as vx}from"node:events";import{constants as qp}from"node:os";var $x=new Map([["openstack","Install it with `pipx install python-openstackclient`."],["terraform","Install it with `brew install hashicorp/tap/terraform`."]]),bt=async({args:e,command:t,signIn:r})=>{let n=un(t);if(!n)throw new O(`command not found: ${t}`,{exitCode:127,hint:$x.get(t)});let{active:o,session:s}=await r(),i=wx(n,e,{env:up(process.env,ln({profile:o.profile,session:s})),stdio:"inherit"}),a=!1,c=()=>{a=!0},u=()=>i.kill("SIGTERM");process.on("SIGINT",c),process.on("SIGTERM",u),await vx(i,"exit"),process.off("SIGINT",c),process.off("SIGTERM",u);let{exitCode:l,signalCode:p}=i;if(p)return 128+qp.signals[p];return a&&l===0?128+qp.signals.SIGINT:l??1};var Yp=xt({description:"Runs a command with the session's OS_* variables. nipa removes any OS_* variable already in your shell first, so a stale OS_PASSWORD from an old openrc can't override the token. nipa exits with the command's exit code.",examples:[{command:"nipa exec ansible-playbook site.yml",description:"Run an Ansible playbook"}],name:"exec",summary:"Run any command with the session",target:{kind:"command"}});var Xp=yt(Yp,({args:e,client:t,command:r})=>bt({args:e,command:r,signIn:t.cloud}));class rt extends Error{status;constructor(e,t){super(e);this.name="ApiError",this.status=t}}var Qp=I({message:v()}),Sx=Ur([Qp.transform((e)=>e.message),lt(v(),Qp).transform((e)=>Object.values(e)[0]?.message)]),kx=async(e)=>{try{let t=Sx.safeParse(JSON.parse(await e.text()));return t.success?t.data:void 0}catch{return}},Px=async(e,t)=>{try{return t.safeParse(await e.json())}catch{return t.safeParse(null)}},ed=(e)=>{let t=e.url;while(t.endsWith("/"))t=t.slice(0,-1);return{get:async(r,n,o={})=>{let s=await Pe(`${t}${r}`,{headers:{Accept:"application/json",...o,"X-Auth-Token":e.token}});if(!s.ok){let a=await kx(s)??`${e.type} returned HTTP ${s.status}`;throw new rt(a,s.status)}let i=await Px(s,n);if(!i.success)throw new rt(`unexpected ${e.type} response: ${st(i.error)}`,s.status);return i.data}}};var td=async(e)=>{let t=await le(),r=e.override??process.env.NIPA_PROFILE??t.currentProfile,n=t.profiles[r];if(!n){let o=Object.keys(t.profiles).join(", ");throw new O(`no profile named "${r}"`,{hint:`Your profiles: ${o}. Add one with \`nipa profile add ${r}\`.`})}return{config:t,name:r,profile:n}},Sn=(e)=>e===Q?"nipa login":`nipa login -P ${e}`,rd=(e)=>{if(e.name!==Q){let t=Ue(`(${new URL(e.profile.authUrl).host})`);V(`Using profile ${A(e.name)} ${t}`)}},zx=/^\d{6}$/u,nd=/^[\da-f]{32}$/u,Ex=3,Cx=(e)=>({email:(t)=>e.text({default:t,message:"Email",validate:(r)=>r.includes("@")||"Enter the email you log in to the portal with"}),otp:(t)=>e.text({message:t===1?"OTP code":"Next OTP code",validate:(r)=>zx.test(r)||"Enter the 6-digit code from your authenticator app"}),password:()=>e.secret("Password"),projectId:()=>e.text({message:"Project ID",validate:(t)=>nd.test(t)||"Enter the 32-character ID, as in OS_PROJECT_ID in your openrc file"})}),od=(e)=>{let{projects:t,wanted:r}=e,n=t.find((o)=>o.id===r||o.name===r);if(!n)throw new O(`no project named or with ID "${r}"`,{hint:`Your projects: ${t.map((o)=>o.name).join(", ")}`});return n},sd=(e)=>{let{projects:t,wanted:r}=e;if(r)return Promise.resolve(od({projects:t,wanted:r}));let[n,...o]=t;if(!n)throw new O("your account has no projects you can use");return o.length===0?Promise.resolve(n):e.ask(t)},$n=(e,t)=>({expiresAt:e.expiresAt,project:e.project??t,token:e.value,user:e.user}),id=async(e)=>{let t=await e.ask(e.attempt);try{return await Y("Checking the code…",()=>np({account:e.account,passcode:t,receipt:e.receipt}))}catch(r){if(!(r instanceof X&&r.status===401)||e.attempt===Ex)throw r;return V("That code didn't work. Each code works once, so wait for the next one."),id({...e,attempt:e.attempt+1})}},Ox=async(e)=>{let{profile:t,prompts:r,wantedProject:n}=e,o=e.username??await r.email(t.username),s=n!==void 0&&nd.test(n)?n:void 0,i=s??t.project?.id??await r.projectId(),a=await r.password(),c={authUrl:t.authUrl,projectId:i,userDomain:t.userDomain,username:o},u=await Y("Checking your password…",()=>rp(c,a)),l=u.kind==="token"?u.token:await id({account:c,ask:r.otp,attempt:1,receipt:u.receipt});if(!l.project)throw new X(`Keystone returned a token without project ${i}`,0);let p=s?void 0:n;if(p===void 0||l.project.name===p)return $n(l,l.project);let d=await Y("Loading your projects…",()=>ht({authUrl:t.authUrl,token:l.value})),f=od({projects:d,wanted:p}),m=await Y(`Switching to ${f.name}…`,()=>an({authUrl:t.authUrl,projectId:f.id,token:l.value}));return $n(m,f)},Es=async(e)=>{let{active:t,session:r}=e,n={...t.profile,project:r.project,username:r.user.name};await Me({...t.config,profiles:{...t.config.profiles,[t.name]:n}}),await hs({profile:t.name,session:r})},Cs=async(e)=>{let{active:t,prompts:r}=e;if(!r.interactive)throw new O("`nipa login` needs a terminal to ask for your password",{hint:"Run it in a terminal, then run this command again."});let n=Ue(`(${new URL(t.profile.authUrl).host})`);V(`Logging in to ${A(t.name)} ${n}`);let o=await Ox({profile:t.profile,prompts:Cx(r),username:e.username,wantedProject:e.wantedProject});await Es({active:t,session:o});let s=A(o.user.name);return ue(`Logged in as ${s}, project ${A(o.project.name)}`),o},ad=async(e)=>{let{active:t,prompts:r}=e,n=await pe(t.name);if(ee(n))return{active:t,session:n};let o=`Run \`${Sn(t.name)}\`.`;if(!r.interactive)throw n?new O(`your ${t.name} session expired`,{hint:o}):new O(`you aren't logged in to ${t.name}`,{hint:o});return V(n?"Your session expired.":"You aren't logged in yet."),{active:t,session:await Cs({active:t,prompts:r})}},Tx=(e)=>async(t)=>{try{return await t()}catch(r){if((r instanceof rt||r instanceof X?r.status:void 0)===401)throw new O(`your ${e} session expired or was revoked`,{hint:`Run \`${Sn(e)}\`.`});throw r}},cd=(e)=>{let{active:t,session:r}=e,{authUrl:n,region:o}=t.profile,s=Tx(t.name),{endpoints:i}=r,a=async()=>{if(!i)i=await s(()=>sp({authUrl:n,region:o,token:r.token})),await hs({profile:t.name,session:{...r,endpoints:i}});return i};return{active:t,service:async(c)=>{let l=(await a())[c];if(!l)throw new O(`there's no ${c} endpoint in ${o}`,{hint:"Check the profile's region with `nipa profile ls`."});let p=ed({token:r.token,type:c,url:l});return{get:(d,f,m)=>s(()=>p.get(d,f,m))}},session:r}};var ud=B({args:[],description:"Asks for your email and password, then for an OTP code when your account uses MFA. nipa saves a token for the current profile, scoped to a project, and reuses it until it expires.",examples:[{command:"nipa login",description:"Log in to the current profile"},{command:"nipa -P staging login",description:"Log in to the staging profile"}],flags:[{description:"Log in as this user instead of the last one",long:"username",short:"u",value:{kind:"text",name:"email"}},{description:"Use this project instead of the last one",long:"project",short:"p",value:{kind:"project"}}],name:"login",summary:"Log in with your password and an OTP code"});var ld=Z(ud,async({client:e,flags:t})=>(await Cs({active:await e.profile(),prompts:e.prompts,username:t.username,wantedProject:t.project}),0));var pd=B({args:[],description:"Revokes the current profile's token and deletes its session. nipa keeps your email and last project for the next login.",flags:[],name:"logout",summary:"Revoke the token and forget the session"});var dd=Z(pd,async({client:e})=>{let t=await e.profile(),r=await pe(t.name);if(!r)return ft(`Not logged in to ${t.name}, so \`nipa logout\` did nothing`),0;if(ee(r))try{await Y("Logging out…",()=>cn({authUrl:t.profile.authUrl,token:r.token}))}catch{}return await mn(t.name),ue(`Logged out of ${A(t.name)}`),0});var fd=xt({aliases:["openstack"],description:"Runs `openstack <args...>` with the session. It's the same as `nipa exec openstack <args...>`.",examples:[{command:"nipa os volume list",description:"List the volumes in your project"}],name:"os",summary:"Run openstack with the session",target:{kind:"openstack"}});var md=yt(fd,({args:e,client:t,command:r})=>bt({args:e,command:r,signIn:t.cloud}));var Os=B({args:[],flags:[gt],name:"ls",summary:"List your profiles and who is logged in to each"}),Ts=B({args:[{arity:"optional",name:"name",value:{kind:"text"}}],flags:[{description:"Keystone URL, ending in /v3",long:"auth-url",value:{kind:"text",name:"url"}},{description:"User domain (default: nipacloud)",long:"user-domain",value:{kind:"text",name:"domain"}},{description:"Region (default: NCP-TH)",long:"region",value:{kind:"text",name:"region"}},{description:"Make it the current profile",long:"use",value:{kind:"none"}}],name:"add",summary:"Add a profile, asking for missing values"}),Is=B({args:[{arity:"optional",name:"name",value:{kind:"profile"}}],flags:[],name:"use",summary:"Make a profile the current one"}),As=B({args:[{arity:"one",name:"name",value:{kind:"profile"}}],flags:[{...wp,description:"Remove it without asking"}],name:"rm",summary:"Remove a profile and log out of it"}),hd=yn({default:"ls",description:"A profile is a Keystone URL, user domain and region with its own session. nipa starts with prod, which is Nipa Cloud production. Add a profile for staging or any other Keystone, then use it with `nipa profile use <name>` or `-P <name>`.",examples:[{command:"nipa profile add staging --auth-url https://keystone.example.com/v3",description:"Add a staging profile"},{command:"nipa profile use staging",description:"Make staging the current profile"}],name:"profile",subcommands:[Os,Ts,Is,As],summary:"Manage Keystone profiles, such as staging"});var Ix=(e)=>(t)=>{if(!ls.test(t))return"Use lowercase letters, digits and hyphens, starting with a letter";return e.profiles[t]?`A profile named ${t} already exists`:!0},gd=(e)=>Xe.shape.authUrl.safeParse(e).success||"Enter an http or https URL, such as https://keystone.example.com/v3",xd=(e)=>{if(e.value!==void 0)return Promise.resolve(e.value);if(!e.prompts.interactive)throw F(`missing ${e.flag}`,"Pass every value as a flag when there is no terminal.");return e.ask()},yd=Z(Ts,async({args:e,client:t,flags:r})=>{let{prompts:n}=t,o=await le(),s=Ix(o),i=await xd({ask:()=>n.text({message:"Profile name",validate:s}),flag:"<name>",prompts:n,value:e.name}),a=s(i);if(a!==!0)throw F(`can't add profile "${i}"`,a);let c=await xd({ask:()=>n.text({message:"Keystone URL",validate:gd}),flag:"--auth-url",prompts:n,value:r["auth-url"]}),u=gd(c);if(u!==!0)throw F(`invalid --auth-url "${c}"`,u);let l=r["user-domain"]??(n.interactive?await n.text({default:be.userDomain,message:"User domain"}):be.userDomain),p=r.region??(n.interactive?await n.text({default:be.region,message:"Region"}):be.region),d=performance.now(),f=await Y(`Checking ${c}…`,()=>ip(c)),m={authUrl:c,region:p,userDomain:l},g=r.use??(n.interactive&&await n.confirm({default:!0,message:`Use ${i} now?`}));return await Me({currentProfile:g?i:o.currentProfile,profiles:{...o.profiles,[i]:m}}),ue(`Added profile ${A(i)} (Keystone ${f})`,performance.now()-d),V(g?`Now using ${A(i)}. Run \`nipa login\` to log in to it.`:`Run \`nipa login -P ${i}\` to log in to it.`),0});var _d=Z(Os,async({client:e,flags:t})=>{let r=await le(),n=Object.keys(r.profiles).toSorted(),o=await Promise.all(n.map((i)=>pe(i)));if(t.json)return e.stdout.json(n.map((i,a)=>{let c=o[a];return{current:i===r.currentProfile,loggedIn:ee(c),name:i,...r.profiles[i],user:ee(c)?c.user.name:void 0}})),0;let s=n.map((i,a)=>{let c=r.profiles[i]??be,u=o[a],l=ee(u)?`${u.user.name} (${u.project.name})`:"-";return[i,new URL(c.authUrl).host,c.region,l].map((p)=>({text:p}))});return V(`${n.length} ${n.length===1?"profile":"profiles"}`),rn({headings:["Name","Keystone","Region","Logged in as"],marks:n.map((i)=>i===r.currentProfile?tn("✔"):" "),rows:s}),0});var bd=Z(As,async({args:e,client:t,flags:r})=>{let{name:n}=e,o=await le(),s=o.profiles[n];if(!s)throw new O(`no profile named "${n}"`);if(n===Q)throw new O(`can't remove ${Q}`,{hint:"nipa always has the Nipa Cloud production profile."});if(!r.yes){if(!t.prompts.interactive)throw F(`removing ${n} needs confirmation`,"Add --yes to remove it without asking.");if(!await t.prompts.confirm({default:!1,message:`Remove profile ${n} and log out of it?`}))throw new O("Canceled",{exitCode:130})}let i=await pe(n);if(ee(i))try{await cn({authUrl:s.authUrl,token:i.token})}catch{}await mn(n);let a=Object.fromEntries(Object.entries(o.profiles).filter(([u])=>u!==n)),c=o.currentProfile===n;if(await Me({currentProfile:c?Q:o.currentProfile,profiles:a}),ue(`Removed profile ${A(n)}`),c)V(`Now using ${A(Q)}`);return 0});var wd=Z(Is,async({args:e,client:t})=>{let r=await le(),n=Object.keys(r.profiles).toSorted(),{name:o}=e;if(o===void 0){if(!t.prompts.interactive)throw F("missing <name>",`Your profiles: ${n.join(", ")}`);o=await t.prompts.choice({choices:n.map((s)=>({name:s===r.currentProfile?`${s} ${A("(current)")}`:s,value:s})),default:r.currentProfile,message:"Use profile:"})}if(!r.profiles[o])throw new O(`no profile named "${o}"`,{hint:`Your profiles: ${n.join(", ")}`});if(o===r.currentProfile)return ft(`You're already using ${A(o)}`),0;return await Me({...r,currentProfile:o}),ue(`Now using profile ${A(o)}`),0});var vd=_n(hd,{add:yd,ls:_d,rm:bd,use:wd});var Rs="List the servers in your project",Zs=B({aliases:["list"],args:[],flags:[gt],name:"ls",summary:Rs}),$d=yn({aliases:["servers"],default:"ls",description:"Lists the servers in your project with their status, address, flavor and age. nipa calls the compute API itself, so you don't need the OpenStack client.",examples:[{command:"nipa server ls",description:Rs},{command:"nipa server ls --json | jq -r '.servers[].name'",description:"Print each server's name"}],name:"server",subcommands:[Zs],summary:Rs});var Ax={"OpenStack-API-Version":"compute 2.47"},Rx=I({"OS-EXT-IPS:type":v().optional(),addr:v(),version:Xu()}),Zx=I({addresses:lt(v(),Se(Rx)),created:v(),flavor:I({original_name:v()}),id:v(),name:v(),status:v()}),jx=I({href:v(),rel:v()}),Lx=I({servers:Se(Zx),servers_links:Se(jx).optional()}),Dx=(e)=>({addresses:Object.entries(e.addresses).flatMap(([t,r])=>r.map((n)=>({address:n.addr,network:t,type:n["OS-EXT-IPS:type"]??"fixed",version:n.version}))),createdAt:e.created,flavor:e.flavor.original_name,id:e.id,name:e.name,status:e.status}),Nx=(e=[])=>{let t=e.find((n)=>n.rel==="next");if(!t)return;return URL.parse(t.href,"http://localhost")?.searchParams.get("marker")??void 0},Sd=async(e)=>{let{compute:t,marker:r}=e,n=r===void 0?"":`?marker=${encodeURIComponent(r)}`,o=await t.get(`/servers/detail${n}`,Lx,Ax),s=o.servers.map(Dx),i=Nx(o.servers_links);if(i===void 0||i===r||s.length===0)return s;return[...s,...await Sd({compute:t,marker:i})]},kd=(e)=>Sd({compute:e});var Fx=new Map([["ACTIVE",tn],["BUILD",_e],["ERROR",rs],["HARD_REBOOT",_e],["MIGRATING",_e],["PASSWORD",_e],["REBOOT",_e],["REBUILD",_e],["RESCUE",_e],["RESIZE",_e],["REVERT_RESIZE",_e],["UNKNOWN",rs],["VERIFY_RESIZE",_e]]),Ux=(e)=>{let t=e.toLowerCase().replaceAll("_"," ");return`${t.charAt(0).toUpperCase()}${t.slice(1)}`},Pd=(e)=>{let t=e.addresses.filter((n)=>n.version===4);return(t.find((n)=>n.type==="floating")??t[0]??e.addresses[0])?.address},zd=(e)=>{let t=Fx.get(e)??en;return{paint:(r)=>`${t("●")}${r.slice(1)}`,text:`● ${Ux(e)}`}};var Mx=(e,t)=>{rn({headings:["Name","Status","Address","Flavor","Age"],rows:e.map((r)=>[{text:r.name},zd(r.status),{text:Pd(r)??"-"},{text:r.flavor},{paint:en,text:Vl(t-Date.parse(r.createdAt))}])})},Ed=Z(Zs,async({client:e,flags:t})=>{let{active:r,service:n,session:o}=await e.cloud(),{project:s}=o,i=performance.now(),a=await Y(`Loading the servers in ${s.name}…`,async()=>kd(await n("compute")));if(t.json)return e.stdout.json({profile:r.name,project:s,servers:a}),0;let c=Ue(`[${Ht(performance.now()-i)}]`);if(a.length===0)return V(`No servers in ${A(s.name)} ${c}`),0;if(V(`Servers in ${A(s.name)} ${c}`),Mx(a,Date.now()),!e.stdout.isTTY)e.stdout.line(a.map((u)=>u.id).join(`
306
- `));return 0});var js=_n($d,{ls:Ed});var Cd=B({args:[{arity:"optional",name:"project",value:{kind:"project"}}],description:"Scopes the session to another project, by name or ID, without a password or OTP code. Without a project, nipa lists your projects to pick from.",flags:[],name:"switch",summary:"Use another project"});var Bx=(e,t)=>(r)=>e.choice({choices:r.map((n)=>({description:n.id,name:n.id===t.id?`${n.name} ${A("(current)")}`:n.name,value:n})),default:r.find((n)=>n.id===t.id),message:"Switch to:"}),Od=Z(Cd,async({args:e,client:t})=>{let{project:r}=e,{active:n,session:o}=await t.session(),{authUrl:s}=n.profile,i=await Y("Loading your projects…",()=>ht({authUrl:s,token:o.token}));if(r===void 0&&!t.prompts.interactive)throw new O("tell nipa which project to use",{exitCode:2,hint:`Run \`nipa switch <project>\`. Your projects: ${i.map((l)=>l.name).join(", ")}`});let a=await sd({ask:Bx(t.prompts,o.project),projects:i,wanted:r});if(a.id===o.project.id)return ft(`You're already using ${A(a.name)}`),0;let c=performance.now(),u=await Y(`Switching to ${a.name}…`,()=>an({authUrl:s,projectId:a.id,token:o.token}));return await Es({active:n,session:$n(u,a)}),ue(`Switched to ${A(a.name)}`,performance.now()-c),0});var Td=xt({aliases:["terraform"],description:"Runs `terraform <args...>` with the session. It's the same as `nipa exec terraform <args...>`.",examples:[{command:"nipa -P staging tf plan",description:"Plan against the staging profile"}],name:"tf",summary:"Run terraform with the session",target:{kind:"program",program:"terraform"}});var Id=yt(Td,({args:e,client:t,command:r})=>bt({args:e,command:r,signIn:t.cloud}));var Ad=B({args:[],description:"Prints your user, profile, project and when the session expires. When the output goes to a pipe, nipa prints only your user name.",flags:[gt],name:"whoami",summary:"Show who you're logged in as"});var Rd=Z(Ad,async({client:e,flags:t})=>{let r=await e.profile(),n=await pe(r.name);if(!ee(n)){if(t.json)e.stdout.line(JSON.stringify({loggedIn:!1,profile:r.name}));throw new O(`you aren't logged in to ${r.name}`,{hint:`Run \`${Sn(r.name)}\`.`})}if(t.json)return e.stdout.json({authUrl:r.profile.authUrl,expiresAt:n.expiresAt,loggedIn:!0,profile:r.name,project:n.project,region:r.profile.region,user:n.user}),0;if(!e.stdout.isTTY)return e.stdout.line(n.user.name),0;let{host:o}=new URL(r.profile.authUrl),s=Gl(gs(n));V(`Logged in as ${A(n.user.name)}`);let i=Ue(`(${o}, ${r.profile.region})`),a=Ue(`(${n.project.id})`);return V(`Profile: ${A(r.name)} ${i}`),V(`Project: ${A(n.project.name)} ${a}`),V(`The session expires in ${s}`),0});var Zd={examples:[{command:"nipa login",description:"Log in and pick a project"},{command:"nipa server ls",description:js.spec.summary},{command:"nipa os volume list",description:"Run any openstack command with the session"},{command:"nipa -P staging tf plan",description:"Run terraform against the staging profile"}],hidden:[Gp],sections:[{commands:[ld,dd,Rd,Od],title:"Session"},{commands:[js],title:"Resources"},{commands:[md,Id,Xp,Hp],title:"Run tools"},{commands:[vd,Kp],title:"Setup"}],summary:"Log in to Nipa Cloud once, then list your servers, or run openstack and terraform with the session."};var kn=nt(Ft(),1);var jd="https://github.com/PunGrumpy/nipa/releases",Vx="https://api.github.com/repos/PunGrumpy/nipa/releases/latest",Gx=86400000,Wx=I({checkedAt:Mr.datetime(),latest:v()}),Ld="update.json",Kx=I({tag_name:v()}),Dd=(e)=>e.replace(/^v/u,"").split("-")[0]?.split(".").map(Number)??[],Jx=(e,t)=>{let r=Dd(e),n=Dd(t);for(let o=0;o<Math.max(r.length,n.length);o+=1){let s=(r[o]??0)-(n[o]??0);if(s!==0)return s>0}return!1},Hx=(e)=>e.isTTY&&e.version!=="0.0.0"&&!e.env.CI&&!e.env.NIPA_NO_UPDATE_CHECK,qx=async()=>{try{let e=await Pe(Vx,{signal:AbortSignal.timeout(1500)}),t=Kx.safeParse(await e.json());return t.success?t.data.tag_name.replace(/^v/u,""):void 0}catch(e){nn(`update check failed: ${e instanceof Error?e.message:String(e)}`);return}},Yx=(e,t)=>{let r=`${jd}/tag/v${e}`,n=kn.default.dim(`v${t}`),o=kn.default.green(`v${e}`),s=[`Update available! ${n} ≫ ${o}`,`Release notes: ${kn.default.cyan(r)}`],i=[`Update available! v${t} ≫ v${e}`,`Release notes: ${jd}/tag/v${e}`],a=Math.max(...i.map((u)=>u.length)),c=(u,l)=>` │ ${u}${" ".repeat(a-l.length)} │`;return["",` ╭${"─".repeat(a+4)}╮`,...s.map((u,l)=>c(u,i[l]??u)),` ╰${"─".repeat(a+4)}╯`,""].join(`
307
- `)},Nd=async(e)=>{if(!Hx({env:process.env,isTTY:process.stderr.isTTY===!0,version:e}))return;let t=await dn(Ld,Wx);if(t&&Jx(t.latest,e))oe(Yx(t.latest,e));if(t&&Date.now()-Date.parse(t.checkedAt)<Gx)return;let r=await qx();if(r){let n={checkedAt:new Date().toISOString(),latest:r};await fn(Ld,n)}};var Ls=(e)=>{let t;return()=>(t??=e(),t)},Fd=(e)=>{let{globals:t,program:r}=e;if(t.debug)process.env.NIPA_DEBUG="1";let n=Kl({stderr:process.stderr,stdin:process.stdin}),o=Ls(()=>td({override:t.profile})),s=Ls(async()=>ad({active:await o(),prompts:n}));return{cloud:Ls(async()=>{let a=await s();return rd(a.active),cd(a)}),profile:o,program:r,prompts:n,session:s,stdout:Jl(process.stdout)}};var or=(e)=>({kind:"print",text:e}),Ud=(e,t)=>({exitCode:e,kind:"ran",updateNotice:t.every((r)=>r.updateNotice!==!1)}),Xx=(e)=>new Map([...e.sections.flatMap((t)=>t.commands),...e.hidden].flatMap((t)=>te(t.spec).map((r)=>[r,t]))),Qx=(e)=>{let t=e.at(-1)??"",r=e.slice(0,-1);return r.length===0?t:`${r.join(", ")} or ${t}`},ey=(e,t)=>F(`unknown subcommand "${e.spec.name} ${t}"`,`Use ${Qx(e.spec.subcommands.map((r)=>r.name))}.`),ty=(e,t)=>{let{rest:r}=Ps({unknown:"stop",words:t}),[n]=r;if(n===void 0||n.startsWith("-"))return{kind:"leaf",leaf:e.fallback,path:[e.spec],words:t};let o=e.subcommands.get(n);if(!o)return{group:e,kind:"unknown",word:n};return{kind:"leaf",leaf:o,path:[e.spec,o.spec],words:t.toSpliced(t.length-r.length,1)}},ry=(e,t)=>{let[r,n]=t,o=r===void 0?void 0:e.get(r);if(!o)return;let s=o.kind==="group"&&n!==void 0?o.subcommands.get(n):void 0;return o.kind==="group"&&s?[o.spec,s.spec]:[o.spec]},ny=(e,t)=>{let r=Array.from({length:t.length+1},(n,o)=>o);for(let n=1;n<=e.length;n+=1){let o=[n];for(let s=1;s<=t.length;s+=1){let i=e[n-1]===t[s-1]?0:1;o[s]=Math.min((r[s]??0)+1,(o[s-1]??0)+1,(r[s-1]??0)+i)}r=o}return r[t.length]??0},oy=(e)=>{let[t]=e.program.sections.flatMap((n)=>n.commands).map((n)=>({name:n.name,score:ny(e.word,n.name)})).toSorted((n,o)=>n.score-o.score),r=t&&t.score<=2?`Did you mean \`nipa ${t.name}\`?`:"Run `nipa --help` to see the commands.";return new O(`unknown command "${e.word}"`,{exitCode:2,hint:r})},Md=async(e)=>{let t=Zp(e.program),r=Xx(e.program),n=Ps({unknown:"reject",words:e.argv});if(n.globals.version)return or(e.version);let[o,...s]=n.rest;if(o===void 0)return or(vs({program:t,version:e.version}));if(o==="help"){let p=ry(r,s);return or(p?xn(p):vs({program:t,version:e.version}))}let i=r.get(o);if(!i)throw oy({program:t,word:o});if(i.kind==="passthrough"){if(n.globals.help)return or(xn([i.spec]));let p=e.createClient({globals:n.globals,program:t});return Ud(await i.run({client:p,words:s}),[i.spec])}let a=i.kind==="group"?ty(i,s):{kind:"leaf",leaf:i,path:[i.spec],words:s};if(n.globals.help||Ip(s))return or(xn(a.kind==="leaf"?a.path:[i.spec]));if(a.kind==="unknown")throw ey(a.group,a.word);let c=a.leaf.prepare({path:a.path,words:a.words}),u={...n.globals,...c.globals},l=e.createClient({globals:u,program:t});return Ud(await c.run(l),a.path)};var sy="Run it again with --debug to see each request.",iy=(e)=>{if(e instanceof O)return e;if(e instanceof X||e instanceof rt){let t=e.status===0||e.status>=500;return new O(e.message,{hint:t&&!ns()?sy:void 0})}if(e instanceof on)return new O(e.message,{hint:"Check the Keystone URL with `nipa profile ls`, or your network connection."});if(e instanceof Xt)return new O(e.message,{hint:"Fix the file, or delete it and run `nipa login` again."});return};try{let e=await Md({argv:process.argv.slice(2),createClient:Fd,program:Zd,version:Cn.version});switch(e.kind){case"print":{console.log(e.text),process.exitCode=0;break}case"ran":{if(process.exitCode=e.exitCode,e.updateNotice)await Nd(Cn.version);break}default:throw Error(`unknown outcome ${String(e)}`)}}catch(e){let t=e instanceof Error?iy(e):void 0;if(!t)throw e;Wl(t),process.exitCode=t.exitCode}
304
+ `},Hp=(e)=>{let{program:t,shell:r}=e;switch(r){case"bash":return _x(t);case"zsh":return Sx(t);case"fish":return Cx(t);case"pwsh":return Ax(t);default:return r}};var qp=Z({args:[{arity:"one",name:"kind",value:{choices:Bp,kind:"choice"}},{arity:"rest",name:"words",value:{kind:"text"}}],flags:[],name:"__complete",summary:"Print values for the completion scripts",updateNotice:!1});var jx=async(e)=>{let t=await e.profile(),r=await he(t.name);if(!te(r))return[];return(await vt({authUrl:t.profile.authUrl,token:r.token})).map((o)=>o.name)},Rx=async(e)=>{let{client:t,kind:r,words:n}=e;switch(r){case"projects":return await jx(t);case"profiles":{let o=await me();return Object.keys(o.profiles).toSorted()}case"openstack":return await Up(n);default:return r}},Yp=A(qp,async({args:e,client:t})=>{let r=await Rx({client:t,kind:e.kind,words:e.words});return t.stdout.write(r.map((n)=>`${n}
305
+ `).join("")),0});var Xp=Z({args:[{arity:"one",name:"shell",value:{choices:Mp,kind:"choice"}}],description:"Prints the tab completion script for bash, zsh, fish or PowerShell. Load it from your shell's startup file.",examples:[{command:`echo 'eval "$(nipa completion zsh)"' >> ~/.zshrc`,description:"zsh"},{command:"nipa completion fish > ~/.config/fish/completions/nipa.fish",description:"fish"}],flags:[],name:"completion",summary:"Print the tab completion script for your shell",updateNotice:!1});var Qp=A(Xp,({args:e,client:t})=>(t.stdout.write(Hp({program:t.program,shell:e.shell})),Promise.resolve(0)));var Ss="List the databases in your project",ks=Z({aliases:["list"],args:[],flags:[ue],name:"ls",summary:Ss}),ed=Pe({aliases:["database","databases"],default:"ls",description:"Lists the database clusters in your project with their engine, status, address, flavor and age. These are Nipa Cloud's managed databases, which `nipa server ls` doesn't show.",examples:[{command:"nipa db ls",description:Ss},{command:"nipa db ls --json | jq -r '.databases[].name'",description:"Print each database's name"}],name:"db",subcommands:[ks],summary:Ss});var Zx=z({datastore_type:b(),datastore_version:b(),external_ip_address:b().nullish(),instance_status:b(),ip_address:b(),machine_type:z({name:b()}),operating_status:b(),volume_size:dp()}),Lx=z({created_at:b(),id:b(),name:b(),primary:Zx.nullish()}),Dx=z({database_clusters:fe(Lx)}),Nx=(e)=>({address:e.ip_address,engine:e.datastore_type,externalAddress:e.external_ip_address??null,flavor:e.machine_type.name,health:e.operating_status,status:e.instance_status,storageGb:e.volume_size,version:e.datastore_version}),Fx=(e)=>({createdAt:e.created_at,id:e.id,name:e.name,primary:e.primary?Nx(e.primary):null}),td=async(e)=>(await e.get("/v4/database/clusters?include_primary=true&include_machine_type=true",Dx)).database_clusters.map(Fx).toSorted((r,n)=>Date.parse(n.createdAt)-Date.parse(r.createdAt));var Ux=new Set(["ACTIVE","HEALTHY","ONLINE"]),Mx=new Set(["DEGRADED","ERROR","OFFLINE","UNKNOWN"]),Bx=new Set(["BUILD","HARD_REBOOT","MIGRATING","PASSWORD","REBOOT","REBUILD","RESCUE","RESIZE","REVERT_RESIZE","VERIFY_RESIZE"]),Gx=(e)=>{if(Ux.has(e))return $r;if(Mx.has(e))return Gi;if(Bx.has(e)||e.startsWith("PENDING_"))return Vi;return Ge},Vx=(e)=>{let t=e.toLowerCase().replaceAll("_"," ");return`${t.charAt(0).toUpperCase()}${t.slice(1)}`},Be=(e)=>{let t=Gx(e);return{paint:(r)=>`${t("●")}${r.slice(1)}`,text:`● ${Vx(e)}`}};var Wx=(e,t)=>{ke({headings:["Name","Engine","Status","Address","Flavor","Age"],rows:e.map(({createdAt:r,name:n,primary:o})=>[{text:n},{text:o?`${o.engine} ${o.version}`:"-"},o?Be(o.status):{text:"-"},{text:o?o.externalAddress??o.address:"-"},{text:o?.flavor??"-"},{paint:Ge,text:dt(t-Date.parse(r))}])})},rd=A(ks,async({client:e,flags:t})=>{let{active:r,session:n,space:o}=await e.cloud(),{project:s}=n,i=performance.now(),a=await V(`Loading the databases in ${s.name}…`,()=>td(o));if(t.json)return e.stdout.json({databases:a,profile:r.name,project:s}),0;let c=Y(`[${we(performance.now()-i)}]`);if(a.length===0)return R(`No databases in ${k(s.name)} ${c}`),0;if(R(`Databases in ${k(s.name)} ${c}`),Wx(a,Date.now()),!e.stdout.isTTY)e.stdout.line(a.map((u)=>u.id).join(`
306
+ `));return 0});var nd=ze(ed,{ls:rd});var od=Z({args:[],description:'Prints the session\'s OS_* variables as shell commands. Load them with `eval "$(nipa env)"` in bash or zsh, or with `nipa env | source` in fish.',flags:[{description:"Shell syntax to print (default: from $SHELL)",long:"shell",value:{choices:hs,kind:"choice"}}],name:"env",summary:"Print the OS_* variables for your shell"});var sd=A(od,async({client:e,flags:t})=>{let r=t.shell??Ip(process.env.SHELL),{active:n,session:o}=await e.session();return e.stdout.line(Cp(fn({profile:n.profile,session:o}),r)),0});import{spawn as Kx}from"node:child_process";import{once as Jx}from"node:events";import{constants as id}from"node:os";var Hx=new Map([["openstack","Install it with `pipx install python-openstackclient`."],["terraform","Install it with `brew install hashicorp/tap/terraform`."]]),St=async({args:e,command:t,signIn:r})=>{let n=dn(t);if(!n)throw new O(`command not found: ${t}`,{exitCode:127,hint:Hx.get(t)});let{active:o,session:s}=await r(),i=Kx(n,e,{env:Ep(process.env,fn({profile:o.profile,session:s})),stdio:"inherit"}),a=!1,c=()=>{a=!0},u=()=>i.kill("SIGTERM");process.on("SIGINT",c),process.on("SIGTERM",u),await Jx(i,"exit"),process.off("SIGINT",c),process.off("SIGTERM",u);let{exitCode:l,signalCode:p}=i;if(p)return 128+id.signals[p];return a&&l===0?128+id.signals.SIGINT:l??1};var ad=mt({description:"Runs a command with the session's OS_* variables. nipa removes any OS_* variable already in your shell first, so a stale OS_PASSWORD from an old openrc can't override the token. nipa exits with the command's exit code.",examples:[{command:"nipa exec ansible-playbook site.yml",description:"Run an Ansible playbook"}],name:"exec",summary:"Run any command with the session",target:{kind:"command"}});var cd=ht(ad,({args:e,client:t,command:r})=>St({args:e,command:r,signIn:t.cloud}));var Ps="List the external IPs in your project",zs=Z({aliases:["list"],args:[],flags:[ue],name:"ls",summary:Ps}),ud=Pe({aliases:["ips"],default:"ls",description:"Lists the external IPs in your project with their status, the internal IP each one forwards to, zone and name. An IP without an internal IP isn't attached to anything.",examples:[{command:"nipa ip ls",description:Ps},{command:"nipa ip ls --json | jq -r '.ips[] | select(.internalAddress == null) | .address'",description:"Print the IPs that aren't attached"}],name:"ip",subcommands:[zs],summary:Ps});var qx=z({availability_zone:b(),external_ip_address:b(),id:b(),internal_ip_address:b().nullable(),name:b(),status:b()}),Yx=z({external_ips:fe(qx)}),Xx=(e)=>({address:e.external_ip_address,id:e.id,internalAddress:e.internal_ip_address,name:e.name,status:e.status,zone:e.availability_zone}),ld=async(e)=>(await e.get("/v4/external_ips",Yx)).external_ips.map(Xx);var Qx=(e)=>{ke({headings:["Address","Status","Internal IP","Zone","Name"],rows:e.map((t)=>[{text:t.address},Be(t.status),{text:t.internalAddress??"-"},{text:t.zone},{text:t.name}])})},pd=A(zs,async({client:e,flags:t})=>{let{active:r,session:n,space:o}=await e.cloud(),{project:s}=n,i=performance.now(),a=await V(`Loading the external IPs in ${s.name}…`,()=>ld(o));if(t.json)return e.stdout.json({ips:a,profile:r.name,project:s}),0;let c=Y(`[${we(performance.now()-i)}]`);if(a.length===0)return R(`No external IPs in ${k(s.name)} ${c}`),0;if(R(`External IPs in ${k(s.name)} ${c}`),Qx(a),!e.stdout.isTTY)e.stdout.line(a.map((u)=>u.address).join(`
307
+ `));return 0});var dd=ze(ud,{ls:pd});var Es="List the load balancers in your project",Cs=Z({aliases:["list"],args:[],flags:[ue],name:"ls",summary:Es}),fd=Pe({aliases:["loadbalancer","loadbalancers"],default:"ls",description:"Lists the load balancers in your project with their status, health, virtual IP, listener count and age.",examples:[{command:"nipa lb ls",description:Es},{command:"nipa lb ls --json | jq -r '.loadBalancers[].address'",description:"Print each load balancer's virtual IP"}],name:"lb",subcommands:[Cs],summary:Es});var ey=z({created_at:b(),id:b(),listeners:fe(ss()),name:b(),operating_status:b(),provisioning_status:b(),vip_address:b()}),ty=z({loadbalancers:fe(ey)}),ry=(e)=>({address:e.vip_address,createdAt:e.created_at,health:e.operating_status,id:e.id,listeners:e.listeners.length,name:e.name,status:e.provisioning_status}),md=async(e)=>(await e.get("/v4/loadbalancers",ty)).loadbalancers.map(ry).toSorted((r,n)=>Date.parse(n.createdAt)-Date.parse(r.createdAt));var ny=(e,t)=>{ke({headings:["Name","Status","Health","Address","Listeners","Age"],rows:e.map((r)=>[{text:r.name},Be(r.status),Be(r.health),{text:r.address},{text:String(r.listeners)},{paint:Ge,text:dt(t-Date.parse(r.createdAt))}])})},hd=A(Cs,async({client:e,flags:t})=>{let{active:r,session:n,space:o}=await e.cloud(),{project:s}=n,i=performance.now(),a=await V(`Loading the load balancers in ${s.name}…`,()=>md(o));if(t.json)return e.stdout.json({loadBalancers:a,profile:r.name,project:s}),0;let c=Y(`[${we(performance.now()-i)}]`);if(a.length===0)return R(`No load balancers in ${k(s.name)} ${c}`),0;if(R(`Load balancers in ${k(s.name)} ${c}`),ny(a,Date.now()),!e.stdout.isTTY)e.stdout.line(a.map((u)=>u.id).join(`
308
+ `));return 0});var gd=ze(fd,{ls:hd});class ct extends Error{status;constructor(e,t){super(e);this.name="ApiError",this.status=t}}var oy=z({message:b()}),sy=async(e)=>{try{let t=oy.safeParse(JSON.parse(await e.text()));return t.success?t.data.message:void 0}catch{return}},iy=async(e,t)=>{try{return t.safeParse(await e.json())}catch{return t.safeParse(null)}},xd=(e)=>{let t=e.url;while(t.endsWith("/"))t=t.slice(0,-1);return{get:async(r,n)=>{let o=await Me(`${t}${r}`,{headers:{Accept:"application/json","Project-Id":e.projectId,Region:e.region,"X-Auth-Token":e.token}});if(!o.ok){let i=await sy(o)??`the Space API returned HTTP ${o.status}`;throw new ct(i,o.status)}let s=await iy(o,n);if(!s.success)throw new ct(`unexpected Space API response: ${Gt(s.error)}`,o.status);return s.data}}};var yd=async(e)=>{let t=await me(),r=e.override??process.env.NIPA_PROFILE??t.currentProfile,n=t.profiles[r];if(!n){let o=Object.keys(t.profiles).join(", ");throw new O(`no profile named "${r}"`,{hint:`Your profiles: ${o}. Add one with \`nipa profile add ${r}\`.`})}return{config:t,name:r,profile:n}},vn=(e)=>e===ee?"nipa login":`nipa login -P ${e}`,_d=(e)=>{if(e.name!==ee){let t=Y(`(${new URL(e.profile.authUrl).host})`);R(`Using profile ${k(e.name)} ${t}`)}},ay=/^\d{6}$/u,bd=/^[\da-f]{32}$/u,cy=3,uy=(e)=>({email:(t)=>e.text({default:t,message:"Email",validate:(r)=>r.includes("@")||"Enter the email you log in to the portal with"}),otp:(t)=>e.text({message:t===1?"OTP code":"Next OTP code",validate:(r)=>ay.test(r)||"Enter the 6-digit code from your authenticator app"}),password:()=>e.secret("Password"),projectId:()=>e.text({message:"Project ID",validate:(t)=>bd.test(t)||"Enter the 32-character ID, as in OS_PROJECT_ID in your openrc file"})}),wd=(e)=>{let{projects:t,wanted:r}=e,n=t.find((o)=>o.id===r||o.name===r);if(!n)throw new O(`no project named or with ID "${r}"`,{hint:`Your projects: ${t.map((o)=>o.name).join(", ")}`});return n},vd=(e)=>{let{projects:t,wanted:r}=e;if(r)return Promise.resolve(wd({projects:t,wanted:r}));let[n,...o]=t;if(!n)throw new O("your account has no projects you can use");return o.length===0?Promise.resolve(n):e.ask(t)},wn=(e,t)=>({expiresAt:e.expiresAt,project:e.project??t,token:e.value,user:e.user}),$d=async(e)=>{let t=await e.ask(e.attempt);try{return await V("Checking the code…",()=>Sp({account:e.account,passcode:t,receipt:e.receipt}))}catch(r){if(!(r instanceof ae&&r.status===401)||e.attempt===cy)throw r;return R("That code didn't work. Each code works once, so wait for the next one."),$d({...e,attempt:e.attempt+1})}},ly=async(e)=>{let{profile:t,prompts:r,wantedProject:n}=e,o=e.username??await r.email(t.username),s=n!==void 0&&bd.test(n)?n:void 0,i=s??t.project?.id??await r.projectId(),a=await r.password(),c={authUrl:t.authUrl,projectId:i,userDomain:t.userDomain,username:o},u=await V("Checking your password…",()=>$p(c,a)),l=u.kind==="token"?u.token:await $d({account:c,ask:r.otp,attempt:1,receipt:u.receipt});if(!l.project)throw new ae(`Keystone returned a token without project ${i}`,0);let p=s?void 0:n;if(p===void 0||l.project.name===p)return wn(l,l.project);let d=await V("Loading your projects…",()=>vt({authUrl:t.authUrl,token:l.value})),f=wd({projects:d,wanted:p}),m=await V(`Switching to ${f.name}…`,()=>ln({authUrl:t.authUrl,projectId:f.id,token:l.value}));return wn(m,f)},Is=async(e)=>{let{active:t,session:r}=e,n={...t.profile,project:r.project,username:r.user.name};await qe({...t.config,profiles:{...t.config.profiles,[t.name]:n}}),await Np({profile:t.name,session:r})},Ts=async(e)=>{let{active:t,prompts:r}=e;if(!r.interactive)throw new O("`nipa login` needs a terminal to ask for your password",{hint:"Run it in a terminal, then run this command again."});let n=Y(`(${new URL(t.profile.authUrl).host})`);R(`Logging in to ${k(t.name)} ${n}`);let o=await ly({profile:t.profile,prompts:uy(r),username:e.username,wantedProject:e.wantedProject});await Is({active:t,session:o});let s=k(o.user.name);return le(`Logged in as ${s}, project ${k(o.project.name)}`),o},Sd=async(e)=>{let{active:t,prompts:r}=e,n=await he(t.name);if(te(n))return{active:t,session:n};let o=`Run \`${vn(t.name)}\`.`;if(!r.interactive)throw n?new O(`your ${t.name} session expired`,{hint:o}):new O(`you aren't logged in to ${t.name}`,{hint:o});return R(n?"Your session expired.":"You aren't logged in yet."),{active:t,session:await Ts({active:t,prompts:r})}},py=(e)=>async(t)=>{try{return await t()}catch(r){if((r instanceof ct||r instanceof ae?r.status:void 0)===401)throw new O(`your ${e} session expired or was revoked`,{hint:`Run \`${vn(e)}\`.`});throw r}},kd=(e)=>{let{active:t,session:r}=e,n=py(t.name),o=xd({projectId:r.project.id,region:t.profile.region,token:r.token,url:t.profile.spaceUrl});return{active:t,session:r,space:{get:(s,i)=>n(async()=>{try{return await o.get(s,i)}catch(a){if(a instanceof wt)throw new O(a.message,{hint:"Check your network connection, or the profile's Space API URL."});throw a}})}}};var Pd=Z({args:[],description:"Asks for your email and password, then for an OTP code when your account uses MFA. nipa saves a token for the current profile, scoped to a project, and reuses it until it expires.",examples:[{command:"nipa login",description:"Log in to the current profile"},{command:"nipa -P staging login",description:"Log in to the staging profile"}],flags:[{description:"Log in as this user instead of the last one",long:"username",short:"u",value:{kind:"text",name:"email"}},{description:"Use this project instead of the last one",long:"project",short:"p",value:{kind:"project"}}],name:"login",summary:"Log in with your password and an OTP code"});var zd=A(Pd,async({client:e,flags:t})=>(await Ts({active:await e.profile(),prompts:e.prompts,username:t.username,wantedProject:t.project}),0));var Ed=Z({args:[],description:"Revokes the current profile's token and deletes its session. nipa keeps your email and last project for the next login.",flags:[],name:"logout",summary:"Revoke the token and forget the session"});var Cd=A(Ed,async({client:e})=>{let t=await e.profile(),r=await he(t.name);if(!r)return ft(`Not logged in to ${t.name}, so \`nipa logout\` did nothing`),0;if(te(r))try{await V("Logging out…",()=>pn({authUrl:t.profile.authUrl,token:r.token}))}catch{}return await xn(t.name),le(`Logged out of ${k(t.name)}`),0});var Id=mt({aliases:["openstack"],description:"Runs `openstack <args...>` with the session. It's the same as `nipa exec openstack <args...>`.",examples:[{command:"nipa os volume list",description:"List the volumes in your project"}],name:"os",summary:"Run openstack with the session",target:{kind:"openstack"}});var Td=ht(Id,({args:e,client:t,command:r})=>St({args:e,command:r,signIn:t.cloud}));var Os=Z({args:[],flags:[ue],name:"ls",summary:"List your profiles and who is logged in to each"}),As=Z({args:[{arity:"optional",name:"name",value:{kind:"text"}}],flags:[{description:"Keystone URL, ending in /v3",long:"auth-url",value:{kind:"text",name:"url"}},{description:"User domain (default: nipacloud)",long:"user-domain",value:{kind:"text",name:"domain"}},{description:"Region (default: NCP-TH)",long:"region",value:{kind:"text",name:"region"}},{description:"Space API URL (default: https://space.nipa.cloud/api)",long:"space-url",value:{kind:"text",name:"url"}},{description:"Make it the current profile",long:"use",value:{kind:"none"}}],name:"add",summary:"Add a profile, asking for missing values"}),js=Z({args:[{arity:"optional",name:"name",value:{kind:"profile"}}],flags:[],name:"use",summary:"Make a profile the current one"}),Rs=Z({args:[{arity:"one",name:"name",value:{kind:"profile"}}],flags:[{...Gs,description:"Remove it without asking"}],name:"rm",summary:"Remove a profile and log out of it"}),Od=Pe({default:"ls",description:"A profile is a Keystone URL, user domain, region and Space API URL with its own session. nipa starts with prod, which is Nipa Cloud production. Add a profile for staging or any other Keystone, then use it with `nipa profile use <name>` or `-P <name>`.",examples:[{command:"nipa profile add staging --auth-url https://keystone.example.com/v3",description:"Add a staging profile"},{command:"nipa profile use staging",description:"Make staging the current profile"}],name:"profile",subcommands:[Os,As,js,Rs],summary:"Manage Keystone profiles, such as staging"});var dy=(e)=>(t)=>{if(!xs.test(t))return"Use lowercase letters, digits and hyphens, starting with a letter";return e.profiles[t]?`A profile named ${t} already exists`:!0},Ad=(e)=>He.shape.authUrl.safeParse(e).success||"Enter an http or https URL, such as https://keystone.example.com/v3",jd=(e)=>{if(e.value!==void 0)return Promise.resolve(e.value);if(!e.prompts.interactive)throw N(`missing ${e.flag}`,"Pass every value as a flag when there is no terminal.");return e.ask()},Rd=A(As,async({args:e,client:t,flags:r})=>{let{prompts:n}=t,o=await me(),s=dy(o),i=await jd({ask:()=>n.text({message:"Profile name",validate:s}),flag:"<name>",prompts:n,value:e.name}),a=s(i);if(a!==!0)throw N(`can't add profile "${i}"`,a);let c=await jd({ask:()=>n.text({message:"Keystone URL",validate:Ad}),flag:"--auth-url",prompts:n,value:r["auth-url"]}),u=Ad(c);if(u!==!0)throw N(`invalid --auth-url "${c}"`,u);let l=r["user-domain"]??(n.interactive?await n.text({default:ce.userDomain,message:"User domain"}):ce.userDomain),p=r.region??(n.interactive?await n.text({default:ce.region,message:"Region"}):ce.region),d=r["space-url"]??ce.spaceUrl;if(!He.shape.spaceUrl.safeParse(d).success)throw N(`invalid --space-url "${d}"`,"Enter an http or https URL, such as https://space.example.com/api");let f=performance.now(),m=await V(`Checking ${c}…`,()=>kp(c)),g={authUrl:c,region:p,spaceUrl:d,userDomain:l},x=r.use??(n.interactive&&await n.confirm({default:!0,message:`Use ${i} now?`}));return await qe({currentProfile:x?i:o.currentProfile,profiles:{...o.profiles,[i]:g}}),le(`Added profile ${k(i)} (Keystone ${m})`,performance.now()-f),R(x?`Now using ${k(i)}. Run \`nipa login\` to log in to it.`:`Run \`nipa login -P ${i}\` to log in to it.`),0});var Zd=A(Os,async({client:e,flags:t})=>{let r=await me(),n=Object.keys(r.profiles).toSorted(),o=await Promise.all(n.map((i)=>he(i)));if(t.json)return e.stdout.json(n.map((i,a)=>{let c=o[a];return{current:i===r.currentProfile,loggedIn:te(c),name:i,...r.profiles[i],user:te(c)?c.user.name:void 0}})),0;let s=n.map((i,a)=>{let c=r.profiles[i]??ce,u=o[a],l=te(u)?`${u.user.name} (${u.project.name})`:"-";return[i,new URL(c.authUrl).host,c.region,l].map((p)=>({text:p}))});return R(`${n.length} ${n.length===1?"profile":"profiles"}`),ke({headings:["Name","Keystone","Region","Logged in as"],marks:n.map((i)=>i===r.currentProfile?$r("✔"):" "),rows:s}),0});var Ld=A(Rs,async({args:e,client:t,flags:r})=>{let{name:n}=e,o=await me(),s=o.profiles[n];if(!s)throw new O(`no profile named "${n}"`);if(n===ee)throw new O(`can't remove ${ee}`,{hint:"nipa always has the Nipa Cloud production profile."});if(!r.yes){if(!t.prompts.interactive)throw N(`removing ${n} needs confirmation`,"Add --yes to remove it without asking.");if(!await t.prompts.confirm({default:!1,message:`Remove profile ${n} and log out of it?`}))throw new O("Canceled",{exitCode:130})}let i=await he(n);if(te(i))try{await pn({authUrl:s.authUrl,token:i.token})}catch{}await xn(n);let a=Object.fromEntries(Object.entries(o.profiles).filter(([u])=>u!==n)),c=o.currentProfile===n;if(await qe({currentProfile:c?ee:o.currentProfile,profiles:a}),le(`Removed profile ${k(n)}`),c)R(`Now using ${k(ee)}`);return 0});var Dd=A(js,async({args:e,client:t})=>{let r=await me(),n=Object.keys(r.profiles).toSorted(),{name:o}=e;if(o===void 0){if(!t.prompts.interactive)throw N("missing <name>",`Your profiles: ${n.join(", ")}`);o=await t.prompts.choice({choices:n.map((s)=>({name:s===r.currentProfile?`${s} ${k("(current)")}`:s,value:s})),default:r.currentProfile,message:"Use profile:"})}if(!r.profiles[o])throw new O(`no profile named "${o}"`,{hint:`Your profiles: ${n.join(", ")}`});if(o===r.currentProfile)return ft(`You're already using ${k(o)}`),0;return await qe({...r,currentProfile:o}),le(`Now using profile ${k(o)}`),0});var Nd=ze(Od,{add:Rd,ls:Zd,rm:Ld,use:Dd});var Zs="List the servers in your project",Ls=Z({aliases:["list"],args:[],flags:[ue],name:"ls",summary:Zs}),Fd=Pe({aliases:["servers"],default:"ls",description:"Lists the servers in your project with their status, address, flavor and age. nipa calls the Space API, the one the Nipa Cloud Space portal uses, so you don't need the OpenStack client.",examples:[{command:"nipa server ls",description:Zs},{command:"nipa server ls --json | jq -r '.servers[].name'",description:"Print each server's name"}],name:"server",subcommands:[Ls],summary:Zs});var Ud=z({address:b()}),fy=z({created:b(),external_ips:fe(Ud),flavor:z({name:b()}),id:b(),internal_ips:fe(Ud),name:b(),status:b()}),my=z({instances:fe(fy)}),Md=(e,t)=>({address:e.address,type:t,version:e.address.includes(":")?6:4}),hy=(e)=>({addresses:[...e.internal_ips.map((t)=>Md(t,"fixed")),...e.external_ips.map((t)=>Md(t,"floating"))],createdAt:e.created,flavor:e.flavor.name,id:e.id,name:e.name,status:e.status}),Bd=async(e)=>(await e.get("/v3/instances",my)).instances.map(hy);var Gd=(e)=>{let t=e.addresses.filter((n)=>n.version===4);return(t.find((n)=>n.type==="floating")??t[0]??e.addresses[0])?.address};var gy=(e,t)=>{ke({headings:["Name","Status","Address","Flavor","Age"],rows:e.map((r)=>[{text:r.name},Be(r.status),{text:Gd(r)??"-"},{text:r.flavor},{paint:Ge,text:dt(t-Date.parse(r.createdAt))}])})},Vd=A(Ls,async({client:e,flags:t})=>{let{active:r,session:n,space:o}=await e.cloud(),{project:s}=n,i=performance.now(),a=await V(`Loading the servers in ${s.name}…`,()=>Bd(o));if(t.json)return e.stdout.json({profile:r.name,project:s,servers:a}),0;let c=Y(`[${we(performance.now()-i)}]`);if(a.length===0)return R(`No servers in ${k(s.name)} ${c}`),0;if(R(`Servers in ${k(s.name)} ${c}`),gy(a,Date.now()),!e.stdout.isTTY)e.stdout.line(a.map((u)=>u.id).join(`
309
+ `));return 0});var Ds=ze(Fd,{ls:Vd});var Wd=Z({args:[{arity:"optional",name:"project",value:{kind:"project"}}],description:"Scopes the session to another project, by name or ID, without a password or OTP code. Without a project, nipa lists your projects to pick from.",flags:[],name:"switch",summary:"Use another project"});var xy=(e,t)=>(r)=>e.choice({choices:r.map((n)=>({description:n.id,name:n.id===t.id?`${n.name} ${k("(current)")}`:n.name,value:n})),default:r.find((n)=>n.id===t.id),message:"Switch to:"}),Kd=A(Wd,async({args:e,client:t})=>{let{project:r}=e,{active:n,session:o}=await t.session(),{authUrl:s}=n.profile,i=await V("Loading your projects…",()=>vt({authUrl:s,token:o.token}));if(r===void 0&&!t.prompts.interactive)throw new O("tell nipa which project to use",{exitCode:2,hint:`Run \`nipa switch <project>\`. Your projects: ${i.map((l)=>l.name).join(", ")}`});let a=await vd({ask:xy(t.prompts,o.project),projects:i,wanted:r});if(a.id===o.project.id)return ft(`You're already using ${k(a.name)}`),0;let c=performance.now(),u=await V(`Switching to ${a.name}…`,()=>ln({authUrl:s,projectId:a.id,token:o.token}));return await Is({active:n,session:wn(u,a)}),le(`Switched to ${k(a.name)}`,performance.now()-c),0});var Jd=mt({aliases:["terraform"],description:"Runs `terraform <args...>` with the session. It's the same as `nipa exec terraform <args...>`.",examples:[{command:"nipa -P staging tf plan",description:"Plan against the staging profile"}],name:"tf",summary:"Run terraform with the session",target:{kind:"program",program:"terraform"}});var Hd=ht(Jd,({args:e,client:t,command:r})=>St({args:e,command:r,signIn:t.cloud}));var qd=Z({args:[],description:"Prints your user, profile, project and when the session expires. When the output goes to a pipe, nipa prints only your user name.",flags:[ue],name:"whoami",summary:"Show who you're logged in as"});var Yd=A(qd,async({client:e,flags:t})=>{let r=await e.profile(),n=await he(r.name);if(!te(n)){if(t.json)e.stdout.line(JSON.stringify({loggedIn:!1,profile:r.name}));throw new O(`you aren't logged in to ${r.name}`,{hint:`Run \`${vn(r.name)}\`.`})}if(t.json)return e.stdout.json({authUrl:r.profile.authUrl,expiresAt:n.expiresAt,loggedIn:!0,profile:r.name,project:n.project,region:r.profile.region,user:n.user}),0;if(!e.stdout.isTTY)return e.stdout.line(n.user.name),0;let{host:o}=new URL(r.profile.authUrl),s=Fi(vs(n));R(`Logged in as ${k(n.user.name)}`);let i=Y(`(${o}, ${r.profile.region})`),a=Y(`(${n.project.id})`);return R(`Profile: ${k(r.name)} ${i}`),R(`Project: ${k(n.project.name)} ${a}`),R(`The session expires in ${s}`),0});var Xd={examples:[{command:"nipa login",description:"Log in and pick a project"},{command:"nipa server ls",description:Ds.spec.summary},{command:"nipa os volume list",description:"Run any openstack command with the session"},{command:"nipa -P staging tf plan",description:"Run terraform against the staging profile"}],hidden:[Yp],sections:[{commands:[zd,Cd,Yd,Kd],title:"Session"},{commands:[Ds,nd,gd,dd],title:"Resources"},{commands:[Td,Hd,cd,sd],title:"Run tools"},{commands:[Nd,Qp],title:"Setup"}],summary:"Log in to Nipa Cloud once, then list your servers, databases, load balancers and external IPs, or run openstack and terraform with the session."};var Ns=(e)=>{let t;return()=>(t??=e(),t)},Qd=(e)=>{let{globals:t,program:r}=e;if(t.debug)process.env.NIPA_DEBUG="1";let n=Mi({stderr:process.stderr,stdin:process.stdin}),o=Ns(()=>yd({override:t.profile})),s=Ns(async()=>Sd({active:await o(),prompts:n}));return{cloud:Ns(async()=>{let a=await s();return _d(a.active),kd(a)}),profile:o,program:r,prompts:n,session:s,stdout:Bi(process.stdout)}};var cr=(e)=>({kind:"print",text:e}),ef=(e,t)=>({exitCode:e,kind:"ran",updateNotice:t.every((r)=>r.updateNotice!==!1)}),yy=(e)=>new Map([...e.sections.flatMap((t)=>t.commands),...e.hidden].flatMap((t)=>q(t.spec).map((r)=>[r,t]))),_y=(e)=>{let t=e.at(-1)??"",r=e.slice(0,-1);return r.length===0?t:`${r.join(", ")} or ${t}`},by=(e,t)=>N(`unknown subcommand "${e.spec.name} ${t}"`,`Use ${_y(e.spec.subcommands.map((r)=>r.name))}.`),wy=(e,t)=>{let{rest:r}=ao({unknown:"stop",words:t}),[n]=r;if(n===void 0||n.startsWith("-"))return{kind:"leaf",leaf:e.fallback,path:[e.spec],words:t};let o=e.subcommands.get(n);if(!o)return{group:e,kind:"unknown",word:n};return{kind:"leaf",leaf:o,path:[e.spec,o.spec],words:t.toSpliced(t.length-r.length,1)}},vy=(e,t)=>{let[r,n]=t,o=r===void 0?void 0:e.get(r);if(!o)return;let s=o.kind==="group"&&n!==void 0?o.subcommands.get(n):void 0;return o.kind==="group"&&s?[o.spec,s.spec]:[o.spec]},$y=(e,t)=>{let r=Array.from({length:t.length+1},(n,o)=>o);for(let n=1;n<=e.length;n+=1){let o=[n];for(let s=1;s<=t.length;s+=1){let i=e[n-1]===t[s-1]?0:1;o[s]=Math.min((r[s]??0)+1,(o[s-1]??0)+1,(r[s-1]??0)+i)}r=o}return r[t.length]??0},Sy=(e)=>{let[t]=e.program.sections.flatMap((n)=>n.commands).map((n)=>({name:n.name,score:$y(e.word,n.name)})).toSorted((n,o)=>n.score-o.score),r=t&&t.score<=2?`Did you mean \`nipa ${t.name}\`?`:"Run `nipa --help` to see the commands.";return new O(`unknown command "${e.word}"`,{exitCode:2,hint:r})},tf=async(e)=>{let t=ea(e.program),r=yy(e.program),n=ao({unknown:"reject",words:e.argv});if(n.globals.version)return cr(e.version);let[o,...s]=n.rest;if(o===void 0)return cr(jn({program:t,version:e.version}));if(o==="help"){let p=vy(r,s);return cr(p?fr(p):jn({program:t,version:e.version}))}let i=r.get(o);if(!i)throw Sy({program:t,word:o});if(i.kind==="passthrough"){if(n.globals.help)return cr(fr([i.spec]));let p=e.createClient({globals:n.globals,program:t});return ef(await i.run({client:p,words:s}),[i.spec])}let a=i.kind==="group"?wy(i,s):{kind:"leaf",leaf:i,path:[i.spec],words:s};if(n.globals.help||Yi(s))return cr(fr(a.kind==="leaf"?a.path:[i.spec]));if(a.kind==="unknown")throw by(a.group,a.word);let c=a.leaf.prepare({path:a.path,words:a.words}),u={...n.globals,...c.globals},l=e.createClient({globals:u,program:t});return ef(await c.run(l),a.path)};var $n=ut(Pt(),1);var rf="https://github.com/PunGrumpy/nipa/releases",ky="https://api.github.com/repos/PunGrumpy/nipa/releases/latest",Py=86400000,zy=z({checkedAt:an.datetime(),latest:b()}),nf="update.json",Ey=z({tag_name:b()}),of=(e)=>e.replace(/^v/u,"").split("-")[0]?.split(".").map(Number)??[],Cy=(e,t)=>{let r=of(e),n=of(t);for(let o=0;o<Math.max(r.length,n.length);o+=1){let s=(r[o]??0)-(n[o]??0);if(s!==0)return s>0}return!1},Iy=(e)=>e.isTTY&&e.version!=="0.0.0"&&!e.env.CI&&!e.env.NIPA_NO_UPDATE_CHECK,Ty=async()=>{try{let e=await Me(ky,{signal:AbortSignal.timeout(1500)}),t=Ey.safeParse(await e.json());return t.success?t.data.tag_name.replace(/^v/u,""):void 0}catch(e){cn(`update check failed: ${e instanceof Error?e.message:String(e)}`);return}},Oy=(e,t)=>{let r=`${rf}/tag/v${e}`,n=$n.default.dim(`v${t}`),o=$n.default.green(`v${e}`),s=[`Update available! ${n} ≫ ${o}`,`Release notes: ${$n.default.cyan(r)}`],i=[`Update available! v${t} ≫ v${e}`,`Release notes: ${rf}/tag/v${e}`],a=Math.max(...i.map((u)=>u.length)),c=(u,l)=>` │ ${u}${" ".repeat(a-l.length)} │`;return["",` ╭${"─".repeat(a+4)}╮`,...s.map((u,l)=>c(u,i[l]??u)),` ╰${"─".repeat(a+4)}╯`,""].join(`
310
+ `)},sf=async(e)=>{if(!Iy({env:process.env,isTTY:process.stderr.isTTY===!0,version:e}))return;let t=await hn(nf,zy);if(t&&Cy(t.latest,e))oe(Oy(t.latest,e));if(t&&Date.now()-Date.parse(t.checkedAt)<Py)return;let r=await Ty();if(r){let n={checkedAt:new Date().toISOString(),latest:r};await gn(nf,n)}};var Ay="Run it again with --debug to see each request.",jy=(e)=>{if(e instanceof O)return e;if(e instanceof ae||e instanceof ct){let t=e.status===0||e.status>=500;return new O(e.message,{hint:t&&!us()?Ay:void 0})}if(e instanceof wt)return new O(e.message,{hint:"Check the Keystone URL with `nipa profile ls`, or your network connection."});if(e instanceof ir)return new O(e.message,{hint:"Fix the file, or delete it and run `nipa login` again."});return};try{let e=await tf({argv:process.argv.slice(2),createClient:Qd,program:Xd,version:zn.version});switch(e.kind){case"print":{console.log(e.text),process.exitCode=0;break}case"ran":{if(process.exitCode=e.exitCode,e.updateNotice)await sf(zn.version);break}default:throw Error(`unknown outcome ${String(e)}`)}}catch(e){let t=e instanceof Error?jy(e):void 0;if(!t)throw e;Ui(t),process.exitCode=t.exitCode}